COGO75 - Situazione per Fornitore¶
Sorgente: cbl/cogo75.cbl | Program-ID: COGO75 | Tipo: Programma interattivo (visualizzazione griglia con navigazione avanzata)
Menu: Ordini > Fornitori > Visualizzazioni
Scopo¶
Visualizza la situazione degli ordini di acquisto aperti per fornitore. Presenta una griglia con righe d'ordine contenenti quantita' ordinate, consegnate e residue, date ordine e consegna, conferma ordine, importo e note operative. Supporta filtri per fornitore, agente, periodo, articolo e ordinamento configurabile. Da griglia e' possibile aprire il dettaglio rimanenza, il dettaglio ordine, lo stock articolo e chiudere manualmente l'ordine. Supporta esportazione Excel.
File e tabelle¶
| File/Tabella | Tipo | Modalita' | Descrizione |
|---|---|---|---|
| COGTRANS | ISAM (temp.) | Output / I-O | File di transito per la griglia; chiavi k01-k04 per ordinamento multiplo |
| LODTMDES | ISAM (temp.) | Output / I-O | File di transito per le note operative delle righe |
| COGCONOR | ISAM | Input | Righe ordini fornitori (via cogo75.prc) |
| COGTESOR | ISAM | Input | Testate ordini fornitori; chiave k04 |
| COGRACMC | ISAM | Input | Raccolta bolle/conferme; chiave k02 |
| COGRACMT | ISAM | Input | Raccordo merce/codici tabella avanzato (rtm-); usato per filtrare gli ordini in base alla classificazione CMA della merce |
| COGTABEL | ISAM | Input | Tabelle codici avanzati (euta-tipo = 62) per la decodifica della tabella CMA e del codice valore |
| LODTABEL | ISAM | Input | Tabella codifiche lodging (via cogo75.prc) |
| FEURTAB | ISAM | Input | Tabella features/abilitazioni utente |
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
cogo75.select |
Definizioni SELECT dei file |
cogo75.fd |
FD dei file |
cogo75.wrk |
Working storage specifica |
cogo75.tm |
Parte di tab-maschera gestita da Screens |
cogo75.prc |
Procedure di I/O sui file |
cogo75.imppredf |
Procedure gestione prezzo/listino predefinito |
cogo75.imppredf-wrk |
Working storage per gestione listino |
cogo75-01.scr |
Schermata principale (Screen Designer) |
cogo75.decla |
Declaratives |
lodtmdes.fd, lodtmdes.cpy |
FD e record del file note operative |
wcont.cpy |
Linkage section standard |
utilv35.cpy |
Parametri COGV35 (dettaglio rimanenza) |
utilo10.cpy |
Parametri COGO08 (stock articolo) |
utils01f.cpy |
Parametri COGS01F (listino fornitore) |
wcont1.cpy |
Linkage section standard 2 |
k-personal.cpy |
Codice personalizzazione azienda |
wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy |
Standard di programma |
cogazien.cpy |
Dati azienda |
utilncnf.cpy |
Utility RNEWCONF |
utilimppredf.cpy |
Utility prezzo predefinito |
utilo08.cpy |
Parametri COGO08 |
wgrid.cpy, utilgdad.cpy |
Supporto griglia |
utilgesstr.cpy |
Utility GESSTR (gestione stringhe note) |
utils46.cpy, utils46w.cpy |
Utility selezione articolo |
utils52.cpy |
Utility selezione data |
utils65.cpy, utils68.cpy |
Utility selezione fornitore/articolo |
utilw15.cpy, utilw27.cpy |
Utility finestre WIN015, WIN027 |
utilw74.cpy, sendw74.cpy |
Utility e wrapper di chiamata a WIN074 (selezione tabella codice avanzato) |
utilw76.cpy |
Utility chiamata a WIN076 (selezione valore tabella codice avanzato) |
utilw96.cpy, sendw96.cpy |
Utility e wrapper di chiamata a WIN096 (selezione valore generico) |
utilp86.cpy |
Utility popup |
utilu10.cpy, utilu20.cpy |
Utility valuta/cambio |
UTILU16.CPY |
Utility selezione articolo avanzata |
utilcogo45.cpy |
Utility COGO45 (chiusura ordine) |
stato.cpy, stato1.cpy, winmsg.cpy, grave.cpy, mmmask.cpy, opengen.cpy |
Infrastruttura standard |
cogfiles.cpy |
Record FEURTAB |
Logica di elaborazione¶
Inizializzazione: Legge la divisa di conto tramite COGU10 (GetDivisaConto). Crea i file di transito COGTRANS (griglia) e LODTMDES (note operative) come temporanei nel ext-tmp-dir. Carica le bitmap dei pulsanti custom (ordini, magazzino).
Pulsanti custom: F5 = dettaglio rimanenza (COGV35), F8 = dettaglio ordine (COGO60 o COGG16 per azienda "GU"), F2 = stock articolo (COGO08), Shift+F6 = chiusura manuale ordine (COGO45).
Fase parametri (a4): Filtri: ordinamento, periodo (data da/a), tipo (fornitore/altri), fornitore, filtro articolo (da-merce/a-merce, via COGU16W), dettaglio per merce, filtro riga aperta, filtro classificazione codice avanzato (CMA) (tm-tab-cma = tabella, tm-cod-cma = codice valore — paragrafi a-tm-tab-cma e a-tm-cod-cma). Il campo ordinamento (tm-ord) determina l'indice di COGTRANS usato nella lettura: k01, k02 (per data ordine), k03 (per data consegna), k04 (per fornitore).
Fase elaborazione: A conferma (F3), apre COGTRANS in output, scansiona COGCONOR secondo i filtri, per ogni riga costruisce il record di transito con dati ordine, quantita', fornitore, date, note. Se il filtro CMA e' valorizzato (tm-tab-cma not = spaces), per ogni merce candidata viene letto COGRACMT con chiave (rtm-tab-tip, rtm-tab-cod, rtm-merce); se la lettura fallisce (w-verbo-invalido) la riga viene saltata (continua il loop b13-10-loop). Se configurato (cogo75.imppredf), recupera il prezzo dal listino fornitore tramite COGS01F e calcola il prezzo netto applicando gli sconti; la conversione valuta viene effettuata tramite COGU10W.
Fase visualizzazione (a-grid): Griglia con file di transito paginato. Menu contestuale (W$MENU) su riga per accesso rapido alle funzioni. Navigazione avanzata/retrograda su COGTRANS. La gestione note operative usa GESSTR per la visualizzazione del testo esteso (LODTMDES). Ricerca avanzata tramite F9 (COGS65W).
Ordinamento: Configurabile tramite F1 (configura). L'ordinamento predefinito dipende dalla personalizzazione aziendale: per Hi-Tech e' per data consegna, per gli altri per data ordine.
Modalita' chiamato: Il programma supporta la chiamata da altri programmi (field w-dati-called), ma nella versione attuale la modalita' e' sempre standalone.
Chiamate a sottoprogrammi¶
| Programma | Utilizzo |
|---|---|
COGU10 |
Recupero divisa di conto all'avvio |
GRIDADMN |
Gestione griglia (add record, svuota, personalizzazione) |
COGV35 |
Dettaglio rimanenza riga ordine (F5) |
WIN027 |
Finestra di supporto (F8 dettaglio ordine area) |
COGO45 |
Chiusura manuale ordine (Shift+F6) |
WIN015 |
Finestra di supporto |
COGO08 |
Stock articolo (F2) |
COGS01F |
Recupero prezzo listino fornitore |
GESSTR |
Gestione stringhe note operative |
COGS65W |
Ricerca avanzata fornitore (F9) |
COGG16 |
Apertura ordine (solo azienda "GU", F8) |
COGO60 |
Apertura ordine fornitore (standard, F8) |
COGU16W |
Selezione intervallo articoli |
RNEWCONF |
Lettura configurazioni |
COGU10W |
Conversione valuta / cambio |
W$MENU |
Menu contestuale su griglia |
WIN074 |
Selezione tabella codice avanzato (aiuto F8 su filtro Tabella CMA) |
WIN076 |
Selezione valore di una tabella codice avanzato (aiuto F8 su filtro Codice Valore CMA) |
WIN096 |
Selezione valore generico (utility predisposta) |
Storico modifiche¶
- 2026-05-18: rimosso il filtro Agente dalla maschera parametri (campi
tm-agente/tm-age-des) e introdotto il nuovo filtro per classificazione codice avanzato sulla merce: due campi mascheratm-tab-cma(tabella, aiuto F8 → WIN074) etm-cod-cma(codice valore, aiuto F8 → WIN076). Aggiunte le PERFORM di accept (a-tm-tab-cma,a-tm-cod-cma), i paragrafi di controllo (x-controlla-tm-tab-cma,x-controlla-tm-cod-cma) con decodifica via COGTABEL tipo 62 e l'integrazione nel loop principale di lettura ordini (b13-10-loop): per ogni merce viene letto COGRACMT con la coppia (tabella, codice) e scartata se non agganciata. La voce mouse e' stata estesa per coprire i nuovi controlli (k-id-tm-tab-cma,k-id-tm-cod-cma).