COGE101 - Raccordo Codici C.d.C.¶
Funzione¶
Gestione della tabella di raccordo tra centri di costo e magazzini (COGTABEL tipo 96). Ogni riga associa un centro di costo di partenza + magazzino a un centro di costo di ritorno (euta-p-cc-rit). Usato tipicamente per determinare automaticamente la contropartita CC nelle movimentazioni di magazzino.
La griglia visualizza: codice CC1, livelli liv1/liv2/liv3 del CC1, descrizione CC1, codice magazzino, descrizione magazzino, codice CC2, livelli liv1/liv2/liv3 del CC2, descrizione CC2.
Menu¶
- Contabilita' > Centri di Costo > Tabelle > Raccordo Codici C.d.C.
Tabelle e file principali¶
| Tabella | Descrizione | Accesso |
|---|---|---|
| COGTABEL | Tabelle generiche (tipo 96 = raccordi CC/magazzino) | I-O (lettura, scrittura, modifica, cancellazione con lock) |
| COGCCOPR | Anagrafica centri di costo/profitto | Input (descrizione centro) |
| COGMAGAZ | Magazzini | Input (descrizione magazzino) |
| FEURTAB | Tabella generica Eurosystem | Input |
Struttura record COGTABEL (tipo 96)¶
| Campo | Descrizione |
|---|---|
euta-tipo |
96 (costante k-euta-tipo) |
euta-cdc-cod |
Codice centro di costo di partenza |
euta-cdc-mag |
Codice magazzino |
euta-p-cc-rit |
Codice centro di costo di ritorno |
La chiave primaria e' composta da euta-tipo + euta-cdc-cod + euta-cdc-mag.
Logica principale¶
Flusso¶
- Inizializzazione (
apri): controllo abilitazione, init programma, apertura file, lettura azienda. Se chiamato (w-dc-called = "S") entra in modalita' selezione, altrimenti in modalita' aggiornamento. - Caricamento (
a4/a10-loop): scansiona COGTABEL tipo 96 const-cogtabel-notmin+ looprdnxt-cogtabel. Per ogni riga carica: descrizione CC (da COGTABEL tipo 18 -> COGCCOPR), descrizione magazzino (da COGMAGAZ). Max 900 righe (k-max-ele-tab). - Risoluzione descrizioni (
a30): dopo il caricamento, ciclo sutm-pntrighe per popolaretm-liv1/2/3etm-desper entrambi i centri di costo tramite lettura COGTABEL tipo 18 + COGCCOPR. - Griglia (
a-grid/a-accept-grid): accept griglia GRIDADMN. Modalita' aggiornamento: Invio=modifica riga, Ctrl+A=inserimento, Ctrl+E=cancellazione. F3 alterna tra modalita' selezione e aggiornamento. ESC = uscita. - Dettaglio riga (
a-riga-dettaglio): campi CC1 (disabilitato in modifica), magazzino (disabilitato in modifica), CC2. In inserimento tutti e tre editabili. - Scrittura (
a-riga-dettaglio-fine): in inserimentowr-cogtabel, in modificarwr-cogtabel. Gestione lock:rd-cogtabel-lkprima di ogni scrittura. - Cancellazione (
c-cancella):rd-cogtabel-lk+del-cogtabel.
Modalita' chiamato¶
Se w-dc-called = "S": entra in modalita' selezione (F3 inverte tra selezione e aggiornamento); attiva w-presenza-f3-selezione e w-presenza-f3-modifica.
Ridimensionamento griglia¶
Gestito via evento ntf-resized in z-99-event-form-1: ricalcola le dimensioni della griglia in funzione della finestra.
Copybook principali¶
| Copybook | Contenuto |
|---|---|
coge101.select |
SELECT file Screen Designer |
coge101.fd |
FD file Screen Designer |
coge101.wrk |
Working storage Screen Designer |
coge101-01.scr |
Screen section |
coge101.prc |
Procedure copybook (operazioni file) |
coge101.decla |
Declaratives |
wstato.cpy / wgrave.cpy / wopenf.cpy / wnscr.cpy / wgrid.cpy |
WS comuni |
cogazien.cpy |
Dati azienda |
utilgdad.cpy |
Gestione griglia GRIDADMN |
utilgw04.cpy (non presente - usa utilw36.cpy) / sendw36.cpy |
Selezione magazzino |
utilv04.cpy |
Interfaccia COGV00 (ricerca centri di costo) |
wcont.cpy / wcont1.cpy |
Linkage section |
Programmi chiamati (CALL)¶
| Programma | Scopo |
|---|---|
| COGV00 | Lookup centro di costo (F8 sui campi cod-1 e cod-2) |
| GRIDADMN | Gestione griglia (prepara, add-record, modify-record, svuota-tutto, display) |
| COGS60 (non presente - usa subroutine send-w36) | N/A |
Note tecniche¶
- La griglia gestisce fino a 900 righe (
k-max-ele-tab). tm-ele-sav(1000 byte) salva la riga corrente per annullamento modifiche (ESC in dettaglio).- In modifica riga, i campi CC1 e magazzino sono disabilitati (
x-enabled = 0): e' modificabile solo il CC2 di ritorno. - In caso di collisione inserimento/modifica (record gia' presente / non piu' presente), il programma segnala e adatta l'operazione automaticamente.
- Il campo
tm-mag-d(descrizione magazzino) viene popolato tramiterd-cogmagazconmagz-tipo = "M".