Showing posts with label Peoplesoft. Show all posts
Showing posts with label Peoplesoft. Show all posts

Tuesday, December 8, 2020

Retiring (Deleting) an App Engine Process

It's easier than I suspected it would be to delete an App Engine process from your PeopleSoft environments using App Designer.   But it's not completely intuitive.  The steps to delete an App Engine, as well as what to avoid, are explained in this article.

Monday, October 9, 2017

Elastic Search (Fluid) Not Showing Images in Search Results

We've begun implementing Elastic Search in our PeopleSoft development environment, and in performing test searches, we regularly encountered search results with jumbled text and missing images.  Here's how we fixed the problem.


Thursday, March 31, 2016

Help! My Component Interface Field is Not Updating!!!

In BYU's soon-to-go-live scholarship system I came across a bizarre problem that I was lucky to quickly find a solution for.

It is possible for you to use PeopleCode to tell your component interface to update a field and have it ignore you.  You'd think that PeopleSoft would have made it so that such a situation raises an error, but it doesn't.

Here's what's happening...


Thursday, March 10, 2016

PeopleSoft Fluid Pages: An Alternative to the CTRL-J Option

At the Alliance Conference in Seattle earlier this week, some attendees were concerned that pressing the CTRL-J keys from a Fluid page would not work for them to see information about the system, their page, component, etc.  Here's a fairly good alternative.

Monday, October 20, 2014

PeopleSoft "PRMGet failed for component," and Why My Page Wouldn't Load

We recently have had reports of PeopleSoft pages not loading and the "spinner" icon in the upper right corner of the page just continuing to spin. There's not much information about this problem anywhere on the internet, so I thought I'd let you know what we found.


Tuesday, July 22, 2014

"Invalid Value" on a PeopleSoft Page? Check the Case of the Corresponding Field Object


Have you ever had the situation where you know that the data in your lookup table is accurate, yet any time you try to select a value from that table via a drop-down list, you get the "Invalid value" error when you try to save the data?  It's most likely because your database column contains mixed-case data, but the field object that you defined in PeopleSoft App Designer to represent that data requires uppercase data. Here's how I discovered and fixed the problem.

Tuesday, May 7, 2013

How to Invoke Java from PeopleCode to Write to a TCP Socket

I found several examples in Java of how to write to a TCP server socket, but I found none of them that show how to do it with PeopleCode calling Java.  Here's an example that I put together, which works great, so long as you have a server that is listening for your connection.  If you don't have a server, I'll show you how to use the Linux "nc" command to create one.

Friday, May 25, 2012

Creating Views of External Database Tables in Peoplesoft

Here are the steps to creating a view in PeopleSoft of data that exists in a database table that is external to your PeopleSoft database.

1. Create a view in the external database of the data you need access to in PeopleSoft.
2. Create a view in the PeopleSoft database of the view that you created in step 1.
3. Create a view record in App Designer of the view you created in step 2.
4. Build your view record in App Designer
5. Save your scripts from steps 1 and 2 so that you can use them to create the same views in the other database environments in your development path when you migrate your new project forward to production.

Using Oracle SQL notation, and using the view Y_ACAD_PROG_VW for my example, I'll explain steps 1 thru 3 below. (To clarify: this process works just as well if the external database happens to be a PeopleSoft database itself.)



Thursday, February 2, 2012

Disabling PeopleSoft Grid Using "Page Field Name" Property

After thinking there were no good reasons for using the the “Page Field Name” property of a PeopleSoft object, I finally found one. Rather than using overly complex (for this purpose) Rowset/Row/Record/Field logic to disable each field in a grid, it is possible to use the Page Field Name in simpler logic to disable each column in the grid.

In this case, when a student accesses my page, I want all of the objects to be editable, but when their parent accesses the page, the only thing the parent should be able to do, other than see the student's information, is click a “Validate Student Information” button on the page. So, for parents, I need to disable several edit boxes, radio buttons, and grid columns. If I use the Page Field Name of the Grid and Grid Column objects, then disabling the grid columns is fairly simple.

Assuming the grid's Page Field Name value is “FAMILY_GRID” and the column's Page Field Name value is “FAM_MEM_NAME” , you can use the following code
&famGrid = GetGrid(Page.MY_PAGE, "FAMILY_GRID");
&famGridFamMemName = &famGrid.GetColumn("FAM_MEM_NAME");
&famGridFamMemName.enabled = False;
to get the first column in your grid to be disabled (read-only), as shown below.




Friday, April 25, 2008

PeopleSoft: Which Project is My App Engine In?

One of my favorite "tools" in PeopleSoft App Designer is Edit -> Find Definition References. If I'm not sure, for example, whether a page I'm working on has been included in the appropriate project, Find Definition References will help me quickly find out whether it is or not.

That doesn't work so well when I want to find which project an Application Engine program is in.

When I select Edit -> Find Definition References for an App Engine, I see something like the following.












Well, I pretty much already knew that!

There is a way that I can find which project an App Engine is included in, but it requires a database query. I can use a query similar to the following:
select * from sysadm.psprojectitem
where objectvalue1 = 'MY_APP_ENGINE';
Using the above query, if your App Engine is included in any projects, the value in the OBJECTVALUE1 column will be your App Engine name. App Engine objects have the following object types:
  • 33 - App Engine Program
  • 34 - App Engine Section
  • 43 - App Engine Step
Occasionally, references to App Engines are stored differently in PSPROJECTITEM (if anyone knows why, please clue me in!). If the above query doesn't work, use a query similar to the following:
select * from sysadm.psprojectitem
where objectvalue1 = 'Application Engine'
and OBJECTVALUE2 = 'MY_APP_ENGINE';
Using this query, if your App Engine is included in any projects, the value in the OBJECTVALUE2 column will be your App Engine name.

With one of those two queries, you should be able to find whether your App Engine is included in the appropriate project.

Thursday, November 8, 2007

PSDBOWNER and Why I Can't Login to my New Database

We copied our upgrade database to our development backup database this morning. I had to apply about 13 bundles to the upgrade database to get it current on maintenance.

The next step is to copy the customizations from our dev database into our dev backup database. But this morning after the dev backup database was created, I couldn't login to it using App Designer, even though I could login using the same userid and password to the upgrade database (from which dev backup was a copy).

Does anyone know where this is going? Well, I'm sort of new to PeopleSoft, so I was bordering on the verge of panic, but I found someone else on our staff who has been doing PeopleSoft for a long time.

He said, "Did you update the DBOWNER table?"

And that's all it was. The PS.PSDBOWNER.DBNAME still had the name of the upgrade database in it. Once I updated that, I was able to login and do a compare between the dev and dev backup databases.

To perform a full database compare
  1. In App Designer, select Tools->Compare and Report->To Database
  2. Specify the database in the login dialog and wait for all the permission lists, etc. to load.
  3. When the Compare and Report Dialog comes up, click the Options button.
  4. When the Upgrade Options dialog comes up, click on the Compare Options tab.
  5. In the Compare Type area of the Compare Options tab, click the Database radio button.
A full database compare takes a long time.

Now I'm just waiting for my compare report to run...

Thursday, April 19, 2007

Peoplesoft Financial Aid: BYU Institutional Application

For about the past 4 months I've been working on BYU customizations to the PeopleSoft-delivered financial aid module. Most of the time has been spent on what we call the Institutional Application. I'm not sure why Peoplesoft doesn't already have something like this!

Students will be able to apply online for various forms of Financial Aid. The Institutional App displays different options based on whether the student is an undergraduate, law student, etc. Based on the various options the student selects on the page, various To-Do List items are created.

Many To-Do list items contain a message that says something like 'Please take a copy of your 2006 Federal tax forms to the Financial Aid Office.' However, in certain cases, the information can be provided online; therefore, some of the To-Do list items are custom pages as well. A custom cross-reference table identifies the custom pages and, with the help of about 10 lines of code, which checklist item codes will transfer to the appropriate custom page. Some of the information a student can provide online include other schools attended, other sources of financial aid, or whether the student served an LDS mission.

The greatest complication to the Institutional Application is the fact that a student can make an additional request for financial aid if any of the loans or grants for his or her initial request has already been originated.

I spent most of the day working on this functionality, and I think it's ready to go--but what do I know? We'll see what the users think.