add other collections

This commit is contained in:
2026-02-18 15:04:39 +01:00
parent 2980a31d86
commit 136dc82ab2
136 changed files with 173569 additions and 0 deletions
@@ -0,0 +1,87 @@
info:
name: Calcolo ripartizione per tipologia persona
type: http
seq: 7
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "22737"
disabled: true
- name: x-ef-request-id
value: "22224"
disabled: true
- name: x-ef-request-id
value: "22744"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"qualificheDocenti": ";Docente;Ricercatore;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
// Copy-pasta your EFTL document below inside the template literals (`)
var eftlDocumentToBeProcessed = String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="arrayCFdocenti" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTI_QUALIFICA_DOCENTE,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="arrayCFaltro" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTI_QUALIFICA_ALTRO,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="totalePersonaleDocente" type="number"][% totalePersonaleDocente = 0; %][/VAR]
[VAR name="totalePersonaleAltro" type="number"][% totalePersonaleAltro = 0; %][/VAR]
[VAR name="ripartizioniNominativiIterable" type="iterable"][SPLIT regex="#"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]
[VAR name="ripartizioniImportiIterable" type="iterable"][SPLIT regex="#"][TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]
[VAR name="ripartizioniCount" type="string"][SIZE_OF varname="ripartizioniNominativiIterable" /][/VAR]
[IF][CONDITION][% ripartizioniCount > 0 %][/CONDITION][THEN]
[VAR name="ripartizioneIdx" type="string"][% ripartizioneIdx = 0; %][/VAR]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[WHILE threshold="99"]
[CONDITION][% ripartizioneIdx < ripartizioniCount %][/CONDITION]
[DO]
[VAR name="personaImporto" type="number"][VALUE_OF varname="ripartizioniImportiIterable" index="ripartizioneIdx" /][/VAR]
[VAR name="personaNominativoIterable" type="iterable"][SPLIT regex=" \(CF: "][VALUE_OF varname="ripartizioniNominativiIterable" index="ripartizioneIdx" /][/SPLIT][/VAR]
[VAR name="personaNominativoRightIterable" type="iterable"][SPLIT regex="\)"][VALUE_OF varname="personaNominativoIterable" index="secondItem" /][/SPLIT][/VAR]
[VAR name="personaCF" type="string"][VALUE_OF varname="personaNominativoRightIterable" index="firstItem" /][/VAR]
[IF]
[CONDITION][CONTAINS varname="arrayCFdocenti" value="personaCF" /][/CONDITION]
[THEN][% totalePersonaleDocente = totalePersonaleDocente + personaImporto; %][/THEN]
[ELSE][% totalePersonaleAltro = totalePersonaleAltro + personaImporto; %][/ELSE]
[/IF]
[% ripartizioneIdx = ripartizioneIdx + 1; %]
[/DO]
[/WHILE]
[/THEN][/IF]
[%= totalePersonaleDocente %]
[%= totalePersonaleAltro %]
[/EFTL]
`;
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);
bru.setVar("elixBase64EftlDocument", base64EncodedDocument);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,128 @@
info:
name: Check richiedente in partecipanti by CodFis
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "21306"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\",\r
\ \"codiciFiscaliAmmessi\": \";XMMPPL74T17E463A;;\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"checkUtentePartecipante\" type=\"string\"][% utentePartecipante = \"Utente non ammesso alla compilazione perché non partecipante al contratto!\"; %][/VAR]\r
[VAR name=\"richiedenteCF\" type=\"string\"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]\r
\r
[VAR name=\"rsProponenteCF\" type=\"string\"][TAG]GETVALUEBYTAG,RSP_CODFIS,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"responsabili\" type=\"string\"][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"partecipanti\" type=\"string\"][TAG]GETVALUEBYTAG,CONTRATTO_PARTECIPANTI,REQUEST,IUQOID[/TAG][/VAR]\r
\r
\r
[!-- Hack for the CONTAIN below... --]\r
[VAR name=\"richiedenteCFcontain\" type=\"string\"][% richiedenteCFcontain = \", CF: \" + richiedenteCF + \", Qualifica: \"; %][/VAR]\r
\r
[!-- Il richiedente non deve essere il RS proponente --]\r
[!-- Il richiedente deve comparire fra i responsabili --]\r
[!-- Il richiedente deve comparire fra i partecipanti --]\r
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]\r
\r
[IF]\r
\ [CONDITION][% richiedenteCF == rsProponenteCF %][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"Il Responsabile Scientifico proponente non deve compilare la DSAN\"; %][/THEN]\r
\ [ELSE IF]\r
\ [CONDITION][CONTAINS varname=\"responsabili\"][VALUE_OF varname=\"richiedenteCFcontain\" /][/CONTAINS][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"1\"; %][/THEN]\r
\ [/ELSE IF]\r
\ [ELSE IF]\r
\ [CONDITION][CONTAINS varname=\"partecipanti\"][VALUE_OF varname=\"richiedenteCFcontain\" /][/CONTAINS][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"2\"; %][/THEN]\r
\ [/ELSE IF]\r
\ [ELSE IF]\r
\ [CONDITION][CONTAINS varname=\"codiciFiscaliAmmessi\"][VALUE_OF varname=\"richiedenteCF\" /][/CONTAINS][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"\"; %][/THEN]\r
\ [/ELSE IF]\r
[/IF]\r
\r
[%= checkUtentePartecipante %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,132 @@
info:
name: Check richiedente in partecipanti
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "21223"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\",\r
\ \"nominativiAmmessi\": \";MAMMI Pier Paolo;;\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"checkUtentePartecipante\" type=\"string\"][% utentePartecipante = \"Utente non ammesso alla compilazione perché non partecipante al contratto!\"; %][/VAR]\r
\r
[VAR name=\"rsProponenteCognome\" type=\"string\"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"rsProponenteNome\" type=\"string\"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"responsabili\" type=\"string\"][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"partecipanti\" type=\"string\"][TAG]GETVALUEBYTAG,CONTRATTO_PARTECIPANTI,REQUEST,IUQOID[/TAG][/VAR]\r
\r
[!-- [VAR name=\"nominativoUtentePlain\" type=\"string\"][TAG]GETVALUEBYTAG,RICHIEDENTE_NOMINATIVO,REQUEST,IUQOID[/TAG][/VAR] --]\r
[VAR name=\"nominativoUtentePlain\" type=\"string\"][% nominativoUtentePlain = \"mammi Pier Paolo\"; %][/VAR]\r
\r
[!-- Hack for the CONTAIN below... --]\r
[VAR name=\"nominativoUtente\" type=\"string\"][% nominativoUtente = \" \" + nominativoUtentePlain + \", CF: \"; %][/VAR]\r
\r
[!-- Il richiedente non deve essere il RS proponente --]\r
[!-- Il richiedente deve comparire fra i responsabili --]\r
[!-- Il richiedente deve comparire fra i partecipanti --]\r
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]\r
\r
[IF]\r
\ [CONDITION][% nominativoUtentePlain == rsProponenteCognome + \" \" + rsProponenteNome %][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"Il Responsabile Scientifico proponente non deve compilare la DSAN\"; %][/THEN]\r
\ [ELSE IF]\r
\ [CONDITION][CONTAINS varname=\"responsabili\"][VALUE_OF varname=\"nominativoUtente\" /][/CONTAINS][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"\"; %][/THEN]\r
\ [/ELSE IF]\r
\ [ELSE IF]\r
\ [CONDITION][CONTAINS varname=\"partecipanti\"][VALUE_OF varname=\"nominativoUtente\" /][/CONTAINS][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"\"; %][/THEN]\r
\ [/ELSE IF]\r
\ [ELSE IF]\r
\ [CONDITION][CONTAINS varname=\"nominativiAmmessi\"][VALUE_OF varname=\"nominativoUtentePlain\" /][/CONTAINS][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"\"; %][/THEN]\r
\ [/ELSE IF]\r
[/IF]\r
\r
[%= checkUtentePartecipante %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,64 @@
info:
name: Codice fiscale ammesso
type: http
seq: 2
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "22224"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"codiciFiscaliAmmessi": ";MMMPPL74T17E463A;;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
// Copy-pasta your EFTL document below inside the template literals (`)
var eftlDocumentToBeProcessed = String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="isRichiedenteInRS" type="string"][% isRichiedenteInRS = "Utente non ammesso alla compilazione perch&eacute; non RS del contratto!"; %][/VAR]
[VAR name="responsabiliScientifici" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="codiceFiscaleUtente" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="codiceFiscaleUtenteDebug" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[% codiceFiscaleUtente = ", CF: " + codiceFiscaleUtente + " "; %]
[IF]
[CONDITION][CONTAINS varname="responsabiliScientifici"][VALUE_OF varname="codiceFiscaleUtente" /][/CONTAINS][/CONDITION]
[THEN][% isRichiedenteInRS = ""; %][/THEN]
[ELSE IF]
[CONDITION][CONTAINS varname="codiciFiscaliAmmessi"][VALUE_OF varname="codiceFiscaleUtenteDebug" /][/CONTAINS][/CONDITION]
[THEN][% isRichiedenteInRS = ""; %][/THEN]
[/ELSE IF]
[/IF]
[%= isRichiedenteInRS %]
[/EFTL]
`;
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);
bru.setVar("elixBase64EftlDocument", base64EncodedDocument);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,118 @@
info:
name: Codici fiscali ripartizioni Simple-minded
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "21223"
disabled: true
- name: x-ef-request-id
value: "21334"
disabled: true
- name: x-ef-request-id
value: "21344"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\",\r
\ \"codiciFiscaliAmmessi\": \";MMMPPL74T17E463A;;\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"checkUtentePartecipante\" type=\"string\"][% utentePartecipante = \"Il richiedente non è ammesso alla compilazione perché non rientra tra le ripartizioni proposte\"; %][/VAR]\r
\r
[VAR name=\"ripartizioniDaProposta\" type=\"string\"][TAG]GETVALUEBYTAG,RIPARTIZIONI,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"rsProponenteCF\" type=\"string\"][TAG]GETVALUEBYTAG,RSP_CODFIS,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"richiedenteCF\" type=\"string\"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"richiedenteCFregex\" type=\"string\"][% richiedenteCFregex = \" (CF: \" + richiedenteCF + \")\"; %][/VAR]\r
\r
[!-- Il richiedente non deve essere il RS proponente --]\r
[!-- Il richiedente deve comparire fra i responsabili --]\r
[!-- Il richiedente deve comparire fra i partecipanti --]\r
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]\r
\r
[IF]\r
\ [CONDITION][% richiedenteCF == rsProponenteCF %][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"Il Responsabile Scientifico proponente non deve compilare la DSAN\"; %][/THEN]\r
\ [ELSE IF]\r
\ [CONDITION][CONTAINS varname=\"ripartizioniDaProposta\"][VALUE_OF varname=\"richiedenteCFregex\" /][/CONTAINS][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"\"; %][/THEN]\r
\ [/ELSE IF]\r
\ [ELSE IF]\r
\ [CONDITION][CONTAINS varname=\"codiciFiscaliAmmessi\"][VALUE_OF varname=\"richiedenteCF\" /][/CONTAINS][/CONDITION]\r
\ [THEN][% checkUtentePartecipante = \"\"; %][/THEN]\r
\ [/ELSE IF]\r
[/IF]\r
\r
[%= checkUtentePartecipante %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,135 @@
info:
name: Codici fiscali ripartizioni
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "21223"
disabled: true
- name: x-ef-request-id
value: "21334"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"ripartizioniIterableWithSep\" type=\"iterable\"][SPLIT regex=\"#\"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]\r
[VAR name=\"ripartizioniCount\" type=\"string\"][SIZE_OF varname=\"ripartizioniIterableWithSep\" /][/VAR]\r
\r
[VAR name=\"ripartizioniJoin\" type=\"string\"][% ripartizioniJoin = \"\"; %][/VAR]\r
\r
[IF][CONDITION][% ripartizioniCount > 0 %][/CONDITION][THEN]\r
\ [VAR name=\"ripartizioneIdx\" type=\"string\"][% ripartizioneIdx = 0; %][/VAR]\r
\ [VAR name=\"firstItem\" type=\"number\"][% firstItem = 0; %][/VAR]\r
\ [VAR name=\"secondItem\" type=\"number\"][% secondItem = 1; %][/VAR]\r
\r
\ [WHILE threshold=\"99\"]\r
\ [CONDITION][% ripartizioneIdx < ripartizioniCount %][/CONDITION]\r
\ [DO]\r
\ [VAR name=\"ripartizioneFull\" type=\"string\"][VALUE_OF varname=\"ripartizioniIterableWithSep\" index=\"ripartizioneIdx\" /][/VAR]\r
\ [VAR name=\"ripartizioneFullIterable\" type=\"iterable\"][SPLIT regex=\" \\(CF: \"][TRIM][VALUE_OF varname=\"ripartizioneFull\" /][/TRIM][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioneCFIterable\" type=\"iterable\"][SPLIT regex=\"\\)\"][VALUE_OF varname=\"ripartizioneFullIterable\" index=\"secondItem\" /][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioneCF\" type=\"string\"][VALUE_OF varname=\"ripartizioneCFIterable\" index=\"firstItem\" /][/VAR]\r
\ [% ripartizioniJoin = ripartizioniJoin + ripartizioneCF; %]\r
\r
\ [% ripartizioneIdx = ripartizioneIdx + 1; %]\r
\r
\ [IF][CONDITION][% ripartizioneIdx < ripartizioniCount %][/CONDITION][THEN]\r
\ [% ripartizioniJoin = ripartizioniJoin + \"#\"; %]\r
\ [/THEN][/IF]\r
\ [/DO]\r
\ [/WHILE]\r
[/THEN][/IF]\r
\r
[!--\r
[%= ripartizioniCount %]\r
[%= crlf %]\r
[%= ripartizioneIdx %]\r
[%= crlf %]\r
[%= \"JOIN: \" ripartizioniJoin %]\r
--]\r
\r
[%= ripartizioniJoin %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,238 @@
info:
name: Elenco contraenti formattati
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "8760"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"docs\": [\r
\ {\r
\ \"name\": \"doc1\",\r
\ \"quantity\": 3,\r
\ \"price\": 123.3\r
\ },\r
\ {\r
\ \"name\": \"doc2\",\r
\ \"quantity\": 5,\r
\ \"price\": 213.3\r
\ },\r
\ {\r
\ \"name\": \"doc3\",\r
\ \"quantity\": 10,\r
\ \"price\": 321.3\r
\ }\r
\ ],\r
\ \"docsAsEntities\": [\r
\ {\r
\ \"eftlEntityType\": \"com.anthesi.elixforms.api.eftl.model.mock.EftlDoc\",\r
\ \"eftlEntity\": {\r
\ \"name\": \"doc1\",\r
\ \"quantity\": 3,\r
\ \"price\": 123.3\r
\ }\r
\ },\r
\ {\r
\ \"eftlEntityType\": \"com.anthesi.elixforms.api.eftl.model.mock.EftlDoc\",\r
\ \"eftlEntity\": {\r
\ \"name\": \"doc2\",\r
\ \"quantity\": 5,\r
\ \"price\": 213.3\r
\ }\r
\ },\r
\ {\r
\ \"eftlEntityType\": \"com.anthesi.elixforms.api.eftl.model.mock.EftlDoc\",\r
\ \"eftlEntity\": {\r
\ \"name\": \"doc3\",\r
\ \"quantity\": 10,\r
\ \"price\": 321.3\r
\ }\r
\ }\r
\ ],\r
\ \"singleEntity\": {\r
\ \"eftlEntityType\": \"com.anthesi.elixforms.api.eftl.model.mock.EftlDoc\",\r
\ \"eftlEntity\": {\r
\ \"name\": \"doc1\",\r
\ \"quantity\": 3,\r
\ \"price\": 123.3\r
\ }\r
\ },\r
\ \"simpleList\": [\r
\ \"s1\",\r
\ \"s2\",\r
\ \"s3\"\r
\ ],\r
\ \"docsSize\": 3\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = `\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"idxNome\" type=\"number\"][% idxNome = 0; %][/VAR]\r
[VAR name=\"idxCfPIva\" type=\"number\"][% idxCfPIva = 1; %][/VAR]\r
[VAR name=\"idxSede\" type=\"number\"][% idxSede = 2; %][/VAR]\r
\r
[VAR name=\"elencoContraentiCompleto\" type=\"string\"][% elencoContraentiCompleto = \"\"; %][/VAR]\r
\r
[VAR name=\"contraenti\" type=\"iterable\"][SPLIT regex=\"\\n\"][TAG]SCHEMAID,341,COL0004,IUQOID, , [/TAG][/SPLIT][/VAR]\r
[VAR name=\"countContraenti\" type=\"number\"][SIZE_OF varname=\"contraenti\" /][/VAR]\r
[VAR name=\"idxContraente\" type=\"number\"][% idxContraente = 0; %][/VAR]\r
\r
[!-- Estraggo i dati del primo contraente (ce ne sarà sempre almeno uno) --]\r
[VAR name=\"currContraente\" type=\"string\"][VALUE_OF varname=\"contraenti\" index=\"idxContraente\" /][/VAR]\r
[VAR name=\"currContraenteSplit\" type=\"iterable\"][SPLIT regex=\", (.*?):\"][TRIM][VALUE_OF varname=\"currContraente\" /][/TRIM][/SPLIT][/VAR]\r
[VAR name=\"currContraenteNome\" type=\"string\"][TRIM][VALUE_OF varname=\"currContraenteSplit\" index=\"idxNome\" /][/TRIM][/VAR]\r
[VAR name=\"currContraenteCfPIva\" type=\"string\"][TRIM][VALUE_OF varname=\"currContraenteSplit\" index=\"idxCfPIva\" /][/TRIM][/VAR]\r
[VAR name=\"currContraenteSede\" type=\"string\"][TRIM][VALUE_OF varname=\"currContraenteSplit\" index=\"idxSede\" /][/TRIM][/VAR]\r
[% elencoContraentiCompleto = currContraenteNome + \" (CF/PIVA: \" + currContraenteCfPIva + \") con sede legale in \" + currContraenteSede; %]\r
\r
[!-- Se c'è più di un contraente, ciclo su tutti i rimanenti (tutto questo per non avere una \", \" in fondo alla stringa finale...) --]\r
[WHILE]\r
\ [CONDITION][% idxContraente < countContraenti - 1 %][/CONDITION]\r
\ [DO]\r
\ [% idxContraente = idxContraente + 1; %]\r
\r
\ [VAR name=\"currContraente\" type=\"string\"][VALUE_OF varname=\"contraenti\" index=\"idxContraente\" /][/VAR]\r
\ [VAR name=\"currContraenteSplit\" type=\"iterable\"][SPLIT regex=\", (.*?):\"][TRIM][VALUE_OF varname=\"currContraente\" /][/TRIM][/SPLIT][/VAR]\r
\ [VAR name=\"currContraenteNome\" type=\"string\"][VALUE_OF varname=\"currContraenteSplit\" index=\"idxNome\" /][/VAR]\r
\ [VAR name=\"currContraenteCfPIva\" type=\"string\"][VALUE_OF varname=\"currContraenteSplit\" index=\"idxCfPIva\" /][/VAR]\r
\ [VAR name=\"currContraenteSede\" type=\"string\"][VALUE_OF varname=\"currContraenteSplit\" index=\"idxSede\" /][/VAR]\r
\ [% elencoContraentiCompleto = elencoContraentiCompleto + \", \" + currContraenteNome + \" (CF/PIVA: \" + currContraenteCfPIva + \") con sede legale in \" + currContraenteSede; %]\r
\ [/DO]\r
[/WHILE]\r
\r
[%= elencoContraentiCompleto %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,246 @@
info:
name: Elenco partecipanti per dropdown con chiave
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "21223"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"newLine\" type=\"string\"][VALUE_OF varname=\"crlf\" /][/VAR]\r
\r
[VAR name=\"responsabili\" type=\"string\"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/TRIM][/VAR]\r
[VAR name=\"partecipanti\" type=\"string\"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_PARTECIPANTI,REQUEST,IUQOID[/TAG][/TRIM][/VAR]\r
\r
[!-- Aggiungi primo elemento \"nullo\" --]\r
[VAR name=\"ripartizioniElenco\" type=\"string\"][% ripartizioniElenco = \"[0] ---\" + newLine; %][/VAR]\r
\r
[VAR name=\"responsabiliIterable\" type=\"iterable\"][SPLIT regex=\"\\n\"][VALUE_OF varname=\"responsabili\" /][/SPLIT][/VAR]\r
[VAR name=\"partecipantiIterable\" type=\"iterable\"][SPLIT regex=\"\\n\"][VALUE_OF varname=\"partecipanti\" /][/SPLIT][/VAR]\r
\r
[VAR name=\"responsabiliCount\" type=\"number\"][SIZE_OF varname=\"responsabiliIterable\" /][/VAR]\r
[VAR name=\"partecipantiCount\" type=\"number\"][SIZE_OF varname=\"partecipantiIterable\" /][/VAR]\r
\r
[VAR name=\"personaIdx\" type=\"string\"][% personaIdx = 0; %][/VAR]\r
[VAR name=\"dropdownIdx\" type=\"string\"][% dropdownIdx = 0; %][/VAR]\r
\r
[VAR name=\"firstItem\" type=\"number\"][% firstItem = 0; %][/VAR]\r
[VAR name=\"secondItem\" type=\"number\"][% secondItem = 1; %][/VAR]\r
\r
[WHILE threshold=\"99\"]\r
\ [CONDITION][% personaIdx < responsabiliCount %][/CONDITION]\r
\ [DO]\r
\ [VAR name=\"responsabileFull\" type=\"string\"][VALUE_OF varname=\"responsabiliIterable\" index=\"personaIdx\" /][/VAR]\r
\ [VAR name=\"responsabileIterable\" type=\"iterable\"][SPLIT regex=\", CF: \"][TRIM][VALUE_OF varname=\"responsabileFull\" /][/TRIM][/SPLIT][/VAR]\r
\r
\ [!-- Recupera il nominativo --]\r
\ [VAR name=\"responsabileNominativo\" type=\"string\"][VALUE_OF varname=\"responsabileIterable\" index=\"firstItem\" /][/VAR]\r
\r
\ [!-- Recupera il codice fiscale --]\r
\ [VAR name=\"responsabileResto\" type=\"string\"][VALUE_OF varname=\"responsabileIterable\" index=\"secondItem\" /][/VAR]\r
\ [VAR name=\"responsabileRestoIterable\" type=\"iterable\"][SPLIT regex=\", Qualifica: \"][VALUE_OF varname=\"responsabileResto\" /][/SPLIT][/VAR]\r
\ [VAR name=\"responsabileCodiceFiscale\" type=\"string\"][VALUE_OF varname=\"responsabileRestoIterable\" index=\"firstItem\" /][/VAR]\r
\r
\ [% personaIdx = personaIdx + 1; %]\r
\ [% dropdownIdx = dropdownIdx + 1; %]\r
\r
\ [!-- HACK ignobile per recuperare il numero che altrimenti verrebbe emesso come \"1.0\", etc... --]\r
\ [VAR name=\"responsabileKeyIterable\" type=\"iterable\"][SPLIT regex=\"\\.\"][% dropdownIdx + \"\" %][/SPLIT][/VAR]\r
\ [VAR name=\"responsabileKey\" type=\"string\"][VALUE_OF varname=\"responsabileKeyIterable\" index=\"firstItem\" /][/VAR]\r
\r
\ [% ripartizioniElenco = ripartizioniElenco + \"[\" + responsabileKey + \"] \" + responsabileNominativo + \" (CF: \" + responsabileCodiceFiscale + \")\"; %]\r
\r
\ [IF]\r
\ [CONDITION][% personaIdx < responsabiliCount %][/CONDITION]\r
\ [THEN]\r
\ [% ripartizioniElenco = ripartizioniElenco + newLine; %]\r
\ [/THEN]\r
\ [ELSE IF]\r
\ [CONDITION][IS_NOT_EMPTY varname=\"partecipanti\" /][/CONDITION]\r
\ [THEN]\r
\ [% ripartizioniElenco = ripartizioniElenco + newLine; %]\r
\ [/THEN]\r
\ [/ELSE IF]\r
\ [/IF]\r
\ [/DO]\r
[/WHILE]\r
\r
[IF][CONDITION][IS_NOT_EMPTY varname=\"partecipanti\" /][/CONDITION][THEN]\r
\ [% personaIdx = 0; %]\r
\ [WHILE threshold=\"99\"]\r
\ [CONDITION][% personaIdx < partecipantiCount %][/CONDITION]\r
\ [DO]\r
\ [VAR name=\"partecipanteFull\" type=\"string\"][VALUE_OF varname=\"partecipantiIterable\" index=\"personaIdx\" /][/VAR]\r
\ [VAR name=\"partecipanteIterable\" type=\"iterable\"][SPLIT regex=\", CF: \"][TRIM][VALUE_OF varname=\"partecipanteFull\" /][/TRIM][/SPLIT][/VAR]\r
\r
\ [!-- Recupera il nominativo --]\r
\ [VAR name=\"partecipanteNominativo\" type=\"string\"][VALUE_OF varname=\"partecipanteIterable\" index=\"firstItem\" /][/VAR]\r
\r
\ [!-- Recupera il codice fiscale --]\r
\ [VAR name=\"partecipanteResto\" type=\"string\"][VALUE_OF varname=\"partecipanteIterable\" index=\"secondItem\" /][/VAR]\r
\ [VAR name=\"partecipanteRestoIterable\" type=\"iterable\"][SPLIT regex=\", Qualifica: \"][VALUE_OF varname=\"partecipanteResto\" /][/SPLIT][/VAR]\r
\ [VAR name=\"partecipanteCodiceFiscale\" type=\"string\"][VALUE_OF varname=\"partecipanteRestoIterable\" index=\"firstItem\" /][/VAR]\r
\r
\ [% personaIdx = personaIdx + 1; %]\r
\ [% dropdownIdx = dropdownIdx + 1; %]\r
\r
\ [!-- HACK ignobile per recuperare il numero che altrimenti verrebbe emesso come \"1.0\", etc... --]\r
\ [VAR name=\"partecipanteKeyIterable\" type=\"iterable\"][SPLIT regex=\"\\.\"][% dropdownIdx + \"\" %][/SPLIT][/VAR]\r
\ [VAR name=\"partecipanteKey\" type=\"string\"][VALUE_OF varname=\"partecipanteKeyIterable\" index=\"firstItem\" /][/VAR]\r
\r
\ [% ripartizioniElenco = ripartizioniElenco + \"[\" + partecipanteKey + \"] \" + partecipanteNominativo + \" (CF: \" + partecipanteCodiceFiscale + \")\"; %]\r
\r
\ [IF]\r
\ [CONDITION][% personaIdx < partecipantiCount %][/CONDITION]\r
\ [THEN]\r
\ [% ripartizioniElenco = ripartizioniElenco + newLine; %]\r
\ [/THEN]\r
\ [/IF]\r
\ [/DO]\r
\ [/WHILE]\r
[/THEN][/IF]\r
\r
[%= ripartizioniElenco %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,142 @@
info:
name: Elenco partecipanti per tabella HTML Copy
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "19758"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL]\r
[VAR name=\"newLine\" type=\"string\"][VALUE_OF varname=\"crlf\" /][/VAR]\r
[VAR name=\"ripartizioniNominativiWithSep\" type=\"string\"][TAG]SCHEMAID,538,COL0005,ID_OBJECT,,#[/TAG][/VAR]\r
[VAR name=\"ripartizioniImportiWithSep\" type=\"string\"][TAG]SCHEMAID,538,COL0002,ID_OBJECT,,#[/TAG][/VAR]\r
<table>\r
<tr><th>Partecipante</th><th>Importo (EUR)</th></tr>\r
[IF][CONDITION][IS_NOT_EMPTY varname=\"ripartizioniNominativiWithSep\" /][/CONDITION][THEN]\r
\ [VAR name=\"ripartizioniNominativiIterable\" type=\"iterable\"][SPLIT regex=\"#\"][VALUE_OF varname=\"ripartizioniNominativiWithSep\" /][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioniImportiIterable\" type=\"iterable\"][SPLIT regex=\"#\"][VALUE_OF varname=\"ripartizioniImportiWithSep\" /][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioniCount\" type=\"number\"][SIZE_OF varname=\"ripartizioniNominativiIterable\" /][/VAR]\r
\ [VAR name=\"ripartizioneIdx\" type=\"string\"][% ripartizioneIdx = 0; %][/VAR]\r
\ [VAR name=\"firstItem\" type=\"number\"][% firstItem = 0; %][/VAR]\r
\ [VAR name=\"secondItem\" type=\"number\"][% secondItem = 1; %][/VAR]\r
\r
\r
\ [FOR varName=\"ripartizione\" iterable=\"ripartizioniNominativiIterable\"]\r
\ [VAR name=\"ripartizioneNominativoFull\" type=\"string\"][VALUE_OF varname=\"ripartizioniNominativiIterable\" index=\"ripartizioneIdx\" /][/VAR]\r
\ [VAR name=\"ripartizioneImporto\" type=\"string\"][VALUE_OF varname=\"ripartizioniImportiIterable\" index=\"ripartizioneIdx\" /][/VAR]\r
\ [VAR name=\"ripartizioneNominativoIterable\" type=\"iterable\"][SPLIT regex=\"] \"][TRIM][VALUE_OF varname=\"ripartizioneNominativoFull\" /][/TRIM][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioneNominativo\" type=\"string\"][VALUE_OF varname=\"ripartizioneNominativoIterable\" index=\"secondItem\" /][/VAR]\r
\ [% ripartizioneIdx = ripartizioneIdx + 1; %]\r
\ [VAR name=\"ripartizioneKeyIterable\" type=\"iterable\"][SPLIT regex=\"\\.\"][% ripartizioneIdx + \"\" %][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioneKey\" type=\"string\"][VALUE_OF varname=\"ripartizioneKeyIterable\" index=\"firstItem\" /][/VAR]\r
\ <tr><td>[VALUE_OF varname=\"ripartizioneNominativo\" /]</td><td>[VALUE_OF varname=\"ripartizioneImporto\" /]</td></tr>\r
\ [/FOR]\r
\r
\ [!--\r
\ [WHILE threshold=\"99\"]\r
\ [CONDITION][% ripartizioneIdx < ripartizioniCount %][/CONDITION]\r
\ [DO]\r
\ [VAR name=\"ripartizioneNominativoFull\" type=\"string\"][VALUE_OF varname=\"ripartizioniNominativiIterable\" index=\"ripartizioneIdx\" /][/VAR]\r
\ [VAR name=\"ripartizioneImporto\" type=\"string\"][VALUE_OF varname=\"ripartizioniImportiIterable\" index=\"ripartizioneIdx\" /][/VAR]\r
\ [VAR name=\"ripartizioneNominativoIterable\" type=\"iterable\"][SPLIT regex=\"] \"][TRIM][VALUE_OF varname=\"ripartizioneNominativoFull\" /][/TRIM][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioneNominativo\" type=\"string\"][VALUE_OF varname=\"ripartizioneNominativoIterable\" index=\"secondItem\" /][/VAR]\r
\ [% ripartizioneIdx = ripartizioneIdx + 1; %]\r
\ [VAR name=\"ripartizioneKeyIterable\" type=\"iterable\"][SPLIT regex=\"\\.\"][% ripartizioneIdx + \"\" %][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioneKey\" type=\"string\"][VALUE_OF varname=\"ripartizioneKeyIterable\" index=\"firstItem\" /][/VAR]\r
<tr><td>[VALUE_OF varname=\"ripartizioneNominativo\" /]</td><td>[VALUE_OF varname=\"ripartizioneImporto\" /]</td></tr>\r
\ [/DO]\r
\ [/WHILE]\r
\ --]\r
[/THEN][/IF]\r
</table>\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,130 @@
info:
name: Elenco partecipanti per tabella HTML
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "19758"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL]\r
[HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"ripartizioniNominativiWithSep\" type=\"string\"][TAG]SCHEMAID,538,COL0005,ID_OBJECT,,#[/TAG][/VAR]\r
[VAR name=\"ripartizioniImportiWithSep\" type=\"string\"][TAG]SCHEMAID,538,COL0002,ID_OBJECT,,#[/TAG][/VAR]\r
[VAR name=\"tabellaRipartizioni\" type=\"string\"][% tabellaRipartizioni = \"<table><tr><th>Partecipante</th><th>Importo (EUR)</th></tr>\"; %][/VAR]\r
\r
[IF][CONDITION][IS_NOT_EMPTY varname=\"ripartizioniNominativiWithSep\" /][/CONDITION][THEN]\r
\ [VAR name=\"ripartizioniNominativiIterable\" type=\"iterable\"][SPLIT regex=\"#\"][VALUE_OF varname=\"ripartizioniNominativiWithSep\" /][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioniImportiIterable\" type=\"iterable\"][SPLIT regex=\"#\"][VALUE_OF varname=\"ripartizioniImportiWithSep\" /][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioniCount\" type=\"number\"][SIZE_OF varname=\"ripartizioniNominativiIterable\" /][/VAR]\r
\ [VAR name=\"ripartizioneIdx\" type=\"string\"][% ripartizioneIdx = 0; %][/VAR]\r
\ [VAR name=\"firstItem\" type=\"number\"][% firstItem = 0; %][/VAR]\r
\ [VAR name=\"secondItem\" type=\"number\"][% secondItem = 1; %][/VAR]\r
\r
\ [WHILE threshold=\"99\"]\r
\ [CONDITION][% ripartizioneIdx != ripartizioniCount %][/CONDITION]\r
\ [DO]\r
\ [VAR name=\"ripartizioneNominativoFull\" type=\"string\"][VALUE_OF varname=\"ripartizioniNominativiIterable\" index=\"ripartizioneIdx\" /][/VAR]\r
\ [VAR name=\"ripartizioneImporto\" type=\"string\"][VALUE_OF varname=\"ripartizioniImportiIterable\" index=\"ripartizioneIdx\" /][/VAR]\r
\r
\ [VAR name=\"ripartizioneNominativoIterable\" type=\"iterable\"][SPLIT regex=\"] \"][TRIM][VALUE_OF varname=\"ripartizioneNominativoFull\" /][/TRIM][/SPLIT][/VAR]\r
\r
\ [!-- Recupera il nominativo --]\r
\ [VAR name=\"ripartizioneNominativo\" type=\"string\"][VALUE_OF varname=\"ripartizioneNominativoIterable\" index=\"secondItem\" /][/VAR]\r
\r
\ [% ripartizioneIdx = ripartizioneIdx + 1; %]\r
\r
\ [!-- HACK ignobile per recuperare il numero che altrimenti verrebbe emesso come \"1.0\", etc... --]\r
\ [VAR name=\"ripartizioneKeyIterable\" type=\"iterable\"][SPLIT regex=\"\\.\"][% ripartizioneIdx + \"\" %][/SPLIT][/VAR]\r
\ [VAR name=\"ripartizioneKey\" type=\"string\"][VALUE_OF varname=\"ripartizioneKeyIterable\" index=\"firstItem\" /][/VAR]\r
\r
\ [% tabellaRipartizioni = tabellaRipartizioni + \"<tr><td>\" + ripartizioneNominativo + \"</td><td>\" + ripartizioneImporto + \"</td></tr>\"; %]\r
\ [/DO]\r
\ [/WHILE]\r
[/THEN][/IF]\r
[% tabellaRipartizioni = tabellaRipartizioni + \"</table>\"; %]\r
[%= tabellaRipartizioni %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,104 @@
info:
name: Elenco partecipanti per tendina
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "19375"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"elencoPartecipantiDebug\" type=\"string\"][% elencoPartecipantiDebug = \"\"; %][/VAR]\r
[VAR name=\"elencoPartecipantiCompleto\" type=\"string\"][% elencoContraentiCompleto = \"\"; %][/VAR]\r
[VAR name=\"partecipanti\" type=\"string\"][TRIM][TAG]SCHEMAID,542,COL0018,IUQOID, , [/TAG][/TRIM][/VAR]\r
[%= \"\" %]\r
[IF][CONDITION][IS_NOT_EMPTY varname=\"partecipanti\" /][/CONDITION][THEN]\r
[VAR name=\"partecipantiSplit\" type=\"iterable\"][SPLIT regex=\"\\n\"][VALUE_OF varname=\"partecipanti\" /][/SPLIT][/VAR]\r
[VAR name=\"partecipantiCount\" type=\"number\"][SIZE_OF varname=\"partecipantiSplit\" /][/VAR]\r
[VAR name=\"partecipanteIdx\" type=\"number\"][% partecipanteIdx = 0; %][/VAR]\r
[VAR name=\"partecipanteNominativoIdx\" type=\"number\"][% partecipanteNominativoIdx = 0; %][/VAR]\r
[VAR name=\"partecipanteRestoIdx\" type=\"number\"][% partecipanteRestoIdx = 1; %][/VAR]\r
[WHILE threshold=\"99\"][CONDITION][% partecipanteIdx < partecipantiCount %][/CONDITION][DO]\r
[VAR name=\"partecipanteFull\" type=\"string\"][VALUE_OF varname=\"partecipantiSplit\" index=\"partecipanteIdx\" /][/VAR]\r
[VAR name=\"partecipanteSplit\" type=\"iterable\"][SPLIT regex=\", CF: \"][TRIM][VALUE_OF varname=\"partecipanteFull\" /][/TRIM][/SPLIT][/VAR]\r
[!-- Recupera il nominativo --]\r
[VAR name=\"partecipanteNominativo\" type=\"string\"][VALUE_OF varname=\"partecipanteSplit\" index=\"partecipanteNominativoIdx\" /][/VAR]\r
[!-- Recupera il codice fiscale --]\r
[VAR name=\"partecipanteResto\" type=\"string\"][VALUE_OF varname=\"partecipanteSplit\" index=\"partecipanteRestoIdx\" /][/VAR]\r
[VAR name=\"partecipanteRestoSplit\" type=\"iterable\"][SPLIT regex=\", Qualifica: \"][VALUE_OF varname=\"partecipanteResto\" /][/SPLIT][/VAR]\r
[VAR name=\"partecipanteCodiceFiscale\" type=\"string\"][VALUE_OF varname=\"partecipanteRestoSplit\" index=\"partecipanteNominativoIdx\" /][/VAR]\r
[%= \"[\" %][FORMAT type=\"number\" pattern=\"integer\"][% partecipanteIdx + 1 %][/FORMAT][%= \"] \" + partecipanteNominativo + \" (CF: \" + partecipanteCodiceFiscale + \")\" %]\r
[% partecipanteIdx = partecipanteIdx + 1; %]\r
[/DO][/WHILE]\r
[/THEN][/IF]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,67 @@
info:
name: Numero partecipanti meno RS (se c'è)
type: http
seq: 7
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "22737"
disabled: true
- name: x-ef-request-id
value: "22224"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
// Copy-pasta your EFTL document below inside the template literals (`)
var eftlDocumentToBeProcessed = String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="newline"][% newline = ""; %][/VAR]
[VAR name="codiceFiscaleProponente"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[% codiceFiscaleProponente = "SPGNDR67C24A944V"; %]
[VAR name="ripartizioniConcat" type="string"][TRIM][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,CONCAT,#[/TAG][/TRIM][/VAR]
[VAR name="ripartizioniIterable" type="iterable"][SPLIT regex="#"][VALUE_OF varname="ripartizioniConcat" /][/SPLIT][/VAR]
[VAR name="ripartizioniCount" type="string"][SIZE_OF varname="ripartizioniIterable" /][/VAR]
[IF]
[CONDITION][CONTAINS varname="ripartizioniConcat" value="codiceFiscaleProponente" /][/CONDITION]
[THEN][% ripartizioniCount = ripartizioniCount - 1; %][/THEN]
[/IF]
[%= ripartizioniConcat %]
[%= newline %]
[%= codiceFiscaleProponente %]
[%= newline %]
[%= ripartizioniCount %]
[/EFTL]
`;
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);
bru.setVar("elixBase64EftlDocument", base64EncodedDocument);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,66 @@
info:
name: Numero ripartizioni da form partecipanti
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "19758"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"ripartizioniIterable\" type=\"iterable\"][SPLIT regex=\"#\"][TAG]SCHEMAID,538,COL0005,ID_OBJECT,,#[/TAG][/SPLIT][/VAR]\r
[VAR name=\"ripartizioniCount\" type=\"string\"][SIZE_OF varname=\"ripartizioniIterable\" /][/VAR]\r
\r
[%= ripartizioniCount %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,88 @@
info:
name: Partecipanti per Qualifica
type: http
seq: 2
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "22085"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"qualificheDocenti": ";Docente;Ricercatore;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
// Copy-pasta your EFTL document below inside the template literals (`)
var eftlDocumentToBeProcessed = String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[!-- Must be defined in EftlSolver attribute! --]
[VAR name="newLine" type="string"][VALUE_OF varname="crlf" /][/VAR]
[VAR name="qualificheDocentiIterable" type="iterable"][SPLIT regex=";"][VALUE_OF varname="qualificheDocenti" /][/SPLIT][/VAR]
[VAR name="responsabiliScientifici" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="partecipanti" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_PARTECIPANTI,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="soggettiIterable" type="iterable"][SPLIT regex="\n"][% responsabiliScientifici + newLine + partecipanti %][/SPLIT][/VAR]
[VAR name="elencoCodFisPersonaleDocente" type="string"][% elencoCodFisPersonaleDocente = ";"; %]][/VAR]
[VAR name="elencoCodFisPersonaleAltro" type="string"][% elencoCodFisPersonaleAltro = ";"; %]][/VAR]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[FOR varname="persona" iterable="soggettiIterable"]
[!-- Estraggo il Codice Fiscale --]
[VAR name="personaIterable" type="iterable"][SPLIT regex=", CF: "][TRIM][VALUE_OF varname="persona" /][/TRIM][/SPLIT][/VAR]
[VAR name="personaRight" type="string"][VALUE_OF varname="personaIterable" index="secondItem" /][/VAR]
[VAR name="personaIterable" type="iterable"][SPLIT regex=", Qualifica: "][TRIM][VALUE_OF varname="personaRight" /][/TRIM][/SPLIT][/VAR]
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="personaIterable" index="firstItem" /][/VAR]
[!-- Estraggo la Qualifica --]
[VAR name="personaRight" type="string"][VALUE_OF varname="personaIterable" index="secondItem" /][/VAR]
[VAR name="personaIterable" type="iterable"][SPLIT regex=", Struttura di afferenza: "][TRIM][VALUE_OF varname="personaRight" /][/TRIM][/SPLIT][/VAR]
[VAR name="qualifica" type="string"][VALUE_OF varname="personaIterable" index="firstItem" /][/VAR]
[IF]
[CONDITION][CONTAINS varname="qualificheDocentiIterable" value="qualifica" /][/CONDITION]
[THEN][% elencoCodFisPersonaleDocente = elencoCodFisPersonaleDocente + codiceFiscale + ";"; %][/THEN]
[ELSE][% elencoCodFisPersonaleAltro = elencoCodFisPersonaleAltro + codiceFiscale + ";"; %][/ELSE]
[/IF]
[/FOR]
[%= "Docenti: " elencoCodFisPersonaleDocente %]
[%= newLine %]
[%= "Altro: " elencoCodFisPersonaleAltro %]
[%= newLine %]
[%= newLine %]
[%= responsabiliScientifici + newLine + partecipanti %]
[/EFTL]
`;
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);
bru.setVar("elixBase64EftlDocument", base64EncodedDocument);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,66 @@
info:
name: RS proponente completo (multipli)
type: http
seq: 4
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "19758"
body:
type: json
data: "{\r
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
\ \"userContext\": {\r
\ \"lang\": \"IT\",\r
\ \"crlf\": \"\\r\\n\"\r
\ }\r
}"
auth: inherit
runtime:
scripts:
- type: before-request
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
var eftlDocumentToBeProcessed = String.raw`\r
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
[VAR name=\"rspTitolo\" type=\"string\"][TAG]GETVALUEBYTAG,RSP_TITOLO,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"rspCognome\" type=\"string\"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,IUQOID[/TAG][/VAR]\r
[VAR name=\"rspNome\" type=\"string\"][TAG]GETVALUEBYTAG,RSP_NOME,REQUEST,IUQOID[/TAG][/VAR]\r
[%= rspTitolo + \" \" + rspCognome + \" \" rspNome %]\r
[/EFTL]\r
`;\r
\r
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
\r
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,7 @@
info:
name: CCT - Liquidazione Compensi
type: folder
seq: 3
request:
auth: inherit