COGF08 -- Variazione Manuale Provvigioni¶
Sorgente: cbl/cogf08.cbl | Tipo: Programma gestionale con griglia | Program-ID: cogf08
Menu: Vendite > Provvigioni > Provvigioni ad incassato
Scopo¶
Gestione manuale delle provvigioni associate a una partita contabile di un cliente. Permette di visualizzare, inserire, modificare e cancellare righe di provvigione (tabella COGPROVV), variando aliquota, importo provvigione, importo fattura e data di valuta.
File e tabelle¶
| File/Tabella | Tipo | Descrizione |
|---|---|---|
| FEURTAB | Input | Tabella generale (copybook cogfiles) |
| COGPROVV | I/O | Tabella provvigioni (accesso tramite prv-chia) |
| File da cogf08.select | Vari | File dichiarati dalla screen |
Copybook principali¶
| Copybook | Sezione | Descrizione |
|---|---|---|
| cogf08.select | FILE-CONTROL | SELECT dei file |
| cogf08.fd | FILE SECTION | FD dei file |
| cogf08.wrk | WORKING-STORAGE | Variabili di lavoro |
| cogf08-01.scr | SCREEN SECTION | Definizione maschera |
| cogf08.decla | PROCEDURE | Declaratives |
| cogf08.prc | PROCEDURE | Procedure generate da Screens |
| k-u10.cpy | WORKING-STORAGE | Costanti per gestione divisa (COGU10W) |
| wrk-u10.cpy | WORKING-STORAGE | Working per gestione divisa |
| wgrid.cpy | WORKING-STORAGE | Gestione griglia |
| utilgdad.cpy | WORKING-STORAGE | Utility griglia (GRIDADMN) |
| utils52.cpy | WORKING-STORAGE | Utility data (COGS52) |
| utils65.cpy | WORKING-STORAGE | Utility selezione anagrafica (COGS65) |
| utils68.cpy | WORKING-STORAGE | Utility selezione merce (COGS68) |
| utilu10.cpy | WORKING-STORAGE | Utility divise (COGU10W) |
| utilu20.cpy | WORKING-STORAGE | Utility numerici (COGU20) |
| utilf65.cpy | LINKAGE | Dati called (non usato direttamente) |
Struttura del programma¶
main section
apri -- inizializzazione, apertura file
a4 -- reset maschera
a10 -- inizio accept
a-tm-cod -- accept cliente
a-tm-data-pa -- accept data partita
a-tm-panno -- accept anno partita
a-tm-patipo -- accept tipo partita
a-tm-panpart -- accept numero partita
a-tm-paprogsca -- accept progressivo scadenza
a-richiesta-conferma -- validazione e conferma parametri
a15..a16 -- loop caricamento provvigioni da COGPROVV
a30 -- visualizzazione griglia
a-grid / a-accept-grid-- gestione griglia (selezione/modifica/ins/canc)
a-riga-dettaglio -- dettaglio singola riga (accept ali/provv/imp/data)
a-tm-ali -- accept aliquota
a-tm-provv -- accept provvigione
a-tm-importo -- accept importo
a-tm-ndata-pa -- accept nuova data valuta
a-riga-dettaglio-fine -- aggiornamento COGPROVV
agg-pro-1/2/3 -- logiche di aggiornamento record
c-cancella -- cancellazione record COGPROVV
fine / z-chiudi -- chiusura
Logica di elaborazione¶
Selezione partita¶
L'operatore inserisce: cliente, data partita, anno, tipo, numero, progressivo scadenza. Il programma legge COGPROVV con st-cogprovv-notmin-chia1 filtrando per prv-patipcli = "C", cliente, anno, tipo, numero, progressivo. Le righe con prv-par-close valorizzato vengono scartate (partita chiusa). Per ogni riga trovata con prv-data-val = tm-data-pa viene caricata nella tabella interna tm-tab.
Griglia¶
La griglia mostra: aliquota (tm-ali), provvigione (tm-provv), importo (tm-importo), data valuta (tm-ndata-pa), merce (tm-merce).
Modalita' Selezione/Aggiornamento¶
Il programma supporta due modalita' (a-modalita):
- "S" (Selezione): solo visualizzazione. Invio seleziona e ritorna.
- "A" (Aggiornamento): consente modifica (Invio), inserimento (Ctrl+A), cancellazione (Ctrl+E).
Aggiornamento¶
Tre casistiche:
- agg-pro-1: modifica semplice (stessa data valuta) - rewrite su COGPROVV.
- agg-pro-2: modifica con cambio data valuta - delete + write (nuova chiave).
- agg-pro-3: inserimento con data valuta diversa dalla partita - write con prv-sosp = "S".
Gestione divise¶
Gli importi sono gestiti tramite COGU10W per la conversione nella divisa di conto.
CALL a programmi esterni¶
| Programma | Scopo |
|---|---|
| COGU10W | Gestione divise e importi |
| COGS52 | Input/output date |
| COGS65 | Selezione anagrafica |
| COGS68 | Selezione merce |
| COGU20 | Input/output numerici |
| GRIDADMN | Gestione griglia |