Wednesday, October 07, 2009

Learn Development Tips and Techniques at OpenWorld 2009

Next Wednesday, October 14th, I will be sharing PeopleTools Tips and Tricks from 11:45 to 12:45 in Moscone West room 2002/2004 (level 2). In this session I will share with you some very practical development tips (TDD, design patterns, best practices, etc) as well as demonstrate exotic user interface customizations using AJAX and Flex. Time permitting, I will share with you some real-time integration solutions for legacy (non web service) applications and I won't use DB links or SQR.

What type of AJAX demonstrations do I have this year?

  • Using Thickbox/lightbox with PeopleSoft
  • Creating a custom toolbar
  • Change the search page default search operator

Best of all, these AJAX examples are configurable, except for 10 lines of JavaScript added to one PeopleSoft delivered definition. Yes, that is right! By adding 10 lines of JavaScript to a single delivered definition, I can add code to any PeopleSoft page without modifying the page in AppDesigner. Furthermore, using Meta-data, I can configure page specific customizations or global customizations.

If you have room in your OpenWorld schedule, I highly recommend this Tips and Tricks session.

On Thursday at 10:30, come by the Create a Rich Internet UI for Oracle Applications with Oracle Application Development Framework hands on session at the Marriott Golden Gate A3 to see a demonstration of how to build mobile applications for PeopleSoft using Oracle ADF.

Here is a list of other sessions I recommend:


Unknown said...

Any chance of posting some of the nice javascript examples shown in demo?
I have no plans to put this in PROD but putting in a development environment could greatly simplify developers work.

Jim Marion said...

@Byron, I posted the Advanced Search page search operator JavaScript. Since you are referring to developers, I think you are specifically asking for the developer toolbar I demonstrated. The code for that is owned by McGraw Hill and will be released with my PeopleTools book in July, 2010. Unfortunately you will have to wait several months for the full code listing.

Unknown said...

Rats. toolbar would have been really nice. Tease! [grin]
Guess I'll have to pick up a copy.

Jim Marion said...

@Byron, thank you. I am glad you like it. The code will be available at McGraw Hills site.

VenkatPusarla said...


Any changes to the Integration Broker in PT8.5 from PT8.48/8.49

We have used IB widely. So curious to know if there any drastic changes to the Integration Broker in PT8.5


Jim Marion said...

@Venkat, I am not an IB expert. There are changes, but they aren't drastic. We added a visual routing map and a few other design time aids. In CI based web services, PT 8.49 would return an error if the Find method returned more than 300 rows. In PT 8.50, it returns the 300 results with no error. Those are the only differences I've noticed.

VenkatPusarla said...

Thanks Jim.

psftfan said...

Hi Jim, I'm looking for more info on best practices for extending PeopleSoft applications. I saw you will dedicate a chapter in your new book on it? Any possiblity to share already some info on this. In my opinion the best approach is the one of adding additional sibling or child records to the standard component and foresee necessary coding to make sure that the new records are in sync with the standard records. The one and only problem that might occur is the retrieval of the necessary information for instance for reporting or even when entering the component. I have no idea on the performance impact of this approach...

Jim Marion said...

@psftfan, there are lots of well known best practices, like creating sibling records etc. I do touch on that practice in my chapter on using the File Attachment API. One of the problems with the sibling record approach is that it creates more than one primary record at a level. In the File Attachment API chapter I show how to use PeopleCode to move values between a sibling record and a derived/work record. I mention other PeopleSoft specific best practices throughout the book as the need arises (How to add JavaScript to a page without modifying a page, etc).

I have a best practices section (two chapters), but that section focuses on coding practices that are less known by PeopleSoft developers, such as test driven development and other coding practices. I'll reconsider the section title so that it more appropriately reflects the chapter content. There are a lot of excellent coding practices in use by mainstream languages, but average PeopleCode developers ignore them. The point of my "best practices" section is to apply main stream coding best practices and patterns to the PeopleCode language.

For best practices specific to PeopleSoft, take a look at Judi Doolittle's book PeopleSoft Developer's Guide for PeopleTools and PeopleCode.

Shiva said...

Hi Jim,

I have a problem with using the PeoplesoftServiceListeningConnector.
In my case I am using HttpListeningConnector for inbound SOAP message. its working but from 8.48 onwards this new listeningconnector introduced and it is used for the same.
So when I am using PeoplesoftServiceListeningConnector instead of Http I am getting Integration response error as "PeopleSoftServiceListeningConnector: HTTPRequest : Invalid SoapRequest - Wrong SoapVersion"
Please advise what are the changes to be done to use this new service?

Shiva said...

Hi Jim,
I found the problem where it is. Actually we have to use "Provide Webservice" then it worked.

Jim Marion said...

Thanks for the feedback Shiva! Yes, that is correct. HttpListeningConnector will work because it uses basic IB. But the ServiceListeningConnector requires additional Meta data.

KCWeaver said...

Does your new book provide any help on extending PeopleSoft application to Blackberry or other mobile devices? If so I am ready to buy it today. Or is there a way to get an advance copy.

Jim Marion said...

@KCWeaver, yes, actually my book does offer help in this area. I have a chapter devoted to the Approval Workflow Engine (PTAF_CORE), which may better help you understand the App Classes behind AWE so you can build a web service on top of it.

For CI based web services and mobile apps, chapter 14 of my book is a step-by-step walk through of using CI based web services and the JDeveloper mobile web application designer. Chapter 14 is all drag and drop and configuration using CI based web services and JDeveloper. JDeveloper offers the drag and drop designer, Trinidad (free) JSF components, and the web service data control (fusion middleware, not free).

Unfortunately, there are no pre-release copies. I was talking with McGraw Hill yesterday and it sounds like this book might ship as early as June. The fastest way to get a copy is to pre-order from Amazon. Those ship from the publisher immediately upon release. Thank you for your interest.

VenkatPusarla said...

Can i pre-order for the PeopleTools book that you are going to release in July 2010?

If so, can you provide me the link from where and how can i pre-order for the book.


Jim Marion said...

@Venkat, yes, you can pre order the book on Amazon. If you are interested in the book, I highly suggest you pre order it. Amazon pre orders ship directly from the warehouse upon release. Thank you very much for your interest.

sireesha said...

hi jim i dont have much knowledge on peoplesoft i have one question can u pls help can we incorporate one flex component into deliverd page.pls help me to work out this
Thanks in advance.

Jim Marion said...

@sireesha, I wrote about this in my book. I highly recommend that you buy a copy. While you wait for the book to arrive, you can download the source code for chapters 5 through 8. You will find a flex example in chapter 5. Here is my blog post about the source code availability.

Kevin Weaver said...

Jim, I am using the thickbox example from your book from a pagelet and it works great. However, it does not resize it self the way I would expect if the user resolution is something like 800x600, we have people who use this resolution. I did some research and see that your version of the thickbox code from the book has the resizing code. Is there some thing else I should check? Thanks for all your help!


Jim Marion said...

@Kevin, I have used Thickbox in a handful of ways. The first is with dynamic sized content. Thickbox will automatically take the size of the content. If you want to control the width/height, then you have a couple of options: specify the width and height as URL parameters as part of the normal URL or append them in your call to TB_show (tb_show, depends on version).

Thickbox was highly valuable in its day, but that day is now gone. I've moved on to jQuery UI dialogs since they are a good free alternative. Unfortunately, they don't have the same out-of-the-box support for iframes, but you can write some JavaScript/HTML to handle that. Probably my favorite, though is fancybox.

Rajneesh said...

Hi Jim,

I am trying to open a peoplesoft delivered pagelet (Direct Reports) using jquery lightbox/thickbox as a modal window.

I tried lightbox jquery on some images and its working. But when I provide the URL for peoplesoft, it doesn't work.

Can you please help how I can use jquery to open peoplesoft page/pagelets in a modal window.


Jim Marion said...

@Rajneesh, the key is that your lightbox or thickbox plugin needs to support iframes, not just image URL's. Some do, some don't. The Thickbox from Codey Lindley supported iFrames, but has not been maintained for a few years. I use jQuery dialogs with an iFrame inside the dialog.

Pagelets work best for this, especially Pagelet Wizard (and other iScript) pagelets. Components may work, but might not because of JavaScript requirements in the parent frame.

Are you getting some type of error? If you open the JavaScript console (Firebug, chrome, or safari tools) do you see an error message?

JCook said...


I figured it out. I loaded through the iscript.