private static void SubmitBranchIssues(int hcmisOrderID) { var tsvc = new ServiceOrderClient(); var issuedList = new Collection <Issuance>(); BLL.OrderDetail hcmisOrderDetail = new OrderDetail(); hcmisOrderDetail.LoadOrderDetailsWithIssueAndPicklistForPLITS(hcmisOrderID); while (!hcmisOrderDetail.EOF) { var issuance = new Issuance { DateIssued = Convert.ToDateTime(hcmisOrderDetail.GetColumn("EurDate")), ApprovedOrderDetailId = Convert.ToInt32(hcmisOrderDetail.GetColumn("HACTOrderDetailID")), QuantityIssued = Convert.ToInt32(hcmisOrderDetail.GetColumn("NoOfPack")) }; issuedList.Add(issuance); hcmisOrderDetail.MoveNext(); } var validationmessage = tsvc.SubmitBranchIssues(issuedList, PlitsUserName, PlitsPassword); XtraMessageBox.Show(validationmessage[0].Message, "Issuance", MessageBoxButtons.OK); }
private void BindMainOrderGrid() { // Given some items are already selected on the first step of the order process (CDR Request) // I doubt that // Bind the second grid with the selected items for the quantity to be filled by the HCMIS Operator if (OrderID == null) { BLL.OrderDetail or = new BLL.OrderDetail(); or.LoadByPrimaryKey(-1); _dvItemTable = new DataView(new DataTable()); _dvItemTable.Table.Columns.Add("LocationID"); _dvItemTable.Table.Columns.Add("Packs"); _dvItemTable.Table.Columns.Add("QtyPerPack"); _dvItemTable.Table.Columns.Add("UnitPrice"); _dvItemTable.Table.Columns.Add("ReceiveDocID"); _dvItemTable.Table.Columns.Add("Cost"); _dvItemTable.Table.Columns.Add("FullItemName"); _dvItemTable.Table.Columns.Add("Manufacturer"); _dvItemTable.Table.Columns.Add("ManufacturerID"); _dvItemTable.Table.Columns.Add("Unit"); _dvItemTable.Table.Columns.Add("Balance"); _dvItemTable.Table.Columns.Add("Location"); _dvItemTable.Table.Columns.Add("Supplier"); _dvItemTable.Table.Columns.Add("account"); _dvItemTable.Table.Columns.Add("BatchNo"); _dvItemTable.Table.Columns.Add("ExpDate"); _dvItemTable.Table.Columns.Add("ItemID"); _dvItemTable.Table.Columns.Add("UnitID"); _dvItemTable.Table.Columns.Add("ID"); _dvItemTable.Table.Columns.Add("StockCode"); _dvItemTable.Table.Columns.Add("StoreID"); _dvItemTable.Table.Columns.Add("ApprovedPacks"); _dvItemTable.Table.Columns.Add("ReceivingLocationID"); } orderGrid.DataSource = _dvItemTable; dvPickList = new DataTable(); dvPickList.Columns.Add("BatchNo"); dvPickList.Columns.Add("CalculatedCost"); dvPickList.Columns.Add("ExpDate"); dvPickList.Columns.Add("AccountName"); dvPickList.Columns.Add("FullItemName"); dvPickList.Columns.Add("ManufacturerName"); dvPickList.Columns.Add("Pack"); dvPickList.Columns.Add("QtyInSKU"); dvPickList.Columns.Add("PalletLocation"); dvPickList.Columns.Add("PalletNo"); dvPickList.Columns.Add("UnitPrice"); dvPickList.Columns.Add("LineNum"); dvPickList.Columns.Add("Unit"); dvPickList.Columns.Add("WarehouseName"); dvPickList.Columns.Add("PrintedSTVNumber"); dvPickList.Columns.Add("PhysicalStoreName"); dvPickList.Columns.Add("PhysicalStoreTypeName"); dvPickList.Columns.Add("ActivityConcat"); dvPickList.Columns.Add("StockCode"); }
public Domain.Request FindSingle(int requestID) { var request = new Domain.Request(); var order = new Order(); order.LoadByPrimaryKey(requestID); request.RequestID = order.ID; request.OrderNumber = order.RefNo; request.LetterNumber = !order.IsColumnNull("LetterNo") ? order.LetterNo : ""; request.RequestedDate = order.EurDate; request.Client = _clientRepository.FindSingle(order.RequestedBy); request.Mode = _modeService.GetEnum(order.FromStore); request.PaymentTerm = _paymentTermService.FindSingle(order.PaymentTypeID); request.OrderStatus = _orderStatusService.GetEnum(order.OrderStatusID); var orderDetail = new OrderDetail(); orderDetail.LoadAllByOrderID(requestID); orderDetail.Rewind(); request.RequestDetails = new Collection<Domain.RequestDetail>(); while (!orderDetail.EOF) { var item = _itemRepository.FindSingle(orderDetail.ItemID); var unitOfIssue = _unitOfIssueRepository.FindSingle(orderDetail.UnitID); var requestDetail = new Domain.RequestDetail() { RequestDetailId = orderDetail.ID, Item = item, Unit = unitOfIssue, RequestedQuantity = orderDetail.Pack, ApprovedQuantity = !orderDetail.IsColumnNull("ApprovedQuantity") ? orderDetail.ApprovedQuantity : orderDetail.Pack, IsFirstLoad = orderDetail.IsColumnNull("ApprovedQuantity"), ActivityGroup = orderDetail.IsColumnNull(OrderDetail.ColumnNames.StoreID)?null:_activityRepository.FindSingle(orderDetail.StoreID,orderDetail.DeliveryNote), ExpiryDate = !orderDetail.IsColumnNull("PreferredExpiryDate") ? orderDetail.PreferredExpiryDate : (DateTime?)null, Manufacturer = !orderDetail.IsColumnNull("PreferredManufacturerID") ? _manufacturerRepository.FindSingle( orderDetail.PreferredManufacturerID) : null, physicalStore = !orderDetail.IsColumnNull("PreferredPhysicalStoreID") ? _physicalStoreRepository.FindSingle( orderDetail.PreferredPhysicalStoreID) : null }; request.RequestDetails.Add(requestDetail); orderDetail.MoveNext(); } return request; }
private void gridOrderListView_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e) { DataRow dr = gridOrderListView.GetFocusedDataRow(); if (dr != null) { int OrderID = Convert.ToInt32(dr["ID"]); OrderDetail order = new OrderDetail(); order.LoadAllByOrderID(OrderID); gridOrderDetail.DataSource = order.DefaultView; } }
private HCMIS.Desktop.Reports.StockOut StockOutReport(int orderID) { var stockedOutReport = new HCMIS.Desktop.Reports.StockOut(); stockedOutReport.HubName.Text = GeneralInfo.Current.HospitalName; stockedOutReport.StockOutExplanation.Text = string.Format("The item/s listed below were stocked-out at the time the request (letter {2} by {1}) was made on {0}", EthiopianDate.EthiopianDate.GregorianToEthiopian(ApprovalOrder.Date), ApprovalOrder.GetRequestedBy(), ApprovalOrder.LetterNo); stockedOutReport.PreparedBy.Text = CurrentContext.LoggedInUserName; stockedOutReport.PrintedOn.Text = EthiopianDate.EthiopianDate.Now.ToDateString(); stockedOutReport.DataSource = OrderDetail.GetStockOutReport(orderID); return(stockedOutReport); }
private void tabControlOrderDetail_SelectedPageChanged(object sender, DevExpress.XtraTab.TabPageChangedEventArgs e) { if (tabControlOrderDetail.SelectedTabPage == tabFacility && _isFirstTimeLoad) { var facilityId = ApprovalOrder.RequestedBy; var orderdetail = new OrderDetail(); orderdetail.LoadAllByOrderID(_orderID); var facilityhistory = orderdetail.GetLastOrderDetailByFacility(_orderID, facilityId); gridOrderDetailForFacility.DataSource = facilityhistory; _isFirstTimeLoad = false; } btnApproveOrder.Enabled = tabControlOrderDetail.SelectedTabPage == tabGeneral && this.HasPermission("Approve"); }
private bool IsApprovalValid() { //Let's see if there are rows with identical preferrence BLL.OrderDetail validatedOrder = new OrderDetail(); validatedOrder.ValidateOrderDetailForIdenticalPreference(_orderID); if (validatedOrder.RowCount > 0) { XtraMessageBox.Show( string.Format( "The item {0} has a split entries with the same preference. Please correct that to approve the order.", validatedOrder.GetColumn("FullItemName").ToString())); return(false); } return(true); }
public void Save(Domain.Request _request,int userID, Domain.OrderStatus orderStatus = Domain.OrderStatus.Submitted) { var order = new Order(); order.LoadByPrimaryKey(_request.RequestID); var dborderStatus = new BLL.OrderStatus(); dborderStatus.LoadByCode(EnumService<Domain.OrderStatus>.GetCode(orderStatus)); order.ChangeStatus(dborderStatus.ID,CurrentContext.UserId); order.ApprovedBy = userID; order.ApprovedDate = DateTimeHelper.ServerDateTime; var orderDetail = new OrderDetail(); orderDetail.LoadAllByOrderID(_request.RequestID); while (!orderDetail.EOF) { var requestDetail = _request.RequestDetails.SingleOrDefault(r => r.RequestDetailId == orderDetail.ID); if(requestDetail== null) { orderDetail.MarkAsDeleted(); } else { //Set Activity if (requestDetail.ActivityGroup != null) { orderDetail.StoreID = requestDetail.ActivityGroup.Activity.ActivityID; orderDetail.DeliveryNote = requestDetail.ActivityGroup.IsDeliveryNote; } else { orderDetail.SetColumnNull("StoreID"); } //Set Manufacturer if (requestDetail.Manufacturer != null) { orderDetail.PreferredManufacturerID = requestDetail.Manufacturer.ManufacturerID; } else { orderDetail.SetColumnNull("PreferredManufacturerID"); } //Set PhysicalStore if (requestDetail.physicalStore != null) { orderDetail.PreferredPhysicalStoreID = requestDetail.physicalStore.PhysicalStoreID; } else { orderDetail.SetColumnNull("PreferredPhysicalStoreID"); } //Set ExpiryDate if (requestDetail.ExpiryDate.HasValue) { orderDetail.PreferredExpiryDate = requestDetail.ExpiryDate.Value; } else { orderDetail.SetColumnNull("PreferredExpiryDate"); } orderDetail.ApprovedQuantity = requestDetail.ApprovedQuantity; orderDetail.StockedOut = requestDetail.StockedOut; } orderDetail.MoveNext(); } foreach (var requestDetail in _request.RequestDetails.Where(r => r.RequestDetailId == 0).ToList()) { orderDetail.AddNew(); orderDetail.ItemID = requestDetail.Item.ItemID; orderDetail.UnitID = requestDetail.Unit.UnitID; orderDetail.Pack = requestDetail.RequestedQuantity; orderDetail.OrderID = order.ID; orderDetail.QtyPerPack = 1; orderDetail.Quantity = requestDetail.RequestedQuantity; orderDetail.ApprovedQuantity = requestDetail.ApprovedQuantity; orderDetail.StockedOut = requestDetail.StockedOut; if (requestDetail.ActivityGroup != null) { orderDetail.StoreID = requestDetail.ActivityGroup.Activity.ActivityID; orderDetail.DeliveryNote = requestDetail.ActivityGroup.IsDeliveryNote; } else { orderDetail.SetColumnNull("StoreID"); } //Set Manufacturer if (requestDetail.Manufacturer != null) { orderDetail.PreferredManufacturerID = requestDetail.Manufacturer.ManufacturerID; } else { orderDetail.SetColumnNull("PreferredManufacturerID"); } //Set PhysicalStore if (requestDetail.physicalStore != null) { orderDetail.PreferredPhysicalStoreID = requestDetail.physicalStore.PhysicalStoreID; } else { orderDetail.SetColumnNull("PreferredPhysicalStoreID"); } //Set ExpiryDate if (requestDetail.ExpiryDate.HasValue) { orderDetail.PreferredExpiryDate = requestDetail.ExpiryDate.Value; } else { orderDetail.SetColumnNull("PreferredExpiryDate"); } } order.Save(); orderDetail.Save(); }
private void OnApprovedOrderRowClicked(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { var gv = (GridView)sender; var dr = gv.GetFocusedDataRow(); var or = new BLL.Order(); _orderID = Convert.ToInt32(gv.GetFocusedDataRow()["ID"].ToString()); order.LoadByPrimaryKey(_orderID); // populate the general order variables txtPickListFromStore.Text = order.GetFromStore(); lblMode.Text = order.GetFromStore(); txtPickListRequestedBy.Text = order.GetFilledBy(); if (!order.IsColumnNull("RequestedBy")) { var ins = new Institution(); ins.LoadByPrimaryKey(order.RequestedBy); var ownership = new BLL.OwnershipType(); ownership.LoadByPrimaryKey(ins.Ownership); lblOwnership.Text = ownership.Name; lblInstitutionType.Text = ins.InstitutionTypeName; lblFacility.Text = ins.Name; lblWoreda.Text = ins.WoredaName; lblZone.Text = ins.ZoneName; lblRegion.Text = ins.RegionName; lblLetterNum.Text = String.IsNullOrEmpty(order.LetterNo) ? "-" : order.LetterNo; } else { lblFacility.Text = lblWoreda.Text = lblZone.Text = lblRegion.Text = lblOwnership.Text = "";// lblType.Text = ""; } int length = order.GetRequestedBy().Length; string s = ""; HeaderLayoutGroup.Text = order.GetRequestedBy() + s.PadRight(150 - length) + "Order Number:" + order.RefNo; txtPickListOrderNumber.Text = order.RefNo; lblOrderNum.Text = order.RefNo; txtPickListApprovedBy.Text = order.GetApprovedBy(); lblApprovedBy.Text = order.GetApprovedBy(); var orderDetail = new OrderDetail(); orderDetail.LoadAllByOrderID(order.ID); if (!orderDetail.IsColumnNull("StoreID")) { var activity = new Activity(); activity.LoadByPrimaryKey(orderDetail.StoreID); lblMode.Text = activity.ModeName; } lblOrderDate.Text = order.Date.ToShortDateString(); var us = new BLL.User(); us.LoadByPrimaryKey(order.FilledBy); lblFilledBy.Text = us.FirstName; lblIssueStatus.Text = (string)dr["OrderStatus"] ?? "-"; lblIssueType.Text = (string)dr["Description"] ?? "-"; var paymentType = new BLL.PaymentType(); paymentType.LoadByPrimaryKey(order.PaymentTypeID); lblPaymentType.Text = paymentType.Name; if (order.OrderStatusID == OrderStatus.Constant.ORDER_APPROVED) { progressBarControl.Properties.Maximum = order.CountOfDetailItems(); progressBarControl.Properties.DisplayFormat.FormatString = "{0: #,##0}" + string.Format(" of {0}", progressBarControl.Properties.Maximum); progressBarControl.Properties.DisplayFormat.FormatType = FormatType.Custom; progressBarControl.EditValue = 0; this.Enabled = false; progressBarControl.Visible = true; bgWorker.RunWorkerAsync(_orderID); } }
private void tabControlOrderDetail_SelectedPageChanged(object sender, DevExpress.XtraTab.TabPageChangedEventArgs e) { if(tabControlOrderDetail.SelectedTabPage == tabFacility && _isFirstTimeLoad) { var facilityId = ApprovalOrder.RequestedBy; var orderdetail = new OrderDetail(); orderdetail.LoadAllByOrderID(_orderID); var facilityhistory = orderdetail.GetLastOrderDetailByFacility(_orderID, facilityId); gridOrderDetailForFacility.DataSource = facilityhistory; _isFirstTimeLoad = false; } btnApproveOrder.Enabled = tabControlOrderDetail.SelectedTabPage == tabGeneral && this.HasPermission("Approve"); }
/// <summary> /// The code supports manufacturer preference here too but we choose not to prefer manufacturers when looking into the stores. /// </summary> /// <param name="userID"></param> /// <param name="orderDetailID"></param> /// <param name="pricedUnpricedBoth"></param> /// <param name="bal"> </param> /// <param name="markStockoutBit"> </param> /// <param name="usableStock"> </param> /// <param name="approved"> </param> public decimal LoadOptionsForOrderDetail(int userID, int orderDetailID, PriceSettings pricedUnpricedBoth, Balance bal, bool markStockoutBit, out decimal usableStock, out decimal approved) { decimal avQuantity = 0; BLL.OrderDetail orderDetail = new OrderDetail(); orderDetail.LoadByPrimaryKey(orderDetailID); BLL.Order order = new Order(); order.LoadByPrimaryKey(orderDetail.OrderID); Institution ru = new Institution(); ru.LoadByPrimaryKey(order.RequestedBy); int month = EthiopianDate.EthiopianDate.Now.Month; int year = EthiopianDate.EthiopianDate.Now.Year; decimal availableQty = 0; usableStock = 0; approved = 0; int?manufacturerPrefrence = null, unitID = null; if (!orderDetail.IsColumnNull("PreferredManufacturerID")) { manufacturerPrefrence = orderDetail.PreferredManufacturerID; } DateTime?expPreferrence = null; if (!orderDetail.IsColumnNull("PreferredExpiryDate")) { expPreferrence = orderDetail.PreferredExpiryDate; } int?preferredPhysicalStoreID = null; if (!orderDetail.IsColumnNull("PreferredPhysicalStoreID")) { preferredPhysicalStoreID = orderDetail.PreferredPhysicalStoreID; } //-------------------------------------------------------------------------- //manufacturerPrefrence = null; //We are overriding the manufacturer preference. //expPreferrence = null; //-------------------------------------------------------------------------- if (!orderDetail.IsColumnNull("UnitID")) { unitID = orderDetail.UnitID; } BLL.UserActivity userStore = new UserActivity(); // Definitely a danger zone userStore.LoadByUserIDAndStoreType(userID, order.FromStore, orderDetail.ItemID, unitID.Value); while (!userStore.EOF) { var activity = new Activity(); activity.LoadByPrimaryKey(userStore.ActivityID); if (order.FromStore == Mode.Constants.RDF && !BLL.Settings.IsCenter && !BLL.Settings.PrivateCanGetFromMDGAndPBS && ru.Ownership == OwnershipType.Constants.Private && activity.IsSubsidized) { userStore.MoveNext(); continue; } // Load the Activity Selection that has PRiced Commodities. Balance balance = new Balance(); if (pricedUnpricedBoth == PriceSettings.PRICED_ONLY || pricedUnpricedBoth == PriceSettings.BOTH) { BLL.Order.MakeStockCalculations(userID, month, year, PriceSettings.PRICED_ONLY, orderDetail, userStore.ActivityID, orderDetail.ItemID, order, balance, unitID, manufacturerPrefrence, expPreferrence, preferredPhysicalStoreID, out usableStock, out approved, out availableQty, markStockoutBit); avQuantity += availableQty; if (availableQty > 0) { this.AddNew(); this.ID = userStore.ActivityID; this.Name = string.Format("{0} ({1})", activity.FullActivityName, availableQty.ToString("#,##0")); PrepareColumnsForApproval(); this.SetColumn("AvailableSKU", availableQty); this.SetColumn("IsDeliveryNote", false); this.SetColumn("TextID", string.Format("N{0}", this.ID)); } } // Load Activity Selections for Delivery Note Items. if (pricedUnpricedBoth == PriceSettings.DELIVERY_NOTE_ONLY || pricedUnpricedBoth == PriceSettings.BOTH) { BLL.Order.MakeStockCalculations(userID, month, year, PriceSettings.DELIVERY_NOTE_ONLY, orderDetail, userStore.ActivityID, orderDetail.ItemID, order, balance, unitID, manufacturerPrefrence, expPreferrence, preferredPhysicalStoreID, out usableStock, out approved, out availableQty, markStockoutBit); avQuantity += availableQty; if (availableQty > 0) { this.AddNew(); this.ID = userStore.ActivityID; //Just to give it a different ID so we know there is a change only. this.Name = string.Format("+-- {0} - Delivery Notes - ({1})", userStore.GetColumn("ActivityName"), availableQty.ToString("#,##0")); PrepareColumnsForApproval(); this.SetColumn("AvailableSKU", availableQty); this.SetColumn("IsDeliveryNote", true); this.SetColumn("TextID", string.Format("D{0}", this.ID)); } } userStore.MoveNext(); } return(avQuantity); }
// Submit Branch and Facility Issues private static void SubmitFacilityIssues(int hcmisOrderID) { var tsvc = new ServiceOrderClient(); var issuedList = new Collection<Issuance>(); BLL.OrderDetail hcmisOrderDetail = new OrderDetail(); hcmisOrderDetail.LoadOrderDetailsWithIssueAndPicklistForPLITS(hcmisOrderID); while (!hcmisOrderDetail.EOF) { var issuance = new Issuance { DateIssued = Convert.ToDateTime(hcmisOrderDetail.GetColumn("EurDate")), ApprovedOrderDetailId = Convert.ToInt32(hcmisOrderDetail.GetColumn("HACTOrderDetailID")), QuantityIssued = Convert.ToInt32(hcmisOrderDetail.GetColumn("NoOfPack")) }; issuedList.Add(issuance); hcmisOrderDetail.MoveNext(); } var validationmessage = tsvc.SubmitFacilityIssues(GetBranchID(), issuedList, PlitsUserName, PlitsPassword); XtraMessageBox.Show(validationmessage[0].Message, "Issuance", MessageBoxButtons.OK); }
private bool IsApprovalValid() { //Let's see if there are rows with identical preferrence BLL.OrderDetail validatedOrder = new OrderDetail(); validatedOrder.ValidateOrderDetailForIdenticalPreference(_orderID); if (validatedOrder.RowCount > 0) { XtraMessageBox.Show( string.Format( "The item {0} has a split entries with the same preference. Please correct that to approve the order.", validatedOrder.GetColumn("FullItemName").ToString())); return false; } return true; }
private void OnApprovedOrderRowClicked(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { if (e != null && e.RowHandle < -1) return; var gv = (GridView)sender; var dr = gv.GetFocusedDataRow(); _orderID = Convert.ToInt32(dr["ID"].ToString()); order.LoadByPrimaryKey(_orderID); // populate the general order variables txtPickListFromStore.Text = order.GetFromStore(); lblMode.Text = order.GetFromStore() ?? "-"; txtPickListRequestedBy.Text = order.GetRequestedBy(); labelControl9.Text = order.GetRequestedBy() ?? "-"; var us = new BLL.User(); us.LoadByPrimaryKey(order.FilledBy); lblFilledBy.Text = us.FullName ?? "-"; string s = ""; lblLetterNum.Text = String.IsNullOrEmpty(order.LetterNo) ? "-" : order.LetterNo; var orderDetail = new OrderDetail(); orderDetail.LoadAllByOrderID(order.ID); var paymentType = new BLL.PaymentType(); paymentType.LoadByPrimaryKey(order.PaymentTypeID); if (!orderDetail.IsColumnNull("StoreID")) { var activity = new Activity(); activity.LoadByPrimaryKey(orderDetail.StoreID); lblMode.Text = activity.ModeName ?? "-"; } lblIssueStatus.Text = (string)dr["OrderStatus"] ?? "-"; lblIssueType.Text = (string)dr["Description"] ?? "-"; if (!order.IsColumnNull("RequestedBy")) { var ins = new Institution(); ins.LoadByPrimaryKey(order.RequestedBy); var ownership = new BLL.OwnershipType(); ownership.LoadByPrimaryKey(ins.Ownership); int length = ins.Name.Length; HeaderSection.Text = ins.Name + s.PadRight(150 - length) + "Order Number: " + order.RefNo; lblOwnership.Text = ownership.Name ?? "-"; lblZone.Text = ins.ZoneName ?? "-"; lblWoreda.Text = ins.WoredaName ?? "-"; lblRegion.Text = ins.RegionName ?? "-"; lblInstitutionType.Text = ins.InstitutionTypeName ?? "-"; } else { HeaderSection.Text =lblOwnership.Text = lblZone.Text =lblWoreda.Text =lblRegion.Text = lblInstitutionType.Text = "-"; } lblPaymentType.Text = paymentType.Name; lblOrderDate.Text = order.Date.ToShortDateString(); txtPickListOrderNumber.Text = order.RefNo; labelControl12.Text = order.RefNo; txtPickListApprovedBy.Text = order.GetApprovedBy(); labelControl13.Text = order.GetApprovedBy(); if (order.OrderStatusID == OrderStatus.Constant.PICK_LIST_GENERATED) { PickList pl = new PickList(); gridPickListDetail.DataSource = pl.GetPickListDetailsForOrder(_orderID); btnPrintAndSavePickList.Text = @"Confirm"; colPrice.FieldName = "Cost"; colSKU.FieldName = "Packs"; btnCancelPickList.Enabled = (BLL.Settings.UseNewUserManagement)? this.HasPermission("Cancel-Pick-List"):true; pl.LoadByOrderID(_orderID); if (!pl.IsColumnNull("PickedBy")) { us.LoadByPrimaryKey(pl.PickedBy); lblPicklistPrintedBy.Text = us.FullName; } else lblPicklistPrintedBy.Text = "-"; lblPicklistPrintedDate.Text = !pl.IsColumnNull("SavedDate") ? pl.SavedDate.ToShortDateString() : "-"; lblPicklistNo.Text = !pl.IsColumnNull("PrintedID") ? pl.PrintedID.ToString() : "-"; } //gridPickListView.EndSummaryUpdate(); }
private void SavePickListItems(object sender, EventArgs e) { BLL.Order ord = new BLL.Order(); BLL.Institution rus = new Institution(); ord.LoadByPrimaryKey(_orderID); if (_dvPickListMakeup != null) { if (ValidatePickList()) return; } // if the pick list has already been printed ... go ahead and pass it to the next level if (ord.OrderStatusID == OrderStatus.Constant.PICK_LIST_GENERATED) { OrderDetail oDetail = new OrderDetail(); oDetail.Where.OrderID.Value = ord.ID; oDetail.Query.Load(); ord.ChangeStatus(OrderStatus.Constant.PICK_LIST_CONFIRMED,CurrentContext.UserId); this.LogActivity("Confirm-Pick-List", ord.ID); BindApprovedOrders(); gridPickListDetail.DataSource = null; XtraMessageBox.Show("The Pick List has been Confirmed", "Confirmation", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } }
private bool ValidatePickList() { foreach (DataRowView drv in _dvPickListMakeup) { int itemID = Convert.ToInt32(drv["ItemID"]); int storeID = Convert.ToInt32(drv["StoreID"]); int unitID = Convert.ToInt32(drv["UnitID"]); int manufacturerID = Convert.ToInt32(drv["ManufacturerID"]); ReceiveDoc rd = new ReceiveDoc(); if (BLL.Settings.BlockWhenExpectingPriceChange && BLL.ReceiveDoc.DoesPriceNeedToBeChanged(storeID, itemID, unitID, manufacturerID) ) { OrderDetail odetail = new OrderDetail(); odetail.Where.ItemID.Value = itemID; odetail.Where.OrderID.Value = _orderID; odetail.Query.Load(); if (odetail.RowCount > 0) { if (odetail.ApprovedQuantity == 0) continue; } Item itm = new Item(); itm.LoadByPrimaryKey(itemID); XtraMessageBox.Show( string.Format("The item {0} cannot be issued because it is waiting for price change.", itm.FullItemName), "Price Pending", MessageBoxButtons.OK, MessageBoxIcon.Warning); return true; } } return false; }
private void SaveOrder() { var order = GenerateOrder(); var picklist = PickList.GeneratePickList(order.ID); int lineNo = 0; // This is a kind of initializing the data table. OrderDetail ord = new OrderDetail(); PickListDetail pkDetail = new PickListDetail(); DataView dv = orderGrid.DataSource as DataView; foreach (DataRowView r in dv) { if (r["ApprovedPacks"] != null && r["ApprovedPacks"] != DBNull.Value && r["ApprovedPacks"].ToString()!= "") if (Convert.ToInt32(r["ApprovedPacks"]) != 0) { lineNo = lineNo + 1; int itemID = Convert.ToInt32(r["ItemID"]); int unitID = Convert.ToInt32(r["UnitID"]); ord.AddNew(); ord.OrderID = order.ID; ord.ItemID = itemID; if (r["ApprovedPacks"] != DBNull.Value) { ord.Pack = Convert.ToInt32(r["ApprovedPacks"]); } if (r["QtyPerPack"] != DBNull.Value) { ord.QtyPerPack = Convert.ToInt32(r["QtyPerPack"]); } ord.Quantity = Convert.ToInt32(r["ApprovedPacks"]) * Convert.ToInt32(r["QtyPerPack"]); ord.ApprovedQuantity = Convert.ToInt32(r["ApprovedPacks"]) * Convert.ToInt32(r["QtyPerPack"]); ord.UnitID = unitID; ord.StoreID = Convert.ToInt32(lkAccountType.EditValue); ord.Save(); pkDetail.AddNew(); pkDetail.PickListID = picklist.ID; pkDetail.ItemID = itemID; pkDetail.PalletLocationID = Convert.ToInt32(r["LocationID"]); pkDetail.BatchNumber = r["BatchNo"].ToString(); if (r["ExpDate"] != DBNull.Value) pkDetail.ExpireDate = DateTime.Parse(r["ExpDate"].ToString()); pkDetail.StoreID = Convert.ToInt32(r["StoreID"]); pkDetail.UnitID = unitID; pkDetail.ReceiveDocID = Convert.ToInt32(r["ReceiveDocID"]); if (r["UnitPrice"] != DBNull.Value) { pkDetail.Cost = Convert.ToInt32(r["ApprovedPacks"]) * Convert.ToDouble(r["UnitPrice"]); pkDetail.UnitPrice = Convert.ToDouble(r["UnitPrice"]); } pkDetail.Packs = Convert.ToInt32(r["ApprovedPacks"]); pkDetail.QtyPerPack = Convert.ToInt32(r["QtyPerPack"]); pkDetail.QuantityInBU = Convert.ToInt32(r["ApprovedPacks"]) * Convert.ToInt32(r["QtyPerPack"]); pkDetail.StoreID = Convert.ToInt32(r["StoreID"]); pkDetail.ReceivePalletID = Convert.ToInt32(r["ReceivingLocationID"]); pkDetail.ManufacturerID = Convert.ToInt32(r["ManufacturerID"]); pkDetail.BoxLevel = 0; pkDetail.DeliveryNote = true; pkDetail.Save(); //To Print The Picklist //Then reserve Items ReceivePallet receivepallet = new ReceivePallet(); receivepallet.LoadByPrimaryKey(Convert.ToInt32(r["ReceivingLocationID"])); receivepallet.ReservedStock = receivepallet.ReservedStock + Convert.ToInt32(r["ApprovedPacks"]); receivepallet.Save(); DataRow drvpl = dvPickList.NewRow(); drvpl["FullItemName"] = r["FullItemName"]; drvpl["StockCode"] = r["StockCode"]; drvpl["BatchNo"] = r["BatchNo"]; if (r["ExpDate"] != DBNull.Value) drvpl["ExpDate"] = Convert.ToDateTime(r["ExpDate"]).ToString("MMM/yyyy"); else drvpl["ExpDate"] = DBNull.Value; drvpl["LineNum"] = lineNo + 1; drvpl["ManufacturerName"] = r["Manufacturer"]; drvpl["Pack"] = r["ApprovedPacks"]; drvpl["UnitPrice"] = r["UnitPrice"]; drvpl["Unit"] = r["Unit"]; drvpl["PalletLocation"] = r["Location"]; drvpl["QtyInSKU"] = Convert.ToInt32(r["ApprovedPacks"]); if (r["UnitPrice"] != DBNull.Value) drvpl["CalculatedCost"] = Convert.ToInt32(r["ApprovedPacks"]) * Convert.ToDouble(r["UnitPrice"]); PalletLocation palletLocation = new PalletLocation(); palletLocation.LoadByPrimaryKey(pkDetail.PalletLocationID); drvpl["WarehouseName"] = palletLocation.WarehouseName; drvpl["PhysicalStoreName"] = palletLocation.PhysicalStoreName; var activity = new Activity(); activity.LoadByPrimaryKey(pkDetail.StoreID); drvpl["ActivityConcat"] = activity.FullActivityName; drvpl["AccountName"] = activity.AccountName; dvPickList.Rows.Add(drvpl); } } if (lineNo == 0) throw new System.ArgumentException("Please review your list,you haven't approved any Quantity"); var plr = HCMIS.Desktop.Reports.WorkflowReportFactory.CreatePicklistReport(order, lkForHub.Text, dvPickList.DefaultView); plr.PrintDialog(); if (!BLL.Settings.IsCenter) { if (TransferTypeID == 3) { XtraMessageBox.Show("Your Store To Store Transfer will be Printed now", "Store To Store Transfer"); Transfer.Move(picklist.ID); HCMIS.Desktop.Reports.StoreTransferPrintOut STM = new HCMIS.Desktop.Reports.StoreTransferPrintOut(); STM.LoadByPickListID(picklist.ID); STM.PrintDialog(); } else if (TransferTypeID == 2) { XtraMessageBox.Show(ReceiveDoc.ReceiveFromAccountTransfer(picklist.ID, Convert.ToInt32(lkForHub.EditValue), CurrentContext.LoggedInUserName, CurrentContext.UserId)); } } else { XtraMessageBox.Show("Picklist Prepared!", "Successful", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
public void InsertOrderDetail(OrderDetail detail) { p.InsertOrderDetail(detail); }