COGW79 - Esportazione stock¶
Scopo¶
Estrazione dello stock disponibile per tutti i prodotti finiti. Programma sviluppato specificamente per Artic Seals. Per ogni articolo calcola lo stock come giacenza - impegni, con logica particolare per i prodotti assemblati (dove lo stock puo' derivare dai componenti della distinta base). Produce una griglia esportabile in Excel con stock, stato stampi, codice commerciale GAPI, quantita' minima ordine e prezzo lordo.
Posizione nel menu¶
| Menu | Percorso |
|---|---|
| Magazzino | Giacenze & Sottoscorta > Esportazione stock |
Struttura¶
Programma GUI interattivo con elaborazione batch e griglia risultati. Flusso:
- Inizializzazione, lettura configurazione (RNEWCONF), apertura file
- Calcolo date limite (data corrente + giorni post-produzione/commerciale) tramite GESDATE
- Conferma utente
- Elaborazione: scorre COGMERCI con filtri complessi, scrive su COGTRANS
- Presentazione griglia risultati con esportazione Excel
Fase di elaborazione (b-elabora)¶
Scorre tutte le merci. Per ogni articolo applica una catena di esclusioni:
- Stato merce: esclusi C (cancellato), E (estinto), O (obsoleto)
- Gruppo: esclusi MB, MM, MP (se non padre); LA, MM, RP, HE, HT sempre
- Prefisso CMA: esclusi "S." e "M." (stampi)
- Famiglie: lunga lista di famiglie escluse (tramite COGRACMT tipo "F")
- Catalogo SPE: esclusi, eccetto famiglie PLF, GDR, CUP
- Gruppo PS: solo famiglie RR, RSO
- Gruppo PA: solo famiglie selezionate; SRS solo per materiale N1
Calcolo stock¶
Per ogni articolo valido:
- Assemblati (
mer-padre = "P"con fase 1 in distinta base): - Se "stock componenti" attivo nella scheda CRM: stock = giacenza merce - impegni
- Altrimenti: stock = minimo della disponibilita' di ogni componente nella distinta base
- Stampo: verificato su tutti i componenti
- Non assemblati:
- Stock = giacenza merce - impegni vendita - impegni produzione
- Stampo: verificato direttamente o tramite disponibilita' commerciale
L'impegno viene calcolato da COGU23 alla data limite configurata.
Tabelle/File utilizzati¶
| File/Tabella | Tipo | Descrizione |
|---|---|---|
| FEURTAB | Input | Tabella di sistema |
| COGMERCI | Input | Anagrafica merci |
| COGMERAP | Input | Attributi merce |
| COGMERA2 | Input | Attributi merce 2 (qta minima ordine) |
| COGMERCL | Input | Merce-cliente (codice commerciale GAPI) |
| COGRACMC | Input | Raccordo codice avanzamento |
| COGRACMT | Input | Raccordo tabelle merce (famiglia, materiale, catalogo) |
| COGDBASE | Input | Distinta base |
| CLCDISEG | Input | Ciclo di lavorazione (per identificare assemblaggio) |
| COGSTAMP | Input | Stampi |
| COGMERLK | Input | Link merce (collegamento a stampi) |
| COGSLMAG | Input | Saldi magazzino |
| COGTRANS | I-O (temp) | File transito per la griglia |
Configurazioni (RNEWCONF)¶
| Gruppo | Chiave | Descrizione |
|---|---|---|
| STOCK | GG-POST-PRODUZIONE | Giorni da aggiungere alla data corrente per il calcolo degli impegni di produzione |
| STOCK | GG-POST-COMMERCIALE | Giorni da aggiungere per gli impegni commerciali |
| STOCK | DEBUG | Articolo singolo per debug (vuoto = tutti) |
Chiamate a sottoprogrammi¶
| Sottoprogramma | Scopo |
|---|---|
| COGU23 | Calcolo disponibilita' (impegni vendita/produzione) |
| COGU10W | Gestione divise e arrotondamenti |
| COGS01 | Ricerca prezzo da listino (listino 3 per prezzo lordo) |
| GESDATE | Calcolo date (somma giorni) |
| CRMS06 | Lettura informazioni scheda CRM |
| CRMS09 | Ricerca scheda CRM collegata alla merce |
| GRIDADMN | Gestione personalizzazione griglia |
| RNEWCONF | Lettura configurazioni |
COPY utilizzate¶
Working storage¶
cogw79.wrk, k-personal, costanti-stampaggio, costanti-tipi-documento, wgrave, wnscr, wopenf, wstato, cogazien, wgrid, utilgdad, utilu10, utilu20, utilu23, utilncnf, utilgesdate, utilgesdebug, utilcrms06, utilcrms09, utils68
Linkage¶
wcont, utils01 (parametri listino COGS01), wcont1
Screen/Procedure¶
cogw79.select, cogw79.fd, cogw79.decla, cogw79-01.scr, cogw79.prc
Generiche¶
feurtab.fd, cogfiles.cpy, mmmask.cpy, stato.cpy, stato1.cpy, winmsg.cpy, grave.cpy, opengen.cpy, gesdebug.cpy
Note¶
- Programma personalizzato per il cliente Artic Seals (
k-personal-artic-seals): la logica di verifica stampi attivi e' condizionata dalla personalizzazione. - Il file transito ha nome
#$COGW79_{operatore}e viene cancellato alla chiusura. - La griglia supporta max 900 righe.
- Lo stock negativo viene azzerato prima della scrittura.
- La subroutine b3-esamina-db scandisce la distinta base e prende il minimo stock tra tutti i componenti (escluse lavorazioni). Se nessun componente e' disponibile, il risultato e' 0.
- Il debug e' gestito tramite GESDEBUG (attivabile per operatore 777).