COGM67 -- Visualizzazione Merci in Buoni di Prelievo¶
Sorgente: cbl/cogm67.cbl | Tipo: Programma con interfaccia grafica (griglia interattiva) | Program-ID: COGM67
Menu:
- Magazzino > Entrate > Buoni di Prelievo > Visualiz. Merci in Buoni di Prel.
- Magazzino > Uscite > Buoni di Prelievo > Visualiz. Merci in Buoni Prelievo
Scopo¶
Visualizza i movimenti dei buoni di prelievo (BDP) filtrati per merce, cliente/fornitore, magazzino, intervallo date e stato del documento (aperto/chiuso/tutti). Il programma:
- Ricerca le righe dei BDP (
COGRIGBP) in base ai filtri impostati, ordinando per merce oppure per cliente+merce - Copia i dati selezionati in un file di transito temporaneo (
COGTRANS) per lo spaginamento della griglia - Mostra il dettaglio di ogni riga BDP: documento, data, quantita', importo, cliente/fornitore, merce, stato, prenotazioni collegate (ordine fornitore, preventivo, ordine cliente, componente)
- Permette di accedere alla gestione BDP (F3 via COGM58/COGM59), alla chiusura (F6 via COGM68) e alla stampa (F9: etichette sovrapacco COGP78 o certificato conformita' COGD76)
Puo' funzionare sia in modalita' autonoma (da menu) sia come programma richiamato (CALLED) da altri programmi, tipicamente per visualizzare i BDP aperti relativi a una specifica merce.
Interfaccia utente¶
Maschera di filtro (tab-maschera)¶
| Campo | Tipo | Descrizione |
|---|---|---|
tm-ana-tipo |
x(01) | Tipo anagrafico: C=Cliente, F=Fornitore, T=Tutti (default C; se CALLED default T) |
tm-cli |
9(05) | Codice cliente/fornitore (0 = tutti) |
tm-da-merce / tm-a-merce |
x(09) | Intervallo codici merce (vuoto = dall'inizio/alla fine) |
tm-mag |
x(01) | Magazzino (vuoto = tutti). Se CALLED e w-dc-mag valorizzato, usa quello |
tm-da-data / tm-a-data |
9(08) | Intervallo date (AAAAMMGG). Default: 01/01/anno corrente -- 31/12/anno corrente |
tm-tipo |
x(01) | Stato BDP: A=Aperti, C=Chiusi, T=Tutti |
Ordine di accept dei campi¶
Tipo anagrafico > Cliente/Fornitore > Da merce > A merce > Magazzino > Da data > A data > Tipo documenti > Conferma
Griglia (grid-record)¶
| Colonna | Descrizione |
|---|---|
| Documento | Magazzino (grd-bdp-mag) + numero BDP (grd-bdp-num) |
| Stato | Aperto / Chiuso (grd-stato) |
| Data | Data del BDP gg/mm/aaaa (grd-data) |
| Merce | Codice merce (grd-merce) |
| Quantita' | Quantita' della riga (grd-qta) |
| Importo | Importo netto convertito in divisa contabile (grd-imp) |
| Cod/Nome Cliente | Codice e ragione sociale (grd-cli-cod, grd-cli-des) |
| Prenotazione preventivo | Tipo e chiave oggetto prenotazione preventivo (grd-prn-tip-p, grd-prn-chiave-oggetto-p) |
| Prenotazione fornitore | Tipo e chiave oggetto prenotazione ordine fornitore (grd-prn-tip-f, grd-prn-chiave-oggetto-f) |
| Prenotazione cliente | Tipo e chiave oggetto prenotazione ordine cliente/componente (grd-prn-tip-c, grd-prn-chiave-oggetto-c) |
| Riferimento | Riferimento testata BDP (grd-rif) |
| Tipo Anagrafico | Cliente / Fornitore (grd-ana-tipo) |
Tasti funzione¶
| Tasto | Funzione |
|---|---|
| F3 (testata) | Conferma filtri |
| F3 (griglia) | Gestione BDP selezionato (COGM58/COGM59). Disabilitato per tipo Fornitore |
| F6 | Chiusura BDP (COGM68) -- solo per BDP aperti; dopo la chiusura rilancia l'elaborazione |
| F7 | Descrizione aggiuntiva (WIN089) -- solo se az-prof = 'S' |
| F9 | Stampa: dialog per scegliere tra etichette sovrapacco (COGP78) o certificato conformita' (COGD76) |
| S-F4 | Gestione griglia (GRIDADMN) |
| S-F5 | Esportazione Excel |
Modalita' CALLED¶
Quando richiamato con cogm67-called = "COGM67-CALLED" (via utilcogm67.cpy):
| Campo linkage | Descrizione |
|---|---|
cogm67-called |
Deve valere "COGM67-CALLED" per attivare la modalita' |
cogm67-ope |
Operazione: "VIS-APERTI-PER-MERCE" = filtra BDP aperti per una merce specifica |
cogm67-merce |
Codice merce da filtrare (gru + sot + cod) |
cogm67-mag |
Magazzino da filtrare. Se valorizzato, viene usato al posto del magazzino principale |
In modalita' CALLED con operazione VIS-APERTI-PER-MERCE, il programma:
- Imposta tipo = "A" (solo aperti), date dal 2000/01/01 al 2099/12/31
- Imposta da-merce e a-merce con il codice ricevuto
- Imposta
tm-ana-tipo= "T" (tutti) - Se
cogm67-mage' valorizzato, lo usa come filtro magazzino - Esegue direttamente l'elaborazione senza passare per l'accept dei filtri
Chiamanti principali¶
| Programma | Contesto |
|---|---|
| COGV35 | Dettaglio quantita' prenotata (S-F8): passa la merce selezionata e il magazzino corrente |
| COGG4D | Visualizzazione merci nei BDP |
| TGL200 / TGL201 | Programmi tablet -- visualizzazione BDP per merce |
Logica di Elaborazione¶
Flusso principale¶
- Inizializzazione: apertura file, lettura divisa contabile (
COGU10W), creazione file transito temporaneo (COGTRANS), preparazione griglia e controlli - Accept filtri: sequenza di accept per tipo anagrafico, cliente, da-merce, a-merce, magazzino, da-data, a-data, tipo documenti. Conferma con F3
- Elaborazione (
b-elabora): - Determina la chiave di lettura: se
tm-cli = 0usa chiave 2 (per merce), altrimenti chiave 3 (per cliente+merce) - Posiziona su
COGRIGBPcon i filtri impostati - Cicla sulle righe; per ciascuna:
- Filtra per cliente, magazzino, intervallo date
- Legge la testata BDP (
COGTESBP) per verificare lo stato aperto/chiuso e il tipo anagrafico - Filtra per tipo anagrafico (Cliente/Fornitore) se specificato
- Copia il record nel file di transito
COGTRANSper lo spaginamento
- Visualizzazione griglia: mostra i risultati con spaginamento avanti/indietro. Per ogni riga, legge le prenotazioni collegate (
COGPRENO) per mostrare preventivi, ordini fornitore/cliente, componenti - Azioni da griglia: F3=gestione BDP, F6=chiusura, F9=stampa, F7=descrizione aggiuntiva
Dettaglio prenotazioni (x-riempi-grid-record)¶
Per ogni riga della griglia, il programma legge la tabella COGPRENO con i tipi:
- F = Ordine fornitore: mostra tipo/anno/numero/progressivo
- P = Preventivo: mostra anno/numero/progressivo
- C = Ordine cliente: mostra tipo/anno/numero/progressivo
- M = Componente: mostra in formato specifico
File e Tabelle¶
| File/Tabella | Copybook | Uso |
|---|---|---|
| FEURTAB | cogfiles.cpy | Tabella nomi file del gestionale |
| COGRIGBP | cogrigbp.fd, .k02, .k03 | Righe buoni di prelievo (tabella principale di lettura) |
| COGTESBP | cogtesbp.fd | Testata buoni di prelievo (per stato aperto/chiuso e tipo anagrafico) |
| COGGEANA | coggeana.fd | Anagrafica clienti/fornitori (per nome) |
| COGMERCI | cogmerci.fd | Anagrafica merci (per descrizione) |
| COGMAGAZ | cogmagaz.fd | Anagrafica magazzini (per validazione e descrizione) |
| COGPRENO | cogpreno.fd | Prenotazioni collegate ai BDP (preventivi, ordini, componenti) |
| COGTRANS | (file temporaneo) | File di transito per spaginamento griglia, creato in output all'avvio |
Programmi chiamati¶
| Programma | Scopo |
|---|---|
| COGM58 / COGM59 | Gestione buono di prelievo (richiamato con F3 da griglia) |
| COGM68 | Chiusura buono di prelievo (F6) |
| COGP78 | Stampa etichette sovrapacco (F9) |
| COGD76 | Stampa certificato di conformita' (F9) |
| DIALOGS | Finestra di scelta stampa (F9) |
| WIN089 | Descrizione aggiuntiva (F7) |
| COGU10W | Utility valute/divisioni (conversione importi) |
| COGS65W | Selezione cliente/fornitore con ricerca |
| GRIDADMN | Gestore griglia interattiva |
Copybook principali¶
cogm67.select,cogm67.fd,cogm67.wrk,cogm67.prc,cogm67.decla,cogm67-01.scr-- Definizioni generate da Screensutilcogm67.cpy-- Interfaccia linkage per chiamata esterna (contienecogm67-called,cogm67-ope,cogm67-merce,cogm67-mag)utilcogm59.cpy-- Interfaccia per richiamo COGM59utilcogm68.cpy-- Interfaccia per richiamo COGM68utilcogd76.cpy-- Interfaccia per richiamo COGD76utilp78.cpy-- Interfaccia per richiamo COGP78utildlg.cpy-- Interfaccia per DIALOGSk-u10.cpy-- Costanti per utility COGU10Wcogazien.cpy-- Dati aziendacogrigbp.k02,cogrigbp.k03-- Routine I/O chiavi secondarie COGRIGBPcogtrans.k01,cogtrans.k02,cogtrans.k03-- Routine I/O chiavi COGTRANS
Note tecniche¶
- La griglia e' read-only: il paragrafo
z-operazioni-accessorie-gridrespinge i tentativi di modifica conevent-action-fail-terminate. - Il massimo numero di elementi caricabili e' definito dalla costante
k-max-ele-tab = 900. - Il file di transito
COGTRANSviene creato nella directory temporanea dell'operatore con nome#COGM67.operatoree viene cancellato alla chiusura. - La scelta della chiave di lettura su COGRIGBP (chiave 2 = per merce, chiave 3 = per cliente+merce) dipende dal fatto che sia stato specificato un cliente.
- Il tipo anagrafico (
tm-ana-tipo) e' stato aggiunto nella build 2024/0718: i BDP senza tipo impostato nella testata vengono trattati come "C" (cliente). - F3 da griglia e' disabilitato per BDP di tipo Fornitore (
tm-anatip = "F").
Storico Modifiche¶
| Build | Descrizione |
|---|---|
| 2024/0718 | Aggiunto tipo anagrafico (Cliente/Fornitore): filtro in maschera (tm-ana-tipo), colonna in griglia (grd-ana-tipo), filtro sull'anagrafica testata BDP |
| 2026/03 | Aggiunto parametro magazzino nella chiamata CALLED (cogm67-mag in utilcogm67.cpy): quando COGM67 e' richiamato come sottoprogramma, il chiamante puo' ora specificare il magazzino da filtrare tramite cogm67-mag, invece di usare sempre il magazzino principale dell'azienda. Aggiunto campo w-dc-mag nella struttura w-dati-called |
Documentazione tecnica -- 2026-03-28