using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using SteamWare; using GMW_data; namespace GMW_Term.WebUserControls { public partial class mod_processPackList : System.Web.UI.UserControl { /// /// wrapper traduzione termini /// /// /// public string traduci(string lemma) { return user_std.UtSn.Traduci(lemma); } protected void Page_Load(object sender, EventArgs e) { // eseguo solo se ha un utente... if (!string.IsNullOrEmpty(user_std.UtSn.utente)) { updatePackListStatus(); } } /// /// aggiorna lo stato della packing list corrente /// private void updatePackListStatus() { // recupero barcode e controllo sia valido string barcode = memLayer.ML.StringSessionObj("UDC_sel"); bool barcodeOk = MagClass.magazzino.checkUDC(barcode); bool udcConsumabile = MagClass.magazzino.IdxPosizioneUdc(barcode) > 0; bool udcPrelevabile = (MagClass.magazzino.taRigheListePrelievo.getPrelevateByUdc(barcode).Rows.Count == 0); // se ho un UDC if (barcode != "") { if (udcConsumabile || !memLayer.ML.CRB("checkUdcConsLdp")) { if (udcPrelevabile) { if (barcodeOk) { // controllo se barcode è ok x LDP corrente... if (MagClass.magazzino.verificaDatiUdc(MagClass.magazzino.codListaAttivaUtente, barcode)) { MagClass.magazzino.confermaUdcPrelevatoPerLista(MagClass.magazzino.codListaAttivaUtente, barcode); lblErrore.Visible = false; } else { // salvo errore lblErrore.Visible = true; lblErrore.Text = traduci("BarcodeNonValidoLDP"); } resetMemoriaBarcode(); } } else { // indico barcode già caricato lblErrore.Visible = true; lblErrore.Text = string.Format("{0}: {1}", barcode, traduci("udcGiaPrelevato")); resetMemoriaBarcode(); } } else { // indico UDC consumato lblErrore.Visible = true; lblErrore.Text = string.Format("{0}: {1}", barcode, traduci("udcGiaConsumato")); resetMemoriaBarcode(); } } //update visualizzazione lblListaAttiva.Text = traduci("ListaPrel"); hlListaAttiva.Text = traduci("noListActive"); lblDest.Text = ""; lblProd.Text = ""; lblPezzi.Text = ""; try { // leggo una riga... DS_magazzino.ElencoListePrelievoRow riga = MagClass.magazzino.taElencoListePrelievo.getByCodLista(MagClass.magazzino.codListaAttivaUtente)[0]; lblDest.Text = riga.Destinatario; lblProd.Text = riga.Particolare; lblPezzi.Text = string.Format("{0:###}/{1:###} pz", riga.Prelevato, riga.QtaTot); hlListaAttiva.Text = MagClass.magazzino.codListaAttivaUtente; } catch { } } private static void resetMemoriaBarcode() { // svuoto barcode selezionato ed eventuale UDC //memLayer.ML.emptySessionVal("UDC_sel"); GMW_data.TermClass.Ter.resetScanBarcode(true, false, false); memLayer.ML.emptySessionVal("Barcode_sel"); memLayer.ML.emptySessionVal("scannedValue"); } } }