| Day# | Content | Duration |
| 1 | PeopleSoft Technical Overview Application Designer Overview What all we do in Application Designer | 2 Hours |
| 2 | Introduction to PeopleCode Application Packages, Classes, Methods and other PeopleCode Elements What are the common methods we use for business requiremnts | |
3 | Overview | 3 Hours |
| App classes Vs functional Library | ||
| Elements of App Classes and their uses | ||
| Creating an App Package and App Class | ||
| App Engine | Introduction Why do we prefer Application Engine over SQR Section, Step and Action Different types of Actions and how and when they should be used Execution priority and flow of Actions in a Step State Records and Temp Records when and how to use them File Layouts and and how to use them in Application Engine Developing your First Application Engine Program Creating Process Definition to run the Program | 2 Hours |
| App Engine | Developing an Inbound Interface using Application Engine Developing an Outbound Interface using Application Engine | 2 Hours |
| App Engine | Parallel Processing Overview For what business scenarios Parallel Processign to be used How to Implement Parallel Processing in Application Engine | 1. 5 Hours |
| App Engine | Set Processing Overview For what business scenarios Set Processing to be used How to Implement Set Processing in Application Engine | 1.5 Hours |
| Page Design | What are Pages What are Sub Pages and how and when they are used What are Secondary Pages and how and when they are used Designing a simple and complex page What are the Components How to add multiple pages in a Component Deferred and Interactive Processing What are the Menues What are the Menue Bars and BarItems Creating Menues Understanding record structure in a Page Creating a Business Transaction using Page, Component and Menue Registering a Component through Application Designer | 3 Hours |
| Component Buffer | Understanding Component Buffer How CB Works Read/Write data from/to Component Buffer Reading/Writing data from Records fields in CB at various levels RowSet Class and how we use it in CB | 1.46 Hours |
| PeopleCode Events | Introduction of PeopleCode Event Different Scopes of PeopleCode Events PeopleCode Events Flow How to View and Write PeopleCode Events at various levels What are all the events fired and how they effect the page when we open a page in PIA | 2 Hours |
| 11 | Detailed Discussion on follwoing PeopleCode Events: Activate Prebuild Postbuild SavePreChange SavePostChange SearchInit SearchSave Developing a page for a business scenario where all these events have been used | 3 - 4 Hours |
| 12 | Detailed Discussion on follwoing PeopleCode Events: FieldEdit FieldChange FieldDefault FieldFormula RowInit RowInsert RowDelete RowSelect Developing a page for a business scenario where all these events have been used | 3 - 4 Hours |
| 13 | Introduction to Component Interface Why the CI is extremely important in uploading the data How does CI works Properties and in Methods in CI When and how the CI should be used How many ways we can call the CI | 2 Hours |
| 14 | Developing an Upload Program using CI and App Engine | 4 Hours |
| Migration Overview and project life-cycle | ||
| Understand the objects and their types | ||
| Inserting objects into project | ||
| Creating file references | ||
| Understanding data migration | ||
| 15 | Understanding DMS scripts and how to create them | 3 Hours |
| Upgrade flags and how they work | ||
| Creating Change package | ||
| Comparing and migrating the project in target instance | ||
| Reviewing and updating upgrade flags | ||
| Copying the project in the target instance | ||
| Building the project | ||
| Importing the data through DMS | ||
Converting Classic to fluid | Converting Pages in fluid | 6 Hours |
| Working on Page Layout in fluid | ||
| Working on Scroll area in fluid | ||
| Working on other page controls | ||
| Create layout page | ||
| Working on search record for fluid | ||
| Creating Component | ||
| Creating pivot grid for search functionality | ||
Fluid Tiles | Tiles overview and Core Concepts | 2 Hours |
| Types of creating fluid tiles | ||
| Creating tiles through Tile Wizard | ||
| Creating tiles through Portal Registry | ||
| Adding Tiles to homepage and the security configuration |
- HCM Concepts
- HCM Training Videos
- PeopleSoft HCM Functional
- Core HR
- Tableset Control
- FTE
- POI
- Hiring in PeopleSoft
- Other Core Concepts
- Part Time/Full Time, Regular/Temporary and Contingent Workers in PeopleSoft
- Employee Class (EMPL_CLASS) Field in PeopleSoft
- Business Unit, Company and Regulatory Region in PeopleSoft
- Understanding PeopleSoft Group IDs
- How to enable Signon Tracing option in PeopleSoft
- Business Unit, Company and Regulatory Region in PeopleSoft
- PeopleSoft 9.1 Person Model
- How the Various Date Fields on Employement Data Page are Updated
- 'Override Position Data' and 'Use Position Data' Option in Job Data Page
- PeopleSoft Benefit Record Number Vs Employee Record Number
- Absence Management
- Time and Labor
- Global Payroll
- Most frequently queried tables in PeopleSoft Global Payroll
- How to unfinalize a calendar in PeopleSoft Global Payroll
- Prompt isn't fetching the elements in the Rule Package Definition in PeopleSoft Global Payroll
- Unable to stop retro processing for a payee in PeopleSoft Global Payroll
- Retro trigger not picked up when created through INSERT SQL in PeopleSoft Global Payroll
- Segmentation not created for a payee in PeopleSoft Global Payroll
- Fluid
- PeoleSoft Security
- Peoplesoft Row Level Security Search Records
- Unable to See Future Dated Employee Record in Job Data Component
- Simplified Way to Provide a Page Access in PeopleSoft
- How to Resolve a Row Level Security Issue in PeopleSoft
- How to find the List of Users Assigned to a Role
- Process Security in PeopleSoft
- Definition Security Error "You are not authorized to access the definition XXXXXXX"
- Why the dynamic role isn't getting assigned to intended users in PeopleSoft"
- You are not authorized to access this component. (40,20)
- Peoplesoft Row Level Security Search Records
- Core HR
- PeopleSoft Online Training
- PeopleSoft Technical
- PeopleSoft Installation
- PeopleSoft 9.1 with PeopleTools 8.52
- PeopleSoft Installation Made Extremely Easy
- PeopleSoft Installation Made Extremely Easy: Part 1
- PeopleSoft Installation made Extremely Easy: Part 2
- PeopleSoft Installation made Extremely Easy: Part 3
- PeopleSoft Installation Made Extremely Easy: Part 4
- PeopleSoft Installation Made Extremely Easy: Part 5
- How to Connect to a Database through SQL Developer in MS Window
- Connecting and Starting the Database through sqlplus Command Utility
- PeopleSoft 9.2 with PeopleTools 8.54
- PeopleSoft 9.1 with PeopleTools 8.52
- AWE
- Application Engine
- Integration Broker
- Other Technical Concepts
- Peoplesoft Row Level Security Search Records
- Understanding Component Interface in PeopleSoft
- How to use PeopleSoft ExceltoCI Utility
- Understanding Dynamic Prompts in PeopleSoft
- 4 Key advantages of Application Package over traditional Functional Libraries
- Prompt isn't fetching the elements in the Rule Package Definition in PeopleSoft Global Payroll
- Important SQL Queries
- Portal
- PeopleSoft Events
- PS Query
- PeopleSoft Installation
Showing posts with label PeopleCode Events. Show all posts
Showing posts with label PeopleCode Events. Show all posts
Thursday, July 9, 2020
Sunday, January 28, 2018
Behavior of think-time Functions in PeopleSoft
Some issues are uncommon, weird and hard to understand what exactly went wrong. One such weird issue in peoplesoft is related to Think-time functions. I know many of my colleagues who were stressed to the core and said ‘Its time to leave this planet’ because of this peculiar issue in Peoplesoft. Come!! Let’s sort this one out.
Think-time PeopleCode event (<think-time event>), but a SQL update has occurred in the commit interval.
In this article, let’s see what think-time functions are, and some of the limitations that require our attention when dealing with such functions.
Basically, any function that waits for user input or external process to complete is a think time function. Messagebox, for instance, waits for user to click Ok or Cancel button… Exec() function running in synchronous mode which suspends processing until the triggered process is complete.
Listed below are the think-time function in PS
Think-time PeopleCode event (<think-time event>), but a SQL update has occurred in the commit interval.
In this article, let’s see what think-time functions are, and some of the limitations that require our attention when dealing with such functions.
Basically, any function that waits for user input or external process to complete is a think time function. Messagebox, for instance, waits for user to click Ok or Cancel button… Exec() function running in synchronous mode which suspends processing until the triggered process is complete.
Listed below are the think-time function in PS
- DoCancel
- DoModal
- DoModalComponent
- Exec(Only when it runs in Synchronous Mode)
- AddAttachment, MAddAttachment, ViewAttachment, DetachAttachment
- InsertImage, CropImage
- CreateObject, ObjectDoMethod, ObjectSetProperty, ObjectGetProperty(When object Required User- action)
- Prompt
- RemoteCall
- RevalidatePassword
- WinExec(Only in Synchronous mode)
- Winmessage and Messagebox(Depending on Style Parameter)
- Calls to an External DLL
Think-time functions in Application Engine
Are you using Exec() or RemoteCall() in AE to run a batch file or a remote process? You should consider the following then:
Exec(&unixCmd, %Exec_Asynchronous + %FilePath_Absolute); /*Running in Asynchronous mode*/
&ExitCode = Exec(&unixCmd, %Exec_Synchronous + %FilePath_Absolute); /*Running in Synchronous mode*/
Running Exec() in Asynchronous mode is not a think-time function, as the AE process does not wait for the invoked command to complete. With Synchronous mode it is different, because the AE process needs to wait for the invoked command to complete. OH!! That’s Pathetic.. Don’t expect it to wait for you if you haven’t committed pending transactions, you will end up in think-time event error.
The simple solution here is to issue a Commit before Exec() is invoked. If AE was written to be Restartable, then make sure that the previous step is committed before the step executing Exec. For AE with ‘Disable Restart’ checked, a CommitWork() has to be issued before Exec(). Easy right?
Think-time functions in Component Interface
Think-time functions are usually suppressed and ignored in CI. So, in such cases better to write a separate logic for CI.
If %CompIntfc then
/*Logic for CI*/
Else
/*Get user Input*/
End-if;
Think-time Functions in Peoplecode
Winmessage() and MessageBox() behaves as a think-time function only when the style parameter specifies more than one button. When you make the style parameter to show only Ok Button(0), then it behaves like a normal function. If style is neglected, Winmessage() displays both Ok and Cancel Button which acts as a think-time function. Hence you must always specify with style parameter like Winmessage(“Test Message”, 0) to show only Ok button.
Sometimes you would have noticed that your MessageBox or Winmessage does not work before call to a Transfer or TransferExact function. If you want to display your message, then change the style to show OK and Cancel Button.
It’s not so hard to debug when you receive error in peoplecode related to think-time functions. PeopleBooks suggests us not to use think-time functions in SavePreChange, Workflow, RowSelect, SavePostChange, and any peoplecode event that executes as a result of ScrollSelect, ScrollSelectNew, RowScrollSelect, or RowScrollSelectNew function call, and any peoplecode event that executes as a result of Rowset class Select or SelectNew method. If you are using think-time functions in one of the above events, just get red of it.
Subscribe to:
Posts (Atom)