コード例 #1
0
        private static string ElencoFasi(CaricoLavoroDS ds, CaricoLavoroDS.CARICOLAVORORow elemento, CaricoLavoroBusiness bCarico)
        {
            string multifase = string.Empty;

            CaricoLavoroDS.TABFASRow fase = ds.TABFAS.Where(x => x.IDTABFAS == elemento.IDTABFAS).FirstOrDefault();
            if (fase != null)
            {
                multifase = fase.CODICEFASE;

                List <CaricoLavoroDS.USR_PRD_LEG_MULTILAVRow> lavorazioniMultiple = bCarico.GetUSR_PRD_LEG_MULTILAV(ds, elemento.IDPRDMOVFASE, elemento.AZIENDA);
                if (lavorazioniMultiple.Count > 0)
                {
                    foreach (CaricoLavoroDS.USR_PRD_LEG_MULTILAVRow lavorazione in lavorazioniMultiple)
                    {
                        CaricoLavoroDS.USR_PRD_FASIRow prdFase = bCarico.GetUSR_PRD_FASI(ds, lavorazione.IDPRDFASE_NEXT, lavorazione.AZIENDA);
                        if (prdFase != null)
                        {
                            CaricoLavoroDS.TABFASRow fase2 = ds.TABFAS.Where(x => x.IDTABFAS == prdFase.IDTABFAS).FirstOrDefault();
                            if (fase2 != null)
                            {
                                multifase += ";" + fase2.CODICEFASE;
                            }
                        }
                    }
                }
            }
            return(multifase);
        }
コード例 #2
0
        public void FillTABTIPDOC(CaricoLavoroDS ds)
        {
            string select = @"  SELECT * FROM TABTIPDOC ";

            using (DbDataAdapter da = BuildDataAdapter(select))
            {
                da.Fill(ds.TABTIPDOC);
            }
        }
コード例 #3
0
        public void FillTABFAS(CaricoLavoroDS ds)
        {
            string select = @"  SELECT * FROM gruppo.TABFAS";

            using (DbDataAdapter da = BuildDataAdapter(select))
            {
                da.Fill(ds.TABFAS);
            }
        }
コード例 #4
0
        public void FillUSR_PRD_CAUMATE(CaricoLavoroDS ds)
        {
            string select = @"  SELECT * FROM gruppo.USR_PRD_CAUMATE ";

            using (DbDataAdapter da = BuildDataAdapter(select))
            {
                da.Fill(ds.USR_PRD_CAUMATE);
            }
        }
コード例 #5
0
 public CaricoLavoroDS.USR_VENDITETRow GetUSR_VENDITET(CaricoLavoroDS ds, string IDVENDITET, string azienda)
 {
     CaricoLavoroDS.USR_VENDITETRow riga = ds.USR_VENDITET.Where(x => x.AZIENDA == azienda && x.IDVENDITET == IDVENDITET).FirstOrDefault();
     if (riga == null)
     {
         CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);
         a.GetUSR_VENDITET(ds, IDVENDITET, azienda);
         riga = ds.USR_VENDITET.Where(x => x.AZIENDA == azienda && x.IDVENDITET == IDVENDITET).FirstOrDefault();
     }
     return(riga);
 }
コード例 #6
0
 public CaricoLavoroDS.USR_PRD_FASIRow GetUSR_PRD_FASI(CaricoLavoroDS ds, string IDPRDFASE, string azienda)
 {
     CaricoLavoroDS.USR_PRD_FASIRow riga = ds.USR_PRD_FASI.Where(x => x.AZIENDA == azienda && x.IDPRDFASE == IDPRDFASE).FirstOrDefault();
     if (riga == null)
     {
         CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);
         a.GetUSR_PRD_FASI(ds, IDPRDFASE, azienda);
         riga = ds.USR_PRD_FASI.Where(x => x.AZIENDA == azienda && x.IDPRDFASE == IDPRDFASE).FirstOrDefault();
     }
     return(riga);
 }
コード例 #7
0
        public List <CaricoLavoroDS.USR_PRD_LEG_MULTILAVRow> GetUSR_PRD_LEG_MULTILAV(CaricoLavoroDS ds, string IDPRDMOVFASE, string azienda)
        {
            List <CaricoLavoroDS.USR_PRD_LEG_MULTILAVRow> riga = ds.USR_PRD_LEG_MULTILAV.Where(x => x.AZIENDA == azienda && x.IDPRDMOVFASE_START == IDPRDMOVFASE).ToList();

            if (riga.Count == 0)
            {
                CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);
                a.GetUSR_PRD_LEG_MULTILAV(ds, IDPRDMOVFASE, azienda);
                riga = ds.USR_PRD_LEG_MULTILAV.Where(x => x.AZIENDA == azienda && x.IDPRDMOVFASE_START == IDPRDMOVFASE).ToList();
            }
            return(riga);
        }
コード例 #8
0
        public void GetUSR_PRD_MOVMATE(CaricoLavoroDS ds, string IDPRDMOVFASE, string azienda)
        {
            string   select = @"  SELECT * FROM USR_PRD_MOVMATE WHERE AZIENDA = $P<AZIENDA> AND IDPRDMOVFASE = $P<IDPRDMOVFASE>";
            ParamSet ps     = new ParamSet();

            ps.AddParam("IDPRDMOVFASE", DbType.String, IDPRDMOVFASE);
            ps.AddParam("AZIENDA", DbType.String, azienda);
            using (DbDataAdapter da = BuildDataAdapter(select, ps))
            {
                da.Fill(ds.USR_PRD_MOVMATE);
            }
        }
コード例 #9
0
        public List <CaricoLavoroDS.USR_VENDITEDRow> GetUSR_VENDITED(CaricoLavoroDS ds, string IDVENDITED, string azienda)
        {
            List <CaricoLavoroDS.USR_VENDITEDRow> riga = ds.USR_VENDITED.Where(x => x.AZIENDA == azienda && x.IDVENDITED == IDVENDITED).ToList();

            if (riga.Count == 0)
            {
                CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);
                a.GetUSR_VENDITED(ds, IDVENDITED, azienda);
                riga = ds.USR_VENDITED.Where(x => x.AZIENDA == azienda && x.IDVENDITED == IDVENDITED).ToList();
            }
            return(riga);
        }
コード例 #10
0
        public void GetUSR_VENDITET(CaricoLavoroDS ds, string IDVENDITET, string azienda)
        {
            string   select = @"  SELECT * FROM USR_VENDITET 
        WHERE AZIENDA = $P<AZIENDA> AND IDVENDITET = $P<IDVENDITET>";
            ParamSet ps     = new ParamSet();

            ps.AddParam("IDVENDITET", DbType.String, IDVENDITET);
            ps.AddParam("AZIENDA", DbType.String, azienda);
            using (DbDataAdapter da = BuildDataAdapter(select, ps))
            {
                da.Fill(ds.USR_VENDITET);
            }
        }
コード例 #11
0
        public void GetUSR_PRD_FLUSSO_MOVMATE(CaricoLavoroDS ds, string IDPRDMOVMATE, string azienda)
        {
            string   select = @"  SELECT XMM.*,XCM.SEGNO FROM USR_PRD_FLUSSO_MOVMATE XMM
        INNER JOIN GRUPPO.USR_PRD_CAUMATE XCM ON XMM.IDPRDCAUMATE = XCM.IDPRDCAUMATE
        WHERE AZIENDA = $P<AZIENDA> AND IDPRDMOVMATE = $P<IDPRDMOVMATE>";
            ParamSet ps     = new ParamSet();

            ps.AddParam("IDPRDMOVMATE", DbType.String, IDPRDMOVMATE);
            ps.AddParam("AZIENDA", DbType.String, azienda);
            using (DbDataAdapter da = BuildDataAdapter(select, ps))
            {
                da.Fill(ds.USR_PRD_FLUSSO_MOVMATE);
            }
        }
コード例 #12
0
        private static string DocumentiInvio(CaricoLavoroDS ds, CaricoLavoroDS.CARICOLAVORORow elemento, CaricoLavoroBusiness bCarico)
        {
            StringBuilder sb = new StringBuilder();

            CaricoLavoroDS.USR_PRD_MOVMATERow     movMate = bCarico.GetUSR_PRD_MOVMATE(ds, elemento.IDPRDMOVFASE, elemento.AZIENDA);
            List <CaricoLavoroDS.USR_VENDITETRow> vts     = new List <CaricoLavoroDS.USR_VENDITETRow>();

            if (movMate != null)
            {
                List <CaricoLavoroDS.USR_PRD_FLUSSO_MOVMATERow> FLUSSOmOVmATE = bCarico.FillUSR_PRD_FLUSSO_MOVMATE(ds, movMate.IDPRDMOVMATE, elemento.AZIENDA);

                if (FLUSSOmOVmATE.Where(x => x.SEGNO == 3).Count() > 0)
                {
                    foreach (CaricoLavoroDS.USR_PRD_FLUSSO_MOVMATERow fmm in FLUSSOmOVmATE.Where(x => x.SEGNO == 3))
                    {
                        if (!fmm.IsIDVENDITEDNull())
                        {
                            List <CaricoLavoroDS.USR_VENDITEDRow> vds = bCarico.GetUSR_VENDITED(ds, fmm.IDVENDITED, fmm.AZIENDA);
                            if (vds.Count > 0)
                            {
                                foreach (CaricoLavoroDS.USR_VENDITEDRow vd in vds)
                                {
                                    CaricoLavoroDS.USR_VENDITETRow vt = bCarico.GetUSR_VENDITET(ds, vd.IDVENDITET, vd.AZIENDA);
                                    if (vt != null)
                                    {
                                        vts.Add(vt);
                                    }
                                }
                            }
                        }
                    }
                }
            }
            foreach (CaricoLavoroDS.USR_VENDITETRow vt in vts.Distinct())
            {
                string tipoDocumento = string.Empty;
                if (!vt.IsIDTABTIPDOCNull())
                {
                    CaricoLavoroDS.TABTIPDOCRow tdoc = ds.TABTIPDOC.Where(x => x.AZIENDA == vt.AZIENDA && x.IDTABTIPDOC == vt.IDTABTIPDOC).FirstOrDefault();
                    if (tdoc != null)
                    {
                        tipoDocumento = tdoc.CODICETIPDOC;
                    }
                }
                string documento = string.Format("{0}/{1} del {2};", tipoDocumento, vt.NUMDOC, vt.DATDOC);
                sb.Append(documento);
            }
            return(sb.ToString());
        }
コード例 #13
0
        private static DateTime?DataPrimoInvio(CaricoLavoroDS ds, CaricoLavoroDS.CARICOLAVORORow elemento, CaricoLavoroBusiness bCarico)
        {
            CaricoLavoroDS.USR_PRD_MOVMATERow movMate = bCarico.GetUSR_PRD_MOVMATE(ds, elemento.IDPRDMOVFASE, elemento.AZIENDA);
            if (movMate != null)
            {
                List <CaricoLavoroDS.USR_PRD_FLUSSO_MOVMATERow> FLUSSOmOVmATE = bCarico.FillUSR_PRD_FLUSSO_MOVMATE(ds, movMate.IDPRDMOVMATE, elemento.AZIENDA);

                if (FLUSSOmOVmATE.Where(x => x.SEGNO == 3).Count() > 0)
                {
                    DateTime t = FLUSSOmOVmATE.Where(x => x.SEGNO == 3).Min(x => x.DATAFLUSSOMOVMATE);
                    if (t != null)
                    {
                        return(t);
                    }
                }
            }
            return(null);
        }
コード例 #14
0
        public void FillUSR_PRD_CAUMATE(CaricoLavoroDS ds)
        {
            CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);

            a.FillUSR_PRD_CAUMATE(ds);
        }
コード例 #15
0
        public void GetCaricoLavoro(CaricoLavoroDS ds)
        {
            string select = @"  select
    'MP' AS AZIENDA,
    TLAN.DESTIPOLANCIO,
    TRIM(TPO.CODICETIPOO) AS CODICETIPOO,
    TRIM(MF.CODICECLIFO) AS CODICECLIFO, 
    trim(CF.RAGIONESOC) as ragiosociale,
    MF.NUMMOVFASE,
    LAN.NOMECOMMESSA,
    trim(CLI.RAGIONESOC) AS SEGNALATORE,
    TMF.CODTIPOMOVFASE, TMF.DESTIPOMOVFASE,
    MODLAN.MODELLO AS MODELLO_LANCIO,
    MODLAN.DESMAGAZZ AS DESMODELLO_LANCIO,
    MOD.MODELLO AS MODELLO_WIP,
    MOD.DESMAGAZZ AS DESMODELLO_WIP, 
 


FAS.DATAFINE AS DATAFINE_FASECOMMESSA,
 

UM.CODICEUNIMI, MF.QTA, MF.QTADATER,
MF.PRIORITA,
fas.NOTEPARTFASE as NOTEPARTICOLARIFASE,
MF.NOTEPARTMOVFASE AS NOTAPARTICOLAREODL,
MF.IDPRDMOVFASE    ,MF.IDTABFAS
    
 

FROM 
(select * from DITTA1.USR_PRD_MOVFASI where QTADATER>0) MF, 
gruppo.CLIFO CF, 
DITTA1.USR_PRD_FASI FAS, 
GRUPPO.TABFAS TABFAS, 
GRUPPO.MAGAZZ MOD, 
GRUPPO.TABUNIMI UM, 
DITTA1.USR_PRD_LANCIOD LAN, 
gruppo.CLIFO CLI, 
GRUPPO.MAGAZZ MODLAN, 
GRUPPO.USR_PRD_TIPOLANCIO TLAN, 
GRUPPO.TABTIPOO TPO,
GRUPPO.USR_PRD_TIPOMOVFASI TMF

WHERE 1 = 1
AND MF.IDTIPOMOVFASE = TMF.IDTIPOMOVFASE
--AND MF.QTADATER > 0
AND MF.CODICECLIFO = CF.CODICE
AND MF.IDPRDFASE = FAS.IDPRDFASE
AND MF.IDTABFAS = TABFAS.IDTABFAS
AND MF.IDMAGAZZ = MOD.IDMAGAZZ
AND MF.IDTABUNIMI = UM.IDTABUNIMI
AND FAS.IDLANCIOD = LAN.IDLANCIOD(+)
AND LAN.SEGNALATORE = CLI.CODICE(+)
AND LAN.IDMAGAZZ = MODLAN.IDMAGAZZ(+)
AND LAN.IDTIPOLANCIO = TLAN.IDTIPOLANCIO(+)
AND LAN.IDTABTIPOO = TPO.IDTABTIPOO(+)

UNION ALL

select
'TF' AS AZIENDA,
TLAN.DESTIPOLANCIO,
    TRIM(TPO.CODICETIPOO) AS CODICETIPOO,
    TRIM(MF.CODICECLIFO) AS CODICECLIFO, 
trim(CF.RAGIONESOC),
MF.NUMMOVFASE,
LAN.NOMECOMMESSA,
trim(CLI.RAGIONESOC) AS SEGNALATORE,
TMF.CODTIPOMOVFASE, TMF.DESTIPOMOVFASE,
MODLAN.MODELLO AS MODELLO_LANCIO,
MODLAN.DESMAGAZZ AS DESMODELLO_LANCIO,
MOD.MODELLO AS MODELLO_WIP,
MOD.DESMAGAZZ AS DESMODELLO_WIP,
FAS.DATAFINE AS DATAFINE_FASECOMMESSA,
 

UM.CODICEUNIMI, MF.QTA, MF.QTADATER
,MF.PRIORITA,
fas.NOTEPARTFASE as NOTEPARTICOLARIFASE,
MF.NOTEPARTMOVFASE AS NOTAPARTICOLAREODL,
MF.IDPRDMOVFASE , MF.IDTABFAS   

FROM 
(select * from DITTA2.USR_PRD_MOVFASI where QTADATER>0) MF, 
gruppo.CLIFO CF, 
DITTA2.USR_PRD_FASI FAS, 
GRUPPO.TABFAS TABFAS, 
GRUPPO.MAGAZZ MOD, 
GRUPPO.TABUNIMI UM, 
DITTA2.USR_PRD_LANCIOD LAN, 
gruppo.CLIFO CLI, 
GRUPPO.MAGAZZ MODLAN, 
GRUPPO.USR_PRD_TIPOLANCIO TLAN, 
GRUPPO.TABTIPOO TPO,
GRUPPO.USR_PRD_TIPOMOVFASI TMF


WHERE 1 = 1


AND MF.IDTIPOMOVFASE = TMF.IDTIPOMOVFASE
--AND MF.QTADATER > 0
AND MF.CODICECLIFO = CF.CODICE
AND MF.IDPRDFASE = FAS.IDPRDFASE
AND MF.IDTABFAS = TABFAS.IDTABFAS
AND MF.IDMAGAZZ = MOD.IDMAGAZZ
AND MF.IDTABUNIMI = UM.IDTABUNIMI
AND FAS.IDLANCIOD = LAN.IDLANCIOD(+)
AND LAN.SEGNALATORE = CLI.CODICE(+)
AND LAN.IDMAGAZZ = MODLAN.IDMAGAZZ(+)
AND LAN.IDTIPOLANCIO = TLAN.IDTIPOLANCIO(+)
AND LAN.IDTABTIPOO = TPO.IDTABTIPOO(+)
";



            using (DbDataAdapter da = BuildDataAdapter(select))
            {
                da.Fill(ds.CARICOLAVORO);
            }
        }
コード例 #16
0
        public static void Esegui()
        {
            CaricoLavoroDS ds = new CaricoLavoroDS();

            using (CaricoLavoroBusiness bCarico = new CaricoLavoroBusiness())
            {
                bCarico.GetCaricoLavoro(ds);
                bCarico.FillTABFAS(ds);
                bCarico.FillTABTIPDOC(ds);
                //bCarico.FillUSR_PRD_CAUMATE(ds);
                int i = 1;
                foreach (CaricoLavoroDS.CARICOLAVORORow elemento in ds.CARICOLAVORO)
                {
                    Console.WriteLine(string.Format("elemento {0} di {1} - {2}", i, ds.CARICOLAVORO.Count, elemento.NUMMOVFASE));

                    DateTime?primoInvio = DataPrimoInvio(ds, elemento, bCarico);
                    if (primoInvio.HasValue)
                    {
                        elemento.DATAPRIMOINVIO_ODL = primoInvio.Value;
                    }

                    //CaricoLavoroDS.USR_PRD_MOVMATERow movMate = bCarico.GetUSR_PRD_MOVMATE(ds, elemento.IDPRDMOVFASE, elemento.AZIENDA);
                    //if (movMate != null)
                    //{
                    //    List<CaricoLavoroDS.USR_PRD_FLUSSO_MOVMATERow> FLUSSOmOVmATE = bCarico.FillUSR_PRD_FLUSSO_MOVMATE(ds, movMate.IDPRDMOVMATE, elemento.AZIENDA);

                    //    if (FLUSSOmOVmATE.Where(x => x.SEGNO == 3).Count() > 0)
                    //    {
                    //        DateTime t = FLUSSOmOVmATE.Where(x => x.SEGNO == 3).Min(x => x.DATAFLUSSOMOVMATE);
                    //        if (t != null)
                    //            elemento.DATAPRIMOINVIO_ODL = t;
                    //    }

                    //}
                    //string multifase = string.Empty;
                    //CaricoLavoroDS.TABFASRow fase = ds.TABFAS.Where(x => x.IDTABFAS == elemento.IDTABFAS).FirstOrDefault();
                    //if (fase != null)
                    //{
                    //    multifase = fase.CODICEFASE;

                    //    List<CaricoLavoroDS.USR_PRD_LEG_MULTILAVRow> lavorazioniMultiple = bCarico.GetUSR_PRD_LEG_MULTILAV(ds, elemento.IDPRDMOVFASE, elemento.AZIENDA);
                    //    if (lavorazioniMultiple.Count > 0)
                    //    {
                    //        foreach (CaricoLavoroDS.USR_PRD_LEG_MULTILAVRow lavorazione in lavorazioniMultiple)
                    //        {
                    //            CaricoLavoroDS.USR_PRD_FASIRow prdFase = bCarico.GetUSR_PRD_FASI(ds, lavorazione.IDPRDFASE_NEXT, lavorazione.AZIENDA);
                    //            if (prdFase != null)
                    //            {
                    //                CaricoLavoroDS.TABFASRow fase2 = ds.TABFAS.Where(x => x.IDTABFAS == prdFase.IDTABFAS).FirstOrDefault();
                    //                if (fase2 != null)
                    //                    multifase += ";" + fase2.CODICEFASE;
                    //            }
                    //        }

                    //    }

                    //}
                    elemento.ELENCOFASI      = ElencoFasi(ds, elemento, bCarico);
                    elemento.DOCUMENTI_INVIO = DocumentiInvio(ds, elemento, bCarico);

                    i++;
                }
            }
        }
コード例 #17
0
        public void FillTABTIPDOC(CaricoLavoroDS ds)
        {
            CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);

            a.FillTABTIPDOC(ds);
        }
コード例 #18
0
        public void GetCaricoLavoro(CaricoLavoroDS ds)
        {
            CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);

            a.GetCaricoLavoro(ds);
        }
コード例 #19
0
        public List <CaricoLavoroDS.USR_PRD_FLUSSO_MOVMATERow> FillUSR_PRD_FLUSSO_MOVMATE(CaricoLavoroDS ds, string IDPRDMOVMATE, string azienda)
        {
            List <CaricoLavoroDS.USR_PRD_FLUSSO_MOVMATERow> riga = ds.USR_PRD_FLUSSO_MOVMATE.Where(x => x.AZIENDA == azienda && x.IDPRDMOVMATE == IDPRDMOVMATE).ToList();

            if (riga.Count == 0)
            {
                CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);
                a.GetUSR_PRD_FLUSSO_MOVMATE(ds, IDPRDMOVMATE, azienda);
                riga = ds.USR_PRD_FLUSSO_MOVMATE.Where(x => x.AZIENDA == azienda && x.IDPRDMOVMATE == IDPRDMOVMATE).ToList();
            }
            return(riga);
        }