bytechef icon indicating copy to clipboard operation
bytechef copied to clipboard

[bug] Issue with updating values inside loop task dispatcher

Open ivicac opened this issue 1 year ago • 0 comments

U primjeru imamo 5 izvođenja akcije var/v1/set (1 prije petlje, 4 unutar)

Outputi su: 0 1 1 1 1

Po outputu taska izgleda da je izraz prošao ok, tj da je dodjeljena nova vrijednost varijabli.

Ali u idućoj iteraciji svejedno opet 0. Čak i u istoj iteraciji u koracima iza ovog, i tu je 0:

Ex 1) sum = 0 loop sum = sum + 1 print(sum) --> tu uvijek ispisuje 0

Ex 2) sum = 0 loop sum = sum + 1 sum2 = sum + 1 print(sum2) --> tu uvijek ispisuje 1

Ex 3) sum = 0 sum = sum +1 loop sum = sum + 1 print(sum) --> tu uvijek ispisuje 1

Iz ovog trećeg se vidi da update varijable sam po sebi funkcionira.

A onda iz prva dva nemamo šta zaključiti nego da su svi ti izrazi (tj vrijednost ove varijable u njima) bili izevaluirani ili prije nego se uopće krenulo u petlju, ili možda kasnije ali s tim inicijalnim kontekstom.

Primjer workflow-a:

{
    "description": "",
    "inputs": [],
    "label": "Issue2",
    "tasks": [
        {
            "name": "theSum",
            "type": "var/v1/set",
            "parameters": {
                "type": 5,
                "value": 0
            }
        },
        {
            "label": "Loop",
            "name": "csvEntries",
            "parameters": {
                "iteratee": [
                    {
                        "name": "theSum",
                        "type": "var/v1/set",
                        "parameters": {
                            "type": 5,
                            "value": "${theSum+1}"
                        }
                    }
                ],
                "items": ["jen", "dva", "tri", "i"]
            },
            "type": "loop/v1"
        }
    ],
    "triggers": [
    ]
}

ivicac avatar May 15 '24 13:05 ivicac