COGZSC - Avanzamento automatico¶
Pfillosizione nel menu Programma non a menu Linkage section UTIL-COGSB0
| Tipo | Dato | Formato | Contenuto |
|---|---|---|---|
| INPUT | COGZSC-OPE | x(20) | Operazione da eseguire |
| COGZSC-LCV-CHIA1 | Identificativo della mansione su cui effettuare l'elaborazione Corrisponde a LCV-CHIA1 |
||
| - COGZSC-LCV-COMMESSA | 9(10) | ||
| - COGZS4-LCV-PROG | 9(04) | ||
| COGZSC-FL-AVANZAMENTO | x(01) | Indica se dovrà essere effettuato anche l'avanzamento | |
| OUTPUT | COGZSC-ESITO | x(01) | Esito dell'operazione |
| COGZSC-O-MSG | x(150) | Messaggio restituito | |
| FILLER | x(499) |
Logica generale Questo programma nasce per permettere l'avanzamento automatico di una mansione in una commessa, partendo dal sotto-articolo. Include quindi le operazioni necessarie per effettuare la progettazione di reparto, ed eventualente l'avanzamento delle fasi di lavorazione risultanti. Il pre-requisito necessario è che per la mansione sia prevista una sola variante: altrimenti è necessario effettuare prima la progettazione di reparto, o la selezione della variante. Configurazioni
| Gruppo | Parametro | Note |
|---|---|---|
| odonto | classe-categoria | |
Elaborazione L'elaborazione cambia a seconda dell'operazione richiesta.
Operazione: EVASIONE¶
Descrizione Questo programma nasce per permettere l'avanzamento automatico di una mansione in una commessa, partendo dal sotto-articolo. Include quindi le operazioni necessarie per effettuare la progettazione di reparto, e, se richiesto, l'avanzamento delle fasi di lavorazione risultanti. Il pre-requisito necessario è che per la mansione sia prevista una sola variante: altrimenti è necessario effettuare prima la progettazione di reparto, o la selezione della variante. Chiamata standard
| Tipo | Dato | |
|---|---|---|
| INPUT | COGZSC-OPE | EVASIONE |
| COGZSC-LCV-COMMESSA | Commessa da elaborare | |
| COGZSC-LCV-PROG | Progressivo sottoarticolo da evadere | |
| COGZSC-FL-AVANZAMENTO | Indica se avanzare le azioni | |
| OUTPUT | COGZSC-ESITO | Esito dell'operazione |
| COGZSC-O-MSG | Eventuale messaggio |
Elaborazione A - Ricerca sottoprodotti/varianti Mi posizione sul sottoprodotto LODCMASV:
| Dato | Contenuto |
|---|---|
| LCV-PROG | COGZSC-LCV-PROG |
Se il sottoprodotto è già "progettato" segnalo ed esco. Qui ottengo l'id prestazione del PDF che corrisponde al sottoarticolo: LCV-PDR-ID, e mi serve per recuperare le varianti Ricerco quindi il record corrispondente di LODPDFPR (prestazioni su PDF):
| Dato | Contenuto |
|---|---|
| PDR-PDF | LCV-PDR-PDF |
| PDR-TIP | LCV-PDR-TIP |
| PDR-ID | LCV-PDR-ID |
Ottengo quindi PDR-PROG, che è l'elemento corrispondente al sottoarticolo. Ora quindi scorro le prestazioni successive (le varianti) fino al prossimo sottoarticolo; ricerca su LODPDFPR con chiave primaria:
| Dato | Contenuto |
|---|---|
| PDR-PDF | LCV-PDR-PDF |
| PDR-TIP | LCV-PDR-TIP |
| PDR-PROG | Progressivo trovato + 1 |
Considero tutti i record trovati fino al prossimo con PDR-FL-SEP = "S". Ciascun record corrisponde ad una variante. Se le varianti sono + di 1, uso WINZ22 per permettere all'utente di scegliere la variante richiesta. Aggiungo la variante alla commessa La variante consiste quindi in una prestazione memorizzata nella tabella LODPDFPR, identificata da PDR-PROG. Aggiungo quindi la prestazione e le azioni collegate alla commessa. Azioni Prestazione COGZD1 prevede ora la ricerca della distinta base, ma per ora trascuro questa parte Scorrere la griglia, considerando solo le righe del file di transito selezionate. Per ciascuna riga selezionata aggiungere una riga nella tabella di output COGZDC-TAB-SOTTOPRODOTTI: * COGZDC-TS-ID-SP = Id sottoprodotto (LCV-PROG) * COGZDC-TS-PROG-VAR = Progressivo variante selezionata (PDR-PROG) * COGZDC-TS-PDF = PDF di provenienza * COGZDC-TS-MERCE = codice prestazione collegato alla variante Ricerca per cliente/tipo dispositivo Se sono stati passati entrambi i parametri, fare una ricerca diretta su LODPFSTD:
| Dato | Contenuto |
|---|---|
| PFS-ANA-TIP | COGZSB-ANA-TIP |
| PFS-ANA-COD | COGZSB-ANA-COD |
| PFS-TIP-DSP | COGZSB-TIPO-DISP |
Se trovato restituire i dati al programma chiamante
| Dato | Contenuto |
|---|---|
| COGZSB-ESITO | "S" |
| COGZSB-MSG | "" |
| COGZSB-O-PDF | PFS-PIA-COD |
| COGZSB-O-PROVENIENZA | "A" |
e uscire. Ricerca per tipo dispositivo Successivamente fare una ricerca per il solo tipo dispositivo
| Dato | Contenuto |
|---|---|
| PFS-ANA-TIP | "C" |
| PFS-ANA-COD | 0 |
| PFS-TIP-DSP | COGZSB-TIPO-DISP |
Se trovato restituire i dati al programma chiamante
| Dato | Contenuto |
|---|---|
| COGZSB-ESITO | "S" |
| COGZSB-MSG | "" |
| COGZSB-O-PDF | PFS-PIA-COD |
| COGZSB-O-PROVENIENZA | "B" |
e uscire. Se non è stato trovato nessun PDF restituire:
| Dato | Contenuto |
|---|---|
| COGZSB-ESITO | "N" |
| COGZSB-MSG | "Nessun PDF trovato" |
Imposto "progettato" sul sottoarticolo Aggiorno LCV-PROGETTATO = 'S' sul sottoarticolo interessato
Estratto da documentazione interna ClickUp