COGV14W - Worker gestione bolle di entrata¶
| Campo | Valore |
|---|---|
| Sorgente | cbl/cogv14w.cbl |
| Tipo | Worker |
| Chiamato da | COGV14 (programma principale bolle entrata) |
| Righe sorgente | ~27.000 |
Descrizione¶
Worker principale per l'inserimento e la modifica delle bolle di entrata magazzino (delivery notes). Gestisce l'interfaccia grafica a tab (testata + griglia dettaglio righe) per la compilazione del documento, inclusa la validazione dei dati, il calcolo dei prezzi, la gestione lotti, matricole e l'integrazione con il sistema Modula (WMS).
Implementa una funzione di post-aggiornamento (TASK-3648): quando una bolla e' gia' "accertata" (confermata), il programma non permette modifiche al documento ma abilita un sottogruppo di tasti funzione per operazioni successive (stampa, etichette, listino, ecc.).
File e tabelle¶
| File/Tabella | Tipo | Descrizione |
|---|---|---|
| FEURTAB (cogfiles) | Input | Parametri generali azienda |
Tabelle da cogv14w.select |
I-O | Tabelle gestionale (anagrafica, merci, testate bolle, ecc.) |
| TRAN-D97 | I-O | File transitorio per gestione documenti |
| TRAN-S47 | I-O | File transitorio per elaborazioni |
| TRAN-V32 | External | File transitorio condiviso tra moduli |
| TRAN-U30 | I-O | File transitorio per gestione U30 |
| TRAN-V14W | I-O | File transitorio di comunicazione con COGV15W |
| TRSMATRI | I-O | File transitorio matricole |
| TRAN-S26 | I-O | File transitorio per elaborazioni |
| COGTRANS | I-O | File transitorio indicizzato con chiave primaria e secondaria (ordinamento) |
| COGTRANS2 | I-O | File transitorio secondario |
| COGTRANS3 | I-O | File transitorio terziario |
| COGTRANS4 | I-O | File transitorio quaternario (con chiave alternativa entrusc) |
| INPFIL | Input | File sequenziale per lettura EAN/quantita' |
| INPFIL2 | Input | File sequenziale per dati generici (600 byte) |
| FILASCII | I-O | File ASCII per import/export |
Copybook principali¶
| Copybook | Descrizione |
|---|---|
| cogv14w.wrk / .select / .fd / .tm / .scr | Screen Designer: working, select, fd, tab-maschera, screen |
| cogv14w.imppredf-wrk | Working storage per import predefinito |
| k-u10.cpy | Costanti per conversione divisa |
| k-personal.cpy | Costanti personalizzazioni aziendali |
| costanti-assist.cpy | Costanti per assistenza tecnica |
| costanti-modula.cpy | Costanti per integrazione Modula WMS |
| costanti-cogevlog.cpy | Costanti per log eventi |
| l-copiaf.cpy | Linkage per copia file |
| k-modelli-ie-int-dm.cpy | Costanti per interscambio documenti |
| utilcogpa9.cpy | Interfaccia verso COGPA9 (dati interscambio) |
Chiamate a sottoprogrammi¶
| Programma | Scopo |
|---|---|
| COGY68 | Gestione operazioni su griglia |
| COGU07 | Utilita' generiche |
| COGE22 | Gestione prezzi/sconti |
| COGE18 | Gestione varie |
| COGD02 | Gestione dati |
| COGD92 | Gestione documenti |
| COGF22 | Gestione (obsoleto, solo per personal specifico) |
| COGV37 | Gestione bolle correlate |
| COGV94 | Gestione visualizzazione |
| COGF36 | Gestione |
| COGF64 | Gestione |
| COGH20 | Gestione |
| COGP20 | Gestione stampe |
| COGSA9 | Gestione SA9 |
| COGUA8 | Gestione UA8 |
| COGA09 | Gestione A09 |
| COGSW1 | Gestione integrazione Modula |
| WMSW01 | Integrazione WMS Modula |
| GRP002 | Gestione gruppi |
| GRIDADMN | Amministrazione griglia |
| DIALOGS | Gestione dialoghi utente |
Logica di elaborazione¶
Flusso principale¶
- Inizializzazione: apertura file, lettura configurazioni, costruzione griglia dettaglio con colonne personalizzabili per azienda.
- Accept testata: raccolta dati testata bolla (magazzino, anno, tipo, numero, fornitore, causale, condizioni di pagamento).
- Controllo accertamento: se la bolla e' gia' accertata (
tes-fl-acc = "A"), non permette la modifica ma abilita i tasti funzione di post-aggiornamento (vedi sotto). - Griglia righe: gestione inserimento/modifica righe dettaglio con articolo, quantita', prezzo, sconti, lotti, matricole.
- Aggiornamento: salvataggio dati su file transitorio TRAN-V14W per il ritorno al programma chiamante.
Post-aggiornamento su bolle accertate (TASK-3648)¶
Quando la bolla e' gia' accertata, viene presentato un dialogo con i seguenti tasti funzione abilitati:
| Tasto | Operazione |
|---|---|
| ESC | Prosegui (chiudi dialogo) |
| F2 | Aggiornamento listino vendita |
| F7 | Stampa etichette |
| F9 | Stampa bolla |
| F1 | Anomalie di fornitura |
| F8 | Etichette lotti (se gestione lotti attiva) |
| S-F7 | Archiviazione ottica (se attiva) |
Alcuni tasti sono disabilitati nel post-aggiornamento: inserimento/cancellazione cauzioni (F8 con cauzioni), manutenzione matricole (F5), completamento lotti (F6), collegamento a chiamata (S-F4).
Nomi file temporanei univoci per processo¶
Il nome del file transitorio TRAN-V14W include il PID del processo (ext-pid) per evitare conflitti tra sessioni concorrenti:
#COGV15W_{ext-pid}.{wo-oper}
La stessa convenzione e' usata per COGTRANS e TRAN-S47.
Interscambio documenti¶
Il programma supporta l'import/export di righe dettaglio tramite il modulo COGPA9 (interscambio documenti da file Excel). I campi importabili sono: codice merce (maggiore/minore), quantita', prezzo lordo, sconti 1 e 2, prezzo netto, importo, codice merce fornitore.
Note¶
- Il sorgente e' molto esteso (~27.000 righe) e gestisce una quantita' significativa di casistiche legate alle personalizzazioni aziendali (
az-personal). - Il file TRAN-V32 e' dichiarato
EXTERNAL, quindi condiviso in memoria tra programmi co-residenti. - La griglia dettaglio ha colonne personalizzabili: alcune visibili/nascoste in base alla configurazione aziendale (costi di trasporto, prezzi in divisa, codici cliente, ecc.).
Casistica problemi noti¶
Tabella righe piena su carichi con molte righe¶
- Sintomo: Entrando in gestione di un carico con molte righe, il programma mostrava "Tabella righe piena" seguito da errori a catena e uscita forzata.
- Causa: La tabella interna per le righe del carico era dimensionata a 200 elementi, insufficiente per documenti con piu' righe.
- Correzione: Aumentata la dimensione della tabella da 200 a 900 elementi.
- Riferimento: dettaglio — ClickUp 869d2fctj