示例#1
0
 public CaricoLavoroDS.USR_PRD_MOVMATERow GetUSR_PRD_MOVMATE(CaricoLavoroDS ds, string IDPRDMOVFASE, string azienda)
 {
     CaricoLavoroDS.USR_PRD_MOVMATERow riga = ds.USR_PRD_MOVMATE.Where(x => x.AZIENDA == azienda && x.IDPRDMOVFASE == IDPRDMOVFASE).FirstOrDefault();
     if (riga == null)
     {
         CaricoLavoroAdapter a = new CaricoLavoroAdapter(DbConnection, DbTransaction);
         a.GetUSR_PRD_MOVMATE(ds, IDPRDMOVFASE, azienda);
         riga = ds.USR_PRD_MOVMATE.Where(x => x.AZIENDA == azienda && x.IDPRDMOVFASE == IDPRDMOVFASE).FirstOrDefault();
     }
     return(riga);
 }
        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());
        }
        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);
        }