COGV06NO — Gestione anagrafica merci (versione STANDARD)¶
Sorgente: cbl/cogv06no.cbl | Program-ID: cogv06no | Tipo: Programma interattivo a maschera multi-pagina (mask generata da Screens)
Menu: richiamato da COGV06 (Magazzino > Archivi & Tabelle > Merci; Lab.Odont. > Archivi > Materiali/Prestazioni > Gestione). Non compare direttamente a menu.
Scopo¶
COGV06NO e' la versione standard della gestione anagrafica merci/articoli, quella che contiene la logica applicativa effettiva (inserimento, modifica, cancellazione e ricerca degli articoli). Viene eseguita come fallback dal launcher COGV06 quando l'azienda non ha una variante personalizzata COGV06<az-personal>. Ogni articolo e' identificato dal codice merce composto da gruppo (2), sottogruppo (2) e codice numerico (5) e raccoglie tutte le informazioni gestionali: descrizione, unita' di misura, codici IVA, contropartite, dati di magazzino/scorte, parametri di laboratorio e i dati aggiuntivi.
La maschera e' organizzata in piu' pagine tematiche (Principale, Laboratorio, Logistica/Consegna, ecc.). Per la descrizione operativa dei campi lato utente vedere la pagina utente "Materiali/Prestazioni - Gestione".
File e tabelle principali¶
Il tracciato completo dei file e' definito tramite le copybook generate da Screens (cogv06no.select, cogv06no.fd); di seguito i file applicativi principali.
| File | Copybook | Prefisso | Scopo |
|---|---|---|---|
| COGMERCI | cogmerci.* (usa anche cogmerci.k03) |
mer- |
Anagrafica merci: dati principali dell'articolo (descrizione, UM, IVA, contropartite, ...) |
| COGMERA3 | cogmera3.* |
ma3- |
Dati aggiuntivi merce (chiave ma3-merce = gruppo/sottogruppo/codice). Contiene, fra l'altro, il flag ma3-no-merce-coan |
| COGMERA4 | cogmera4.* |
ma4- |
Dati aggiuntivi merce (quarto tracciato). Contiene i campi "corso/centro di costo" e ma4-ordine-stampa |
| COGTABEL | cogtabel.cpy |
euta- |
Tabelle generiche (es. tipo TR = responsabili centro di costo) |
| COGMOMAG | cogmomag.* (usa cogmomag.k04) |
— | Movimenti di magazzino (controlli su giacenze/collegamenti) |
Programmi chiamati (CALL)¶
| Programma | Scopo |
|---|---|
| COGS55 | Aggiornamento del codice avanzato merce quando viene variato (il flag interno segnala la variazione del codice avanzato) |
| COGB69 | Ricerca/selezione del responsabile del centro di costo (F8 sul campo "Responsabile centro di costo"); interfaccia utilcogb69.cpy (cogb69-caller / cogb69-called / cogb69-out-cod) |
Il programma richiama inoltre diverse finestre di aiuto/selezione (referenziate come caller nel sorgente, es. moduli D89/F11/E69) tipiche della maschera anagrafica merci.
Modifiche recenti¶
2026-07-31 — Flag "Non valorizza merce in co/an" (ma3-no-merce-coan)¶
Aggiunto il campo di maschera tm-no-merce-coan (paragrafo a-tm-no-merce-coan), memorizzato su COGMERA3 in ma3-no-merce-coan. Semantica: "N" (default) = la merce viene valorizzata normalmente in contabilita' analitica / per centri di costo; "S" = la merce non viene valorizzata in co/an. In lettura, se il campo e' a spazio viene forzato a "N" (if tm-no-merce-coan = " " move "N"). Il campo e' navigabile via w-ritorna 434/435 e caricato/salvato in scrittura verso ma3-no-merce-coan. L'inizializzazione massiva del nuovo campo sui record esistenti e' effettuata dal programma one-shot tempo813.
2026-05-11 — Campo "Ordine di stampa" (ma4-ordine-stampa)¶
Aggiunto il campo tm-ordine-stampa (pic 9(05), paragrafo a-tm-ordine-stampa, controllo x-controlla-tm-ordine-stampa, navigazione w-ritorna 329), memorizzato su COGMERA4 in ma4-ordine-stampa. Definisce l'ordine personalizzato della merce nella stampa "Listino Particolare" in modalita' Prestazioni; le merci senza ordine impostato vengono stampate in coda.
2026-04-30 — Sezione "Centro di costo / Corsi" (COGMERA4)¶
Aggiunto un blocco di campi per la gestione dei corsi di formazione trattati come articoli, memorizzati su COGMERA4:
| Campo maschera | Campo COGMERA4 |
Contenuto / controllo |
|---|---|---|
tm-respo-cc |
ma4-respo-cc |
Responsabile centro di costo, validato su COGTABEL tipo TR (F8 = COGB69) |
tm-data-avvio-cc |
ma4-data-avvio |
Data avvio corso (F8 calendario) |
tm-data-fine-cc |
ma4-data-fine |
Data fine corso; se valorizzata, richiede la data avvio e deve essere >= alla data avvio |
tm-nr-parte-cc |
ma4-nr-parte |
Numero partecipanti |
tm-nr-ore-cc |
ma4-nr-ore |
Numero ore (9(05)v99) |
tm-finanziato-cc |
ma4-finanziato |
Corso finanziato (S/N), default "N" in inserimento |
I relativi paragrafi (a-tm-respo-cc … a-tm-finanziato-cc) usano la navigazione w-ritorna 323-328 e i controlli x-controlla-tm-respo-cc … x-controlla-tm-finanziato-cc. La sezione e' visibile solo quando i controlli corrispondenti sono attivi (campi opzionali).
2026-04-17 — Duplicazione merce ristretta a BM Solution e DEA (TASK-4688)¶
La proposta di duplicazione dei dati da un articolo esistente in fase di inserimento (dup-merce, con eventuale valorizzazione di s55-merce-duplica e chiamata a COGS55) viene ora eseguita solo per le personalizzazioni az-personal = k-personal-bm-solution (BM Solution) o az-personal = k-personal-dea-colori (DEA Colori). Per gli altri clienti (segnalato il caso Datallarm) la duplicazione non viene piu' proposta, perche' non desiderata.
Programma di inizializzazione tempo813¶
Il flag ma3-no-merce-coan introdotto il 2026-07-31 e' inizializzato sui record esistenti dal programma one-shot tempo813 (cbl/tempo813.cbl, non a menu). Scorre sequenzialmente COGMERA3 e, per ogni record con ma3-no-merce-coan = spaces, imposta "N" e riscrive (rewrite), mostrando un contatore di avanzamento; l'elaborazione parte con F3. Salta l'azienda az-personal = "SC" (Scuola Edile), per cui l'inizializzazione era gia' stata effettuata. E' un'utility temporanea di migrazione dati, da eseguire una tantum dopo il rilascio del nuovo campo.
Note¶
COGV06NOe' un programma di grandi dimensioni: le pagine della maschera e il tracciato dei file sono generati/gestiti tramite Screen Designer (cogv06no.select/.fd/.wrk/.prc).- La navigazione tra i campi della maschera avviene tramite codici
w-ritornae l'EVALUATEsuik-id-*dei controlli; ogni nuovo campo aggiunge il proprio ramo sia nell'EVALUATEdi navigazione sia nella catena dei controllix-controlla-*. - Vedi anche il launcher COGV06 che seleziona la variante (standard o personalizzata) in base ad
az-personal.