小编elT*_*oro的帖子

如何在实际项目中的Microsoft Dynamics AX 2012中进行单元测试

Dynamics AX 2012附带单元测试支持.

要进行有意义的测试,需要提供一些测试数据(存储在数据库中的表中).

为了获得单元测试的可重现结果,我们需要在每次运行测试时将相同的数据存储在表中.现在的问题是,我们怎样才能做到这一点?

我了解到有可能将TestSuite的隔离级别设置为SysTestSuiteCompanyIsolateClass.这将创建一个空公司,并在测试运行后删除公司.在setup()方法中,我可以使用insert语句将我的testdata填充到表中.这适用于小场景,但如果你有一个真实的项目,它会很快变得很麻烦.

我想知道是否有任何人在实际场景中如何使用X ++单元测试框架的实用解决方案.任何输入都非常感谢.

unit-testing x++ axapta dynamics-ax-2012 dynamics-ax-2012-r3

5
推荐指数
2
解决办法
2246
查看次数

有没有办法改善这种动态轴更新工作

我正在开发AX 2009安装.工作是更新WMSOrderTrans表.这是我到目前为止所得到的:

WMSOrderTrans   wmsOrderTrans;
;

while select wmsOrderTrans
{
    if (wmsOrderTrans.BBBpackingSlipExists())
    {
        ttsBegin;
        wmsOrderTrans.selectForUpdate(true);
        wmsOrderTrans.BBBPackingSlipExists  =   NoYes::Yes;
        wmsOrderTrans.doUpdate();
        ttsCommit;
    }
}
Run Code Online (Sandbox Code Playgroud)

这项工作大约需要一个小时才能完成测试系统.这让我担心生产系统的性能.

目前,代码已经被编写为具有最小的锁定问题(如果应该更新并且然后立即提交,则为每一行执行selectForUpdate).原因是,当作业运行时,用户将在系统上工作.

我的问题是,如果有一种合理的方式以较少的交易开销实现这项工作.

while select forUpdate ...
Run Code Online (Sandbox Code Playgroud)

...似乎不是一个选项,因为它会锁定表,直到作业完成.

任何输入都表示赞赏.


这是BBBPackingSlipExists方法的代码:

display boolean BBBpackingSlipExists()
    {
    InventDim               inventDimCur;
    InventDim               inventDimPackSlip;
    InventTrans             inventTransPackSlip;

    ;

    select firstonly RecId from inventTransPackSlip
        where inventTransPackSlip.InventTransId == this.inventTransId
            && (inventTransPackSlip.StatusIssue == StatusIssue::Deducted
                || inventTransPackSlip.StatusIssue == StatusIssue::Sold)
            && !inventTransPackSlip.PackingSlipReturned
        exists join inventDimCur
            where inventDimCur.inventDimId == this.inventDimId
        exists join inventDimPackSlip
            where inventDimPackSlip.inventDimId == inventTransPackSlip.inventDimId
                && inventDimCur.inventSerialId …
Run Code Online (Sandbox Code Playgroud)

microsoft-dynamics x++ axapta dynamics-ax-2009

4
推荐指数
1
解决办法
544
查看次数

从外部数据库中提取数据的最快方法是什么

我需要从存储在MSSQL数据库中的单个表中提取数据.然后将数据存储在AX中的临时表中,根据业务逻辑处理该表.

绩效是该项目的关键因素.

现在我正在研究用X ++代码从MSSQL数据库中检索数据的可能性,并在以下博客中找到:

通过X ++连接到数据库

基本上有不同的方法可以用于这项努力:

  • ODBC - 开放数据库连接
  • OLEDB - 对象链接和嵌入
  • ADO - ActiveX数据对象
  • 连接类

现在我希望有人可以提供哪些是可取的以及为什么(特别是在性能方面)的输入.

任何输入都表示赞赏.

x++ axapta dynamics-ax-2012

4
推荐指数
2
解决办法
212
查看次数

如何从所有BOM中删除特定文章?

我的任务是从AX 2009中删除所有物料清单(BOM)中的特定物品.

据我所知,该BOMTable表包含标题,BOM表中包含行.他们通过连接BOMId.

BOM表保存一个字段ItemId这是InventTable.ItemId.

假设是正确的,从BOM表中删除所有行是否足够BOM.ItemId == InventTable.ItemId?还有什么需要考虑的吗?

任何帮助表示赞赏

x++ axapta dynamics-ax-2009

3
推荐指数
1
解决办法
288
查看次数

Shopware 6 中博客列表的自动图像-文本交替

我正在尝试为 Shopware 6 中的登陆页面构建一个新的布局。它应该显示带有图像和预告文本的博客文章列表。第一篇博客文章的图像应位于左侧,下一篇文章的图像应位于右侧。 在此输入图像描述

当然,我可以手动实现这一点。但是,当我决定在中间某处添加另一篇博客文章时,会发生什么情况,我需要更改以下所有博客条目的文本和图像框。这意味着内容创建者需要做很多工作。

我感谢任何有关如何解决此问题的意见。

shopware6

3
推荐指数
1
解决办法
94
查看次数

AX 2009的正确部署过程是什么?

我想知道在AX 2009下进行自定义的正确部署工作流程是什么.对于AX 2012,我找到了一个很好的白皮书,在Microsoft Dynamics AX 2012环境中部署自定义.

但这并没有多大帮助,因为AX 2009没有模型商店部署的概念(除非我弄错了).

XPO是采用AX 2009的方式吗?如果有人能指出我正确的方向,这将是伟大的.

microsoft-dynamics axapta dynamics-ax-2009

2
推荐指数
1
解决办法
710
查看次数