Skip to main content
mollyn6512
October 31, 2022
Question

Index from scriptask output

  • October 31, 2022
  • 11 replies
  • 0 views

Hi everyone, 

I have a scriptask which create an output of type text by running an expression rule, which looks like below: 

I save this output into a process parameter, then plan to use it for the sub-process. 

 If I want to take the updatedRelationship of the current process instance, what the script should be like? 

I tried below code but the data does not pass into sub-process... do I need tp!instanceIndex for the process to know what data to pass into its subprocess?

index(pv!scriptaskOutcome,"updatedRelationships",tp!instanceIndex, null)

Thank you!

    11 replies

    gopalk2865
    Participating Frequently
    October 31, 2022

    Hi, are you using MNI on subprocess? if not then you dont need to use tp!instanceIndex. Just index into correct output from the process variable.

    mollyn6512
    October 31, 2022

    I just checked, seems like tp!instanceIndex is needed... I'm I right? 

     

    peter.lewis
    Employee
    October 31, 2022

    In this case you aren't using the option for "Automatically run multiple instances of this node", so the tp!instanceIndex variable won't have a value.

    It's still unclear to me what you are trying to do - are you trying to create a different sub-process for each item in your list of "updatedRelationships"? If so, then you need to check that box above and then tp!instanceIndex will work. If you're not doing that, are you trying to pass a certain index (e.g. the first item)? If so, you can just hardcode 1 into your index() function above. Or another option is you can just pass the entire list into the sub-process and use it there however you need to.

    November 1, 2022

    Hi Mollyn,

    I see you you are providing 4 values inside index function - index(pv!scriptaskOutcome,"updatedRelationships",tp!instanceIndex, null). it may be causing your issue. try update your index function it may solve your problem. I would suggest debug this issue first by passing the entire list to your sub process without running MNI and see if the values are coming to sub process or not.

    ex: index(pv!scriptaskOutcome,"updatedRelationships", null)

    dimitriss5700
    November 1, 2022

    The problem is that he has not configured the subprocess node to run as an MNI and at the same time he is using the tp!instanceIndex variable. The expression index(pv!scriptaskOutcome,"updatedRelationships",tp!instanceIndex, null) will work fine if he makes the MNI config. 

     

    mollyn6512
    November 2, 2022

    Thanks for the detailed explaination Dimitris. I did configure the MNI and paste below code into the Run as many box

    However the sub process still wasn't able to receive any value. I guess it's the issue with the sciptask outcome data type or the index() thing.