Vai al contenuto

ASN599 - Stampa moduli (schede intervento strumenti)

Sorgente: cbl/asn599.cbl (3.224 righe) | Tipo: Programma interattivo di preparazione dati e stampa su modello Word/XML

Menu: Assist 2.0 > Operativo > Riparazioni > Stampa moduli


Scopo

Genera e stampa i moduli/schede legati a una chiamata di assistenza strumenti (registrazione, stima, lavorazione, rapporto di lavoro, verifica finale). A partire dall'ID chiamata e dal tipo di modulo, il programma:

  1. individua il modello da usare (via ASN028 o progressivo passato in input);
  2. costruisce un file XML di informazioni (tag/valore) con tutti i dati della chiamata, del cliente, della matricola e delle schede/prestazioni;
  3. innesca il modello Word/PDF tramite WORDMDL, che produce la stampa (o l'archiviazione a dossier).

E' pensato per essere usato sia da menu (richiesta interattiva di chiamata + tipo modulo) sia come chiamato da altri programmi del ciclo assistenza (es. ASN500) per stampe automatiche e archiviazione.

Tipi di modulo

I tipi (costanti k-c-modst-* in costanti-assist.cpy, campo tm-tipo-modulo):

Codice Modulo
A Scheda di registrazione
B Scheda di stima
C Scheda di lavorazione (tabella prestazioni previste TAB-LAV)
D Rapporto di lavoro (tabelle TAB-RL e TAB-DOC)
E Verifica finale
G Verifica aggiuntiva

Interfaccia chiamato (linkage util-asn599)

Campo Tipo Uso
asn599-caller / asn599-called x(08) Identificativi chiamante/chiamato
asn599-tipo-modulo x(02) Tipo modulo da stampare
asn599-id-chiamata 9(12) ID chiamata da elaborare
asn599-prog 9(04) Progressivo modello scelto (input) / usato in archiviazione
asn599-elaborazione x(01) S = stampa standard (default), A = archiviazione (produce file archiviabile dal chiamante)
asn599-periferica 9(05) Periferica di stampa (input/output)

In modalita' called (w-dc-called = "S") la chiave e il tipo modulo sono precaricati; con elaborazione = "A" non richiede la periferica (gia' configurata) e archivia il file prodotto a dossier via CRMS10.

File acceduti (lettura)

File Copybook Uso
ASNCHTES acht-rec Testata chiamata: operatore, dossier, oggetto, note, cliente ass/fat, contratto, stato disinfezione
ASNCHDET achd-rec Dettaglio chiamata: prima matricola collegata
ASNMATRI amtr-rec Matricola: s/n, tipo, marca, modello, merce, garanzia, referente
ASNMODEL amod-rec Modello: nome, descrizione, mod-scheda
ASNMTRTP amtp-rec Tipo matricola (descrizione)
ASNINTES acit-rec Intervento collegato (chiave k02)
ASNINDAG aitd-rec Note di chiusura/fatturazione dell'intervento (tipo F)
ASNCHWKF achw-rec Work-flow: operatori/date di stima, verifica, stima prestazioni, stampa doc (chiave k02)
ASNMODUL amst-rec Anagrafica moduli/modelli per tipo
ASNSKINF aski-rec Informazioni della scheda di stima associate al modello
ASNINFOR ainf-rec Definizione informazione (tipo: note/alfa/data/check/tabella/numero/valori fissi)
ASNINFTR aitr-rec Decodifica valori di tabella delle informazioni
ASNCHNNF achn-rec Contenuto informazioni tipo note della chiamata
ASNCHINF achf-rec Contenuto informazioni della chiamata
ASNCHPRP achp-rec Prestazioni previste della chiamata
ASNPRPIM aprm-rec Importanza/tipo prestazione (descrizione)
ASNCHACC acha-rec Accessori selezionati sulla chiamata
ASNACCES aacc-rec Anagrafica accessori del modello
ASNCHPRV achv-rec Preventivi collegati alla chiamata (per TAB-DOC)
ASNINDET acid-rec Dettaglio intervento (materiali M / prestazioni P) per il riepilogo documento
COGRIGPR rpr-rec Righe preventivo (dettaglio TAB-DOC se c'e' preventivo)
COGMERCI mer-rec Anagrafica merci (descrizioni prestazioni/materiali)
COGRACMC rcm-rec Codice merce avanzato (CMA) - chiave k02
COGSNAGG sna-rec Chiave alternativa serial number matricola
COGGEANA / COGANAPP / COGAPPOG / COGDESCR Dati anagrafici cliente assistito/fatturazione, appoggio, referente
PRNTOPER ptop-rec Descrizioni operatori
COGRIFER rif-rec Referente contratto (chiave k02)

Chiavi secondarie

  • cogrifer.k02, cogracmc.k02, asnchwkf.k02, asnintes.k02

Configurazioni RNEWCONF (x99-confi)

Idx Gruppo Chiave Variabile Effetto
01 STAMPE PERIFERICA-STAMPA-FILE tm-cfg-prf-stampa Periferica per la stampa in archiviazione
02 STAMPE PATH-STAMPA-FILE tm-cfg-path-stampa Path del file di stampa da archiviare
03 ASS-STRUM PREST-RESO-NON-RIPARATO tm-cfg-prest-reso-nr Prestazione che identifica un "reso non riparato"
04 ASS-STRUM STAMPA-CHECK-S tm-cfg-stampa-check-s Testo alternativo per check = Si'
05 ASS-STRUM STAMPA-CHECK-N tm-cfg-stampa-check-n Testo alternativo per check = No

Programmi chiamati

Programma Operazione Scopo
WORDMDL Apri-XML / Aggiungi-XML / Chiudi-XML / Esegui Costruzione del file XML di informazioni e produzione della stampa dal modello Word
ASN028 ASN028-CALLED Selezione del modello per tipo modulo e scheda
COGS54 (periferica) Richiesta periferica di stampa (saltata in archiviazione)
CRMS10 ALLEGA-DOC Archiviazione del file di stampa a dossier (modalita' A)
ASN210 ASN210-CALLED F9 ricerca avanzata chiamata
COGU20W PreparaAcc Formattazione numeri per l'XML
COGU10 Edita Formattazione importi (materiali/prestazioni/totale)
COGS68 (msg merce) Descrizione codice merce (x-msg-merce)

Flusso di stampa (b-stampa)

  1. Recupera la prima matricola collegata (ASNCHDET), il modello e l'intervento; legge le note di fatturazione.
  2. Determina il modello: se w-dc-prog > 0 usa direttamente ASNMODUL, altrimenti chiama ASN028.
  3. Se non in archiviazione, richiede la periferica (COGS54).
  4. Apre il file XML (Apri-XML) e aggiunge, tag per tag (Aggiungi-XML), tutti i dati: data sistema, operatori (registrazione/stima/verifica/prestazioni/sistema), barcode chiamata, oggetto/problema, riferimenti documento cliente, dati cliente assistito e fatturazione, dati matricola (s/n, CMA, descrizione merce, tipo, garanzia, marca, modello, ubicazione, destinazione), reso non riparato, accessori.
  5. b1-esamina-info / tratta-c-ski: esporta i contenuti delle informazioni della scheda (ASNSKINF + ASNCHINF/ASNCHNNF) formattati per tipo (note/alfa/data/check/tabella/numero).
  6. In base al tipo modulo:
  7. C (lavorazione): b2-estrai-prestazioni-previste → tabella TAB-LAV;
  8. D (rapporto): b3-estrai-tab-rlTAB-RL; b4-estrai-tab-*TAB-DOC (riepilogo materiali+prestazioni o dettaglio preventivo) con totali C-FAT-MAT/C-FAT-PREST/C-FAT-TOT.
  9. Chiude l'XML (Chiudi-XML) ed esegue il modello (Esegui) sulla periferica; in modalita' A produce il file e lo archivia a dossier via CRMS10, con descrizione/id in base al tipo modulo.
  10. Se il chiamante e' ASN500, chiude lo step di work-flow k-step-c-stampa-doc.

Costruzione tabelle nel modello

Le tabelle multi-riga (TAB-LAV, TAB-RL, TAB-DOC) sono passate a WORDMDL con flag A (apertura), I (riga, con separatori ## e chiusura <fr>), C (chiusura/cancellazione se nessuna riga). Ogni riga concatena tecnico, codice/descrizione prestazione o materiale, tipo, quantita', prezzo, sconto, importo.

Note implementative

  • Il nome del file XML e' asn599_<tipo-modulo>_<id-chiamata>.txt in ext-tmp-dir.
  • Il barcode chiamata usa il progressivo immagine 1 (*<id>IM1*).
  • Il referente in stampa e' personalizzato per Endonova (usa cde-des, Case 3998); per gli altri usa persona matricola o referente contratto.
  • Per Endonova, l'informazione tabella 2002 stampa il codice invece della descrizione (TICKET 583262).

Storico modifiche significative (dal sorgente)

  • 190216: gestione periferica in input/output (asn599-periferica)
  • 221018: aggiunta codice merce avanzato (CMA), descrizione merce e chiave alternativa serial number
  • 131218: tabella TAB-DOC con dettaglio preventivo (b4-estrai-tab-doc)
  • 181219: totali materiali/prestazioni sul documento