Exemplo n.º 1
0
 /// <summary>
 /// �����ϴ������̵ij������ҵ���
 /// </summary>
 public void InsertBull(DataTable table, string outInfoTabel)
 {
     using (PersistentManager persistentManager = new PersistentManager())
     {
         UpdateUploadDao dao = new UpdateUploadDao();
         dao.SetPersistentManager(persistentManager);
         dao.InsertBull(table, outInfoTabel);
     }
 }
Exemplo n.º 2
0
        /// <summary>
        /// ���ϱ��������ҵ����������
        /// </summary>
        /// <param name="tableBull"></param>
        public void InsertBull(DataTable tableAllotDetail, string masterTableName, string detailTableName, string outInfoTabel, string employeeCode)
        {
            DataTable table = null;
            using (PersistentManager persistentManager = new PersistentManager())
            {
                UpdateUploadDao dao = new UpdateUploadDao();
                dao.SetPersistentManager(persistentManager);
                table = dao.QueryBusiBill(outInfoTabel);
                int s = 0;
                decimal quantity = 0.00M;
                string product = "1";//�ж��Ƿ���ͬһ��Ʒ��
                DataRow[] tableAllotDr = tableAllotDetail.Select("1=1", "PRODUCTCODE");
                foreach (DataRow row in tableAllotDr)
                {
                    s++;
                    if (row["PRODUCTCODE"].ToString() != product)
                        quantity = 0.00M;//�������Ʒ�Ʒ��������
                    DataTable detailTable = dao.GetByOutInfo(row["BILLNO"].ToString(), row["PRODUCTCODE"].ToString(), detailTableName);
                    DataTable masterTable = dao.GetByOutInfo(row["BILLNO"].ToString(), masterTableName);
                    DataTable productStandArdrate = dao.ProductRate(row["PRODUCTCODE"].ToString());//��ȡ��Ʒ�ı���STANDARDRATE
                    string unitCode = dao.GetCellCodeCodeByName(row["CELLCODE"].ToString());///��ȡ��λ�ĵ�λ
                    decimal pieceBarQuantity = dao.FindPieceQuantity(row["PRODUCTCODE"].ToString(), "0");//��ѯԭ����������
                    decimal barQuantity = dao.FindBarQuantity(row["PRODUCTCODE"].ToString(), "1");//��ѯԭ�����������
                    decimal beginQuantity = pieceBarQuantity + barQuantity;//ԭ���
                    decimal endBarQuantity = 0.00M;//��ǰ���������
                    decimal endQuntity = 0.00M;//��ǰ���=ԭ���+��ǰ��������

                    if (unitCode == productStandArdrate.Rows[0]["JIANCODE"].ToString())//�ж��Ǽ�������������Ҫת����������Ҫ
                    {
                    decimal endPieceQuantity = Convert.ToDecimal(row["QUANTITY"]) * Convert.ToDecimal(productStandArdrate.Rows[0]["JIANRATE"].ToString());//�ѵ�ǰ���������ת��Ϊ֧
                        endBarQuantity = (Convert.ToDecimal(endPieceQuantity) / Convert.ToDecimal(productStandArdrate.Rows[0]["TIAORATE"].ToString()));//�ѵ�ǰ�����֧ת����
                        quantity = quantity + endBarQuantity;
                    }
                    else
                    {
                        endBarQuantity = Convert.ToDecimal(row["QUANTITY"]);
                        quantity = quantity + endBarQuantity;
                    }

                    if (outInfoTabel == "DWV_IWMS_OUT_BUSI_BILL")
                        endQuntity = beginQuantity - quantity;//�����ȥ
                    else
                        endQuntity = beginQuantity + quantity;//������

                    DataRow newRow = table.NewRow();
                    newRow["BUSI_ACT_ID"] = DateTime.Now.ToString("yyMMddssff") + s;
                    newRow["BUSI_BILL_DETAIL_ID"] = detailTable.Rows[0]["STORE_BILL_DETAIL_ID"].ToString();
                    newRow["BUSI_BILL_ID"] = row["BILLNO"];
                    newRow["RELATE_BUSI_BILL_ID"] = row["BILLNO"];
                    newRow["STORE_BILL_ID"] = row["BILLNO"];
                    newRow["BRAND_CODE"] = row["PRODUCTCODE"];
                    newRow["BRAND_NAME"] = detailTable.Rows[0]["BRAND_NAME"].ToString();
                    newRow["QUANTITY"] = endBarQuantity;
                    newRow["DIST_CTR_CODE"] = "0101";
                    newRow["ORG_CODE"] = this.QueryOrgCode().ToString();
                    newRow["STORE_ROOM_CODE"] = "001";
                    newRow["STORE_PLACE_CODE"] = "1002";
                    newRow["TARGET_NAME"] = Convert.ToString(dao.GetCellCodeByName(row["CELLCODE"].ToString()));
                    newRow["IN_OUT_TYPE"] = masterTable.Rows[0]["IN_OUT_TYPE"].ToString();
                    newRow["BILL_TYPE"] = masterTable.Rows[0]["BILL_TYPE"].ToString();
                    newRow["BEGIN_STOCK_QUANTITY"] = Convert.ToInt32(beginQuantity);
                    newRow["END_STOCK_QUANTITY"] = Convert.ToInt32(endQuntity);
                    newRow["DISUSE_STATUS"] = "0";
                    newRow["RECKON_STATUS"] = "";
                    newRow["RECKON_DATE"] = "";
                    newRow["UPDATE_CODE"] = "050000";
                    newRow["UPDATE_DATE"] = DateTime.Now.ToString("yyyyMMddHHmmss");
                    newRow["IS_IMPORT"] = "0";
                    table.Rows.Add(newRow);
                    product = row["PRODUCTCODE"].ToString();
                }
                dao.InsertBull(table, outInfoTabel);
            }
        }