Example #1
0
        public List<MatchDetail> CheckIsSaleMatch(string SaleHeadId)
        {
            List<MatchDetail> md = new List<MatchDetail>();

            string sql = "SELECT * FROM SALE_ORDER_MATCH WHERE SaleHeadId = '" + SaleHeadId + "' ";
            DataTable dt = Class.DBConnString.clsDB.QueryDataTable(sql);
            foreach (DataRow row in dt.Rows)
            {
                MatchDetail m = new MatchDetail();
                m.MatchId = row["MatchId"].ToInt();
                m.OrderId = row["OrderId"].ToString();
                m.ProductId = row["ProductId"].ToString();
                m.SaleHeadId = row["SaleHeadId"].ToString();
                m.QuantityCut = row["MatchQuantity"].ToDouble();
                md.Add(m);
            }
            return md;
        }
Example #2
0
 void ScanOrder(int index, string ProductId, string SaleHeadId, double SaleDetailQuantity)
 {
     double balanceOrder = 0;
     if (index < DetailOrder.Rows.Count)
     {
         DataRow r = DetailOrder.Rows[index];
         balanceOrder = Convert.ToDouble(r["Balance"]);
         if (ProductId == r["ProductId"].ToString())
         {
             if (SaleDetailQuantity > balanceOrder)
             {
                 MatchDetail a = new MatchDetail();
                 a.OrderId = r["OrderId"].ToString();
                 a.SaleHeadId = SaleHeadId;
                 a.ProductId = r["ProductId"].ToString();
                 SaleDetailQuantity -= balanceOrder;
                 a.QuantityCut = balanceOrder;
                 md.Add(a);
                 ScanOrder(++index, ProductId, SaleHeadId, SaleDetailQuantity);
             }
             else
             {
                 MatchDetail a = new MatchDetail();
                 a.OrderId = r["OrderId"].ToString();
                 a.SaleHeadId = SaleHeadId;
                 a.ProductId = r["ProductId"].ToString();
                 a.QuantityCut = SaleDetailQuantity;
                 md.Add(a);
                 return;
             }
         }
         else
         {
             ScanOrder(++index, ProductId, SaleHeadId, SaleDetailQuantity);
         }
     }
 }