private void CaricaTrasferimento(string barcode, decimal colli)
        {
            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                if (!_ds.USR_TRASF_RICH.Any(x => x.BARCODE == barcode))
                {
                    bTrasferimenti.FillUSR_TRASF_RICH(_ds, barcode);
                }

                TrasferimentiDS.USR_TRASF_RICHRow trasferimento = _ds.USR_TRASF_RICH.Where(x => x.BARCODE == barcode).FirstOrDefault();
                if (trasferimento == null)
                {
                    lblMessaggi.Text = "BARCODE NON TROVATO";
                    return;
                }
                AnagraficaDS.MAGAZZRow articolo = _anagrafica.GetMAGAZZ(trasferimento.IDMAGAZZ);

                DataTable dtGriglia = _dsGriglia.Tables[_tabellaGriglia];

                DataRow riga = dtGriglia.NewRow();

                riga[(int)colonneGriglia.BARCODE]    = trasferimento.IsBARCODENull() ? string.Empty : trasferimento.BARCODE;
                riga[(int)colonneGriglia.MODELLO]    = articolo == null ? string.Empty : articolo.MODELLO;
                riga[(int)colonneGriglia.NUMMOVFASE] = trasferimento.IsNUMRICHTRASFTNull() ? string.Empty : trasferimento.NUMRICHTRASFT;
                riga[(int)colonneGriglia.REPARTO]    = "MAGAZZINO";
                riga[(int)colonneGriglia.QUANTITA]   = trasferimento.QTA;
                riga[(int)colonneGriglia.COLLI]      = colli;

                dtGriglia.Rows.Add(riga);
            }
        }
        private void TrasferimentiFrm_Load(object sender, EventArgs e)
        {
            try
            {
                Cursor.Current   = Cursors.WaitCursor;
                lblMessaggi.Text = string.Empty;
                _ds = new TrasferimentiDS();
                using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
                {
                    bTrasferimenti.FillUSR_PRD_TIPOMOVFASI(_ds);
                }

                CreaDSGriglia();
                CreaGriglia();
                ImpostaInRicezione(false);
                docToPrint.PrintPage += DocToPrint_PrintPage;
                txtBarcode.Focus();
            }
            catch (Exception ex)
            {
                MostraEccezione(ex, "Errore in caricamento applicazione");
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }
        }
        private void CreaTrasferimento(string barcode)
        {
            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                try
                {
                    TrasferimentiDS.AP_TTRASFERIMENTIRow trasferimento = _ds.AP_TTRASFERIMENTI.NewAP_TTRASFERIMENTIRow();
                    trasferimento.IDTRASFERIMENTO  = bTrasferimenti.GetID();
                    trasferimento.BARCODE_PARTENZA = barcode;
                    trasferimento.DATA_PARTENZA    = DateTime.Now;
                    trasferimento.ATTIVO           = 1;
                    _ds.AP_TTRASFERIMENTI.AddAP_TTRASFERIMENTIRow(trasferimento);

                    foreach (DataGridViewRow riga in dgvTrasferimenti.Rows)
                    {
                        TrasferimentiDS.AP_DTRASFERIMENTIRow destinazione = _ds.AP_DTRASFERIMENTI.NewAP_DTRASFERIMENTIRow();
                        destinazione.IDDTRASFERIMENTO = bTrasferimenti.GetID();
                        destinazione.IDTRASFERIMENTO  = trasferimento.IDTRASFERIMENTO;
                        destinazione.BARCODE_ODL      = riga.Cells[(int)colonneGriglia.BARCODE].Value.ToString();
                        destinazione.NUMMOVFASE       = riga.Cells[(int)colonneGriglia.NUMMOVFASE].Value.ToString();
                        destinazione.REPARTO          = string.IsNullOrEmpty((string)riga.Cells[(int)colonneGriglia.REPARTO].Value) ? "N/D" : riga.Cells[(int)colonneGriglia.REPARTO].Value.ToString();
                        destinazione.MODELLO          = riga.Cells[(int)colonneGriglia.MODELLO].Value.ToString();
                        destinazione.QTA   = (decimal)riga.Cells[(int)colonneGriglia.QUANTITA].Value;
                        destinazione.COLLI = (decimal)riga.Cells[(int)colonneGriglia.COLLI].Value;
                        _ds.AP_DTRASFERIMENTI.AddAP_DTRASFERIMENTIRow(destinazione);
                    }
                    bTrasferimenti.SalvaTrasferimenti(_ds);
                }
                catch { bTrasferimenti.Rollback(); throw; }
            }
        }
        public void DoIt()
        {
            using (TrasferimentiDS dsTrasferimenti = new TrasferimentiDS())
                using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
                {
                    bTrasferimenti.FillTRASFERIMENTIAttivi(dsTrasferimenti);
                    LogHelper.LogInfo("Trasferimenti acquisiti");
                    bTrasferimenti.FillUSR_PRD_FLUSSO_MOVFASIDaTrasferimentiAttivi(dsTrasferimenti);
                    LogHelper.LogInfo("Flussi acquisiti");

                    foreach (TrasferimentiDS.AP_TTRASFERIMENTIRow trasferimento in dsTrasferimenti.AP_TTRASFERIMENTI)
                    {
                        bool attivo = false;
                        List <TrasferimentiDS.AP_DTRASFERIMENTIRow> dettagli = dsTrasferimenti.AP_DTRASFERIMENTI.Where(x => x.IDTRASFERIMENTO == trasferimento.IDTRASFERIMENTO).ToList();

                        foreach (TrasferimentiDS.AP_DTRASFERIMENTIRow dettaglio in dettagli)
                        {
                            if (dettaglio.REPARTO == "MAGAZZINO")
                            {
                                continue;
                            }
                            if (!dsTrasferimenti.USR_PRD_FLUSSO_MOVFASI.Any(x => x.BARCODE_ODL == dettaglio.BARCODE_ODL))
                            {
                                attivo = true;
                            }
                        }
                        if (!attivo)
                        {
                            trasferimento.ATTIVO = 0;
                        }
                    }

                    bTrasferimenti.SalvaTrasferimenti(dsTrasferimenti);
                }
        }
 private void ChiudiTrasferimento(string barcode)
 {
     _trasferimentoInCorso.BARCODE_ARRIVO = barcode;
     _trasferimentoInCorso.DATA_ARRIVO    = DateTime.Now;
     using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
         bTrasferimenti.SalvaTrasferimenti(_ds);
 }
示例#6
0
        private void CreaTrasferimento(string barcode)
        {
            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                try
                {
                    TrasferimentiDS.AP_TTRASFERIMENTIRow trasferimento = _ds.AP_TTRASFERIMENTI.NewAP_TTRASFERIMENTIRow();
                    trasferimento.IDTRASFERIMENTO  = bTrasferimenti.GetID();
                    trasferimento.BARCODE_PARTENZA = barcode;
                    trasferimento.DATA_PARTENZA    = DateTime.Now;
                    trasferimento.ATTIVO           = 1;
                    _ds.AP_TTRASFERIMENTI.AddAP_TTRASFERIMENTIRow(trasferimento);

                    foreach (TrasferimentiDS.USR_PRD_MOVFASIRow elemento in _ds.USR_PRD_MOVFASI)
                    {
                        TrasferimentiDS.AP_DTRASFERIMENTIRow destinazione = _ds.AP_DTRASFERIMENTI.NewAP_DTRASFERIMENTIRow();
                        destinazione.IDDTRASFERIMENTO = bTrasferimenti.GetID();
                        destinazione.IDTRASFERIMENTO  = trasferimento.IDTRASFERIMENTO;
                        destinazione.BARCODE_ODL      = elemento.IsBARCODENull() ? string.Empty : elemento.BARCODE;
                        destinazione.NUMMOVFASE       = elemento.IsNUMMOVFASENull() ? string.Empty : elemento.NUMMOVFASE;

                        destinazione.REPARTO = elemento.IsCODICECLIFONull() ? "N/D" : elemento.CODICECLIFO; // tbd reparto

                        destinazione.MODELLO = elemento.IDMAGAZZ;                                           // tbd modello
                        destinazione.QTA     = elemento.QTALAV;
                        destinazione.COLLI   = 1;
                        _ds.AP_DTRASFERIMENTI.AddAP_DTRASFERIMENTIRow(destinazione);
                    }
                    bTrasferimenti.SalvaTrasferimenti(_ds);
                }
                catch { bTrasferimenti.Rollback(); throw; }
            }
        }
示例#7
0
        private BarcodeModel CaricaODL(string barcode, decimal colli)
        {
            if (string.IsNullOrEmpty(barcode))
            {
                return(null);
            }

            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                if (!_ds.USR_PRD_MOVFASI.Any(x => x.BARCODE == barcode))
                {
                    bTrasferimenti.FillUSR_PRD_MOVFASI(_ds, barcode);
                }

                TrasferimentiDS.USR_PRD_MOVFASIRow odl = _ds.USR_PRD_MOVFASI.Where(x => x.BARCODE == barcode).FirstOrDefault();
                if (odl == null)
                {
                    return(null);
                }
                //   AnagraficaDS.MAGAZZRow articolo = _anagrafica.GetMAGAZZ(odl.IDMAGAZZ);

                BarcodeModel barcodeM = new BarcodeModel()
                {
                    Barcode    = odl.IsBARCODENull() ? string.Empty : odl.BARCODE,
                    Nummovfase = odl.IsNUMMOVFASENull() ? string.Empty : odl.NUMMOVFASE,
                    Reparto    = odl.IsCODICECLIFONull() ? string.Empty : odl.CODICECLIFODEST,
                    Quantità   = odl.QTA.ToString()
                };

                return(barcodeM);
            }
        }
 private bool VerificaEsistenzaTrasferimento(string barcode)
 {
     using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
     {
         bTrasferimenti.FillAP_TTRASFERIMENTIDaBarcodePartenza(_ds, barcode);
         return(!_ds.AP_TTRASFERIMENTI.Any(x => x.BARCODE_PARTENZA == barcode && x.IsBARCODE_ARRIVONull()));
     }
 }
        private TrasferimentiDS.USR_PRD_MOVFASIRow LeggiODL(string barcodeODL)
        {
            TrasferimentiDS _ds = new TrasferimentiDS();

            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                if (!_ds.USR_PRD_MOVFASI.Any(x => x.BARCODE == barcodeODL))
                {
                    bTrasferimenti.FillUSR_PRD_MOVFASI(_ds, barcodeODL);
                }

                return(_ds.USR_PRD_MOVFASI.Where(x => x.BARCODE == barcodeODL).FirstOrDefault());
            }
        }
示例#10
0
        public List <RWListItem> CaricaListaOperatori()
        {
            List <RWListItem> model = new List <RWListItem>();

            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                TrasferimentiDS ds = new TrasferimentiDS();
                bTrasferimenti.FillUSR_PRD_RESOURCESF(ds);
                foreach (TrasferimentiDS.USR_PRD_RESOURCESFRow risorsa in ds.USR_PRD_RESOURCESF)
                {
                    model.Add(new RWListItem(risorsa.CODRESOURCEF.Trim(), risorsa.BARCODE));
                }
            }
            return(model);
        }
示例#11
0
        public List <TrasferimentoModel> EstraiTrasferimenti(string DataInizio, string DataFine, string OperatoreInvio, string OperatoreRicezione, string ODL)
        {
            DateTime dtInizio = DateTime.Parse(DataInizio);
            DateTime dtFine   = DateTime.Parse(DataFine);

            List <TrasferimentoModel> model = new List <TrasferimentoModel>();

            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                TrasferimentiDS ds = new TrasferimentiDS();
                bTrasferimenti.FillAP_GRIGLIA(ds, dtInizio, dtFine, OperatoreInvio, OperatoreRicezione);

                List <TrasferimentiDS.AP_GRIGLIARow> elementi = ds.AP_GRIGLIA.OrderBy(x => x.DATA_PARTENZA).ToList();
                if (!string.IsNullOrEmpty(ODL))
                {
                    elementi = elementi.Where(X => X.NUMMOVFASE.Contains(ODL)).ToList();
                }

                foreach (TrasferimentiDS.AP_GRIGLIARow trasferimento in elementi)
                {
                    string dtArrivo = string.Empty;
                    if (!trasferimento.IsDATA_ARRIVONull())
                    {
                        dtArrivo = string.Format("{0} {1}", trasferimento.DATA_ARRIVO.ToShortDateString(), trasferimento.DATA_ARRIVO.ToShortTimeString());
                    }

                    string dtPartenza = string.Format("{0} {1}", trasferimento.DATA_PARTENZA.ToShortDateString(), trasferimento.DATA_PARTENZA.ToShortTimeString());

                    TrasferimentoModel m = new TrasferimentoModel()
                    {
                        DataArrivo        = dtArrivo,
                        DataPartenza      = dtPartenza,
                        Modello           = trasferimento.MODELLO,
                        NumMovFase        = trasferimento.NUMMOVFASE,
                        OperatoreArrivo   = trasferimento.IsOPERATORE_ARRIVONull() ? string.Empty : trasferimento.OPERATORE_ARRIVO,
                        OperatorePartenza = trasferimento.IsOPERATORE_PARTENZANull() ? string.Empty : trasferimento.OPERATORE_PARTENZA,
                        Reparto           = trasferimento.REPARTO
                    };

                    model.Add(m);
                }
            }
            return(model);
        }
        private bool CaricaODL(string barcode, decimal colli)
        {
            if (string.IsNullOrEmpty(barcode))
            {
                return(false);
            }

            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                if (!_ds.USR_PRD_MOVFASI.Any(x => x.BARCODE == barcode))
                {
                    bTrasferimenti.FillUSR_PRD_MOVFASI(_ds, barcode);
                }

                TrasferimentiDS.USR_PRD_MOVFASIRow odl = _ds.USR_PRD_MOVFASI.Where(x => x.BARCODE == barcode).FirstOrDefault();
                if (odl == null)
                {
                    lblMessaggi.Text = "BARCODE NON TROVATO";
                    return(false);
                }
                AnagraficaDS.MAGAZZRow articolo = _anagrafica.GetMAGAZZ(odl.IDMAGAZZ);

                DataTable dtGriglia = _dsGriglia.Tables[_tabellaGriglia];

                DataRow riga = dtGriglia.NewRow();

                riga[(int)colonneGriglia.BARCODE]    = odl.IsBARCODENull() ? string.Empty : odl.BARCODE;
                riga[(int)colonneGriglia.MODELLO]    = articolo == null ? string.Empty : articolo.MODELLO;
                riga[(int)colonneGriglia.NUMMOVFASE] = odl.IsNUMMOVFASENull() ? string.Empty : odl.NUMMOVFASE;
                riga[(int)colonneGriglia.REPARTO]    = odl.IsCODICECLIFODESTNull() ? string.Empty : odl.CODICECLIFODEST;
                riga[(int)colonneGriglia.QUANTITA]   = odl.QTA;
                riga[(int)colonneGriglia.COLLI]      = colli;

                dtGriglia.Rows.Add(riga);
            }
            return(true);
        }
        private void CaricaTrasferimentoDaBarcodePartenza(string barcode)
        {
            using (TrasferimentiBusiness bTrasferimenti = new TrasferimentiBusiness())
            {
                bTrasferimenti.FillAP_TTRASFERIMENTIDaBarcodePartenza(_ds, barcode);
                List <TrasferimentiDS.AP_TTRASFERIMENTIRow> trasferimenti = _ds.AP_TTRASFERIMENTI.Where(x => x.BARCODE_PARTENZA == barcode && x.IsBARCODE_ARRIVONull()).ToList();
                if (trasferimenti.Count == 0)
                {
                    lblMessaggi.Text = "NESSUN TRASFERIMENTO ATTIVO ASSOCIATO A QUESTO OPERATORE";
                    ImpostaInRicezione(false);
                    return;
                }
                if (trasferimenti.Count > 1)
                {
                    lblMessaggi.Text = "CI SONO DUE O PIU' TRASFERIMENTI ASSICIATI A QUESTO OPERATORE";
                    ImpostaInRicezione(false);
                    return;
                }
                _trasferimentoInCorso = trasferimenti[0];
                bTrasferimenti.FillAP_DTRASFERIMENTIDaIDTRASFERIMENTO(_ds, _trasferimentoInCorso.IDTRASFERIMENTO);

                List <string> barcodeOdl = _ds.AP_DTRASFERIMENTI.Where(x => x.IDTRASFERIMENTO == _trasferimentoInCorso.IDTRASFERIMENTO).Select(x => x.BARCODE_ODL).ToList();

                foreach (string odl in barcodeOdl)
                {
                    TrasferimentiDS.AP_DTRASFERIMENTIRow trasferimento = _ds.AP_DTRASFERIMENTI.Where(x => x.BARCODE_ODL == odl).FirstOrDefault();
                    decimal colli = trasferimento.IsCOLLINull() ? 1 : trasferimento.COLLI;
                    if (!CaricaODL(odl, colli))
                    {
                        CaricaTrasferimento(odl, colli);
                    }
                }

                ImpostaInRicezione(true);
            }
        }