|
|
|
@@ -16,6 +16,7 @@ using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Data.Common;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text.RegularExpressions;
|
|
|
|
|
using System.Transactions;
|
|
|
|
|
|
|
|
|
|
namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
@@ -775,6 +776,9 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
requirement.QuantityProd = (decimal)dbRequirement._QuantityProd;
|
|
|
|
|
requirement.UomId = new SysId(dbRequirement._UomId ?? 0);
|
|
|
|
|
requirement.MaterialSourceCode = dbRequirement._MaterialSourceCode;
|
|
|
|
|
requirement.AmountUnit = (decimal)dbRequirement._AmountUnit;
|
|
|
|
|
requirement.AmountAct = (decimal)dbRequirement._AmountAct;
|
|
|
|
|
requirement.AmountDisc = (decimal)dbRequirement._AmountDisc;
|
|
|
|
|
requirement.AmountNet = (decimal)dbRequirement._AmountNet;
|
|
|
|
|
requirement.TaxCodeId = new SysId(dbRequirement._TaxCodeId ?? 0);
|
|
|
|
|
requirement.TaxRate = (decimal)dbRequirement._TaxRate;
|
|
|
|
@@ -910,7 +914,10 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
case SbmRequirement.Column.TransId:
|
|
|
|
|
SetRequirementColDfn(columnDfn, "Trans Id", 80, SbmDbDfn.ColumnIdx.Requirement_TransId, ColumnAlignment.Right, DataValue.DataType.Long);
|
|
|
|
|
break;
|
|
|
|
|
case SbmRequirement.Column.Seq:
|
|
|
|
|
case SbmRequirement.Column.Type:
|
|
|
|
|
SetRequirementColDfn(columnDfn, "Type", 50, SbmDbDfn.ColumnIdx.Requirement_Type, ColumnAlignment.Center, DataValue.DataType.Long);
|
|
|
|
|
break;
|
|
|
|
|
case SbmRequirement.Column.Sequence:
|
|
|
|
|
SetRequirementColDfn(columnDfn, "Seq", 50, SbmDbDfn.ColumnIdx.Requirement_Seq, ColumnAlignment.Right, DataValue.DataType.String);
|
|
|
|
|
break;
|
|
|
|
|
case SbmRequirement.Column.Started:
|
|
|
|
@@ -1215,6 +1222,9 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
break;
|
|
|
|
|
//-----------------------------------------------------------------
|
|
|
|
|
// Transaction details.
|
|
|
|
|
case SbmRequirement.Column.Trans_Type:
|
|
|
|
|
SetRequirementColDfn(columnDfn, "Trans type", 70, SbmDbDfn.ColumnIdx.Transaction_Type, ColumnAlignment.Center, DataValue.DataType.Long, aliasRequirement_Transaction, prefixRequirement_Transaction);
|
|
|
|
|
break;
|
|
|
|
|
case SbmRequirement.Column.Trans_TypeDesc:
|
|
|
|
|
SetRequirementColDfn(columnDfn, "Trans type", 70, SbmDbDfn.ColumnIdx.Transaction_Type, ColumnAlignment.Left, DataValue.DataType.String, aliasRequirement_Transaction, prefixRequirement_Transaction);
|
|
|
|
|
break;
|
|
|
|
@@ -1934,15 +1944,33 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
//---------------------------------------------------------------
|
|
|
|
|
// Validate the parameters.
|
|
|
|
|
#if DEBUG
|
|
|
|
|
if (!SysId.IsValid(AffiliateId_Owner) && !SysId.IsValid(prm.AssociationId) && !SysId.IsValid(prm.CommodityId) && !SysId.IsValid(prm.TransactionRequirementSourceId) && !prm.TransactionIdsIncluded.HasValidIds() && !prm.RequirementIdsIncluded.HasValidIds() && !prm.RequirementIdsSource.HasValidIds())
|
|
|
|
|
SaLogger.Trace("\t### " + GetType().Name + ".GetRequirementQueryFilter - Owner/association/transaction not specified.");
|
|
|
|
|
if (!SysId.IsValid(AffiliateId_Owner) && !SysId.IsValid(prm.AssociationId) && !SysId.IsValid(prm.CommodityId) && !SysId.IsValid(prm.TransactionRequirementSourceId) && !prm.TransactionIdsIncluded.HasValidIds() && !prm.IdsIncluded.HasValidIds() && !prm.RequirementIdsSource.HasValidIds())
|
|
|
|
|
SaLogger.Debug($"{SysUtil.Fn} ### Owner/association/transaction not specified.");
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
//---------------------------------------------------------------
|
|
|
|
|
// Affiliate Owner - only need to be filtered if no significant Ids specified.
|
|
|
|
|
bool filterByOwner = !SysId.IsValid(prm.AssociationId) && !SysId.IsValid(prm.CommodityId) && !SysId.IsValid(prm.TransactionRequirementSourceId) && !prm.TransactionIdsIncluded.HasValidIds() && !prm.RequirementIdsIncluded.HasValidIds() && !prm.RequirementIdsSource.HasValidIds();
|
|
|
|
|
bool filterByOwner =
|
|
|
|
|
!SysId.IsValid(prm.AssociationId) && !SysId.IsValid(prm.CommodityId) &&
|
|
|
|
|
!SysId.IsValid(prm.TransactionRequirementSourceId) && !prm.TransactionIdsIncluded.HasValidIds() &&
|
|
|
|
|
!prm.IdsIncluded.HasValidIds() && !prm.RequirementIdsSource.HasValidIds();
|
|
|
|
|
if (filterByOwner)
|
|
|
|
|
filter.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_AffIdOwner, tableAlias, false) + "=" + SysId.ToString(AffiliateId_Owner));
|
|
|
|
|
filter.Add($"{SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_AffIdOwner, tableAlias, false)}={SysId.ToLong(AffiliateId_Owner)}");
|
|
|
|
|
|
|
|
|
|
//---------------------------------------------------------------
|
|
|
|
|
// Requirement.
|
|
|
|
|
|
|
|
|
|
// Requirement Id.
|
|
|
|
|
String colRequirement_Id = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_Id, tableAlias);
|
|
|
|
|
if (prm.IdsIncluded.HasValidIds())
|
|
|
|
|
filter.Add($"{colRequirement_Id} IN ({prm.IdsIncluded.Concat(",")})");
|
|
|
|
|
if (prm.IdsExcluded.HasValidIds())
|
|
|
|
|
filter.Add($"{colRequirement_Id} NOT IN ({prm.IdsExcluded.Concat(",")})");
|
|
|
|
|
|
|
|
|
|
// Source Requirement.
|
|
|
|
|
String colRequirement_ReqntIdSource = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_ReqntIdSource, tableAlias, false);
|
|
|
|
|
if (prm.RequirementIdsSource.HasValidIds())
|
|
|
|
|
filter.Add($"{colRequirement_ReqntIdSource} IN ({prm.RequirementIdsSource.Concat(",")})");
|
|
|
|
|
|
|
|
|
|
//---------------------------------------------------------------
|
|
|
|
|
// Association Details.
|
|
|
|
@@ -2048,20 +2076,6 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//---------------------------------------------------------------
|
|
|
|
|
// Requirement Details:
|
|
|
|
|
// IncludeIds & ExcludeIds.
|
|
|
|
|
String includedIds = prm.RequirementIdsIncluded.Concat(",");
|
|
|
|
|
String colRequirement_Id = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_Id, tableAlias);
|
|
|
|
|
if (!StringUtil.IsEmpty(includedIds))
|
|
|
|
|
filter.Add(colRequirement_Id + " IN (" + includedIds + ")");
|
|
|
|
|
String excludedIds = prm.RequirementIdsExcluded.Concat(",");
|
|
|
|
|
if (!StringUtil.IsEmpty(excludedIds))
|
|
|
|
|
filter.Add(colRequirement_Id + " NOT IN (" + excludedIds + ")");
|
|
|
|
|
|
|
|
|
|
// Source Requirement.
|
|
|
|
|
String colRequirement_ReqntIdSource = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_ReqntIdSource, tableAlias, false);
|
|
|
|
|
if (prm.RequirementIdsSource.HasValidIds())
|
|
|
|
|
filter.Add(colRequirement_ReqntIdSource + " IN (" + prm.RequirementIdsSource.Concat(",") + ")");
|
|
|
|
|
|
|
|
|
|
// Source Requirment Transaction.
|
|
|
|
|
if (SysId.IsValid(prm.TransactionRequirementSourceId))
|
|
|
|
@@ -2078,15 +2092,45 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
filter.Add("EXISTS(" + qryTrans.BuildQuery() + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String colRequirement_JobNumber = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_JobNumber, tableAlias, false);
|
|
|
|
|
String colRequirement_DescBrief = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_DescBrief, tableAlias, false);
|
|
|
|
|
String colRequirement_ProductCode = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_ProductCode, tableAlias, false);
|
|
|
|
|
String colRequirement_Notes = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_Notes, tableAlias, false);
|
|
|
|
|
|
|
|
|
|
// Generic Search.
|
|
|
|
|
if (!StringUtil.IsBlank(prm.Search))
|
|
|
|
|
{
|
|
|
|
|
foreach (String search in Regex.Split(prm.Search, "[\\s,;\\-+]+"))
|
|
|
|
|
{
|
|
|
|
|
if (StringUtil.IsBlank(search)) continue;
|
|
|
|
|
String searchForLike = DbQuery.FormatForLike(search, true);
|
|
|
|
|
List<String> searchFilter = new List<string>();
|
|
|
|
|
searchFilter.Add($"{colRequirement_JobNumber} LIKE '%{searchForLike}%'");
|
|
|
|
|
searchFilter.Add($"{colRequirement_DescBrief} LIKE '%{searchForLike}%'");
|
|
|
|
|
searchFilter.Add($"{colRequirement_ProductCode} LIKE '%{searchForLike}%'");
|
|
|
|
|
searchFilter.Add($"{colRequirement_Notes} LIKE '%{searchForLike}%'");
|
|
|
|
|
if (!StringUtil.IsBlank(prm.AliasTransaction))
|
|
|
|
|
{
|
|
|
|
|
searchFilter.Add($"{SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Transaction_Ref, prm.AliasTransaction)} LIKE '%{searchForLike}%'");
|
|
|
|
|
}
|
|
|
|
|
if (!StringUtil.IsBlank(prm.AliasCommodity))
|
|
|
|
|
{
|
|
|
|
|
searchFilter.Add($"{SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_Code, prm.AliasCommodity)} LIKE '%{searchForLike}%'");
|
|
|
|
|
searchFilter.Add($"{SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Commodity_DescBrief, prm.AliasCommodity)} LIKE '%{searchForLike}%'");
|
|
|
|
|
}
|
|
|
|
|
if (searchFilter.Any())
|
|
|
|
|
filter.Add(searchFilter.Concat(" OR ", "(", ")"));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Requirement DescBrief.
|
|
|
|
|
String reqntDescBrief = DbQuery.FormatForCondition(prm.RequirementDescBrief);
|
|
|
|
|
String Requirement_DescBrief = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_DescBrief, tableAlias, false);
|
|
|
|
|
String reqntDescBrief = DbQuery.FormatForCondition(prm.DescBrief);
|
|
|
|
|
if (!reqntDescBrief.IsEmpty())
|
|
|
|
|
filter.Add(DbQuery.FormatFn_Left(Requirement_DescBrief, reqntDescBrief.Length) + "='" + reqntDescBrief + "'");
|
|
|
|
|
filter.Add(DbQuery.FormatFn_Left(colRequirement_DescBrief, reqntDescBrief.Length) + "='" + reqntDescBrief + "'");
|
|
|
|
|
|
|
|
|
|
// Promotion Code.
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.RequirementPromotionCode))
|
|
|
|
|
filter.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_PromotionCode, tableAlias, false) + "='" + DbQuery.FormatForCondition(prm.RequirementPromotionCode) + "'");
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.PromotionCode))
|
|
|
|
|
filter.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_PromotionCode, tableAlias, false) + "='" + DbQuery.FormatForCondition(prm.PromotionCode) + "'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//---------------------------------------------------------------
|
|
|
|
@@ -2096,11 +2140,10 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
filter.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_CommodityId, tableAlias, false) + "=" + prm.CommodityId.ToString());
|
|
|
|
|
|
|
|
|
|
// Product Code.
|
|
|
|
|
if (!prm.RequirementProductCodeFull.IsEmpty() || !prm.RequirementProductCodePartial.IsEmpty())
|
|
|
|
|
if (!prm.ProductCodeFull.IsEmpty() || !prm.ProductCodePartial.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
String reqntProductCodeFull = DbQuery.FormatForCondition(prm.RequirementProductCodeFull);
|
|
|
|
|
String reqntProductCodePartial = DbQuery.FormatForCondition(prm.RequirementProductCodePartial);
|
|
|
|
|
String colRequirement_ProductCode = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_ProductCode, tableAlias);
|
|
|
|
|
String reqntProductCodeFull = DbQuery.FormatForCondition(prm.ProductCodeFull);
|
|
|
|
|
String reqntProductCodePartial = DbQuery.FormatForCondition(prm.ProductCodePartial);
|
|
|
|
|
if (!reqntProductCodeFull.IsEmpty())
|
|
|
|
|
{
|
|
|
|
|
filter.Add(colRequirement_ProductCode + "='" + reqntProductCodeFull + "'");
|
|
|
|
@@ -2109,7 +2152,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
{
|
|
|
|
|
if (SessionConsole != null && AllowConfigOption(Sbm.ConfigOption.CommodityPartialCodeFilter))
|
|
|
|
|
filter.Add(colRequirement_ProductCode + " LIKE '%" + DbQuery.FormatForLike(reqntProductCodePartial) + "%'");
|
|
|
|
|
else filter.Add(DbQuery.FormatFn_Left(colRequirement_ProductCode, prm.RequirementProductCodePartial.Length) + "='" + reqntProductCodePartial + "'");
|
|
|
|
|
else filter.Add(DbQuery.FormatFn_Left(colRequirement_ProductCode, prm.ProductCodePartial.Length) + "='" + reqntProductCodePartial + "'");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -2143,15 +2186,14 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
|
|
|
|
|
//------------------------------------------------------------------
|
|
|
|
|
// Project Task Code.
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.RequirementProjectTaskCodeFull) || !StringUtil.IsEmpty(prm.RequirementProjectTaskCodePartial))
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.ProjectTaskCodeFull) || !StringUtil.IsEmpty(prm.ProjectTaskCodePartial))
|
|
|
|
|
{
|
|
|
|
|
String colRequirement_ProductCode = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_ProductCode, tableAlias, false);
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.RequirementProjectTaskCodeFull))
|
|
|
|
|
filter.Add(colRequirement_ProductCode + "='" + DbQuery.FormatForCondition(prm.RequirementProjectTaskCodeFull) + "'");
|
|
|
|
|
else if (!StringUtil.IsEmpty(prm.RequirementProjectTaskCodePartial))
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.ProjectTaskCodeFull))
|
|
|
|
|
filter.Add(colRequirement_ProductCode + "='" + DbQuery.FormatForCondition(prm.ProjectTaskCodeFull) + "'");
|
|
|
|
|
else if (!StringUtil.IsEmpty(prm.ProjectTaskCodePartial))
|
|
|
|
|
{
|
|
|
|
|
String reqntProjectTaskCodePartial = DbQuery.FormatForCondition(prm.RequirementProjectTaskCodePartial);
|
|
|
|
|
filter.Add(DbQuery.FormatFn_Left(colRequirement_ProductCode, prm.RequirementProjectTaskCodePartial.Length) + "='" + reqntProjectTaskCodePartial + "'");
|
|
|
|
|
String reqntProjectTaskCodePartial = DbQuery.FormatForCondition(prm.ProjectTaskCodePartial);
|
|
|
|
|
filter.Add(DbQuery.FormatFn_Left(colRequirement_ProductCode, prm.ProjectTaskCodePartial.Length) + "='" + reqntProjectTaskCodePartial + "'");
|
|
|
|
|
}
|
|
|
|
|
// Force the transaction type of 'Project'.
|
|
|
|
|
if (prm.TransactionType != Sbm.TransactionType.Project)
|
|
|
|
@@ -2170,13 +2212,12 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
|
|
|
|
|
//---------------------------------------------------------------
|
|
|
|
|
// Job Number.
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.RequirementJobNumberFull) || !StringUtil.IsEmpty(prm.RequirementJobNumberPartial))
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.JobNumberFull) || !StringUtil.IsEmpty(prm.JobNumberPartial))
|
|
|
|
|
{
|
|
|
|
|
String colRequirement_JobNumber = SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_JobNumber, tableAlias, false);
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.RequirementJobNumberFull))
|
|
|
|
|
filter.Add(colRequirement_JobNumber + "='" + DbQuery.FormatForCondition(prm.RequirementJobNumberFull) + "'");
|
|
|
|
|
else if (!StringUtil.IsEmpty(prm.RequirementJobNumberPartial))
|
|
|
|
|
filter.Add(DbQuery.FormatFn_Left(colRequirement_JobNumber, prm.RequirementJobNumberPartial.Length) + "='" + DbQuery.FormatForCondition(prm.RequirementJobNumberPartial) + "'");
|
|
|
|
|
if (!StringUtil.IsEmpty(prm.JobNumberFull))
|
|
|
|
|
filter.Add($"{colRequirement_JobNumber}='{DbQuery.FormatForCondition(prm.JobNumberFull)}'");
|
|
|
|
|
else if (!StringUtil.IsEmpty(prm.JobNumberPartial))
|
|
|
|
|
filter.Add($"{colRequirement_JobNumber} Like '{DbQuery.FormatForLike(prm.JobNumberPartial)}'");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -2358,7 +2399,10 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
query.Tables.Add(SbmDbDfn.GetTableName(SbmDbDfn.TableIdx.Requirement), aliasRequirement);
|
|
|
|
|
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_Id, aliasRequirement));
|
|
|
|
|
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_TransId, aliasRequirement));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Seq)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_Seq, aliasRequirement));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Type))
|
|
|
|
|
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_Type, aliasRequirement));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Sequence))
|
|
|
|
|
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_Seq, aliasRequirement));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Required) || columns.HasId(SbmRequirement.Column.RequiredTime) || columns.HasId(SbmRequirement.Column.Required_Fmt))
|
|
|
|
|
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_Required, aliasRequirement));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Started) || columns.HasId(SbmRequirement.Column.StartedTime) || columns.HasId(SbmRequirement.Column.Started_Day))
|
|
|
|
@@ -2385,7 +2429,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_AmountNet, aliasRequirement));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.TaxCodeId)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_TaxCodeId, aliasRequirement));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.TaxRate)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_TaxRate, aliasRequirement));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.AmountTax) || columns.HasId(SbmRequirement.Column.AmountTax_Fmt)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_AmountTax));
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.AmountTax) || columns.HasId(SbmRequirement.Column.AmountTax_Fmt)) query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_AmountTax, aliasRequirement));
|
|
|
|
|
query.Columns.Add(SbmDbDfn.GetColumnNameQual(SbmDbDfn.ColumnIdx.Requirement_AmountTot, aliasRequirement));
|
|
|
|
|
}
|
|
|
|
|
// Common Properties
|
|
|
|
@@ -2529,6 +2573,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
// Transaction Details.
|
|
|
|
|
prm.AliasTransaction = "";
|
|
|
|
|
bool hasTransCols = columns.HasId(SbmRequirement.Column.Trans_TypeDesc);
|
|
|
|
|
if (!hasTransCols) hasTransCols = columns.HasId(SbmRequirement.Column.Trans_Type);
|
|
|
|
|
if (!hasTransCols) hasTransCols = columns.HasId(SbmRequirement.Column.Trans_Ref);
|
|
|
|
|
if (!hasTransCols) hasTransCols = columns.HasId(SbmRequirement.Column.Trans_RefExt);
|
|
|
|
|
if (!hasTransCols) hasTransCols = columns.HasId(SbmRequirement.Column.Trans_DescBrief);
|
|
|
|
@@ -2591,7 +2636,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
// Add the transaction columns.
|
|
|
|
|
List<SbmDbDfn.ColumnIdx> transactionCols = new List<SbmDbDfn.ColumnIdx>();
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.TransId)) transactionCols.Add(SbmDbDfn.ColumnIdx.Transaction_Id);
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Trans_TypeDesc)) transactionCols.Add(SbmDbDfn.ColumnIdx.Transaction_Type);
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Trans_Type) || columns.HasId(SbmRequirement.Column.Trans_TypeDesc)) transactionCols.Add(SbmDbDfn.ColumnIdx.Transaction_Type);
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Trans_Ref)) transactionCols.Add(SbmDbDfn.ColumnIdx.Transaction_Ref);
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Trans_RefExt)) transactionCols.Add(SbmDbDfn.ColumnIdx.Transaction_RefExt);
|
|
|
|
|
if (columns.HasId(SbmRequirement.Column.Trans_DescBrief)) transactionCols.Add(SbmDbDfn.ColumnIdx.Transaction_DescBrief);
|
|
|
|
@@ -3335,7 +3380,7 @@ namespace Sarand.BusinessMgr.Net.Standard.Dbas.Mgr
|
|
|
|
|
// Populate filter.
|
|
|
|
|
query.Filters.AddRange(GetRequirementQueryFilter(prm));
|
|
|
|
|
|
|
|
|
|
if (prm.RequirementIdsIncluded.Count != 1)
|
|
|
|
|
if (prm.IdsIncluded.Count != 1)
|
|
|
|
|
{
|
|
|
|
|
// Configure sort sequence.
|
|
|
|
|
foreach (String sortColumn in GetRequirementSortColumns(prm))
|
|
|
|
|