cleanup Liquidazione requests

This commit is contained in:
2026-06-18 13:21:47 +02:00
parent 61936a8242
commit 7988384d0d
52 changed files with 585 additions and 940 deletions
@@ -1,7 +1,7 @@
info:
name: Get year from date
name: Anno corrente
type: http
seq: 6
seq: 5
http:
method: POST
@@ -1,114 +0,0 @@
info:
name: Calcolo dinamico ore equivalenti
type: http
seq: 1
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: "24829"
disabled: true
- name: x-ef-request-id
value: "29825"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"fattoreDivisioneImporto": 1500,
"IS_OP": "OP0",
"IS_CO": "CO0",
"IS_FU": "FU0",
"IS_EP": "EP0",
"OP": 0.0431,
"CO": 0.0405,
"FU": 0.0350,
"EP": 0.0307
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="inquadramentoRichiedente" type="string"][TAG]GETVALUEBYTAG,INQUADRAMENTO_DIPENDENTE,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="codiceFiscaleRichiedente" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="ripartizioniIterable" type="iterable"][SPLIT regex="#"][TAG]GETVALUEBYTAG,COPPIE_RIPARTIZIONI,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[VAR name="importoRichiedente" type="number"][% importoRichiedente = 0; %][/VAR]
[VAR name="fattoreConversione" type="number"][% fattoreConversione = OP; %][/VAR]
[FOR varname="coppia" iterable="ripartizioniIterable"]
[VAR name="coppiaIterable" type="iterable"][SPLIT regex=":"][VALUE_OF varname="coppia" /][/SPLIT][/VAR]
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="coppiaIterable" index="firstItem" /][/VAR]
[VAR name="importo" type="number"][VALUE_OF varname="coppiaIterable" index="secondItem" /][/VAR]
[IF]
[CONDITION][% codiceFiscale == codiceFiscaleRichiedente %][/CONDITION]
[THEN][% importoRichiedente = importo; %][/THEN]
[/IF]
[/FOR]
[!--
inquadramentoRichiedente: [%= inquadramentoRichiedente %]
codiceFiscaleRichiedente: [%= codiceFiscaleRichiedente %]
importoRichiedente: [%= importoRichiedente %]
fattoreDivisioneImporto: [%= fattoreDivisioneImporto %]
--]
[IF]
[CONDITION][CONTAINS varname="IS_OP"][% inquadramentoRichiedente %][/CONTAINS][/CONDITION]
[THEN][% fattoreConversione = OP; %][/THEN]
[ELSE IF]
[CONDITION][CONTAINS varname="IS_CO"][% inquadramentoRichiedente %][/CONTAINS][/CONDITION]
[THEN][% fattoreConversione = CO; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="IS_FU"][% inquadramentoRichiedente %][/CONTAINS][/CONDITION]
[THEN][% fattoreConversione = FU; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="IS_EP"][% inquadramentoRichiedente %][/CONTAINS][/CONDITION]
[THEN][% fattoreConversione = EP; %][/THEN]
[/ELSE IF]
[/IF]
[!--
fattoreConversione: [%= fattoreConversione %]
[%= crlf %]
--]
[VAR name="oreEquivalenti" type="number"][% oreEquivalenti = (importoRichiedente * fattoreConversione); %][/VAR]
[%= oreEquivalenti %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,72 +0,0 @@
info:
name: Calcolo ore equivalenti
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: "22737"
disabled: true
- name: x-ef-request-id
value: "22224"
disabled: true
- name: x-ef-request-id
value: "24829"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"useTestCF": false
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="codiceFiscaleRichiedente" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="ripartizioniIterable" type="iterable"][SPLIT regex="#"][TAG]GETVALUEBYTAG,COPPIE_RIPARTIZIONI,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[VAR name="importoRichiedente" type="number"][% importoRichiedente = 0; %][/VAR]
[FOR varname="coppia" iterable="ripartizioniIterable"]
[VAR name="coppiaiIterable" type="iterable"][SPLIT regex=":"][VALUE_OF varname="coppia" /][/SPLIT][/VAR]
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="coppiaiIterable" index="firstItem" /][/VAR]
[VAR name="importo" type="number"][VALUE_OF varname="coppiaiIterable" index="secondItem" /][/VAR]
[IF]
[CONDITION][% codiceFiscale == codiceFiscaleRichiedente %][/CONDITION]
[THEN][% importoRichiedente = importo; %][/THEN]
[/IF]
[/FOR]
[VAR name="fattore" type="number"][TAG]SCHEMAID,709,COL0120,IUQOID, , ,,0.00000[/TAG][/VAR]
[FORMAT type="number" pattern="integer"][% importoRichiedente * fattore %][/FORMAT]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,78 +0,0 @@
info:
name: Check richiedente in partecipanti by CodFis
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: "21306"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"codiciFiscaliAmmessi": ";XMMPPL74T17E463A;;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="checkUtentePartecipante" type="string"][% utentePartecipante = "Utente non ammesso alla compilazione perché non partecipante al contratto!"; %][/VAR]
[VAR name="richiedenteCF" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="rsProponenteCF" type="string"][TAG]GETVALUEBYTAG,RSP_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="responsabili" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="partecipanti" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_PARTECIPANTI,REQUEST,IUQOID[/TAG][/VAR]
[!-- Hack for the CONTAIN below... --]
[VAR name="richiedenteCFcontain" type="string"][% richiedenteCFcontain = ", CF: " + richiedenteCF + ", Qualifica: "; %][/VAR]
[!-- Il richiedente non deve essere il RS proponente --]
[!-- Il richiedente deve comparire fra i responsabili --]
[!-- Il richiedente deve comparire fra i partecipanti --]
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]
[IF]
[CONDITION][% richiedenteCF == rsProponenteCF %][/CONDITION]
[THEN][% checkUtentePartecipante = "Il Responsabile Scientifico proponente non deve compilare la DSAN"; %][/THEN]
[ELSE IF]
[CONDITION][CONTAINS varname="responsabili"][VALUE_OF varname="richiedenteCFcontain" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = "1"; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="partecipanti"][VALUE_OF varname="richiedenteCFcontain" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = "2"; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="codiciFiscaliAmmessi"][VALUE_OF varname="richiedenteCF" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[/IF]
[%= checkUtentePartecipante %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,80 +0,0 @@
info:
name: Check richiedente in partecipanti
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: "21223"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"nominativiAmmessi": ";MAMMI Pier Paolo;;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="checkUtentePartecipante" type="string"][% utentePartecipante = "Utente non ammesso alla compilazione perché non partecipante al contratto!"; %][/VAR]
[VAR name="rsProponenteCognome" type="string"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="rsProponenteNome" type="string"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="responsabili" 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="nominativoUtentePlain" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_NOMINATIVO,REQUEST,IUQOID[/TAG][/VAR] --]
[VAR name="nominativoUtentePlain" type="string"][% nominativoUtentePlain = "mammi Pier Paolo"; %][/VAR]
[!-- Hack for the CONTAIN below... --]
[VAR name="nominativoUtente" type="string"][% nominativoUtente = " " + nominativoUtentePlain + ", CF: "; %][/VAR]
[!-- Il richiedente non deve essere il RS proponente --]
[!-- Il richiedente deve comparire fra i responsabili --]
[!-- Il richiedente deve comparire fra i partecipanti --]
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]
[IF]
[CONDITION][% nominativoUtentePlain == rsProponenteCognome + " " + rsProponenteNome %][/CONDITION]
[THEN][% checkUtentePartecipante = "Il Responsabile Scientifico proponente non deve compilare la DSAN"; %][/THEN]
[ELSE IF]
[CONDITION][CONTAINS varname="responsabili"][VALUE_OF varname="nominativoUtente" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="partecipanti"][VALUE_OF varname="nominativoUtente" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="nominativiAmmessi"][VALUE_OF varname="nominativoUtentePlain" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[/IF]
[%= checkUtentePartecipante %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,50 @@
info:
name: Inserimento Ore Dentro - Calcolo importo equivalente
type: http
seq: 10
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: "30661"
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: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="importoAssegnato" type="number"][TAG]SCHEMAID,709,COL0118,IUQOID, ,,,0.00[/TAG][/VAR]
[VAR name="oreTotali" type="number"][TAG]SCHEMAID,709,COL0119,IUQOID, ,,,0[/TAG][/VAR]
[VAR name="oreAttivita" type="number"][TAG]GETVALUEBYTAG,ATTIVITA_ORE;ORE_DENTRO_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="importoProporzionato" type="number"][% importoProporzionato = (importoAssegnato * oreAttivita) / oreTotali; %][/VAR]
[FORMAT type="number" pattern="0.00"][% importoProporzionato %][/FORMAT]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: CSV attività per export
name: Inserimento Ore Dentro - Dati attività CSV
type: http
seq: 5
seq: 11
http:
method: POST
@@ -20,8 +20,7 @@ http:
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"useTestCF": false
"crlf": "\r\n"
}
}
auth: inherit
@@ -1,7 +1,7 @@
info:
name: Calcolo importo in orario proporzionale
name: Inserimento Ore Fuori - Calcolo importo equivalente
type: http
seq: 2
seq: 12
http:
method: POST
@@ -20,8 +20,7 @@ http:
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"useTestCF": false
"crlf": "\r\n"
}
}
auth: inherit
@@ -36,7 +35,7 @@ runtime:
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="importoAssegnato" type="number"][TAG]SCHEMAID,709,COL0118,IUQOID, ,,,0.00[/TAG][/VAR]
[VAR name="oreTotali" type="number"][TAG]SCHEMAID,709,COL0119,IUQOID, ,,,0[/TAG][/VAR]
[VAR name="oreAttivita" type="number"][TAG]GETVALUEBYTAG,ATTIVITA_ORE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="oreAttivita" type="number"][TAG]GETVALUEBYTAG,ATTIVITA_ORE;ORE_FUORI_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="importoProporzionato" type="number"][% importoProporzionato = (importoAssegnato * oreAttivita) / oreTotali; %][/VAR]
@@ -0,0 +1,52 @@
info:
name: Inserimento Ore Fuori - Dati attività CSV copy
type: http
seq: 13
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: "31470"
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: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="importoAssegnato" type="number"][TAG]SCHEMAID,709,COL0118,IUQOID, ,,,0.00[/TAG][/VAR]
[VAR name="oreTotali" type="number"][TAG]SCHEMAID,709,COL0119,IUQOID, ,,,0[/TAG][/VAR]
[VAR name="anno" type="string"][TAG]GETVALUEBYTAG,ATTIVITA_ANNO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="ore" type="string"][TAG]GETVALUEBYTAG,ATTIVITA_ORE;ORE_FUORI_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="importoProporzionato" type="number"][% importoProporzionato = (importoAssegnato * ore) / oreTotali; %][/VAR]
[%= anno %];[%= ore %];[FORMAT type="number" pattern="0.00"][% importoProporzionato %][/FORMAT]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Calcolo limiti ore e altro
name: Limiti - Calcolo MIN ore dentro orario
type: http
seq: 3
seq: 6
http:
method: POST
@@ -20,8 +20,7 @@ http:
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"useTestCF": false
"crlf": "\r\n"
}
}
auth: inherit
@@ -1,7 +1,7 @@
info:
name: Calcolo ore IN o OUT servizio
name: Limiti - Calcolo MIN ore fuori orario
type: http
seq: 4
seq: 7
http:
method: POST
@@ -12,7 +12,7 @@ http:
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "24829"
value: "31418"
body:
type: json
data: |-
@@ -33,21 +33,18 @@ runtime:
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="tipoAttivita" type="string"][TAG]GETVALUEBYTAG,ATTIVITA_TIPO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="oreAttivita" type="string"][TAG]GETVALUEBYTAG,ATTIVITA_ORE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="percentualePartTime" type="number"][TAG]GETVALUEBYTAG,DIPENDENTE_PERC_PARTTIME,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="oreEquivalenti" type="number"][TAG]GETVALUEBYTAG,ORE_RIPARTIZIONE_ASSEGNATA,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="maxOre" type="number"][TAG]GETVALUEBYTAG,MAX_ORE_FUORI_ORARIO,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="oreOrarioIn" type="string"][% oreOrarioIn = "0"; %][/VAR]
[VAR name="oreOrarioOut" type="string"][% oreOrarioOut = "0"; %][/VAR]
[VAR name="limiteOre" type="number"][% limiteOre = (percentualePartTime * maxOre); %][/VAR]
[IF]
[CONDITION][% tipoAttivita == "in orario di lavoro" %][/CONDITION]
[THEN][% oreOrarioIn = oreAttivita; %][/THEN]
[ELSE][% oreOrarioOut = oreAttivita; %][/ELSE]
[CONDITION][% limiteOre > oreEquivalenti %][/CONDITION]
[THEN][% limiteOre = oreEquivalenti; %][/THEN]
[/IF]
[%= oreOrarioIn %]
[%= crlf %]
[%= oreOrarioOut %]
[FORMAT type="number" pattern="integer"][% limiteOre %][/FORMAT]
[/EFTL]
`);
@@ -0,0 +1,55 @@
info:
name: Limiti - Indicazione MAX annuale ore dentro orario
type: http
seq: 8
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: "30661"
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: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="percentualePartTime" type="number"][TAG]GETVALUEBYTAG,DIPENDENTE_PERC_PARTTIME,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="oreEquivalenti" type="number"][TAG]GETVALUEBYTAG,ORE_RIPARTIZIONE_ASSEGNATA,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="maxOre" type="number"][TAG]GETVALUEBYTAG,MAX_ORE_DENTRO_ORARIO,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="limiteOre" type="number"][% limiteOre = (percentualePartTime * maxOre); %][/VAR]
[IF]
[CONDITION][% limiteOre > oreEquivalenti %][/CONDITION]
[THEN][% limiteOre = oreEquivalenti; %][/THEN]
[/IF]
In base al proprio inquadramento, il limite annuale di ore di attività svolte dentro l'orario di lavoro è pari a [FORMAT type="number" pattern="integer"][% limiteOre %][/FORMAT]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,55 @@
info:
name: Limiti - Indicazione MAX annuale ore fuori orario
type: http
seq: 9
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: "30661"
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: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="percentualePartTime" type="number"][TAG]GETVALUEBYTAG,DIPENDENTE_PERC_PARTTIME,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="oreEquivalenti" type="number"][TAG]GETVALUEBYTAG,ORE_RIPARTIZIONE_ASSEGNATA,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="maxOre" type="number"][TAG]GETVALUEBYTAG,MAX_ORE_FUORI_ORARIO,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="limiteOre" type="number"][% limiteOre = (percentualePartTime * maxOre); %][/VAR]
[IF]
[CONDITION][% limiteOre > oreEquivalenti %][/CONDITION]
[THEN][% limiteOre = oreEquivalenti; %][/THEN]
[/IF]
In base al proprio inquadramento, il limite annuale di ore di attività svolte fuori dall'orario di lavoro è pari a [FORMAT type="number" pattern="integer"][% limiteOre %][/FORMAT]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,88 +0,0 @@
info:
name: Nuovo check richiedente DSAN
type: http
seq: 8
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: "24281"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"codiciFiscaliAmmessi": ";MMMPPL74T17E463A;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
// Copy-pasta your EFTL document below inside the template literals (`)
var eftlDocumentToBeProcessed = bru.setVar("elixBase64EftlDocument", btoa(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="checkUtentePartecipante" type="string"][% utentePartecipante = "Il richiedente non è ammesso alla compilazione perché non partecipa alle ripartizioni"; %][/VAR]
[VAR name="richiedenteCF" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="richiedentePropostaCF" type="string"][TAG]GETVALUEBYTAG,PROPOSTA_RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="coppieRipartizioniProposta" type="string"][TAG]GETVALUEBYTAG,COPPIE_RIPARTIZIONI,REQUEST,IUQOID,CONCAT,#[/TAG][/VAR]
[VAR name="exitIf" type="boolean"][% exitIf = false; %][/VAR]
[!-- Il richiedente non deve essere il RS che ha presentato la Proposta --]
[!-- Il richiedente deve comparire fra le ripartizioni --]
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]
[IF]
[CONDITION][IS_EMPTY varname="richiedenteCF" /][/CONDITION]
[THEN][% checkUtentePartecipante = "Nessun richiedente trovato"; exitIf = true; %][/THEN]
[/IF]
[IF]
[CONDITION][% exitIf == false %][/CONDITION]
[THEN]
[IF]
[CONDITION][% richiedenteCF == richiedentePropostaCF %][/CONDITION]
[THEN][% checkUtentePartecipante = "Il Responsabile Scientifico proponente della Proposta non deve compilare la DSAN"; exitIf = true; %][/THEN]
[/IF]
[/THEN]
[/IF]
[IF]
[CONDITION][% exitIf == false %][/CONDITION]
[THEN]
[IF]
[CONDITION][CONTAINS varname="coppieRipartizioniProposta"][VALUE_OF varname="richiedenteCF" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = "trovato in coppie"; exitIf = true; %][/THEN]
[/IF]
[/THEN]
[/IF]
[IF]
[CONDITION][% exitIf == false %][/CONDITION]
[THEN]
[IF]
[CONDITION][CONTAINS varname="codiciFiscaliAmmessi"][VALUE_OF varname="richiedenteCF" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = "trovato in CF ammessi"; exitIf = true; %][/THEN]
[/IF]
[/THEN]
[/IF]
[%= checkUtentePartecipante %]
[/EFTL]
`));
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Ore richiedente da Proposta ADVANCED
name: Richiedente - Calcolo ore equivalenti
type: http
seq: 10
seq: 4
http:
method: POST
@@ -21,15 +21,14 @@ http:
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"IS_OP": "OP0",
"IS_CO": "CO0",
"IS_FU": "FU0",
"IS_EP": "EP0",
"IS_OP": "OP0;OP1;OP2;OP3;OP4;OP5;OP6;OP7;OP8",
"IS_CO": "CO0;CO1;CO2;CO3;CO4;CO5;CO6;CO7;CO8",
"IS_FU": "FU0;FU1;FU2;FU3;FU4;FU5;FU6;FU7;FU8",
"IS_EP": "EL0;EP0;EP1;EP2;EP3;EP4;EP5;EP6;EP7;EP8",
"OP": 0.0431,
"CO": 0.0405,
"FU": 0.0350,
"EP": 0.0307,
"useTestCF": false
"EP": 0.0307
}
}
auth: inherit
@@ -1,7 +1,7 @@
info:
name: Richiedente ammesso ADVANCED
name: Richiedente - Check ammesso compilazione
type: http
seq: 11
seq: 2
http:
method: POST
@@ -12,7 +12,7 @@ http:
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "31555"
value: "24281"
body:
type: json
data: |-
@@ -21,7 +21,7 @@ http:
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"useTestCF": false
"codiciFiscaliAmmessi": ";;MMMPPL74T17E463A;;"
}
}
auth: inherit
@@ -30,9 +30,8 @@ runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
var eftlDocumentToBeProcessed = bru.setVar("elixBase64EftlDocument", btoa(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="checkUtentePartecipante" type="string"][% checkUtentePartecipante = "Il richiedente non è ammesso alla compilazione perché non partecipa alle ripartizioni"; %][/VAR]
[VAR name="richiedenteCF" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
@@ -63,14 +62,10 @@ runtime:
[%= checkUtentePartecipante %]
[/EFTL]
`);
`));
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
docs: |-
SchemaId 709
Campo COL0118
@@ -1,7 +1,7 @@
info:
name: Check richiedente Personale Docente
name: Richiedente - Check ruolo per compilazione
type: http
seq: 28
seq: 1
http:
method: POST
@@ -12,7 +12,7 @@ http:
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "29825"
value: "24281"
body:
type: json
data: |-
@@ -21,7 +21,7 @@ http:
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"codiciRuoloPersonaleDocente": ";PA;PO;PD;RU;"
"codiciRuoloPersonaleDocente": ";PA;PO;PD;RU;PF;"
}
}
auth: inherit
@@ -42,8 +42,7 @@ runtime:
[THEN][% checkPersonaleDocente = "Il personale docente non deve inserire le ore di attività"; %][/THEN]
[/IF]
Ruolo: [%= richiedenteRuolo %]
Check: [%= checkPersonaleDocente %]
[%= checkPersonaleDocente %]
[/EFTL]
`));
@@ -1,7 +1,7 @@
info:
name: Importo richiedente da Proposta ADVANCED
name: Richiedente - Importo ripartizione da Proposta
type: http
seq: 9
seq: 3
http:
method: POST
@@ -20,8 +20,7 @@ http:
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"useTestCF": false
"crlf": "\r\n"
}
}
auth: inherit
@@ -1,81 +0,0 @@
info:
name: Calcolo importo per singolo partecipante
type: http
seq: 1
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"
disabled: true
- name: x-ef-request-id
value: "23258"
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: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(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="importoDocente" type="number"][% importoDocente = 0; %][/VAR]
[VAR name="importoAltro" type="number"][% importoAltro = 0; %][/VAR]
[VAR name="lastUpdatedNominativo" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="lastUpdatedImporto" type="string"][TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[VAR name="lastUpdatedNominativoIterable" type="iterable"][SPLIT regex=" \(CF: "][VALUE_OF varname="lastUpdatedNominativo" /][/SPLIT][/VAR]
[VAR name="lastUpdatedNominativoRightIterable" type="iterable"][SPLIT regex=", Qualifica: "][VALUE_OF varname="lastUpdatedNominativoIterable" index="secondItem" /][/SPLIT][/VAR]
[VAR name="lastUpdatedNominativoCF" type="string"][VALUE_OF varname="lastUpdatedNominativoRightIterable" index="firstItem" /][/VAR]
[IF]
[CONDITION][CONTAINS varname="arrayCFdocenti" value="lastUpdatedNominativoCF" /][/CONDITION]
[THEN][% importoDocente = lastUpdatedImporto; %][/THEN]
[ELSE][% importoAltro = lastUpdatedImporto; %][/ELSE]
[/IF]
[TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,,,"#,###.00"[/TAG]
[%= crlf %]
[TAG]SCHEMAID,717,COL0010,IUQOID, , ,,"#,###.00"[/TAG]
[%= crlf %]
[%= importoDocente %]
[%= crlf %]
[%= importoAltro %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,102 +0,0 @@
info:
name: Calcolo ripartizione per tipologia persona
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: "22737"
disabled: true
- name: x-ef-request-id
value: "22224"
disabled: true
- name: x-ef-request-id
value: "22744"
disabled: true
- name: x-ef-request-id
value: "23258"
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: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(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=", Qualifica: "][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]
[!--
NOM: [VALUE_OF varname="ripartizioniNominativiIterable" /]
[%= crlf %]
IMP: [VALUE_OF varname="ripartizioniImportiIterable" /]
[%= crlf %]
--]
DOC: [FORMAT type="number" pattern="0.00"][% totalePersonaleDocente %][/FORMAT]
[%= crlf %]
PTA: [FORMAT type="number" pattern="0.00"][% totalePersonaleAltro %][/FORMAT]
[!--
PART_CONCAT: [TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,CONCAT,#[/TAG]
IMPR_CONCAT: [TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,CONCAT,#[/TAG]
[%= crlf %]
[TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,UPDATED_LAST[/TAG]: [TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,UPDATED_LAST[/TAG]
--]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,55 @@
info:
name: Campi conferma - Codice struttura assegnazione
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: "32873"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"struttureCensite": "106014;;106227;;106208;;106027;;106178;;106177;;106006;;106017;;106016;;106012;;300221;;106013;;106015;;106007;;106011;;106156;;106151;;106154;;106155;;106152;;106157;;106153;;106150;;106148;;106277;;106272",
"codiceStrutturaDefault": "CENTRO_DEFAULT"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[% codiceStruttura = codiceStrutturaDefault; %]
[VAR name="codiceStrutturaContratto" type="string"][TAG]GETVALUEBYTAG,STRUTTURA_PRINCIPALE_CODICE_INIZIALE,REQUEST,ID_OBJECT[/TAG][/VAR]
[IF]
[CONDITION][CONTAINS varname="struttureCensite" value="codiceStrutturaContratto" /][/CONDITION]
[THEN][% codiceStruttura = codiceStrutturaContratto; %][/THEN]
[/IF]
[%= codiceStruttura %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Campi conferma - Codice struttura protocollo
type: http
seq: 29
seq: 3
http:
method: POST
@@ -22,7 +22,7 @@ http:
"lang": "IT",
"crlf": "\r\n",
"struttureCensite": "106014;;106227;;106208;;106027;;106178;;106177;;106006;;106017;;106016;;106012;;300221;;106013;;106015;;106007;;106011;;106156;;106151;;106154;;106155;;106152;;106157;;106153;;106150;;106148;;106277;;106272",
"codiceStrutturaDefault": "FALLBACK"
"codiceStrutturaDefault": "CENTRO_DEFAULT"
}
}
auth: inherit
@@ -35,16 +35,16 @@ runtime:
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[% codiceStrutturaProtocollo = codiceStrutturaDefault; %]
[% codiceStruttura = codiceStrutturaDefault; %]
[VAR name="codiceStrutturaContratto" type="string"][TAG]GETVALUEBYTAG,STRUTTURA_PRINCIPALE_CODICE,REQUEST,ID_OBJECT[/TAG][/VAR]
[VAR name="codiceStrutturaContratto" type="string"][TAG]GETVALUEBYTAG,STRUTTURA_PRINCIPALE_CODICE_INIZIALE,REQUEST,ID_OBJECT[/TAG][/VAR]
[IF]
[CONDITION][CONTAINS varname="struttureCensite" value="codiceStrutturaContratto" /][/CONDITION]
[THEN][% codiceStrutturaProtocollo = codiceStrutturaContratto; %][/THEN]
[THEN][% codiceStruttura = codiceStrutturaContratto; %][/THEN]
[/IF]
[%= codiceStrutturaProtocollo %]
[%= codiceStruttura %]
[/EFTL]
`);
@@ -1,7 +1,7 @@
info:
name: Codice fiscale ammesso
name: Check Richiedente IN Responsabili Scientifici
type: http
seq: 3
seq: 1
http:
method: POST
@@ -1,76 +0,0 @@
info:
name: Codici fiscali ripartizioni Simple-minded
type: http
seq: 15
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: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"codiciFiscaliAmmessi": ";MMMPPL74T17E463A;;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="checkUtentePartecipante" type="string"][% utentePartecipante = "Il richiedente non è ammesso alla compilazione perché non rientra tra le ripartizioni proposte"; %][/VAR]
[VAR name="ripartizioniDaProposta" type="string"][TAG]GETVALUEBYTAG,RIPARTIZIONI,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="rsProponenteCF" type="string"][TAG]GETVALUEBYTAG,RSP_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="richiedenteCF" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="richiedenteCFregex" type="string"][% richiedenteCFregex = " (CF: " + richiedenteCF + ")"; %][/VAR]
[!-- Il richiedente non deve essere il RS proponente --]
[!-- Il richiedente deve comparire fra i responsabili --]
[!-- Il richiedente deve comparire fra i partecipanti --]
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]
[IF]
[CONDITION][% richiedenteCF == rsProponenteCF %][/CONDITION]
[THEN][% checkUtentePartecipante = "Il Responsabile Scientifico proponente non deve compilare la DSAN"; %][/THEN]
[ELSE IF]
[CONDITION][CONTAINS varname="ripartizioniDaProposta"][VALUE_OF varname="richiedenteCFregex" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="codiciFiscaliAmmessi"][VALUE_OF varname="richiedenteCF" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[/IF]
[%= checkUtentePartecipante %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Codici fiscali ripartizioni
type: http
seq: 4
seq: 25
http:
method: POST
@@ -0,0 +1,71 @@
info:
name: Elenco Contraenti in formato CSV
type: http
seq: 8
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"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[VAR name="elencoContraentiCsv" type="string"][% elencoContraentiCsv = ""; %][/VAR]
[VAR name="elencoContraenti" type="string"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_CONTRAENTI,REQUEST,ID_OBJECT[/TAG][/TRIM][/VAR]
[VAR name="elencoContraentiIterable" type="iterable"][SPLIT regex="\n" emptyIfBlank="true"][VALUE_OF varname="elencoContraenti" /][/SPLIT][/VAR]
[VAR name="elencoContraentiCount" type="number"][SIZE_OF varname="elencoContraentiIterable" /][/VAR]
[VAR name="contraenteIdx" type="number"][% contraenteIdx = 0; %][/VAR]
[WHILE threshold="99"]
[CONDITION][% contraenteIdx < elencoContraentiCount %][/CONDITION]
[DO]
[VAR name="contraenteIterable" type="iterable"][SPLIT regex=", CF/PIVA: " emptyIfBlank="true"][TRIM][VALUE_OF varname="elencoContraentiIterable" index="contraenteIdx" /][/TRIM][/SPLIT][/VAR]
[VAR name="contraenteDenominazione" type="string"][VALUE_OF varname="contraenteIterable" index="firstItem" /][/VAR]
[% elencoContraentiCsv = elencoContraentiCsv + contraenteDenominazione; %]
[% contraenteIdx = contraenteIdx + 1; %]
[IF]
[CONDITION][% contraenteIdx < elencoContraentiCount %][/CONDITION]
[THEN]
[% elencoContraentiCsv = elencoContraentiCsv + ", "; %]
[/THEN]
[/IF]
[/DO][/WHILE]
[%= elencoContraentiCsv %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Partecipanti per Qualifica
name: Elenco Partecipanti - Array CF altri
type: http
seq: 21
seq: 6
http:
method: POST
@@ -67,14 +67,7 @@ runtime:
[/IF]
[/FOR]
[%= "Docenti: " elencoCodFisPersonaleDocente %]
[%= newLine %]
[%= "Altro: " elencoCodFisPersonaleAltro %]
[%= newLine %]
[%= newLine %]
[%= responsabiliScientifici + newLine + partecipanti %]
[%= elencoCodFisPersonaleAltro %]
[/EFTL]
`);
@@ -0,0 +1,78 @@
info:
name: Elenco Partecipanti - Array CF docenti
type: http
seq: 5
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: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(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]
[%= elencoCodFisPersonaleDocente %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Elenco partecipanti per dropdown con chiave
name: Elenco Partecipanti - Dropdown con chiave
type: http
seq: 17
seq: 4
http:
method: POST
@@ -64,7 +64,7 @@ runtime:
[!-- Recupera il codice fiscale --]
[VAR name="responsabileResto" type="string"][VALUE_OF varname="responsabileIterable" index="secondItem" /][/VAR]
[VAR name="responsabileRestoIterable" type="iterable"][SPLIT regex=", Qualifica: "][VALUE_OF varname="responsabileResto" /][/SPLIT][/VAR]
[VAR name="responsabileRestoIterable" type="iterable"][SPLIT regex=", Data di inizio: "][VALUE_OF varname="responsabileResto" /][/SPLIT][/VAR]
[VAR name="responsabileCodiceFiscale" type="string"][VALUE_OF varname="responsabileRestoIterable" index="firstItem" /][/VAR]
[% personaIdx = personaIdx + 1; %]
@@ -104,7 +104,7 @@ runtime:
[!-- Recupera il codice fiscale --]
[VAR name="partecipanteResto" type="string"][VALUE_OF varname="partecipanteIterable" index="secondItem" /][/VAR]
[VAR name="partecipanteRestoIterable" type="iterable"][SPLIT regex=", Qualifica: "][VALUE_OF varname="partecipanteResto" /][/SPLIT][/VAR]
[VAR name="partecipanteRestoIterable" type="iterable"][SPLIT regex=", Data di inizio: "][VALUE_OF varname="partecipanteResto" /][/SPLIT][/VAR]
[VAR name="partecipanteCodiceFiscale" type="string"][VALUE_OF varname="partecipanteRestoIterable" index="firstItem" /][/VAR]
[% personaIdx = personaIdx + 1; %]
@@ -0,0 +1,71 @@
info:
name: Elenco RS in formato CSV
type: http
seq: 9
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"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[VAR name="elencoResponsabiliCsv" type="string"][% elencoResponsabiliCsv = ""; %][/VAR]
[VAR name="elencoResponsabili" type="string"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,ID_OBJECT[/TAG][/TRIM][/VAR]
[VAR name="elencoResponsabiliIterable" type="iterable"][SPLIT regex="\n" emptyIfBlank="true"][VALUE_OF varname="elencoResponsabili" /][/SPLIT][/VAR]
[VAR name="elencoResponsabiliCount" type="number"][SIZE_OF varname="elencoResponsabiliIterable" /][/VAR]
[VAR name="responsabileIdx" type="number"][% responsabileIdx = 0; %][/VAR]
[WHILE threshold="99"]
[CONDITION][% responsabileIdx < elencoResponsabiliCount %][/CONDITION]
[DO]
[VAR name="responsabileIterable" type="iterable"][SPLIT regex=", CF: " emptyIfBlank="true"][TRIM][VALUE_OF varname="elencoResponsabiliIterable" index="responsabileIdx" /][/TRIM][/SPLIT][/VAR]
[VAR name="responsabileNominativo" type="string"][VALUE_OF varname="responsabileIterable" index="firstItem" /][/VAR]
[% elencoResponsabiliCsv = elencoResponsabiliCsv + responsabileNominativo; %]
[% responsabileIdx = responsabileIdx + 1; %]
[IF]
[CONDITION][% responsabileIdx < elencoResponsabiliCount %][/CONDITION]
[THEN]
[% elencoResponsabiliCsv = elencoResponsabiliCsv + ", "; %]
[/THEN]
[/IF]
[/DO][/WHILE]
[%= elencoResponsabiliCsv %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,66 +0,0 @@
info:
name: Elenco partecipanti per tendina
type: http
seq: 18
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: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="elencoPartecipantiDebug" type="string"][% elencoPartecipantiDebug = ""; %][/VAR]
[VAR name="elencoPartecipantiCompleto" type="string"][% elencoContraentiCompleto = ""; %][/VAR]
[VAR name="partecipanti" type="string"][TRIM][TAG]SCHEMAID,542,COL0018,IUQOID, , [/TAG][/TRIM][/VAR]
[%= "" %]
[IF][CONDITION][IS_NOT_EMPTY varname="partecipanti" /][/CONDITION][THEN]
[VAR name="partecipantiSplit" type="iterable"][SPLIT regex="\n"][VALUE_OF varname="partecipanti" /][/SPLIT][/VAR]
[VAR name="partecipantiCount" type="number"][SIZE_OF varname="partecipantiSplit" /][/VAR]
[VAR name="partecipanteIdx" type="number"][% partecipanteIdx = 0; %][/VAR]
[VAR name="partecipanteNominativoIdx" type="number"][% partecipanteNominativoIdx = 0; %][/VAR]
[VAR name="partecipanteRestoIdx" type="number"][% partecipanteRestoIdx = 1; %][/VAR]
[WHILE threshold="99"][CONDITION][% partecipanteIdx < partecipantiCount %][/CONDITION][DO]
[VAR name="partecipanteFull" type="string"][VALUE_OF varname="partecipantiSplit" index="partecipanteIdx" /][/VAR]
[VAR name="partecipanteSplit" type="iterable"][SPLIT regex=", CF: "][TRIM][VALUE_OF varname="partecipanteFull" /][/TRIM][/SPLIT][/VAR]
[!-- Recupera il nominativo --]
[VAR name="partecipanteNominativo" type="string"][VALUE_OF varname="partecipanteSplit" index="partecipanteNominativoIdx" /][/VAR]
[!-- Recupera il codice fiscale --]
[VAR name="partecipanteResto" type="string"][VALUE_OF varname="partecipanteSplit" index="partecipanteRestoIdx" /][/VAR]
[VAR name="partecipanteRestoSplit" type="iterable"][SPLIT regex=", Qualifica: "][VALUE_OF varname="partecipanteResto" /][/SPLIT][/VAR]
[VAR name="partecipanteCodiceFiscale" type="string"][VALUE_OF varname="partecipanteRestoSplit" index="partecipanteNominativoIdx" /][/VAR]
[%= "[" %][FORMAT type="number" pattern="integer"][% partecipanteIdx + 1 %][/FORMAT][%= "] " + partecipanteNominativo + " (CF: " + partecipanteCodiceFiscale + ")" %]
[% partecipanteIdx = partecipanteIdx + 1; %]
[/DO][/WHILE]
[/THEN][/IF]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: RS proponente completo (multipli)
name: Nominativo completo RS proponente
type: http
seq: 23
seq: 7
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Notifiche email partecipanti - Body
type: http
seq: 5
seq: 19
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Notifiche email partecipanti - Subject
type: http
seq: 6
seq: 18
http:
method: POST
@@ -1,64 +0,0 @@
info:
name: Numero partecipanti meno RS (se c'è)
type: http
seq: 19
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: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(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]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Partecipanti - Body
type: http
seq: 9
seq: 12
http:
method: POST
@@ -21,14 +21,13 @@ http:
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"styles": ".label { padding-bottom: 10px; font-family: Arial,Sans-serif; font-size: 13px; color: #222; vertical-align: top; }\r\n.value { padding: 0 1em 10px 0; font-family: Arial,Sans-serif; font-size: 13px; color:#888; white-space: nowrap; vertical-align: top; }\r\n\r\n",
"startTable": "\u0026lt;table cellpadding='0' cellspacing='0' border='0'\u0026gt;\u0026lt;tbody\u0026gt;",
"endTable": "\u0026lt;/tbody\u0026gt;\u0026lt;/table\u0026gt;\r\n",
"startRowColspan": "\r\n\u0026lt;tr\u0026gt;\u0026lt;td colspan='2' class='value'\u0026gt;",
"startLabelRow": "\r\n\u0026lt;tr\u0026gt;\u0026lt;td class='label'\u0026gt;\u0026lt;div\u0026gt;",
"startValueRow": "\r\n\u0026lt;/div\u0026gt;\u0026lt;/td\u0026gt;\u0026lt;td class='value'\u0026gt;",
"endRow": "\u0026lt;/td\u0026gt;\u0026lt;/tr\u0026gt;",
"href": "\u0026lt;a href='https://procedure.unipr.it/rwe2/module_preview.jsp?MODULE_TAG=RIPARTIZIONE_CCT_DSAN' target='_blank'\u0026gt;Ripartizione Utili / Compensi - DSAN\u0026lt;/a\u0026gt;"
"startTable": "\u003ctable cellpadding='0' cellspacing='0' border='0'\u003e\u003ctbody\u003e",
"endTable": "\u003c/tbody\u003e\u003c/table\u003e\r\n",
"startRowColspan": "\r\n\u003ctr\u003e\u003ctd style='padding: 0 1em 10px 0; font-family: Arial,Sans-serif; font-size: 13px; color:#888; white-space: nowrap; vertical-align: top;' colspan='2'\u003e",
"startLabelRow": "\r\n\u003ctr\u003e\u003c td class='padding-bottom: 10px; font-family: Arial,Sans-serif; font-size: 13px; color: #222; vertical-align: top;'\u003e\u003cdiv\u003e",
"startValueRow": "\r\n\u003c/div\u003e\u003c/td\u003e\u003c td class='padding: 0 1em 10px 0; font-family: Arial,Sans-serif; font-size: 13px; color:#888; white-space: nowrap; vertical-align: top;'\u003e",
"endRow": "\u003c/td\u003e\u003c/tr\u003e",
"href": "\u003ca href='https://procedure.unipr.it/rwe2/module_preview.jsp?MODULE_TAG=RIPARTIZIONE_CCT_DSAN' target='_blank'\u003eRipartizione Utili / Compensi - DSAN\u003c/a\u003e"
}
}
auth: inherit
@@ -46,8 +45,6 @@ runtime:
[VAR name="rsp_nome" type="string"][TAG]GETVALUEBYTAG,RSP_NOME,REQUEST,ID_OBJECT[/TAG][/VAR]
[% responsabileScientificoProponente = rsp_titolo + " " + rsp_cognome + " " + rsp_nome; %]
[%= styles %]
[%= startTable %]
[%= startRowColspan %]<b>È necessario compilare la DSAN collegata all'istanza del modulo "Ripartizione Utili / Compensi - Presentazione Proposta" i cui dati sono riportati nel seguito!</b>[%= endRow %]
[%= startRowColspan %][%= endRow %]
@@ -1,7 +1,7 @@
info:
name: Partecipanti - CF per verifica DSAN
type: http
seq: 13
seq: 16
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Partecipanti - Email
type: http
seq: 7
seq: 10
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Partecipanti - Importo PTA
type: http
seq: 12
seq: 15
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Partecipanti - Importo docente
type: http
seq: 11
seq: 14
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Partecipanti - Riga dati completi ripartizione
type: http
seq: 14
seq: 17
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Partecipanti - Subject
type: http
seq: 8
seq: 11
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Partecipanti - hasDSAN
type: http
seq: 10
seq: 13
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Recupero importo richiedente da proposta
type: http
seq: 22
seq: 26
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Tabella HTML ripartizioni FOR ADVANCED
type: http
seq: 27
seq: 23
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Tabella HTML ripartizioni FOR
type: http
seq: 26
seq: 22
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Tabella HTML ripartizioni WHILE
type: http
seq: 25
seq: 21
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: elixPro - Recupero importi inseriti
type: http
seq: 28
seq: 24
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Indicazioni limiti annuali ore
name: Test Errore 406
type: http
seq: 7
seq: 30
http:
method: POST
@@ -12,7 +12,7 @@ http:
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "30661"
value: "32873"
body:
type: json
data: |-
@@ -21,7 +21,12 @@ http:
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"useTestCF": false
"fairWarning": "ATTENZIONE: la keyword 'style' all'interno degli elementi HTML produce un errore 406 di richiesta sospetta (!), per testare lo script sostituirla con qualcos'altro!",
"startRow": "\u003ctr\u003e\u003ctd\u003e",
"endRow": "\u003c/td\u003e\u003c/tr\u003e",
"test": "&lt;td style='' colspan='2'>"
// , "test2": "\r\n \u003ctr\u003e \u003c td style='padding: 0 1em 10px 0; font-family: Arial,Sans-serif; font-size: 13px; color:#888; white-space: nowrap; vertical-align: top;'\u003e"
// , "test3": "\r\n\u003ctr\u003e\u003ctd style='padding: 0 1em 10px 0; font-family: Arial,Sans-serif; font-size: 13px; color:#888; white-space: nowrap; vertical-align: top;' colspan='2'\u003e"
}
}
auth: inherit
@@ -34,11 +39,9 @@ runtime:
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
In base alle ore equivalenti e al part-time, il limite annuale di ore di attivita' svolte dentro l'orario di lavoro e' pari a [TAG]GETVALUEBYTAG,LIMITE_ORE_DENTRO_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG]
In base alle ore equivalenti e al part-time, il limite annuale di ore di attivita' svolte fuori dall'orario di lavoro e' pari a [TAG]GETVALUEBYTAG,LIMITE_ORE_FUORI_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG]
[%= startRow %]
VALORE: _[%= test %]_
[%= endRow %]
[/EFTL]
`);