tag:blogger.com,1999:blog-34020393.post1571551407213599584..comments2024-03-27T10:59:38.307-07:00Comments on Jim's PeopleSoft Journal: AWE Mass ApprovalJim Marionhttp://www.blogger.com/profile/12995110203807924786noreply@blogger.comBlogger30125tag:blogger.com,1999:blog-34020393.post-47642164808021929212018-07-30T07:57:16.122-07:002018-07-30T07:57:16.122-07:00Hey Jim,
I am trying to add new translate value t...Hey Jim,<br /><br />I am trying to add new translate value to EOAWSTEP_STATUS for AP Voucher Mass Approve so while approving i want to pass new translate value using following code %This.UpdateStatus(&utils.STEP_STATUS_MASS_APPRV) in EOAW_CORE:UserStepInst in method Approve.Code is updating the EOAW_USERINST table EOAWSTEP_STAtUS to new translate value but not on the EOAW_STEPINST table.How to update the EOAW_STEPINST table?GVKhttps://www.blogger.com/profile/11613578537990986727noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-87776747581565051762015-10-14T15:01:37.382-07:002015-10-14T15:01:37.382-07:00Well, I randomly tried removing the Role configure...Well, I randomly tried removing the Role configured in Monitor Configuration and then added back into my profile.<br />I was then successfully able to see my process id in Monitor Approval.<br /><br />Sometimes these things are a bit crazy ;)!<br />Sarah Dhttps://www.blogger.com/profile/11478703340760522793noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-7071572273177614122015-10-14T13:49:37.279-07:002015-10-14T13:49:37.279-07:00Hello, I am having an issue w Approval Monitor as...Hello, I am having an issue w Approval Monitor as well. I hope it is a pretty easy fix I am just over looking.<br /><br />I set up my process id in Monitor Configuration.<br />If I go to User Monitor I can see the set up process id when i search w the magnifying glass.<br />However, if i go to MOnitor Approval I do not see it. <br />Yes, my user id is linked to the appropriate Role I set up in Monitor Configuration.<br /><br />This set up is on the client side. I set it up the same way in a Demo environment from my company and it worked ok. So there is a setting somewhere that I am missing...<br /><br />Any assistance is appreciated!!Sarah Dhttps://www.blogger.com/profile/11478703340760522793noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-38505338484745190802015-05-07T22:26:25.504-07:002015-05-07T22:26:25.504-07:00@Ankit, AWE uses URL definitions to determine the ...@Ankit, AWE uses URL definitions to determine the portal URL. Make sure you set values for the appropriate URL definitions.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-10827434472082439252015-05-07T21:54:44.173-07:002015-05-07T21:54:44.173-07:00I am trying to run the delivered Voucher Mass App...I am trying to run the delivered Voucher Mass Approve VCHR_APRV_WF. The AE is wriiten in such a way that if there are no Vouchers in "Pending for Approval Status", the process will check if there are any vouchers to be submitted "Submit for Approval"(calls the DoSubmit()Section :- VCHRAFAP.Step01). In my case there are no Vouchers to be approved so the process goes to the section (VCHRAFAP.Step01) which calls DoSubmit().<br />I got the below error while running this process<br /><br />"Message not found - 18081, 5703, URL not set (18081,5703) EOAW_UTILITIES.Portal.portalURL.OnExecute Name:getServletURL_ PCPC:5012 Statement:68 Called from:EOAW_UTILITIES.Portal.portalURL.OnExecute Name:GenerateComponentPortalURL Statement:40 Called from:EOAW_CORE.DEFN.AWTxn.OnExecute Name:GetNotifyURLOverride Statement:350 Called from:EOAW_CORE.NOTIFICATION.InlineStrategy.OnExecute Name:ProcessNotifications Statement:67 Called from:EOAW_CORE.NotificationEventHandler.OnExecute Name:ProcessNotif"Ankithttps://www.blogger.com/profile/17143743862235576191noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-81834346730424887102015-03-13T15:18:26.078-07:002015-03-13T15:18:26.078-07:00@Praveen, great question. I have not looked into t...@Praveen, great question. I have not looked into that use case.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-56188999502378155032015-03-13T14:37:57.895-07:002015-03-13T14:37:57.895-07:00Hi Jim
I would like to know whether we can do mas...Hi Jim<br /><br />I would like to know whether we can do mass re-assignments? I am only a beginner in AWE having implemented few custom AWE frameworks and my question would be, is it possible to run a batch process to perform mass re-assignments?<br /><br />Thanks<br />PraveenRampihttps://www.blogger.com/profile/16716567364313532003noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-36525743149596465082014-12-12T17:14:48.307-08:002014-12-12T17:14:48.307-08:00@Ken, thanks for sharing.@Ken, thanks for sharing.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-58698177197960811602014-12-12T10:07:34.177-08:002014-12-12T10:07:34.177-08:00Just passing along similar code for approving repo...Just passing along similar code for approving reported time within HCM. I first attempted to use the "&ApprMgr.DoApprove(&HdrRec);" method to approve the entire batch of reported time. That ran without any error, but did not seem to accomplish anything. In other words, the time was still stuck in 'Needs Approval' status and the AWE rows were all in 'Pending'. Had no luck debugging that, so switched to the following method using the line level approval. Seems to work fine.<br /><br />It seem like PeopleSoft might provide a PeopleBooks section (similar to the API guide) for their App Package methods and properties. Maybe I'm missing it, but I usually find taking advantage of the wealth of App Classes already out there involves too much trial and error. If they were documented a bit, they'd be much more useful.<br /><br />At any rate, this blog was a big help along the way ... so thanks for everyone's notes. And of course, thanks to Jim!<br /><br />Regards,<br />Ken<br /><br />&AprvFactory = create HMAF_AWE:ApprovalsFactory();<br /><br />REM Create and format header record;<br />&HdrRec = CreateRecord(Record.TL_APP_HDR);<br />&HdrRec.TRANSACTIONID.Value = TL_APP_AET.TRANSACTIONID.Value;<br />&HdrRec.EOAWDEFN_ID.Value = TL_APP_AET.EOAWDEFN_ID.Value;<br />&HdrRec.EMPLID.Value = TL_APP_AET.EMPLID.Value;<br />&HdrRec.EMPL_RCD.Value = TL_APP_AET.EMPL_RCD.Value;<br />&HdrRec.PUNCH_TYPE.Value = TL_APP_AET.PUNCH_TYPE.Value;<br /><br />&kcApprMgr = &AprvFactory.getApprovalManager("TLReportedTime", &HdrRec, &sOprID);<br /><br />/* Fill a Rowset with the Line data for this Transaction */<br />&rsLine = CreateRowset(Record.TL_APP_RPT_LINE);<br />&rsLine.Fill("where EMPLID =:1 and EMPL_RCD =:2 and PUNCH_TYPE =:3 and TRANSACTIONID =:4", &HdrRec.EMPLID.Value, &HdrRec.EMPL_RCD.Value, &HdrRec.PUNCH_TYPE.Value, &HdrRec.TRANSACTIONID.Value);<br /><br />/* Execute the 'DoApproveRowset' Delivered Method */<br />/* This sets the Reported Time to Approved (along with all the related AWE tables */<br />&kcApprMgr.DoApproveRowSet(&rsLine);Ken Kaspersenhttps://www.blogger.com/profile/15801866453786206858noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-46099640058986099552014-06-16T10:31:10.240-07:002014-06-16T10:31:10.240-07:00@BlackSheep. That is great, thank you for sharing....@BlackSheep. That is great, thank you for sharing.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-42221445608846415542014-06-16T05:03:23.411-07:002014-06-16T05:03:23.411-07:00Hi Jim,
The code you had given seems to invoke si...Hi Jim,<br /><br />The code you had given seems to invoke single approval in a loop.<br /><br />I came across some code which does not use "EOAW_CORE:ApprovalManager" but uses "EOAW_MASS_APPROVALS:CLIENT:MassApprovalsClient" to carry out mass approval. <br /><br />Internally it gets invoked by the service operation "EOAW_APPROVALS" which is of operation type "Asynchronous - One Way".<br /><br />Can you please comment on the same?<br /><br />Local EOAW_MASS_APPROVALS:CLIENT:MassApprovalsClient &MassApprovalsClient;<br /><br />&MassApprovalsClient = create EOAW_MASS_APPROVALS:CLIENT:MassApprovalsClient( True, True);<br /><br />For &i = 1 To &levelTFX.ActiveRowCount<br /> If &levelTFX.GetRow(&i).SUP_OB_APR_WRK.SELECT_PB.Value = "Y" Then<br /> SQLExec("SELECT EOAWDEFN_ID, EOAWPRCS_ID, EOAWTHREAD_ID, EOAWPARENT_THREAD FROM PS_TFX_AW_ACTN_VW WHERE TFX_ID = :1 AND EOAWSTEP_STATUS IN ('P')", &TfxId, &temp_eoawdefn_id, &temp_awprcs_id, &temp_awthread_id, &temp_parent_thread);<br /> &return_code = &MassApprovalsClient.AddApproval(&temp_eoawdefn_id, &temp_awprcs_id, &temp_awthread_id, &temp_parent_thread, %OperatorId, "A", &Comments);<br /> End-If;<br />End-For;<br /><br />&MassApprovalsClient.Submit();<br /><br />Thanks,<br />BlackSheepBlackSheephttps://www.blogger.com/profile/00236707788054402374noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-25428603015106343622014-05-01T09:25:36.404-07:002014-05-01T09:25:36.404-07:00@Mahesh,
Yes, you can perform mass approvals. I a...@Mahesh,<br /><br />Yes, you can perform mass approvals. I am not sure if there is anything delivered, but you can write something using the EOAW App Classes.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-56320530870799885892014-04-30T14:04:16.783-07:002014-04-30T14:04:16.783-07:00Hi Jim
I have question on AF. Not sure if there is...Hi Jim<br />I have question on AF. Not sure if there is any other way I can send you the query. <br />In PeopleSoft FCSM 9.1,Is there any way where user can submit multiple Journals for approval in one go. Currently user has to go to individual journal & click on ‘Submit’ button to trigger approval. <br />Thanks in advance<br />Mahesh<br />Anonymoushttps://www.blogger.com/profile/06933049206597191123noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-44803011785752225412014-01-27T22:20:02.251-08:002014-01-27T22:20:02.251-08:00@weilies, I am at a loss. I assume there is a deli...@weilies, I am at a loss. I assume there is a delivered page where you would normally perform the approval? I suggest you open that page/component and search for the PeopleCode that performs the approval. It might be easier to just turn on a PeopleCode trace, perform the approval, and then search the trace file, since you know you will be looking for ApprovalManager, etc. The approval on the component should use code that is very similar to what you are coding. Hopefully this will point out any discrepancies.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-50055164895502977642014-01-27T22:15:23.830-08:002014-01-27T22:15:23.830-08:00@Jim, thanks for the prompt reply.
approach A:
1....@Jim, thanks for the prompt reply.<br /><br />approach A:<br />1. changed the code to<br />&apprManager = create EOAW_CORE:ApprovalManager(&processId, &headerRec, %OperatorId);<br />2. Login as KL0006<br />3. Click a FieldChanged Event to trigger codes above<br /><br />approach B:<br />1. changed the code to<br />&apprManager = create EOAW_CORE:ApprovalManager(&processId, &headerRec, "KL0006");<br />2. Login as KL0006<br />3. Click a FieldChanged Event to trigger codes above<br /><br /><br />both produced same result as below:<br />http://s28.postimg.org/t9jl49qt7/KL0006.jpgweilieshttps://www.blogger.com/profile/18314369112706526564noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-88291631484297818512014-01-27T22:02:03.399-08:002014-01-27T22:02:03.399-08:00@Weilies, everything you typed there looks good. I...@Weilies, everything you typed there looks good. If the Process ID is spelled correctly, then it should work. The only thing I can think of is possibly some new security check within AWE to verify the OPRID? The OPRID parameter was actually there so you could pass alternate OPRID's, but who knows if something changed? Did you try running it as user KL0006? It should make no difference, but just curious.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-25956083341465460852014-01-27T18:49:12.296-08:002014-01-27T18:49:12.296-08:00Here is the monitor approval detail
http://s27.pos...Here is the monitor approval detail<br />http://s27.postimg.org/gm55qce7l/monitor_approval_detail.jpg<br /><br />Abs requestor: SG00013<br />Next approval: KL0006<br />if i were to approve via monitor approval component then it will not have any issue.<br /><br /><br />But if i am going to use following code (hardcoded %operatorId to approval)<br />==================================<br />import EOAW_CORE:ApprovalManager;<br />Local Record &headerRec = CreateRecord(Record.GP_ABS_SS_DAT);<br />Local EOAW_CORE:ApprovalManager &apprManager;<br />Local string &processId = "HF_Absence_Mgmt";<br /><br /><br />REM ** Populate approval header record keys here;<br />&headerRec.GetField(Field.TRANSACTION_NBR).Value = "1021";<br />&headerRec.GetField(Field.EMPLID).Value = "SG00013";<br />&headerRec.GetField(Field.EMPL_RCD).Value = "0";<br />&headerRec.GetField(Field.BGN_DT).Value = Date3(2014, 1, 10);<br />&headerRec.GetField(Field.PIN_TAKE_NUM).Value = "250935";<br />&headerRec.GetField(Field.END_DT).Value = Date3(2014, 1, 10);<br /><br />&headerRec.SelectByKey();<br />&apprManager = create EOAW_CORE:ApprovalManager(&processId, &headerRec, "KL0006");<br /><br />If (&apprManager.hasAppInst) Then<br /> MessageBox(0, "x", 0, 0, "Success and approved");<br /> &apprManager.DoApprove(&headerRec);<br />Else<br /> REM ** throw error;<br /> MessageBox(0, "x", 0, 0, "Error... missing App Instance");<br />End-If;<br />==================================<br />And i execute it in FieldChange, it always prompt out <br /> "Error... missing App Instance"<br /><br />based on the search keys provided, i am not sure what's still missing and causing the API not able to instantiate.weilieshttps://www.blogger.com/profile/18314369112706526564noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-20910581093132836002014-01-23T19:07:18.540-08:002014-01-23T19:07:18.540-08:00@Weilies, exactly. That is where it would fail. Ar...@Weilies, exactly. That is where it would fail. Are you using the OPRID that has an instance? You don't have to be logged in as the user. You just have to pass in the correct OPRID to find the instance. Otherwise, it won't find an instance.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-57835187884215244462014-01-23T17:26:29.491-08:002014-01-23T17:26:29.491-08:00The error comes from
"If (&apprManager.h...The error comes from <br />"If (&apprManager.hasAppInst) Then"<br /><br />it couldn't find any app instance.<br />Here is the setup for AWE http://s22.postimg.org/cyeuochmn/awe.png<br /><br />with the code mentioned above, i wonder what's still missing.<br /><br />Thanks for the pointer.weilieshttps://www.blogger.com/profile/18314369112706526564noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-7088886934100804582014-01-23T10:54:00.449-08:002014-01-23T10:54:00.449-08:00@Weilies, the OPRID you pass into the ApprovalMana...@Weilies, the OPRID you pass into the ApprovalManager does NOT need to be the logged in user. It does, however, have to be the OPRID of the current owner of the approval instance. If the schedule user is the one responsible for the current step, then yes, %OperatorID will work.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-83643238569117053752014-01-20T16:03:59.877-08:002014-01-20T16:03:59.877-08:00Hi Jim, i would like to create a scheduled AE to p...Hi Jim, i would like to create a scheduled AE to perform the mass approval process. so the %oprid could be the scheduled user i suppose?weilieshttps://www.blogger.com/profile/18314369112706526564noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-89575834811617519732014-01-17T08:50:09.144-08:002014-01-17T08:50:09.144-08:00@weilies, instances are OPRID specific. Did the us...@weilies, instances are OPRID specific. Did the user executing this code have instances?Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-83830307607097111002014-01-16T23:39:37.254-08:002014-01-16T23:39:37.254-08:00I try to create a mass approve absence during a fi...I try to create a mass approve absence during a fieldChange (button click)<br /><br />here is my code<br />====================================<br /><br />import EOAW_CORE:ApprovalManager;<br /><br />Local Record &headerRec = CreateRecord(Record.GP_ABS_SS_DAT);<br />Local EOAW_CORE:ApprovalManager &apprManager;<br />Local string &processId = "HF_Absence_Mgmt";<br /><br /><br /><br />REM ** Populate approval header record keys here;<br />&headerRec.GetField(Field.TRANSACTION_NBR).Value = "1021";<br />&headerRec.GetField(Field.EMPLID).Value = "SG00013";<br />&headerRec.GetField(Field.EMPL_RCD).Value = "0";<br />&headerRec.GetField(Field.BGN_DT).Value = Date3(2014, 1, 10);<br />&headerRec.GetField(Field.PIN_TAKE_NUM).Value = "250935";<br />&headerRec.GetField(Field.END_DT).Value = Date3(2014, 1, 10);<br /><br />&headerRec.SelectByKey();<br />&apprManager = create EOAW_CORE:ApprovalManager(&processId, &headerRec, %OperatorId);<br /><br />If (&apprManager.hasAppInst) Then<br /> MessageBox(0, "x", 0, 0, "Success and approved");<br /> &apprManager.DoApprove(&headerRec);<br />Else<br /> REM ** throw error;<br /> MessageBox(0, "x", 0, 0, "Error... missing App Instance");<br />End-If;<br /><br /><br />===================================<br /><br />It's a delivered workflow header record so i didn't create any additional configurations.<br /><br /><br />System keep prompt me "Error... missing App Instance (0,0)"<br />But i have no idea what are the missing code line<br /><br />Thanks for the pointersweilieshttps://www.blogger.com/profile/18314369112706526564noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-47211145230543298202013-05-06T08:23:43.706-07:002013-05-06T08:23:43.706-07:00@Raj, I am glad you were able to successfully impl...@Raj, I am glad you were able to successfully implement header level approvals. Yes, line level is possible, but I haven't worked with it.Jim Marionhttps://www.blogger.com/profile/12995110203807924786noreply@blogger.comtag:blogger.com,1999:blog-34020393.post-16796121668904756702013-05-06T08:22:15.082-07:002013-05-06T08:22:15.082-07:00Hi Jim,
thanks for your code Mass approval...
I...Hi Jim,<br /><br />thanks for your code Mass approval...<br /><br /><br />I have tried it and working fine for mass approval header level.<br /><br />Is there any code or delivered application package to approve line level like the same?<br /><br />Regards<br />RajendranRaj_Indiranhttps://www.blogger.com/profile/11059691737555550900noreply@blogger.com