Forum Discussion

adam_gataev's avatar
adam_gataev
New Contributor II
3 months ago
Solved

How can I pop the last element from one array and append it to another?

Hello,

I’m working with this JSON structure:

[
  {
    "field_a": "string",
    "entries": [{}, {}, {}],
    "shared": []
  }
]

I need to remove only the last object from the entries array and append it to the shared array, leaving the other entries intact. What’s the most straightforward way to accomplish this?

Thank you for your help.

Kind regards,
Adam

2 Replies

  • Welcome @ausman - you are correct that you cannot “save” a value back to pipeline parameters, but there are a some easy ways to do what you are looking to do.

    One simple method is to have a main pipeline that reads from the SQS queue then calls a child pipeline to do the work on that file. Then the main pipeline can use the $original object value that returns from the Pipeline Execute snap to get the object that was originally passed into the child pipeline.

    Another way (which in my opinion is a little more cumbersome) is to use the Copy snap after the SQS read and a Join snap using the Merge merge type after you have completed the work on the file so you can re-use that original value that was returned from the SQS queue.

    I’m sure some other clever folks could give you other ways to solve the same issue, but these are pretty simple to understand and implement.

    Hope this helps!