GRE020 - Commesse laboratorio¶
Nome programma: GRE020
Linkage section
Programma richiamabile solo dall'esterno, con i seguenti parametri: * Input * Operazione: * "AGGIORNA" * "AGG-COM" * Chiave riga packing (AO-PLD-CHIA1) * Azienda destinataria * Codice commessa * Output * Esito dell'operazione * "S": Operazione riuscita * "N": Operazione non riuscita
Logica generale del programma¶
Questo programma viene innescato direttamente dal programma di spedizione packing list: APO207
Elaborazione
Verificare se l'azienda e' abilitata all'esportazione delle commesse laboratorio: * Leggere il record azienda GRPAZIEN usando EXT-GRP-AZIENDA * Leggere il record abilitazione gruppo/azienda GRPSYGAB impostando: * AO-SYA-COD = "COM-LAB" * AO-SYA-TIP = ao-azi-tip * AO-SYA-SUDDIVISIONE = " " * Se il record: * Non esiste: l'esportazione di questo gruppo dati non e' abilitato per la tipologia azienda e il tipo nominativo da trasferire; dare una segnalazione e forzare comunque l'esportazione. * Esiste: se AO-SYA-ABI * = "S": esportazione abilitata * = "N": esportazione non abilitata: dare una segnalazione e forzare comunque l'esportazione.
Questo programma e' di pura elaborazione; dovra' restituire al programma chiamante l'esito dell'elaborazione effettuata. Per entrambe le operazioni descritte il flusso di massima e' il seguente: 1. Creazione di un record di export 2. Creazione di un file contenente le informazioni di sincronizzazione abbinato al record di export
Creazione record di export¶
Il programma dovra' aggiungere un record su GRPEXPOR:
| Nome campo | Contenuto |
|---|---|
| ao-exp-id | Attribuzione di un nuovo id progressivo |
| ao-exp-exp-tip | grpazien.ao-azi-tip |
| ao-exp-azienda | grpazien.ao-azi-cod |
| ao-exp-classe | "020" |
| ao-exp-suddivisione | " " |
| ao-exp-stato | "E" |
| ao-exp-esito | " " |
| ao-exp-msg | " " |
| ao-exp-a-data | data di sistema |
| ao-exp-a-ora | ora di sistema |
| ao-exp-c-data | 0 |
| ao-exp-c-ora | 0 |
| ao-exp-azienda-dest | Codice azienda destinataria passata in input |
Attenzione!! Se l'aggiornamento fallisce per chiave doppia, ripetere la ricerca di un nuovo id progressivo e ritentare.
Creazione file di export¶
Creazione di un file (vedi Formato dei files di dati) contenente le informazioni da esportare.
Il nome del file dovra' essere composto da: * Percorso configurato nel campo GRPAZIEN.AO-AZI-PATH-EXPORT * Nome file: Id progressivo assegnato (GRPEXPORT.AO-exp-ID) + "_" + Classe esportazione (GRPEXPORT.AO-exp-CLASSE): ad esempio: "000000123456_010.arc" * Estensione: ".arc" (estensione classica dei file vision)
Contenuto del file¶
Testata commessa
Se GRE020-OPERAZIONE = "AGGIORNA", la commessa viene trovata dalla riga packing
| N. campo | Descrizione | Tipo campo | Contenuto |
|---|---|---|---|
| 1 | Operazione | A | "AGG" |
| 2 | Tipo record | N | "01" |
| 3 | Codice commessa | N | AO-PLD-COMMESSA |
| 5 | Medico prescrittore | A | AO-PLD-PRESCRITTORE |
| 6 | Paziente | A | AO-PLD-PAZ-COD |
| 7 | ID packing list | N | AO-PLD-ID |
| 8 | Riga packing | N | AO-PLD-PROG |
| 9 | Data commessa | D | LODPRESC.LPM-DATA |
| 10 | Ora commessa | N | LODCMAGG.LCG-ORA-INGRESSO |
| 11 | Data rientro | D | AO-PLD-DATA-RIENTRO |
| 12 | Azienda mittente | A | EXT-GRP-AZIENDA |
| 13 | Codice prescrizione | A | LODPRESC.LPM-COD |
| 14 | Percorso prescrizione | A | Percorso estratto da COGU06 (vedi sotto) |
Se GRE020-OPERAZIONE = "AGG-COM", la commessa viene passata direttamente e non c'e' riga packing
| N. campo | Descrizione | Tipo campo | Contenuto |
|---|---|---|---|
| 1 | Operazione | A | "AGG" |
| 2 | Tipo record | N | "01" |
| 3 | Codice commessa | N | GRE020-COMMESSA |
| 5 | Medico prescrittore | A | GRPCOMME.AO-COM-MEDICO |
| 6 | Paziente | A | LPM-PAZ |
| 7 | ID packing list | N | 0 |
| 8 | Riga packing | N | 0 |
| 9 | Data commessa | D | LODPRESC.LPM-DATA |
| 10 | Ora commessa | N | LODCMAGG.LCG-ORA-INGRESSO |
| 11 | Data rientro | D | LODPRESC.LPM-DATA-CNS |
| 12 | Azienda mittente | A | EXT-GRP-AZIENDA |
| 13 | Codice prescrizione | A | LODPRESC.LPM-COD |
| 14 | Percorso prescrizione | A | Percorso estratto da COGU06 (vedi sotto) |
Materiali allegati¶
Una riga per ciascun record LODCMMMD relativo alla commessa in elaborazione:
| N. campo | Descrizione | Tipo campo | Contenuto |
|---|---|---|---|
| 1 | Operazione | A | "AGG" |
| 2 | Tipo record | N | "02" |
| 3 | Codice commessa | N | Commessa in elaborazione |
| 5 | Descrizione | A | Se LMD-MERCE |
| 6 | Quantita' | N | LMD-QTA |
Record di export "pronto"¶
Al termine della creazione del file, il record di esportazione si puo' mettere in stato "pronto": leggere quindi il record scritto in precedenza e impostare:
| Nome campo | Contenuto |
|---|---|
| ao-exp-stato | "A" |
dopodiche' aggiornare
Estratto da documentazione interna ClickUp