COGA10 - Accertamento Bolle Trasporto¶
Scopo¶
Programma GUI per l'accertamento delle bolle di trasporto: raccoglie i movimenti di trasporto emessi da un vettore in un intervallo di date, li ricostruisce in un file temporaneo (COGTRANS) con i riferimenti agli ordini collegati, li presenta in una griglia interattiva e consente di aggiornare per ciascuna bolla il flag di accertato, il riferimento fattura, l'importo e la divisa. Le modifiche vengono ribaltate sia sul file temporaneo sia sul file permanente dei trasporti (COGTRASP). E' inoltre disponibile una stampa riepilogativa per vettore con totali di importo.
Menu¶
Magazzino > Controllo Prezzi > Accertamento Trasporti
File e tabelle¶
| File | Tipo | Descrizione |
|---|---|---|
| FEURTAB | Parametri | File parametri di ambiente (cogfiles.cpy) |
| COGTRANS | Indicizzato (temporaneo) | File di transito dei movimenti selezionati, dichiarato manualmente nel sorgente. Chiave trs-chia1 = trs-vet-cod + trs-data + trs-doc. Creato per operatore in ext-tmp-dir (open output/open i-o, delete file in chiusura) |
| COGTRASP | Indicizzato | File permanente dei trasporti/bolle vettore (cogtrasp.k03, cogtrasp.k04). La selezione scandisce la chiave secondaria chia4 (fl-acc + doc + data); campi tra-vet, tra-data, tra-doc, tra-fl-acc, tra-imp, tra-currency, tra-rif-fat |
| COGTABEL | Indicizzato | Tabelle codificate; letta con tipo 47 (k-euta-tipo-vettori) per validare il vettore |
| COGGEANA | Indicizzato | Anagrafiche generiche; letta con ana-tipo fornitore per la descrizione vettore (ana-nome) |
| FLSTA | Stampa | File di stampa del report riepilogativo per vettore |
Copybook¶
File e select¶
feurtab.fd,cogfiles.cpycoga10.select,coga10.fd,coga10.wrk,coga10-01.scr,coga10.decla,coga10.prc(screen designer, incbl/screens/)flsta.fd,flsta.cpy- Chiavi:
cogtrasp.k03,cogtrasp.k04,cogtrans.k01
Working-storage standard¶
wgrave.cpy,wnscr.cpy,wopenf.cpy,wstato.cpy,cogazien.cpyk-u10.cpy
Utilita'¶
wgrid.cpy,utilgdad.cpy-- gestione griglia e amministrazione grigliautils52.cpy(data/calendario),utils54.cpy(setup stampa),utils68.cpyutilu10.cpy(editing importi/divise),utilu09.cpy(ricerca consegne/ordini),utilu22.cpy,utile18.cpy(aiuto vettore),utilw19.cpydtab.cpy,fscrol2.cpy,utilpggr.cpy(griglia paginata),GetDCont.cpy,sendu22.cpy
Linkage¶
wcont.cpy,utils15.cpy(con redefineutil-v11diuser-areaper passarev11-called/v11-docai gestori documento),wcont1.cpy
Procedure¶
grave.cpy,mmmask.cpy,opengen.cpy,stato.cpy,stato1.cpy,winmsg.cpy
CALL¶
| Programma | Descrizione |
|---|---|
| COGU09 | Ricerca degli ordini collegati alla consegna (util-u09, operazione cerca-consegna) durante la costruzione del file temporaneo |
| COGU10 / COGU10W | Editing e conversione di importi in divisa (operazioni Edita, Cambio); usato per griglia, dettaglio e stampa |
| COGE18 | Aiuto/ricerca vettore (F8), con e18-in-cod/e18-out-cod |
| COGS54 | Gestione parametri di stampa e chiusura stampa (util-s54) |
| GRIDADMN | Amministrazione della griglia: prepara, svuota, aggiunge/modifica record, esportazione Excel (util-gdad) |
| COGV56 | Gestione documento uscita (tipo doc I/D) tramite v11-called = "COGV56-CALLED" |
| COGV68 | Gestione documento buoni (tipo doc B) |
| COGV15 | Gestione documento carico (tipo doc C) |
| COGV11 | Gestione documento prelievo non ordinato (tipo doc P) |
Logica di elaborazione¶
apri: inizializza program-id, controllo abilitazioni, apertura file, lettura azienda e divisa di conto (get-divisa-conto); imposta i tasti funzione previsti (SHIFT+F4 griglia, F3 conferma/gestione, F8 aiuto/calendario, F9 stampa, invio modifica, SHIFT+F5 export Excel); prepara maschera e griglia (z-costruisci-controlli,z-prepara-tm-grid).a4: azzera la griglia e latab-maschera, imposta l'intervallo di default (1/gg-mm dell'anno di sistema), la divisa e il tipoT; costruisce il nome del file temporaneo (w-nome-trs) conext-tmp-dir+ program-id + operatore, quindi ricreaCOGTRANS(open output, controllo stato per "funzione gia' in uso",open i-o).- Accept dei filtri: paragrafi
a-tm-tra-vet(vettore, con validazionex-controlla-tm-tra-vetsu COGTABEL/COGGEANA e aiuto COGE18),a-tm-tip(tipo movimento via S60),a-tm-da-data/a-tm-a-data(date con calendario S52 e controlli obbligatorieta'/ordine). a-fine-dati: conferma conx-imposta-conferma(verifica tutti i campi) eacc-conf; su F3 lancia la selezione.a-ricerca: scandisceCOGTRASPsulla chiave secondariachia4(st-cogtrasp-notmin-chia4+rdnxt-cogtrasp), filtra per vettore/tipo/intervallo date; per ogni bolla valida cerca gli ordini collegati chiamando ripetutamente COGU09, converte l'importo nella divisa richiesta (COGU10Cambio) e scrive il record suCOGTRANS(wr-cogtrans).a-grid-ini/carica-tab: carica la griglia leggendoCOGTRANScon spaginamento (rn-start-not-less,sn-read/sp-read,rd-controlli-fill,rd1-ft-go) nella tabellatm-tab; se nessuna bolla, avvisa e torna alla maschera.a-grid: ciclo interattivo sulla griglia paginata (z-99-accept-paged-grid); gestisce SHIFT+F4 (GRIDADMN), SHIFT+F5 (export), Pg-Up/Pg-Dwn (paginazione), F3 (a1-ges-doc-> apertura documento con COGV56/COGV68/COGV15/COGV11 in base atm-d-tip), Invio (modifica riga), F9 (stampa).a-riga-dettaglio/ accepta-tm-rif-fat,a-tm-imp,a-tm-fl-acc: editing riga (rif. fattura, importo via U10, stato accertato via S95); su confermaaggiorna-filesriscriveCOGTRANS(rwr-cogtrans) eCOGTRASP(rd-cogtrasp-lk+rwr-cogtrasp, conunlock), quindi aggiorna la cella tramite GRIDADMN.stampa/s-10: stampa riepilogativa su FLSTA raggruppata per vettore con rotture pagina (testa-pagina,riga-pagina,totale,totale-gen,bool-new-pg1) e totali di importo per divisa.fine/z-chiudi: chiude i file, chiude e cancellaCOGTRANS, chiude la finestra ed esce.
Note tecniche¶
COGTRANSe' un file temporaneo per-operatore non gestibile da Screens: SELECT, FD e record (trs-rec) sono dichiarati manualmente nel sorgente; il nome include#$+ program-id +wo-operinext-tmp-dir.- La selezione dei movimenti avviene sulla chiave secondaria
chia4di COGTRASP; per usarla sono incluse manualmentecogtrasp.k03ecogtrasp.k04. - Costanti significative:
k-euta-tipo-vettori = 47(tipo tabella vettori),k-max-ordini = 30(occurs ordini per bolla),k-max-ele-tab = 100,k-chr-stampa = 130. - Le conversioni di divisa e la formattazione degli importi sono centralizzate su COGU10/COGU10W; il "!!" nella divisa segnala totali con divise miste non sommabili.
- La griglia usa il modello a paginazione (
utilpggr.cpy) con record di interscambiogrid-recordverso GRIDADMN. - L'apertura del documento di dettaglio passa
v11-called/v11-doctramite la ridefinizioneutil-v11diuser-area(linkagestringhe).