COGO3A - Consultazione prenotazioni¶
Scopo¶
Consultazione filtrata delle prenotazioni aperte (righe ordine fornitore prenotate a fronte di buoni di prelievo cliente). Il programma estrae le prenotazioni di tipo "F" da COGPRENO, ricostruisce per ciascuna il legame ordine fornitore / buono di prelievo cliente / ordine cliente e ne presenta i dati (cliente, fornitore, articolo, quantita', prezzi, date consegna) in una griglia con filtri persistenti, ordinamento, menu contestuale ed export Excel. E' invocabile in modalita' standalone o come chiamato (COGO3A-CALLED) con filtri precompilati.
Menu¶
Ordini > Clienti > Visualizzazioni > Prenotazioni
File e tabelle¶
| File | Tipo | Descrizione |
|---|---|---|
| FEURTAB | Parametri | File parametri di ambiente/azienda |
| COGPRENO | Indicizzato | Prenotazioni; chiave .k03 (prn-tip, prn-stato), campi prn-chiave-oggetto, prn-bdp, prn-fl-canc |
| CLNPRENO | Indicizzato | Clone di COGPRENO usato per risalire dal BDP alle prenotazioni cliente (cln-bdp, cln-tip, cln-chiave-oggetto); chiave secondaria cln-chia2 (start manuale st-clnpreno-notmin-chia2) |
| COGTESOR | Indicizzato | Testate ordini (fornitore e cliente); chiave tor-chia; campi tor-clifor, tor-chiu-manuale, tor-datdecor |
| COGRIGOR | Indicizzato | Righe ordine; chiave ror-chia1; campi ror-qtaord, ror-qtacons, ror-prez, sconti, ror-currency |
| COGCONOR | Indicizzato | Consegne/righe ordine; chiave secondaria .k05 (cor-o-testa, cor-merce, cor-o-rig-pro); campo cor-data (data consegna) |
| COGTESBP | Indicizzato | Testate buoni di prelievo cliente; chiave tbp-chia1; campi tbp-cli, tbp-num, tbp-mag/aa/mm/gg |
| COGRIGBP | Indicizzato | Righe buono di prelievo; rbp-testa+rbp-prog; campi rbp-merce, rbp-qta |
| COGDESOR | Indicizzato | Descrizioni aggiuntive riga ordine (dor-tip = "O", dor-ordine, dor-ord-merce, dor-ord-rig-pro) |
| COGGEANA | Indicizzato | Anagrafica clienti/fornitori; ana-tipo+ana-cod; nomi cliente/fornitore |
| COGMERCI | Indicizzato | Anagrafica articoli; mer-chia; controllo articolo codificato |
| T-GRID-DET | Indicizzato (temporaneo) | File di transito della griglia; record t-gor-r-rec |
Copybook¶
File e select¶
feurtab.fd,cogfiles.cpycogo3a.select,cogo3a.fd,cogo3a.wrk,cogo3a.imppredf-wrk,cogo3a.tm,cogo3a-01.scr,cogo3a.decla,cogo3a.prc,cogo3a.imppredf(file di screen designer)
Working-storage standard¶
wgrave.cpy,wnscr.cpy,wopenf.cpy,wstato.cpy,cogazien.cpy
Utilita'¶
wgrid.cpy,utilgdad.cpy(gestione griglia GRIDADMN)k-u10.cpy,k-personal.cpy(costanti)utils52.cpy,utils65.cpy,utils68.cpy,utilu10.cpy,utilu20.cpy(controlli campi: date, cliente/fornitore, articolo, importi)utilgesstr.cpy(composizione note testuali via GESSTR)utilcogma3.cpy(navigazione documenti COGMA3)utilimppredf.cpy(salvataggio/caricamento impostazioni predefinite)utilncnf.cpy(configurazioni RNEWCONF)
Linkage¶
wcont.cpy,wcont1.cpyutilcogo3a.cpy(parametri di chiamata quando invocato conCOGO3A-CALLED)
Procedure¶
grave.cpy,mmmask.cpy,opengen.cpy,stato.cpy,stato1.cpy,winmsg.cpy,getdcont.cpy- Chiavi secondarie:
cogpreno.k03,cogconor.k05
CALL¶
| Programma | Descrizione |
|---|---|
| RNEWCONF | Lettura configurazione assist > tipo-colore-righe-vis-chiamate (pack coge) |
| COGS65W | Ricerca/aiuto codice cliente e fornitore (campi filtro) |
| COGU10W | Gestione valuta/importi (conversione cambio, arrotondamento prezzi e importi) |
| GESSTR | Composizione note testuali dalle descrizioni aggiuntive riga ordine |
| COGMA3 | Navigazione sul documento ordine fornitore (S-F2 su riga griglia) |
| GRIDADMN | Gestione griglia (amministrazione S-F4, export Excel S-F5) |
| W$MENU | Menu contestuale popup su right-click nella griglia |
Logica di elaborazione¶
apri(main): init programma, lettura configurazione colori (x99-confi),open-files, definizione tasti funzione, costruzione menu contestuale (build-main-popup-grid-det), caricamento bitmap/pulsanti custom (Ctrl-S salva, Ctrl-F cerca, S-F2 navigazione documento). Se invocato come chiamato (cogo3a-called = "COGO3A-CALLED") memorizza i parametri di input (w-dati-called).a4: inizializzatab-maschera(tipo cliente "C", tipo fornitore "F", stato "A"); se chiamato, precompila cliente, fornitore, periodo e articolo dai parametri. Imposta ordinamento predefinito per codice cliente e carica l'eventuale filtro di default (z-imppredf-carica-default).- Accept filtri (
a-tm-cli,a-tm-forn,a-tm-data-da,a-tm-data-a,a-tm-articolo,a-tm-stato): con relativix-controlla-…. F7 conferma i filtri (a-controlla-filtri). a-leggi-dati: apre/ricrea il file di transitoT-GRID-DETe costruisce i dati (z-grid-det-crea-transito).z-grid-ricerca-dati: cuore dell'estrazione. ScorreCOGPRENOper tipo "F" e stato filtro; per ogni prenotazione non cancellata legge l'ordine fornitore (COGTESOR), aggiorna a "C" le prenotazioni di ordini chiusi manualmente (TASK-536), applica i filtri fornitore/periodo (data consegna daCOGCONOR.k05), risale al buono di prelievo cliente (COGTESBP/COGRIGBP) applicando i filtri cliente/articolo, calcola prezzo netto (sconti, cambio valuta e arrotondamento viaCOGU10W) e importo. Compone le descrizioni aggiuntive (s2-src-dor-1+GESSTR). Infine risale, tramite il cloneCLNPRENOsul BDP, all'ordine cliente e alla relativa data consegna. Ogni record completato viene scritto nel transito (z-grid-det-inserisci-t-rec).a-grid: gestione griglia: S-F4/S-F5 (amministrazione/export), S-F2 (COGMA3 navigazione documento ordine fornitore), F9 (report standardz-wordmdl-report), menu contestuale (eccezioni 151-199), filtro contestuale F7.z-chiudi: chiude e cancella il file di transito, distrugge il menu contestuale, esce.
Note tecniche¶
- Il legame prenotazione → BDP cliente → ordine cliente viene ricostruito tramite un clone di COGPRENO (
CLNPRENO), interrogato per BDP e tipo "C". Lo start sulla chiave secondariacln-chia2e' scritto manualmente nel sorgente (st-clnpreno-notmin-chia2). - Il filtro stato accetta "T" (tutte): in tal caso
prn-statoviene impostato ad "A" per lo start ma il break-key sullo stato viene disattivato. - Le prenotazioni di ordini chiusi manualmente (
tor-chiu-manuale = "S") vengono aggiornate a stato "C" durante la scansione (sanatoria pregresso, TASK-536). - Il prezzo puo' essere convertito di valuta se
ror-currencydifferisce dalla divisa di conto (w-currency-conto, ottenuta daget-divisa-conto); sconti riga (ror-sconto-1/2) e arrotondamenti sono applicati viaCOGU10W. - Impostazioni predefinite (filtri) persistite tramite
utilimppredf(Ctrl-S salva, Ctrl-F carica); il pulsante "Salva" appare quando i filtri differiscono da quelli caricati (tm-interfaccia <> tm-interfaccia-copia). - Costanti pulsanti custom:
k-ctrl-salva(1),k-ctrl-find(2),k-sf2-filiera(3). Menu contestuale: eccezionik-pmg-primo(151) …k-pmg-ultimo(199). - Configurazione letta:
assist>tipo-colore-righe-vis-chiamate(colore righe griglia). k-max-ele-tab= 900.- Quando invocato come chiamato (
w-dc-called = "S"), all'uscita dalla griglia torna direttamente al chiamante anziche' alla pagina filtri.