Shopify Flow-ko baldintzak
Baldintzek lan-fluxu batekin jarraitzen dute arau jakin batzuk betetzen direnean, esaterako, if-then enuntziatu baten hasieran. Baldintza bat ezartzean, irizpide bat aukeratzen duzu GraphQL Admin API elementuko eremuetatik (esaterako, product.title), operadore logiko bat (esaterako, equal to) eta konparatzeko balio bat (esaterako, Blue jeans). Lan-fluxu batek baldintza bat ebaluatzen duenean, Flow-k lan-fluxuan zehaztutako balioa zure dendarako itzulitako balioarekin alderatzen du eta, gero, emaitzak bistaratzen ditu lan-fluxuaren exekuzioan. Baldintzak zehazteko eskuragarri dauden eremuak eta balioak hobeto ulertzeko, lortu informazioa dendaren datuak aurreikusteari buruz.
Lortu informazio gehiago baldintzen oinarriak ulertzeari buruz.
Orri honetan
Flow-rekin erabiltzen diren datu-motak
Baldintza bat ezartzean, irizpide bat aukeratzen duzu Admin API elementuan eskuragarri dauden eremuetatik, eta Flow-k zure dendarako itzulitako balioarekin konparatzen du.
Flow-k datu-mota hauek onartzen ditu:
- Float: Float balioak zati hamartarra duten zenbakiak dira. Adibidez, 4,25.
- Integer: Integer balioak zati hamartarrik ez duten zenbaki osoak dira. Adibidez, 42.
- Data: daten balioak dataren zenbakizko irudikapenak dira. Adibidez, 01012021.
- Katea: kate-balioak testuak dira. Kate-balioak erabiltzen dituzten konparazioek ez dituzte maiuskulak eta minuskulak bereizten.
- Boolearra: balio boolearrak egiazkoak (true) edo faltsuak (false) dira.
- Enum: Enum balioak datu-multzoak dira, aldagai bat aurrez zehaztutako konstante multzo bat izatea ahalbidetzen dutenak.
Operadore logikoak
Eragile logikoek zehazten dute baldintza nola aplikatzen den. Baldintzek propietate sinpleak egiazta ditzakete, hala nola eskaera baten zenbateko osoa muga batetik gorakoa ote den, edo bezero batek marketina onartzen ote duen. Eragile logikoek propietate konplexuagoak ere egiazta ditzakete.
Eragileak eremu-mailako eragileak izan daitezke, hala nola berdina edo ezberdina, edo zerrenda-eragileak, hala nola hauetako bat gutxienez edo hauetako bat ere ez.
Eremu-mailako eragileak
Eremu-mailako eragileak 2 balio alderatzeko erabiltzen dira. Flow-k honako eragile hauek erabil ditzake:
| Eragilea | Deskribapena | Adibidea |
|---|---|---|
| Berdina | Balioak alderatzen ditu berdinak ote diren egiaztatzeko. |
order.currentTotalDiscountsSet.shopMoney.amount eremuaren balioa dendako datuetatik eskuratzen da eta bigarren balioarekin (50) alderatzen da.Eskaeraren deskontu osoak zehazki 50 badira, baldintza egia da. |
| Ezberdina | Balioak alderatzen ditu berdinak ez direla egiaztatzeko. |
order.currentTotalDiscountsSet.shopMoney.amount eremuaren balioa dendako datuetatik eskuratzen da eta bigarren balioarekin (50) alderatzen da.Eskaeraren deskontu osoak ez badira zehazki 50, baldintza egia da. |
| Handiagoa eta Handiagoa edo berdina | Balioak alderatzen ditu lehen balioa bigarrena baino handiagoa, edo handiagoa edo berdina ote den egiaztatzeko. |
order.currentTotalDiscountsSet.shopMoney.amount eremuaren balioa dendako datuetatik eskuratzen da eta bigarren balioarekin (50) alderatzen da.Eskaeraren deskontu osoen balioa 137 bada, baldintza egia da, 137 handiagoa baita 50 baino. |
| Txikiagoa eta Txikiagoa edo berdina | Balioak alderatzen ditu lehen balioa bigarrena baino txikiagoa, edo txikiagoa edo berdina ote den egiaztatzeko. |
order.currentTotalDiscountsSet.shopMoney.amount eremuaren balioa dendako datuetatik eskuratzen da eta bigarren balioarekin (50) alderatzen da.Eskaeraren deskontu osoen balioa 47 bada, baldintza egia da, 47 txikiagoa edo berdina baita 50 baino. |
| Hauetako bat gutxienez | Eremua emandako zerrendako edozein balioren berdina ote den egiaztatzen du. Balioak banaka sartu behar dira eta ondoren Sartu tekla sakatu behar da (etiketen antzera). Matrize huts batean erabiltzen bada, ebaluazio faltsua ematen du. |
order.lineitem.product.title eremuaren balioa hauekin alderatzen da: pineapple, guava, kiwi.Lerroko elementuaren produktuaren izena guava bada, baldintza egia da, "guava" zuk emandako zerrendan sartzen baita. |
| Hauetako bat ere ez | Eremua emandako zerrendako balioen berdina ez dela egiaztatzen du. |
order.lineitem.product.title eremuaren balioa hauekin alderatzen da: pineapple, guava, kiwi.Lerroko elementuaren produktuaren izena raspberry bada, baldintza egia da, "raspberry" ez baita sartzen zuk emandako zerrendan. |
| Barne hartzen du | Balioak alderatzen ditu lehen balioko sarrerak bigarren balioko datuak barne hartzen ote dituen egiaztatzeko. |
order.lineitem.product.title eremuaren balioa honekin alderatzen da: berry.Lerroko elementuaren produktuaren izena strawberry bada, baldintza egia da, "berry" hitza "strawberry" hitzean barne hartzen delako. |
| Ez du barne hartzen | Balioak alderatzen ditu lehen balioko sarrerak bigarren balioko datuak barne hartzen ez dituela egiaztatzeko. |
order.lineitem.product.title eremuaren balioa honekin alderatzen da: berry.Lerroko elementuaren produktuaren izena apple bada, baldintza egia da, "berry" ez delako barne hartzen "apple" hitzean. |
| Honekin hasten da | Balioak alderatzen ditu lehen balioa bigarren balioko datuekin hasten ote den egiaztatzeko. |
order.shippingAddress.country eremuaren balioa honekin alderatzen da: United.Eskaeraren bidalketa-helbidearen herrialdea United Kingdom bada, baldintza egia da, "United Kingdom" izena "United" hitzarekin hasten baita. |
| Ez da honekin hasten | Balioak alderatzen ditu lehen balioa bigarren balioko datuekin hasten ez ote den egiaztatzeko. |
order.shippingAddress.country eremuaren balioa honekin alderatzen da: United.Eskaeraren bidalketa-helbidearen herrialdea Canada bada, baldintza egia da, "Canada" ez baita "United" hitzarekin hasten. |
| Honekin amaitzen da | Balioak alderatzen ditu lehen balioa bigarren balioko datuekin amaitzen ote den egiaztatzeko. |
order.lineitems.product.title eremuaren balioa honekin alderatzen da: pie.Lerroko elementuaren produktuaren izena key lime pie bada, baldintza egia da, "key lime pie" izena "pie" hitzarekin amaitzen baita. |
| Ez da honekin amaitzen | Balioak alderatzen ditu lehen balioa bigarren balioko datuekin amaitzen ez ote den egiaztatzeko. |
order.lineitems.product.title eremuaren balioa honekin alderatzen da: pie.Lerroko elementuaren produktuaren izena chocolate cake bada, baldintza egia da, "chocolate cake" ez baita "pie" hitzarekin amaitzen. |
Eragile nuluak edo hutsak
| Eragilea | Deskribapena | Egia/Gezurra baldintza |
|---|---|---|
| Hutsik dago edo ez da existitzen | Eremu bat hutsik dagoen (ez du baliorik) edo existitzen ez den (null da) egiaztatzen du. |
true itzultzen du eremua hutsik badago edo null bada, eta false, berriz, eremua badago.
|
| Ez dago hutsik eta existitzen da | Eremu bat badagoela eta hutsik edo null ez dagoela egiaztatzen du. | true itzultzen du eremua existitzen bada eta hutsik ez badago; eta false hutsik badago. |
Zerrendako eragileak
Zerrendako eragileak eremu-mailako eragileekin konbinatzen dira, zerrendetako datuen baldintzak egiaztatu ahal izateko.
"Gutxienez bat" adibidean bezala, baliteke eskaera batek (order.lineItems barruan) etiketa zehatz bat duen (order.lineItems.product.tags barruko zerrenda) produktu zehatz bat ote duen egiaztatu nahi izatea. Bi kasuetan, at least one of (hauetako bat gutxienez) zerrendako eragilea erabiltzen du adibideak.
Zerrendekin lan egiteko hiru eragile eskaintzen ditu Flow-k: At least one of (Gutxienez bat), None of (Batez ere ez) eta All of (Guztiak).
| Eragilea | Deskribapena | Erabileraren adibidea |
|---|---|---|
| Hauetako bat gutxienez | Zerrendako elementuren batek zehaztutako baldintza betetzen duen egiaztatzen du.true itzultzen du zerrendako elementuren batek betetzen badu. Zerrenda hutsik badago edo elementu batek ere ez badu betetzen, orduan false itzultzen du. | Egiaztatu eskaera batek etiketa jakin bat duen produktu bat ote duen At least one of order line items.product.tags is equal to tagname erabiliz. |
| None of | Zerrendako elementu bakar batek ere ez duela zehaztutako baldintza betetzen egiaztatzen du.true itzultzen du elementu batek ere ez badu baldintza betetzen. Zerrenda hutsik badago, true itzultzen du. | Egiaztatu produktu batek ez duela presale etiketarik None of product tags is equal to presale erabiliz.Akats ohiko bat izaten da eragilea ezeztatzen saiatzea is not equal to erabiliz. Ezezko bikoitz hori erabiltzeak, None of product tags is not equal to presale, baldintza ulertzen zaila izatea eta baliogabea izatea eragiten du.
|
| All of | Zerrendako elementu guztiek zehaztutako baldintza betetzen dutela egiaztatzen du.true itzultzen du zerrendako elementu bakoitzak baldintza betetzen badu. | Egiaztatu eskaera bateko elementu guztiek Acme izeneko produktu-saltzaile zehatz bat dutela All of order line items have a product.vendor equal to Acme erabiliz. |
Baldintzak ordenatzea
Hainbat baldintza dituzten lan-fluxuak sor ditzakezu, eta horietako bakoitzak ekintza ezberdinak eragin ditzake. Baldintzen ordenak garrantzia du. Baldintzen egiaztapena lan-fluxuaren hasieran hasten da, eta modu sistematikoan jarraitzen du baldintza bakoitzean. Egiaztapena baldintza bat betetzen denean gelditzen da.
Adibide honek hainbat baldintza erabiltzen ditu bezero bat fideltasun-programa baterako hautagarria ote den egiaztatzeko, dendan gastatu duen kopuru osoan oinarrituta. Baldintzak erakusten diren ordenan egiaztatzen dira:
- Prezio osoa 1.000 $ baino handiagoa bada eta bezeroak marketina onartzen badu, jarri
Goldetiketa. - Prezio osoa 1.000 $ baino txikiagoa baina 500 $ baino handiagoa bada eta bezeroak marketina onartzen badu, jarri
Silveretiketa. - Prezio osoa 500 $ baino txikiagoa baina 200 $ baino handiagoa bada eta bezeroak marketina onartzen badu, jarri
Bronzeetiketa.

Hainbat irizpide baldintza bakarrean konbinatzea
Baldintza bat sortzean, hainbat irizpide ezar ditzakezu. Irizpide horiek nola konbinatu aukera dezakezu, baldintza orokorra egia ala gezurra den zehazteko.
Irizpide guztiak betetzen badira
AND hautatuz gero, erantzuna egia izango da zuk ezarritako irizpide guztiak egiazkoak badira soilik.
Adibidez, lan-fluxu bat sortzen duzu Kanadan dauden eta eskaera bakarrean 500 $ baino gehiago gastatzen dituzten bezeroak etiketatzeko.

Lan-fluxuak bezeroa etiketatzen du bezeroa Kanadan badago eta eskaeran 500 $ baino gehiago gastatzen baditu bakarrik. Baldintza horietako bat gezurra bada, bezeroa ez da etiketatuko.
Edozein irizpide betetzen bada
OR hautatuz gero, erantzuna egia izango da ezarritako irizpideren bat egiazkoa bada.
Adibidez, eskaerak Utzi edo Ikertu arriskuaren araberako gomendio batekin etiketatzeko lan-fluxu bat sortzen duzu. Baldintza horietako bat betetzen den bitartean, eskaera etiketatu egingo da.

Datu estatikoak eta dinamikoak baldintzetan
Normalean, baldintza bateko bigarren balioa eskuz sartutako balio estatiko bat izaten da (esaterako, product.title == "your title"). Balio hori berdin mantentzen da lan-fluxuaren exekuzio bakoitzean.
Balio dinamikoak ere erabil ditzakezu bigarren balioaren eremuak ikonoa erakusten badu. Balio dinamikoak zure dendaren datuetatik ateratzen dira lan-fluxuaren exekuzio bakoitzean. Balio dinamiko bat erabiltzeko, egin klik
ikonoan, eta hautatu alderatzeko erabili nahi duzun balioa. Balio dinamikoak ez daude erabilgarri eremu guztietarako.
Adibidez, lan-fluxu bat sortzen duzu eskaera baten fakturazio-helbideko herrialdea eta bidalketa-helbideko herrialdea bat badatoz eskaera etiketatzeko.

Adibide honetan, lehen zein bigarren balioak zure dendaren datuetatik ateratzen dira, bigarren balioarekin alderatzeko kate estatiko bat eskuz zehaztu beharrean. Bezeroak emandako fakturazio-helbideko herrialdea eta bezeroak bidalketa-helbidean emandako herrialdea bera badira, baldintza egiazkoa da, eta eskaera etiketatu egiten da.
Baliteke batzuetan mota okerreko datu dinamikoak erabili behar izatea. Adibidez, baliteke kate gisa gordetako zenbaki bat beste zenbaki batekin alderatu behar izatea. Kasu horretan, Exekutatu kodea aukera erabil dezakezu datuak mota zuzeneko bihurtzeko.
Txantiloiak
Txantiloi-liburutegiko txantiloi gehienek baldintza bat dute.
Baldintzen adibideak
Egiaztatu zerrendako elementuren batek baldintza bat betetzen duen
Adibide honek ohiko baldintza bat erakusten du; horrek egiaztatzen du zerrendako elementuren batek balio jakin bat betetzen duen.
Kasu honetan, baldintzak egiaztatzen du eskaera bateko produktuetako batek presale etiketa duen. Baldintza hori sortzeko, order / lineItems / product / tags aukeratu behar duzu. Berez, Flow-k at least one of (hauetako bat gutxienez) aukeratzen du operadore logiko gisa:

Hauetako bat gutxienez zatiak zerrenda-operadoreak dira eta zerrendako elementu anitzen arteko parekatzeak kudeatzeko erabiltzen dira. Berdina da zatia eremu mailako operadorea da, eta zerrendako elementu bakar bat parekatzen den zehazten du.
Egiaztatu zerrendako elementu batek ere ez duela baldintza bat betetzen
Adibide honek ohiko baldintza bat erakusten du; horrek egiaztatzen du zerrendako elementu batek ere ez duela balio jakin bat betetzen. Kontuan hartu beharreko arazo arrunt bat da zerrendak hutsik egon daitezkeela. Zerrenda bat hutsik dagoenean, baldintza zerrenda-operadoreak kudeatuko du (kasu honetan, hauetako bat ere ez).
Kasu honetan, baldintzak egiaztatzen du produktu-etiketa bat bera ere ez dela "foo"-ren berdina:

Baldintzak true itzuliko du baldin eta (1) ez badago produktu-etiketarik edo (2) etiketarik ez bada "foo". Bestela, false itzuliko du.
Egiaztatu zerrendako elementu batek irizpide anitz betetzen dituen
Adibide honek ohiko baldintza bat erakusten du; horrek egiaztatzen du zerrendako elementuren batek bi irizpide bereizi betetzen dituen.
Kasu honetan, baldintzak egiaztatzen du eskaera bateko produktuetako batek presale etiketa duen eta clothing productType bat duen.

Baldintza hori sortzeko, hau egin behar duzu:
- Lehen irizpiderako, aukeratu order / lineItems / product / tags.
- Aukeratu Gehitu irizpideak elementu berarentzat lineItems zerrendan. Oharra: Zerrendako elementu okerra aukeratzea akats ohikoa da hemen.
- Aukeratu lineItems_item goi-mailako objektu gisa eta, ondoren, product / productType` bigarren irizpiderako. Oharra: Objektu okerra aukeratzea ere akats ohikoa da hemen.
- Aukeratu AND bi irizpideak konbinatzeko.
- Sartu
presaleetaclothingbalioak bi irizpideentzat.