public virtual bool PrepareImportRow(string viewName, IDictionary keys, IDictionary values) { if (string.Compare(viewName, "VendorCatalogue", true) == 0) { string inventoryCD = (string)values[_inventoryID]; var r = (PXResult <InventoryItem, INSubItem>) PXSelectJoin <InventoryItem, LeftJoin <INSubItem, On <INSubItem.subItemCD, Equal <Required <INSubItem.subItemCD> >, Or <Where <Required <INSubItem.subItemCD>, IsNull, And <INSubItem.subItemID, Equal <InventoryItem.defaultSubItemID> > > > > >, Where <InventoryItem.inventoryCD, Equal <Required <InventoryItem.inventoryCD> > > > .Select(this, values[_subItemID], values[_subItemID], inventoryCD); InventoryItem item = r; INSubItem subitem = r; if (item != null && item.InventoryID != null) { string uom = (string)values[_uOM] ?? item.PurchaseUnit; if (values[_subItemID] == null) { values[_subItemID] = subitem.SubItemCD; } POVendorInventory old_row = subitem.SubItemID != null ? PXSelect <POVendorInventory, Where <POVendorInventory.vendorID, Equal <Required <POVendorInventory.vendorID> >, And <POVendorInventory.vendorLocationID, Equal <Required <POVendorInventory.vendorLocationID> >, And <POVendorInventory.inventoryID, Equal <Required <POVendorInventory.inventoryID> >, And <POVendorInventory.purchaseUnit, Equal <Required <POVendorInventory.purchaseUnit> >, And <Where <POVendorInventory.subItemID, Equal <Required <POVendorInventory.subItemID> > > > > > > > > .SelectWindowed(this, 0, 1, this.BAccount.Current.BAccountID, this.BAccount.Current.LocationID, item.InventoryID, uom, subitem.SubItemID) : PXSelect <POVendorInventory, Where <POVendorInventory.vendorID, Equal <Required <POVendorInventory.vendorID> >, And <POVendorInventory.vendorLocationID, Equal <Required <POVendorInventory.vendorLocationID> >, And <POVendorInventory.inventoryID, Equal <Required <POVendorInventory.inventoryID> >, And <POVendorInventory.purchaseUnit, Equal <Required <POVendorInventory.purchaseUnit> >, And <POVendorInventory.subItemID, IsNull> > > > > > .SelectWindowed(this, 0, 1, this.BAccount.Current.BAccountID, this.BAccount.Current.LocationID, item.InventoryID, uom); if (old_row != null) { if (values[_uOM] == null) { values[_uOM] = old_row.PurchaseUnit; } if (keys.Contains(_recordID)) { keys[_recordID] = old_row.RecordID; values[_recordID] = old_row.RecordID; } } } } return(true); }
public static PIItemLocationInfo Create(PXResult result) { InventoryItem inventoryItem = result.GetItem <InventoryItem>(); INSubItem subItem = result.GetItem <INSubItem>(); INLocation location = result.GetItem <INLocation>(); INLotSerialStatus lotSerialStatus = result.GetItem <INLotSerialStatus>(); return(new PIItemLocationInfo { InventoryID = (int)inventoryItem.InventoryID, SubItemID = subItem?.SubItemID, LocationID = (int)location.LocationID, QueryResult = result, InventoryCD = inventoryItem.InventoryCD, SubItemCD = subItem?.SubItemCD, LocationCD = location.LocationCD, LotSerialNbr = lotSerialStatus?.LotSerialNbr, Description = inventoryItem.Descr }); }
public virtual System.Collections.IEnumerable InventorySummary(PXAdapter adapter) { PXCache tCache = FixedDemand.Cache; SOFixedDemand line = FixedDemand.Current; if (line == null) { return(adapter.Get()); } InventoryItem item = (InventoryItem)PXSelectorAttribute.Select <SOFixedDemand.inventoryID>(tCache, line); if (item != null && item.StkItem == true) { INSubItem sbitem = (INSubItem)PXSelectorAttribute.Select <SOFixedDemand.subItemID>(tCache, line); InventorySummaryEnq.Redirect(item.InventoryID, ((sbitem != null) ? sbitem.SubItemCD : null), line.SiteID, line.LocationID); } return(adapter.Get()); }