Расширение AL API типа пользовательской страницы Business Central - PullRequest
0 голосов
/ 14 июля 2020

Я создал новое расширение API, в котором я обновлял поле DateTime, Дата отгрузки, в своей записи счета-фактуры и публиковал его в моей изолированной среде Business Central. У меня возникли проблемы с использованием моего API, используя этот URL:

api.businesscentral.dynamics.com / v2.0 / <'идентификатор клиента песочницы'> / sandbox / api / <'ApiPublisher'> / <'ApiGroup '> / <' ApiVersion '>

Я получаю сообщение об ошибке RequestDataInvalid в ответе xml.

Это мой код:


{

   PageType = API;

   Caption = 'Custom Sales Header API';

   APIPublisher = 'name';

   APIVersion = 'v1.0';

   APIGroup = 'group';

   EntityName = 'SalesHeader';

   EntitySetName = 'SalesHeaders';

   SourceTable = "Sales Header";

   DelayedInsert = true;

   ModifyAllowed = true;

   DeleteAllowed = true;

   ODataKeyFields = SystemId;

   layout

   {

       area(Content)

       {

           repeater(GroupName)

           {

               field("No"; "No.")

               {

                   Caption = 'No.';

                   ApplicationArea = All;

               }

               field("SelltoCustomerName"; "Sell-to Customer Name")

               {

                   Caption = 'Customer Name';

                   ApplicationArea = All;

               }

               field("ShiptoAddress"; "Ship-to Address")

               {

                   Caption = 'Sell-to Adress';

                   ApplicationArea = All;

               }

               field("ShipmentDate"; "Shipment Date")

               {

                   Caption = 'Shipment Date';

                   ApplicationArea = All;

               }

               field(SystemId; SystemId)

               {

                   Caption = 'Shipment Date';

                   ApplicationArea = All;

               }

           }

       }

   }

   trigger OnInsertRecord(BelowxRec: Boolean): Boolean

   begin

       Insert(true);

       Modify(true);

       exit(true);

   end;

   trigger OnModifyRecord(): Boolean

   var

       SalesHeader: Record "Sales Header";

   begin

       SalesHeader.SetRange(SystemId, SystemId);

       SalesHeader.FindFirst();

       If "Shipment Date" <> SalesHeader."Shipment Date" then begin

           SalesHeader.TransferFields(rec, false);

           SalesHeader.Rename("Shipment Date");

           TransferFields(SalesHeader);

       end;

   end;

   trigger OnDeleteRecord(): Boolean

   begin

       Delete(true);

   end;

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...