public int InsertTrans(ItemTransactionModel model) { model.CreationDate = DateTime.Now; model.LastUpdateDate = DateTime.Now; return(factory.ItemTransactionDao.Insert(model)); }
public long Save(bool isAutoGenerateParallel) { var voucher = new ItemTransactionModel { RefId = View.RefId, RefTypeId = View.RefTypeId, RefNo = View.RefNo, PostedDate = View.PostedDate, RefDate = View.RefDate, AccountingObjectId = View.AccountingObjectId, CustomerId = View.CustomerId, VendorId = View.VendorId, EmployeeId = View.EmployeeId, Trader = View.Trader, CurrencyCode = View.CurrencyCode, StockId = View.StockId, TotalAmount = View.TotalAmount, ExchangeRate = View.ExchangeRate, TotalAmountExchange = View.TotalAmountExchange, JournalMemo = View.JournalMemo, DocumentInclude = View.DocumentInclude, AccountingObjectType = View.AccountingObjectType, TaxCode = View.TaxCode, BankId = View.BankId, ItemTransactionDetails = View.ItemTransactionDetails, ItemTransactionDetailParallels = View.ItemTransactionDetailParallels }; return(View.RefId == 0 ? Model.AddItemTransactionVoucher(voucher, isAutoGenerateParallel) : Model.UpdateItemTransactionVoucher(voucher, isAutoGenerateParallel)); }
public void Delete(ItemTransactionModel model) { string sql = @"DELETE FROM mtl_material_transactions WHERE transaction_id = @transaction_id"; object[] parms = { "@transaction_id", model.TransactionId }; db.Update(sql, parms); }
private void Save_Click(object sender, EventArgs e) { MetroGrid grid = sender as MetroGrid; string msgErr = string.Empty; if (!ValidateLines(grid, out msgErr)) { MessageBox.Show(string.Format("Have some lines is invalid.{0}{1}", Environment.NewLine, msgErr), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } DialogResult dialogResult = MessageBox.Show("Are you sure to Return", "Please confirm.", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dialogResult == DialogResult.Yes) { string returnNumber = string.Empty; DateTime transactionDate = DateTime.Now; using (MaterialReturnEntryForm frm = new MaterialReturnEntryForm()) { frm.ShowDialog(); if (frm.returnNumber != null) { returnNumber = frm.returnNumber; transactionDate = frm.TransactionDate; } } if (!string.IsNullOrEmpty(returnNumber)) { foreach (DataGridViewRow item in grid.Rows) { try { //if (string.IsNullOrEmpty(item.Cells[0].Value.ToString())) //{ double qty = Convert.ToDouble(item.Cells[0].Value); if (qty != 0) { ItemTransactionModel line = (ItemTransactionModel)item.DataBoundItem; GenerateTransaction(line, qty, returnNumber, transactionDate); } //} } catch { } } MessageBox.Show("Issue Completed.", "Result", MessageBoxButtons.OK, MessageBoxIcon.Information); _view.materialsReturn = new List <ItemTransactionModel>(); _view.bindingReturnLines.DataSource = _view.materialsReturn; Filter_Click(null, null); } } }
private bool ValidateLines(MetroGrid grid, out string msg) { string messageOut = string.Empty; bool valid = true; foreach (DataGridViewRow item in grid.Rows) { try { ItemTransactionModel line = (ItemTransactionModel)item.DataBoundItem; double qty = Convert.ToDouble(item.Cells[0].Value); int lineNum = Convert.ToInt32(item.Index) + 1; if (qty == 0) { valid = false; if (string.IsNullOrEmpty(messageOut)) { messageOut = "Line : " + lineNum + " value is not be zero."; } else { messageOut = messageOut + Environment.NewLine + "Line : " + lineNum + " value is not be zero."; } } if (qty > line.NetIssueTransactionQty) { valid = false; if (string.IsNullOrEmpty(messageOut)) { messageOut = "Line : " + lineNum + " Return Qty. must less than or equal Transacion Qty."; } else { messageOut = messageOut + Environment.NewLine + "Line : " + lineNum + " Return Qty. must less than or equal Transacion Qty."; } } } catch { valid = false; } } msg = messageOut; return(valid); }
public int Insert(ItemTransactionModel model) { string sql = @"insert into mtl_material_transactions (last_update_date, last_updated_by, creation_date, created_by, last_update_login, request_id, inventory_item_id, revision, organization_id, subinventory_code, locator_id, transaction_type_id, transaction_source_type_id, transaction_source_id, transaction_source_name, transaction_quantity, transaction_uom, primary_quantity, transaction_date, transaction_reference, reason_id, costed_flag, actual_cost, transaction_cost, new_cost, currency_code, currency_conversion_rate, currency_conversion_type, currency_conversion_date, quantity_adjusted, employee_code, trx_source_line_id, trx_source_delivery_id, cycle_count_id, transfer_transaction_id, transaction_set_id, rcv_transaction_id, move_transaction_id, vendor_lot_number, transfer_organization_id, transfer_subinventory, transfer_locator_id, shipment_number, attribute1, attribute2, attribute3, attribute4, attribute5, movement_id, task_id, to_task_id, secondary_uom_code, secondary_transaction_quantity, catalog_item_id, remarks) values (@last_update_date,@last_updated_by, @creation_date,@created_by,@last_update_login, @request_id,@inventory_item_id,@revision, @organization_id,@subinventory_code,@locator_id, @transaction_type_id,@transaction_source_type_id,@transaction_source_id, @transaction_source_name,@transaction_quantity,@transaction_uom, @primary_quantity,@transaction_date,@transaction_reference, @reason_id,@costed_flag,@actual_cost, @transaction_cost,@new_cost,@currency_code, @currency_conversion_rate,@currency_conversion_type,@currency_conversion_date, @quantity_adjusted,@employee_code,@trx_source_line_id, @trx_source_delivery_id,@cycle_count_id,@transfer_transaction_id, @transaction_set_id,@rcv_transaction_id,@move_transaction_id, @vendor_lot_number,@transfer_organization_id,@transfer_subinventory, @transfer_locator_id,@shipment_number,@attribute1, @attribute2,@attribute3,@attribute4, @attribute5,@movement_id,@task_id, @to_task_id,@secondary_uom_code,@secondary_transaction_quantity, @catalog_item_id, @remarks)"; return(db.Insert(sql, Take(model))); }
private bool GenerateTransaction(ItemOnhandModel line, double qty) { MaterialIssueModel Head = _view.head; ItemTransactionModel trans = new ItemTransactionModel(); trans.InventoryItemId = line.InventoryItemId; trans.SubinventoryCode = line.SubinventoryCode; trans.TransactionSourceName = "MATERIAL ISSUE"; trans.TransactionQuantity = qty * -1; trans.TransactionUom = string.IsNullOrEmpty(line.TransactionUomCode) ? "PCS" : line.TransactionUomCode; trans.PrimaryQuantity = qty * -1; trans.TransactionDate = Head.IssueDate; trans.TransactionReference = Head.IssueNumber; //trans.TransactionSourceName trans.TransactionSourceId = line.OnhandQuantitiesId; //Only Materail Issue using ONHAND_QUANTITIES_ID trans.CostedFlag = "Y"; trans.ActualCost = line.TransactionUnitCost; trans.TransactionCost = line.TransactionUnitCost; trans.Attribute1 = string.IsNullOrEmpty(line.IssueProjectNum) ? line.ProjectNum : line.IssueProjectNum; trans.Attribute2 = string.IsNullOrEmpty(line.IssueCostCode) ? line.ProjectCostCode : line.IssueCostCode; trans.Attribute3 = line.LotNumber; trans.Attribute4 = line.BomNo; int id = _repoTrans.InsertTrans(trans); ItemOnhandModel onhand = line; //if (onhand != null) //{ double trxQty = onhand.PrimaryTransactionQuantity - qty; onhand.PrimaryTransactionQuantity = trxQty; onhand.TransactionQuantity = trxQty; onhand.UpdateTransactionId = id; onhand.TransactionUnitCost = trans.ActualCost; _repoOnhand.UpdateOnhand(onhand); //} return(true); }
internal static ItemTransactionEntity ToDataTransferObject(ItemTransactionModel model) { return(model == null ? null : AutoMapper.Mapper.Map <ItemTransactionModel, ItemTransactionEntity>(model)); }
private object[] Take(ItemTransactionModel model) { return(new object[] { "@transaction_id", model.TransactionId, "@last_update_date", model.LastUpdateDate, "@last_updated_by", model.LastUpdatedBy, "@creation_date", model.CreationDate, "@created_by", model.CreatedBy, "@last_update_login", model.LastUpdateLogin, "@request_id", model.RequestId, "@inventory_item_id", model.InventoryItemId, "@revision", model.Revision, "@organization_id", model.OrganizationId, "@subinventory_code", model.SubinventoryCode, "@locator_id", model.LocatorId, "@transaction_type_id", model.TransactionTypeId, "@transaction_source_type_id", model.TransactionSourceTypeId, "@transaction_source_id", model.TransactionSourceId, "@transaction_source_name", model.TransactionSourceName, "@transaction_quantity", model.TransactionQuantity, "@transaction_uom", model.TransactionUom, "@primary_quantity", model.PrimaryQuantity, "@transaction_date", model.TransactionDate, "@transaction_reference", model.TransactionReference, "@reason_id", model.ReasonId, "@costed_flag", model.CostedFlag, "@actual_cost", model.ActualCost, "@transaction_cost", model.TransactionCost, "@new_cost", model.NewCost, "@currency_code", model.CurrencyCode, "@currency_conversion_rate", model.CurrencyConversionRate, "@currency_conversion_type", model.CurrencyConversionType, "@currency_conversion_date", model.CurrencyConversionDate, "@quantity_adjusted", model.QuantityAdjusted, "@employee_code", model.EmployeeCode, "@trx_source_line_id", model.TrxSourceLineId, "@trx_source_delivery_id", model.TrxSourceDeliveryId, "@cycle_count_id", model.CycleCountId, "@transfer_transaction_id", model.TransferTransactionId, "@transaction_set_id", model.TransactionSetId, "@rcv_transaction_id", model.RcvTransactionId, "@move_transaction_id", model.MoveTransactionId, "@vendor_lot_number", model.VendorLotNumber, "@transfer_organization_id", model.TransferOrganizationId, "@transfer_subinventory", model.TransferSubinventory, "@transfer_locator_id", model.TransferLocatorId, "@shipment_number", model.ShipmentNumber, "@attribute1", model.Attribute1, "@attribute2", model.Attribute2, "@attribute3", model.Attribute3, "@attribute4", model.Attribute4, "@attribute5", model.Attribute5, "@movement_id", model.MovementId, "@task_id", model.TaskId, "@to_task_id", model.ToTaskId, "@secondary_uom_code", model.SecondaryUomCode, "@secondary_transaction_quantity", model.SecondaryTransactionQuantity, "@catalog_item_id", model.CatalogItemId, "@remarks", model.Remarks }); }
public void Update(ItemTransactionModel model) { string sql = @"update mtl_material_transactions set last_update_date = @last_update_date, last_updated_by = @last_updated_by, last_update_login = @last_update_login, request_id = @request_id, inventory_item_id = @inventory_item_id, revision = @revision, organization_id = @organization_id, subinventory_code = @subinventory_code, locator_id = @locator_id, transaction_type_id = @transaction_type_id, transaction_source_type_id = @transaction_source_type_id, transaction_source_id = @transaction_source_id, transaction_source_name = @transaction_source_name, transaction_quantity = @transaction_quantity, transaction_uom = @transaction_uom, primary_quantity = @primary_quantity, transaction_date = @transaction_date, transaction_reference = @transaction_reference, reason_id = @reason_id, costed_flag = @costed_flag, actual_cost = @actual_cost, transaction_cost = @transaction_cost, new_cost = @new_cost, currency_code = @currency_code, currency_conversion_rate = @currency_conversion_rate, currency_conversion_type = @currency_conversion_type, currency_conversion_date = @currency_conversion_date, quantity_adjusted = @quantity_adjusted, employee_code = @employee_code, trx_source_line_id = @trx_source_line_id, trx_source_delivery_id = @trx_source_delivery_id, cycle_count_id = @cycle_count_id, transfer_transaction_id = @transfer_transaction_id, transaction_set_id = @transaction_set_id, rcv_transaction_id = @rcv_transaction_id, move_transaction_id = @move_transaction_id, vendor_lot_number = @vendor_lot_number, transfer_organization_id = @transfer_organization_id, transfer_subinventory = @transfer_subinventory, transfer_locator_id = @transfer_locator_id, shipment_number = @shipment_number, attribute1 = @attribute1, attribute2 = @attribute2, attribute3 = @attribute3, attribute4 = @attribute4, attribute5 = @attribute5, movement_id = @movement_id, task_id = @task_id, to_task_id = @to_task_id, secondary_uom_code = @secondary_uom_code, secondary_transaction_quantity = @secondary_transaction_quantity, catalog_item_id = @catalog_item_id, remarks = @remarks where transaction_id = @transaction_id"; db.Update(sql, Take(model)); }
private bool GenerateTransaction(IEnumerable <POReceiptLineModel> lines) { bool result = true; try { POReceiptHeaderModel recHead = _view.headSeleted; foreach (var recLine in lines) { ItemTransactionModel trans = new ItemTransactionModel(); trans.InventoryItemId = recLine.ItemId; trans.SubinventoryCode = recLine.ToSubinventory; trans.TransactionSourceName = "PO RECEIVING"; trans.TransactionQuantity = recLine.QuantityShipped; trans.TransactionUom = string.IsNullOrEmpty(recLine.UnitOfMeasure) ? "PCS" : recLine.UnitOfMeasure; trans.PrimaryQuantity = recLine.QuantityShipped; trans.TransactionDate = recHead.ReceiptDate; trans.TransactionReference = recHead.ReceiptNum; trans.CostedFlag = "Y"; trans.ActualCost = recLine.ShipmentUnitPrice; trans.TransactionCost = recLine.ShipmentUnitPrice; trans.Attribute1 = recLine.ProjectNum; trans.Attribute2 = recLine.CostCode; trans.Attribute3 = recLine.LotNumber; trans.Attribute4 = recLine.Attribute1; //BOM No. trans.TrxSourceLineId = recLine.ReceiptLineId; trans.TransferSubinventory = recLine.ToSubinventory; //Update po_line_id to task_id For PO line is Job Process. if (recLine.QcRequireInspcFlag) { trans.TaskId = recLine.PoLineId; } int id = _repoTrans.InsertTrans(trans); ItemOnhandModel onhand = _repoOnhand.GetDupplicated(recLine.ItemId , recLine.ToSubinventory , recLine.LotNumber , string.IsNullOrEmpty(recLine.Attribute1) ? "999" : recLine.Attribute1 //If BOM No. is null default '999' ); if (onhand != null) { double trxQty = onhand.PrimaryTransactionQuantity + recLine.QuantityShipped; onhand.PrimaryTransactionQuantity = trxQty; onhand.TransactionQuantity = trxQty; onhand.UpdateTransactionId = id; onhand.TransactionUnitCost = recLine.ShipmentUnitPrice; _repoOnhand.UpdateOnhand(onhand); } else { onhand = new ItemOnhandModel(); onhand.InventoryItemId = recLine.ItemId; onhand.DateReceived = _view.headSeleted.RequestDate; onhand.PrimaryTransactionQuantity = recLine.QuantityShipped; onhand.TransactionQuantity = recLine.QuantityShipped; onhand.SubinventoryCode = recLine.ToSubinventory; onhand.LotNumber = recLine.LotNumber; onhand.TransactionUomCode = recLine.UnitOfMeasure; onhand.CreateTransactionId = id; onhand.UpdateTransactionId = id; onhand.BomNo = string.IsNullOrEmpty(recLine.Attribute1) ? "999" : recLine.Attribute1; //If BOM No. is null default '999' onhand.TransactionUnitCost = recLine.ShipmentUnitPrice; onhand.ProjectId = recLine.ProjectId; onhand.ProjectNum = recLine.ProjectNum; onhand.ProjectCostCode = recLine.CostCode; //Update po_line_id to task_id For PO line is Job Process. if (recLine.QcRequireInspcFlag) { onhand.TaskId = recLine.PoLineId; } int onhandId = _repoOnhand.InsertOnhand(onhand); } } result = true; } catch (Exception ex) { MessageBox.Show("Received process error : ." + Environment.NewLine + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); result = false; } return(result); }
public void DeleteTrans(ItemTransactionModel model) { factory.ItemTransactionDao.Delete(model); }
public void UpdateTrans(ItemTransactionModel model) { model.LastUpdateDate = DateTime.Now; factory.ItemTransactionDao.Update(model); }
private void GenerateTransaction(ItemTransactionModel line, double qty, string returnNumber, DateTime transactionDate) { //MaterialIssueModel Head = _view.head; ItemTransactionModel trans = new ItemTransactionModel(); trans.InventoryItemId = line.InventoryItemId; trans.SubinventoryCode = line.TransferSubinventory; //Source Subinventory trans.TransferSubinventory = line.TransferSubinventory; trans.TransactionSourceName = "MATERIAL RETURN"; trans.TransactionQuantity = Math.Abs(qty); trans.TransactionUom = line.TransactionUom; trans.PrimaryQuantity = Math.Abs(qty); trans.TransactionDate = transactionDate; trans.TransactionReference = returnNumber; //trans.TransactionSourceName trans.TransactionSourceId = line.TransactionId; //Only Materail Return using transaction_id trans.CostedFlag = "Y"; trans.ActualCost = line.ActualCost; trans.TransactionCost = line.TransactionCost; trans.Attribute1 = line.Attribute1; trans.Attribute2 = line.Attribute2; trans.Attribute3 = line.Attribute3; trans.Attribute4 = line.Attribute4; line.QuantityAdjusted = line.QuantityAdjusted + qty; line.TransactionQuantity = line.TransactionQuantity * -1; line.LastUpdateDate = DateTime.Now; line.LastUpdatedBy = _view.EpiSession.User.Id; _repoTrans.UpdateTrans(line); int id = _repoTrans.InsertTrans(trans); ItemOnhandModel onhand = _repoOnhand.GetDupplicated(line.InventoryItemId , line.TransferSubinventory , line.Attribute3 , string.IsNullOrEmpty(line.Attribute4) ? "999" : line.Attribute4 /*Bom Number*/ ); if (onhand != null) { double trxQty = onhand.PrimaryTransactionQuantity + qty; onhand.PrimaryTransactionQuantity = trxQty; onhand.TransactionQuantity = trxQty; onhand.UpdateTransactionId = id; onhand.TransactionUnitCost = trans.ActualCost; _repoOnhand.UpdateOnhand(onhand); } else { onhand = new ItemOnhandModel(); onhand.InventoryItemId = line.InventoryItemId; onhand.DateReceived = DateTime.Now; onhand.PrimaryTransactionQuantity = qty; onhand.TransactionQuantity = qty; onhand.SubinventoryCode = line.TransferSubinventory; onhand.LotNumber = line.Attribute3; onhand.TransactionUomCode = line.TransactionUom; onhand.CreateTransactionId = id; onhand.UpdateTransactionId = id; onhand.BomNo = string.IsNullOrEmpty(line.Attribute4) ? "999" : line.Attribute4; onhand.TransactionUnitCost = trans.ActualCost; //onhand.ProjectId = ; onhand.ProjectNum = line.Attribute1; onhand.ProjectCostCode = line.Attribute2; int onhandId = _repoOnhand.InsertOnhand(onhand); } }
private void AddLine_Click(object sender, EventArgs e) { MetroGrid grid = sender as MetroGrid; List <ItemTransactionModel> lines = new List <ItemTransactionModel>(); //grid.SelectedRows.DataBoundItem; List <ItemTransactionModel> trans = _view.materialsTrans.ToList(); string projectNumber = string.Empty; using (ProjectListForm frm = new ProjectListForm()) { frm.ShowDialog(); if (frm.projSelected != null) { projectNumber = frm.projSelected.FirstOrDefault().ProjectNum; } } if (string.IsNullOrEmpty(projectNumber)) { MessageBox.Show("Please select Subinventory.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (_view.materialsReturn != null) { lines = _view.materialsReturn.ToList(); } List <int> trxIds = new List <int>(); foreach (DataGridViewRow item in grid.Rows) { try { if ((bool)item.Cells[0].Value) { ItemTransactionModel line = (ItemTransactionModel)item.DataBoundItem; line.TransactionQuantity = line.TransactionQuantity; line.TransferSubinventory = projectNumber; lines.Add(line); trxIds.Add(line.TransactionId); //trans.RemoveAll(x => x.TransactionId == line.TransactionId); } } catch { } } if (lines.Count > 0) { _view.materialsReturn = lines; _view.bindingReturnLines.DataSource = _view.materialsReturn; _view.BindingReturns(); //_view.BindingCache(_view.onhandsCache.ToList()); _view.materialsTrans = trans.Where(x => !trxIds.Contains(x.TransactionId)).ToList(); _view.bindingMaterialsTrans.DataSource = _view.materialsTrans; //_view.BindingData(_view.onhands.ToList()); } else { MessageBox.Show("Please select rows.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } }