Request for Feedback: Looping and Nested Triggers

hello all!!

do you use looping in your Apps?? would you like to have the option to nest Triggers?? if so, we’d love to see how you’re using them and what you’re trying to achieve!!

we’re always looking for ways to improve the workflow within Tulip, and as such we’re looking for examples of how you build and use more complex Triggers that require looping/nesting. if you could share a brief description along with a screenshot of the Trigger, our Product team can use it as research to improve your workflows.

thanks in advance for your help, we’re looking forward to seeing your posts!!

1 Like

Hey Gio,

I’ve used loops quite a bit, and have optimized some of them using connectors, but in general I’m forced to use a loop in one of the following scenarios, but usually multiple all at once:

  • I need to create/reference an arbitrary number of records
  • I need to pull data from multiple tables and use that to create a new record / string / etc.
  • I need a nested if/then operation

The three loops I have in my app right now are a bit too complicated to quickly explain, but I can try and distill their essential elements next week. I would also be happy to walk the product team through what I’m doing for 30 minutes as well.

Just my two cents but I think if loops and nested if/then statements or triggers are implemented it would be nearly essential to have commenting abilities within Tulip. Both in the literal sense of making comments to explain what’s going on, but also “commenting out” lines of code. It’s pretty hard to keep track of everything right now when building up a loop.

One other note is that 2 out of my 3 loops I have to restrict the user input so I don’t hit the 100 trigger limit. In some cases the 100 trigger limit is useful because the computation time just gets too long, but in other cases its just an inconvenience.

Hi Gio, I have shared a few times but here are some examples (at the moment I’m using loops for each):
Mass update of records :
• The ability to update all records from a query would work for me. Ex : One sample arrived at the lab then change all status of tests related/linked to this sample.
Mass creation of records :
• Create a number of records with random ID. Ex : For planning purpose the user is selecting a list of tests to be planned. Then I want to create a record for each planned test for tracking purpose.
• Create a number of records with sequential ID. Ex : I’m receiving a material with 100 containers of fixed quantity. I’m creating an unique ID for this material and then I want to create 100 records with sequential ID : one for each container.

Agree with Ethan on the 100 limit ( https://community.tulip.co/t/increase-limit-triggers-loop/2482)

Hi @Ethan - Thanks for the feedback! We’d be happy to talk more about it, feel free to schedule a call here.

Hi @pte, thanks for the feedback as well. The same offer applies if you would like to talk more about it. Just schedule a call here if you are interested.

Hello Gio,

We are using number of times the loop :

  • Sort a List/Array based on criteria
  • Find Element (or list/array) in an Array
  • Function reprocessing
  • Mass Data Upgrade (functions, Records …)

We overcome the limit of 100 by using trigger on timer and trigger with switching two steps.

Currently on your side it will be very hepfull if the loop capability can be more “embedeed” in Tulip as standard function

2 Likes

Amazing news!!!

We are using loops for several different things currently.

  1. Looping through line items on a delivery. We would need to be able to loop through a return from an SAP connector in order to return data in an array. This would also need to allow us to conditionally return data from this array.

  2. Honestly any trigger that needs to be executed multiple times could be argued for this as a use case. We have several apps where this is the case.

  • We will need to be able to break/continue conditionally, have a variable number of iterations, be able to increment the loop by a variable amount, perform a for, while, or do while, nested loops. The loop iterator should be able to be referenced inside the loop to operate on arrays.
    i.e.(for(i=0;i<x;i++){
    if(array[i] == variable){
    ///code
    }}
1 Like

hello @mathieu.rey & @joey.wheeler, thanks for providing this feedback!! it’s always interesting to read how you’re building solutions with the where the product currently stands.

would you be open to continuing the conversation and providing feedback to @pete from the Product Management team?? if so, feel free to schedule a meeting at a time that works for you here: Calendly - Peter Neylan.

thanks again!!