COGNA1 - Consultazione non conformita'¶
Panoramica¶
Programma GUI (griglia "MODO A" con pagina Filtri e pagina Risultati) per la consultazione delle richieste di reclamo / non conformita' (tabella testata COGNCTES + dettaglio COGNCDET). Una richiesta nasce da un reclamo del cliente collegato a un documento (ordine, DDT di magazzino o chiamata di assistenza) e puo' evolvere in una Non Conformita' (NC) con eventuale Azione Correttiva (AC) e Azione Preventiva (AP). Il programma estrae le testate del periodo filtrando per controparte, tipo documento e relativo documento, tipologia NC, stato (Aperta/Chiusa), presenza NC e presenza AC, e le presenta in griglia con costi, quantita' reclamate/rifatte/ripristinate, dossier collegati e note. Dalla griglia si accede al dettaglio del reclamo (COGNA0), alla stampa modelli (COGNA2), ai dossier CRM (CRMK10) e alla navigazione filiera documento (COGMA3).
Il programma opera anche come selettore richiamabile: se avviato con cogna1-called = "COGNA1-CALLED", l'Invio su una riga restituisce al chiamante l'id del reclamo scelto in cogna1-id-reclamo; puo' ricevere in input un documento (ordine / DDT cliente / chiamata) per precaricare i filtri.
Posizione nel menu¶
| Menu | Percorso |
|---|---|
| Vendite | Non conformita' > Consultazione |
Struttura del programma¶
File e tabelle utilizzati¶
| File/Tabella | Tipo | Descrizione |
|---|---|---|
| FEURTAB | Input | Tabella di sistema (nomi file) |
| COGNCTES | Input | Testata non conformita'/reclami: tabella principale estratta (chiave k02 su data reclamo) |
| COGNCDET | Input | Dettaglio non conformita': righe con merce, costo, quantita' reclamate/rifatte/ripristinate, note |
| COGTABEL | Input | Tabella tipologie NC (tipo "G3", campo descrizione euta-tnc-des) |
| COGGEANA | Input | Anagrafica generale (denominazione controparte) |
| COGTESOR | Input | Testate ordini cliente (validazione documento tipo "O") |
| COGTESBO | Input | Testate documenti di magazzino (validazione DDT tipo "D") |
| ASNCHTES | Input | Testate chiamate assistenza (validazione chiamata tipo "A") |
| COGMERCI | Input | Merceologia (descrizione merce del dettaglio) |
| T-GRID-DET (COGTRANS) | I-O | File di transito indicizzato che alimenta la griglia (alias t-gor-r- su cogtrans) |
| EXP-GRID | Output | File di appoggio per l'esportazione Excel della griglia |
Copybook principali¶
| Copybook | Descrizione |
|---|---|
| feurtab.fd / cogfiles.cpy | SELECT/FD e record della tabella di sistema |
| cogna1.select / cogna1.fd | SELECT e File Description (generati da Screens; includono COGNCTES/COGNCDET e COGTRANS aliasato) |
| cogna1.wrk / cogna1.decla / cogna1.prc | Working storage, declaratives e procedure di I/O generati da Screens |
| cogna1.tm | Campi modificabili della maschera (filtri) generati da Screens |
| cogna1-01.scr | Screen section (tab-control Filtri/Risultati e griglia grid-det) |
| cogna1.imppredf / cogna1.imppredf-wrk | Gestione impostazioni predefinite (filtri memorizzati CTRL-S / CTRL-F) |
| costanti-tipi-documento.cpy | Costanti tipo documento (k-doc-tip-ordine, k-doc-tip-doc-mag-cliente, k-doc-tip-chiamata) |
| utilcogna1.cpy | Area di linkage util-cogna1 (called/caller, tipo e chiave documento di input, cogna1-id-reclamo di output) |
| utilcogna0.cpy / utilcogna2.cpy | Interfacce con COGNA0 (gestione dettaglio reclamo) e COGNA2 (stampa modelli) |
| utilcrmk10.cpy / utilcrms06.cpy | Interfacce CRM: dossier (CRMK10) e lettura informazione (CRMS06) |
| utilcogma3.cpy | Interfaccia con COGMA3 (navigazione filiera documento) |
| utilo40.cpy / utilcogv39.cpy / utilasn210.cpy / utilcogt72.cpy | Aiuti di selezione documento (ordine COGO40, DDT COGV39, chiamata ASN210, causali COGT72) |
| utils52/utils65/utils68/utils93 (utilsNN) | Gestori di campo generati da Screens (data, cliente, merce, combo) |
| utilu10.cpy / utilu20.cpy | Editing importi e gestione merce |
| utilncnf.cpy | Lettura configurazioni RNEWCONF |
| utilgdad.cpy / wgrid.cpy | Interfaccia GRIDADMN e gestione griglia |
| cogazien.cpy / wgrave/wnscr/wopenf/wstato | Dati azienda, errori, video, apertura file, stato I/O |
| grave/stato/stato1/winmsg | Errori gravi, stato verbi, messaggi |
| mmmask.cpy / opengen.cpy | Gestione maschera e apertura file generica |
Chiamate a sottoprogrammi (CALL)¶
| Programma | Scopo |
|---|---|
| COGNA0 | Gestione del dettaglio del reclamo/non conformita' selezionato (F3, operazione GESTIONE) |
| COGNA2 | Stampa dei modelli documentali della NC (F9) |
| CRMK10 | Apertura dossier CRM: Dossier Ordine (F5) e Dossier Reclamo (F6) |
| CRMS06 | Lettura nota CRM associata alla NC (informazione configurata) |
| COGMA3 | Navigazione filiera del documento (classe "E", S-F2) |
| COGO40 | Selezione ordine cliente (aiuto documento tipo "O") |
| COGV39 | Selezione DDT cliente (aiuto documento tipo "D") |
| ASN210 | Selezione chiamata assistenza (aiuto documento tipo "A") |
| COGT72 | Aiuto/selezione causale |
| GRIDADMN | Personalizzazione layout griglia (Shift-F4) |
| RNEWCONF | Lettura configurazioni applicative |
Logica di elaborazione¶
1. Inizializzazione (apri)¶
Imposta nome programma, verifica abilitazione (ctr-abil), apre i file, legge i dati azienda e le configurazioni (x99-confi). Se richiamato (cogna1-called = "COGNA1-CALLED") copia in w-dati-called caller, tipo/chiave documento e id reclamo di input. Costruisce il menu contestuale e i pulsanti custom: Salva/Cerca impostazione (CTRL-S/CTRL-F), Visualizza Dossier Ordine (F5), Visualizza Dossier Reclamo (F6), Navigazione sul documento (S-F2). Prepara la griglia e imposta il titolo "Consultazione non conformita'".
2. Pagina Filtri (a4 e accept a-tm-*)¶
Inizializza i filtri con default: periodo = anno corrente (1 gennaio - 31 dicembre), controparte tipo "C", stato "T", presenza NC "T", presenza AC "T", tipo documento "T". Se e' arrivato un documento di input traduce il tipo (k-doc-tip-ordine -> "O", k-doc-tip-doc-mag-cliente -> "D", k-doc-tip-chiamata -> "A") e precarica la chiave documento nella maschera. Carica l'eventuale filtro predefinito. La pagina Filtri raccoglie: date da/a, tipo documento e documento interessato (con aiuti COGO40/COGV39/ASN210 secondo il tipo, e validazione su COGTESOR/COGTESBO/ASNCHTES che valorizza automaticamente la controparte), controparte (tipo/codice), tipologia NC, stato, presenza NC, presenza AC. F7 filtra, F8 aiuto/calendario. La validazione complessiva e' in x-imposta-conferma / a-controlla-filtri.
3. Estrazione e creazione transito (a-leggi-dati -> z-grid-det-crea-transito -> z-grid-ricerca-dati)¶
Apre e ricrea il file di transito, poi scorre COGNCTES per data reclamo (chiave k02) fino a superare tm-data-a. Per ogni testata applica in sequenza i filtri: documento (per tipo, confrontando nct-doc-key; per le chiamate confronto numerico via numval), controparte (tipo "N" = anonima, oppure tipo+codice specifici), tipologia NC, stato, presenza NC (nct-fl-nc), presenza AC (nct-fl-ac). Le testate che superano i filtri sono inserite nel transito valorizzando la riga con: id, data reclamo, controparte e denominazione, tipo/chiave documento, stato, data chiusura, flag e data NC, flag e causale/chiave documento di rifacimento, importo e tipo addebito, flag e data AC/AP, dossier documento e dossier NC, codice CRA, tipologia NC e sua descrizione (da COGTABEL tipo "G3"), nota CRM (via CRMS06).
Per ogni testata scorre poi COGNCDET (chiave su id) accumulando: costo NC totale, quantita' reclamate/rifatte/ripristinate; se il reclamo ha una sola riga di dettaglio ne riporta la merce e la descrizione; se la nota di testata e' vuota usa quella di dettaglio.
4. Pagina Risultati e gestione griglia (a-pag-risultati / a-grid)¶
Mostra la griglia con i reclami/NC estratti. Il ciclo a-grid gestisce:
- doppio click / Invio su cella: emula Invio; in modalita' richiamata l'Invio restituisce
cogna1-id-reclamoed esce; - Shift-F4: personalizzazione griglia (GRIDADMN); Shift-F5: esportazione Excel;
- F5 / F6 (se cliente potenziale abilitato): apertura Dossier Ordine / Dossier Reclamo su CRMK10;
- F3: gestione dettaglio reclamo (COGNA0, operazione GESTIONE) - non se il chiamante e' gia' COGNA0;
- F9: stampa modelli della NC (COGNA2);
- S-F2: navigazione filiera documento (COGMA3, classe "E");
- menu pop-up della griglia (exception 151-199).
All'uscita dalla griglia torna alla pagina filtri (a4).
5. Chiusura (fine / z-chiudi)¶
Chiude i file, chiude e cancella il transito, distrugge il menu della griglia, chiude la finestra, esegue z-99-exit-program ed esce.
Note tecniche¶
- Modello dati NC a due livelli:
COGNCTES(testata: una richiesta/reclamo con stato, flag NC/AC/AP, dossier e riferimenti documento) eCOGNCDET(righe di dettaglio: merce, costo, quantita' reclamate/rifatte/ripristinate, note). Questo programma e' di sola lettura su entrambi; la gestione e modifica avvengono in COGNA0. - Documento collegato polimorfo: il reclamo puo' riferirsi a tre tipi di documento (
costanti-tipi-documento.cpy): ordine cliente ("O", chiavetipo/anno/numero/progr), DDT di magazzino cliente ("D", chiavemag/anno/tipob/bolla), chiamata assistenza ("A", id numerico). Il filtro documento e gli aiuti di selezione si adattano al tipo, e la validazione precompila automaticamente la controparte dal documento indicato. - Tipologia NC su COGTABEL tipo "G3": la descrizione della tipologia di non conformita' e' letta da COGTABEL con
euta-tipo-x = "G3"(campoeuta-tnc-des). - Doppia funzione consultazione/selettore: standalone da menu e' pura consultazione con drill-down; richiamato (
w-dc-called = "S") restituisce l'id del reclamo scelto incogna1-id-reclamo, comportandosi da help/selezione per altri programmi. - File di transito COGTRANS aliasato: la griglia e' alimentata da un file indicizzato temporaneo (
t-grid-det), ottenuto dalla COPYcogtranscon replacingtrs-->t-gor-r-, ricreato ad ogni estrazione e cancellato in chiusura. - Configurazione RNEWCONF letta (
x99-confi, pacchetto "C"): info-crm-note-nc (gruppo "nonconf", numero dell'informazione CRM da cui leggere la nota della NC tramite CRMS06). - Programma generato da Screens: SELECT/FD, griglia, procedure e gestione filtri predefiniti provengono dai file
cogna1.select/.fd/.wrk/.decla/.prc/.tme dalla screencogna1-01.scrincbl/screens/. La griglia e' amministrata da GRIDADMN (Shift-F4). Chiave secondaria COGNCTESk02inclusa manualmente.