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:
- individua il modello da usare (via ASN028 o progressivo passato in input);
- costruisce un file XML di informazioni (tag/valore) con tutti i dati della chiamata, del cliente, della matricola e delle schede/prestazioni;
- 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)¶
- Recupera la prima matricola collegata (
ASNCHDET), il modello e l'intervento; legge le note di fatturazione. - Determina il modello: se
w-dc-prog > 0usa direttamenteASNMODUL, altrimenti chiamaASN028. - Se non in archiviazione, richiede la periferica (COGS54).
- 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. 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).- In base al tipo modulo:
C(lavorazione):b2-estrai-prestazioni-previste→ tabellaTAB-LAV;D(rapporto):b3-estrai-tab-rl→TAB-RL;b4-estrai-tab-*→TAB-DOC(riepilogo materiali+prestazioni o dettaglio preventivo) con totaliC-FAT-MAT/C-FAT-PREST/C-FAT-TOT.- Chiude l'XML (
Chiudi-XML) ed esegue il modello (Esegui) sulla periferica; in modalita'Aproduce il file e lo archivia a dossier via CRMS10, con descrizione/id in base al tipo modulo. - Se il chiamante e'
ASN500, chiude lo step di work-flowk-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>.txtinext-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-DOCcon dettaglio preventivo (b4-estrai-tab-doc) - 181219: totali materiali/prestazioni sul documento