private ReportDataSource GetStockCard(DateTime?dateFrom, DateTime?dateTo, string itemId, string warehouseId) { IList <TStockCard> cards; MItem item = null; MWarehouse warehouse = null; if (!string.IsNullOrEmpty(itemId)) { item = _mItemRepository.Get(itemId); } if (!string.IsNullOrEmpty(warehouseId)) { warehouse = _mWarehouseRepository.Get(warehouseId); } cards = _tStockCardRepository.GetByDateItemWarehouse(dateFrom, dateTo, item, warehouse); var list = from card in cards select new { card.StockCardQty, card.StockCardDate, card.StockCardStatus, ItemId = card.ItemId.Id, card.ItemId.ItemName, WarehouseId = card.WarehouseId.Id, card.WarehouseId.WarehouseName, card.StockCardSaldo, card.StockCardDesc } ; ReportDataSource reportDataSource = new ReportDataSource("StockCardViewModel", list.ToList()); return(reportDataSource); }
public ActionResult Update(MWarehouse viewModel, FormCollection formCollection) { MWarehouse mWarehouseToUpdate = _mWarehouseRepository.Get(viewModel.Id); TransferFormValuesTo(mWarehouseToUpdate, viewModel); mWarehouseToUpdate.EmployeeId = _mEmployeeRepository.Get(formCollection["EmployeeId"]); mWarehouseToUpdate.ModifiedDate = DateTime.Now; mWarehouseToUpdate.ModifiedBy = User.Identity.Name; mWarehouseToUpdate.DataStatus = EnumDataStatus.Updated.ToString(); mWarehouseToUpdate.AddressId.AddressLine1 = formCollection["AddressLine1"]; mWarehouseToUpdate.AddressId.AddressLine1 = formCollection["AddressLine1"]; mWarehouseToUpdate.AddressId.AddressLine2 = formCollection["AddressLine2"]; mWarehouseToUpdate.AddressId.AddressLine3 = formCollection["AddressLine3"]; mWarehouseToUpdate.AddressId.AddressPhone = formCollection["AddressPhone"]; mWarehouseToUpdate.AddressId.AddressCity = formCollection["AddressCity"]; _mWarehouseRepository.Update(mWarehouseToUpdate); bool isSave = false; try { _mWarehouseRepository.DbContext.CommitChanges(); } catch (Exception e) { _mWarehouseRepository.DbContext.RollbackTransaction(); return(Content(e.GetBaseException().Message)); } return(Content("success")); }
public ActionResult Insert(TTransDet viewModel, FormCollection formCollection, bool IsAddStock, string warehouseId) { //format numeric UpdateNumericData(viewModel, formCollection); // MItem item = _mItemRepository.Get(formCollection["ItemId"]); //check stock is enough or not if no add stock //return Content(IsAddStock.ToString()); if (!IsAddStock) { MWarehouse warehouse = _mWarehouseRepository.Get(warehouseId); bool isStockValid = Helper.CommonHelper.CheckStock(warehouse, item, viewModel.TransDetQty); if (!isStockValid) { return(Content("Kuantitas barang tidak cukup")); } } TTransDet transDetToInsert = new TTransDet(); TransferFormValuesTo(transDetToInsert, viewModel); transDetToInsert.SetAssignedIdTo(Guid.NewGuid().ToString()); transDetToInsert.ItemId = item; transDetToInsert.SetAssignedIdTo(viewModel.Id); transDetToInsert.CreatedDate = DateTime.Now; transDetToInsert.CreatedBy = User.Identity.Name; transDetToInsert.DataStatus = EnumDataStatus.New.ToString(); ListDetTrans.Add(transDetToInsert); return(Content("success")); }
public decimal?GetTotalUsed(MItem item, MWarehouse warehouse) { StringBuilder sql = new StringBuilder(); sql.AppendLine(@" select sum(det.TransDetQty) from TTransDet as det left outer join det.TransId trans where trans.TransStatus = :TransStatus "); if (item != null) { sql.AppendLine(@" and det.ItemId = :item"); } if (warehouse != null) { sql.AppendLine(@" and trans.WarehouseId = :warehouse"); } IQuery q = Session.CreateQuery(sql.ToString()); q.SetString("TransStatus", Enums.EnumTransactionStatus.Using.ToString()); if (item != null) { q.SetEntity("item", item); } if (warehouse != null) { q.SetEntity("warehouse", warehouse); } if (q.UniqueResult() != null) { return((decimal)q.UniqueResult()); } return(null); }
public static TransactionFormViewModel Create(EnumTransactionStatus enumTransactionStatus, ITTransRepository transRepository, IMWarehouseRepository mWarehouseRepository, IMSupplierRepository mSupplierRepository, IMUnitTypeRepository mUnitTypeRepository, IMJobTypeRepository mJobTypeRepository) { TransactionFormViewModel viewModel = new TransactionFormViewModel(); TTrans trans = SetNewTrans(enumTransactionStatus); viewModel.Trans = trans; Helper.CommonHelper.SetViewModelByStatus(viewModel, enumTransactionStatus); viewModel.TransFactur = trans.TransFactur; viewModel.TransDate = trans.TransDate; viewModel.TransId = trans.Id; viewModel.TransStatus = trans.TransStatus; viewModel.WarehouseId = trans.WarehouseId; viewModel.WarehouseIdTo = trans.WarehouseIdTo; viewModel.UnitTypeId = trans.UnitTypeId; viewModel.JobTypeId = trans.JobTypeId; viewModel.TransDesc = trans.TransDesc; IList <MWarehouse> list = mWarehouseRepository.GetAll(); MWarehouse mWarehouse = new MWarehouse(); mWarehouse.WarehouseName = "-Pilih Gudang-"; list.Insert(0, mWarehouse); viewModel.WarehouseList = new SelectList(list, "Id", "WarehouseName"); viewModel.WarehouseToList = new SelectList(list, "Id", "WarehouseName"); IList <MSupplier> listSupplier = mSupplierRepository.GetAll(); MSupplier mSupplier = new MSupplier(); mSupplier.SupplierName = "-Pilih Supplier-"; listSupplier.Insert(0, mSupplier); viewModel.SupplierList = new SelectList(listSupplier, "Id", "SupplierName"); IList <MUnitType> listUnitType = mUnitTypeRepository.GetAll(); MUnitType mUnitType = new MUnitType(); mUnitType.UnitTypeName = "-Pilih Unit-"; listUnitType.Insert(0, mUnitType); viewModel.UnitTypeList = new SelectList(listUnitType, "Id", "UnitTypeName"); IList <MJobType> listJobType = mJobTypeRepository.GetAll(); MJobType mJobType = new MJobType(); mJobType.JobTypeName = "-Pilih Jenis Pekerjaan-"; listJobType.Insert(0, mJobType); viewModel.JobTypeList = new SelectList(listJobType, "Id", "JobTypeName"); //fill payment method var values = from EnumPaymentMethod e in Enum.GetValues(typeof(EnumPaymentMethod)) select new { ID = e, Name = e.ToString() }; viewModel.PaymentMethodList = new SelectList(values, "Id", "Name"); //viewModel.ViewWarehouseTo = false; //viewModel.ViewSupplier = false; //viewModel.ViewDate = false; //viewModel.ViewFactur = false; return(viewModel); }
private ReportDataSource GetStockItem(string itemId, string warehouseId) { IList <TStockItem> stockItems; MItem item = null; MWarehouse warehouse = null; if (!string.IsNullOrEmpty(itemId)) { item = _mItemRepository.Get(itemId); } if (!string.IsNullOrEmpty(warehouseId)) { warehouse = _mWarehouseRepository.Get(warehouseId); } stockItems = _tStockItemRepository.GetByItemWarehouse(item, warehouse); var list = from stock in stockItems select new { stock.ItemStock, stock.ItemStockMax, stock.ItemStockMin, ItemId = stock.ItemId.Id, stock.ItemId.ItemName, WarehouseId = stock.WarehouseId.Id, stock.WarehouseId.WarehouseName, stock.ItemStockRack } ; //return list.ToList(); ReportDataSource reportDataSource = new ReportDataSource("StockItemViewModel", list.ToList()); return(reportDataSource); }
private bool LoseItem(ItemInfo info, int amount) { if (MWarehouse == null || info == null || !info.item || amount < 1) { return(false); } if (!BackpackManager.Instance.TryGetItem_Boolean(info, amount)) { return(false); } BackpackManager.Instance.GetItem(info, amount); MWarehouse.LoseItemSimple(info, amount); ItemAgent ia = GetItemAgentByInfo(info); if (ia) { ia.UpdateInfo(); } UpdateUI(); if (!BackpackManager.Instance.IsUIOpen) { BackpackManager.Instance.OpenWindow(); } return(true); }
public IList <TTransDet> GetByItemWarehouse(MItem item, MWarehouse warehouse) { StringBuilder sql = new StringBuilder(); sql.AppendLine(@" select det from TTransDet as det left outer join det.TransId trans where trans.TransStatus = :TransStatus "); if (item != null) { sql.AppendLine(@" and det.ItemId = :item"); } if (warehouse != null) { sql.AppendLine(@" and trans.WarehouseId = :warehouse"); } IQuery q = Session.CreateQuery(sql.ToString()); q.SetString("TransStatus", Enums.EnumTransactionStatus.Budgeting.ToString()); if (item != null) { q.SetEntity("item", item); } if (warehouse != null) { q.SetEntity("warehouse", warehouse); } return(q.List <TTransDet>()); }
public TStockItem GetByItemAndWarehouse(MItem mItem, MWarehouse mWarehouse) { ICriteria criteria = Session.CreateCriteria(typeof(TStockItem)) .Add(Expression.Eq("ItemId", mItem)) .Add(Expression.Eq("WarehouseId", mWarehouse)); return((TStockItem)criteria.UniqueResult()); }
/// <summary> /// is used to save Product container /// </summary> /// <param name="warehouseId">Warehouse where we create container</param> /// <param name="locatorId">Locator - in which locator we place container</param> /// <param name="value">Search key of the container</param> /// <param name="name">name of teh container</param> /// <param name="height">height of the container</param> /// <param name="width">width of the container</param> /// <param name="parentContainerId">Parent of the nw container</param> /// <returns>Save Or Not Saved message</returns> /// <writer>Amit Bansal</writer> public string SaveProductContainer(int warehouseId, int locatorId, string value, string name, Decimal height, Decimal width, int parentContainerId) { MLocator m_locator = null; MWarehouse m_warehouse = null; // when warehouse ID is ZERO, then extract it from Locator if (warehouseId == 0 && locatorId > 0) { m_locator = MLocator.Get(_ctx, locatorId); warehouseId = m_locator.GetM_Warehouse_ID(); } // when locator ID is ZERO, then extract it either from Parent Conatiner or from Warehouse else if (warehouseId > 0 && locatorId == 0) { if (parentContainerId == 0) { m_warehouse = MWarehouse.Get(_ctx, warehouseId); locatorId = m_warehouse.GetDefaultM_Locator_ID(); } else { locatorId = Util.GetValueOfInt(DB.ExecuteScalar("SELECT M_Locator_ID FROM M_ProductContainer WHERE M_ProductContainer_ID = " + parentContainerId, null, null)); } } // need to check warehouse and locator shoyld be active during ceation of Product Container m_warehouse = MWarehouse.Get(_ctx, warehouseId); m_locator = MLocator.Get(_ctx, locatorId); if (!m_warehouse.IsActive()) { return(Msg.GetMsg(_ctx, "VIS_WarehouseNotActive")); } else if (!m_locator.IsActive()) { return(Msg.GetMsg(_ctx, "VIS_LocatorNotActive")); } // Create Product Container in Locator Organization //MProductContainer container = new MProductContainer(_ctx, 0, null); //container.SetAD_Org_ID(m_locator.GetAD_Org_ID()); //container.SetValue(value); //container.SetName(name); //container.SetM_Warehouse_ID(warehouseId); //container.SetM_Locator_ID(locatorId); //container.SetHeight(height); //container.SetWidth(width); //container.SetRef_M_Container_ID(parentContainerId); //if (!container.Save()) //{ // ValueNamePair pp = VLogger.RetrieveError(); // return Msg.GetMsg(_ctx, "VIS_ContainernotSaved") + " " + (pp != null ? pp.GetName() : ""); //} //else //{ // return ""; //} return(""); }
} // prepare /// <summary> /// Perrform Process. /// </summary> /// <returns>Message </returns> protected override String DoIt() { log.Info("M_Warehouse_ID=" + _M_Warehouse_ID + ", C_BPartner_ID=" + _C_BPartner_ID + " - ReplenishmentCreate=" + _ReplenishmentCreate + ", C_DocType_ID=" + _C_DocType_ID); if (_ReplenishmentCreate != null && _C_DocType_ID == 0 || _C_DocType_ID == -1) { throw new Exception("@FillMandatory@ @C_DocType_ID@"); } MWarehouse wh = MWarehouse.Get(GetCtx(), _M_Warehouse_ID); if (wh.Get_ID() == 0) { throw new Exception("@FillMandatory@ @M_Warehouse_ID@"); } if (wh.GetM_WarehouseSource_ID() > 0) { _M_WareSource = "M_WarehouseSource_ID = " + Util.GetValueOfString(wh.GetM_WarehouseSource_ID()); } else { _M_WareSource = null; } // PrepareTable(); FillTable(wh); // if (_ReplenishmentCreate == null) { return("OK"); } // MDocType dt = MDocType.Get(GetCtx(), _C_DocType_ID); if (!dt.GetDocBaseType().Equals(_ReplenishmentCreate)) { throw new Exception("@C_DocType_ID@=" + dt.GetName() + " <> " + _ReplenishmentCreate); } // if (_ReplenishmentCreate.Equals("POO")) { CreatePO(); } else if (_ReplenishmentCreate.Equals("POR")) { CreateRequisition(); } else if (_ReplenishmentCreate.Equals("MMM")) { CreateMovements(); } return(_info); } // doIt
public ActionResult Insert(MWarehouse viewModel, FormCollection formCollection) { RefAddress address = new RefAddress(); address.AddressLine1 = formCollection["AddressLine1"]; address.AddressLine2 = formCollection["AddressLine2"]; address.AddressLine3 = formCollection["AddressLine3"]; address.AddressPhone = formCollection["AddressPhone"]; address.AddressCity = formCollection["AddressCity"]; address.SetAssignedIdTo(Guid.NewGuid().ToString()); _refAddressRepository.Save(address); MWarehouse mWarehouseToInsert = new MWarehouse(); TransferFormValuesTo(mWarehouseToInsert, viewModel); mWarehouseToInsert.EmployeeId = _mEmployeeRepository.Get(formCollection["EmployeeId"]); mWarehouseToInsert.CostCenterId = _mCostCenterRepository.Get(formCollection["CostCenterId"]); mWarehouseToInsert.SetAssignedIdTo(viewModel.Id); mWarehouseToInsert.CreatedDate = DateTime.Now; mWarehouseToInsert.CreatedBy = User.Identity.Name; mWarehouseToInsert.DataStatus = EnumDataStatus.New.ToString(); mWarehouseToInsert.AddressId = address; _mWarehouseRepository.Save(mWarehouseToInsert); //save account persediaan barang MAccountRef accountRef = new MAccountRef(); accountRef.SetAssignedIdTo(Guid.NewGuid().ToString()); accountRef.ReferenceId = mWarehouseToInsert.Id; accountRef.ReferenceTable = EnumReferenceTable.Warehouse.ToString(); accountRef.ReferenceType = EnumReferenceTable.Warehouse.ToString(); accountRef.AccountId = _mAccountRepository.Get(formCollection["AccountId"]); _mAccountRefRepository.Save(accountRef); //save account pemakaian barang accountRef = new MAccountRef(); accountRef.SetAssignedIdTo(Guid.NewGuid().ToString()); accountRef.ReferenceId = mWarehouseToInsert.Id; accountRef.ReferenceTable = EnumReferenceTable.WarehouseUsing.ToString(); accountRef.ReferenceType = EnumReferenceTable.WarehouseUsing.ToString(); accountRef.AccountId = _mAccountRepository.Get(formCollection["UsingAccountId"]); _mAccountRefRepository.Save(accountRef); try { _mWarehouseRepository.DbContext.CommitChanges(); } catch (Exception e) { _mWarehouseRepository.DbContext.RollbackTransaction(); //throw e.GetBaseException(); return(Content(e.GetBaseException().Message)); } return(Content("success")); }
public ActionResult Update(MWarehouse viewModel, FormCollection formCollection) { MWarehouse mWarehouseToUpdate = _mWarehouseRepository.Get(viewModel.Id); TransferFormValuesTo(mWarehouseToUpdate, viewModel); mWarehouseToUpdate.EmployeeId = _mEmployeeRepository.Get(formCollection["EmployeeId"]); mWarehouseToUpdate.CostCenterId = _mCostCenterRepository.Get(formCollection["CostCenterId"]); mWarehouseToUpdate.ModifiedDate = DateTime.Now; mWarehouseToUpdate.ModifiedBy = User.Identity.Name; mWarehouseToUpdate.DataStatus = EnumDataStatus.Updated.ToString(); mWarehouseToUpdate.AddressId.AddressLine1 = formCollection["AddressLine1"]; mWarehouseToUpdate.AddressId.AddressLine1 = formCollection["AddressLine1"]; mWarehouseToUpdate.AddressId.AddressLine2 = formCollection["AddressLine2"]; mWarehouseToUpdate.AddressId.AddressLine3 = formCollection["AddressLine3"]; mWarehouseToUpdate.AddressId.AddressPhone = formCollection["AddressPhone"]; mWarehouseToUpdate.AddressId.AddressCity = formCollection["AddressCity"]; _mWarehouseRepository.Update(mWarehouseToUpdate); bool isSave = false; MAccountRef accountRef = GetAccountRef(mWarehouseToUpdate.Id); if (accountRef == null) { accountRef = new MAccountRef(); accountRef.SetAssignedIdTo(Guid.NewGuid().ToString()); isSave = true; } accountRef.ReferenceId = mWarehouseToUpdate.Id; accountRef.ReferenceTable = EnumReferenceTable.Warehouse.ToString(); accountRef.ReferenceType = EnumReferenceTable.Warehouse.ToString(); accountRef.AccountId = _mAccountRepository.Get(formCollection["AccountId"]); if (isSave) { _mAccountRefRepository.Save(accountRef); } else { _mAccountRefRepository.Update(accountRef); } try { _mWarehouseRepository.DbContext.CommitChanges(); } catch (Exception e) { _mWarehouseRepository.DbContext.RollbackTransaction(); return(Content(e.GetBaseException().Message)); } return(Content("success")); }
/// <summary> /// Create/Add to Inventory Line Query /// </summary> /// <param name="M_Locator_ID">locator</param> /// <param name="M_Product_ID">product</param> /// <param name="M_AttributeSetInstance_ID">asi</param> /// <param name="qtyOnHand">quantity</param> /// <param name="M_AttributeSet_ID">attribute set</param> /// <returns>lines added</returns> private string InsertInventoryLine(int M_Locator_ID, int M_Product_ID, int lineNo, int M_AttributeSetInstance_ID, Decimal qtyOnHand, int M_AttributeSet_ID) { MInventoryLine line = new MInventoryLine(GetCtx(), 0, Get_Trx()); int line_ID = DB.GetNextID(GetCtx(), "M_InventoryLine", Get_Trx()); string qry = "select m_warehouse_id from m_locator where m_locator_id=" + M_Locator_ID; int M_Warehouse_ID = Util.GetValueOfInt(DB.ExecuteScalar(qry, null, Get_Trx())); MWarehouse wh = MWarehouse.Get(GetCtx(), M_Warehouse_ID); if (wh.IsDisallowNegativeInv() == true) { if (qtyOnHand < 0) { return(""); } } MProduct product = MProduct.Get(GetCtx(), M_Product_ID); if (product != null) { int precision = product.GetUOMPrecision(); if (Env.Signum(qtyOnHand) != 0) { qtyOnHand = Decimal.Round(qtyOnHand, precision, MidpointRounding.AwayFromZero); } } string sql = @"INSERT INTO M_InventoryLine (AD_Client_ID, AD_Org_ID,IsActive, Created, CreatedBy, Updated, UpdatedBy, Line, M_Inventory_ID, M_InventoryLine_ID, M_Locator_ID, M_Product_ID, M_AttributeSetInstance_ID, QtyBook, QtyCount, OpeningStock, AsOnDateCount, DifferenceQty, AdjustmentType"; if (line.Get_ColumnIndex("C_UOM_ID") > 0) { sql += ", QtyEntered, C_UOM_ID"; } if (line.Get_ColumnIndex("IsFromProcess") > 0) { sql += ",IsFromProcess"; } sql += " ) VALUES ( " + _inventory.GetAD_Client_ID() + "," + _inventory.GetAD_Org_ID() + ",'Y'," + GlobalVariable.TO_DATE(DateTime.Now, true) + "," + 0 + "," + GlobalVariable.TO_DATE(DateTime.Now, true) + "," + 0 + "," + lineNo + "," + _m_Inventory_ID + "," + line_ID + "," + M_Locator_ID + "," + M_Product_ID + "," + M_AttributeSetInstance_ID + "," + qtyOnHand + "," + qtyOnHand + "," + qtyOnHand + "," + qtyOnHand + "," + 0 + ",'A'"; if (line.Get_ColumnIndex("C_UOM_ID") > 0) { sql += "," + qtyOnHand + "," + product.GetC_UOM_ID(); } if (line.Get_ColumnIndex("IsFromProcess") > 0) { sql += ",'Y'"; } string insertQry = " BEGIN execute immediate('" + sql.Replace("'", "''") + ")'); exception when others then null; END;"; return(insertQry); }
/// <summary> /// Get Default Locator ID /// </summary> /// <param name="fields">Warehouse ID</param> /// <returns>Default Locator ID</returns> /// <writer>Amit</writer> public JsonResult GetDefaultLocatorID(string fields) { string retJSON = ""; if (Session["ctx"] != null) { VAdvantage.Utility.Ctx ctx = Session["ctx"] as Ctx; retJSON = JsonConvert.SerializeObject(MWarehouse.Get(ctx, Util.GetValueOfInt(fields)).GetDefaultM_Locator_ID()); } return(Json(retJSON, JsonRequestBehavior.AllowGet)); }
} // createPO /// <summary> /// Create Requisition /// </summary> private void CreateRequisition() { int noReqs = 0; String info = ""; // MRequisition requisition = null; MWarehouse wh = null; X_T_Replenish[] replenishs = GetReplenish(_M_WareSource); for (int i = 0; i < replenishs.Length; i++) { X_T_Replenish replenish = replenishs[i]; if (wh == null || wh.GetM_Warehouse_ID() != replenish.GetM_Warehouse_ID()) { wh = MWarehouse.Get(GetCtx(), replenish.GetM_Warehouse_ID()); } // if (requisition == null || requisition.GetM_Warehouse_ID() != replenish.GetM_Warehouse_ID()) { requisition = new MRequisition(GetCtx(), 0, Get_TrxName()); requisition.SetAD_User_ID(GetAD_User_ID()); requisition.SetC_DocType_ID(_C_DocType_ID); requisition.SetDescription(Msg.GetMsg(GetCtx(), "Replenishment")); // Set Org/WH int _CountDTD001 = Util.GetValueOfInt(DB.ExecuteScalar("SELECT COUNT(AD_MODULEINFO_ID) FROM AD_MODULEINFO WHERE PREFIX='DTD001_'")); if (_CountDTD001 > 0) { requisition.SetDTD001_MWarehouseSource_ID(wh.GetM_WarehouseSource_ID()); } requisition.SetAD_Org_ID(wh.GetAD_Org_ID()); requisition.SetM_Warehouse_ID(wh.GetM_Warehouse_ID()); if (!requisition.Save()) { return; } _DocNo = requisition.GetDocumentNo() + ","; //dtd log.Fine(requisition.ToString()); noReqs++; info += " - " + requisition.GetDocumentNo(); } // MRequisitionLine line = new MRequisitionLine(requisition); line.SetM_Product_ID(replenish.GetM_Product_ID()); line.SetC_BPartner_ID(replenish.GetC_BPartner_ID()); line.SetQty(replenish.GetQtyToOrder()); line.SetPrice(); line.Save(); } _DocNo = _DocNo.Substring(0, _DocNo.Length - 1);//dtd _info = "#" + noReqs + info; log.Info(_info); } // createRequisition
public ActionResult InsertOrUpdate(MWarehouse viewModel, FormCollection formCollection) { if (formCollection["oper"].Equals("add")) { return(Insert(viewModel, formCollection)); } else if (formCollection["oper"].Equals("edit")) { return(Update(viewModel, formCollection)); } return(View()); }
public IList <TTrans> GetByWarehouseStatusTransBy(MWarehouse warehouse, string transStatus, string transBy) { ICriteria criteria = Session.CreateCriteria(typeof(TTrans)); criteria.Add(Expression.Eq("TransStatus", transStatus)); criteria.Add(Expression.Eq("WarehouseId", warehouse)); criteria.Add(Expression.Eq("TransBy", transBy)); criteria.SetCacheable(true); IList <TTrans> list = criteria.List <TTrans>(); return(list); }
public static ReportParamViewModel CreateReportParamViewModel(IMCostCenterRepository mCostCenterRepository, IMWarehouseRepository mWarehouseRepository, IMSupplierRepository mSupplierRepository, ITRecPeriodRepository tRecPeriodRepository, IMItemRepository mItemRepository) { ReportParamViewModel viewModel = new ReportParamViewModel(); IList <MCostCenter> list = mCostCenterRepository.GetAll(); MCostCenter costCenter = new MCostCenter(); costCenter.CostCenterName = "-Semua Cost Center-"; list.Insert(0, costCenter); viewModel.CostCenterList = new SelectList(list, "Id", "CostCenterName"); IList <MWarehouse> listWarehouse = mWarehouseRepository.GetAll(); MWarehouse account = new MWarehouse(); account.WarehouseName = "-Semua Gudang-"; listWarehouse.Insert(0, account); viewModel.WarehouseList = new SelectList(listWarehouse, "Id", "WarehouseName"); IList <MSupplier> listSupplier = mSupplierRepository.GetAll(); MSupplier supplier = new MSupplier(); supplier.SupplierName = "-Semua Supplier-"; listSupplier.Insert(0, supplier); viewModel.SupplierList = new SelectList(listSupplier, "Id", "SupplierName"); IList <TRecPeriod> listRecPeriod = tRecPeriodRepository.GetAll(); //TRecPeriod recPeriod = new TRecPeriod(); //recPeriod.PeriodDesc = "-Pilih Period-"; //listRecPeriod.Insert(0, recPeriod); viewModel.RecPeriodList = new SelectList(listRecPeriod, "Id", "PeriodDesc"); IList <MItem> listItem = mItemRepository.GetAll(); MItem item = new MItem(); item.ItemName = "-Semua Item-"; listItem.Insert(0, item); viewModel.ItemList = new SelectList(listItem, "Id", "ItemName"); ArrayList arr = new ArrayList(); for (int i = 1; i <= 5; i++) { var sel = new { Id = i }; arr.Add(sel); } viewModel.ShiftNoList = new SelectList(arr, "Id", "Id"); viewModel.DateFrom = DateTime.Today; viewModel.DateTo = DateTime.Today; return(viewModel); }
public void Arrange() { MWarehouse.Arrange(); foreach (ItemAgent ia in itemAgents) { ia.Empty(); } for (int i = 0; i < MWarehouse.Items.Count; i++) { itemAgents[i].SetItem(MWarehouse.Items[i]); } UpdateUI(); }
public IList <TStockItem> GetByItemWarehouse(MItem item, MWarehouse warehouse) { ICriteria criteria = Session.CreateCriteria(typeof(TStockItem)); if (item != null) { criteria.Add(Expression.Eq("ItemId", item)); } if (warehouse != null) { criteria.Add(Expression.Eq("WarehouseId", warehouse)); } return(criteria.List <TStockItem>()); }
internal static bool CheckStock(MWarehouse mWarehouse, MItem item, decimal?qty) { ITStockItemRepository stockItemRepository = new TStockItemRepository(); TStockItem stockItem = stockItemRepository.GetByItemAndWarehouse(item, mWarehouse); if (stockItem != null) { if (stockItem.ItemStock > qty) { return(true); } } return(false); }
/** * Creates a Work Order Transaction header for a given Work Order assumes locator is same locator as on Work Order * @param ctx * @param VAMFG_M_WorkOrder_ID Work Order * @param TxnType valid values are CI (Component Issue), CR (Component Return), RU (Resource Usage) * @param trx * @return MVAMFGMWrkOdrTransaction on success, null otherwise */ public ViennaAdvantage.Model.MVAMFGMWrkOdrTransaction CreateWOTxn(Ctx ctx, int VAMFG_M_WorkOrder_ID, String TxnType, Trx trx) { ViennaAdvantage.Model.MVAMFGMWorkOrder wo = new ViennaAdvantage.Model.MVAMFGMWorkOrder(ctx, VAMFG_M_WorkOrder_ID, trx); if (wo == null || !wo.GetDocStatus().Equals(ViennaAdvantage.Model.MVAMFGMWorkOrder.DOCSTATUS_InProgress)) { log.Severe("Work Order number not valid for transactions."); return(null); } log.Info("Getting Default Locator of Work Order Warehouse."); MLocator loc = MWarehouse.Get(ctx, wo.GetM_Warehouse_ID()).GetDefaultLocator(); return(createWOTxn(ctx, VAMFG_M_WorkOrder_ID, TxnType, 0, loc.GetM_Locator_ID(), Decimal.Zero, trx)); }
/// <summary> /// Create PO's /// </summary> private void CreatePO() { int noOrders = 0; String info = ""; // MOrder order = null; MWarehouse wh = null; X_T_Replenish[] replenishs = GetReplenish(_M_WareSource); for (int i = 0; i < replenishs.Length; i++) { X_T_Replenish replenish = replenishs[i]; if (wh == null || wh.GetM_Warehouse_ID() != replenish.GetM_Warehouse_ID()) { wh = MWarehouse.Get(GetCtx(), replenish.GetM_Warehouse_ID()); } // if (order == null || order.GetC_BPartner_ID() != replenish.GetC_BPartner_ID() || order.GetM_Warehouse_ID() != replenish.GetM_Warehouse_ID()) { order = new MOrder(GetCtx(), 0, Get_TrxName()); order.SetIsSOTrx(false); order.SetC_DocTypeTarget_ID(_C_DocType_ID); MBPartner bp = new MBPartner(GetCtx(), replenish.GetC_BPartner_ID(), Get_TrxName()); order.SetBPartner(bp); order.SetSalesRep_ID(GetAD_User_ID()); order.SetDescription(Msg.GetMsg(GetCtx(), "Replenishment")); // Set Org/WH order.SetAD_Org_ID(wh.GetAD_Org_ID()); order.SetM_Warehouse_ID(wh.GetM_Warehouse_ID()); if (!order.Save()) { return; } log.Fine(order.ToString()); noOrders++; info += " - " + order.GetDocumentNo(); } MOrderLine line = new MOrderLine(order); line.SetM_Product_ID(replenish.GetM_Product_ID()); line.SetQty(replenish.GetQtyToOrder()); line.SetPrice(); line.Save(); } _info = "#" + noOrders + info; log.Info(_info); } // createPO
/// <summary> /// GetWarehouse /// </summary> /// <param name="ctx"></param> /// <param name="fields"></param> /// <returns></returns> public Dictionary <string, string> GetWarehouse(Ctx ctx, string fields) { string[] paramValue = fields.Split(','); int M_Warehouse_ID; //Assign parameter value M_Warehouse_ID = Util.GetValueOfInt(paramValue[0].ToString()); //Assign parameter value MWarehouse wh = MWarehouse.Get(ctx, M_Warehouse_ID); Dictionary <string, string> result = new Dictionary <string, string>(); result["M_Locator_ID"] = wh.GetDefaultM_Locator_ID().ToString(); return(result); }
private ActionResult GetTotalQty(string itemId, string warehouseId, EnumTransactionStatus transactionStatus) { if (!string.IsNullOrEmpty(itemId) && !string.IsNullOrEmpty(warehouseId)) { MItem mItem = _mItemRepository.Get(itemId); MWarehouse warehouse = _mWarehouseRepository.Get(warehouseId); decimal? totalUsed = _tTransDetRepository.GetTotalUsed(mItem, warehouse, null, null, transactionStatus.ToString()); if (totalUsed.HasValue) { return(Content(totalUsed.Value.ToString(Helper.CommonHelper.NumberFormat))); } } return(Content("0")); }
public decimal?GetTotalUsed(MItem item, MWarehouse warehouse, DateTime?dateFrom, DateTime?dateTo, string transStatus) { StringBuilder sql = new StringBuilder(); sql.AppendLine( @" select sum(det.TransDetQty) from TTransDet as det left outer join det.TransId trans where det.DataStatus <> :dataStatus and trans.TransStatus = :TransStatus "); if (item != null) { sql.AppendLine(@" and det.ItemId = :item"); } if (warehouse != null) { sql.AppendLine(@" and trans.WarehouseId = :warehouse"); } if (dateFrom.HasValue && dateTo.HasValue) { sql.AppendLine(@" and trans.TransDate between :dateFrom and :dateTo "); } IQuery q = Session.CreateQuery(sql.ToString()); q.SetString("dataStatus", EnumDataStatus.Deleted.ToString()); q.SetString("TransStatus", transStatus); if (item != null) { q.SetEntity("item", item); } if (warehouse != null) { q.SetEntity("warehouse", warehouse); } if (dateFrom.HasValue && dateTo.HasValue) { q.SetDateTime("dateFrom", dateFrom.Value); q.SetDateTime("dateTo", dateTo.Value); } if (q.UniqueResult() != null) { return((decimal)q.UniqueResult()); } return(null); }
public virtual ActionResult GetListTrans(string transStatus, string warehouseId, string transBy) { IList <TTrans> transes; //if (!string.IsNullOrEmpty(transStatus)) MWarehouse warehouse = _mWarehouseRepository.Get(warehouseId); { transes = _tTransRepository.GetByWarehouseStatusTransBy(warehouse, transStatus, transBy); } StringBuilder sb = new StringBuilder(); sb.AppendFormat("{0}:{1}", string.Empty, "-Pilih Faktur-"); foreach (TTrans trans in transes) { sb.AppendFormat(";{0}:{1}", trans.Id, trans.TransFactur); } return(Content(sb.ToString())); }
/// <summary> /// Check Qty Availablity in warehouse when Disallow Negative Inventory = true /// </summary> /// <param name="ctx">context</param> /// <param name="M_Warehouse_ID">warehouse refernce - for checking disallow negative inventory or not</param> /// <param name="M_Locator_ID">locator ref - in which locator we have to check stock</param> /// <param name="M_Product_ID">product ref -- to which product, need to check stock</param> /// <param name="M_AttributeSetInstance_ID">AttributeSetInstance -- to which ASI, need to check stock</param> /// <param name="MovementQty">qty to be impacted</param> /// <param name="trxName">system transaction</param> /// <returns>TRUE/False</returns> private bool CheckQtyAvailablity(Ctx ctx, int M_Warehouse_ID, int M_Locator_ID, int M_Product_ID, int M_AttributeSetInstance_ID, Decimal?MovementQty, Trx trxName) { MWarehouse wh = MWarehouse.Get(ctx, M_Warehouse_ID); MProduct product = null; if (wh.IsDisallowNegativeInv() && M_Product_ID > 0) { product = MProduct.Get(ctx, M_Product_ID); string qry = "SELECT NVL(SUM(NVL(QtyOnHand,0)),0) AS QtyOnHand FROM M_Storage where m_locator_id=" + M_Locator_ID + @" and m_product_id=" + M_Product_ID; qry += " AND NVL(M_AttributeSetInstance_ID, 0) =" + M_AttributeSetInstance_ID; Decimal?OnHandQty = Convert.ToDecimal(DB.ExecuteScalar(qry, null, trxName)); if (OnHandQty + MovementQty < 0) { log.SaveError("Info", product.GetName() + ", " + Msg.GetMsg(GetCtx(), "VIS_InsufficientQty") + OnHandQty); return(false); } } return(true); }
} // createRequisition /// <summary> /// Get Locator_ID /// </summary> /// <param name="product"> product </param> /// <param name="wh">warehouse</param> /// <returns>locator with highest priority</returns> private int GetLocator_ID(MProduct product, MWarehouse wh) { int M_Locator_ID = MProductLocator.GetFirstM_Locator_ID(product, wh.GetM_Warehouse_ID()); /** * MLocator[] locators = MProductLocator.getLocators (product, wh.getM_Warehouse_ID()); * for (int i = 0; i < locators.length; i++) * { * MLocator locator = locators[i]; * // Storage/capacity restrictions come here * return locator.getM_Locator_ID(); * } * // default **/ if (M_Locator_ID == 0) { M_Locator_ID = wh.GetDefaultM_Locator_ID(); } return(M_Locator_ID); } // getLocator_ID