====== GMW WS ====== ---- Questo servizio costituisce l'accesso alle funzionalità di GMW da parte di programmi di 3 parti, ad esempio l'applicativo Java per la gestione delle bilance di pesa materiale. Il WebService è di tipo SOAP e implementa servizi WSDL per la mappatura dei metodi esposti. Tutti i metodi sono autoesplicativi e contengono nel proprio manifest sia i dati richiesti come nome e tipo che i dati restituiti. I dati restituiti sono dei files XML (sia semplici valori interi/booleani che nel caso di elenchi di dati tipo liste). ==== Metodi Esposti ==== i metodi esposti sono raggruppati per scopo, e la regola di naming rispecchia lo stesso: ^ **Metodo** ^ **Funzione** ^ ^ **Elenchi anagrafici di base** ^ | ElencoBilance | Elenco anagrafico delle Bilance | | ElencoBilanceByCompanySito | Elenco anagrafico Bilance dati i codici codice company e sito | | ElencoClienti | Elenco anagrafico clienti | | ElencoCompanySito | Elenco anagrafico combinazioni company/sito attive | | ElencoImballi | Elenco anagrafico imballi | | ElencoImpianti | Elenco anagrafico impianti | | ElencoImpiantiByCompanySito | Elenco anagrafica impianti dati codice company/sito (no dataset) | | ElencoOperatori | Elenco anagrafico operatori | | ElencoStatiProdotto | Fornisce l'elenco degli stati dei prodotti ammessi | | ElencoTipoDichiarazioni | Fornisce l'elenco dei tipi di dichiarazione ammessi | ^ **Estrazione dati per Particolari** ^ | Particolare_getFullData | Restituisce tutti i dati salienti di un particolare | | Particolari_getElenco | Restituisce l'elenco dei particolari validi dato una sottostringa di ricerca | ^ **Metodi per UDC** ^ | UdcCall_AssociaUdcPerConsumo | Associa 2 UDC di cui uno è stato consumato ed uno è quello nuovo creato a partire dal primo | | UdcCall_GetNew_Finito | Fornisce un nuovo codice UDC FINITI tipo completo (con pezzi e cod magazzino) a partire dalla richiesta e salva i dati | | UdcCall_GetNew_Pesa | Fornisce un nuovo codice UDC tipo completo (con pezzi e cod magazzino) a partire dalla richiesta e salva i dati | | UdcCall_GetNew_Tara | Fornisce un nuovo codice UDC tipo TARA a partire dalla richiesta e salva i dati | | UdcCall_GetNew_WIP | Fornisce un nuovo codice UDC WIP tipo completo (con pezzi e cod magazzino) a partire dalla richiesta e salva i dati | | UdcCall_ModificaCartellino | Modifica (se possibile poiché sbloccato) un cartellino esistente dato il suo UDC e salva i dati, restituendo conferma avvenuta modifica (true/false) | | UdcCall_PrintLabel | Effettua la stampa richiesta per l'UDC indicato | | UdcCall_annullaUDC | Annulla un dato UDC (se permesso) | | UdcCall_rettificaPerScartoQtaUdc | Rettifica la quantità UDC PER SCARTO andando a compensare nel magazzino 84 la differenza SE il magazzino AS è indicato come attivo ed ha un mag di compensazione in AS400_MagCont | | UdcCall_rettificaQtaUdc | Rettifica la quantità UDC andando a compensare nel magazzino 84 la differenza SE il magazzino AS è indicato come attivo ed ha un mag di compensazione in AS400_MagCont | | UdcCall_riattivaUDC | Riattiva un UDC consumato (se permesso da web.config) in mag 84 | | UdcCall_sbloccaUDC | Annulla un dato UDC (se permesso) | ^ **Estrazione dati i per UDC** ^ | UdcInfo_ArtInProd4ImpDataTurno | Elenco impianti ed articoli in produzione (per codice anagrafico) | | UdcInfo_CheckCodImballo | Controlla che il codice imballo inviato sia valido (pre creazione TARA) | | UdcInfo_GetFullData | Restituisce tutti i dati dell'UDC indicato | | UdcInfo_GetTara | Richiede la tara per l'UDC indicato | | UdcInfo_GetUdcChildList | Restituisce l'elenco degli UDC child di quello specificato | | UdcInfo_GetUdcCreatedByDate | Restituisce l'elenco degli UDC creati da una certa bilancia in un dato intervallo di date | | UdcInfo_GetUdcParentList | Restituisce l'elenco degli UDC parent di quello specificato | | UdcInfo_isTara | Indica se l'UDC indicato sia di tipo tara (= senza prodotto associato)| | UdcInfo_isValid | Indica se l'UDC indicato sia valido (true valido, false non presente o annullato IdxPosizione = 0) | | UdcInfo_lastUdcProdFilt | Fornisce l'elenco degli ULTIMI UDC creati x una certa data, turno, linea e particolare| ===== Use cases ===== Per effettuare alcune operazioni in particolare è necessario richiamare in sequenza più funzioni del WebService, di seguito sono indicati alcuni casi d'uso frequenti. ==== Creazione UDC ==== * Tara Per creare un UDC di tara è sufficiente chiamare il metodo **UdcCall_GetNew_Tara** passando i parametri richiesti * Fusi / Finito / WIP Per creare un UDC per uno specifico Particolare, oltre a passare i dati di targa del cartellino, vanno inviati i dati dell'UDC tara che viene usato per diventare un contenitore pieno (oltre che il valore della tara) in modo da associare i 2 UDC Va specificato, in caso di creazione di questi cartellini, se si vuole che la quantità vada poi riportata verso AS400 oppure se (ad esempio per creazione di cartellini le cui quantità sono già gestite da bolle di rientro/uscita) non si vuole che questo avvenga in automatico CodMag: se non specificato (stringa vuota) il codice magazzino (logico = contabile) in cui creare in nuovo UDC, sarà preso il valore di default da web.config ==== Stampa UDC ==== In caso di richiesta di stampa di un UDC, se non specificato un nome URL completo per la stampante, sarà usata la stampante di default definita nel web.config per il tipo di cartellino richiesto ==== Annulla UDC ==== In questo caso si segna un UDC come in posizione di magazzino "0" e quindi lo si annulla (inibendone il funzionamento nei vari altri moduli applicativi) e rettificando verso AS400 le quantità di prodotto coinvolte ==== Modifica UDC ==== * Per poter essere modificato l'UDC deve essere stato creato/modificato da non + di 5 minuti (valore modificabile in web.config) se così non fosse si può chiamare il metodo **UdcCall_sbloccaUDC** con l'apposita passkey, definita anche in web.config, per sbloccare l'UDC e permettere la successiva modifica Il metodo **UdcCall_ModificaCartellino** permette quindi di modificare tutti i singoli valori del cartellino e conseguentemente **aggiornerà su AS400** le quantità per i magazzini interessati (in caso di modifica magazzino logico e / rettifica quantità associate alla modifica del cartellino) ==== Rettifica quantità ==== I due metodi di rettifica quantità (**UdcCall_rettificaQtaUdc** e **UdcCall_rettificaPerScartoQtaUdc** fanno in realtà la stessa cosa non essendoci una vera gestione degli scarti attiva in GMW: le quantità sono quindi rettificate nel cartellino e poi inviate ad AS400 ANCHE SE il cartellino non era sbloccato per modifica. ==== Consumo UDC ==== In caso di creazione di nuovi cartellini, in gestioni che **prevedono** la corretta gestione del magazzino WIP, è necessario, all'atto della creazione di un cartellino che scaturisca dalal distruzione di un precedente cartellino di semilavorati, andare ad associare per consumo i 2 cartellini (anche epr permettere la piena tracciabilità dei dati): si impiega appunto il metodo **UdcCall_AssociaUdcPerConsumo** che se non è già stato fatto consuma il cartellino "parent" in modo da inviare ad AS400 l'informaizone corretta sullo stato delle quantità dei particolari. ==== Riattivazione UDC ==== In caso di impiego di un magazzino Wip con consumo immediato, e se si vuole utilizzare un UDC già messo in WIP (ad esempio per deposito in scaffalature OVAS o altro), è possibile riattivare il cartellino stesso con il metodo **UdcCall_riattivaUDC** ==== Rientro Terzista ==== E' possibile processare gli UDC presenti nel magazzino 88 (rientro terzista) in modo che vadano direttamente nel magazzino finiti 54 (**UdcCall_rientroInFiniti**), nel magazzino 84 per finire poi in OVAS (senza consumo automatico quindi, con **UdcCall_rientroInOVAS**) oppure in WIP con consumo immediato (**UdcCall_rientroInWip**) ==== Processing stored avanzamento spedizione terzisti ==== La stored che processa l'avanzamento (per delibere e speduzioni) verso i terzisti si può chiamare anche da ws con il metodo **UdcCall_processUdcTerzisti** ----