{"id":96,"date":"2012-01-31T18:29:07","date_gmt":"2012-01-31T08:29:07","guid":{"rendered":"http:\/\/supportingelement.com\/?p=96"},"modified":"2012-01-31T18:29:07","modified_gmt":"2012-01-31T08:29:07","slug":"monitoring-the-progress-of-the-global-payroll-process","status":"publish","type":"post","link":"https:\/\/supportingelement.com\/index.php\/2012\/01\/31\/monitoring-the-progress-of-the-global-payroll-process\/","title":{"rendered":"Monitoring the Progress of the Global Payroll Process"},"content":{"rendered":"<p>The Global Payroll process is a Cobol program. It is not unusual for the payroll process to take a number of hours to complete, depending on factors such as:<\/p>\n<ul>\n<li>The number of payees<\/li>\n<li>The complexity of the payroll element configuration<\/li>\n<li>Infrastructure capability<\/li>\n<li>The type of database used<\/li>\n<li>The amount of performance tuning employed<\/li>\n<\/ul>\n<p>It is difficult to determine the progress of the payroll process. However, there are a few methods by which we can monitor the status of the payroll calculation.<\/p>\n<h4>PS_GP_RUNCTL<\/h4>\n<p>The \u201cPS_GP_RUNCTL\u201d table is periodically updated by Global Payroll Process (GPPDPRUN) and can be used to get an indication of the process progress.<\/p>\n<p>The following SQL script shows the key fields related to the process progress:<\/p>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"10px\">\n<tbody>\n<tr>\n<td><em><br \/>\nSELECT CAL_RUN_ID,<BR \/><br \/>\nRUN_CNTL_ID,<BR \/><br \/>\nC.PHASE_OPTN AS RUN_PHASE_OPTN,<BR \/><br \/>\nB.PHASE_STEP AS RUN_PHASE_STEP,<BR \/><br \/>\nNEXT_PGM,<BR \/><br \/>\nNEXT_EMPLID,<BR \/><br \/>\nTO_CHAR(PRC_SAVE_TS, &#8216;hh:mm:ss am&#8217;)<BR \/><br \/>\nFROM PS_GP_RUNCTL A,<BR \/><br \/>\n(SELECT FIELDVALUE, XLATLONGNAME AS PHASE_STEP FROM PSXLATITEM B WHERE FIELDNAME = &#8216;RUN_PHASE_STEP&#8217;) B,<BR \/><br \/>\n(SELECT FIELDVALUE, XLATSHORTNAME AS PHASE_OPTN FROM PSXLATITEM B WHERE FIELDNAME = &#8216;RUN_PHASE_OPTN&#8217;) C<BR \/><br \/>\nWHERE A.RUN_PHASE_STEP = B.FIELDVALUEAND A.RUN_PHASE_OPTN = C.FIELDVALUE<BR \/><br \/>\nAND OPRID = &#8216;ENTER YOUR OPRID HERE&#8217;<\/em><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The query returns the Phase, Step and Employee ID last saved.<\/p>\n<p style=\"text-align:center;\"><a href=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/run_ctrl_detail1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-128\" style=\"border-color:black;border-style:solid;border-width:1px;\" title=\"RUN_CTRL_DETAIL\" src=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/run_ctrl_detail1.jpg\" alt=\"\" width=\"450\" height=\"192\" srcset=\"https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/run_ctrl_detail1.jpg 761w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/run_ctrl_detail1-300x129.jpg 300w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/run_ctrl_detail1-660x283.jpg 660w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/a><\/p>\n<p>The RUN_PHASE_STEP field shows the last completed step in the process. Steps include:<\/p>\n<table style=\"margin-left:auto;margin-right:auto;\" border=\"1\" cellspacing=\"0\" cellpadding=\"5\">\n<tbody>\n<tr>\n<td>STEP<\/td>\n<td>DESCRIPTION<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>Run Phase Step Initial<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>Run Phase Step After Initial<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>Run Phase Step Initial End<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>Run Phase Before Iterative<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td>Run Phase Step Iterative<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td>Run Phase Step After Iter<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td>Run Phase Step Iter End<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td>Run Phase Step Before Canel<\/td>\n<\/tr>\n<tr>\n<td>9<\/td>\n<td>Run Phase Step Cancel<\/td>\n<\/tr>\n<tr>\n<td>10<\/td>\n<td>Run Phase Step After Cancel<\/td>\n<\/tr>\n<tr>\n<td>11<\/td>\n<td>Run Phase Step Cancel End<\/td>\n<\/tr>\n<tr>\n<td>12<\/td>\n<td>Run Phase Step Before Identif<\/td>\n<\/tr>\n<tr>\n<td>13<\/td>\n<td>Run Phase Step Identification<\/td>\n<\/tr>\n<tr>\n<td>14<\/td>\n<td>Run Phase Step After Identif<\/td>\n<\/tr>\n<tr>\n<td>15<\/td>\n<td>Run Phase Step Identifictn End<\/td>\n<\/tr>\n<tr>\n<td>16<\/td>\n<td>Run Phase Step TL Interface<\/td>\n<\/tr>\n<tr>\n<td>17<\/td>\n<td>Run Phase Step Before Calc<\/td>\n<\/tr>\n<tr>\n<td>18<\/td>\n<td>Run Phase Step Calculate<\/td>\n<\/tr>\n<tr>\n<td>19<\/td>\n<td>Run Phase Step After Calc<\/td>\n<\/tr>\n<tr>\n<td>20<\/td>\n<td>Run Phase Step Calc End<\/td>\n<\/tr>\n<tr>\n<td>21<\/td>\n<td>Run Phase Step Before Final<\/td>\n<\/tr>\n<tr>\n<td>22<\/td>\n<td>Run Phase Step Final<\/td>\n<\/tr>\n<tr>\n<td>23<\/td>\n<td>Run Phase Step Final End<\/td>\n<\/tr>\n<tr>\n<td>30<\/td>\n<td>Run Phase Step Before Ident 2<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>Monitor SQL<\/h4>\n<p>Another way to view the inner workings of the Payroll process is to use the \u201cMonitor SQL&#8230;\u201d function in \u201cOracle SQL Developer\u201d application (assuming you are using an Oracle DB). \u00a0This function shows the details of SQL statements being called\/executed by the Payroll process.<\/p>\n<p style=\"text-align:center;\"><a href=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/monitor-sql.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-99\" style=\"border-color:black;border-style:solid;border-width:1px;\" title=\"Monitor SQL\" src=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/monitor-sql.jpg\" alt=\"\" width=\"450\" height=\"254\" srcset=\"https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/monitor-sql.jpg 662w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/monitor-sql-300x169.jpg 300w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/monitor-sql-660x373.jpg 660w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/a><\/p>\n<p>Details of each SQL Statement including Start and End time are shown.<\/p>\n<p style=\"text-align:center;\"><a href=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/sql_monitor_results.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-100\" style=\"border-color:black;border-style:solid;border-width:1px;\" title=\"SQL_Monitor_Results\" src=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/sql_monitor_results.jpg\" alt=\"\" width=\"495\" height=\"131\" srcset=\"https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/sql_monitor_results.jpg 924w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/sql_monitor_results-300x80.jpg 300w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/sql_monitor_results-768x204.jpg 768w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/sql_monitor_results-660x175.jpg 660w\" sizes=\"auto, (max-width: 495px) 100vw, 495px\" \/><\/a><\/p>\n<h4>Restart Information<\/h4>\n<p>Finally, a slightly simpler approach. The &#8220;Restart Information&#8221; link on the &#8220;Calculate Absence and Payroll&#8221; component is useful for identifying the Phase and Step of the process.<\/p>\n<p style=\"text-align:center;\"><a href=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/payroll_results_restart_info.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-103\" style=\"border-color:black;border-style:solid;border-width:1px;\" title=\"payroll_results_restart_info\" src=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/payroll_results_restart_info.jpg\" alt=\"\" width=\"450\" height=\"228\" srcset=\"https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/payroll_results_restart_info.jpg 782w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/payroll_results_restart_info-300x152.jpg 300w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/payroll_results_restart_info-768x390.jpg 768w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/payroll_results_restart_info-660x335.jpg 660w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/a><\/p>\n<p style=\"text-align:center;\"><a href=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/restart_details1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-105\" style=\"border-color:black;border-style:solid;border-width:1px;\" title=\"Restart_details\" src=\"http:\/\/www.temp.supportingelement.com\/wp-content\/uploads\/2012\/01\/restart_details1.jpg\" alt=\"\" width=\"284\" height=\"260\" srcset=\"https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/restart_details1.jpg 355w, https:\/\/supportingelement.com\/wp-content\/uploads\/2012\/01\/restart_details1-300x275.jpg 300w\" sizes=\"auto, (max-width: 284px) 100vw, 284px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Global Payroll process is a Cobol program. It is not unusual for the payroll process to take a number of hours to complete, depending on factors such as: The number of payees The complexity of the payroll element configuration Infrastructure capability The type of database used The amount of performance tuning employed It is\u2026 <span class=\"read-more\"><a href=\"https:\/\/supportingelement.com\/index.php\/2012\/01\/31\/monitoring-the-progress-of-the-global-payroll-process\/\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,8,21,1],"tags":[],"class_list":["post-96","post","type-post","status-publish","format-standard","hentry","category-all-posts","category-global-payroll","category-peoplesoft","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/posts\/96","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/comments?post=96"}],"version-history":[{"count":0,"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/posts\/96\/revisions"}],"wp:attachment":[{"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/media?parent=96"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/categories?post=96"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/supportingelement.com\/index.php\/wp-json\/wp\/v2\/tags?post=96"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}