Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ table 20404 "Qlty. Inspection Gen. Rule"
SetIntentAndDefaultTriggerValuesFromSetup();
end;
}
field(13; "Condition Filter"; Text[400])
field(13; "Condition Filter"; Text[2048])
{
Caption = 'Condition Filter';
Description = 'Specifies the criteria for defining when to use this template. For example, if you wanted to only use a template for a certain item then you would define that item here.';
Expand All @@ -127,12 +127,12 @@ table 20404 "Qlty. Inspection Gen. Rule"
FieldClass = FlowFilter;
Caption = 'Table ID Filter';
}
field(19; "Item Filter"; Text[400])
field(19; "Item Filter"; Text[2048])
{
Caption = 'Item Filter';
ToolTip = 'Specifies the item specific criteria for defining when to use this template. ';
}
field(20; "Item Attribute Filter"; Text[400])
field(20; "Item Attribute Filter"; Text[2048])
{
Caption = 'Attribute Filter';
ToolTip = 'Specifies the item attribute specific criteria for defining when to use this template. ';
Expand Down Expand Up @@ -376,7 +376,7 @@ table 20404 "Qlty. Inspection Gen. Rule"
var
QltyFilterHelpers: Codeunit "Qlty. Filter Helpers";
begin
QltyFilterHelpers.BuildItemAttributeFilter400(Rec."Item Attribute Filter");
QltyFilterHelpers.BuildItemAttributeFilter2048(Rec."Item Attribute Filter");
end;

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -552,9 +552,9 @@ page 20462 "Qlty. Prod. Gen. Rule Wizard"
InventoryPostingGroupCode: Code[20];
QltyProductionTrigger: Enum "Qlty. Production Order Trigger";
QltyAssemblyTrigger: Enum "Qlty. Assembly Trigger";
ProdOrderRoutingLineRuleFilter: Text[400];
PostedAssemblyOrderRuleFilter: Text[400];
ItemRuleFilter: Text[400];
ProdOrderRoutingLineRuleFilter: Text[2048];
PostedAssemblyOrderRuleFilter: Text[2048];
ItemRuleFilter: Text[2048];
IsBackEnabledd: Boolean;
IsNextEnabledd: Boolean;
IsFinishEnabledd: Boolean;
Expand Down Expand Up @@ -765,10 +765,10 @@ page 20462 "Qlty. Prod. Gen. Rule Wizard"
local procedure CleanUpWhereClause()
begin
if IsProductionOrder then
ProdOrderRoutingLineRuleFilter := QltyFilterHelpers.CleanUpWhereClause400(ProdOrderRoutingLineRuleFilter);
ProdOrderRoutingLineRuleFilter := QltyFilterHelpers.CleanUpWhereClause2048(ProdOrderRoutingLineRuleFilter);
if IsAssemblyOrder then
PostedAssemblyOrderRuleFilter := QltyFilterHelpers.CleanUpWhereClause400(PostedAssemblyOrderRuleFilter);
ItemRuleFilter := QltyFilterHelpers.CleanUpWhereClause400(ItemRuleFilter);
PostedAssemblyOrderRuleFilter := QltyFilterHelpers.CleanUpWhereClause2048(PostedAssemblyOrderRuleFilter);
ItemRuleFilter := QltyFilterHelpers.CleanUpWhereClause2048(ItemRuleFilter);
end;

local procedure BackAction();
Expand Down Expand Up @@ -874,27 +874,27 @@ page 20462 "Qlty. Prod. Gen. Rule Wizard"
TempProdOrderRoutingLine.SetFilter("To-Production Bin Code", ToBinCodeFilter);
TempProdOrderRoutingLine.SetFilter("Operation No.", OperationNo);
TempProdOrderRoutingLine.SetFilter("Description", DescriptionPattern);
ProdOrderRoutingLineRuleFilter := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempProdOrderRoutingLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
ProdOrderRoutingLineRuleFilter := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempProdOrderRoutingLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
end else begin
TempPostedAssemblyHeader.SetFilter("Location Code", LocationCodeFilter);
TempPostedAssemblyHeader.SetFilter(Description, DescriptionPattern);
PostedAssemblyOrderRuleFilter := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempPostedAssemblyHeader.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
PostedAssemblyOrderRuleFilter := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempPostedAssemblyHeader.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
end;

TempItem.SetFilter("No.", ItemNoFilter);
TempItem.SetFilter("Item Category Code", CategoryCodeFilter);
TempItem.SetFilter("Inventory Posting Group", InventoryPostingGroupCode);

ItemRuleFilter := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempItem.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));
ItemRuleFilter := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempItem.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));
CleanUpWhereClause();

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempProdOrderRoutingLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempProdOrderRoutingLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempPostedAssemblyHeader.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempPostedAssemblyHeader.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempItem.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Item Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempItem.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Item Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));
end;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -634,11 +634,11 @@ page 20461 "Qlty. Rec. Gen. Rule Wizard"
QltyTransferTrigger: Enum "Qlty. Transfer Order Trigger";
QltyWhseReceiveTrigger: Enum "Qlty. Whse. Receipt Trigger";
QltySalesReturnTrigger: Enum "Qlty. Sales Return Trigger";
PurchaseLineRule: Text[400];
SalesReturnLineRule: Text[400];
ItemRule: Text[400];
TransferLineRule: Text[400];
WarehouseJournalLineRule: Text[400];
PurchaseLineRule: Text[2048];
SalesReturnLineRule: Text[2048];
ItemRule: Text[2048];
TransferLineRule: Text[2048];
WarehouseJournalLineRule: Text[2048];
IsReturnReceipt: Boolean;
IsPurchaseLine: Boolean;
IsIsBackEnabledd: Boolean;
Expand Down Expand Up @@ -843,18 +843,18 @@ page 20461 "Qlty. Rec. Gen. Rule Wizard"
local procedure CleanUpWhereClause()
begin
if IsPurchaseLine then
PurchaseLineRule := QltyFilterHelpers.CleanUpWhereClause400(PurchaseLineRule);
PurchaseLineRule := QltyFilterHelpers.CleanUpWhereClause2048(PurchaseLineRule);

if IsReturnReceipt then
SalesReturnLineRule := QltyFilterHelpers.CleanUpWhereClause400(SalesReturnLineRule);
SalesReturnLineRule := QltyFilterHelpers.CleanUpWhereClause2048(SalesReturnLineRule);

if IsTransferLine then
TransferLineRule := QltyFilterHelpers.CleanUpWhereClause400(TransferLineRule);
TransferLineRule := QltyFilterHelpers.CleanUpWhereClause2048(TransferLineRule);

if IsWarehouseReceipt then
WarehouseJournalLineRule := QltyFilterHelpers.CleanUpWhereClause400(WarehouseJournalLineRule);
WarehouseJournalLineRule := QltyFilterHelpers.CleanUpWhereClause2048(WarehouseJournalLineRule);

ItemRule := QltyFilterHelpers.CleanUpWhereClause400(ItemRule);
ItemRule := QltyFilterHelpers.CleanUpWhereClause2048(ItemRule);
end;

local procedure BackAction();
Expand Down Expand Up @@ -996,48 +996,48 @@ page 20461 "Qlty. Rec. Gen. Rule Wizard"
TempPurchaseLine.SetFilter("Location Code", LocationCodeFilter);
TempPurchaseLine.SetFilter("Buy-from Vendor No.", VendorNoFilter);
TempPurchaseLine.SetFilter("Purchasing Code", PurchasingCode);
PurchaseLineRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempPurchaseLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
PurchaseLineRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempPurchaseLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
end;

if IsReturnReceipt then begin
TempReturnSalesLine.SetFilter("Location Code", LocationCodeFilter);
TempReturnSalesLine.SetFilter("Return Reason Code", ReturnReasonCode);
TempReturnSalesLine.SetFilter("Sell-to Customer No.", CustomerNoFilter);
SalesReturnLineRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempReturnSalesLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
SalesReturnLineRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempReturnSalesLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
end;

if IsTransferLine then begin
TempTransferLine.SetFilter("Transfer-to Code", TransferToCode);
TempTransferLine.SetFilter("Transfer-from Code", TransferFromCode);
TransferLineRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempTransferLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
TransferLineRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempTransferLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
end;

if IsWarehouseReceipt then begin
TempWarehouseJournalLine.SetRange("Whse. Document Type", TempWarehouseJournalLine."Whse. Document Type"::Receipt);
TempWarehouseJournalLine.SetFilter("Location Code", LocationCodeFilter);
TempWarehouseJournalLine.SetFilter("To Zone Code", ToZoneCodeFilter);
TempWarehouseJournalLine.SetFilter("To Bin Code", ToBinCodeFilter);
WarehouseJournalLineRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempWarehouseJournalLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
WarehouseJournalLineRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempWarehouseJournalLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
end;

TempItem.SetFilter("No.", ItemNoFilter);
TempItem.SetFilter("Item Category Code", CategoryCodeFilter);
TempItem.SetFilter("Inventory Posting Group", InventoryPostingGroupCode);

ItemRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempItem.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));
ItemRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempItem.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));

CleanUpWhereClause();

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempReturnSalesLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempReturnSalesLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempTransferLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempTransferLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempWarehouseJournalLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempWarehouseJournalLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempItem.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Item Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempItem.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Item Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));
end;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -345,8 +345,8 @@ page 20460 "Qlty. Whse. Gen. Rule Wizard"
InventoryPostingGroupCode: Code[20];
VendorNoFilter: Code[20];
QltyWarehouseTrigger: Enum "Qlty. Warehouse Trigger";
WhseRule: Text[400];
ItemRule: Text[400];
WhseRule: Text[2048];
ItemRule: Text[2048];
IsIsBackEnabledd: Boolean;
IsIsNextEnabledd: Boolean;
IsIsFinishEnabledd: Boolean;
Expand Down Expand Up @@ -616,27 +616,27 @@ page 20460 "Qlty. Whse. Gen. Rule Wizard"
TempWarehouseJournalLine.SetFilter("Location Code", LocationCodeFilter);
TempWarehouseJournalLine.SetFilter("To Zone Code", ToZoneCodeFilter);
TempWarehouseJournalLine.SetFilter("To Bin Code", ToBinCodeFilter);
WhseRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempWarehouseJournalLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));
WhseRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempWarehouseJournalLine.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));

TempItem.SetFilter("No.", ItemNoFilter);
TempItem.SetFilter("Item Category Code", CategoryCodeFilter);
TempItem.SetFilter("Inventory Posting Group", InventoryPostingGroupCode);
TempItem.SetFilter("Vendor No.", VendorNoFilter);
ItemRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause400(TempItem.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));
ItemRule := CopyStr(QltyFilterHelpers.CleanUpWhereClause2048(TempItem.GetView(true)), 1, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));

CleanUpWhereClause();

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempWarehouseJournalLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempWarehouseJournalLine.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Condition Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Condition Filter"));

if StrLen(QltyFilterHelpers.CleanUpWhereClause400(TempItem.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Item Filter") then
if StrLen(QltyFilterHelpers.CleanUpWhereClause2048(TempItem.GetView(true))) > MaxStrLen(TempQltyInspectionGenRule."Item Filter") then
Error(FilterLengthErr, MaxStrLen(TempQltyInspectionGenRule."Item Filter"));
end;

local procedure CleanUpWhereClause()
begin
WhseRule := QltyFilterHelpers.CleanUpWhereClause400(WhseRule);
ItemRule := QltyFilterHelpers.CleanUpWhereClause400(ItemRule);
WhseRule := QltyFilterHelpers.CleanUpWhereClause2048(WhseRule);
ItemRule := QltyFilterHelpers.CleanUpWhereClause2048(ItemRule);
end;

local procedure BackAction();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -749,7 +749,7 @@ codeunit 20403 "Qlty. Filter Helpers"
ResultText := CopyStr(CleanUpWhereClause(Input), 1, MaxStrLen(ResultText));
end;

procedure CleanUpWhereClause400(Input: Text) ResultText: Text[400]
procedure CleanUpWhereClause2048(Input: Text) ResultText: Text[2048]
begin
ResultText := CopyStr(CleanUpWhereClause(Input), 1, MaxStrLen(ResultText));
end;
Expand Down Expand Up @@ -815,7 +815,7 @@ codeunit 20403 "Qlty. Filter Helpers"
until TempFilterItemAttributesBuffer.Next() = 0;
end;

internal procedure BuildItemAttributeFilter400(var ItemAttributeFilter: Text[400])
internal procedure BuildItemAttributeFilter2048(var ItemAttributeFilter: Text[2048])
var
FullItemAttributeFilter: Text;
begin
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2040,17 +2040,17 @@ codeunit 139962 "Qlty. Tests - Filter Helpers"
end;

[Test]
procedure CleanupWhereClause400()
procedure CleanupWhereClause2048()
var
Output: Text;
begin
// [SCENARIO] Validate where clause cleanup reducing length to 400 characters or less
// [SCENARIO] Validate where clause cleanup reducing length to 2048 characters or less

// [WHEN] CleanUpWhereClause400 is called with input where clause
Output := QltyFilterHelpers.CleanUpWhereClause400(InputWhereClause400Tok);
// [WHEN] CleanUpWhereClause2048 is called with input where clause
Output := QltyFilterHelpers.CleanUpWhereClause2048(InputWhereClause400Tok);

// [THEN] The output length is 400 characters or less
LibraryAssert.IsTrue(StrLen(Output) <= 400, 'Should reduce length to 250 characters or less');
// [THEN] The output length is 2048 characters or less
LibraryAssert.IsTrue(StrLen(Output) <= 2048, 'Should reduce length to 2048 characters or less');
end;

[Test]
Expand Down
Loading