我可以运行Visual Studio Code的工具/扩展名/脚本来批量处理错误吗?

问题描述

我在Visual Studio Code平台上有一个用AL代码编写的相当大的Dynamics 365商业中心扩展。 Microsoft正在更改AL代码中的规则,如果在下一个版本之前未解决,将导致广泛的错误。所做的更改是不能使用“隐含”,因此代码中的每个记录引用都必须用“ Rec”限定。在此扩展中,有数百个地方需要解决,并且逐个手动调整它们是不现实的。供参考,

此:

                field(TradeNumber; TradeNumber)
                {
                    ApplicationArea = All;
                    Caption = 'Trade No.';
                    Editable = False;
                }
                field(TradeType; TradeType)
                {
                    ApplicationArea = All;
                    Caption = 'Trade Type';
                }

成为这个:

                field(TradeNumber; Rec.TradeNumber)
                {
                    ApplicationArea = All;
                    Caption = 'Trade No.';
                    Editable = False;
                }
                field(TradeType; Rec.TradeType)
                {
                    ApplicationArea = All;
                    Caption = 'Trade Type';
                }

因此,如果对于这数百个实例而言,错误(或现在的“问题”)相同,那么有一种方法可以批量更正,可以这么说并仅应用“ Rec”。到跨多个文件文件标记的每个引用的开头?

解决方法

用于VS Code的标准AL Code扩展将包含用于纠正这些错误的Code Actions。 (“符合条件的资格”。)

Visual Studio Code市场上有第3方扩展可以自动修复这些问题,例如AL CodeActions

正如您仅提及隐式一样,您应注意,显式 WITH语句也已被“废弃”。原因是在处理扩展名时,两种类型的“ With”语句的行为都无法预测。 this blog post explains it in more detail