using Sarand.BusinessMgr.Net.Standard.Base.App; using Sarand.BusinessMgr.Net.Standard.Base.Bus; using Sarand.BusinessMgr.Net.Standard.Base.UpdateLog; using Sarand.Net.Standard.Base.App; using Sarand.Net.Standard.Base.Bus; namespace Sarand.BusinessMgr.Net.Standard.Dbas.UpdateLog { //======================================================================= public class SbmUpdateLogItemMonitor_Asset : SbmUpdateLogItemMonitor { //------------------------------------------------------------------- // Configuration. public new class Config : SbmUpdateLogItemMonitor.Config { public Config(SbmInternals internals, SysId itemId) : base(internals) { ItemType = (short)Sbm.ItemType.Asset; ItemId = itemId; } } //------------------------------------------------------------------- // Data members. //------------------------------------------------------------------- // Construction. public SbmUpdateLogItemMonitor_Asset(SbmInternals internals, SbmAsset asset) : base(new Config(internals, asset.Id)) { RecordAttrValues(asset, false); } //------------------------------------------------------------------- // Record attribute values. public bool RecordUpdatedValues(SbmAsset asset) { return RecordAttrValues(asset, true); } private bool RecordAttrValues(SbmAsset asset, bool newValues) { ClearErrorState(); // Asset Properties - record values that may require logging. RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AssetCategoryId, SysId.ToInt(asset.AssetCategoryId), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_SerialNumber, asset.SerialNumber, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_RefExt, asset.RefExt, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_DescBrief, asset.DescBrief, newValues); //RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_ItemId, asset.ItemId, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_PurchaseOn, asset.PurchaseOn, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AssocIdSupplier, SysId.ToInt(asset.AssocIdSupplier), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_PaymentTerms, asset.PaymentTerms, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountPurchase, asset.AmountPurchase, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_TaxCodeIdPurchase, SysId.ToInt(asset.TaxCodeIdPurchase), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountPurchaseGross, asset.AmountPurchaseGross, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountSettlementGross, asset.AmountSettlementGross, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountEnhancementGross, asset.AmountEnhancementGross, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AssocIdCustomer, SysId.ToInt(asset.AssocIdCustomer), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_SellCategoryCode, asset.SellCategoryCode, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountSell, asset.AmountSell, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_TaxCodeIdSell, SysId.ToInt(asset.TaxCodeIdSell), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountSellGross, asset.AmountSellGross, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_TaxCodeIdProfit, SysId.ToInt(asset.TaxCodeIdProfit), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_SoldOn, asset.SoldOn, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountSold, asset.AmountSold, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountSoldGross, asset.AmountSoldGross, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_DisposeCode, asset.DisposeCode, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_DisposeOn, asset.DisposeOn, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_DueBackOn, asset.DueBackOn, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountRentalCost, asset.AmountRentalCost, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_UomIdRentalCost, SysId.ToInt(asset.UomIdRentalCost), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_TaxCodeIdRentalCost, SysId.ToInt(asset.TaxCodeIdRentalCost), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_AmountRentalPrice, asset.AmountRentalPrice, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_UomIdRentalPrice, SysId.ToInt(asset.UomIdRentalPrice), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_TaxCodeIdRentalPrice, SysId.ToInt(asset.TaxCodeIdRentalPrice), newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_ProcessIdNext, SysId.ToInt(asset.ProcessIdNext), newValues); // Common properties. RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_Notes, asset.Notes, newValues); RecordAttrValue(SbmDbDfn.ColumnIdx.SaAsset_Status, SacsSystem.GetStatusCode(asset.Status), newValues); return OK; } //------------------------------------------------------------------- } //======================================================================= }