Vai al contenuto

COGE31N - Gestione Distinta Base ad Albero (BETA)

Intestazione

Campo Valore
Programma COGE31N
Titolo Gestione Distinta Base ad Albero (BETA)
Posizione menu Magazzino -> Produzione -> Distinta Base -> Gestione ad albero (BETA)
Posizione menu alternativa Assist 2.0 -> Archivi -> Distinte Tutorial
Sorgente cbl/coge31n.cbl
Tipo Programma GUI interattivo (Screen Designer)

Scopo e logica generale

COGE31N e' il nuovo modulo di gestione della distinta base in stile albero, destinato a sostituire in futuro COGE31. Espone in una sola maschera:

  • un tree-view (a sinistra) con la struttura gerarchica completa dei semilavorati a partire dal padre,
  • una griglia (a destra) con i componenti del livello selezionato.

L'utente puo' navigare l'albero, modificare quantita' e note in griglia, aggiungere/eliminare componenti, copiare/spostare interi rami (Ctrl+C/X/V/P/G) e creare al volo nuovi semilavorati (F5).

Tutte le modifiche vengono accumulate in una tabella di transito indicizzata (t-rami-db) e applicate sul DB reale (cogdbase) solo al salvataggio (F3) tramite conferma esplicita.

Il programma puo' essere richiamato da COGE31 passando in linkage il codice del padre da aprire (coge31n-called = "COGE31-CALLED", coge31n-db = <codice>).


File e tabelle acceduti

File logico Modalita' Uso
COGMERCI I-O Anagrafica articoli - lettura padre/componenti, creazione nuovi semilavorati
COGDBASE I-O Righe distinta base - lettura/inserimento/cancellazione componenti
COGGEANA Input Anagrafica generale - descrizioni
COGTABEL Input Tabelle parametriche
COGRACMC Input Raccordi codici merce
COGMERA3 Input Anagrafica merci estesa
COGMERNT Input Note merce
CLNDBASE (copy di COGDBASE) Input Letture incrociate distinta in altra istanza (replacing dba- -> cln-dba-)
T-RAMI-DB I-O (transito) Tabella temporanea indicizzata che memorizza i rami caricati e le operazioni pendenti
T-GRID-DET I-O (transito) Tabella di transito griglia componenti (Screens)
T-SEL / WIN159 I-O (transito) Tabella selezione multipla (Shift+F8)
FEURTAB Input Tabella euro

Copybook inclusi

Screen Designer

Copybook Contenuto
coge31n.select SELECT dei file (genera anche CLNDBASE replacing)
coge31n.fd FD dei file
coge31n.wrk Working storage maschera
coge31n.tm Campi maschera modificabili
coge31n-01.scr Screen section principale
coge31n.decla Declaratives
coge31n.prc Procedure division Screens
coge31n.imppredf-wrk / coge31n.imppredf Import predefiniti

Working storage

Copybook Ruolo
wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy Errori, schermo, apertura, stato file
cogazien.cpy Dati azienda
wgrid.cpy Gestione griglia
utilgdad.cpy Interfaccia GRIDADMN
utilcogd40.cpy Interfaccia COGD40 (gestione galleria immagini)
utils52.cpy Interfaccia COGS52 (calendario)
utils68.cpy Interfaccia COGS68W (ricerca merci)
utils93.cpy Interfaccia COGS93 (lookup distinta)
utilu10.cpy, utilu20.cpy Utility comuni
utilimppredf.cpy Utility import predefiniti
utilncnf.cpy Struttura parametri RNEWCONF
utils31.cpy Interfaccia COGS31 (ricerca avanzata)
utilcogx40.cpy Interfaccia COGX40 (selezione multipla merci)

Linkage

Copybook Contenuto
wcont.cpy, wcont1.cpy Dati operatore / dati azienda linkage
utilcoge31n.cpy Interfaccia chiamante: coge31n-called, coge31n-db

Programmi chiamati (CALL)

Programma Scopo
COGD40 Galleria immagini articolo (F1)
COGU20W Utility (apertura documenti / lookup)
COGS31 Ricerca avanzata (F9)
COGX40 Selezione multipla merci (Shift+F8)
GRIDADMN Amministrazione griglia (Shift+F4)
RNEWCONF Lettura configurazione
W$BITMAP Caricamento bitmap custom per pulsanti tool-bar
W$MENU Pop-up menu in griglia

Strutture dati chiave

Tabella di transito t-rami-db

Indicizzata su t-rdb-chia1 (codice distinta padre) + chiave alternativa su t-rdb-ramo-esaminato + t-rdb-chia1. Mantiene per ogni ramo gia' caricato:

  • codice distinta padre (gru/sot/cod),
  • flag "ramo esaminato",
  • codice nuova merce (per rami appena creati),
  • pointer al nodo tree-view.

Tabella in memoria tab-elementi

Fino a 9999 elementi (te-max), traccia tutti i nodi dell'albero gia' caricati con pointer + codice merce + codice distinta.

Hidden info nodo tree

Struttura hidden-info agganciata a ciascun nodo: livello, flag distinta/foglia, codice merce, codice padre, progressivo DBA, quantita', descrizione.


Logica di elaborazione

Avvio (apri -> main)

  1. z-99-init-program, controllo abilitazione operatore.
  2. Lettura linkage utilcoge31n.cpy: se coge31n-called = "COGE31-CALLED" precarica il codice padre da coge31n-db.
  3. Lettura configurazione (RNEWCONF) in tm-cfg.
  4. Apertura file, creazione transito griglia.
  5. Configurazione tasti funzione standard + custom (F1 galleria, F5 nuovo ramo, F2 ricarica, Ctrl+G/P/V/X/C, Shift+F8).
  6. Caricamento bitmap custom (load-bitmap-custom) per pulsanti tool-bar.
  7. Display maschera, attesa accept padre.

Caricamento albero

  • Espande ricorsivamente i rami leggendo cogdbase per ciascun semilavorato.
  • Inserisce i nodi nel tree-view tramite pointer e popola tab-elementi e t-rami-db.

Operazioni di edit

  • Aggiungi/elimina componente in griglia: aggiorna t-grid-det (transito griglia).
  • Copia/taglia ramo: marca operazione in tm-ope-copia con sorgente in tm-merce-copia / tm-db-copia.
  • Incolla (dopo, prima, figlio): valida la destinazione (mai sulla radice; "figlio" solo su semilavorati) e produce un nuovo blocco di righe in transito.
  • Nuovo ramo (F5): chiede descrizione, crea automaticamente l'articolo padre in COGMERCI e la prima riga di distinta in COGDBASE (paragrafo dedicato).

Salvataggio (F3)

Chiede conferma; quindi riversa il contenuto del transito su cogdbase e cogmerci, gestendo inserimenti e cancellazioni.

Limiti e regole di business

  • Non e' consentito copiare/spostare la radice della distinta.
  • "Incolla come figlio" valido solo su elementi che sono distinte.
  • Massimo 9999 elementi nell'albero in memoria.
  • Programma marcato BETA: destinato a sostituire COGE31.

  • Magazzino > Produzione > Distinta Base > Gestione ad albero (BETA)
  • Assist 2.0 > Archivi > Distinte Tutorial

Vedi anche