Vai al contenuto

ASN541 - DDT manuale a fornitore (invio strumento per riparazione)

Sorgente: cbl/asn541.cbl (2.081 righe) | Tipo: Programma interattivo GUI a maschera singola con generazione documento e processo di riparazione

Menu: Assist 2.0 > Operativo > Riparazioni > Riparazioni a fornitore > DDT manuale a fornitore


Scopo

Crea manualmente il DDT di invio a fornitore per riparazione di uno strumento collegato a una chiamata di assistenza. A partire dall'ID chiamata, il programma:

  • recupera la matricola dello strumento e propone il magazzino di ubicazione;
  • crea il DDT di uscita (COGTESBO + COGMOMAG) verso il fornitore, con causale magazzino/fornitore e scarico della matricola;
  • crea il processo di riparazione (ASNCHRIP) e lo aggancia al DDT tramite ASNCHRID;
  • collega il documento all'intervento (ASNINDMG);
  • aggiorna lo step di work-flow "preventivo fornitore" (ASNCHWKF).

Il programma gestisce, sulla stessa maschera, anche la modifica del DDT (via COGV56), la stampa (COGV52, con eventuale archiviazione a dossier), e la cancellazione del DDT e del relativo processo.

La nota di intestazione lo indica come "Procedura strumenti x Endonova": alcune logiche sono specifiche per il personal Endonova (aggiornamento giacenza solo su magazzino M).

Modalita' di funzionamento

Lo stato dei pulsanti dipende dalla presenza di un processo di riparazione aperto per la chiamata:

  • Nessun processo aperto: si puo' creare il processo + DDT (F7 Nuovo). Non si puo' modificare ne' cancellare.
  • Processo aperto: si puo' modificare il DDT (F3 Gestione → COGV56) e stamparlo (F9). Si puo' cancellare (F4) solo se non ci sono altri documenti sul processo oltre al DDT stesso.

Interfaccia chiamato (linkage util-asn541)

Campo Tipo Uso
asn541-caller / asn541-called x(08) Identificativi chiamante/chiamato
asn541-id-chiamata 9(12) ID chiamata da elaborare (input)

Se invocato con asn541-called = k-program-id e caller valorizzato, entra in modalita' called (w-dc-called = "S"): la chiave chiamata e' precaricata e all'uscita torna al chiamante invece di ripulire la maschera.

File acceduti

Input/lettura

File Copybook Uso
ASNCHTES acht-rec Testata chiamata: verifica acht-fl-esterna = 'S' e acht-classe = 'L'; dati cliente assistito, dossier
ASNCHDET achd-rec Dettaglio chiamata: matricola collegata (achd-id-matricola), matricola sostitutiva
ASNINTES acit-rec Testata intervento collegato alla chiamata (chiave k02)
ASNCHRIP arpt-rec Processo di riparazione (chiave k02 per chiamata): individua processo aperto (arpt-stato = "A")
ASNCHRID arpd-rec Raccordo documenti del processo: rileva DDT gia' presente e altri documenti
ASNMATRI amtr-rec Matricola: s/n, tipo, marca, modello, merce/matricola magazzino
ASNMODEL amod-rec Modello matricola: nome
ASNCHWKF achw-rec Work-flow chiamata (chiave k02): step k-step-c-prev-forn
COGGEANA ana-rec Anagrafica fornitore/cliente
COGCNDCF cnd-rec Condizioni cliente/fornitore: porto, vettore
COGMAGAZ magz-rec Magazzini (descrizione, validazione)
COGTABEL euta-rec Causali (tipo 15): validazione EU='U', cli/for='F', con-gia='SI', con-fat='NO'
COGMERCI mer-rec Merce di riconsegna / codice IVA / conto contabile fornitore
COGMATRI mtr-rec Matricola magazzino: magazzino di ubicazione

Output/scrittura

File Copybook Scrittura
COGTESBO tes-rec Testata DDT (tipob I, tipocf F, fornitore in tes-nonno)
COGMOMAG mag-rec Riga movimento magazzino (uscita U, qta 1, prezzo 0)
COGDESAG dag-rec Descrizioni aggiuntive variabili classe "05" (se configurate)
COGTESAP tsa-rec (via ASNINTE2 e testata)
ASNCHRIP arpt-rec Testata processo di riparazione
ASNCHRID arpd-rec Raccordo DDT ↔ processo (arpd-doc-classe = k-doc-tip-doc-mag-fornitore, prog 20)
ASNINDMG acim-rec Raccordo documento ↔ intervento
ASNINTE2 acit2-rec Estensione intervento (su F7 aggiorna)
ASNCHWKF achw-rec Aggiornamento step "preventivo fornitore" a stato C

Chiavi secondarie

  • asnintes.k02, asnchwkf.k02, asnchrip.k02

Configurazioni RNEWCONF

x99-confi (pack coge)

Idx Gruppo Chiave Variabile Effetto
01 ass-strum ddt-riconsegna-merce tm-cfg-riconsegna-merce Merce di default sulla riga DDT se la matricola non ha merce
02 ass-strum ddt-riparazione-forn-causale tm-cfg-causale Causale magazzino proposta
03 ass-strum generazione-dossier tm-cfg-genera-dossier Se S la stampa archivia prima il DDT nel dossier
04 ordini gestione-distinte-kit tm-cfg-gestione-kit Gestione kit passata a COGU11/COGU12

x99-load-config (programma corrente, pack coge)

Idx Gruppo Chiave Variabile
01 ASSIST tipo-numerazione-interventi tm-cfg-tipo-numerazione

Programmi chiamati

Programma Operazione Scopo
COGS25 (numerazione) Numero bolla per magazzino/anno/tipo (s25-i-cod 3/6/8 per tipob I/D/B)
COGU07 cerca-matricola / uscita-matricola Individua la matricola figlia e ne registra l'uscita verso il fornitore
COGU11 cancella-tutto / cancella-riga Cancellazione DDT e ripristino giacenza
COGU12 G Aggiornamento giacenza (solo mag M per Endonova; per gli altri sempre - PBUG-2207)
COGV52 COGV52-CALLED / ARCHIVIA Stampa DDT standard e stampa in archiviazione su file PCL
COGV56 COGV56-CALLED (v11-bolla) Gestione/modifica DDT (F3 Gestione)
COGSA605 + COGSA6 CERCA-DES / ESTRAI-TESTO classe "05" Testo variabile per descrizioni aggiuntive su DDT invio a riparazione
GESSTR SCOMPONI-NOTE Spezza il testo variabile in righe da 40 char per dag-desc
CRMS10 ALLEGA-DOC Allega il DDT (file PCL "intermedio") al dossier prima della stampa
COPIAF delete Cancella il file di stampa temporaneo dopo l'archiviazione
ASN210 ASN210-CALLED F9 ricerca avanzata chiamata
COGS65W (lookup) Ricerca/aiuto fornitore
COGU10 GetDivisaConto Divisa di conto per il documento

Flusso di creazione (F7 Nuovo → paragrafo aggiorna)

  1. aggiornamento-step: chiude lo step di work-flow k-step-c-prev-forn sulla chiamata.
  2. inserimento-cogtesbo: crea la testata DDT (tipob I) con numerazione COGS25, fornitore in tes-nonno, porto/vettore da condizioni.
  3. inserimento-cogmomag: crea la riga movimento (uscita, qta 1); se configurate le descrizioni variabili classe "05", agg-des-var-ddt genera le righe COGDESAG; aggiorna la giacenza (COGU12).
  4. scarico-matricola: se la matricola ha merce/matricola, ne registra l'uscita verso il fornitore (COGU07 uscita-matricola).
  5. inserimento-asnindmg: crea il raccordo documento ↔ intervento.
  6. Crea la testata processo ASNCHRIP con numerazione progressiva e la aggancia al DDT via ASNCHRID.

Cancellazione (F4 → paragrafo cancella)

  1. aggiornamento-step (riporta lo step allo stato corrente).
  2. COGU11 cancella-tutto sul DDT (con ripristino giacenza).
  3. Cancella i raccordi ASNINDMG (per chiave documento), il raccordo ASNCHRID (prog 20) e la testata processo ASNCHRIP.

Bloccata se il documento proviene da Areagate o se ci sono altri documenti sul processo.

Note implementative

  • Encoding: nel sorgente le costanti magazzino/tipo documento provengono da costanti-assist.cpy e costanti-tipi-documento.cpy.
  • La giacenza (COGU11 cancella-riga in cancellazione, COGU12 G in creazione) e' aggiornata solo per magazzino M quando il personal e' Endonova; per gli altri clienti sempre (PBUG-2207, 111224).
  • La stampa in modalita' archiviazione redirige l'output su file PCL in ext-tmp-dir, lo allega al dossier con CRMS10 e lo cancella con COPIAF.

Storico modifiche significative (dal sorgente)

  • 110215: Endonova, aggiornamento giacenza solo per magazzino M
  • 311018: descrizioni aggiuntive variabili classe "05" su DDT invio a fornitore (COGSA605/COGSA6/GESSTR)
  • 050224: conto contabile fornitore da mer-contr-for in mag-coge
  • 111224: PBUG-2207, ripristino aggiornamento giacenza per tutti i clienti (non solo Endonova) tramite ramo else