Clarity

  • 1.  How can I use ActionItemApprovals xog ?

    Posted Jan 24, 2017 03:31 PM

    Hello all,


    I saw CA PPM has ActionItemApprovals api.
    But I have not been able to figure out how I can use ReadActionItemApproval and WriteActionItemApproval.
    Someone has one documentation about it or examples ?

     

    Thanks.



  • 2.  Re: How can I use ActionItemApprovals xog ?
    Best Answer

    Posted Jan 25, 2017 05:30 AM

    I do not think CA provided any other information apart from WSDL.

    Action Items Approval API behaves as below. Based on my observation, the results in OUTPUT XML depend on the user session used for XOG. In case of read, only those open action items are fetched which are assigned to the user who is XOGing. Similarly, for write, only the action items assigned to XOGing user can be updated.

     

     

    Read:

    <NikuDataBus>
         <Header action="read" externalSource="NIKU" objectType="actionItemApproval" version="12.0"/>
    </NikuDataBus>

     

    Write: Once you read using above XML, you will be able to frame write XMl as below.

    <NikuDataBus>
       <Header action="write" externalSource="NIKU" objectType="actionItemApproval" version="12.0"/>
       <actionItemApprovals>
          <actionItemApproval actionItemDbId="<!-- pass values -->" assigneeDbId="<!-- pass values -->"

                processDbId="<!-- pass values -->" status="<!-- pass values -->" />
       </actionItemApprovals>
    </NikuDataBus>



  • 3.  Re: How can I use ActionItemApprovals xog ?

    Posted Jan 25, 2017 01:03 PM

    sridhar_bandaru

    Thank you! Works fine!



  • 4.  Re: How can I use ActionItemApprovals xog ?

    Posted Mar 16, 2018 08:02 AM

    Hi sridhar_bandaru,

     

    Very nice post, however I was not able to achieve results I expected. If you would check what's missing there, I'd be very happy.

     

    So, firstly I select Action Item which need to be updated. based on my own query (second AI should be Auto-Approved by that XOG). Note: That first AI which was Approved in GUI before to initiate the "Update AI action" step which we're checking.

     

    Then in PM Approval process, custom GEL process step, I build XOG write based on results from query:

    Note: When performed XOG read, I got no results...so that param processDbId, in XOG write I got as process instance ID from DB - hope it's right ID.

     

    XOG write was successfull (I've tried it also through xog.client Clarity GUI, , it's the same - nothing changed), however Action Item remained opened. Do you know why?

     

    This AI with ID 6187057 should be Approved after that XOG....

     

    Note: Or maybe it would help to idetify which of following params

    <actionItemApproval actionItemDbId="<!-- pass values -->" assigneeDbId="<!-- pass values -->"

                processDbId="<!-- pass values -->" status="<!-- pass values -->" />

    represents their IDs in which DB tables...

     

    Thanks a lot!

    Matej



  • 5.  Re: How can I use ActionItemApprovals xog ?

    Posted Mar 16, 2018 08:22 AM

    I hope the XOG session you are using is that of the user to which the action item is assigned and not any other user's(not even admin). Can you confirm that?



  • 6.  Re: How can I use ActionItemApprovals xog ?

    Posted Mar 16, 2018 08:48 AM

    User who Submitted Timesheet, so in fact initiated that TS Approval process is a common user to whom TS belongs to.
    Action Items are assigned to 6 different users as you can see from last screenshot.

    I'm logged in as admin of course but it shouldn't influence the process XOG, isn't it?

    How this all staff should be setup to work this XOG then?

     

    Thanks



  • 7.  Re: How can I use ActionItemApprovals xog ?

    Posted Mar 16, 2018 08:59 AM

    As I have mentioned in my original post, the XOG that you use for action item approval api only works when the session being used is of the user to whom the action item is assigned.

    Below is how the values for XOG can be derived. You can find the same in the XOG read response as well.

     

    actionItemDbId - cal_action_items.id
    assigneeDbId - cmn_sec_users.id
    processDbId - cal_action_items.process_handler_id
    status - any of the values from below query

    select cmn.lookup_code as code from
    cal_action_items items
    join bpm_run_step_action_results ai_results on ai_results.ai_id = items.id
    join bpm_def_step_ai_actions st_actions on st_actions.step_action_id = ai_results.step_action_id
    join cmn_lookups_v cmn on cmn.lookup_type = st_actions.status_type_code
    where cmn.language_code='en'
    and items.id=<pass actionItemDbId>
    and cmn.lookup_code = st_actions.status_code
    order by cmn.sort_order

     



  • 8.  Re: How can I use ActionItemApprovals xog ?

    Posted Mar 16, 2018 09:41 AM

    Hmm, then it will not work for me at all as I have a lot of PMs in many AI and need of course "global" AI approval, not just for one user...

     

    Nevertheless thanks for params setting. Maybe you also know also DB updates which needs to be done to set AI status to Approved? I've jus tried update "cal_action_item_assignees" table, column  "status_code", but with no luck in GUI. Thanks a lot.

    Matej