Vai al contenuto

COGF01 — Gestione tabella Zone

Sorgente: cbl/cogf01.cbl | Tipo: Programma interattivo a griglia | Program-ID: cogf01

Menu: Contabilita' > Archivi & Tabelle > Tabelle > [Zone] ; Assist > Archivi > Tabelle > [Zone]


Scopo

Gestisce l'anagrafica delle Zone (zone commerciali/agenti). E' un editor a griglia con codice, descrizione e codice host, appoggiato sulla tabella generalizzata di contabilita' COGTABEL (tipo 88). Oltre all'uso da menu, funziona anche come finestra di selezione quando invocato da un altro programma (linkage util-f01): in tal caso restituisce codice e descrizione della zona scelta.

Quando l'azienda gestisce i clienti potenziali (CRM, az-cli-pot = "S") e la configurazione lo abilita, ogni inserimento/variazione/cancellazione di zona viene propagato anche alle tabelle di raccordo CRM CRMINFTR (voci tabella informazione). Le modifiche vengono inoltre sincronizzate verso il gestionale host KPN tramite SWN032.

File e tabelle principali

File/Tabella Copybook Uso Note
FEURTAB cogfiles.cpy Input Parametri generali azienda
COGTABEL cogtabel.cpy (euta-rec) I-O Tabella zone: euta-tipo = 88, euta-cod = codice zona, redefine euta-zone (euta-zone-des x(40), euta-zone-codice-host x(5))
CRMINFOR crminfor.cpy (ipt-rec) Input Definizione informazione CRM: da tm-cfg-info-zona si ricava ipt-tab (codice tabella CRM collegata)
CRMINFTR crminftr.cpy (itr-rec) I-O Valori tabella informazione CRM: chiave itr-tab + itr-cod, itr-des = descrizione
T-GRID-DET wgrid.cpy transito File temporaneo di appoggio della griglia (t-gor-r-rec), creato/cancellato dal programma

Copybook di supporto: wgrave, wnscr, wopenf, wstato, cogazien, wgrid, utilgdad, utilu10, utilu20, utils68, utilncnf, utilimppredf, utilgesdebug, utilagprg. Linkage: wcont, wcont1, utilf01.

Flusso principale

  1. apri — inizializzazione (z-99-init-program, ctr-abil), lettura configurazione x99-confi, apertura debug (gesdebug-*), rd-azi, open-files. Decide la modalita' a-modalita: "S" (selezione, se f01-called = COGF01 e f01-caller valorizzato) oppure "A" (aggiornamento). Attiva i tasti funzione e costruisce il menu contestuale della griglia (build-main-popup-grid-det).
  2. a4 / a-leggi-dati — inizializza il transito, imposta l'ordinamento predefinito (per codice), carica l'eventuale filtro di default (z-imppredf-carica-default) e riempie il file di transito con z-grid-det-crea-transito.
  3. z-grid-det-crea-transito — scansione di COGTABEL (st-cogtabel-notmin + rdnxt-cogtabel) filtrata su euta-tipo = 88; per ogni zona con euta-cod non vuoto crea una riga di transito con codice, codice precedente (per gestire le cancellazioni), descrizione e codice host.
  4. a-grid — loop principale sulla griglia: accept, gestione eccezioni e tasti funzione (F1 configurazione, S-F4 GRIDADMN, S-F5 export Excel, Ctrl+A aggiungi riga, Ctrl+E elimina riga, Invio seleziona in modalita' "S", F3 alterna modalita'/salva).
  5. b-aggiorna — al salvataggio scandisce il file di transito: le righe con codice precedente valorizzato ma codice vuoto sono cancellazioni (del-cogtabel + eventuale del-crminftr); le righe modificate (t-gor-r-riga-mod = "S") vengono scritte tramite b-aggiorna-record.
  6. b-aggiorna-record — legge/crea il record COGTABEL (rd-cogtabel / wr-cogtabel), aggiorna euta-zone-des e euta-zone-codice-host, riscrive (rwr-cogtabel); se sono cambiati descrizione o codice host chiama x-sincronizza-kpn. Se CRM attivo, allinea CRMINFTR.
  7. fine / z-chiudi — chiusura file, chiusura e cancellazione del transito, chiusura debug, uscita.

Sottoprogrammi chiamati

Programma Ruolo
GRIDADMN Gestore amministrazione griglia (prepara colonne, GRIDADMN admin da S-F4)
W$MENU Attivazione menu pop-up contestuale (right-click) sulla griglia
SWN032 Sincronizzazione della chiave zona verso host KPN (agprg-ope = "ESPORTA-KEY", agprg-key = euta-key)
RNEWCONF Lettura configurazione (vedi sotto)

Configurazioni (RNEWCONF)

Paragrafo x99-confi, pacchetto k-pack-coge:

Gruppo Chiave Uso
ASS-CHIAM INFO-CRM-ZONA Numero informazione CRM (ipt-num) da cui ricavare la tabella CRM collegata alle zone; se 0 il raccordo CRM e' disattivato

Note

  • La tabella zone e' il tipo 88 di COGTABEL (k-euta-tipo-zone), condivisa con altre gestioni generalizzate: la cancellazione agisce solo sui record con euta-tipo = 88.
  • Il campo t-gor-r-cod-prec sul transito serve a distinguere righe nuove da righe esistenti e a individuare il record originale da cancellare; una riga con codice precedente presente non e' piu' modificabile nella cella codice (z-grid-det-cod-be-ep).
  • Il collegamento CRM (CRMINFOR/CRMINFTR) e' attivo solo se az-cli-pot = "S" e la chiave INFO-CRM-ZONA e' valorizzata.
  • Controlli riga: codice obbligatorio e univoco (x-controlla-tm-r-cod), descrizione obbligatoria (x-controlla-tm-r-des), codice host convertito in maiuscolo (x-controlla-tm-r-cod-host).
  • Non e' possibile inserire o cancellare righe con un filtro attivo sulla griglia.