private void btn_Save_Click(object sender, EventArgs e) { if (txt_DocNoTran.Text == "") { MessageBox.Show("คุณยังไม่ได้กรอกข้อมูล [เลขที่เอกสารโอน] ...กรุณากรอกข้อมูลก่อนทำการบันทึก", "ข้อมูลไม่ครบ", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (gridView1.RowCount > 0) { if (DEntRun == null) { Utility.MessageError("ไม่พบข้อมูล [เลข Running] กรุณาทำการเลือกข้อมูล Running ใหม่อีกครั้งครับ"); return; } //------ Check การเปลี่ยน Running if (Fn_CheckRunningChange(Convert.ToInt32(_RunningID), _Menu_ID) == false)//True : มีการเปลี่ยน Running พร้อม Reset เป็น 0 { return; } if (Utility.MessageQuestion("คุณต้องการที่จะทำการโอนข้อมูลหรือไม่... กด Yes เพื่อยินยันการโอน?") == DialogResult.No) { return; } List <Stock_TranferArInvoice> Item_Source = (List <Stock_TranferArInvoice>)gridView1.DataSource; string TranDocNo = txt_DocNoTran.Text.Trim(); DateTime TranDate = dtp_Tranfer.DateTime; string sRunningCurrent = ""; List <Stock_TranferArInvoice> Item_Result = new List <Stock_TranferArInvoice>(); foreach (Stock_TranferArInvoice ItemSet in Item_Source) { ItemSet.Tran_DocNo = TranDocNo; ItemSet.Tran_DocDate = TranDate; ItemSet.QtyRemain = ItemSet.Qty - ItemSet.QtyActual; // [Qty] - [QtyActual] ItemSet.Tran_StatusClear = 0; //0 : รายการปกติ ยอดคงค้างใช้คำนวณ 1 : รายการที่ถูกยกเลิก ยอดคงค้างจะไม่คำนวณ ItemSet.Status = ItemSet.QtyRemain == 0 ? 0 : 1; //0 : โอนสำเร็จ 1 : ค้างโอน 2 : ยกเลิก //ItemSet.Tran_Attribute01 = ItemSet.Tran_Attribute01; ItemSet.Tran_UpdateBy = Utility._UserDB; ItemSet.Tran_UpdateDate = DateTime.Now; ItemSet.Tran_CreateBy = Utility._UserDB; ItemSet.Tran_CreateDate = DateTime.Now; //ItemSet.Tran_Attribute01 = "Delete Test where Tran_DocNo=('sdsdsd-0102-3')"; Item_Result.Add(ItemSet); } List <Stock_TranferAccrual> ItemLog = new List <Stock_TranferAccrual>(); foreach (Stock_TranferArInvoice Iset in Item_Result) { Stock_TranferAccrual ILog = new Stock_TranferAccrual(); ILog.TranferAccrual_Date = Iset.Tran_DocDate; ILog.TranferAccual_QtyReam = Iset.QtyActual; ILog.Tran_DocNo = Iset.Tran_DocNo; ILog.Tran_DocDate = Iset.Tran_DocDate; ILog.DocNo = Iset.DocNo; ILog.ItemCode = Iset.ItemCode; ILog.DocDate = Iset.DocDate; ILog.ArCode = Iset.ArCode; ILog.SaleCode = Iset.SaleCode; ILog.MyDescription = Iset.MyDescription; ILog.ItemName = Iset.ItemName; ILog.WHCode = Iset.WHCode; ILog.ShelfCode = Iset.ShelfCode; ILog.Qty = Iset.Qty; ILog.QtyActual = Iset.QtyActual; ILog.QtyRemain = Iset.QtyRemain; ILog.Price = Iset.Price; ILog.Amount = Iset.Amount; ILog.UnitCode = Iset.UnitCode; ILog.LineNumber = Iset.LineNumber; ILog.Tran_StatusClear = Iset.Tran_StatusClear; ILog.Tran_Attribute01 = Iset.Tran_Attribute01; ILog.Tran_Attribute02 = Iset.Tran_Attribute02; ILog.Tran_Attribute03 = Iset.Tran_Attribute03; ILog.Tran_Attribute04 = Iset.Tran_Attribute04; ILog.Tran_Attribute05 = Iset.Tran_Attribute05; ILog.Status = Iset.Status; ILog.Tran_CreateBy = Iset.Tran_CreateBy; ILog.Tran_CreateDate = Iset.Tran_CreateDate; ILog.Tran_UpdateBy = Iset.Tran_UpdateBy; ILog.Tran_UpdateDate = Iset.Tran_UpdateDate; ItemLog.Add(ILog); } try { using (var srv = new StockTranferArInvoiceService(Utility.ConnSDB)) { using (var srv2 = new StockTranferAccrualService(Utility.ConnSDB)) { if (srv.CheckUseDocNo(TranDocNo) == false) { if (Utility.MessageQuestion("ข้อมูลการโอน : " + TranDocNo + " ถูกใช้บันทึกไปแล้ว\nคุณต้องการทำการบันทึกหรือไม่...โดยระบบจะทำการ Running รหัสเอกสารลำดับต่อไป") == DialogResult.Yes) { //::::::::::: Manage Running Duplicate [Start] ::::::::::::::::::::::: using (var db2 = new DocumentRunningService(Utility.ConnSDB)) { DEntRun = db2.GetRunning(Convert.ToInt32(_RunningID), _Menu_ID); do { DEntRun = db2.SetNextRunning(DEntRun); //---- IncreaseNextNumber 1 sRunningCurrent = Db_Run.GetRunningDisplay(DEntRun); } while (!srv.CheckUseDocNo(sRunningCurrent)); //วนเช็ค Running และ Update Running ไปเรื่อยๆจนกว่าจะเจอ Running ที่ไม่ได้ใช้ foreach (var item in Item_Result) { item.Tran_DocNo = sRunningCurrent; } } //::::::::::: Manage Running Duplicate [END] ::::::::::::::::::::::: } else { return; } } bool result = srv.Insert(Item_Result, DEntRun); bool result_log = srv2.Insert(ItemLog); if (result && result_log) { Utility.MessageInformation("บันทึกข้อมูลเรียบร้อย..."); //Fn_ScreenClear(); Fn_ClearData(); } else { Utility.MessageError("ไม่สามารถบันทึกข้อมูลได้...เนื่องจาก : " + srv.ErrorMessage); Utility.MessageError("ไม่สามารถบันทึกข้อมูลได้...เนื่องจาก : " + srv2.ErrorMessage); } } } } catch (ApplicationException ex) { Utility.MessageError("Error : " + ex.Message); if (ex.InnerException != null) { Utility.MessageError("Error Inner : " + ex.InnerException.Message); } } } }
private void simpleButton1_Click(object sender, EventArgs e) { if (Utility.MessageQuestion("คุณต้องการ [ยกเลิกข้อมูลการโอน] หรือไม่...กด Yes เพื่อทำการยกเลิก") == DialogResult.No) { return; } using (var srv = new StockTranferArInvoiceService(Utility.ConnSDB)) { List <Stock_TranferArInvoice> ItemAdd = new List <Stock_TranferArInvoice>(); List <Stock_TranferAccrual> ItemLog = new List <Stock_TranferAccrual>(); Stock_TranferArInvoice Iupdate = srv.GetFind(this._Code); if (Iupdate != null) { string Remark = txt_Tran_Attribute01.Text.Trim(); Iupdate.Tran_Attribute01 = Remark; Iupdate.Status = 2;//0 : โอนสำเร็จ 1 : ค้างโอน 2 : ยกเลิก Iupdate.Tran_UpdateDate = DateTime.Now; Iupdate.Tran_UpdateBy = Utility._UserDB; ItemAdd.Add(Iupdate); Stock_TranferAccrual ILog = new Stock_TranferAccrual(); ILog.TranferAccrual_Date = DateTime.Now; ILog.Tran_DocNo = Iupdate.Tran_DocNo; ILog.Tran_DocDate = Iupdate.Tran_DocDate; ILog.DocNo = Iupdate.DocNo; ILog.ItemCode = Iupdate.ItemCode; ILog.DocDate = Iupdate.DocDate; ILog.ArCode = Iupdate.ArCode; ILog.SaleCode = Iupdate.SaleCode; ILog.MyDescription = Iupdate.MyDescription; ILog.ItemName = Iupdate.ItemName; ILog.WHCode = Iupdate.WHCode; ILog.ShelfCode = Iupdate.ShelfCode; ILog.Qty = Iupdate.Qty; ILog.QtyActual = Iupdate.QtyActual; ILog.QtyRemain = Iupdate.QtyRemain; ILog.Price = Iupdate.Price; ILog.Amount = Iupdate.Amount; ILog.UnitCode = Iupdate.UnitCode; ILog.LineNumber = Iupdate.LineNumber; ILog.Tran_StatusClear = Iupdate.Tran_StatusClear; ILog.Tran_Attribute01 = Iupdate.Tran_Attribute01; ILog.Tran_Attribute02 = Iupdate.Tran_Attribute02; ILog.Tran_Attribute03 = Iupdate.Tran_Attribute03; ILog.Tran_Attribute04 = Iupdate.Tran_Attribute04; ILog.Tran_Attribute05 = Iupdate.Tran_Attribute05; ILog.Status = Iupdate.Status; ILog.Tran_CreateBy = Iupdate.Tran_CreateBy; ILog.Tran_CreateDate = Iupdate.Tran_CreateDate; ILog.Tran_UpdateBy = Iupdate.Tran_UpdateBy; ILog.Tran_UpdateDate = Iupdate.Tran_UpdateDate; ItemLog.Add(ILog); } using (var srv2 = new StockTranferAccrualService(Utility.ConnSDB)) { if (srv.Update(ItemAdd) && srv2.Insert(ItemLog)) { Utility.MessageInformation("บันทึกข้อมูลสำเร็จ..."); DialogResult = DialogResult.Yes; this.Close(); } else { if (srv.ErrorMessage != "") { Utility.MessageError("ไม่สามารถบันทึกได้ เนื่องจาก : " + srv.ErrorMessage); } if (srv2.ErrorMessage != "") { Utility.MessageError("ไม่สามารถบันทึกได้ เนื่องจาก : " + srv2.ErrorMessage); } } } } }
private void btn_Cancel_Click(object sender, EventArgs e) { if (gridView1.SelectedRowsCount > 0) { if (Utility.MessageQuestion("คุณต้องการ [ยกเลิกข้อมูลการโอน] ที่เลือกหรือไม่...กด Yes เพื่อทำการยกเลิก") == DialogResult.No) { return; } int[] rows = gridView1.GetSelectedRows(); using (var srv = new StockTranferArInvoiceService(Utility.ConnSDB)) { List <Stock_TranferArInvoice> ItemAdd = new List <Stock_TranferArInvoice>(); List <Stock_TranferAccrual> ItemLog = new List <Stock_TranferAccrual>(); for (int i = 0; i < gridView1.SelectedRowsCount; i++) { Stock_TranferArInvoice IReture = (Stock_TranferArInvoice)gridView1.GetRow(rows[i]); Stock_TranferArInvoice Iupdate = srv.GetFind(IReture.ROWORDER); if (Iupdate != null) { //---เดิม //Iupdate.QtyActual = Iupdate.QtyActual + IReture.QtyActual; // บวกการเบิกของใหม่กับเดิมไป //---ใหม่ แก้ตรงข้ามกับอันเดิม 27-12-2559 Iupdate.QtyActual = Iupdate.QtyActual - IReture.QtyActual; // บวกการเบิกของใหม่กับเดิมไป Iupdate.QtyRemain = Iupdate.Qty - Iupdate.QtyActual; // คำนวณยอดคงเหลือ Iupdate.Tran_StatusClear = 1; //0 : รายการปกติ ยอดคงค้างใช้คำนวณ 1 : รายการที่ถูกยกเลิก ยอดคงค้างจะไม่คำนวณ Iupdate.Status = 2; //0 : โอนสำเร็จ 1 : ค้างโอน 2 : ยกเลิก Iupdate.Tran_UpdateDate = DateTime.Now; Iupdate.Tran_UpdateBy = Utility._UserDB; ItemAdd.Add(Iupdate); Stock_TranferAccrual ILog = new Stock_TranferAccrual(); ILog.TranferAccrual_Date = DateTime.Now; ILog.Tran_DocNo = Iupdate.Tran_DocNo; ILog.Tran_DocDate = Iupdate.Tran_DocDate; ILog.DocNo = Iupdate.DocNo; ILog.ItemCode = Iupdate.ItemCode; ILog.DocDate = Iupdate.DocDate; ILog.ArCode = Iupdate.ArCode; ILog.SaleCode = Iupdate.SaleCode; ILog.MyDescription = Iupdate.MyDescription; ILog.ItemName = Iupdate.ItemName; ILog.WHCode = Iupdate.WHCode; ILog.ShelfCode = Iupdate.ShelfCode; ILog.Qty = Iupdate.Qty; ILog.QtyActual = Iupdate.QtyActual; ILog.QtyRemain = Iupdate.QtyRemain; ILog.Price = Iupdate.Price; ILog.Amount = Iupdate.Amount; ILog.UnitCode = Iupdate.UnitCode; ILog.LineNumber = Iupdate.LineNumber; ILog.Tran_StatusClear = Iupdate.Tran_StatusClear; ILog.Tran_Attribute01 = Iupdate.Tran_Attribute01; ILog.Tran_Attribute02 = Iupdate.Tran_Attribute02; ILog.Tran_Attribute03 = Iupdate.Tran_Attribute03; ILog.Tran_Attribute04 = Iupdate.Tran_Attribute04; ILog.Tran_Attribute05 = Iupdate.Tran_Attribute05; ILog.Status = Iupdate.Status; ILog.Tran_CreateBy = Iupdate.Tran_CreateBy; ILog.Tran_CreateDate = Iupdate.Tran_CreateDate; ILog.Tran_UpdateBy = Iupdate.Tran_UpdateBy; ILog.Tran_UpdateDate = Iupdate.Tran_UpdateDate; ItemLog.Add(ILog); } } //foreach (Stock_TranferArInvoice Iset in ItemAdd) //{ // Stock_TranferAccrual ILog = new Stock_TranferAccrual(); // ILog.TranferAccrual_Date = DateTime.Now; // ILog.Tran_DocNo = Iset.Tran_DocNo; // ILog.Tran_DocDate = Iset.Tran_DocDate; // ILog.DocNo = Iset.DocNo; // ILog.ItemCode = Iset.ItemCode; // ILog.DocDate = Iset.DocDate; // ILog.ArCode = Iset.ArCode; // ILog.SaleCode = Iset.SaleCode; // ILog.MyDescription = Iset.MyDescription; // ILog.ItemName = Iset.ItemName; // ILog.WHCode = Iset.WHCode; // ILog.ShelfCode = Iset.ShelfCode; // ILog.Qty = Iset.Qty; // ILog.QtyActual = Iset.QtyActual; // ILog.QtyRemain = Iset.QtyRemain; // ILog.Price = Iset.Price; // ILog.Amount = Iset.Amount; // ILog.UnitCode = Iset.UnitCode; // ILog.LineNumber = Iset.LineNumber; // ILog.Tran_StatusClear = Iset.Tran_StatusClear; // ILog.Tran_Attribute01 = Iset.Tran_Attribute01; // ILog.Tran_Attribute02 = Iset.Tran_Attribute02; // ILog.Tran_Attribute03 = Iset.Tran_Attribute03; // ILog.Tran_Attribute04 = Iset.Tran_Attribute04; // ILog.Tran_Attribute05 = Iset.Tran_Attribute05; // ILog.Status = Iset.Status; // ILog.Tran_CreateBy = Iset.Tran_CreateBy; // ILog.Tran_CreateDate = Iset.Tran_CreateDate; // ILog.Tran_UpdateBy = Iset.Tran_UpdateBy; // ILog.Tran_UpdateDate = Iset.Tran_UpdateDate; // ItemLog.Add(ILog); //} using (var srv2 = new StockTranferAccrualService(Utility.ConnSDB)) { if (srv.Update(ItemAdd) && srv2.Insert(ItemLog)) { Utility.MessageInformation("บันทึกข้อมูลสำเร็จ..."); backgroundWorker_Remain.RunWorkerAsync(); } else { if (srv.ErrorMessage != "") { Utility.MessageError("ไม่สามารถบันทึกได้ เนื่องจาก : " + srv.ErrorMessage); } if (srv2.ErrorMessage != "") { Utility.MessageError("ไม่สามารถบันทึกได้ เนื่องจาก : " + srv2.ErrorMessage); } } } } //List<Stock_TranferArInvoice> ItemAdd = new List<Stock_TranferArInvoice>(); //for (int i = 0; i < gridView1.SelectedRowsCount; i++) //{ // Stock_TranferArInvoice IReture = (Stock_TranferArInvoice)gridView1.GetRow(rows[i]); // IReture.QtyRemain = IReture.Qty - IReture.QtyActual; // [Qty] - [QtyActual] // IReture.Tran_StatusClear = 1;//0 : รายการปกติ ยอดคงค้างใช้คำนวณ 1 : รายการที่ถูกยกเลิก ยอดคงค้างจะไม่คำนวณ // ItemAdd.Add(IReture); //} //using (var srv = new StockTranferArInvoiceService(Utility.ConnSDB)) //{ // if (srv.Update(ItemAdd)) // { // Utility.MessageInformation("บันทึกข้อมูลสำเร็จ..."); // backgroundWorker_Remain.RunWorkerAsync(); // } // else // Utility.MessageError("ไม่สามารถบันทึกได้ เนื่องจาก : " + srv.ErrorMessage); //} } }