自定义过程

已完成

创建自定义过程的原因是:

  • 整理程序。

  • 创建其意自明的代码。

  • 简化开发流程。

  • 使代码可重复使用,从而减少工作量。

  • 减少错误。

  • 帮助简化修改。

  • 减小对象的大小。

过程是程序的指定部分。 可以对多个行进行分组,为其命名,然后按其名称调用此代码块。

要创建新的自定义函数,请使用 tprocedure 代码片段。

local procedure MyProcedure()
begin
   // Some logic goes here.
end;

无论是自定义过程还是现有过程,都可以从表达式或语句中进行调用。

在表达式中调用过程

在以下示例中,从计算价格乘以特定数量的表达式中调用了 CalculatePrice 自定义过程。 CalculatePrice 过程会执行一些计算逻辑,并以小数形式返回结果。

trigger OnRun()
begin
  TotalCost := Quantity * CalculatePrice();
end;

procedure CalculatePrice() : Decimal
begin
   // Some calculation logic goes here.
end;

在语句中调用过程

在下一个示例中,从语句中调用自定义函数 MyCustomFunction

trigger OnRun()
begin
  if Quantity > 5 then
    MyCustomFunction();
end;

procedure MyCustomFunction()
begin
   // Some logic goes here.
end;

GuiAllowed 函数

在创建自定义过程时,应考虑使用 GuiAllowed 函数。 可以使用此函数来确定应在何时运行代码的某些部分,具体取决于图形用户界面 (GUI) 是否可用。

当通过 Web 服务运行代码时,不使用用户界面。 如果代码需要用户输入或显示消息,则会发生错误。 通过使用 GuiAllowed 函数,可以在请求用户输入之前测试 GUI 是否可用。

if GuiAllowed then
   Message('Hello');

当可以通过 API 服务调用函数时,则在 Business Central 中使用此函数。