This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
bw2:looping_tool [2021/02/09 10:52] akoehler |
bw2:looping_tool [2024/09/24 15:39] (current) dlee [Loop Variables] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Introduction (Looping Tool) ====== | ||
| - | This page describes the use of the “looping” tool in Bizweaver. | + | ====== |
| - | + | ||
| - | ====== | + | |
| The Bizweaver “looping” tool is used to process a series of objects in succession while optionally performing other actions on each object. Typical use cases include: | The Bizweaver “looping” tool is used to process a series of objects in succession while optionally performing other actions on each object. Typical use cases include: | ||
| - | * Processing a set of records generated from an SQL Command: Reader | + | * Processing a set of records generated from a SQL Query |
| * Processing multiple input files in one workflow cycle | * Processing multiple input files in one workflow cycle | ||
| - | * Processing records from a File Reader | + | * Processing records from a File Reader |
| - | * Processing records from an SQL Command: Reader step into a File Writer: Custom String step | + | |
| The logic of the looping process is straightforward. | The logic of the looping process is straightforward. | ||
| Line 22: | Line 19: | ||
| <WRAP center round important> | <WRAP center round important> | ||
| - | **In the following examples, the name of the Loop and LoopEnd are similar. However, the names of the looping steps are used only to assist the developer. The only requirements are that for each “Loop” step, there must be a corresponding “LoopEnd” step and that the step name is unique.** | + | **In the following examples, the name of the Loop and LoopEnd are similar, however, the names of the looping steps are used only to assist the developer. The only requirements are that for each “Loop” step, there must be a corresponding “LoopEnd” step and that the step name is unique.** |
| </ | </ | ||
| Line 43: | Line 40: | ||
| <WRAP center round info> | <WRAP center round info> | ||
| - | In this example, the list is created for a single value. The details needed for processing are then retrieved for each record inside the loop. Another approach is to get all the information needed in the first SQL step. The second SQL step inside the loop is then not required since all the information is available. There are no specific rules about which approach to use. **However**, | + | In this example, the list is created for a single value. The details needed for processing are then retrieved for each record inside the loop. Another approach is to get all the information needed in the first SQL step. The second SQL step inside the loop is then not required since all the information is available. There are no specific rules about which approach to use. **However**, |
| </ | </ | ||
| Line 81: | Line 78: | ||
| </ | </ | ||
| - | + | In this example, we want to drop out of the loop when records are no longer available for processing. The difference here is that we are checking for valid records in blocks of 50 records. | |
| - | The following example workflow illustrates how conditional looping works. This example is for demonstration purposes but can serve as a foundation to understand the concept. | + | |
| - | + | ||
| - | In this example, we want to drop out of the loop when records are no longer available for processing. The difference here is that we are checking for valid records in blocks of 50 records. Again, this for illustration only. | + | |
| {{ : | {{ : | ||
| Line 94: | Line 88: | ||
| - The two variables established at the beginning of the workflow are updated. \\ {{ : | - The two variables established at the beginning of the workflow are updated. \\ {{ : | ||
| - At this point, the difference between a “Linked Object” loop and a “Conditional Expression” loop comes into play. In a “Linked Object” loop, the process would check to see if another single record exists for processing. In this “Conditional Expression” loop, the process instead checks the value of the “RecsRemain” variable. The determination to continue looping is made based on this value. Once the “RecsRemain” variable value changes to 0, the loop ends. | - At this point, the difference between a “Linked Object” loop and a “Conditional Expression” loop comes into play. In a “Linked Object” loop, the process would check to see if another single record exists for processing. In this “Conditional Expression” loop, the process instead checks the value of the “RecsRemain” variable. The determination to continue looping is made based on this value. Once the “RecsRemain” variable value changes to 0, the loop ends. | ||
| + | |||
| + | ====== Loop Variables ====== | ||
| + | |||
| + | ^ Name ^ Description | ||
| + | | StepMessage | ||
| + | | StepStatus | ||
| + | |||
| + | ---- | ||
| + | **[[bizweaver: | ||