Attached is a SalesPrice.al "Base Application" based on BC17.4W1. I have modified it with a 50000 field "Some Primary Key Field" and added it to the primary key. These changes are not reflected in SQL2019 when using the "ForceSync" option in the launch.json. Something has changed since update 17.3 because in 17.2 and earlier this behaviour did not happen. Changing the SchemaUpdateMode to "Recreate" finally does sync the fields but then all of the data is gone.
Hi Suresh,
Sorry the 17.4 webclient behaviour gave an UnsupportedType error because of the not synched fields in "Sales Price" fields. When I removed the pagextension completely I could finally open the sales order card but got an error when entering an item no. in the sales order subpage stating Field so and so was not present in SQL. Completely different issue than I thought with the Protected var thing. Sorry about that.
You are quite right. I did not use a fresh Cronus database to just test that. Like you said no issues. It is just a random error because the tabledefinitions are not being synched in the "Base Application". I will investigate further.
I did a little more digging and found out that five tables in the "Base Application" still have add-on primary key changes and that they are not being synched to SQL anymore. Even local onprem from VSC these fields are not present in SQL 2019. Also our DevOps pipeline does not create a correct bacpac anymore because of this. It seems to be happening since 17.3. I will look into older builds. This UnSupportType error is just random.
Hello, I have tried the above on BC 17.4 and I don't get any errors, attached is the extension I have created
pageextension 50007 "SK Sales Order Subform" extends "Sales Order Subform" { layout { addbefore(Quantity) { field("Quantity (Base)"; Rec."Quantity (Base)") { ApplicationArea = Basic, Suite; BlankNumbers = BlankZero; Editable = not IsCommentLine; Enabled = not IsCommentLine; trigger OnValidate() begin QuantityOnAfterValidate(); DeltaUpdateTotals(); end; } field("Qty. to Ship (Base)"; Rec."Qty. to Ship (Base)") { ApplicationArea = Basic, Suite; BlankNumbers = BlankZero; Editable = not IsCommentLine; Enabled = not IsCommentLine; Visible = false; trigger OnValidate() begin if Rec."Qty. to Asm. to Order (Base)" <> 0 then begin CurrPage.SaveRecord(); CurrPage.Update(false); end; end; } } } }
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.
dynamicsuser.net/.../developers
I will open this up to the community in case they have something to add.
Thanks
Sohail Ahmed
953
YUN ZHU
887
Super User 2025 Season 1
Mansi Soni
602