I have created an extension of the table “Sales line”, in which I have created a field “Shipped Not Inv. No VAT”, which should be the result of the multiplication of two existing fields in the table, “Qty. Shipped Not Invoiced” * “Unit price”, this in each line. I have added the operation in the “OnAfterValidate ()” tigger of both fields, but nothing happens.
Also try to do it through a codeunit, following this example:
But it doesn’t work for me either. Is there something I need to add somewhere?
codeunit 52122 ShipNotInvNoVATPub
{
trigger OnRun()
begin
end;
[IntegrationEvent(false, false)]
local procedure OnAfterValidate(var r: Record "Sales Line")
begin
end;
}
codeunit 52123 ShipNInvNoVATSub
{
trigger OnRun()
begin
end;
[EventSubscriber(ObjectType::Table, Database::"Sales Line", 'OnAfterValidateEvent', 'Unit Price', false, false)]
local procedure UnitPriceChange(var Rec: Record "Sales Line")
begin
Rec."Shipped Not Inv. No VAT" := Rec."Unit Price" * Rec."Qty. Shipped Not Invd. (Base)";
end;
[EventSubscriber(ObjectType::Table, Database::"Sales Line", 'OnAfterValidateEvent', 'Qty. Shipped Not Invd. (Base)', false, false)]
local procedure QtyChange(var Rec: Record "Sales Line")
begin
Rec."Shipped Not Inv. No VAT" := Rec."Unit Price" * Rec."Qty. Shipped Not Invd. (Base)";
end;
}