COGF19 - Selezione Merci su Consegna (Distribuzione)
Panoramica
Programma interattivo GUI per la selezione delle merci su una consegna nell'ambito della distribuzione ordini. Presenta in griglia le righe della consegna con quantita' distribuita e consegnata. L'operatore seleziona una riga e conferma per attivare la distribuzione tramite COGF20. Funziona sia in modo autonomo che richiamato (called) da altri programmi.
| Menu |
Percorso |
| Ordini |
Clienti > Distribuzione |
Struttura del programma
File e tabelle utilizzati
| File/Tabella |
Tipo |
Descrizione |
| FEURTAB |
Input |
Tabella di sistema |
| COGCONOR |
Input |
Consegne ordini (chiave 2, chiave 5) |
| COGDISOR |
Input |
Distribuzioni ordini (chiave 4) |
| COGTESOR |
Input |
Testata ordini |
| COGGEANA |
Input |
Anagrafica clienti/fornitori |
| COGMERCI |
Input |
Anagrafica merci |
| COGTUTOR |
Input |
Tutori ordini (chiave 2) |
Copybook principali
| Copybook |
Descrizione |
| cogf19.select / .fd / .wrk / .decla / .prc |
File generati Screen Designer |
| cogf19-01.scr |
Screen section |
| k-u10.cpy |
Costanti COGU10 |
| wgrid.cpy |
Gestione griglia |
| utilgdad.cpy |
Interfaccia GRIDADMN |
| utilm96.cpy |
Interfaccia COGM96 |
| utils17l.cpy |
Interfaccia COGS17L |
| utils25.cpy |
COGS25 |
| utils26.cpy |
COGS26 |
| utils52.cpy |
COGS52 (date) |
| utils68.cpy |
COGS68 (ricerca merce) |
| utilw28.cpy |
WIN028 |
| utilw36.cpy |
WIN036 (ricerca magazzino) |
| utilu10.cpy |
COGU10 |
| utilncnf.cpy |
Configurazioni RNEWCONF |
| cogazien.cpy |
Dati azienda |
Chiavi secondarie utilizzate
| Copybook |
Descrizione |
| cogconor.k02 |
Chiave 2 COGCONOR |
| cogconor.k05 |
Chiave 5 COGCONOR |
| cogdisor.k04 |
Chiave 4 COGDISOR |
| cogtutor.k02 |
Chiave 2 COGTUTOR |
Chiamate a sottoprogrammi (CALL)
| Programma |
Scopo |
| GRIDADMN |
Gestione griglia avanzata |
| COGF20 |
Distribuzione effettiva della merce selezionata |
| WIN028.COB |
Finestra aiuto |
| WIN036 |
Ricerca magazzino (F8 su campo magazzino) |
Costanti
| Costante |
Valore |
Descrizione |
| k-tipo-distrib |
"DO" |
Tipo distribuzione ordini |
| k-stato-nonevaso |
space |
Stato non evaso |
| k-max-ele-tab |
100 |
Numero massimo righe griglia |
| k-f8-distrib |
01 |
Indice pulsante distribuzione |
Configurazioni (tab-config)
| Campo |
Descrizione |
| tm-cfg-item |
Item di configurazione |
| tm-cfg-value / value2 |
Valori configurazione |
| tm-cfg-oper |
Operatore configurazione |
| tm-cfg-lim-tut |
Limite massimo tutori |
Variabili chiave
| Variabile |
Tipo |
Descrizione |
| tab-maschera |
01 |
Consegna (mag+ann+tip+num), ordine (tip+ann+num+pro), data, cliente, filtri date, tabella righe |
| tm-righe (i) |
gruppo occurs 100 |
Riga griglia: merce, des-mer, rig-pro, qta-dis, qta-con, qta-ass, sign, num-of, c-pro |
| grid-record |
01 |
Interscambio griglia: merce, qta-dis, qta-con, num-of |
| fl-called |
x(01) |
Flag modalita' richiamata |
| flag-trovato-consegna |
x(01) |
Flag consegna trovata |
| flag-trovato-ordine |
x(01) |
Flag ordine trovato |
| flag-ok-controlla-cons |
x(01) |
Flag controllo consegna valida |
| flag-ok-controlla-ord |
x(01) |
Flag controllo ordine valido |
Interfaccia chiamante (linkage)
Il programma supporta due interfacce in linkage (redefines di user-area):
util-f19 (per chiamata da distribuzione):
| Campo |
Descrizione |
| uf19-tipo |
Tipo anagrafico (cliente/fornitore) |
| uf19-consegna |
Riferimento consegna (mag+ann+tip+num) |
| uf19-ordine |
Riferimento ordine (tip+ann+num+pro) |
| uf19-caller |
Programma chiamante |
| uf19-called |
Programma chiamato (deve = k-program-id) |
util-f20 (per passaggio a COGF20):
| Campo |
Descrizione |
| uf20-cli-cod |
Codice cliente |
| uf20-tipo |
Tipo anagrafico |
| uf20-merce |
Codice merce |
| uf20-consegna |
Riferimento consegna + c-pro |
| uf20-ordine |
Riferimento ordine |
| uf20-qta-con / qta-dis |
Quantita' consegnata/distribuita |
| uf20-caller |
Programma chiamante |
Flusso operativo
1. Inizializzazione (apri)
- Inizializzazione standard, lettura azienda, divisa conto
- Preparazione griglia (GRIDADMN)
2. Accept filtri (a4 -> a10 -> a-tm-c-mag, a-tm-c-ann, a-tm-c-num, a-tm-o-ann, a-tm-o-num, a-tm-o-pro)
- Se called: precompila consegna e ordine da util-f19
- Accept campi consegna (magazzino, anno, numero)
- Accept campi ordine (anno, numero, progressivo)
- F8 su magazzino: ricerca tramite WIN036
3. Caricamento dati (a-richiesta-conferma -> a30)
- Valida consegna e/o ordine
- Cerca le righe della consegna/ordine
- Popola la tabella tm-righe con: merce, descrizione, quantita' distribuita, consegnata, numero offerta
- Se nessuna riga trovata: messaggio "Consegna senza righe"
4. Navigazione griglia (a-grid -> a-accept-grid)
- Griglia con colonne: merce, qta distribuita, qta consegnata, num offerta
- S-F4: personalizzazione colonne (GRIDADMN)
- Invio/doppio-click: conferma distribuzione
5. Distribuzione (call-f20)
- Prepara util-f20 con: tipo anagrafico, cliente, ordine, consegna, merce, quantita'
- Chiama COGF20 per la distribuzione effettiva
- Al ritorno: ripulisce griglia e torna ai filtri
6. Chiusura (fine)
Note tecniche
- Il programma usa 88-levels per i flag di stato (trovato-consegna, trovato-ordine, ok-controlla-cons, ok-controlla-ord) che migliorano la leggibilita' dei controlli.
- L'interfaccia con COGF20 passa i dati tramite la user-area del linkage (redefines multipli su user-area in wcont.cpy).
- La griglia supporta fino a 100 righe (k-max-ele-tab).
- Le chiavi secondarie di COGCONOR (.k02, .k05), COGDISOR (.k04), COGTUTOR (.k02) vengono incluse manualmente a fine procedure division.