Vai al contenuto

COGSA602 - Testi variabili classe 02 (interventi assistenza)

Sorgente: cbl/cogsa602.cbl | Tipo: Sottoprogramma (non a menu)

Chiamante: COGSA6 (dispatcher testi variabili)


Scopo

Ricerca le informazioni necessarie per la sostituzione dei testi di classe "02": stampa fatture con riferimento a interventi di assistenza 2.0 esterni. Il programma riceve un riferimento documento (DDT/fattura) e restituisce una serie di tag-valore con i dati dell'intervento, della chiamata e delle matricole associate.


Linkage Section

Utilizza la copybook utilcogsa6.cpy — stessa struttura di tutti i sottoprogrammi COGSA6xx:

Campo Tipo Dir Descrizione
cogsa6-ope x(20) I Operazione (default implicita)
cogsa6-classe x(04) I Classe testo ("02")
cogsa6-lng x(03) I Lingua (default "ITA")
cogsa6-sudd x(30) I Suddivisione
cogsa6-key x(50) I Chiave documento (tes-chia3)
cogsa6-tab-pnt 9(04) O Numero di elementi restituiti (max 100)
cogsa6-tab-ele (x100) O Array tag/dato-n/dato-x
cogsa6-esito x(01) O "S" = successo, "E" = errore
cogsa6-msg x(160) O Messaggio errore

Tag restituiti

Tag Tipo Contenuto
ID-INTER Numerico ID intervento
ID-CHIAM Numerico ID chiamata
DATA-INT Alfanum Data intervento (DD/MM/YYYY)
DATA-ASS Alfanum Data assegnazione (DD/MM/YYYY)
CLI-ASS-C Numerico Codice cliente assistenza
CLI-ASS-D Alfanum Ragione sociale cliente
CLI-ASS-L Alfanum Localita' cliente
MTR-ID Alfanum ID matricola/e (concatenate con delimitatore)
MTR-SN Alfanum Numero/i seriale (concatenati)
MTR-MARCA-C Alfanum Codice/i marca
MTR-MARCA-D Alfanum Descrizione/i marca
MTR-MOD-C Alfanum Codice/i modello
MTR-MOD-D Alfanum Descrizione/i modello
MTR-MODD+SN Alfanum Descrizione modello + seriale (combinato)
MTR-N-INV Alfanum Numero/i inventario
MTR-UBI Alfanum Ubicazione/i
CHIAMATA-CLI Alfanum Riferimento cliente chiamata
INT-CLI Alfanum Riferimento interno cliente
MTR-TIPO Alfanum Descrizione tipo matricola

Quando un intervento ha piu' matricole, i valori vengono concatenati usando i delimitatori configurati in RNEWCONF (gruppo testi, chiavi delim-dati e delim-elementi).


Logica di elaborazione

  1. Ricerca documento: cerca in ASNINDMG per chiave secondaria (chia2) il movimento di magazzino collegato al documento
  2. Validazione intervento: legge ASNINTES e ASNCHTES; la classe chiamata deve essere "C" (esterna)
  3. Ricerca matricole: cerca prima per dettaglio intervento (ASNINDET), in fallback per dettaglio chiamata (ASNCHDET) — fino a 1000 matricole
  4. Arricchimento dati: per ogni matricola legge ASNMATRI (master), ASNMTRTP (tipo), ASNMARCH (marca), ASNMODEL (modello)
  5. Composizione output: costruisce l'array di tag-valore con i dati formattati
  6. Restituzione: imposta esito "S" e numero elementi, oppure "E" con messaggio "Documento non collegato ad intervento"

File utilizzati

File Copybook Accesso Scopo
ASNINDMG asnindmg.k02 Lettura per chia2 Indice movimenti magazzino → intervento
ASNINTES asnintes.cpy Lettura diretta Testate intervento
ASNCHTES asnchtes.cpy Lettura diretta Testate chiamata
ASNINDET asnindet.cpy Lettura sequenziale Dettaglio intervento (matricole)
ASNCHDET asnchdet.cpy Lettura sequenziale Dettaglio chiamata (matricole fallback)
ASNMATRI asnmatri.cpy Lettura diretta Anagrafica matricole
ASNMTRTP asnmtrtp.cpy Lettura diretta Tipi matricola
ASNMARCH asnmarch.cpy Lettura diretta Marche
ASNMODEL asnmodel.cpy Lettura diretta Modelli
COGGEANA coggeana.cpy Lettura diretta Anagrafica clienti

Programmi chiamati

Programma Scopo
COGU10W Divisa default conto (operazione "GetDivisaConto")
RNEWCONF Lettura configurazioni (delimitatori testi)

Configurazioni (RNEWCONF)

Gruppo Chiave Effetto
testi delim-dati Delimitatore tra dati di matricole diverse
testi delim-elementi Delimitatore tra sotto-elementi di uno stesso dato

Note

  • Aggiunto il 31/08/2022: campi MTR-N-INV (numero inventario) e MTR-UBI (ubicazione)
  • TASK-3175 (16/03/2026): aggiunto campo DATA-ASS (data assegnazione)