发现Dynamics SL(所罗门)自定义

时间:2009-12-07 14:15:51

标签: vba microsoft-dynamics dynamics-sl

我正在升级MS Dynamics SL(6.5sp1)安装,并且想知道是否有一种简单的方法可以查看屏幕自定义中涉及的BSL / VBA代码。

或者至少是一种能够发现具有自定义功能的每个表单的方法。

1 个答案:

答案 0 :(得分:1)

要发现具有自定义的每个表单(按类型),可以查看数据库。 SQL看起来像这样(我在客户端的网站上留下了确切的语句,并从内存中重新创建):

SELECT DISTINCT s.Module, s.Name
    FROM CustomVBA c
        INNER JOIN Screen s ON c.ScreenId = s.Number
WHERE c.Sequence = 300
Union
SELECT DISTINCT s.Module, s.Name
    FROM Custom2 c
        INNER JOIN Screen s ON c.ScreenId = s.Number
WHERE c.Sequence = 300

“序列= 300”表示这将返回屏幕编号和名称,其中对“所有用户”进行了修改(500将针对特定用户,100将针对第三方插件)

现在,CustomVBA表是存储VBA自定义的位置,而Custom2表是存储BSL自定义的位置。

或者,可以查看EXPORT列表,但会显示所有序列中的更改。

现在,我们有一个独特的表单列表,我们可以从Solomon中导出这些更改,作为每次修改的单个CST文件(并且那些CST文件在记事本或任何其他文本编辑器中打开)。在这些文件的顶部将是修改操作的控件列表(在其下面是详细说明代码修改的二进制编码字符串)。通过自定义创建的任何控件都将附加“Created = True”属性。

现在我们知道哪些屏幕已被修改,哪些控件是全新创建的(以及哪些控件被关闭,移动或者不是CST列出的数据)我们现在可以比较两者之间的变化6.5和7.0FP1并确保迁移接受所有自定义并且它们都按预期运行。