Friday, June 22, 2007

All Derived, All The Time (I wish...)

I have been working on a PeopleSoft inquiry page a bit this week. I was looking at the specifications for the page and saw I didn't need to create any physical objects in the database (tables or views) to do what I needed to do. I was planning on just using derived tables and values and just loading up a rowset with data from PeopleCode and pushing the rowset to the grid. I was using an existing derived table at row level 0 and created an additional derived table with all of the fields I needed for row level 1 (the grid). Everything derived. I added my fields at row level 0, added my grid object, added the fields I needed for the grid from the derived record and attempted to save. Error message of no data found in row level 1. What? I went back and looked, verifying that I had added the fields. Tried to save again. Same error. I went and showed one of my colleagues who also theorized that what I was trying to do should work. He got the same error. He added a field from a table that physically exists in the database and it saved. So the moral of the story is that in a PeopleSoft page, you can have all derived field at row level 0, but you must have at least one field that physically exists in the database in row level 1 for the page to work.

This posting probably is rambling and doesn't flow well, but hey, it's late on a Friday...



Ernst La Haye said...

You could also try to use a dynamic view for the grid. That is what I always do. Just make sure there is no auto select so the view itself will not populate by itself. Then populate values you want by PeopleCode.

Ethan Jones said...

Thanks for the idea. I will give that a shot the next time the opportunity arises.