COGFA3 - Situazione sintetica dichiarazioni di origine (DOP)¶
Panoramica¶
Programma GUI a griglia per la consultazione sintetica delle dichiarazioni di origine preferenziale (DOP) delle merci per fornitore. A differenza di COGFA2 (dettaglio per singola dichiarazione), COGFA3 mostra una riga per coppia articolo/fornitore con la situazione piu' recente: data e flag dell'ultima dichiarazione di origine (DOP) e data/flag dell'ultima indicazione PSP trovate nel periodo. Serve come cruscotto di controllo per capire, articolo per articolo, se la dichiarazione di origine e il documento PSP sono presenti e aggiornati.
Da ogni riga della griglia si accede al dettaglio (F2 -> COGFA2) e si gestiscono i documenti immagine PSP (F4/F6/F7 via COGU06). E' richiamabile anche da altri programmi (cogfa3-called = "COGFA3"), con merce e interlocutore preimpostati in util-cogfa3.
Posizione nel menu¶
| Menu | Percorso |
|---|---|
| Vendite | Documentazioni > Dichiarazioni di origine > Situazione |
Struttura del programma¶
File e tabelle utilizzati¶
| File/Tabella | Tipo | Descrizione |
|---|---|---|
| FEURTAB | Input | Tabella di sistema (nomi file) |
| COGMERFO | Input | Merci-fornitore: scandita per individuare le coppie articolo/fornitore (chiave fornitore k02) |
| COGDOMER | Input | Dichiarazioni di origine merce (DOP): letta a ritroso per trovare l'ultima dichiarazione DOP/PSP |
| COGGEANA | Input | Anagrafica generale (nome fornitore) |
| COGTABEL | Input | Tabella generica; nazioni (tipo 54) per descrizione paese origine |
| t-grid-det (T-GRID-DET) | I-O | File di transito indicizzato che alimenta la griglia (istanza di COGTRANS chiave k03) |
Copybook principali¶
| Copybook | Descrizione |
|---|---|
| feurtab.fd / cogfiles.cpy | SELECT/FD e record della tabella di sistema |
| cogfa3.select / cogfa3.fd | SELECT e File Description (generati da Screens) |
| cogfa3.wrk / cogfa3.decla / cogfa3.prc | Working storage, declaratives e procedure di I/O generati da Screens |
| cogfa3.tm | Campi modificabili della maschera (filtri) generati da Screens |
| cogfa3-01.scr | Screen section (griglia e area filtri) |
| cogfa3.imppredf-wrk / cogfa3.imppredf | Gestione filtri predefiniti memorizzati (Ctrl-S / Ctrl-F) |
| utilcogfa3.cpy | Area di linkage util-cogfa3 (cogfa3-caller, cogfa3-called, cogfa3-merce, cogfa3-ana) |
| utilcogfa2.cpy | Area di linkage per la chiamata al dettaglio COGFA2 (F2) |
| utilu16.cpy | Area per COGU16W (selezione/range articoli con criterio) |
| cogmerfo.k02 | Chiave secondaria COGMERFO (per fornitore) |
| k-tipi-cogtabel.cpy | Costanti tipo COGTABEL (k-euta-tipo-nazioni = 54) |
| wgrid.cpy / utilgdad.cpy | Gestione griglia e interfaccia GRIDADMN |
| utile04 / utils52 / utils65 / utils68 / utils93 / utilu06 / utilu10 / utilu20 | Aree per subroutine di help/selezione e ottica |
| utilncnf.cpy / cogazien.cpy | Configurazioni (RNEWCONF) e dati azienda |
| grave / stato / stato1 / winmsg / mmmask / opengen | Errori, stato verbi, messaggi, maschera, apertura file |
| cogtrans.k03 | File di transito, incluso con REPLACING (t-grid-det / t-gor-r-) |
Chiamate a sottoprogrammi (CALL)¶
| Programma | Scopo |
|---|---|
| GRIDADMN | Preparazione e personalizzazione (Shift-F4) delle colonne della griglia |
| COGFA2 | Apertura del dettaglio DOP per l'articolo/fornitore della riga selezionata (F2) |
| COGU16W | Selezione/range articoli con criterio (tm-tipo-sel) e ordinamento |
| COGU06 | Archiviazione ottica: cerca/inserisci/visualizza/elimina documento immagine PSP (tipo "DP") |
| COGS65W | Help/selezione interlocutore (entry-point z-s65-tm-int) |
| RNEWCONF | Lettura configurazione ARC-OTT / PATH-APRI-FILE |
| COGS68 (via entry-point z-s68) | Help/selezione articolo (merce) per gli estremi da/a |
| W$MENU | Menu pop-up contestuale sul right-click della griglia |
Logica di elaborazione¶
1. Inizializzazione (apri)¶
Come COGFA2: nome programma, ctr-abil, apertura file, configurazione, gesdebug. Abilita F3, F8 aiuto/calendario, F9, Shift-F4, Shift-F5. Se richiamato valorizza w-dc-*. Costruisce menu pop-up e pulsanti custom, tra cui, oltre a Salva/Cerca impostazione e ai tre pulsanti immagine PSP, il pulsante "Dichiarazioni di origine (F2)" che apre il dettaglio. Prepara la selezione articoli con COGU16 (Prepara) e la griglia (GRIDADMN). Titolo "Consultazione dichiarazioni di origine".
2. Impostazione filtri (a4, a-tm-*)¶
Inizializza tipo "F", imposta l'ordinamento (interlocutore + codice merce avanzato) e carica l'eventuale filtro predefinito. I campi filtro sono: tipo dichiarazione, interlocutore (COGS65W), criterio di selezione articoli (tm-tipo-sel, combo gestita con COGU16), articolo da (a-tm-da-mer) e articolo a (a-tm-a-mer), entrambi con COGS68 e passaggio degli estremi a COGU16. Se richiamato salta i filtri e va a a-leggi-dati.
3. Costruzione file di transito (z-grid-det-crea-transito)¶
- Se non c'e' range di articoli (
tm-da-meretm-a-mernulli) scandisce direttamente COGMERFO per fornitore (z-scorri-cogmerfo); - altrimenti usa COGU16 (
z-scorri-cogu16: Init-Start / Set-Estremi / ciclo Leggi) per iterare gli articoli del range e per ciascuno scandisce COGMERFO (z-grid-det-riempi-da-cogu16).
Per ogni coppia merce/fornitore (z-grid-det-riempi-da-cogmerfo) cerca in COGDOMER, leggendo a ritroso (rdprv) dalla data sistema, l'ultima dichiarazione utile: memorizza la prima con flag origine valorizzato (data e paese DOP) e la prima con flag PSP valorizzato (data PSP), scartando le cancellate; esce quando ha trovato entrambe. z-grid-det-riempi-campi-t-gor valorizza merce, fornitore e descrizione (COGGEANA), descrizione paese (COGTABEL tipo 54) e presenza allegato PSP (COGU06).
4. Gestione griglia (a-grid)¶
Ciclo di accept che gestisce uscita, Shift-F4 (GRIDADMN), Shift-F5 (export Excel), F2 (apre il dettaglio COGFA2 passando merce/tipo/codice interlocutore della riga), le operazioni immagine PSP (F4/F6/F7 via COGU06, con controllo az-arc-ott = "S") e le voci del menu pop-up. La griglia e' di sola consultazione (le celle sono non editabili: z-99-begin-entry fallisce l'entry).
5. Chiusura (fine / z-chiudi)¶
Annulla COGU06, chiude gesdebug (consultazione se wo-oper = 777), chiude e cancella il file di transito, distrugge il menu, chiude la finestra ed esce.
Note tecniche¶
- Vista sintetica vs dettaglio: COGFA3 e' il livello "situazione" (una riga per articolo/fornitore con l'ultima DOP e l'ultima PSP), COGFA2 e' il livello "dettaglio" (tutte le dichiarazioni). Il passaggio avviene con F2 che chiama COGFA2 in modalita' richiamata.
- Doppia sorgente di scansione: senza range articoli scandisce COGMERFO per fornitore (piu' diretto); con range usa COGU16 per applicare il criterio di selezione articoli. In entrambi i casi la situazione DOP/PSP e' ricavata leggendo COGDOMER a ritroso.
- Griglia read-only: la griglia non e' editabile; le uniche azioni sono navigazione, dettaglio (F2), gestione immagine PSP e personalizzazione layout.
- COGTABEL tipo 54 (nazioni) per la descrizione del paese di origine; chiave secondaria
cogmerfo.k02aggiunta manualmente a fine procedure division. - Documenti ottici PSP: condizionati da
az-arc-ott = "S", gestiti con COGU06 tipo doc "DP" (chiave merce + tipo + codice interlocutore + "0001"). - Programma generato da Screens: struttura, griglia e I/O da
cogfa3.select/.fd/.wrk/.decla/.prce screencogfa3-01.scr.