Razumijevanje uvjeta u aplikaciji Shopify Flow

Uvjet je korak u tijeku rada u kojem se donosi odluka o nastavku rada na temelju toga je li ispunjen skup kriterija. Svaki korak uvjeta ima dvije mogućnosti: Istinito kada su ispunjeni kriteriji i Lažno kada kriteriji nisu ispunjeni. Ako ne definirate sljedeći korak za te mogućnosti odabirom drugog uvjeta ili radnje, tada se pokretanje tijeka rada zaustavlja.

Na primjer, ako se vaš tijek rada pokrene pri izradi narudžbe, uvjet bi mogao provjeriti je li za tu narudžbu upotrijebljen određeni kod za popust AFFILIATE10. Ako jest, opcija True (Istina) mogla bi dovesti do radnje koja pridruženom partneru šalje e-poruku s obavijesti da je njegov kod upotrijebljen. Ako nije, opcija False (Neistina) mogla bi biti prazna, što znači da se neće dogoditi ništa više i pokretanje tijeka rada završava.

Tijek rada može imati bilo koji broj uvjeta, ovisno o složenosti vašeg tijeka rada. Uvjeti se također mogu povezati s drugim uvjetima ili radnjama ovisno o tome što želite da tijek rada napravi. Uvjeti se mogu postaviti tako da se povezuju u slijedu (na primjer, ako je uvjet A istinit, provjerite uvjet B; ako je A neistinit, provjerite C) ili ih možete postaviti tako da se odvijaju istovremeno kao dio istog koraka (na primjer, provjerite je li A ili B ili C istinito).

Izrada uvjeta za tijek rada

Za razliku od pokretača ili radnje, koje možete odabrati s unaprijed postavljenog popisa dostupnih opcija u aplikaciji Shopify Flow, uvjeti se izrađuju ispočetka odabirom varijabli, logičkih operatora i vrijednosti za izradu uvjetne izjave:

  • Varijabla je rezervirano mjesto koje definira podatke koje uvjet upotrebljava. Na primjer, ako se u uvjetu želi provjeriti određeni kod za popust u narudžbi, varijabla bi bila order.discountCode. Varijable upotrebljavaju točkastu notaciju sučelja GraphQL Admin API.
  • Pojam logički operator označava kako tijek rada treba utvrditi je li uvjet ispunjen. Logički operatori mogu se primijeniti na razini varijable ili kada je više varijabli uključeno kao dio cjelokupnih kriterija uvjeta:
    • Opcije na razini varijable uključuju operatore na razini polja kao što su Veće od (Greater than) ili Započinje s (Starts with), odnosno operatore na razini popisa kao što su Barem jedan od (At least one of) ili Sve od navedenog (All of).
    • Opcije na razini uvjeta uključuju AND, što znači da sve varijable moraju biti istinite da bi se uvjet u cjelini smatrao istinitim, ili OR, što znači da barem 1 varijabla mora biti istinita da bi se uvjet u cjelini smatrao istinitim.
  • Vrijednost je stvarna informacija koju varijabla traži. Na primjer, ako je specifični order.discountCode koji želite da tijek rada provjeri AFFILIATE10, to bi bila vrijednost koju trebate uključiti kao dio uvjeta.

Dok odabirete varijable i operatore, korak uvjeta na radnom prostoru aplikacije Shopify Flow ažurira se kako bi prikazao vašu uvjetnu izjavu jednostavnim jezikom, omogućujući vam da dvaput provjerite je li uvjet koji izrađujete ispravno formatiran. Možete kliknuti Dodaj opis (Add description) kako biste zadanu uvjetnu izjavu prepisali vlastitim pisanim opisom.

Saznajte detaljnije informacije o elementima uvjeta u aplikaciji Shopify Flow.

Razumijevanje varijabli u uvjetima

Pri izradi koraka uvjeta u tijeku rada, prvi korak koji trebate poduzeti jest Dodaj varijablu. No, što je varijabla?

U aplikaciji Shopify Flow, varijabla je rezervirano mjesto koje označava podatke koje upotrebljava uvjet u tijeku rada. Kada uvjet glasi „Ako je A veće od 10…”, dio A je varijabla. Odabirom varijable za uvjet zapravo se uvjetu točno govori koje podatke treba procijeniti.

Varijable su formatirane pomoću točkaste notacije sučelja GraphQL Admin API. Ne morate biti stručnjak za API da biste izrađivali tijekove rada u aplikaciji Flow, ali osnovno razumijevanje naziva varijabli i njihovih definicija može vam pomoći da izgradite specifičnu logiku tijeka rada koju želite.

Kako biste razumjeli koje podatke varijabla predstavlja, razmotrite sljedeće informacije o varijablama:

Savjet: potražite pomoć s varijablama od alata Dev Docs Assistant

Ako niste sigurni koju varijablu odabrati pri izradi uvjeta, razmislite o tome da za savjet pitate alat Shopify Dev Docs Assistant. Dev Docs Assistant ima pristup cjelokupnoj dokumentaciji u vezi sa sučeljem GraphQL Admin API i može ponuditi prijedloge o tome kako formatirati uvjet u aplikaciji Shopify Flow:

  1. Idite na Shopify Dev Docs.
  2. Kliknite Ask Assistant za otvaranje ploče za chat.
  3. U polje za poruku unesite svoj zahtjev, primjerice: „Koju varijablu trebam upotrijebiti u aplikaciji Shopify Flow ako želim pristupiti podacima oznake korisnika kada moj pokretač započinje s "Order created" (Narudžba izrađena)?”.
  4. Pritisnite Enter ili kliknite Slanje.

Čitanje točkaste notacije varijable

Pri odabiru varijabli primijetit ćete da su formatirane kao ključne riječi odvojene točkama, poput order.customer.tag. Ovaj format označava korake koje API poduzima kako bi došao do podataka koje želite upotrijebiti. Svaki „korak” varijable odvojen je točkom, a putanja do podataka čita se s lijeva na desno. Varijable se mogu razlikovati po duljini ovisno o tome gdje su podaci pohranjeni u API-ju i putanji kojom tijek rada prolazi kako bi do njih došao.

Na primjer:

  • order.email: Provjerava e-adresu povezanu s korisnikom za tu narudžbu. To je slično tome kako biste kliknuli narudžbu, a zatim provjerili e-adresu u pojedinostima narudžbe.
  • refunds_item.staffMember.name: Provjerava narudžbu za povrat novca za stavku, prelazi na informacije o osoblju povezane s tim povratom novca i provjerava puno ime tog člana osoblja.

Pri odabiru varijable razmislite o tome kako biste se kretali administratorskim alatom za Shopify kako biste pronašli željene informacije. Vjerojatno će API morati proći sličnim putem, što vam može pomoći da odredite kako bi vaša varijabla mogla biti formatirana.

Na primjer, ako pregledavate novu narudžbu i želite znati u kojoj se RFM grupi nalazi korisnik povezan s narudžbom, mogli biste kliknuti ime korisnika na narudžbi kako biste bili preusmjereni na stranicu s pojedinostima o korisniku u administratorskom alatu za Shopify, a zatim provjeriti sažetak analitike korisnika kako biste pročitali koja je vrijednost prikazana u stupcu RFM grupa.

Varijabla koju biste upotrijebili za povrat istih podataka u aplikaciji Shopify Flow koristila bi sličnu putanju: order.customer.statistics.rfmGroup.

Zahtjevi za podatke za varijable

Varijable zahtijevaju podatke. Ako varijabli nisu dostupni odgovarajući podaci, uvjet neće funkcionirati i tijek rada neće uspjeti. Ovisno o tome koji ste pokretač odabrali kao početak tijeka rada, opcije za to koje varijable dodati vašim uvjetima mijenjaju se kako bi odražavale moguće opcije na temelju dostupnih podataka.

Na primjer, ako vaš tijek rada započne pokretačem Izrađen proizvod (Product created), uvjeti koje kreirate pomoću tog pokretača bit će ograničeni na varijable dostupne u skupu podataka proizvoda. Stoga su varijable kao što su product.category.name, product.vendor i variants_item.displayName dostupne za upotrebu kao dio uvjeta. Nasuprot tome, varijable kao što su customer.verifiedEmail ili subscriptionContracts_item.status ne bi bile prikazane kao opcije jer one nisu povezane sa skupom podataka o proizvodu.

Međutim, to ne znači nužno da su podaci iz drugih skupova podataka potpuno nedostupni. Nekim se podacima može pristupiti putem različitih staza u API-ju, jednako kao što možete kliknuti na različite poveznice da biste došli do iste stranice u administratorskom alatu za Shopify. U praksi to znači da različiti pokretači zahtijevaju različit zapis varijabli za vraćanje istih informacija.

Na primjer, želite da tijek rada provjeri oznake na profilu korisnika. Ako tijek rada započne pokretačem Narudžba izrađena, varijabla bi bila order.customer.tags jer tijek rada započinje podacima o narudžbi, potom provjerava informacije o korisniku u narudžbi, a zatim provjerava oznake na tom korisniku. Ako tijek rada započne pokretačem Korisnik izrađen, varijabla bi jednostavno bila customer.tags jer tijek rada započinje podacima o korisniku, pa može izravno prijeći na provjeru oznaka na profilu korisnika.

Zbog stila zapisa s točkom u aplikaciji Shopify Flow, pretraživanje varijabli za upotrebu u uvjetu na temelju ključnih riječi može vratiti više rezultata. Razumijevanje na što ukazuje staza varijable važno je pri određivanju koju varijablu odabrati prilikom izrade uvjeta.

Na primjer, tijek rada upotrebljava pokretač Narudžba izrađena, a vi tražite varijablu s pomoću ključne riječi tags. Pretraživanje bi moglo vratiti sljedeće rezultate, koji provjeravaju različite informacije u narudžbi:

  • order.tags: Oznake primijenjene na samu narudžbu. Na primjer, #rush order ili #gift.
  • order.customer.tags: Oznake primijenjene na korisnika koji je izvršio narudžbu. Na primjer, #VIP ili #affiliate.
  • order.lineItems.product.tags: Oznake primijenjene na proizvode kupljene u narudžbi. Na primjer, #fragile ili #requiresID.

Ovisno o vrsti oznaka koje tijek rada treba provjeriti, morate odabrati ispravnu varijablu kako bi uvjet funkcionirao prema očekivanjima.

Razumijevanje logičkih operatora u uvjetima

Logički operatori definiraju način primjene uvjeta i rezultiraju tvrdnjom koja je istinita ili lažna. Kada uvjet glasi „Ako je A veće od 10...”, dio is greater than je logički operator. Odabir logičkog operatora za uvjet u suštini govori uvjetu kako vrednovati varijablu.

U tijekovima rada aplikacije Shopify Flow postoje 3 vrste logičkih operatora:

  • Operatori na razini polja, kao što su Veće od ili Započinje s.
  • Operatori popisa, kao što su Barem jedno od ili Sve od navedenog.
  • Operatori na razini uvjeta, kao što su I ili ILI.

Operatori na razini polja i operatori popisa primjenjuju se na razini varijable, a operatori na razini uvjeta primjenjuju se na cjelokupni uvjet te se mogu upotrebljavati za kombiniranje više varijabli u jedan uvjet.

Operatori na razini polja najčešća su vrsta operatora i upotrebljavaju se u svakoj vrsti izraza s varijablama. S operatorima na razini polja možete izraditi uvjetne izraze kao što su „Ako je A veće od 10, onda učini X” ili „Ako B sadrži 'VIP', onda učini X” kako biste imali veći stupanj kontrole nad time koje vrijednosti varijable vraćaju istinit rezultat. Jednako je zadani logički operator.

Operatori popisa mogu se primijeniti samo na varijable koje mogu vratiti popis rezultata. Na primjer, varijabla lineItems_item.variant.price vraća cijenu varijante proizvoda u narudžbi, što može vratiti popis rezultata kada je korisnik kupio više proizvoda u istoj narudžbi. To znači da biste mogli primijeniti operator popisa kao što je Barem jedno od kada želite da uvjetni izraz poput „lineItems_item.variant.price je veće od 10 USD” bude istinit kada u narudžbi postoji barem 1 varijanta proizvoda čija cijena premašuje 10 USD. Za razliku od toga, operatori popisa ne prikazuju se za varijable koje mogu vratiti samo 1 rezultat odjednom. Na primjer, postoji samo 1 moguća vrijednost za varijablu kao što je order.createdAt jer se narudžba može izraditi samo jednom, pa se operatori popisa ne prikazuju kao opcije za izmjenu izraza koji sadrži tu varijablu.

Operatori na razini uvjeta kao što su AND i OR omogućuju vam uključivanje više varijabli u isti uvjet. Na primjer, umjesto jednostavnog uvjetnog izraza poput „Ako je A jednako 5, onda učini X”, možete izraditi složenije uvjete kao što su „Ako je A jednako 5 i B je veće od 10, onda učini X” koji zahtijeva da obje varijable A i B budu istinite, ili „Ako je A jednako 5 ili B je veće od 10 ili C je manje od 1, onda učini X” koji zahtijeva da samo 1 od varijabli A, B ili C bude istinita. Upotrijebite AND kada sve u tijeku rada mora biti istinito; upotrijebite OR kada je za ispunjenje uvjeta dovoljno zadovoljiti bilo koji 1 kriterij.

Zašto je to važno: Razumijevanje načina na koji logički operatori funkcioniraju u uvjetima omogućuje vam izradu tijekova rada koji provjeravaju točno one kriterije koje želite. Pomoću 3 vrste logičkih operatora možete sastaviti detaljne i složene uvjetne izraze za izradu tijekova rada koji provjeravaju vrlo specifične uvjete.

Saznajte detaljnije informacije o logičkim operatorima u uvjetima.