Gestionarea cuvintelor-cheie în workflowuri¶
Cuvintele-cheie de workflow pot fi utilizate în setările workflowurilor, ale etapelor, ale acțiunilor și ale notificărilor.
Formatul general al cuvintelor-cheie de workflow este următorul:
- O clasă (exemplu: PERSON, MANAGER, STARTER etc.)
- Un parametru principal (exemplu: ATTRIBUTE, RIGHT etc.)
- Un parametru secundar (exemplu: codul atributului etc.)
Există două mari categorii de cuvinte-cheie:
-
Cuvintele-cheie care returnează o listă de obiecte fără a ține cont de datele workflowului. Aceste cuvinte-cheie sunt utilizate pentru filtrare sau ca condiții de execuție a sarcinilor ori a acțiunilor. În acest caz, separatorul este „§”. Cuvintele-cheie disponibile sunt următoarele:
- §KAD§: cuvânt-cheie care poate fi utilizat numai în workflowurile declanșate de evenimentul „Modification of an authorization rule”
- §KAD§ATTRIBUTE§secondary_parameter§: permite recuperarea informațiilor despre o regulă de autorizare pornind de la identificatorul, numele sau descrierea sa. secondary_parameter poate lua valorile următoare:
- kad_id: identificatorul regulii de autorizare.
- kad_name: numele regulii de autorizare
- kad_description: descrierea regulii de autorizare
- §KAD§FILTRE§attribute_code§: permite recuperarea valorilor filtrului al cărui cod este indicat în „attribute_code” în regula de autorizare care declanșează instanța de workflow.
- §KAD§STRUCTURE§VALUE§: permite recuperarea valorilor structurilor vizate de regula de autorizare care declanșează instanța de workflow.
- §KAD§RIGHT§<AccountTypeCode.RightCode>§: permite să testați dacă dreptul al cărui cod este indicat în parametrul „Right_Code”, legat de tipul de cont al cărui cod este indicat în parametrul „Account_Type_Code”, este prezent în regula de autorizare care declanșează instanța de workflow.
- §KAD§ATTRIBUTE§secondary_parameter§: permite recuperarea informațiilor despre o regulă de autorizare pornind de la identificatorul, numele sau descrierea sa. secondary_parameter poate lua valorile următoare:
- §PERSON§: cuvânt-cheie care permite recuperarea unei liste de identități filtrată pornind de la parametrii indicați. Nu ține cont de datele workflowului, dar permite filtrarea țintelor potențiale ale workflowului ori determinarea actorilor sau a țintelor acțiunilor ori sarcinilor din workflowuri.
- §PERSON§ATTRIBUTE§attribute_code§: permite recuperarea unei liste de persoane în funcție de valoarea unui atribut.
- §PERSON§RIGHT§<AccountTypeCode.RightCode>§: permite recuperarea unei liste a persoanelor care dețin efectiv dreptul al cărui cod este indicat în parametrul „Right_Code”, legat de tipul de cont al cărui cod este indicat în parametrul „Account_Type_Code”.
- §OBJECT§ sau §RESOURCE§: cuvânt-cheie care permite recuperarea unei liste de dotări filtrată pornind de la parametrii indicați. Nu ține cont de datele workflowului, dar permite filtrarea obiectelor acțiunilor sau ale sarcinilor din workflowuri.
- §OBJECT§ATTRIBUTE§attribute_code§ sau §RESOURCE§ATTRIBUTE§attribute_code§: permite recuperarea unei liste de dotări în funcție de valoarea atributelor.
- §KAD§: cuvânt-cheie care poate fi utilizat numai în workflowurile declanșate de evenimentul „Modification of an authorization rule”
-
Cuvintele-cheie care returnează valorile diferitelor obiecte conținute în instanțele de workflow (ținte, actori, validatori, conținutul solicitării etc.). În acest caz, separatorul este „#”. Cuvintele-cheie disponibile sunt următoarele:
-
WORKFLOW#Code_workflow#parameter_step#: permite recuperarea informațiilor despre o instanță de workflow al cărei cod este egal cu „workflow_code”. Poate fi utilizat într-un câmp de evaluare SQL (exemplu: reguli de execuție, reguli de validare etc.) sau într-un câmp de notificare (exemplu: subiect, corpul e-mailului). Parameter_step poate lua valorile următoare:¶
- ID: identificatorul instanței de workflow
- STATUS: starea instanței de workflow
- -2 = eșec prin escaladare
- -1 = eșec
- 0 = în curs
- 1 = succes
- 2 = inițializat de utilizator
- 3 = eveniment în așteptarea unor informații suplimentare
- 4 = în pauză
- 5 = necesitate de informații
- 6 = blocat
- 7 = oprit
- 8 = succes prin escaladare
- 9 = reinițializat
- STARTDATE: data de început a instanței de workflow
- ENDDATE: data de sfârșit a instanței de workflow
- LASTEVENTDATE: data ultimului eveniment la nivelul instanței de workflow
- DATA: returnează lista drepturilor și a utilizatorilor vizați.
-
STEP#Step_code#parameter_step#: permite recuperarea informațiilor despre o instanță de etapă de workflow al cărei cod este egal cu „Step_code”. Poate fi utilizat într-un câmp de evaluare SQL (exemplu: reguli de execuție, reguli de validare etc.) sau într-un câmp de notificare (exemplu: subiect, corpul e-mailului). Parameter_step poate lua valorile următoare:¶
- ID: identificatorul instanței de etapă
- STATUS: starea instanței etapei cu codul „Step_code” din instanța de workflow
- -1 = eșec
- 0 = în curs
- 1 = succes
- 4 = în pauză
- 5 = necesitate de informații
- 6 = blocat
- 7 = oprit
- STARTDATE: data de început a instanței de etapă
- ENDDATE: data de sfârșit a instanței de etapă
- LASTEVENTDATE: data ultimului eveniment la nivelul instanței de etapă
-
ACTION#Action_code#parameter_action#: permite recuperarea informațiilor despre o instanță de acțiune al cărei cod este egal cu „action_code”. Poate fi utilizat într-un câmp de evaluare SQL (exemplu: reguli de execuție, reguli de validare etc.) sau într-un câmp de notificare (exemplu: subiect, corpul e-mailului). Parameter_action poate lua valorile următoare:¶
- ID: identificatorul instanței de acțiune
- STATUS: starea instanței acțiunii cu codul „Action_code” din instanța de workflow
- -1 = eșec
- 0 = în curs
- 1 = succes
- 4 = în pauză
- 5 = necesitate de informații
- 6 = blocat
- 7 = oprit
- STARTDATE: data de început a instanței de acțiune
- ENDDATE: data de sfârșit a instanței de acțiune
- LASTEVENTDATE: data ultimului eveniment la nivelul instanței de acțiune
- DEROGATED: identificatorul persoanei căreia i-a fost delegată acțiunea
-
TASK#Task_code#parameter_task#: permite recuperarea informațiilor despre o instanță de sarcină al cărei cod este egal cu „task_code”. Poate fi utilizat într-un câmp de evaluare SQL (exemplu: reguli de execuție, reguli de validare etc.) sau într-un câmp de notificare (exemplu: subiect, corpul e-mailului). Parameter_task poate lua valorile următoare:¶
- ID: identificatorul instanței de sarcină
- STATUS: starea instanței sarcinii cu codul „Task_code” din instanța de workflow
- -1 = eșec
- 0 = în curs
- 1 = succes
- 4 = în pauză
- 5 = necesitate de informații
- 6 = blocat
- 7 = oprit
- STARTDATE: data de început a instanței de sarcină
- ENDDATE: data de sfârșit a instanței de sarcină
- LASTEVENTDATE: data ultimului eveniment la nivelul instanței de sarcină
- DEROGATED: identificatorul persoanei căreia i-a fost delegată sarcina
- Este posibil să creați linkuri de validare automată în corpul unui e-mail atunci când notificarea este configurată într-o acțiune sau o sarcină de validare: http://[DNS address]/UserRequestWorkflow.aspx? MyActionId={#ACTION#Action_or_task_code#ID#}&accept=[result]
- DNS address trebuie înlocuit cu adresa serverului Identity
- Action_or_task_code trebuie înlocuit cu codul acțiunii sau al sarcinii care va fi validată prin link
- Result: introduceți 1 pentru a valida acțiunea sau sarcina, 0 pentru a o respinge.
Pentru a configura linkul în corpul e-mailului, utilizați butonul „
”, unde puteți verifica adresa și textul care vor fi afișate în e-mail.Notă: pentru a valida sau a respinge o solicitare dintr-un e-mail de notificare, utilizatorul trebuie să se conecteze la interfață pentru a confirma că dispune de drepturile necesare pentru a efectua această operațiune.
-
FORM#: cuvânt-cheie care poate fi utilizat numai în workflowurile de tip „User Request” sau în sarcinile de provizionare/deprovizionare manuală, în regulile de evaluare SQL ale etapelor de acțiune și de sarcină ori în notificări.¶
-
FORM#ADDRIGHTS#CODELIST#: permite enumerarea drepturilor pe care solicitantul le-a selectat în formularul de solicitare de drepturi.¶
-
FORM#CHANGEATTRIBUTES#parameter_form#: enumeră atributele pe care solicitantul le-a modificat în formularul de modificare a persoanei. parameter_form poate lua valorile următoare:¶
- CODELIST: lista codurilor de atribut pe care solicitantul le-a modificat în formularul de modificare a persoanei.
- CHANGEDATE: data la care modificările sunt luate în considerare, în formatul dd/MM/yyyy
-
FORM#TYPERESOURCES#parameter_form#: recuperează lista tipurilor de resursă selectate la completarea formularului de solicitare. parameter_form poate lua valorile următoare:¶
- DATA: identificatorul resurselor
- DATA.CODE: codul resurselor
- DATA.NAME: numele resurselor
-
FORM#Validation_task_code#parameter_form#:¶
- DATA: permite recuperarea ansamblului conturilor și drepturilor pe aplicație de destinație în corpul e-mailului.
- DATA.PROVISIONINGRIGHTONLY: permite condiționarea execuției unei sarcini de validare a formularului și/sau a unei sarcini de provizionare manuală de faptul că țintele dispun deja de un cont în repository-urile vizate de solicitare.
- DATA.UNPROVISIONINGRIGHTONLY: permite condiționarea execuției unei sarcini de validare a formularului și/sau a unei sarcini de deprovizionare manuală de faptul că țintele dispun deja de un cont în repository-urile vizate de solicitare.
- DATA.PROVISIONINGACCOUNTONLY: permite condiționarea execuției unei sarcini de validare a formularului și/sau a unei sarcini de provizionare manuală de faptul că țintele nu dispun de un cont în repository-urile vizate de solicitare.
- DATA.UNPROVISIONINGACCOUNTONLY: permite condiționarea execuției unei sarcini de validare a formularului și/sau a unei sarcini de deprovizionare manuală de faptul că țintele nu dispun de un cont în repository-urile vizate de solicitare.
-
-
TASKFORM#: cuvânt-cheie care poate fi utilizat numai în sarcinile de workflow de tipurile următoare: atribuire de resurse și provizionare/deprovizionare manuală¶
-
TASKFORM#Task_code#fparameter_form#: permite recuperarea datelor indicate în „parameter_form” ale unei resurse sau ale unui drept. Acest cuvânt-cheie trebuie utilizat în corpul unui e-mail pentru ca rezultatul să fie afișat sub formă de tabel. parameter_form poate lua valorile următoare:¶
- DATA: identificatorul resurselor solicitate dacă sarcina este de tip „Resource assignment”, sau identificatorul drepturilor care trebuie provizionate ori deprovizionate dacă sarcina este de tip „Manual provisioning/deprovisioning”.
- DATA.CODE: codul resurselor solicitate dacă sarcina este de tip „Resource assignment”, sau codul drepturilor care trebuie provizionate ori deprovizionate dacă sarcina este de tip „Manual provisioning/deprovisioning”.
- DATA.NAME: numele resurselor solicitate dacă sarcina este de tip „Resource assignment”, sau numele drepturilor care trebuie provizionate ori deprovizionate dacă sarcina este de tip „manual provisioning/deprovisioning”.
- DATA.FIELDS: valorile câmpurilor suplimentare din formularul de solicitare. Valabil numai dacă sarcina este de tip „manual provisioning/deprovisioning”.
- DATACOMPLETEONLY: identificatorii resurselor efectiv atribuite în sarcina de tip „Resource Assignment”. Valabil numai dacă sarcina este de tip „Resource Assignment”.
- DATACOMPLETEONLY.CODE: codul resurselor efectiv atribuite în sarcina de tip „Resource Assignment”. Valabil numai dacă sarcina este de tip „Resource Assignment”.
- DATACOMPLETEONLY.NAME: numele resurselor efectiv atribuite în sarcina de tip „Resource Assignment”. Valabil numai dacă sarcina este de tip „Resource Assignment”.
- DATAINCOMPLETE: identificatorii tipurilor de resursă cărora nu le-a fost atribuită nicio resursă. Valabil numai dacă sarcina este de tip „Resource Assignment”.
- DATAINCOMPLETE.CODE: codul tipurilor de resursă cărora nu le-a fost atribuită nicio resursă. Valabil numai dacă sarcina este de tip „Resource Assignment”.
- DATAINCOMPLETE.NAME: numele tipurilor de resursă cărora nu le-a fost atribuită nicio resursă. Valabil numai dacă sarcina este de tip „Resource Assignment”.
-
-
MANAGER#: gestionarul unui workflow este persoana care îl administrează.¶
-
MANAGER#ATTRIBUTE#attribute_code#: permite injectarea informațiilor despre instanța de acțiune într-un câmp de evaluare SQL (exemplu: reguli de execuție, de validare etc.) sau într-un câmp evaluat (exemplu: destinatari, subiect, corpul e-mailului).¶
-
MANAGER#RIGHT#<Account_Type_Code.Right_Code>#: permite să verificați că gestionarul unui workflow deține dreptul al cărui cod este indicat în parametrul „Right_Code”, legat de tipul de cont al cărui cod este indicat în parametrul „Account_Type_Code”.¶
-
MANAGER#RIGHTHEO#<Account_Type_Code.Right_Code>#: permite să verificați că gestionarul unui workflow deține teoretic dreptul al cărui cod este indicat în parametrul „Right_Code”, legat de tipul de cont al cărui cod este indicat în parametrul „Account_Type_Code”.¶
-
-
POSSIBLEACTIONACTOR#: persoanele care pot interveni asupra unei acțiuni¶
-
POSSIBLEACTIONACTOR#Action_code#attribute_code#: permite recuperarea valorii atributului al cărui cod este indicat în parametrul attribute_code la actorii posibili ai instanței unei acțiuni sau sarcini al cărei cod este egal cu „action_code”. Poate fi utilizat într-un câmp de evaluare SQL (exemplu: reguli de execuție, reguli de validare etc.) sau într-un câmp de notificare (exemplu: destinatari, subiect, corpul e-mailului).¶
-
-
STARTER#: persoana care inițiază un workflow¶
-
STARTER#ATTRIBUTE#attribute_code#: permite recuperarea valorii atributului al cărui cod este indicat în parametrul attribute_code pentru persoana care a inițiat workflowul. Poate fi utilizat într-un câmp de evaluare SQL (exemplu: reguli de execuție, reguli de validare etc.) sau într-un câmp de notificare (exemplu: subiect, corpul e-mailului).¶
-
STARTER#RIGHT#<AccountTypeCode.RightCode>#: permite să verificați că solicitantul unui workflow deține dreptul al cărui cod este indicat în parametrul „Right_Code”, legat de tipul de cont al cărui cod este indicat în parametrul „Account_Type_Code”.¶
-
STARTER#RIGHTHEO#<Account_Type_Code.Right_Code>#: permite să verificați că solicitantul unui workflow deține teoretic dreptul al cărui cod este indicat în parametrul „Right_Code”, legat de tipul de cont al cărui cod este indicat în parametrul „Account_Type_Code”.¶
-
-
TARGET#: obiectul sau obiectele care declanșează o instanță de workflow¶
-
TARGET#ATTRIBUTE#attribute_code#: permite recuperarea valorii atributului al cărui cod este indicat în parametrul attribute_code la obiectul care a inițiat workflowul. Poate fi utilizat într-un câmp de evaluare SQL (exemplu: reguli de execuție, reguli de validare etc.) sau într-un câmp de notificare (exemplu: subiect, corpul e-mailului). Acest cuvânt-cheie funcționează numai atunci când ținta este de tip persoană sau dotare.¶
-
TARGET#RIGHT#<AccountTypeCode.RightCode>#: permite să verificați că ținta sau țintele unui workflow dețin dreptul al cărui cod este indicat în parametrul „Right_Code”, legat de tipul de cont al cărui cod este indicat în parametrul „Account_Type_Code”. Acest cuvânt-cheie funcționează numai atunci când ținta este de tip persoană.¶
-
TARGET#RIGHTTHEO#<AccountTypeCode.RightCode>#: permite să verificați că ținta sau țintele unui workflow dețin teoretic dreptul al cărui cod este indicat în parametrul „Right_Code”, legat de tipul de cont al cărui cod este indicat în parametrul „Account_Type_Code”. Acest cuvânt-cheie funcționează numai atunci când ținta este de tip persoană.¶
-
TARGET#RESOURCE#DATA#: permite recuperarea în corpul e-mailului a tuturor datelor (valorile tuturor atributelor) ale tuturor resurselor legate de țintele unei instanțe de workflow.¶
-
TARGET#RESOURCE#DATA@CodeAtt1,CodeAtt2,CodeAttN#: permite recuperarea în corpul e-mailului a valorilor atributelor selectate prin lista de coduri de atribut CodeAttN ale tuturor resurselor legate de țintele unei instanțe de workflow. Atributele „name” și „code” sunt afișate în mod implicit în corpul e-mailului, fără a fi nevoie să fie adăugate în listă.¶
-
TARGET#RESOURCE#DATA.CodeTypeResource1,CodeTypeResource2,CodeTypeResourceN#: permite recuperarea în corpul e-mailului a valorilor tuturor atributelor tipurilor de resursă selectate prin lista de coduri de tip de resursă CodeTypeResourceN legate de țintele unei instanțe de workflow.¶
-
TARGET#RESOURCE#DATA.CodeTypeResource1,CodeTypeResourceN@CodeAtt1,CodeAtt2,CodeAttN#: permite recuperarea în corpul e-mailului a valorilor următoare:¶
- Fie toate atributele tipurilor de resursă selectate prin lista de coduri CodeTypeResourceN legate de țintele unei instanțe de workflow, dacă nu este indicat niciun cod de atribut
- Fie valorile atributelor selectate prin lista de coduri de atribut, pentru tipurile de resursă selectate prin lista de coduri de tip de resursă CodeTypeResourceN legate de țintele unei instanțe de workflow, dacă sunt indicate coduri de atribut CodeAttN.
-
TARGET#RESOURCE#DATA.CodeTypeResource1,CodeTypeResource2,CodeTypeResourceN#: permite recuperarea în corpul e-mailului a valorilor tuturor atributelor tipurilor de resursă selectate prin lista de coduri de tip de resursă CodeTypeResourceN legate de țintele unei instanțe de workflow.¶
-
-
TARGET#ACCOUNT#: cuvânt-cheie care poate fi utilizat în workflowurile pe eveniment legate de crearea unui cont real.¶
-
TARGET#ACCOUNT#LOGIN#: permite recuperarea identificatorului de conectare al contului în corpul e-mailului.¶
-
TARGET#ACCOUNT#PASSWORD#: permite recuperarea parolei contului (în clar) în corpul e-mailului.¶
-
TARGET#ACCOUNT#STATUS#: permite recuperarea stării de provizionare a contului în corpul e-mailului.¶
-
TARGET#ACCOUNT#DATA#: permite recuperarea identificatorului de conectare, a parolei și a stării în corpul e-mailului.¶
-
-
-
PRIMARYTARGET# și #SECONDARYTARGET#: cuvânt-cheie care poate fi utilizat numai în workflowurile de tip „On event”¶
-
PRIMARYTARGET#ATTRIBUTE#secondary_parameter# sau #SECONDARYTARGET#ATTRIBUTE#secondary_parameter#: permite recuperarea valorii unui obiect la ținta principală sau secundară a unei instanțe de workflow, a cărui proprietate este indicată în parametrul secondary_parameter. Acest cuvânt-cheie funcționează numai atunci când ținta este de unul dintre tipurile următoare:¶
- Identitate: în acest caz, parametrul secundar va fi un cod de atribut.
- Drept: în acest caz, parametrul secundar poate lua valorile următoare:
- Name: numele dreptului
- Description: descrierea dreptului
- Code: codul dreptului
- Applicationname: numele aplicației legate de drept
- Applicationdescription: descrierea aplicației legate de drept
- Applicationcode: codul aplicației legate de drept
- ismanualprovisioning: boolean care indică dacă dreptul face parte dintr-un repository de provizionare manuală.
-
PRIMARYTARGET#TYPE#secondary_parameter# sau #SECONDARYTARGET#TYPE#secondary_parameter#: permite recuperarea informațiilor despre tipul de obiect corespunzător țintei principale sau secundare a unei instanțe de workflow. Acest cuvânt-cheie funcționează numai atunci când ținta este de tip persoană sau dotare. secondary_parameter poate lua valorile următoare:¶
- NAME: numele tipului de persoană sau de dotare
- CODE: codul tipului de persoană sau de dotare
- DESCRIPTION: descrierea tipului de persoană sau de dotare
-
PRIMARYTARGET#ACCOUNT#secondary_parameter# sau #SECONDARYTARGET#ACCOUNT#secondary_parameter#: permite recuperarea informațiilor despre contul corespunzător țintei principale sau secundare a unei instanțe de workflow. Acest cuvânt-cheie funcționează numai atunci când ținta este de tip cont. secondary_parameter poate lua valorile următoare:¶
- STATUS: starea contului real creat
- LOGIN: identificatorul de conectare al contului real creat
- PASSWORD: parola contului real creat
- DATA: tabel care enumeră identificatorul de conectare și parola contului real creat
-
-
Aceste două familii de cuvinte-cheie pot fi utilizate împreună în același parametru „SQL Evaluation”, care verifică condiția pornind de la parametrii de intrare și returnează tipurile „TRUE/FALSE” sau „List returned by an SQL evaluation”.
Particularități:
- Pentru toate cuvintele-cheie care admit un cod de atribut în parametri pentru a recupera valoarea acestuia, în cazul atributelor de tip enumerare, persoană, structură sau resursă este posibil să utilizați o extensie de format „.object_attribute_code” pentru a recupera o valoare de atribut a obiectului în locul identificatorului. Pentru atributele de tip structură, persoană sau dotare, trebuie indicat codul atributului de obiect dorit, iar pentru enumerări, object_attribute_code poate lua valorile următoare:
- NAME: recuperează numele enumerării
- CODE: recuperează codul enumerării
- Atunci când cuvintele-cheie nu sunt suficiente pentru a injecta informații în corpul unui e-mail, poate fi utilizată sintaxa următoare pentru a apela o interogare SQL de tip SELECT:
- [@@@: <SQL Query>:@@@] : interogarea SQL trebuie scrisă fără clauza „SELECT”. Returnează un șir de caractere.
- Pentru a indica informațiile țintelor (persoanele vizate de workflow), este preferabil să utilizați cuvântul-cheie §PERSON§ în locul lui #TARGET#.