Skip to main content

Notifications

Announcements

No record found.

Business Central forum
Suggested answer

Calculated field on Sales Line table

Posted on by 90

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: 

https://community.dynamics.com/business/f/dynamics-365-business-central-forum/300617/add-dynamically-calculated-field-to-sales-document-lines

But it doesn't work for me either. Is there something I need to add somewhere?

pastedimage1632439463360v1.png

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;


}

Categories:
  • Suggested answer
    Greg Enns Profile Picture
    Greg Enns 1,102 on at
    RE: Calculated field on Sales Line table

    Code looks right to me at a quick glance. A few things to try:

    Make sure your extension is published. Restart the nav service tier (not sure how that works in the cloud as I'm on-prem). Run the debugger when changing data in those fields.

  • Suggested answer
    Mohana Yadav Profile Picture
    Mohana Yadav 50,394 Super User on at
    RE: Calculated field on Sales Line table

    OnAfterValidate of field trigger will work when we enter/validate data in that field.

    Please OnAfterGetRecord on Subpage trigger to check if it is working or not.

  • Suggested answer
    Marco Mels Profile Picture
    Marco Mels on at
    RE: Calculated field on Sales Line table

    Hello,

    We currently do not have dedicated Dev support via the Dynamics 365 Business Central forums, but I wanted to provide you some additional resources to assist.  If you need assistance with debugging or coding I would recommend discussing this on one of our communities.

    www.yammer.com/dynamicsnavdev

    dynamicsuser.net/.../developers

    I will open this up to the community in case they have something to add.

    Thanks

Helpful resources

Quick Links

Replay now available! Dynamics 365 Community Call (CRM Edition)

Catch up on the first D365 Community Call held on 7/10

Community Spotlight of the Month

Kudos to Saurav Dhyani!

Congratulations to the June Top 10 community leaders!

These stars go above and beyond . . .

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 287,914 Super User

#2
Martin Dráb Profile Picture

Martin Dráb 225,549 Super User

#3
nmaenpaa Profile Picture

nmaenpaa 101,148

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans