COGX01 - Produzione Funghi / Ricezione Dati Bilancia¶
Scopo¶
Gestione commesse di produzione con interfacciamento a bilance industriali (Bizerba). Permette di selezionare un ordine di produzione, visualizzare la distinta base, registrare pesature, gestire lotti e matricole, generare movimenti di magazzino per scarico componenti e carico prodotto finito.
Posizioni menu¶
- Magazzino > Produzione > Produzioni Diverse > Produzione funghi
- Magazzino > Produzione > Produzioni Diverse > Ricezione Dati Bilancia
File e Tabelle¶
| File | Copybook | Utilizzo |
|---|---|---|
| FEURTAB | cogfiles.cpy | Tabella file di sistema |
| COGCONOR | cogconor.cpy | Testata ordini di produzione (commesse) |
| COGLAVOR | coglavor.cpy | Ordini di lavoro/produzione |
| COGMERCI | cogmerci.cpy | Anagrafica merci |
| COGTESOR | cogtesor.cpy | Testata ordini |
| COGRIGOR | cogrigor.cpy | Righe ordini |
| COGMERLT | cogmerlt.cpy | Merci per lotto |
| COGMLTAG | cogmltag.cpy | Lotti aggiornamento/movimenti |
| COGGENER | coggener.cpy | Generatore numerazioni |
| COGDBASE | cogdbase.cpy | Distinta base |
| COGMOVDB | cogmovdb.cpy | Movimenti distinta base |
| COGLTLAV | cogltlav.cpy | Lotti in lavorazione |
| COGLGLOT | coglglot.cpy | Legami lotti |
| COGMERCL | cogmercl.cpy | Merci per cliente (codice articolo cliente) |
| COGGEANA | coggeana.cpy | Anagrafica generale |
| COGLGMER | coglgmer.cpy | Legami merci |
| COGDESAG | cogdesag.cpy | Descrizioni aggiuntive |
| COGDBAGG | cogdbagg.cpy | Distinta base aggregata |
| COGSLMAG | cogslmag.cpy | Saldi magazzino |
| TRAN-X02 | tran-x02.cpy | File transito per ordini bilancia |
| COGTRANS2 | (inline FD) | File lavoro lotti componenti |
| TRAN-S26 | tran-s26.cpy | File transito scarico magazzino |
| X-LOG-FILE | (inline FD) | Log operazioni |
| FLSTA | flsta.cpy | File stampante |
Copybook¶
Working storage¶
cogfiles.cpy,wopenf.cpy,wstato.cpy,wgrave.cpy,wnscr.cpy,cogazien.cpyutilncnf.cpy(configurazione RNEWCONF)utils21.cpy,utils25.cpy,utils26.cpy,utils52.cpy,utils50.cpyutils54.cpy,utils68.cpy,utilu10.cpy,utilu12.cpy,utilu20.cpyactivex.def,x-db-wrk.cpy
Linkage¶
wcont.cpy,utils00.cpy,utilp53.cpy,utilx01.cpy,wcont1.cpy
Procedure¶
stato.cpy,stato1.cpy,winmsg.cpy,grave.cpy,open1.cpy,mmmask.cpydtab.cpy,fscrol2.cpy,x-db-fun.cpy,printer.cpy- Chiavi:
coggeana.k01,cogmercl.k01,cogrigor.k01,cogconor.k01,coglavor.k01,cogmerci.k01,cogmerci.k03,cogtesor.k01,tran-x02.k01/.k02,cogtran2.k01/.k02/.k03,cogmerlt.k01/.k01-agg/.k02/.k07,cogmltag.k01/.k01-agg,coggener.k01,cogdbase.k01,cogmovdb.k01,cogltlav.k01,coglglot.k01/.k02,coglgmer.k01,cogdesag.k01,cogdbagg.k01,cogslmag.k01,tran-s26.k01
CALL¶
| Programma | Scopo |
|---|---|
| COGS52 | Input data/anno con calendario |
| COGS54 | Gestione stampante |
| COGS68 | Ricerca merce con zoom |
| COGU10 | Conversione divisa |
| RNEWCONF | Lettura configurazione (gruppo PRNTLSPREL) |
Parametri di chiamata (linkage)¶
util-x01(utilx01.cpy): struttura per chiamata da altro programmaux01-called,ux01-caller,ux01-ope,ux01-nf-tran-x02-name(path file transito ordini)
Configurazione RNEWCONF¶
Gruppo: PRNTLSPREL (12 chiavi):
| Chiave | Campo | Descrizione |
|---|---|---|
| euta-c019-mag-stoc | tm-cfg-mag-stoc | Magazzino stock |
| euta-c019-prn | tm-cfg-prn | Stampante (default "A001") |
| euta-c019-kyo-emu | tm-cfg-kyo-emu | Emulazione Kyocera |
| euta-c019-ord-not | tm-cfg-ord-not | Ordine note |
| euta-c019-ord-cnf | tm-cfg-ord-cnf | Ordine conferma |
| euta-c019-tab | tm-cfg-tab | Tabella |
| euta-c019-bar | tm-cfg-bar | Barcode |
| euta-c019-loc | tm-cfg-loc | Localizzazione |
| euta-c019-ncoll | tm-cfg-ncoll | Numero colli |
| euta-c019-desag | tm-cfg-desag | Descrizioni aggiuntive |
| euta-c019-st-barc | tm-cfg-st-barc | Stampa barcode |
| euta-c019-tip-det | tm-cfg-tip-det | Tipo dettaglio |
Logica di elaborazione¶
Modalita' operative¶
Il programma opera in due modalita' determinate dal parametro wo-parametro:
- Parametro "A" (Ricezione Dati Bilancia): si mette in ascolto sulla bilancia tramite ActiveX, riceve ordini e pesature automaticamente
- Parametro diverso (Produzione manuale): l'operatore seleziona l'ordine di produzione e registra manualmente
Flusso principale (modalita' manuale)¶
- Apertura file, lettura azienda, configurazione RNEWCONF
- Verifica
az-lav-est(conto lavoro esterno): se attivo, blocca l'esecuzione - Input ordine di produzione: lettura codice Bizerba o anno/numero
cerca-coglavor: cerca l'ordine in COGLAVOR, carica prodotto finito e distinta basetratta-distinta: esplode la distinta base, carica COGTRANS2 (file lavoro lotti componenti)- Navigazione tabella componenti (11 righe,
fscrol2.cpy) - Per ogni componente: input pesatura, gestione lotto, scarico
- Chiusura ordine: genera movimenti magazzino (carico prodotto finito, scarico componenti via TRAN-S26)
Interfacciamento bilancia (ActiveX)¶
- Componente:
EsAccessControl(h-x-db) - Record format: struttura con 48 campi (NumeroOrdine, NumeroRiga, DataOrdine, Stato, Bilancia, CodiceCliente, CodiceArticolo, Quantita', Lotto, ecc.)
- Funzioni:
x-db-fun-startup,x-db-fun-open-i-o,x-db-fill-record,x-db-fun-set-field-value - Operazioni: scrittura record nell'access DB della bilancia con tutti i dati dell'ordine
File di lavoro¶
- TRAN-X02: file transito ordini da/per bilancia (chiave: merce + ordinamento + consegna)
- COGTRANS2: file lavoro lotti componenti (chiave: merce + mag + prog-lotto; chiavi alternate su cod-lotto e cod-mlt)
- TRAN-S26: file transito per scarico magazzino (condiviso con COGS26)
- X-LOG-FILE: log testuale delle operazioni (path:
ext-tmp-dir/COGX01_<data>.log)
Program-id varianti¶
COGX01(k-program-id): programma principaleCOGX01R(k-program-id-r): variante ricezioneCOGX01P(k-program-id-p): variante produzioneCOGX01V(k-program-id-v): variante visualizzazione
Note tecniche¶
- Programma molto complesso (5433 righe), gestisce l'intero ciclo produttivo
- Usa maschere carattere (mm-1, 25 righe x 80 colonne) per la maschera principale
- Tabella componenti: max 11 elementi (
k-tab-length = 11) - Larghezza stampa lista prelievo: 100 caratteri standard, 130 estesa
- Compilazione condizionale
>> IF ISC IS DEFINEDper compatibilita' ISCOBOL (funzione disabilitata sotto ISC) - Screen section inline con solo il componente ActiveX