private void btnAddManufacturer_Click(object sender, EventArgs e) { Dialogs.AddManufacturerForItem amfi = new HCMIS.Desktop.Dialogs.AddManufacturerForItem(_itemID); DialogResult dr = amfi.ShowDialog(); if (DialogResult.Yes ==dr) { int manufID = amfi.SelectedManufacturer; Manufacturer manufacturer = new Manufacturer(); manufacturer.LoadByPrimaryKey(manufID); BLL.ItemManufacturer imm = new BLL.ItemManufacturer(); imm.LoadManufacturerItemRelationsFor(_itemID, manufID); if (imm.RowCount > 0) { } else { imm.AddNew(); imm.ItemID = _itemID; imm.ManufacturerID = manufID; imm.BoxHeight = 1; imm.BoxLength = 1; imm.BoxWidth = 1; imm.PackageLevel = 0; imm.RecevingDefault = false; imm.QuantityPerLevel = 1; imm.Save(); } im.LoadManufacturersFor(_itemID); this.lstManufacturers.DataSource = im.DefaultView; } }
/// <summary> /// Gets the name of manufacturer /// </summary> /// <param name="manufacturerId">The manufacturer id.</param> /// <returns></returns> public static string GetName(int manufacturerId) { Manufacturer mfs = new Manufacturer(); mfs.LoadByPrimaryKey(manufacturerId); return(mfs.Name); }
private void LoadSTVDetails() { int documentID = Convert.ToInt32(grdViewReceivedSTVs.GetFocusedDataRow()["DocumentID"]); BLL.Document document = new Document(); document.LoadByPrimaryKey(documentID); DocumentExchange.Documents.XmlMappings.STV stv = DocumentExchange.Documents.XmlMappings.STV.Load(document.DocumentContent); //Clean up the receivedoc entry receiveDoc.FlushData(); STVNo = Convert.ToInt32(stv.DocumentNumber); lblDaysAgo.Text = string.Format("Printed: {0}", Helpers.DateTimeFunctions.GetDateSpan(stv.PrintedDate)); for (int i = 0; i < stv.DocumentDetails.Count; i++) { STVDetail detail = stv.DocumentDetails[i]; receiveDoc.AddNew(); //Add columns for display purposes and for storing temporary information if (!receiveDoc.DefaultView.ToTable().Columns.Contains("FullItemName")) { receiveDoc.AddColumn("FullItemName", typeof(string)); receiveDoc.AddColumn("UnitName", typeof(string)); receiveDoc.AddColumn("ManufacturerName", typeof(string)); receiveDoc.AddColumn("ActivityName", typeof(string)); receiveDoc.AddColumn("StockCode", typeof(string)); receiveDoc.AddColumn("PalletLocationID", typeof(int)); receiveDoc.AddColumn("GUID", typeof(string)); } //Fill in the data receiveDoc.ItemID = detail.ItemID; receiveDoc.UnitID = detail.UnitID; receiveDoc.StoreID = detail.ActivityID; receiveDoc.ManufacturerId = detail.ManufacturerID; receiveDoc.SetColumn("BatchNo", detail.BatchNumber); receiveDoc.SetColumn("ExpDate", detail.ExpiryDate); receiveDoc.SetColumn("GUID", Guid.NewGuid()); BLL.Item item = new Item(); item.LoadByPrimaryKey(detail.ItemID); receiveDoc.SetColumn("FullItemName", item.FullItemName); BLL.ItemUnit unit = new ItemUnit(); unit.LoadByPrimaryKey(detail.UnitID); receiveDoc.SetColumn("UnitName", unit.Text); receiveDoc.QtyPerPack = unit.QtyPerUnit; BLL.Manufacturer manufacturer = new Manufacturer(); manufacturer.LoadByPrimaryKey(detail.ManufacturerID); receiveDoc.SetColumn("ManufacturerName", manufacturer.Name); var activity = new Activity(); activity.LoadByPrimaryKey(detail.ActivityID); receiveDoc.SetColumn("ActivityName", activity.FullActivityName); receiveDoc.SetColumn("StockCode", item.StockCode); //Financial Info receiveDoc.InvoicedNoOfPack = detail.Quantity; receiveDoc.Margin = detail.Margin; receiveDoc.PricePerPack = detail.UnitPrice; } grdSTVDetails.DataSource = receiveDoc.DefaultView; }
/// <summary> /// Gets picked order detail for item (Used by the IssueLog) /// </summary> /// <param name="ordID"></param> /// <param name="storeid"></param> /// <param name="pricedItems">True - For Priced Items Only, False - For Delivery Notes Only</param> /// <returns></returns> public DataView GetPickedOrderDetailForOrder(int stvLogID, bool includeDeleted)//,bool pricedItems) { string query; // remove this line ... // check if this has changed the dn to stv conversion // (pld.DeliveryNote is null or pld.DeliveryNote = 0 or (pld.DeliveryNote=1 and pld.UnitPrice<>0)) and query = HCMIS.Repository.Queries.PickList.SelectGetPickedOrderDetailForOrder(stvLogID); if (includeDeleted) { query = HCMIS.Repository.Queries.PickList.SelectGetPickedOrderDetailForOrderIncludeDeleted(stvLogID); } this.LoadFromRawSql(query); // Add important columns this.DataTable.Columns.Add("SKUTOPICK", typeof(int)); this.DataTable.Columns.Add("SKUPICKED", typeof(int)); this.DataTable.Columns.Add("BUPICKED", typeof(int)); this.DataTable.Columns.Add("BoxSizeDisplay"); this.DataTable.Columns.Add("SKUBU", typeof(int)); this.DataTable.Columns.Add("IsManufacturerLocal", typeof(bool)); this.DataTable.Columns.Add("PrintedSTVNumber", typeof(string)); this.DataTable.Columns.Add("PhysicalStoreName", typeof(string)); this.DataTable.Columns.Add("PhysicalStoreTypeID", typeof(int)); this.DataTable.Columns.Add("PhysicalStoreTypeName", typeof(string)); ItemManufacturer im = new ItemManufacturer(); int i = 1; while (!this.EOF) { int packs = Convert.ToInt32(this.GetColumn("Packs")); int manufacturer = Convert.ToInt32(this.GetColumn("ManufacturerID")); Manufacturer m = new Manufacturer(); m.LoadByPrimaryKey(manufacturer); if (!m.IsColumnNull("CountryOfOrigin") && m.CountryOfOrigin == "Ethiopia") { this.SetColumn("IsManufacturerLocal", true); } else { this.SetColumn("IsManufacturerLocal", false); } int recPalletID = Convert.ToInt32(this.GetColumn("ReceivePalletID")); ReceivePallet rp = new ReceivePallet(); rp.LoadByPrimaryKey(recPalletID); try { this.SetColumn("PhysicalStoreName", rp.GetPhysicalStoreName()); int physicalStoreTypeID = rp.GetPhysicalStoreTypeID(); this.SetColumn("PhysicalStoreTypeID", physicalStoreTypeID); Warehouse phyStoreType = new Warehouse(); phyStoreType.LoadByPrimaryKey(physicalStoreTypeID); this.SetColumn("PhysicalStoreTypeName", phyStoreType.Name); } catch { } int itemId = Convert.ToInt32(this.GetColumn("ItemID")); int boxLevel = Convert.ToInt32(this.GetColumn("BoxLevel")); int qtyPerPack = this.Getint("QtyPerPack"); //im.LoadIMbyLevel(itemId, manufacturer, boxLevel); this.SetColumn("SKUTOPICK", (packs)); this.SetColumn("SKUPICKED", this.GetColumn("SKUTOPICK")); // TODO:show the box size here for Program store this.SetColumn("BoxSizeDisplay", ""); this.SetColumn("SKUBU", qtyPerPack); this.SetColumn("BUPICKED", qtyPerPack * Convert.ToInt32(this.GetColumn("SKUPICKED"))); this.SetColumn("LineNum", i++); this.MoveNext(); } return(this.DefaultView); }
/// <summary> /// Gets the pick list details for order. /// </summary> /// <param name="ordID">The ord ID.</param> /// <param name="Preparedby">The preparedby.</param> /// <returns></returns> public DataView GetPickListDetailsForOrder(int ordID, string Preparedby) { this.LoadByOrderID(ordID); var query = HCMIS.Repository.Queries.PickList.SelectGetPickListDetailsForOrder(this.ID); this.LoadFromRawSql(query); // Add important columns this.DataTable.Columns.Add("SKUTOPICK", typeof(decimal)); this.DataTable.Columns.Add("SKUPICKED", typeof(decimal)); this.DataTable.Columns.Add("BUPICKED", typeof(decimal)); this.DataTable.Columns.Add("BoxSizeDisplay"); this.DataTable.Columns.Add("SKUBU", typeof(decimal)); this.DataTable.Columns.Add("IsManufacturerLocal", typeof(bool)); this.DataTable.Columns.Add("PrintedSTVNumber", typeof(string)); this.DataTable.Columns.Add("PhysicalStoreName", typeof(string)); this.DataTable.Columns.Add("PhysicalStoreTypeID", typeof(int)); this.DataTable.Columns.Add("PhysicalStoreTypeName", typeof(string)); this.DataTable.Columns.Add("PreparedBy", typeof(string)); int i = 1; while (!this.EOF) { decimal packs = Convert.ToDecimal(this.GetColumn("Packs")); int manufacturer = Convert.ToInt32(this.GetColumn("ManufacturerID")); Manufacturer m = new Manufacturer(); m.LoadByPrimaryKey(manufacturer); if (!m.IsColumnNull("CountryOfOrigin") && m.CountryOfOrigin.Contains("Ethiopia")) { this.SetColumn("IsManufacturerLocal", true); } else { this.SetColumn("IsManufacturerLocal", false); } int recPalletID = Convert.ToInt32(this.GetColumn("ReceivePalletID")); ReceivePallet rp = new ReceivePallet(); rp.LoadByPrimaryKey(recPalletID); try { ReceiveDoc receiveDoc = new ReceiveDoc(); Receipt receipt = new Receipt(); receiveDoc.LoadByPrimaryKey(rp.ReceiveID); receipt.LoadByPrimaryKey(receiveDoc.ReceiptID); this.SetColumn("PhysicalStoreName", rp.GetPhysicalStoreName()); int physicalStoreTypeID = rp.GetPhysicalStoreTypeID(); this.SetColumn("PhysicalStoreTypeID", physicalStoreTypeID); Warehouse phyStoreType = new Warehouse(); phyStoreType.LoadByPrimaryKey(physicalStoreTypeID); this.SetColumn("PhysicalStoreTypeName", phyStoreType.Name); if (BLL.Settings.PrintUserNameOnInvoice) { this.SetColumn("PreparedBy", Preparedby); } } catch { } int itemId = Convert.ToInt32(this.GetColumn("ItemID")); int boxLevel = Convert.ToInt32(this.GetColumn("BoxLevel")); decimal qtyPerPack = this.Getint("QtyPerPack"); //im.LoadIMbyLevel(itemId, manufacturer, boxLevel); this.SetColumn("SKUTOPICK", (packs)); this.SetColumn("SKUPICKED", this.GetColumn("SKUTOPICK")); // TODO:show the box size here for Program store this.SetColumn("BoxSizeDisplay", ""); this.SetColumn("SKUBU", qtyPerPack); this.SetColumn("BUPICKED", qtyPerPack * Convert.ToDecimal(this.GetColumn("SKUPICKED"))); this.SetColumn("LineNum", i++); if (this.IsColumnNull("DeliveryNote")) { this.SetColumn("DeliveryNote", false); } this.MoveNext(); } return(this.DefaultView); }
private void LoadMaster() { //Populate Item Name Item item = new Item(); item.LoadByPrimaryKey(ItemID); txtitem.Text = item.FullItemName; //Populate Manufacturer Manufacturer mf = new Manufacturer(); mf.LoadByPrimaryKey(ManufacturerID); txtManufacturer.Text = mf.Name; //Populate Unit ItemUnit unit = new ItemUnit(); unit.LoadByPrimaryKey(UnitID); txtUnit.Text = unit.Text; //Populate Account Account Account = new Account(); Account.LoadByPrimaryKey(StoreID); txtAccount.Text = Account.Name; if(BLL.Settings.IsCenter) layoutSellingPrice.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; }
/// <summary> /// Gets the pick list details for order. /// </summary> /// <param name="ordID">The ord ID.</param> /// <param name="Preparedby">The preparedby.</param> /// <returns></returns> public DataView GetPickListDetailsForOrder(int ordID, string Preparedby) { this.LoadByOrderID(ordID); var query = HCMIS.Repository.Queries.PickList.SelectGetPickListDetailsForOrder(this.ID); this.LoadFromRawSql(query); // Add important columns this.DataTable.Columns.Add("SKUTOPICK", typeof(decimal)); this.DataTable.Columns.Add("SKUPICKED", typeof(decimal)); this.DataTable.Columns.Add("BUPICKED", typeof(decimal)); this.DataTable.Columns.Add("BoxSizeDisplay"); this.DataTable.Columns.Add("SKUBU", typeof(decimal)); this.DataTable.Columns.Add("IsManufacturerLocal", typeof(bool)); this.DataTable.Columns.Add("PrintedSTVNumber", typeof(string)); this.DataTable.Columns.Add("PhysicalStoreName", typeof(string)); this.DataTable.Columns.Add("PhysicalStoreTypeID", typeof(int)); this.DataTable.Columns.Add("PhysicalStoreTypeName", typeof(string)); this.DataTable.Columns.Add("PreparedBy", typeof(string)); int i = 1; while (!this.EOF) { decimal packs = Convert.ToDecimal(this.GetColumn("Packs")); int manufacturer = Convert.ToInt32(this.GetColumn("ManufacturerID")); Manufacturer m = new Manufacturer(); m.LoadByPrimaryKey(manufacturer); if (!m.IsColumnNull("CountryOfOrigin") && m.CountryOfOrigin.Contains("Ethiopia")) this.SetColumn("IsManufacturerLocal", true); else this.SetColumn("IsManufacturerLocal", false); int recPalletID = Convert.ToInt32(this.GetColumn("ReceivePalletID")); ReceivePallet rp = new ReceivePallet(); rp.LoadByPrimaryKey(recPalletID); try { ReceiveDoc receiveDoc = new ReceiveDoc(); Receipt receipt = new Receipt(); receiveDoc.LoadByPrimaryKey(rp.ReceiveID); receipt.LoadByPrimaryKey(receiveDoc.ReceiptID); this.SetColumn("PhysicalStoreName", rp.GetPhysicalStoreName()); int physicalStoreTypeID = rp.GetPhysicalStoreTypeID(); this.SetColumn("PhysicalStoreTypeID", physicalStoreTypeID); Warehouse phyStoreType = new Warehouse(); phyStoreType.LoadByPrimaryKey(physicalStoreTypeID); this.SetColumn("PhysicalStoreTypeName", phyStoreType.Name); if (BLL.Settings.PrintUserNameOnInvoice) { this.SetColumn("PreparedBy", Preparedby); } } catch { } int itemId = Convert.ToInt32(this.GetColumn("ItemID")); int boxLevel = Convert.ToInt32(this.GetColumn("BoxLevel")); decimal qtyPerPack = this.Getint("QtyPerPack"); //im.LoadIMbyLevel(itemId, manufacturer, boxLevel); this.SetColumn("SKUTOPICK", (packs)); this.SetColumn("SKUPICKED", this.GetColumn("SKUTOPICK")); // TODO:show the box size here for Program store this.SetColumn("BoxSizeDisplay", ""); this.SetColumn("SKUBU", qtyPerPack); this.SetColumn("BUPICKED", qtyPerPack * Convert.ToDecimal(this.GetColumn("SKUPICKED"))); this.SetColumn("LineNum", i++); if (this.IsColumnNull("DeliveryNote")) { this.SetColumn("DeliveryNote", false); } this.MoveNext(); } return this.DefaultView; }
//,bool pricedItems) /// <summary> /// Gets picked order detail for item (Used by the IssueLog) /// </summary> /// <param name="ordID"></param> /// <param name="storeid"></param> /// <param name="pricedItems">True - For Priced Items Only, False - For Delivery Notes Only</param> /// <returns></returns> public DataView GetPickedOrderDetailForOrder(int stvLogID, bool includeDeleted) { string query; // remove this line ... // check if this has changed the dn to stv conversion // (pld.DeliveryNote is null or pld.DeliveryNote = 0 or (pld.DeliveryNote=1 and pld.UnitPrice<>0)) and query = HCMIS.Repository.Queries.PickList.SelectGetPickedOrderDetailForOrder(stvLogID); if (includeDeleted) { query = HCMIS.Repository.Queries.PickList.SelectGetPickedOrderDetailForOrderIncludeDeleted(stvLogID); } this.LoadFromRawSql(query); // Add important columns this.DataTable.Columns.Add("SKUTOPICK", typeof(int)); this.DataTable.Columns.Add("SKUPICKED", typeof(int)); this.DataTable.Columns.Add("BUPICKED", typeof(int)); this.DataTable.Columns.Add("BoxSizeDisplay"); this.DataTable.Columns.Add("SKUBU", typeof(int)); this.DataTable.Columns.Add("IsManufacturerLocal", typeof(bool)); this.DataTable.Columns.Add("PrintedSTVNumber", typeof(string)); this.DataTable.Columns.Add("PhysicalStoreName", typeof(string)); this.DataTable.Columns.Add("PhysicalStoreTypeID", typeof(int)); this.DataTable.Columns.Add("PhysicalStoreTypeName", typeof(string)); ItemManufacturer im = new ItemManufacturer(); int i = 1; while (!this.EOF) { int packs = Convert.ToInt32(this.GetColumn("Packs")); int manufacturer = Convert.ToInt32(this.GetColumn("ManufacturerID")); Manufacturer m = new Manufacturer(); m.LoadByPrimaryKey(manufacturer); if (!m.IsColumnNull("CountryOfOrigin") && m.CountryOfOrigin == "Ethiopia") this.SetColumn("IsManufacturerLocal", true); else this.SetColumn("IsManufacturerLocal", false); int recPalletID = Convert.ToInt32(this.GetColumn("ReceivePalletID")); ReceivePallet rp = new ReceivePallet(); rp.LoadByPrimaryKey(recPalletID); try { this.SetColumn("PhysicalStoreName", rp.GetPhysicalStoreName()); int physicalStoreTypeID = rp.GetPhysicalStoreTypeID(); this.SetColumn("PhysicalStoreTypeID", physicalStoreTypeID); Warehouse phyStoreType = new Warehouse(); phyStoreType.LoadByPrimaryKey(physicalStoreTypeID); this.SetColumn("PhysicalStoreTypeName", phyStoreType.Name); } catch { } int itemId = Convert.ToInt32(this.GetColumn("ItemID")); int boxLevel = Convert.ToInt32(this.GetColumn("BoxLevel")); int qtyPerPack = this.Getint("QtyPerPack"); //im.LoadIMbyLevel(itemId, manufacturer, boxLevel); this.SetColumn("SKUTOPICK", (packs)); this.SetColumn("SKUPICKED", this.GetColumn("SKUTOPICK")); // TODO:show the box size here for Program store this.SetColumn("BoxSizeDisplay", ""); this.SetColumn("SKUBU", qtyPerPack); this.SetColumn("BUPICKED", qtyPerPack * Convert.ToInt32(this.GetColumn("SKUPICKED"))); this.SetColumn("LineNum", i++); this.MoveNext(); } return this.DefaultView; }
/// <summary> /// Gets the name of manufacturer /// </summary> /// <param name="manufacturerId">The manufacturer id.</param> /// <returns></returns> public static string GetName(int manufacturerId) { Manufacturer mfs = new Manufacturer(); mfs.LoadByPrimaryKey(manufacturerId); return mfs.Name; }
private int SaveOrder() { int warehouseID; var order = GenerateOrder(); PickList pickList = PickList.GeneratePickList(order.ID); int picklistId = pickList.ID; if (TransferTypeID != Transfer.Constants.HUB_TO_HUB) { warehouseID = GenerateTransfer(order.ID); } // Log this.LogActivity("Transfer", order.ID); int LineNo = 0; // This is a kind of initializing the data table. DataView dv = orderGrid.DataSource as DataView; foreach (DataRowView r in dv) { if (r["ApprovedPacks"] != null && r["ApprovedPacks"] != DBNull.Value && r["ApprovedPacks"].ToString()!= "") if (Convert.ToDecimal(r["ApprovedPacks"]) != 0) { LineNo = LineNo + 1; int itemId = Convert.ToInt32(r["ItemID"]); int unitId = Convert.ToInt32(r["UnitID"]); decimal pack = Convert.ToDecimal(r["ApprovedPacks"]); int qtyPerPack = Convert.ToInt32(r["QtyPerPack"]); int activityId = Convert.ToInt32(lkFromActivity.EditValue); int manufacturerId = Convert.ToInt32(Convert.ToInt32(r["ManufacturerID"])); int receivePalletId = Convert.ToInt32(r["ReceivingLocationID"]); int palletLocationId = Convert.ToInt32(r["LocationID"]); double? unitPrice; string batchNumber = r["BatchNo"].ToString(); string expireDate ="" ; int receiveDocId = Convert.ToInt32(r["ReceiveDocID"]); if((r["UnitPrice"] != DBNull.Value)) { unitPrice = Convert.ToDouble(r["UnitPrice"]); } else { unitPrice = null; } if (r["ExpDate"] != DBNull.Value) expireDate= r["ExpDate"].ToString(); OrderDetail ord = OrderDetail.GenerateOrderDetail(unitId, activityId, pack, order.ID, qtyPerPack, itemId); PalletLocation palletLocation = new PalletLocation(); palletLocation.LoadByPrimaryKey(palletLocationId); int palletID = palletLocation.PalletID; PickListDetail pkDetail = PickListDetail.GeneratePickListDetail(pack, unitPrice, receiveDocId, manufacturerId, receivePalletId, qtyPerPack, activityId, unitId, itemId, picklistId, palletID, expireDate, batchNumber); ReceivePallet.ReserveQty(pack, receivePalletId); //To Print The Picklist //Then reserve Items Item item = new Item(); item.LoadByPrimaryKey(itemId); DataRow drvpl = dvPickList.NewRow(); drvpl["FullItemName"] = item.FullItemName; drvpl["StockCode"] = item.StockCode; drvpl["BatchNo"] = batchNumber; if (expireDate != "" ) drvpl["ExpDate"] = Convert.ToDateTime(expireDate).ToString("MMM/yyyy"); else drvpl["ExpDate"] = DBNull.Value; drvpl["LineNum"] = LineNo + 1; var manufacturer = new Manufacturer(); manufacturer.LoadByPrimaryKey(manufacturerId); drvpl["ManufacturerName"] = manufacturer.Name; drvpl["Pack"] = pack; drvpl["UnitPrice"] = unitPrice; var unit = new ItemUnit(); unit.LoadByPrimaryKey(unitId); drvpl["Unit"] = unit.Text; drvpl["QtyInSKU"] = pack; if (unitPrice != null) drvpl["CalculatedCost"] = pack *Convert.ToDecimal(unitPrice); palletLocation.LoadByPrimaryKey(pkDetail.PalletLocationID); drvpl["PalletLocation"] = palletLocation.Label; 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"); string receivingUnit; Transfer transfer = new Transfer(); transfer.LoadByOrderID(order.ID); if (TransferTypeID == Transfer.Constants.ACCOUNT_TO_ACCOUNT) { var fromActivity = new Activity(); fromActivity.LoadByPrimaryKey(transfer.FromStoreID); var toActivity = new Activity(); toActivity.LoadByPrimaryKey(transfer.ToStoreID); receivingUnit = String.Format("Account to Account from {0} to {1}", fromActivity.FullActivityName, toActivity.FullActivityName); } else if (TransferTypeID == Transfer.Constants.STORE_TO_STORE) { var toStore = new PhysicalStore(); toStore.LoadByPrimaryKey(transfer.ToPhysicalStoreID); receivingUnit = string.Format("Store to Store transfer to: {0}", toStore.WarehouseName); } else { receivingUnit = lkForHub.Text; } var plr = HCMIS.Desktop.Reports.WorkflowReportFactory.CreatePicklistReport(order, receivingUnit, dvPickList.DefaultView); plr.PrintDialog(); XtraMessageBox.Show("Picklist Prepared!", "Successful", MessageBoxButtons.OK, MessageBoxIcon.Information); return order.ID; }
public static StockCardReport CreateStockCard(int activityID, int itemID, int unitID, int warehouse, int manufactuererID, DateTime? startDate = null, DateTime? endDate = null) { BLL.Balance balance = new Balance(); BLL.Item item = new Item(); item.LoadByPrimaryKey(itemID); ItemUnit iunit = new ItemUnit(); iunit.LoadByPrimaryKey(unitID); BLL.Warehouse physicalStore = new Warehouse(); physicalStore.LoadByPrimaryKey(warehouse); var dataView = new DataView(); if(startDate == null || endDate == null) { dataView = Balance.GetStockCardByWarehouse(activityID, itemID, unitID, EthiopianDate.EthiopianDate.Now.FiscalYear, warehouse, manufactuererID); } else { dataView = Balance.GetStockCardByDate(activityID, itemID, unitID, warehouse, manufactuererID, startDate.Value, endDate.Value); } StockCardReport report = new StockCardReport(); report.DataSource = dataView; // Bind the headers here. report.StockCode.Text = item.StockCode; report.Description.Text = item.FullItemName; report.Unit.Text = iunit.Text; Activity store = new Activity(); store.LoadByPrimaryKey(activityID); report.Account.Text = store.AccountName; report.SubAccount.Text = store.SubAccountName; report.Activity.Text = store.Name; Manufacturer manufacturers = new Manufacturer(); manufacturers.LoadByPrimaryKey(manufactuererID); report.Manufacturer.Text = manufacturers.Name; // TODO: add the Item Source Here (the suggested interpretation is that item source is supplier) report.PrintedBy.Text = string.Format("Generated By: {0} On {1}", CurrentContext.LoggedInUserName, BLL.DateTimeHelper.ServerDateTime.ToString("dd-MM-yyyy hh:mm tt")); report.Store.Text = physicalStore.Name; report.AppVersion.Text = "HCMIS"; return report; }