Vystup z vetve plati i za podminkou, samostatny krok Zalozit kontakt

Bezny postup nesel poskladat z kroku: najdi podle ICO, kdyz neni zkus mail,
kdyz porad neni zaloz - ID dava jednou jedna vetev a jednou druha, ale
rozsah vystupy z vetvi za podminku nepoustel. Slucovat kvuli tomu hledani
a zakladani do jednoho kroku bylo obejiti nasi chyby, ne reseni.

- Vystup z vetve je za podminkou k dispozici, jen jako nepovinny. Ze muze
  chybet, se neztratilo: builder to u pole ukaze a pri behu se dosadi
  prazdno.
- Vystup se stejnym jmenem uz z nabidky nemaze ten starsi. Po druhem
  hledani kontaktu zmizelo ID z prvniho, tedy to, co je v tu chvili
  potreba. Odkaz se jmenem kroku je jednoznacny.
- Duplicitni jmena u vystupu kroku uz nejsou nedodelek. Konflikt zustava
  mezi parametry spoustece, kde zadny prefix neni.
- Novy krok Zalozit kontakt. Nic nedohledava, hledani je vlastni krok.
  Najit nebo zalozit zustava pro toho, komu staci jistota jednim krokem.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
JiriUhlir
2026-08-20 09:01:57 +02:00
co-authored by Claude Opus 5
parent c62902bfb6
commit 6297bbf480
6 changed files with 249 additions and 41 deletions
+31
View File
@@ -2,6 +2,37 @@
Nejnovejsi nahore.
## 2026-08-20 - vystup z vetve plati i za podminkou
Pri stavbe cesty "objednavka -> faktura" vyslo najevo, ze se bezny postup neda
poskladat z kroku: **najdi zakaznika podle ICO, kdyz neni, zkus e-mail, kdyz
porad neni, zaloz ho** konci tim, ze ID odberatele dava jednou jedna vetev
a jednou druha. Rozsah ale vystupy z vetvi za podminku nepoustel, takze se dal
pouzit jen tak, ze se hledani a zakladani sloucilo do jednoho kroku.
To bylo obejiti nasi vlastni chyby, ne reseni.
### Zmeneno
- **Vystup z vetve je za podminkou k dispozici**, jen jako nepovinny
(`required: false`). Ze hodnota muze chybet, se neztratilo - builder to u pole
ukaze a pri behu se dosadi prazdno, stejne jako u ceho jineho, co neprislo.
- **Vystup se stejnym jmenem uz z nabidky nemaze ten starsi.** Po druhem hledani
kontaktu zmizelo ID z toho prvniho, tedy presne to, co je v tu chvili potreba.
Odkaz se jmenem kroku (`{{st_ico.contactId}}`) je jednoznacny, duvod k mazani
neni. Hole jmeno (`{{contactId}}`) porad znamena ten posledni.
- **Duplicitni jmena u vystupu kroku uz nejsou nedodelek.** Dva kroky, ktere
vraci `contactId`, jsou bezna vec. Konflikt zustava tam, kde opravdu je:
mezi parametry spoustece, kde zadny prefix neni.
### Pridano
- **Krok Zalozit kontakt** (`idoklad.create-contact`). Nic nedohledava - kdyz uz
kontakt existuje, vznikne druhy, a to je spravne chovani teto operace. Hledani
je vlastni krok, takze si strom sam rekne, kdy hledat a kdy zakladat.
- `idoklad.upsert-contact` (Najit nebo zalozit) zustava pro toho, komu staci
"chci mit jistotu, ze tam je". Obojí ma smysl, ani jedno nenahrazuje druhe.
## 2026-08-20 - vlastni skripty firmy: prevod dat v JS
Klikaci pravidla jsou u peti poli rychlejsi, ale u modelu objednavky je jich