Prepis videa
No a posledná časť oprávnení roly je teda písanie podmienok. Podmienky sú také asi najkomplikovanejšie z tohto všetkého, keď si odmyslíme tento tu balast, ktorý reálne nikdy využívať nebudete. Vždy, keď sa vytvára oprávnenie na Documents, tak sa automaticky do podmienok dá Document Type ID.
To je idečko tej dátovej štruktúry, napríklad v tomto prípade dátovej štruktúry návody. Ale potom, okrem tohto Document Type ID, tu viem písať rôzne podmienky. Najčastejšie teda podmienky, kedy sa vzťahuje vlastne to konkrétne oprávnenie, ten konkrétny riadok na prihláseného používateľa.
Keď si všimnete vo veľa týchto podmienkach, tu mám na uvedených vyslovenia ten user e-mail, to znamená e-mail prihláseného používateľa. Dobre, pozrime sa teda napríklad na to, akým spôsobom dosiahnem to, že sa mi zobrazujú, teda že môžem manažovať len úlohy, na ktorých som ako zodpovedná osoba pridelený ja ako prihlásený používateľ. Aby som vedel vyskladať túto podmienku, to data.zodpovednaosoba.e-mail, tak je veľmi vhodné ísť do konzoly, stlačiť F12, alebo teda tento preskúmať.
A tu sa prekliknúť do networku. A v rámci networku si potrebujem odfiltrovať nejaký záznam. Napríklad otvorím si tento záznam CD4.
A teraz, aby som sa nemusel prehrabovať vo všetkých týchto dokumentoch, vizuáloch a tak ďalej, tak je taký hack, že získať odkaz. Ten odkaz si hodím do nejakého editora a vyberiem si vlastne posledný z tých stringov, to čo je pred týmto. Toto posledné si vyberiem.
A v toho mám zakódované moje ID toho dokumentu, ale bez tej úvodnej 22. Takže keď dám tú 22 preč, tak sa mi zobrazí vlastne JSON-ová reprezentácia tohto záznamu. A v tomto zázname v tej JSON-ovej reprezentácii vidím celú tú postupnosť od týchto dát, ktorú musím napísať tu na do podmienky.
To znamená, ak chcem, aby som mohol manažovať len dáta, kde teda zodpovedná osoba je prihlásený používateľ, tak idem v data.zodpovednaosoba.email. Takto keď to celé vyskladám, tak mi bude fungovať krásne táto podmienka. Vzťahujú sa na túto dátovú štruktúru, a teda na záznamy, ktoré obsahujú data.zodpovednaosoba.email toho prihláseného používateľa. A takto sa môžem vnárať ľubovoľne hlboko.
Tu mám napríklad vnorenie ešte cez leady, manažér, konzultant e-mailov. Tu mám ešte až 5-násobné, teda 3-násobné, 4-násobné vnorenie. Tu mám napríklad adresár kontaktných osôb.
Keď si ho otvorím, tak tento záznam môže manažovať človek, ktorý je uvedený v sales-aktivitách leadu ako zodpovedná osoba, teda jeho e-mail. Takže takýmto spôsobom sa cez tieto JSON-y vieme vnárať ľubovoľne hlboko. A rovnakým spôsobom sa zapisuje aj keď je to, že prepojenie jedného záznamu, aj keď by to bolo takto prepojenie viacerých záznamov.
Keby som tu mal ten e-mail, tak mi funguje úplne rovnaký zápis, proste takýto, ako aj pri prepojení jedného záznamu, že nemohol by som to takto v poli. Ak by bolo potrebné nejaké špeciálnejšie podmienky, že zobraziť to pre ľudí, pre ľudí, ktorí nie sú v zozname v poli alebo podobne, alebo zobraziť to pre nejakú hodnotu z poľa záznamov, tak odporúčam na toto využiť buď to Chat GPT, kde si teda vypýtame tú query-nu, alebo si pozrieť tú CSL knižnicu. Takže tu som sa poradil napríklad s Chat GPT.
Keby som použil niečo takéto, konkrétne v našej reprezentácii, asi v úvodzovkách data.typ:objekt a tento operator min, toto pole, tak by mi s najväčšou pravdepodobnosťou takáto podmienka fungovala. Veľmi často sa s takýmito podmienkami nestretávam, preto ich nemám ani vo svojej firme, ale viem, že keď boli potrebné robiť, tak ten Chat GPT mi pomohol.