COGL08 - Gestione Pre-Distinte
Panoramica
Programma interattivo per la gestione delle pre-distinte (tabella COGDBPRE). Una pre-distinta e' associata a una merce temporanea "padre" e contiene un elenco di componenti (merci ufficiali o temporanee) con le relative quantita'. Supporta inserimento, modifica e cancellazione dei componenti, duplicazione della pre-distinta, copia da distinte base ufficiali, e gestione note. La maschera e' in formato testo (non Screens). Circa 1.276 righe.
| Menu |
Percorso |
| Magazzino |
Produzione > Distinte-Preventivo > Gestione Pre-Distinte |
Struttura del programma
File e tabelle utilizzati
| File/Tabella |
Tipo |
Descrizione |
| FEURTAB |
Input |
Tabella di sistema |
| COGMERCI |
Input |
Anagrafica merci ufficiale |
| COGMERTP |
I-O |
Anagrafica merci temporanee |
| COGDBPRE |
I-O |
Pre-distinta base (tabella principale) |
| COGDBAGG |
Input |
Distinta base aggregata (per copia con F10) |
| COGDBASE |
Input |
Distinta base ufficiale (per copia con F10) |
Copybook principali
| Copybook |
Descrizione |
| cogdbpre.cpy |
Record pre-distinta |
| cogmerci.cpy |
Record anagrafica merci |
| cogmertp.cpy |
Record merci temporanee |
| cogdbagg.cpy |
Record distinta base aggregata |
| cogdbase.cpy |
Record distinta base ufficiale |
| utils21.cpy |
Utility gestione tabelle/griglie |
| utils22.cpy |
Accept merce con ricerca (COGS22) |
| utilu10.cpy |
Interfaccia COGU10 per divise |
Chiamate a sottoprogrammi (CALL)
| Programma |
Scopo |
| COGS22 |
Accept merce con ricerca e validazione (per padre e componenti) |
| COGS12 |
Ricerca merce temporanea (F4) |
| COGU10 |
Gestione divise |
Logica di elaborazione
Flusso principale
- Inizializzazione (
a000): apre file (5 file: COGMERCI, COGDBPRE, COGMERTP, COGDBAGG, COGDBASE), prepara maschera testo (22 righe x 58 colonne, griglia da 15 righe di componenti).
- Input padre (
a7): accept del codice merce temporanea padre tramite COGS22. Verifica che esista in COGMERTP. Mostra descrizione.
- Caricamento componenti (
a10): legge i record COGDBPRE con chiave padre (gru+sot+cod) e carica nella tabella tab-maschera (max 400 elementi). Per ogni componente:
- Cerca prima in COGMERTP: se trovato e anche in COGMERCI, segnala anomalia
- Se solo in COGMERTP: tipo = "T" (temporanea)
- Se solo in COGMERCI e padre = "P": tipo = "D" (distinta)
tm-fl-mt: "T" = temporanea, "M" = merce ufficiale
- Gestione righe (
a30 e seguenti): griglia paginata con navigazione standard (su/giu', PgUp/PgDown):
- Accept codice merce componente (COGS22), quantita' (intera + decimale)
- F4: ricerca tra merci temporanee (COGS12)
- F5: cancella riga corrente
- F6: apre l'anagrafica della merce selezionata
- F7: duplica pre-distinta (
dup-com)
- F9: gestione note (fino a 50 righe in una finestra 6 righe x 62 colonne)
- F10: copia da distinta base ufficiale (
cop-db)
- Salvataggio (
a90): alla conferma (F3), cancella tutti i record COGDBPRE esistenti per il padre, poi riscrive tutti i componenti della tabella.
Struttura del record COGDBPRE
| Campo |
Tipo |
Descrizione |
| dbp-chia (chiave) |
|
gru(2) + sot(2) + cod(5) + prog(4) del padre |
| dbp-gru-f / dbp-sot-f / dbp-cod-f |
|
Codice merce componente |
| dbp-fl-mt |
x(1) |
"T" = temporanea, "M" = merce ufficiale |
| dbp-qta |
9(6)v999 |
Quantita' |
Funzioni speciali
- Duplicazione (F7): chiama
dup-com, crea una copia della pre-distinta su un nuovo codice merce temporanea
- Copia da distinta (F10): chiama
cop-db, importa i componenti da COGDBAGG/COGDBASE
- Note (F9): gestione note testuali tramite finestra overlay (
screen-3, 5 righe da 60 caratteri visibili alla volta, max 50 totali)
Note tecniche
- La maschera e' in formato testo classico con griglia di 15 righe di componenti visibili (spaginamento su max 400).
- Il programma usa
PERFORM ... THRU per diverse sezioni (visualizzazione, duplicazione, copia distinta, note, navigazione).
- Alla conferma, il salvataggio e' distruttivo: cancella tutti i record del padre e li riscrive. Non c'e' gestione transazionale.
- La quantita' ha 3 decimali (9(6)v999).
- Il programma distingue visivamente i componenti: "D" = ha sotto-distinta, "T" = temporanea, vuoto = merce ufficiale senza sotto-distinta.