Axapta 如何清理桌面?

Axapta 如何清理桌面?,axapta,Axapta,在AX2009中,存在一个清理不属于任何事务的未使用库存维度的过程 在INVENTDIM表现在有2000多万条记录的AX4中,是否有我可以执行的流程。没有这样的标准流程 勇敢的人可能会做: InventDim.skipDeleteActions(true); InventDim.skipDeleteMethod(true); delete_from InventDim notexists join InventTrans where InventTrans.inventD

在AX2009中,存在一个清理不属于任何事务的未使用库存维度的过程


在INVENTDIM表现在有2000多万条记录的AX4中,是否有我可以执行的流程。

没有这样的标准流程

勇敢的人可能会做:

InventDim.skipDeleteActions(true);
InventDim.skipDeleteMethod(true);
delete_from InventDim
    notexists join InventTrans
        where InventTrans.inventDimId == InventDim.inventDimId;
这将删除项目交易记录未引用的任何记录。 不幸的是,可能存在其他引用


您可以尝试降级AX 2009流程。

如果没有这样的标准流程,您可以尝试以下操作

  • 编写作业以识别所有
    InventDimId
    (++
    ReqCovInventDimId
    , 等)所有表中的字段
  • 编写作业或SQL查询以填写 包含所有这些字段的
    InventDimId
    值的临时表
  • 编写作业或SQL查询以从
    InventDim
    表中删除此临时表中没有
    InventDimId
    的所有此类记录

  • 这就是AX2009中的功能实际上所做的。看起来它与AX4兼容。