Exemplo n.º 1
0
        public IList<ProductAlternate> Select(ProductAlternate data)
        {

                IList<ProductAlternate> datos = new List<ProductAlternate>();
                datos = GetHsql(data).List<ProductAlternate>();
                if (!Factory.IsTransactional)
                    Factory.Commit();
                return datos;
            
        }
        public IList <ProductAlternate> Select(ProductAlternate data)
        {
            IList <ProductAlternate> datos = new List <ProductAlternate>();

            datos = GetHsql(data).List <ProductAlternate>();
            if (!Factory.IsTransactional)
            {
                Factory.Commit();
            }
            return(datos);
        }
Exemplo n.º 3
0
        private IList <ProductAlternate> GetAlternateProducts(Product tmpData, string item1, string item2)
        {
            IList <ProductAlternate> list = new List <ProductAlternate>();
            ProductAlternate         curAlternate;

            //Item 1
            if (!string.IsNullOrEmpty(item1))
            {
                curAlternate              = new ProductAlternate();
                curAlternate.Product      = tmpData;
                curAlternate.CreatedBy    = WmsSetupValues.SystemUser;
                curAlternate.CreationDate = DateTime.Now;
                curAlternate.IsFromErp    = true;

                try
                {
                    curAlternate.AlternProduct = WType.GetProduct(new Product {
                        ProductCode = item1, Company = CurCompany
                    });
                    list.Add(curAlternate);
                    //Console.WriteLine(curAlternate.AlternProduct.ProductCode);
                }
                catch { }
            }

            //Item 2
            if (!string.IsNullOrEmpty(item2))
            {
                curAlternate              = new ProductAlternate();
                curAlternate.Product      = tmpData;
                curAlternate.CreatedBy    = WmsSetupValues.SystemUser;
                curAlternate.CreationDate = DateTime.Now;
                curAlternate.IsFromErp    = true;

                try
                {
                    curAlternate.AlternProduct = WType.GetProduct(new Product {
                        ProductCode = item2, Company = CurCompany
                    });
                    list.Add(curAlternate);
                    //Console.WriteLine(curAlternate.AlternProduct.ProductCode);
                }
                catch { }
            }

            return(list);
        }
        public override IQuery GetHsql(Object data)
        {
            StringBuilder    sql     = new StringBuilder("select a from ProductAlternate a  where  ");
            ProductAlternate pAltern = (ProductAlternate)data;

            if (pAltern != null)
            {
                Parms = new List <Object[]>();

                if (pAltern.RowID != 0)
                {
                    sql.Append(" a.RowID = :id     and   ");
                    Parms.Add(new Object[] { "id", pAltern.RowID });
                }


                if (pAltern.AlternProduct != null && pAltern.AlternProduct.ProductID != 0)
                {
                    sql.Append(" a.AlternProduct.ProductID  = :id2     and   ");
                    Parms.Add(new Object[] { "id2", pAltern.AlternProduct.ProductID });
                }


                if (pAltern.IsFromErp != null)
                {
                    sql.Append(" a.IsFromErp  = :idx2     and   ");
                    Parms.Add(new Object[] { "idx2", pAltern.IsFromErp });
                }

                if (pAltern.Product != null && pAltern.Product.ProductID != 0)
                {
                    sql.Append(" a.Product.ProductID = :id3     and   ");
                    Parms.Add(new Object[] { "id3", pAltern.Product.ProductID });
                }
            }

            sql = new StringBuilder(sql.ToString());
            sql.Append(" 1=1 order by a.RowID asc ");
            IQuery query = Factory.Session.CreateQuery(sql.ToString());

            SetParameters(query);
            return(query);
        }
Exemplo n.º 5
0
        private IList <ProductAlternate> GetAlternateProducts(Product tmpData)
        {
            IList <ProductAlternate> list = new List <ProductAlternate>();
            ProductAlternate         curAlternate;

            try
            {
                Command.Connection = new SqlConnection(CurCompany.ErpConnection.CnnString);

                // items equivalentes asociados al item en
                Query = "SELECT f128_rowid_item_equivalente " +
                        " FROM t128_mc_items_equivalentes WHERE f128_rowid_item = " + tmpData.Reference +
                        " AND f128_id_cia =" + CurCompany.ErpCode;

                ds = ReturnDataSet(Query, null, "t128_mc_items_equivalentes", Command.Connection);

                if (ds == null || ds.Tables.Count == 0)
                {
                    return(null);
                }

                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    curAlternate               = new ProductAlternate();
                    curAlternate.Product       = tmpData;
                    curAlternate.CreatedBy     = WmsSetupValues.SystemUser;
                    curAlternate.CreationDate  = DateTime.Now;
                    curAlternate.IsFromErp     = true;
                    curAlternate.AlternProduct = WType.GetProduct(new Product {
                        Reference = row["f128_rowid_item_equivalente"].ToString(), Company = CurCompany
                    });
                    list.Add(curAlternate);
                }
            }
            catch { }
            return(list);
        }
        private IList <ProductAlternate> GetAlternateProducts(Product tmpData)
        {
            IList <ProductAlternate> list = new List <ProductAlternate>();
            ProductAlternate         curAlternate;


            Command.Connection = new SqlConnection(CurCompany.ErpConnection.CnnString);

            Query = GetErpQuery("ITEM_EQUIVALENCE").Replace("__ITEM", tmpData.ProductCode);

            ds = ReturnDataSet(Query, null, "ITEM_EQUIVALENCE", Command.Connection);

            if (ds == null || ds.Tables.Count == 0)
            {
                return(null);
            }

            foreach (DataRow row in ds.Tables[0].Rows)
            {
                try
                {
                    curAlternate               = new ProductAlternate();
                    curAlternate.Product       = tmpData;
                    curAlternate.CreatedBy     = WmsSetupValues.SystemUser;
                    curAlternate.CreationDate  = DateTime.Now;
                    curAlternate.IsFromErp     = true;
                    curAlternate.AlternProduct = WType.GetProduct(new Product {
                        ProductCode = row["f128_rowid_item_equivalente"].ToString(), Company = CurCompany
                    });
                    list.Add(curAlternate);
                }
                catch { }
            }


            return(list);
        }
Exemplo n.º 7
0
        private IList<ProductAlternate> GetAlternateProducts(Product tmpData, string item1, string item2)
        {
            IList<ProductAlternate> list = new List<ProductAlternate>();
            ProductAlternate curAlternate; 

            //Item 1
            if (!string.IsNullOrEmpty(item1))
            {
                curAlternate = new ProductAlternate();
                curAlternate.Product = tmpData;
                curAlternate.CreatedBy = WmsSetupValues.SystemUser;
                curAlternate.CreationDate = DateTime.Now;
                curAlternate.IsFromErp = true;

                try
                {
                    curAlternate.AlternProduct = WType.GetProduct(new Product { ProductCode = item1, Company = CurCompany });
                    list.Add(curAlternate);
                    //Console.WriteLine(curAlternate.AlternProduct.ProductCode);
                }
                catch { }
            }

            //Item 2
            if (!string.IsNullOrEmpty(item2))
            {
                curAlternate = new ProductAlternate();
                curAlternate.Product = tmpData;
                curAlternate.CreatedBy = WmsSetupValues.SystemUser;
                curAlternate.CreationDate = DateTime.Now;
                curAlternate.IsFromErp = true;

                try
                {
                    curAlternate.AlternProduct = WType.GetProduct(new Product { ProductCode = item2, Company = CurCompany });
                    list.Add(curAlternate);
                    //Console.WriteLine(curAlternate.AlternProduct.ProductCode);
                }
                catch { }
            }

            return list;
        }
Exemplo n.º 8
0
        private IList<ProductAlternate> GetAlternateProducts(Product tmpData)
        {
            IList<ProductAlternate> list = new List<ProductAlternate>();
            ProductAlternate curAlternate;


                Command.Connection = new SqlConnection(CurCompany.ErpConnection.CnnString);

                Query = GetErpQuery("ITEM_EQUIVALENCE").Replace("__ITEM",tmpData.ProductCode);

                ds = ReturnDataSet(Query, null, "ITEM_EQUIVALENCE", Command.Connection);

                if (ds == null || ds.Tables.Count == 0)
                    return null;

                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    try
                    {
                        curAlternate = new ProductAlternate();
                        curAlternate.Product = tmpData;
                        curAlternate.CreatedBy = WmsSetupValues.SystemUser;
                        curAlternate.CreationDate = DateTime.Now;
                        curAlternate.IsFromErp = true;
                        curAlternate.AlternProduct = WType.GetProduct(new Product { ProductCode = row["f128_rowid_item_equivalente"].ToString(), Company = CurCompany });
                        list.Add(curAlternate);
                    }
                    catch { }
                }


            return list;
        }
Exemplo n.º 9
0
 public void DeleteProductAlternate(ProductAlternate data) { Factory.DaoProductAlternate().Delete(data); }
Exemplo n.º 10
0
 public IList<ProductAlternate> GetProductAlternate(ProductAlternate data) { return Factory.DaoProductAlternate().Select(data); }
Exemplo n.º 11
0
        private IList<ProductAlternate> GetAlternateProducts(Product tmpData)
        {
            IList<ProductAlternate> list = new List<ProductAlternate>();
            ProductAlternate curAlternate;

            try
            {

                Command.Connection = new SqlConnection(CurCompany.ErpConnection.CnnString);

                // items equivalentes asociados al item en 
                Query = "SELECT f128_rowid_item_equivalente " +
                  " FROM t128_mc_items_equivalentes WHERE f128_rowid_item = " + tmpData.Reference +
                  " AND f128_id_cia =" + CurCompany.ErpCode;

                ds = ReturnDataSet(Query, null, "t128_mc_items_equivalentes", Command.Connection);

                if (ds == null || ds.Tables.Count == 0)
                    return null;

                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    curAlternate = new ProductAlternate();
                    curAlternate.Product = tmpData;
                    curAlternate.CreatedBy = WmsSetupValues.SystemUser;
                    curAlternate.CreationDate = DateTime.Now;
                    curAlternate.IsFromErp = true;
                    curAlternate.AlternProduct = WType.GetProduct(new Product { Reference = row["f128_rowid_item_equivalente"].ToString(), Company = CurCompany });
                    list.Add(curAlternate);
                }

            }
            catch { }
            return list;
        }
Exemplo n.º 12
0
 public ProductAlternate SelectById(ProductAlternate data)
 {
     return (ProductAlternate)base.SelectById(data);
 }
Exemplo n.º 13
0
 public Boolean Delete(ProductAlternate data)
 {
     return base.Delete(data);
 }
Exemplo n.º 14
0
 public Boolean Update(ProductAlternate data)
 {
     return base.Update(data);
 }
Exemplo n.º 15
0
 public ProductAlternate Save(ProductAlternate data)
 {
     return (ProductAlternate)base.Save(data);
 }
Exemplo n.º 16
0
 public ProductAlternate SaveProductAlternate(ProductAlternate data)
 {
     try
     {
         SetService(); return SerClient.SaveProductAlternate(data);
     }
     finally
     {
         SerClient.Close();
         if (SerClient.State == CommunicationState.Faulted)
             SerClient.Abort();
     }
 }
Exemplo n.º 17
0
 public void DeleteProductAlternate(ProductAlternate data)
 {
     try
     {
         SetService(); SerClient.DeleteProductAlternate(data);
     }
     finally
     {
         SerClient.Close();
         if (SerClient.State == CommunicationState.Faulted)
             SerClient.Abort();
     }
 }
 public ProductAlternate Save(ProductAlternate data)
 {
     return((ProductAlternate)base.Save(data));
 }
Exemplo n.º 19
0
        private void ProcessProducts(IList <Product> list)
        {
            if (list == null)
            {
                return;
            }

            Product                qProd = null;
            UnitProductRelation    curUnit;
            ProductTrackRelation   curRecord;
            ProductAccountRelation curPvendor;


            foreach (Product e in list)
            {
                try
                {
                    qProd             = new Product();
                    qProd.Company     = e.Company;
                    qProd.ProductCode = e.ProductCode;

                    //Evalua si el elemento ya existe
                    IList <Product> exList = Factory.DaoProduct().Select(qProd, 0);
                    e.ModDate    = DateTime.Now;
                    e.ModifiedBy = WmsSetupValues.SystemUser;

                    if (exList.Count == 0)
                    {
                        e.CreationDate = DateTime.Now;
                        e.CreatedBy    = WmsSetupValues.SystemUser;
                        Factory.DaoProduct().Save(e);
                    }
                    else
                    {
                        e.ProductID    = exList.First().ProductID;
                        e.CreatedBy    = exList.First().CreatedBy;
                        e.CreationDate = exList.First().CreationDate;

                        //Otros datos del producto que deben preservarse
                        e.UpcCode         = exList.First().UpcCode;
                        e.Reference       = exList.First().Reference;
                        e.Manufacturer    = exList.First().Manufacturer;
                        e.IsBinRestricted = exList.First().IsBinRestricted;
                        e.Comment         = exList.First().Comment;
                        //e.AlternateCode1 = exList.First().AlternateCode1;
                        //e.AlternateCode2 = exList.First().AlternateCode2;
                        e.PrintLabel      = exList.First().PrintLabel;
                        e.UnitsPerPack    = exList.First().UnitsPerPack;
                        e.PickMethod      = exList.First().PickMethod;
                        e.DefaultTemplate = exList.First().DefaultTemplate;
                        e.DefVendorNumber = exList.First().DefVendorNumber;

                        //Evaluar los UnitRelations
                        int i = 0;
                        foreach (UnitProductRelation line in e.ProductUnits)
                        {
                            curUnit             = new UnitProductRelation();
                            curUnit.Product     = line.Product;
                            curUnit.UnitErpCode = line.UnitErpCode;
                            curUnit.Unit        = line.Unit;
                            IList <UnitProductRelation> listLines = Factory.DaoUnitProductRelation().Select(curUnit);

                            if (listLines.Count > 0)
                            {
                                e.ProductUnits[i].RowID        = listLines.First().RowID;
                                e.ProductUnits[i].CreationDate = listLines.First().CreationDate;
                                e.ProductUnits[i].CreatedBy    = listLines.First().CreatedBy;
                                e.ProductUnits[i].ModDate      = DateTime.Now;
                                e.ProductUnits[i].ModifiedBy   = WmsSetupValues.SystemUser;
                            }
                            else
                            {
                                e.ProductUnits[i].CreationDate = DateTime.Now;
                                e.ProductUnits[i].CreatedBy    = WmsSetupValues.SystemUser;
                            }

                            i++;
                        }


                        //Evaluar los ProductTrackOptions
                        if (e.ProductTrack != null)
                        {
                            int y = 0;
                            foreach (ProductTrackRelation line in e.ProductTrack)
                            {
                                curRecord             = new ProductTrackRelation();
                                curRecord.Product     = line.Product;
                                curRecord.TrackOption = line.TrackOption;
                                IList <ProductTrackRelation> trackLines = Factory.DaoProductTrackRelation().Select(curRecord);

                                if (trackLines.Count > 0)
                                {
                                    e.ProductTrack[y].RowID        = trackLines.First().RowID;
                                    e.ProductTrack[y].CreationDate = trackLines.First().CreationDate;
                                    e.ProductTrack[y].CreatedBy    = trackLines.First().CreatedBy;
                                    e.ProductTrack[y].ModDate      = DateTime.Now;
                                    e.ProductTrack[y].ModifiedBy   = WmsSetupValues.SystemUser;
                                }
                                else
                                {
                                    e.ProductTrack[y].CreationDate = DateTime.Now;
                                    e.ProductTrack[y].CreatedBy    = WmsSetupValues.SystemUser;
                                }

                                y++;
                            }
                        }


                        //Evaluar los ProductVendor

                        try
                        {
                            IList <ProductAccountRelation> pAlt = Factory.DaoProductAccountRelation()
                                                                  .Select(new ProductAccountRelation {
                                IsFromErp = true, Product = new Product {
                                    ProductID = e.ProductID
                                }
                            });;

                            if (pAlt != null && pAlt.Count > 0)
                            {
                                foreach (ProductAccountRelation pax in pAlt)
                                {
                                    Factory.DaoProductAccountRelation().Delete(pax);
                                }
                            }
                        }
                        catch { }


                        if (e.ProductAccounts != null)
                        {
                            int y = 0;
                            foreach (ProductAccountRelation line in e.ProductAccounts)
                            {
                                curPvendor            = new ProductAccountRelation();
                                curPvendor.Product    = line.Product;
                                curPvendor.Account    = line.Account;
                                curPvendor.ItemNumber = line.ItemNumber;
                                IList <ProductAccountRelation> pVendLines = Factory.DaoProductAccountRelation().Select(curPvendor);

                                if (pVendLines.Count > 0)
                                {
                                    e.ProductAccounts[y].RowID        = pVendLines.First().RowID;
                                    e.ProductAccounts[y].CreationDate = pVendLines.First().CreationDate;
                                    e.ProductAccounts[y].CreatedBy    = pVendLines.First().CreatedBy;
                                    e.ProductAccounts[y].ModDate      = DateTime.Now;
                                    e.ProductAccounts[y].ModifiedBy   = WmsSetupValues.SystemUser;
                                }
                                else
                                {
                                    e.ProductAccounts[y].CreationDate = DateTime.Now;
                                    e.ProductAccounts[y].CreatedBy    = WmsSetupValues.SystemUser;
                                }

                                y++;
                            }
                        }


                        //Evaluar los ProductAlternate

                        //ProductAlternate curAlt;

                        /*
                         * try
                         * {
                         *  IList<ProductAlternate> pAlt = Factory.DaoProductAlternate()
                         *      .Select(new ProductAlternate { IsFromErp = true, Product = new Product { ProductID = e.ProductID } });
                         *
                         *  if (pAlt != null && pAlt.Count > 0)
                         *      foreach (ProductAlternate pax in pAlt)
                         *          try { Factory.DaoProductAlternate().Delete(pax); }
                         *          catch (Exception ex) { Console.WriteLine("PA:" + ex.Message); }
                         * }
                         * catch { }
                         */


                        if (e.AlternProducts != null)
                        {
                            int y = 0;
                            foreach (ProductAlternate line in e.AlternProducts)
                            {
                                e.AlternProducts[y].CreationDate = DateTime.Now;
                                e.AlternProducts[y].CreatedBy    = WmsSetupValues.SystemUser;
                                y++;

                                try
                                {
                                    ProductAlternate exist = Factory.DaoProductAlternate()
                                                             .Select(new ProductAlternate {
                                        AlternProduct = new Product {
                                            ProductID = line.AlternProduct.ProductID
                                        },
                                        Product = new Product {
                                            ProductID = e.ProductID
                                        }
                                    }).First();

                                    Factory.DaoProductAlternate().Delete(exist);
                                }
                                catch { }

                                //curAlt = new ProductAlternate();
                                //curAlt.Product = line.Product;
                                //curAlt.AlternProduct = line.AlternProduct;
                            }
                        }

                        Factory.DaoProduct().Update(e);
                    }
                }
                catch (Exception ex)
                {
                    //Factory.Rollback();
                    ExceptionMngr.WriteEvent("ProcessProducts:" + qProd.ProductCode, ListValues.EventType.Fatal, ex, null, ListValues.ErrorCategory.Business);
                    ////throw;
                }
            }
        }
 public Boolean Update(ProductAlternate data)
 {
     return(base.Update(data));
 }
Exemplo n.º 21
0
 public ProductAlternate SaveProductAlternate(ProductAlternate data) { return Factory.DaoProductAlternate().Save(data); }
 public Boolean Delete(ProductAlternate data)
 {
     return(base.Delete(data));
 }
Exemplo n.º 23
0
 public void UpdateProductAlternate(ProductAlternate data) { Factory.DaoProductAlternate().Update(data); }
 public ProductAlternate SelectById(ProductAlternate data)
 {
     return((ProductAlternate)base.SelectById(data));
 }