Vai al contenuto

COGK32 - Anagrafica Prestazioni (Centro Revisioni)

Scopo

Gestione dell'anagrafica prestazioni del Centro Revisioni. Memorizza le prestazioni come "merci" (COGMERCI) con relative descrizioni aggiuntive (COGDESAG) e listino prezzi storicizzato per data (COGLISNW, tipo listino "L", fascia 1).

Vendite > Centro Revisioni > Tabelle > Prestazioni

File e tabelle

File Tipo Descrizione
FEURTAB Parametri File parametri di ambiente
COGMERCI Indicizzato Anagrafica merci (prestazione = merce con cod = 0)
COGDESAG Indicizzato Descrizioni aggiuntive merce (chiave dag-merce + dag-prog-2)
COGLISNW Indicizzato Listini con storicizzazione data; tip-lis = "L", rif=1, fascia=1
COGTABEL Indicizzato Tabelle generiche (euta-tipo 69 articoli esenzione; tipo 70 configurazione RICE/DEFINE)
COGAPPOG Indicizzato (letture varie, vedi rd-cogappog)

Chiave merce: mer-gru + mer-sot + mer-cod (cod sempre zero per le prestazioni).

Copybook

File e select

  • feurtab.fd, cogfiles.cpy
  • cogk32.select, cogk32.fd, cogk32.wrk
  • cogk32-01.scr, cogk32.decla, cogk32.prc

Working-storage standard

  • wgrave.cpy, wgrid.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy

Utility

  • utilu10.cpy, utils37b.cpy, utils52.cpy, utile69.cpy, utilwk32.cpy, utilcogs0c.cpy
  • utilgdad.cpy, utilw52.cpy, utilgrid.cpy
  • k-u10.cpy

Linkage

  • wcont.cpy, wcont1.cpy

Procedure finali

  • stato.cpy, stato1.cpy, winmsg.cpy, grave.cpy, opengen.cpy, mmmask.cpy, getdcont.cpy

CALL

Programma Scopo
GRIDADMN Gestione griglia (Prepara, Add-Record, Modify-Record, Svuota-Tutto, Inizializza)
COGE69 Selezione articolo di esenzione IVA (F8 su esenzione)
WINK32 Ricerca prestazioni (F8 sul codice)
COGS37B Aggiornamento indice ricerca descrizioni (se configurato RICE/DEFINE/dam = "S")

Logica di elaborazione

  1. Inizializzazione (apri): apre file, legge parametri azienda, legge configurazione euta-tipo=70, RICE/DEFINE da COGTABEL in tm-cfg-dam.
  2. Ricerca prestazione (a-tm-prest): accept del codice; x-controlla-tm-prest legge COGMERCI e in caso di esistenza imposta modalita' "V" (variazione) e carica:
  3. codice esenzione e descrizione da mer-art-ese + COGTABEL tipo 69
  4. descrizioni 1 e 2 da COGDESAG (dag-prog-2 = 1 e 2)
  5. storico prezzi da COGLISNW (a2-carica)
  6. Modifica griglia prezzi (a-grid / a-accept-grid): standard pattern GRIDADMN.
  7. CTRL+A: a-riga-dettaglio con a-operazione = "I"
  8. Invio / doppio click: a-riga-dettaglio con a-operazione = "M"
  9. CTRL+E: rimuove riga e ricostruisce griglia
  10. F3: chiama aggiorna per persistere
  11. Aggiornamento (aggiorna): cancella le strutture precedenti (c1-cancella), riscrive COGMERCI, COGDESAG (prog 1 e 2) e per ogni riga prezzo non nulla scrive COGLISNW. Se tm-cfg-dam = "S", chiama COGS37B per indicizzare le descrizioni.
  12. Cancellazione (c1-cancella): cancella COGMERCI, COGDESAG (prog 1 e 2), e tutti i record COGLISNW per la chiave.

Struttura dati in memoria

tab-maschera:
  tm-prest (gru + sot) PIC X(04)
  tm-des1 / tm-des2     PIC X(40)
  tm-art-ese            PIC 9(02)
  tm-desc-ese           PIC X(30)
  tm-pnt                — numero righe prezzo
  tm-tab (occurs 500):
    tm-r-data           PIC 9(08)
    tm-r-prezzo         PIC 9(10)v999999

Note tecniche

  • Programma legacy: usa numerosi GO TO e PERFORM ... THRU (non conforme alle convenzioni attuali).
  • Codice prestazione = codice merce con mer-cod = 0; mer-ean viene incrementato a ogni inserimento.
  • Controllo doppie date nei prezzi in x-controlla-tm-r-data (loop varying su tm-r-data).
  • Configurazione integrazione SQL descrizioni: COGTABEL tipo 70, RICE/DEFINE.