Consolidate User Context
This commit is contained in:
@@ -593,9 +593,9 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Create Commodity.
|
||||
public override SbmCommodity CreateCommodity(SysId id, SysId affiliateIdOwner, Sbm.CommodityType commodityType, String code)
|
||||
public override SbmCommodity CreateCommodity(SysId affiliateIdOwner, Sbm.CommodityType commodityType, String code)
|
||||
{
|
||||
return new SbmCommodity_Dbas(Internals, id, affiliateIdOwner, commodityType, code, 0);
|
||||
return new SbmCommodity_Dbas(Internals, null, affiliateIdOwner, commodityType, code, 0);
|
||||
}
|
||||
private SbmCommodity_Dbas CreateCommodity(Commodity_Db dbCommodity)
|
||||
{
|
||||
@@ -1068,7 +1068,8 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
// Getting Commodity column definition.
|
||||
public override ColumnDfn GetCommodityColumnDfn(SbmCommodity.Column columnId, string caption = "", int width = 0)
|
||||
{
|
||||
bool canViewFinancials = UserContext.SecurityProfile.Financial.CanViewFinancials;
|
||||
bool canViewSalesFinancials = UserContext.SecurityProfile.UserCanViewFinancials(Sbm.FinancialType.CommoditySales);
|
||||
bool canViewSupplyFinancials = UserContext.SecurityProfile.UserCanViewFinancials(Sbm.FinancialType.CommoditySupply);
|
||||
|
||||
ColumnDfn columnDfn = new ColumnDfn((int)columnId, caption, width);
|
||||
switch (columnId)
|
||||
@@ -1084,9 +1085,15 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
columnDfn.ReadOnly = true;
|
||||
break;
|
||||
// Commodity Properties.
|
||||
case SbmCommodity.Column.Type_Desc:
|
||||
case SbmCommodity.Column.Type:
|
||||
SetCommodityColDfn(columnDfn, "Type", 70, SbmDbDfn.ColumnIdx.Commodity_Type, ColumnAlignment.Center, DataValue.DataType.Long);
|
||||
break;
|
||||
case SbmCommodity.Column.Type_Code:
|
||||
SetCommodityColDfn(columnDfn, "Type", 70, SbmDbDfn.ColumnIdx.Commodity_Type, ColumnAlignment.Center);
|
||||
break;
|
||||
case SbmCommodity.Column.Type_Desc:
|
||||
SetCommodityColDfn(columnDfn, "Type", 90, SbmDbDfn.ColumnIdx.Commodity_Type, ColumnAlignment.Center);
|
||||
break;
|
||||
case SbmCommodity.Column.Code:
|
||||
SetCommodityColDfn(columnDfn, "Code", 120, SbmDbDfn.ColumnIdx.Commodity_Code);
|
||||
if (ConfigConsole != null && AllowConfigOption(Sbm.ConfigOption.CommodityDoubleColumnWidth))
|
||||
@@ -1318,7 +1325,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
SetCommodityColDfn(columnDfn, "Part number", 90, SbmDbDfn.ColumnIdx.Commodity_SupplierRef, ColumnAlignment.Center);
|
||||
break;
|
||||
case SbmCommodity.Column.CostPrice:
|
||||
if (canViewFinancials)
|
||||
if (canViewSupplyFinancials)
|
||||
{
|
||||
String label = GetAttributeCaption(SbmDbDfn.ColumnIdx.Commodity_CostPrice, "Cost price");
|
||||
SetCommodityColDfn(columnDfn, label, 70, SbmDbDfn.ColumnIdx.Commodity_CostPrice, ColumnAlignment.Right, DataValue.DataType.Double);
|
||||
@@ -1327,7 +1334,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.CostPrice_Fmt:
|
||||
if (canViewFinancials)
|
||||
if (canViewSupplyFinancials)
|
||||
{
|
||||
String label = GetAttributeCaption(SbmDbDfn.ColumnIdx.Commodity_CostPrice, "Cost price");
|
||||
SetCommodityColDfn(columnDfn, label, 70, SbmDbDfn.ColumnIdx.Unknown, ColumnAlignment.Right);
|
||||
@@ -1338,7 +1345,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
SetCommodityColDfn(columnDfn, "Place of origin", 90, SbmDbDfn.ColumnIdx.Commodity_PlaceOfOrigin);
|
||||
break;
|
||||
case SbmCommodity.Column.MaterialCost:
|
||||
if (canViewFinancials)
|
||||
if (canViewSupplyFinancials)
|
||||
{
|
||||
String label = GetAttributeCaption(SbmDbDfn.ColumnIdx.Commodity_MaterialCost, "Material cost");
|
||||
SetCommodityColDfn(columnDfn, label, 80, SbmDbDfn.ColumnIdx.Commodity_MaterialCost, ColumnAlignment.Right, DataValue.DataType.Double, aliasCommodity_CurrencyMaterial, prefixCommodity_CurrencyMaterial);
|
||||
@@ -1347,7 +1354,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.MaterialCost_Fmt:
|
||||
if (canViewFinancials)
|
||||
if (canViewSupplyFinancials)
|
||||
{
|
||||
String label = GetAttributeCaption(SbmDbDfn.ColumnIdx.Commodity_MaterialCost, "Material cost");
|
||||
SetCommodityColDfn(columnDfn, label, 90, SbmDbDfn.ColumnIdx.Commodity_MaterialCost, ColumnAlignment.Right, DataValue.DataType.String, aliasCommodity_CurrencyMaterial, prefixCommodity_CurrencyMaterial);
|
||||
@@ -1421,7 +1428,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
SetCommodityColDfn(columnDfn, "Customer", 100, SbmDbDfn.ColumnIdx.Affiliate_Name);
|
||||
break;
|
||||
case SbmCommodity.Column.SalesPrice:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "Sales price", 80, SbmDbDfn.ColumnIdx.Commodity_SalesPrice, ColumnAlignment.Right, DataValue.DataType.Double);
|
||||
columnDfn.NumDecimals = CurrencyDecimalsDefault;
|
||||
@@ -1429,14 +1436,14 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.SalesPrice_Fmt:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "Sales price", 90, SbmDbDfn.ColumnIdx.Unknown, ColumnAlignment.Right, DataValue.DataType.String);
|
||||
columnDfn.ShowZeroValues = false;
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.RetailPrice:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "RRP", 80, SbmDbDfn.ColumnIdx.Commodity_RetailPrice, ColumnAlignment.Right, DataValue.DataType.Double);
|
||||
columnDfn.NumDecimals = CurrencyDecimalsDefault;
|
||||
@@ -1444,14 +1451,14 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.RetailPrice_Fmt:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "RRP", 90, SbmDbDfn.ColumnIdx.Unknown, ColumnAlignment.Right, DataValue.DataType.String);
|
||||
columnDfn.ShowZeroValues = false;
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.RetailPricePlanned:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "Planned RRP", 80, SbmDbDfn.ColumnIdx.Commodity_RetailPricePlanned, ColumnAlignment.Right, DataValue.DataType.Double);
|
||||
columnDfn.NumDecimals = CurrencyDecimalsDefault;
|
||||
@@ -1459,14 +1466,14 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.RetailPricePlanned_Fmt:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "Planned RRP", 90, SbmDbDfn.ColumnIdx.Commodity_RetailPricePlanned, ColumnAlignment.Right, DataValue.DataType.String);
|
||||
columnDfn.ShowZeroValues = false;
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.GrossPrice:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "Gross price", 80, SbmDbDfn.ColumnIdx.Unknown, ColumnAlignment.Right, DataValue.DataType.Double);
|
||||
columnDfn.NumDecimals = CurrencyDecimalsDefault;
|
||||
@@ -1474,7 +1481,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.GrossPrice_Fmt:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "Gross price", 90, SbmDbDfn.ColumnIdx.Unknown, ColumnAlignment.Right, DataValue.DataType.String);
|
||||
columnDfn.ShowZeroValues = false;
|
||||
@@ -1484,7 +1491,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
SetCommodityColDfn(columnDfn, "Unit of Sale", 100, SbmDbDfn.ColumnIdx.UnitMeasure_Single, ColumnAlignment.Center);
|
||||
break;
|
||||
case SbmCommodity.Column.CarriageCostIndicative:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "Carriage cost (ind)", 80, SbmDbDfn.ColumnIdx.Commodity_CarriageCostIndicative, ColumnAlignment.Right, DataValue.DataType.Double);
|
||||
columnDfn.NumDecimals = CurrencyDecimalsDefault;
|
||||
@@ -1492,7 +1499,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
}
|
||||
break;
|
||||
case SbmCommodity.Column.CarriageCostIndicative_Fmt:
|
||||
if (canViewFinancials)
|
||||
if (canViewSalesFinancials)
|
||||
{
|
||||
SetCommodityColDfn(columnDfn, "Carriage cost (ind)", 90, SbmDbDfn.ColumnIdx.Commodity_CarriageCostIndicative, ColumnAlignment.Right, DataValue.DataType.String);
|
||||
columnDfn.ShowZeroValues = false;
|
||||
@@ -2267,23 +2274,41 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
String fn = GetType().Name + ".GetCommodityQueryFilter";
|
||||
List<String> filter = new List<String>();
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Common columns.
|
||||
String colCommodity_Id = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Id, aliasCommodity);
|
||||
String colCommodity_AffIdOwner = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_AffIdOwner, aliasCommodity);
|
||||
String colCommodity_Type = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Type, aliasCommodity);
|
||||
String colCommodity_Code = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Code, aliasCommodity);
|
||||
String colCommodity_DescBrief = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DescBrief, aliasCommodity);
|
||||
String colCommodity_DescDetail = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DescDetail, aliasCommodity);
|
||||
String colCommodity_SpecSummary = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_SpecSummary, aliasCommodity);
|
||||
String colCommodity_DrawingNo = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DrawingNo, aliasCommodity);
|
||||
String colCommodity_DrawingIssue = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DrawingIssue, aliasCommodity);
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Commodity Id.
|
||||
String includedIds = prm.IncludedIds.Concat(",");
|
||||
String colCommodity_Id = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Id, aliasCommodity);
|
||||
if (!includedIds.IsEmpty()) filter.Add(colCommodity_Id + " IN (" + includedIds + ")");
|
||||
String excludedIds = prm.ExcludedIds.Concat(",");
|
||||
if (!excludedIds.IsEmpty()) filter.Add(colCommodity_Id + " NOT IN (" + excludedIds + ")");
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Owner.
|
||||
String colCommodity_AffIdOwner = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_AffIdOwner, aliasCommodity);
|
||||
bool filterByOwner = !prm.IncludedIds.HasValidIds() && !prm.PriceSetIdsIncluded.HasValidIds() && !SysId.IsValid(prm.AssociationIdCustomer) && !SysId.IsValid(prm.AssociationIdCommodityCustomer);
|
||||
if (filterByOwner) filter.Add(colCommodity_AffIdOwner + "=" + SysId.ToString(AffiliateId_Owner));
|
||||
// Organisation.
|
||||
if (SysId.IsValid(prm.AffiliateIdOrganisation))
|
||||
filter.Add(colCommodity_AffIdOwner + "=" + SysId.ToString(prm.AffiliateIdOrganisation));
|
||||
else
|
||||
{
|
||||
// Must filter by organisation if insufficient alternative filetrs.
|
||||
if (!prm.IncludedIds.HasValidIds() && !prm.PriceSetIdsIncluded.HasValidIds() && !SysId.IsValid(prm.AssociationIdCustomer) && !SysId.IsValid(prm.AssociationIdCommodityCustomer))
|
||||
{
|
||||
if (!SysId.IsValid(AffiliateId_Owner)) throw new NotSupportedException("Commodity query filter - Organisation Id must be specified");
|
||||
filter.Add(colCommodity_AffIdOwner + "=" + SysId.ToString(AffiliateId_Owner));
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Type.
|
||||
String colCommodity_Type = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Type, aliasCommodity);
|
||||
if (prm.CommodityType == Sbm.CommodityType.AnyProduct)
|
||||
filter.Add(colCommodity_Type + " In (" + ((int)Sbm.CommodityType.Stock).ToString() + "," + ((int)Sbm.CommodityType.NonStock).ToString() + ")");
|
||||
else if ((int)prm.CommodityType > 0)
|
||||
@@ -2293,7 +2318,6 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Code.
|
||||
String colCommodity_Code = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Code, aliasCommodity);
|
||||
if (!StringUtil.IsEmpty(prm.CodeFull))
|
||||
filter.Add(colCommodity_Code + "='" + DbQuery.FormatForCondition(prm.CodeFull) + "'");
|
||||
else if (!StringUtil.IsEmpty(prm.CodePartial))
|
||||
@@ -2307,7 +2331,6 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
// Brief Desc.
|
||||
bool allowEmbeddedTextSearch = true;
|
||||
bool allowFullTextSearch = true;
|
||||
String colCommodity_DescBrief = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DescBrief, aliasCommodity);
|
||||
if (!StringUtil.IsEmpty(prm.DescBriefFull))
|
||||
filter.Add(colCommodity_DescBrief + "='" + DbQuery.FormatForCondition(prm.DescBriefFull) + "'");
|
||||
else if (!StringUtil.IsEmpty(prm.DescBriefPartial))
|
||||
@@ -2327,7 +2350,6 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// DrawingNumber.
|
||||
String colCommodity_DrawingNo = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DrawingNo, aliasCommodity);
|
||||
if (!StringUtil.IsEmpty(prm.DrawingNoFull))
|
||||
{
|
||||
filter.Add(colCommodity_DrawingNo + "='" + DbQuery.FormatForCondition(prm.DrawingNoFull) + "'");
|
||||
@@ -2338,12 +2360,31 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
}
|
||||
|
||||
// DrawingIssue.
|
||||
String colCommodity_DrawingIssue = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DrawingIssue, aliasCommodity);
|
||||
if (!StringUtil.IsEmpty(prm.DrawingIssueFull))
|
||||
filter.Add(colCommodity_DrawingIssue + "='" + DbQuery.FormatForCondition(prm.DrawingIssueFull) + "'");
|
||||
else if (!StringUtil.IsEmpty(prm.DrawingIssuePartial))
|
||||
filter.Add(DbQuery.FormatFn_Left(colCommodity_DrawingIssue, prm.DrawingIssuePartial.Length) + "='" + DbQuery.FormatForCondition(prm.DrawingIssuePartial) + "'");
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Generic search.
|
||||
if (!StringUtil.IsEmpty(prm.Search))
|
||||
{
|
||||
List<String> searchFilter = new List<string>();
|
||||
foreach (String rawSearchValue in prm.Search.Split(new char[] { ' ', ',', ';' }))
|
||||
{
|
||||
String searchValue = DbQuery.FormatForLike(StringUtil.TrimAll(rawSearchValue));
|
||||
if (StringUtil.IsEmpty(searchValue)) continue;
|
||||
List<String> searchValueFilter = new List<string>();
|
||||
searchValueFilter.Add(colCommodity_Code + " LIKE '%" + searchValue + "%'");
|
||||
searchValueFilter.Add(colCommodity_DescBrief + " LIKE '%" + searchValue + "%'");
|
||||
searchValueFilter.Add(colCommodity_DescDetail + " LIKE '%" + searchValue + "%'");
|
||||
searchValueFilter.Add(colCommodity_SpecSummary + " LIKE '%" + searchValue + "%'");
|
||||
searchValueFilter.Add(colCommodity_DrawingNo + " LIKE '%" + searchValue + "%'");
|
||||
searchFilter.Add(searchValueFilter.Concat(" OR ", "(", ")"));
|
||||
}
|
||||
filter.AddRange(searchFilter);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Catalog.
|
||||
String colCommodity_CatalogRef = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_CatalogRef, aliasCommodity);
|
||||
@@ -2670,7 +2711,8 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
{
|
||||
ClearErrorState();
|
||||
PopulateLocationIdLists();
|
||||
bool canViewFinancials = UserContext.SecurityProfile.Financial.CanViewFinancials;
|
||||
bool canViewSupplyFinancials = UserContext.SecurityProfile.UserCanViewFinancials(Sbm.FinancialType.CommoditySupply);
|
||||
bool canViewSalesFinancials = UserContext.SecurityProfile.UserCanViewFinancials(Sbm.FinancialType.CommoditySales);
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Construct query.
|
||||
@@ -2693,8 +2735,10 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Commodity Properties - add columns as defined in query list.
|
||||
if (columns.HasId(SbmCommodity.Column.Id)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Id, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.Type_Desc)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Type, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.Id))
|
||||
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Id, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.Type) || columns.HasId(SbmCommodity.Column.Type_Code) || columns.HasId(SbmCommodity.Column.Type_Desc))
|
||||
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Type, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.Code)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Code, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.DescBrief)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DescBrief, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.DescDetail)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DescDetail, aliasCommodity));
|
||||
@@ -2740,18 +2784,14 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
if (columns.HasId(SbmCommodity.Column.NominalCodePurchase)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_NominalCodePurchase, aliasCommodity));
|
||||
//---------------------------------------------------------------
|
||||
// Currency (to come).
|
||||
if (canViewFinancials && (columns.HasId(SbmCommodity.Column.CostPrice_Fmt) ||
|
||||
columns.HasId(SbmCommodity.Column.SalesPrice_Fmt) ||
|
||||
columns.HasId(SbmCommodity.Column.RetailPrice_Fmt) ||
|
||||
columns.HasId(SbmCommodity.Column.RetailPricePlanned_Fmt) ||
|
||||
columns.HasId(SbmCommodity.Column.GrossPrice_Fmt) ||
|
||||
columns.HasId(SbmCommodity.Column.CarriageCostIndicative_Fmt)))
|
||||
if ((canViewSupplyFinancials && (columns.HasId(SbmCommodity.Column.CostPrice_Fmt))) ||
|
||||
(canViewSalesFinancials && (columns.HasId(SbmCommodity.Column.SalesPrice_Fmt) || columns.HasId(SbmCommodity.Column.RetailPrice_Fmt) || columns.HasId(SbmCommodity.Column.RetailPricePlanned_Fmt) || columns.HasId(SbmCommodity.Column.GrossPrice_Fmt) || columns.HasId(SbmCommodity.Column.CarriageCostIndicative_Fmt))))
|
||||
{
|
||||
}
|
||||
//---------------------------------------------------------------
|
||||
// Purchasing.
|
||||
if (columns.HasId(SbmCommodity.Column.Supplier_Ref)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_SupplierRef, aliasCommodity));
|
||||
if (canViewFinancials && (columns.HasId(SbmCommodity.Column.CostPrice) ||
|
||||
if (canViewSupplyFinancials && (columns.HasId(SbmCommodity.Column.CostPrice) ||
|
||||
columns.HasId(SbmCommodity.Column.CostPrice_Fmt))) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_CostPrice, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.PlaceOfOrigin)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_PlaceOfOrigin, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.MaterialCost) || columns.HasId(SbmCommodity.Column.MaterialCost_Fmt)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_MaterialCost, aliasCommodity));
|
||||
@@ -2769,12 +2809,12 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
if (columns.HasId(SbmCommodity.Column.QtyOnOrder)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_QtyOnOrder, aliasCommodity));
|
||||
//---------------------------------------------------------------
|
||||
// Sales.
|
||||
if (canViewFinancials && (columns.HasId(SbmCommodity.Column.SalesPrice) ||
|
||||
if (canViewSalesFinancials && (columns.HasId(SbmCommodity.Column.SalesPrice) ||
|
||||
columns.HasId(SbmCommodity.Column.SalesPrice_Fmt) ||
|
||||
columns.HasId(SbmCommodity.Column.GrossPrice) || columns.HasId(SbmCommodity.Column.GrossPrice_Fmt))) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_SalesPrice, aliasCommodity));
|
||||
if (canViewFinancials && (columns.HasId(SbmCommodity.Column.RetailPrice) ||
|
||||
if (canViewSalesFinancials && (columns.HasId(SbmCommodity.Column.RetailPrice) ||
|
||||
columns.HasId(SbmCommodity.Column.RetailPrice_Fmt))) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_RetailPrice, aliasCommodity));
|
||||
if (canViewFinancials && (columns.HasId(SbmCommodity.Column.RetailPricePlanned) ||
|
||||
if (canViewSalesFinancials && (columns.HasId(SbmCommodity.Column.RetailPricePlanned) ||
|
||||
columns.HasId(SbmCommodity.Column.RetailPricePlanned_Fmt))) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_RetailPricePlanned, aliasCommodity));
|
||||
if (columns.HasId(SbmCommodity.Column.CarriageCostIndicative) ||
|
||||
columns.HasId(SbmCommodity.Column.CarriageCostIndicative_Fmt)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_CarriageCostIndicative, aliasCommodity));
|
||||
@@ -2973,7 +3013,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
||||
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.TaxCode_Code, aliasCommodity_TaxCode_Sale), prefixCommodity_TaxCode_Sale + SbmDbDfn.GetColumnName(SbmDbDfn.ColumnIdx.TaxCode_Code, false));
|
||||
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.TaxCode_TaxRate, aliasCommodity_TaxCode_Sale), prefixCommodity_TaxCode_Sale + SbmDbDfn.GetColumnName(SbmDbDfn.ColumnIdx.TaxCode_TaxRate, false));
|
||||
}
|
||||
if (canViewFinancials && columns.HasId(SbmCommodity.Column.GrossPrice))
|
||||
if (canViewSalesFinancials && columns.HasId(SbmCommodity.Column.GrossPrice))
|
||||
{
|
||||
// Calculate RRP: SalesPrice + TaxRate%
|
||||
String colCommodity_SalesPrice = "(" + SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_SalesPrice, aliasCommodity) + "*(1.0+(" + prefixCommodity_TaxCode_Sale + SbmDbDfn.GetColumnName(SbmDbDfn.ColumnIdx.TaxCode_TaxRate, false) + "/100.0)))";
|
||||
|
||||
Reference in New Issue
Block a user