Skip to content
Open
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 @@ -263,7 +263,7 @@ codeunit 20455 "Qlty. Job Queue Management"
/// <param name="ThisQltyInspectionGenRule">The inspection generation rule to validate for scheduling</param>
procedure CheckIfGenerationRuleCanBeScheduled(var ThisQltyInspectionGenRule: Record "Qlty. Inspection Gen. Rule")
begin
if (ThisQltyInspectionGenRule."Condition Filter" = '') and (ThisQltyInspectionGenRule."Item Filter" = '') and (ThisQltyInspectionGenRule."Item Attribute Filter" = '') then
if (not ThisQltyInspectionGenRule.HasConditionFilter()) and (not ThisQltyInspectionGenRule.HasItemFilter()) and (not ThisQltyInspectionGenRule.HasItemAttributeFilter()) then
Error(FilterMandatoryErr, ThisQltyInspectionGenRule."Schedule Group");
end;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -116,8 +116,8 @@ report 20412 "Qlty. Schedule Inspection"
QltyJobQueueManagement.CheckIfGenerationRuleCanBeScheduled(QltyInspectionGenRule);

SourceRecordRef.Open(QltyInspectionGenRule."Source Table No.");
if QltyInspectionGenRule."Condition Filter" <> '' then
SourceRecordRef.SetView(QltyInspectionGenRule."Condition Filter");
if QltyInspectionGenRule.HasConditionFilter() then
SourceRecordRef.SetView(QltyInspectionGenRule.GetConditionFilter());

QltyInspectionGenRule.SetRecFilter();
QltyInspectionGenRule.SetRange("Schedule Group", QltyInspectionGenRule."Schedule Group");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -209,14 +209,15 @@ codeunit 20405 "Qlty. Inspec. Gen. Rule Mgmt."
TemporaryInspectionMatchRecordRef.Copy(TargetRecordRef);
if TemporaryInspectionMatchRecordRef.Insert(false) then;
TemporaryInspectionMatchRecordRef.Reset();
TemporaryInspectionMatchRecordRef.SetView(QltyInspectionGenRule."Condition Filter");
if QltyInspectionGenRule.HasConditionFilter() then
TemporaryInspectionMatchRecordRef.SetView(QltyInspectionGenRule.GetConditionFilter());
if TemporaryInspectionMatchRecordRef.FindFirst() then
if (QltyInspectionGenRule."Item Filter" <> '') and (OptionalItem."No." <> '') then begin
if QltyInspectionGenRule.HasItemFilter() and (OptionalItem."No." <> '') then begin
Clear(SearchItem);
SearchItem := OptionalItem;
SearchItem.SetRecFilter();
SearchItem.FilterGroup(20);
SearchItem.SetView(QltyInspectionGenRule."Item Filter");
SearchItem.SetView(QltyInspectionGenRule.GetItemFilter());
if SearchItem.Count() > 0 then
if DoesMatchItemAttributeFiltersOrNoFilter(QltyInspectionGenRule, OptionalItem) then begin
TempQltyInspectionGenRule := QltyInspectionGenRule;
Expand All @@ -226,7 +227,7 @@ codeunit 20405 "Qlty. Inspec. Gen. Rule Mgmt."
OptionalItem.FilterGroup(0);
SearchItem.FilterGroup(0);
end else
if (OptionalItem."No." <> '') and (QltyInspectionGenRule."Item Attribute Filter" <> '') then begin
if (OptionalItem."No." <> '') and QltyInspectionGenRule.HasItemAttributeFilter() then begin
if DoesMatchItemAttributeFiltersOrNoFilter(QltyInspectionGenRule, OptionalItem) then begin
TempQltyInspectionGenRule := QltyInspectionGenRule;
Found := TempQltyInspectionGenRule.Insert();
Expand Down Expand Up @@ -271,10 +272,10 @@ codeunit 20405 "Qlty. Inspec. Gen. Rule Mgmt."
if Item."No." = '' then
exit(false);

if QltyInspectionGenRule."Item Attribute Filter" = '' then
if not QltyInspectionGenRule.HasItemAttributeFilter() then
exit(true);

QltyFilterHelpers.DeserializeFilterIntoItemAttributesBuffer(QltyInspectionGenRule."Item Attribute Filter", TempFilterItemAttributesBuffer);
QltyFilterHelpers.DeserializeFilterIntoItemAttributesBuffer(QltyInspectionGenRule.GetItemAttributeFilter(), TempFilterItemAttributesBuffer);
QltyFilterHelpers.SetItemFilterForItemAttributeFilterSearching(Item."No.");
BindSubscription(QltyFilterHelpers);
ItemAttributeManagement.FindItemsByAttributes(TempFilterItemAttributesBuffer, TempsItem);
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -77,28 +77,58 @@ page 20405 "Qlty. Inspection Gen. Rules"
CurrPage.Update(true);
end;
}
field("Condition Filter"; Rec."Condition Filter")
field("Condition Filter"; ConditionFilterText)
{
Caption = 'Condition Filter';
ToolTip = '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.';

trigger OnValidate()
begin
Rec.SetConditionFilter(ConditionFilterText);
Rec.Modify();
end;

trigger OnAssistEdit()
begin
Rec.AssistEditConditionTableFilter();
ConditionFilterText := Rec.GetConditionFilter();
Rec.SetIntentAndDefaultTriggerValuesFromSetup();
if xRec."Entry No." = Rec."Entry No." then
CurrPage.Update(true);
end;
}
field("Item Filter"; Rec."Item Filter")
field("Item Filter"; ItemFilterText)
{
Caption = 'Item Filter';
ToolTip = 'Specifies the item specific criteria for defining when to use this template.';

trigger OnValidate()
begin
Rec.SetItemFilter(ItemFilterText);
Rec.Modify();
end;

trigger OnAssistEdit()
begin
Rec.AssistEditConditionItemFilter();
ItemFilterText := Rec.GetItemFilter();
end;
}
field("Item Attribute Filter"; Rec."Item Attribute Filter")
field("Item Attribute Filter"; ItemAttributeFilterText)
{
Caption = 'Attribute Filter';
ToolTip = 'Specifies the item attribute specific criteria for defining when to use this template.';

trigger OnValidate()
begin
Rec.SetItemAttributeFilter(ItemAttributeFilterText);
Rec.Modify();
end;

trigger OnAssistEdit()
begin
Rec.AssistEditConditionAttributeFilter();
ItemAttributeFilterText := Rec.GetItemAttributeFilter();
end;
}
field("Activation Trigger"; Rec."Activation Trigger")
Expand Down Expand Up @@ -376,6 +406,9 @@ page 20405 "Qlty. Inspection Gen. Rules"
WhseReceiveStyle: Text;
WhseMovementStyle: Text;
TransferStyle: Text;
ItemFilterText: Text;
ConditionFilterText: Text;
ItemAttributeFilterText: Text;
RowStyle: Option None,Standard,StandardAccent,Strong,StrongAccent,Attention,AttentionAccent,Favorable,Unfavorable,Ambiguous,Subordinate;
GenerationRulesCaptionLbl: Label 'Quality Inspection Generation Rules';
GenerationRulesCaptionForTemplateLbl: Label 'Quality Inspection Generation Rules for %1', Comment = '%1=the template';
Expand Down Expand Up @@ -426,6 +459,9 @@ page 20405 "Qlty. Inspection Gen. Rules"

trigger OnAfterGetRecord()
begin
ConditionFilterText := Rec.GetConditionFilter();
ItemFilterText := Rec.GetItemFilter();
ItemAttributeFilterText := Rec.GetItemAttributeFilter();
UpdateControls();
end;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -305,8 +305,8 @@ codeunit 20404 "Qlty. Inspection - Create"
if Handled then
exit(QltyInspectionCreateStatus::"Unable to Create");

if TempFiltersQltyInspectionGenRule."Item Filter" <> '' then
RelatedItem.SetView(TempFiltersQltyInspectionGenRule."Item Filter");
if TempFiltersQltyInspectionGenRule.HasItemFilter() then
RelatedItem.SetView(TempFiltersQltyInspectionGenRule.GetItemFilter());

QltyTraversal.FindRelatedItem(RelatedItem, TargetRecordRef, OptionalRec2Variant, OptionalRec3Variant, OptionalRec4Variant);

Expand Down Expand Up @@ -943,14 +943,14 @@ codeunit 20404 "Qlty. Inspection - Create"
Clear(VariantEmptyOrTrackingSpecification);
RelatedReservFilterReservationEntry.SetRange("Entry No.", -1);

if TempFiltersQltyInspectionGenRule."Item Filter" <> '' then begin
if TempFiltersQltyInspectionGenRule.HasItemFilter() then begin
Item.FilterGroup(20);
Item.SetView(TempFiltersQltyInspectionGenRule."Item Filter");
Item.SetView(TempFiltersQltyInspectionGenRule.GetItemFilter());
Item.FilterGroup(0);
end;

if QltyTraversal.FindRelatedItem(Item, ParentRecordRef, TempSelfRecordRef, VariantEmptyOrTrackingSpecification, Dummy4Variant) then begin
if (Item."No." <> '') and (TempFiltersQltyInspectionGenRule."Item Attribute Filter" <> '') then
if (Item."No." <> '') and TempFiltersQltyInspectionGenRule.HasItemAttributeFilter() then
if not QltyInspecGenRuleMgmt.DoesMatchItemAttributeFiltersOrNoFilter(TempFiltersQltyInspectionGenRule, Item) then
exit;

Expand Down Expand Up @@ -1000,7 +1000,7 @@ codeunit 20404 "Qlty. Inspection - Create"
end;
until RelatedReservFilterReservationEntry.Next() = 0;
end else begin
if TempFiltersQltyInspectionGenRule."Item Filter" <> '' then begin
if TempFiltersQltyInspectionGenRule.HasItemFilter() then begin
Clear(Item);
if QltyTraversal.FindRelatedItem(Item, ParentRecordRef, TempSelfRecordRef, VariantEmptyOrTrackingSpecification, Dummy4Variant) then
exit;
Expand Down
Loading
Loading