Tester och jämförelser¶
CMP¶
Funktion som jämför två teckensträngar utan hänsyn till skiftläge.
Obs
Från och med version 7.1 tar provisioneringsmotorn inte längre hänsyn till skiftläge vid jämförelser av teckensträngar. Operationen CMP är därför inte skiftlägeskänslig, och operationen CMPi fyller inte längre någon funktion.
Funktionens syntax:
<CMP:[chaîne_caractère_1]:[chaîne_caractère_2]>
Teckensträngarna kan vara ett attribut; i så fall måste du använda nyckelordet <syncattsrc:[attribute_name]> eller <syncattdst:[attribute_name]> beroende på om åtgärden utförs på käll- eller mål-repositoryt.
Användningssätt:
- Nyckelordet CMP kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Det kombineras vanligtvis med nyckelorden IF eller SWITCH.
Möjliga resultat:
- True: om de två teckensträngarna är identiska.
- False: om de två teckensträngarna är olika.
Konfigurationsexempel:
- Exempel:
- <IF:<CMP:<SyncAttSrc:STATUT>:Done>:OK:KO>
CMPi¶
Observera
Operationen CMPi är utfasad från och med version 7.1 och tas bort från och med version 7.2. Använd endast operationen CMP, som nu inte är skiftlägeskänslig.
I version 7.1 känns CMPi fortfarande igen av motorn: befintliga regler fortsätter att fungera. Omvänt gör en CMP-regel som skrivits före 7.1 för att avsiktligt skilja mellan två värden som bara skiljer sig åt i skiftläge inte längre denna åtskillnad: kontrollera dessa regler vid versionsuppgraderingen.
Funktion som jämför två teckensträngar utan hänsyn till skiftläge.
Funktionens syntax:
<CMPi:[teckensträng_1]:[teckensträng_2]>
Teckensträngarna kan vara ett attribut; i så fall måste du använda nyckelordet <syncattsrc:[attribute_name]> eller <syncattdst:[attribute_name]> beroende på om åtgärden utförs på käll- eller mål-repositoryt.
Användningssätt:
- Nyckelordet CMPi kan användas i alla fält av typen ”expression”, till exempel COPY, MODVALUE osv.
- Det kombineras vanligtvis med nyckelorden IF eller SWITCH.
Möjliga resultat:
- True: om de två teckensträngarna är identiska.
- False: om de två teckensträngarna är olika.
Konfigurationsexempel:
- Exempel: <IF:<CMPi:<SyncAttSrc:STATUT>:Completed>:OK:KO>
EXISTS¶
Funktion som gör det möjligt att testa om ett attribut finns i en export.
Funktionens syntax:
<EXISTS:[searched_attribute_name]:[DataSource]:[Operation]>
- [nom_attribut_recherché] = namnet på det attribut vars existens ska testas
- [DataSource] = SRC eller DST. Gör det möjligt att söka efter attributet antingen i exporten från käll-repositoryt (=SRC) eller i exporten från mål-repositoryt (=DST). Parametern är valfri om inte en åtgärd anges. Om parametern inte anges tillämpas värdet SRC som standard.
- [Operation] = ADD eller DEL. Används för att testa om attributet finns med en underåtgärd ADD eller DEL. Parametern är valfri.
Möjliga resultat:
Returnerar 1 om attributet hittas, annars 0.
Användningssätt:
- Nyckelordet EXISTS kan användas i alla fält av typen ”expression”, till exempel åtgärderna COPY, MODVALUE osv., eller i utförandevillkoren i importreglerna för en DB-konnektor.
Konfigurationsexempel:
- Resultat: SQL-frågan utförs bara om attributet ”wiki_mod_2” finns i käll-repositoryt med en underåtgärd ADD.
NOT¶
Returnerar 1 om uttrycket är falskt, annars 0.
Funktionens syntax:
<NOT:[Expression]>
Uttrycket kan innehålla andra nyckelord.
Användningssätt:
- Nyckelordet NOT kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Uttryck som returnerar ett booleskt värde byggs i regel av kombinationer av nyckelord som CMP, IF osv.
Konfigurationsexempel:
- Exempel:
- <IF:<NOT:<CMP:<SyncAttSrc:STATUS>:Completed>>:Echec:Success>
- Returnerar ”Success” om statusen är lika med ”Completed”, annars returneras ”Failure” om statusen inte är ”Completed”.
&NOT¶
Binär åtgärd ”NOT”.
Funktionens syntax:
<&NOT:[Expression]>
Uttrycket kan innehålla andra nyckelord, till exempel för att hämta värdet på ett attribut.
Användningssätt:
- Nyckelordet NOT kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Uttryck som returnerar ett booleskt värde byggs i regel av kombinationer av nyckelord som CMP, IF osv.
Möjliga resultat:
- Binärt värde
Konfigurationsexempel:
- Exempel:
- <&NOT:<CMP:<SyncAttSrc:STATUS>:512>>:Disabled:Enabled>
- Returnerar ”Enabled” om statusen är lika med ”Completed”, annars returneras ”Failed” om statusen inte är ”Completed”.
AND¶
Returnerar 1 (sant) om uttryck 1 och uttryck 2 är sanna, annars 0.
Funktionens syntax:
<AND:[Expression_1]:[Expression_2]>
Användningssätt:
- Nyckelordet AND kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Det kombineras vanligtvis med nyckelorden IF eller SWITCH.
Konfigurationsexempel:
- Exempel: <IF:<AND:<CMP:<SyncAttSrc:person_type>:Agent>:<CMP:<SyncAttSrc:job>:Accountant>>:Agent_comptable:External_accountant>
ANDX¶
Returnerar 1 om alla uttryck i listan är sanna, annars 0.
Funktionens syntax: <ANDX:[Expression_1]:[Expression_2]:[Expression_n] >
Användningssätt:
- Nyckelordet ANDX kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Det kombineras vanligtvis med nyckelorden IF eller SWITCH.
Konfigurationsexempel:
- Exempel:
<IF:<ANDX:<CMP:<SyncAttSrc:person_type>:Agent>:<CMP:<SyncAttSrc:job>:Accountant>:<CMP:<SyncAttSrc:Is_Valid>:Yes>>:Agent_comptable:External_accountant>
&AND¶
Binär åtgärd ”AND” mellan två värden.
Funktionens syntax:
<&AND:[decimal_value_1]:[decimal_value_2]>
Användningssätt:
- Nyckelordet &AND kan användas i alla fält av typen ”expression”, till exempel åtgärderna COPY, MODVALUE osv.
- Det kombineras vanligtvis med nyckelorden IF eller SWITCH.
Resultat:
- Returnerar ett decimalvärde som motsvarar resultatet av den binära åtgärden ”AND” mellan de två jämförda värdena.
Konfigurationsexempel:
- Exempel:
- <&AND:7:11> ger = 3
- Där 7 har binärvärdet ”111” och 11 har binärvärdet ”1011”
- Resultatet av den binära åtgärden ”AND” mellan 111 och 1011 är lika med 11, alltså decimalvärdet 3.
OR¶
Returnerar 1 (sant) om uttryck 1 eller uttryck 2 är sanna, annars 0.
Funktionens syntax:
<OR:[Expression_1]:[Expression_2]>
Användningssätt:
- Nyckelordet OR kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Det kombineras vanligtvis med nyckelorden IF eller SWITCH.
Konfigurationsexempel:
- Exempel: <IF:<OR:<CMP:<SyncAttSrc:type_personne>:Agent>:<CMP:<SyncAttSrc:person_type >:Employee>>:Agent_comptable:External_accountant>
ORX¶
Returnerar 1 om något av uttrycken i listan är sant, annars 0.
Funktionens syntax:
<ORX:[Expression_1]:[Expression_2]:[Expression_n] >
Användningssätt:
- Nyckelordet ORX kan användas i alla fält av typen ”expression”, till exempel åtgärderna COPY, MODVALUE osv.
- Det kombineras vanligtvis med nyckelorden IF eller SWITCH.
Konfigurationsexempel:
- Exempel: <IF:<ORX:<CMP:<SyncAttSrc:person_type>:Agent>:<CMP:<SyncAttSrc:person_type>:Employee>:<CMP:<SyncAttSrc:person_type>:Internal>>:Agent_interne:External_agent>
&OR¶
Binär åtgärd ”OR” mellan två värden.
Funktionens syntax:
<&OR:[decimal_value_1]:[decimal_value_2]>
Användningssätt:
- Nyckelordet &OR kan användas i alla fält av typen ”expression”, till exempel COPY, MODVALUE osv.
- Det kombineras vanligtvis med nyckelorden IF eller SWITCH.
Resultat:
- Returnerar ett decimalvärde som motsvarar resultatet av den binära åtgärden ”OR” mellan de två jämförda värdena.
Konfigurationsexempel:
- Exempel:
- <&OR:7:11> ger = 15.
- Där 7 har binärvärdet ”111” och 11 har binärvärdet ”1011”.
- Resultatet av den binära åtgärden ”OR” mellan 111 och 1011 är lika med 1111, alltså decimalvärdet 15.
SWITCH¶
Utvärderar uttrycket och jämför det sedan med varje element i listan. Om ett av elementen i listan stämmer (med hänsyn till skiftläge) returneras det tillhörande värdet. Om inget element i listan stämmer med uttrycket och ett element ”default” är definierat, returneras det värde som är kopplat till det elementet.
Funktionens syntax:
<SWITCH:[Expression]:[Searched_value_1],[Returned_value_1]:[Searched_value_2],[Returned_value_2]:[Searched_value_N],[Returned_value_N]:…:[default,value]>
Användningssätt:
- Nyckelordet SWITCH kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Det utvärderade uttrycket kan innehålla nyckelord för att hämta attributvärden, till exempel SyncAttSrc eller SyncAttDst.
Konfigurationsexempel:
- Exempel: <SWITCH:<SyncAttSrc:job_code>:DOC,Doctor:NUR,Nurse:HCA,Healthcare Assistant>
SWITCHI¶
Identiskt med SWITCH men utan hänsyn till skiftläge. Utvärderar uttrycket och jämför det sedan med varje element i listan. Om ett av elementen i listan stämmer (utan hänsyn till skiftläge) returneras det tillhörande värdet. Om inget element i listan stämmer med uttrycket och ett element ”default” är definierat, returneras det värde som är kopplat till det elementet.
Funktionens syntax:
<SWITCHI:[Expression]:[Searched_value_1],[Returned_value_1]:[Searched_value_2],[Returned_value_2]:[Searched_value_N],[Returned_value_N]>
Användningssätt:
- Nyckelordet SWITCHi kan användas i alla fält av typen ”expression”, till exempel åtgärderna COPY, MODVALUE osv.
- Det utvärderade uttrycket kan innehålla nyckelord för att hämta attributvärden, till exempel SyncAttSrc eller SyncAttDst.
Konfigurationsexempel:
- Exempel: <SWITCHi:<SyncAttSrc:job_code>:DOC,Doctor:NUR,Nurse:HCA,Healthcare Assistant>
SWITCH_TABLE¶
Identiskt med SWITCHi, men i stället för att hämtas från listan lagras elementen i en fil som anges av parametern. Utvärderar uttrycket och jämför det sedan med varje element i listan som finns i filen. Om ett av elementen i listan stämmer (utan hänsyn till skiftläge) returneras det tillhörande värdet. Om inget element i listan stämmer med uttrycket och ett element ”default” är definierat, returneras det värde som är kopplat till det elementet.
Funktionens syntax:
<SWITCH_TABLE:[Expression]:[file_path]>
Filens format är följande:
1 2 3 4 | |
Elementen i listan läses i tur och ordning till dess att ett nummer saknas.
Användningssätt:
- Nyckelordet SWITCH_TABLE kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Det utvärderade uttrycket kan innehålla nyckelord för att hämta attributvärden, till exempel SyncAttSrc eller SyncAttDst.
Konfigurationsexempel:
- Exempel:
- Fil:
1 2 3 4
[General] Item1=MED,Médecin Item2=INF,Infirmier ItemX=AID,Aide-Soignant - <SWITCH_TABLE:<SyncAttSrc:job_code>:C:\path\job.txt>
IF¶
Utvärderar uttrycket. Om resultatet är sant (1) returneras det första värdet som resultat, annars returneras det andra.
Funktionens syntax:
<IF:[Expression]:[Result_if_true]:[Result_if_false]>
Användningssätt:
- Nyckelordet IF kan användas i alla fält av typen ”expression”, till exempel i åtgärder av typen COPY, MODVALUE osv.
- Det utvärderade uttrycket kan innehålla nyckelord för att hämta attributvärden, till exempel SyncAttSrc eller SyncAttDst.
Konfigurationsexempel:
- Exempel: <IF:<CMP:<SyncAttSrc:person_type>:Agent>:Agent_interne:External_Agent>
