Vai al contenuto

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