Experiments with Project Compares

Just recently, a question came up about customizing just a label.  So, I thought I would run a little experiment, and confirm how project compares work.

My plan is to go through compares and give a good background to how project compares work as well.

The actual question was: can you add a label to a delivered field without customizing the entire field.  I have seen how you can add just a label to a project, and the thought is to migrate just the label so that the field stays uncustomized.

So, here it goes…

Read More

Script for Finding PeopleSoft Processes

I accidentally deleted a PeopleSoft Home without shutting down the app server.  So, I had to find all of the processes and manually kill each one of them.  A normal “ps -ef | grep FN91TST” didn’t cut it.  The app server spins off some JSL and WSL processes that don’t have the environment name anywhere in the command.

Here’s the script that ended up doing the job:


#!/bin/bash

PS_USER=psoft
TARGET_PS_HOME=/psoft/FN91TST

for e in `ls /proc/*/environ`; do
  PID=`echo $e | sed -e 's#/proc/##' -e 's#/environ##' `
  if [ -e $e ]; then
    if [ `stat -c %U $e` == $PS_USER ]; then
      CURR_PS_HOME=`cat $e | tr '\0' '\n' | grep "^PS_CFG_HOME" | sed 's/^PS_CFG_HOME=//'`
      if [ "$CURR_PS_HOME" == "$TARGET_PS_HOME" ]; then
        echo "PID: $PID Home: $CURR_PS_HOME"
        ps $PID
      fi
    fi
  fi
done

Note: This script assumes that you are using PeopleTools 8.52 with the PS_CFG_HOME variable configured. If not, you’ll need to change it to either the PS_HOME or PS_APP_HOME variable.

Oracle DBA: EMPLID Table Counts Script

Here’s a handy script that I put together today.  It finds all of the tables with the EMPLID field in it and prints a count of the rows that have a non-blank EMPLID value.

You can tweak it to work with other fields or find a certain value.

declare
   cursor tbls is select distinct a.recname
                  from psrecfieldall a, psrecdefn b
                  where a.recname = b.recname
                  and b.rectype = 0
                  and a.fieldname = 'EMPLID';
   tbl tbls%ROWTYPE;
   cnt number;
   tablename varchar2(50);
   sqltext varchar2(200);
begin
   open tbls;
   loop
     fetch tbls into tbl;
     exit when tbls%NOTFOUND;

     select sqltablename into tablename from psrecdefn where recname = tbl.recname;
     if tablename = ' ' then
        tablename := 'PS_' || tbl.recname;
     end if;
     sqltext := 'select count(*) from ' || tablename || ' where EMPLID <> '' '' ';
     execute immediate sqltext into cnt;
     if cnt > 0 then
        dbms_output.put_line(tbl.recname || ' = ' || cnt);
     end if;
   end loop;
   close tbls;
exception
   when others then
      dbms_output.put_line('error with table: ' || tbl.recname);
      dbms_output.put_line('    ' || SQLCODE || ': ' || SQLERRM);
      dbms_output.put_line('    sql: ' || sqltext);
end;
/

 

Any suggestions are welcome.

Step by Step Install: Installing Windows 8 in VMware

Here’s the start to a new experiment!  I want to see if I can get PeopleSoft running on top of the new Windows 8 Consumer Preview.  This post explores just the part where I installed the Windows 8 Operating System.

Now, remember that this is in my free time.  I won’t make any promises that I will get PeopleSoft working.  I did get Windows working though.

If you’re not familiar with it, you can now download Windows 8 as a beta-test.  From what I understand, you can’t use it in “live” situations, but you can test it out.  I think it sends feedback automatically to Microsoft.

Here’s the download site link:

http://windows.microsoft.com/en-US/windows-8/download

Read More

Basic Steps to Create an Application Engine in PeopleSoft

In reviewing my statistics, I found that one common search was “basics steps to create an appengine in PeopleSoft”.  I hope the person(s) found what they were looking for on my blog.  Nonetheless, that gave me the idea to write a simple overview on creating a new Application Engine program.

This post can’t cover everything but I do plan to cover:

  • Creating a new Application Engine definition
  • Setting program properties
  • Understanding program flow
  • Inserting new sections, steps, and actions
  • Loops/logic
  • State records
  • Adding programs to projects
  • Where to go from here

Read More

Oracle DBA: Public Synonyms

Recently, I wrote about granting read only access to the database for developers.  Tim Hall commented that my solution was insecure and granted too much, possibly allowing a loophole.  At the same time, I recently wanted to provide public synonyms to users.

So, the following role, procedures, and trigger attempt to accomplish those two goals:

  • Allow for securely granting readonly access
  • Automatically create public synonyms

Moodle Update/Information

In catching up on my blog reading, I came across this link:

e-Literate: The Blackboard Announcements, Part 2: Can Open Source Be Bought?

Apparently, I have been out of the loop a little in the LMS arena.  This article was a great explanation of how things work in the open source world of LMS.

Here’s some of the other reading that I did to catch up.  First, I started with the official announcement from Blackboard itself:

Blackboard Press Releases: Blackboard Acquires Moodlerooms, Netspot

The following article was pretty interesting.  It made me wonder if this is similar to the situation with Oracle and Open Office.  The community didn’t like Oracle and moved to Libre Office.  I haven’t followed that situation very closely other than the fact that my Ubuntu installation uses Libre Office now instead of Open Office, but it sounds like the same process could happen  in the LMS world if Blackboard isn’t careful.

Hack Education: You Can Acquire Open Source Companies, But You Can’t Buy Open Source Community

This article caught my eye also.  How necessary is the LMS?  This article explores how Google Apps is meeting the needs for what users were using LMS systems for.  This may be something that Blackboard is trying to fight.

e-Literate: Google Apps for Education: When Will It Replace the LMS?

Campus Technology seems to be going down this route.  They are integrating with Google Apps.

Campus Technology: Pearson Debuts Free LMS with Google Apps Integration

Another thing that is obvious is how controversial these announcements/actions are.  This forum gives you a small glimpse:

Moodle Forum: Blackboard acquires Moodlerooms and NetSpot

The one thing that stood out to me from multiple articles is the recognition of Blackboard swinging toward the service end of LMS.  To me, the idea makes sense.  I have worked with enough professionals in the Education arena enough to know that they can be very opinionated in the software they use.  Furthermore, they don’t always agree on what is best.  I have run across a number of Universities that offer multiple LMS options and the instructors can choose what they want to use.  If I were Blackboard, I think I could easily come to the decision: why fight it?  Instead of trying to build the best LMS system, let’s just support all of them and make money on the support side.

For me, the big thing to watch is the PeopleSoft integration to Moodle.  I know that PeopleSoft has been working on the Student Administration Integration Pack.  I am curious to see if Blackboard’s entry into the Moodle world furthers the cause for Moodle and PeopleSoft integration.

Oracle Support: New Format

I’ve been a little bit late on getting this written up and proofread.  If you haven’t noticed recently, Oracle Support is rolling out a new format.  The HTML option gets rid of the Flash requirement.  You can choose it on the Sign In page.

You can skip the option part and go directly to:

http://supporthtml.oracle.com

I am a Chrome fan on Linux, and I have always had problems with the flash version.  So far, this new version works great with my browser and OS.

It sounds like this is the way of the future:

Further enhancements to the HTML-based user interface are planned for the comming months, at which time we will transition users of the standard Flash-based interface.

You can check this article to keep up to date with these changes:

Oracle Support: The New My Oracle Support User Interface [ID 1385682.1]

The look is slightly different, but it looks like everything is there.  Here’s the old set of tabs:

Here’s the new set:

I guess I need to do a little research and figure out where the Collector is in the new version.

Other posts:

Oracle DBA: Running DBVerify on all files

One of the steps to a PeopleTools Upgrade is running a database verify.  In Oracle, that means using the dbv program.

Unfortunately, I didn’t see a “check the whole database” option.  So, I had to create a way to run it for each file…

I ran this in the database:


select 'dbv file=' || file_name
 || ' blocksize='
 || (select value from v$parameter where name = 'db_block_size')
 || ' logfile=E:\psca\output\dbv\' || tablespace_name || '.txt'
from SYS.dba_data_files;

Note: you will have to change the path for the logfile.

Then, you can copy the contents of that file and run it on the command line.

Please comment if you have a better suggestion!

Resources