COGV8B - Consultazione Benestare¶
Scopo¶
Programma GUI per la consultazione dei benestare di fatturazione DDT. Presenta una maschera a due pagine (tab-control): la prima con i filtri di estrazione (cliente di fatturazione, azienda/gruppo aziende esecutrice, periodo, tipologia, stato), la seconda con la griglia dei risultati. I benestare (COGBSTES) vengono estratti secondo il filtro predominante (cliente+periodo, azienda+periodo o solo periodo), scritti su un file di transito temporaneo e mostrati in griglia. Dalla griglia e' possibile gestire il benestare (COGV8A), navigare la filiera documentale (COGMA3) e stampare il benestare su modulo A4 (COGV8H). Puo' essere lanciato in modalita' "chiamato" (cogv8b-called) per la selezione di un benestare da restituire al chiamante.
Menu¶
Vendite > Benestare > Consultazione benestare
File e tabelle¶
| File | Tipo | Descrizione |
|---|---|---|
| COGBSTES | Indicizzato | Testata benestare. Chiavi secondarie usate: .k02 (cliente+data: bsts-ana-tip, bsts-ana-cod, bsts-data), .k04 (data: bsts-data), .k05 (gruppo azienda+data: bsts-grp-az, bsts-data). Letture/scansioni st-cogbstes-notmin-chia2/4/5, rdnxt-cogbstes, rd-cogbstes |
| COGGEANA | Indicizzato | Anagrafica generale; letta per descrizione cliente (ana-tipo = "C", ana-cod) via rd-coggeana |
| GRPAZIEN | Indicizzato | Gruppo aziende; letto per descrizione azienda (ao-azi-cod) via rd-grpazien (solo se gestione-gruppo-aziende = "S") |
| RNEWCONF | Parametri | Configurazione assist/gestione-gruppo-aziende (pacchetto coge) |
| T-GRID-DET | Indicizzato (temporaneo) | File di transito della griglia risultati (record t-gor-r-rec, chiave t-gor-r-prog); creato, popolato e cancellato dal programma |
Copybook¶
File e select¶
feurtab.fd,cogfiles.cpycogv8b.select,cogv8b.fd,cogv8b.wrk,cogv8b.decla,cogv8b.prccogv8b.tm— campi modificabili della maschera (definiti in Screens, inclusi intab-maschera)cogv8b.imppredf-wrk,cogv8b.imppredf— working/procedure per impostazioni predefinite (filtri salvabili)cogv8b-01.scr(screen section)- Chiavi secondarie
cogbstes.k02,cogbstes.k04,cogbstes.k05incluse manualmente a fine procedure
Working-storage standard¶
k-u10.cpy,k-personal.cpywgrave.cpy,wnscr.cpy,wopenf.cpy,wstato.cpy,cogazien.cpy
Utilita'¶
wgrid.cpy,utilgdad.cpy— gestione griglia (GRIDADMN)utils52.cpy(data),utils65.cpy(ricerca cliente/anagrafica),utilu10.cpy,utilu20.cpyutilimppredf.cpy— salvataggio/caricamento filtri predefinitiutilncnf.cpy— configurazioni RNEWCONFutilgrp002.cpy— linkage ricerca gruppo aziende (GRP002)utilcogv8a.cpy,utilcogma3.cpy,utilcogv8h.cpy— linkage moduli chiamati
Linkage¶
wcont.cpy,wcont1.cpyutilcogv8b.cpy— parametri di chiamata (cogv8b-called,cogv8b-caller,cogv8b-i-cliente,cogv8b-i-data-da,cogv8b-i-data-a,cogv8b-i-grp-az,cogv8b-i-tipo,cogv8b-o-id)
Procedure¶
grave.cpy,mmmask.cpy,opengen.cpy,stato.cpy,stato1.cpy,winmsg.cpy
CALL¶
| Programma | Descrizione |
|---|---|
| COGV8A | Gestione del benestare selezionato (util-cogv8a, cogv8a-i-id); dopo il rientro ricarica la riga di griglia con i dati aggiornati |
| COGMA3 | Navigazione filiera documentale (util-cogma3, classe "B", cogma3-doc-key = documento di fatturazione); attivato da Shift+F2 |
| COGV8H | Stampa del benestare su modulo A4 (util-cogv8h, cogv8h-bsts-id); attivata da F9 |
| GRP002 | Ricerca gruppo aziende esecutrice (util-grp002), da F8 sul campo azienda |
| COGS65W | Subroutine di ricerca/gestione campo cliente (util-s65) |
| GRIDADMN | Amministrazione griglia (prepara, colonne, export Excel) |
| W$MENU | Menu contestuale popup sul right-click della griglia |
| RNEWCONF | Lettura configurazione gestione gruppo aziende |
Logica di elaborazione¶
apri: init programma,ctr-abil, lettura config (x99-confi->gestione-gruppo-aziende),rd-azi,open-files; attivazione tasti funzione (F7 filtra, F9 stampa/ricerca avanzata, Shift+F4 griglia, Shift+F5 Excel, F1 configura, F3 gestione/conferma, F8 aiuto/calendario, Invio); costruzione menu contestuale griglia (build-main-popup-grid-det); caricamento bitmap e pulsanti custom (Ctrl+S salva impostazione, Ctrl+F cerca impostazione, Shift+F2 filiera); se lanciato come chiamato recupera i filtri di input inw-dati-called.a4/a4-bis: reset; se non chiamato imposta filtri di default (tipo/stato "T", periodo = ultimo anno) e carica l'eventuale filtro predefinito (z-imppredf-carica-default); imposta l'ordinamento di default della griglia sull'id benestare; posiziona il tab-control sulla pagina filtri.a-pag-filtrie accept dei campi (a-tm-cli-fat,a-tm-grp-az-ese,a-tm-data-da,a-tm-data-a,a-tm-tipo,a-tm-stato): accept dei filtri con help, controlli e navigazione mouse/tab (x-test-mouse,x-test-mouse-filtri). In modalita' chiamato, se sono passati filtri, salta direttamente ai controlli.a-controlla-filtri:x-imposta-confermaesegue tutti i controlli; se ok passa alla pagina risultati.a-pag-risultati/a-leggi-dati: apre e crea il file di transito (z-grid-det-apri-transito,z-grid-det-crea-transito), poiz-grid-det-riordina-transito.z-grid-ricerca-dati: sceglie la chiave di scansione diCOGBSTESin base al filtro (cliente ->chia2, azienda ->chia5, altrimenti data ->chia4); scandisce i record, applica i filtri residui (z-grid-filtri), e per ogni record valido compone la riga di transito (b11-cerco-dati) e la inserisce (z-grid-det-inserisci-t-rec).b11-cerco-dati: valorizza i campi della riga transito daCOGBSTES(id, id ufficiale, tipo, cliente + descrizione daCOGGEANA, gruppo azienda + descrizione daGRPAZIEN, data, stato, riferimenti documento cliente, percentuale ritenuta, documento di fatturazione formattato, contratto/data contratto).a-grid-ini/a-grid: caricamento e gestione griglia (z-99-accept-grid-det); gestisce Shift+F4 (GRIDADMN), Shift+F5 (export Excel), Invio (selezione in modalita' chiamato -> restituiscecogv8b-o-id), F3 (gestione benestare viaCOGV8Acon ricarica riga), Shift+F2 (filiera viaCOGMA3), F9 (stampa viaCOGV8H), e le eccezioni 151-199 del menu popup.z-99-exception-form: gestisce F7 (esecuzione filtro), Ctrl+F (caricamento filtro salvato viaz-imppredf-seleziona), Ctrl+S (salvataggio filtro viaz-imppredf-salva); mostra/nasconde il pulsante "salva" se i parametri differiscono dalla copia caricata.fine/z-chiudi: chiude e cancellaT-GRID-DET, distrugge il menu popup, chiude finestra e programma.
Note tecniche¶
- Interfaccia a tab-control a due pagine (
k-pag-filtri,k-pag-risultati), gestita dax-cambia-pagina/x-display-paginacon notificacmd-tabchanged. - Filtri persistenti (impostazioni predefinite) tramite
utilimppredf: pulsanti custom Ctrl+S (salva) e Ctrl+F (carica), con confrontotm-interfaccia/tm-interfaccia-copiaper segnalare modifiche non salvate. - Menu contestuale popup sulla griglia via
W$MENUsul messaggiomsg-grid-rbutton-down; le eccezioni delle voci sono gestite nel range 151-199 (k-pmg-primo/k-pmg-ultimo). - La configurazione
gestione-gruppo-aziende(RNEWCONFassist) abilita il filtro/descrizione azienda esecutrice e la lettura diGRPAZIEN. - La riga marcata
110424introduce il filtro/colonna "tipo" e i riferimenti contratto/data contratto (bsts-contratto,bsts-data-contratto). - La griglia e' sostanzialmente read-only:
z-99-begin-entry-grid-detfa fallire l'entrata in cella (event-action-fail-terminate) per ogni colonna. - L'export XLS avviene con Shift+F5 (
z-esporta-grid-det).