Vai al contenuto

SWN133 - Esportazione parametri ambiente

Programma SWN133 Linkage section UTILAGPRG - Linkage comune Id processo: 133 Nome processo: PAR-INST Tabelle principali gestite

AREA AREAGATE Direzione
Parametri di ambiente vari INSTALLAZIONI ------>

Logica generale Esportazione di alcuni parametri provenienti prevalentemente da CBLCONFI, che permetteranno di automatizzare in varie fasi i rilasci Esportazione Esportazione di tutti gli elementi effettivamente modificati (con dati variati). Importazione Non ancora prevista Configurazioni possibili

Gruppo Parametro Note
abilita attiva-areaapp
areaapp cod-azienda
areaapp db-conn-string
areaapp agg-postgres-online

Elaborazione Tipi di segnalazione: Vedi Tipi di segnalazione A - Controllo di esecuzione Vedi Controllo di esecuzione A.1 - Aggiornamento KEEP-ALIVE Per il momento non lo eseguiamo: il keep-alive viene tenuto aggiornato dal thread autonomo di aglancio; se il programma venisse chiamato in "tempo reale" dal programma di gestione, non necessita comunque del keep-alive. A.2 - Apertura A.2.1 Apertura tabelle Tentare l'apertura della tabella da sincronizzare: INSTALLAZIONE Se fallita inviare una Segnalazione critica e chiudere. B - Esportazione elementi aggiornati * ID SINCRO: gestito * Esportazione differenziale: gestita ma non ottimizzata: non esiste una chiave diretta per ottenere solo i record aggiornati * Cancellazione logica: gestita In questa fase si dovrà tenere conto di * Limite record * Limite errori * "Esporta tutto" B.1 - Stato sincronizzazione Sulla tabella APSTATOSYN, leggere il record relativo alla tabella/oggetto da sincronizzare "INSTALLAZIONE"; se il record non esiste, crearlo impostando

Dato Contenuto
A_SYN_AZIENDA Codice azienda
A_SYN_TABELLA "INSTALLAZIONE"
A_SYN_DA_GES_DATA 0
A_SYN_DA_GES_ORA 0
A_SYN_DA_ID_SINCRO 1

Qui otterremo due informazioni importanti: * Data/ora ultima esportazione da gestionale a postgres (A_SYN_DA_GES_DATA e A_SY_DA_GES_ORA) * Prossimo ID sincronizzazione da memorizzare sulla tabella (A_SYN_ID_SINCRO) B.2 - Esportazione parametri su INSTALLAZIONE I parametri da aggiornare, e loro provenienza, sono indicati in https://docs.google.com/document/d/17TWDwJVVUjT_75ZBcf0cK4vUlTqE4xVK7X1T9gIuCJ4/edit Per ciascun parametro si dovrà creare o aggiornare un record sulla tabella "INSTALLAZIONE":

Dato Contenuto
A-INST-AZIENDA Codice azienda
A-INST-PARAMETRO Il parametro in elaborazione
A-INST-PROG 0
A-INST-VALORE-X Valorizzare uno di questi dati in base al Tipo definito nella tabella parametri
A-INST-VALORE-N
A-INST-VALORE-D
A-INST-AGG-APP " "
A-INST-FL-CANC " "
A-INST-ID-SINCRO Il prossimo id sincro

B.9 - Aggiornamento id syncro Al termine dell'elaborazione, aggiornare il record APSTATOSYN:

Dato Contenuto
A_SYN_AZIENDA Codice azienda
A_SYN_TABELLA "INSTALLAZIONE"
A_SYN_DA_ID_SINCRO Ultimo id sincro + 1

Comportamento su server SaaS collegato (TASK-5511)

Contesto. I parametri di ambiente DIR-ROOT, DIR-SYS, DIR-LNG, DIR-RUNTIME esportati su INSTALLAZIONE rappresentano i percorsi dell'installazione locale del gestionale. Quando l'azienda gira su un server SaaS collegato, questi percorsi locali non hanno significato per l'ambiente remoto e non devono essere sincronizzati (anzi, un record residuo puo' fuorviare i rilasci automatici).

Rilevamento. All'avvio dell'elaborazione il programma legge la tabella aziende ARPAZIEN (sub-cfg-rd-arpazien) per il codice azienda in configurazione e verifica il campo razi-server-saas: se valorizzato (diverso da spazi), imposta il flag interno w-fl-server-saas = "S".

Logica. Per ciascuno dei parametri DIR-ROOT, DIR-SYS, DIR-LNG, DIR-RUNTIME:

  • se w-fl-server-saas = "S": il record corrispondente su INSTALLAZIONE viene cancellato se presente (lettura sub-cfg-rd-installazioni seguita da sub-cfg-del-installazioni), invece di essere scritto/aggiornato con il percorso locale;
  • altrimenti (installazione tradizionale): resta invariata la logica precedente (crea il record se assente, oppure lo aggiorna se il valore e' cambiato, incrementando tm-id-sincro e il contatore esportazioni tm-r-esp).

Nuova variabile: w-fl-server-saas PIC X(01) (flag locale "server SaaS collegato").


Esportazione BUILD e numero licenze (TASK-5715)

Contesto. Per automatizzare i controlli sui rilasci, oltre ai percorsi di installazione il programma ora esporta su INSTALLAZIONE anche la build del runtime attualmente installata e il numero di licenze configurate. Entrambi i valori vengono letti da file di testo dell'ambiente e riversati come nuovi parametri.

Parametro BUILD. Il programma compone il percorso relinfo.txt nella directory di menu (ext-mnu-dir + ext-os-slash + relinfo.txt), lo apre come file line sequential (nuovo file logico RELINFO, copybook relinfo.fd/relinfo.cpy) e ne scorre le righe cercando la chiave BuildFine; il relativo valore (inf-dato) viene memorizzato in w-build-att. Se valorizzato, crea/aggiorna su INSTALLAZIONE il record con A-INST-PARAMETRO = "BUILD" valorizzando il campo testo (A-INST-VALORE-X), con la consueta gestione id-sincro e contatore esportazioni.

Parametro NR-LIC. Il numero di licenze viene letto dal file licenze (nuovo paragrafo load-licfile): il percorso e' preso dalla variabile d'ambiente LICFILE, oppure, se non impostata, da ext-cnf-dir + ext-os-slash + licfile.txt. Il file viene aperto come line sequential (file logico ASCIIFILE) e scorso riga per riga (rdnxt-asciifile); le righe che iniziano con # sono ignorate (commenti), le altre vengono spezzate su = in tag/valore e, per il tag num (case-insensitive), il valore numerico (function numval) viene assegnato a lic-num. Se lic-num e' diverso da zero, crea/aggiorna su INSTALLAZIONE il record con A-INST-PARAMETRO = "NR-LIC" valorizzando il campo numerico (A-INST-VALORE-N).

Nuovi file logici: RELINFO (relinfo.txt, relinfo.fd/relinfo.cpy) e ASCIIFILE (licfile.txt, record asc-rec PIC X(250)), entrambi line sequential e dichiarati nelle declaratives. Nuovi paragrafi: rdnxt-asciifile (lettura sequenziale del file licenze), load-licfile (apertura/parsing del file licenze).


Estratto da documentazione interna ClickUp