예제 #1
0
 public bool DeleteData(ArrayList arrData)
 {
     bool ret = true;
     OracleDBObj obj = new OracleDBObj();
     obj.CreateConnection();
     obj.CreateTransaction();
     try
     {
         ProductMaterial itemDAL = new ProductMaterial();
         for (int i = 0; i < arrData.Count; i++)
         {
             DALObj.GetDataByLOID(Convert.ToDouble(arrData[i]), obj.zTrans);
             itemDAL.DeleteDataByReturn(Convert.ToDouble(arrData[i]), obj.zTrans);
             ret = DALObj.DeleteCurrentData(obj.zTrans);
             if (!ret) throw new ApplicationException(DALObj.ErrorMessage);
         }
         obj.zTrans.Commit();
         obj.CloseConnection();
     }
     catch (Exception ex)
     {
         obj.zTrans.Rollback();
         obj.CloseConnection();
         ret = false;
         _error = ex.Message;
     }
     return ret;
 }
예제 #2
0
        public bool UpdateData(string userID, ReturnRequestData data)
        {

            // ####### UPDATE REQUISITION
            bool ret = true;
            if (ValidateData(data))
            {
                OracleDBObj obj = new OracleDBObj();
                obj.CreateConnection();
                obj.CreateTransaction();

                //if (data.LOID != 0)
                //{
                //    // update old requisition
                //    DALObj.GetDataByLOID(data.LOID, obj.zTrans);
                //}
                //else
                //{
                //    DALObj.STATUS = data.STATUS;
                //    DALObj.ACTIVE = data.ACTIVE;
                //    DALObj.REFTABLE = "PDPRODUCT";
                //    DALObj.REFLOID = data.VPLOID;
                //    DALObj.LOTNO = data.LOTNO;
                //    DALObj.WAREHOUSE = data.WAREHOUSE;
                //}

                try
                {
                    DALObj.OnDB = false;
                    DALObj.GetDataByLOID(data.LOID, obj.zTrans);

                    DALObj.CODE = data.CODE;
                    DALObj.REQDATE = data.REQDATE;
                    DALObj.STATUS = data.STATUS;
                    DALObj.ACTIVE = data.ACTIVE;
                    DALObj.REFTABLE = data.REFTABLE;
                    DALObj.REFLOID = data.REFLOID;
                    DALObj.LOTNO = data.LOTNO;
                    DALObj.WAREHOUSE = data.WAREHOUSE;
                    DALObj.REMARK = data.REMARK;
                    DALObj.REQUISITIONTYPE = data.REQUISITIONTYPE;


                    if (DALObj.OnDB)
                        ret = DALObj.UpdateCurrentData(userID, obj.zTrans);
                    else
                        ret = DALObj.InsertCurrentData(userID, obj.zTrans);

                    _LOID = DALObj.LOID;
                    if (!ret)
                    {
                        throw new ApplicationException(DALObj.ErrorMessage);
                    }


                    // ############ UPDATE ITEM
                    ProductMaterial itemDAL = new ProductMaterial();
                    itemDAL.DeleteCurrentDataByREQ(DALObj.LOID, obj.zTrans);
                    for (Int16 i = 0; i < data.ITEM.Count; ++i)
                    {
                        itemDAL = new ProductMaterial();
                        ReturnItemData item = (ReturnItemData)data.ITEM[i];
                        itemDAL.REQUISITION = DALObj.LOID;
                        itemDAL.PRODUCT = item.PDLOID;
                        itemDAL.MASTER = item.MASTER;
                        itemDAL.UNIT = item.UNIT;
                        itemDAL.USEQTY = item.USEQTY;
                        itemDAL.WASTEQTYMAT = item.WASTEQTYMAT;
                        itemDAL.RETURNQTY = item.RETURNQTY;
                        itemDAL.ACTIVE = Constz.ActiveStatus.Active;

                        //                        itemDAL.OnDB = false;
                        ret = itemDAL.InsertCurrentData(userID, obj.zTrans);
                        if (!ret) throw new ApplicationException(itemDAL.ErrorMessage);
                    }
                    obj.zTrans.Commit();
                    obj.CloseConnection();
                }
                catch (Exception ex)
                {
                    obj.zTrans.Rollback();
                    obj.CloseConnection();
                    ret = false;
                    _error = ex.Message;
                }
            }
            else
                ret = false;
            return ret;
        }