如何获取连接到AX 09中每个模块的表列表?

时间:2011-02-22 10:59:43

标签: axapta x++

有谁能告诉我如何找到连接到AX 09中每个模块的表格列表?

我真的很感激有关如何做到这一点的任何见解。

请帮助。

2 个答案:

答案 0 :(得分:3)

您可以通过运行以下作业来获取与特定配置键相关的表列表:

static void FindTablesFromConfigKey(Args _args)
{
    // The name of the configuration key to be specified here
    str                     configKeyName   = "Prod";
    Dictionary              dictionary      = new Dictionary();
    ConfigurationKeyId      configKeyId     = dictionary.configurationKeyName2Id(configKeyName);
    TableId                 tableId;
    DictConfigurationKey    dictConfigurationKey;
    DictTable               dictTable;
    container               keyIds;
    int                     i;
    ;

    if (configKeyId)
    {
        // Find all children of the specified configuration key
        for (i = dictionary.configurationKeyNext(0); i; i = dictionary.configurationKeyNext(i))
        {
            dictConfigurationKey = new DictConfigurationKey(i);

            while (dictConfigurationKey.parentConfigurationKeyId())
                dictConfigurationKey = new DictConfigurationKey(dictConfigurationKey.parentConfigurationKeyId());

            if (dictConfigurationKey.id() == configKeyId)
                keyIds += i;
        }

        // Find all tables that have an appropriate configuration key
        i = 0;
        for (tableId = dictionary.tableNext(0);tableId;tableId = dictionary.tableNext(tableId))
        {
            dictTable = new DictTable(tableId);
            if (!dictTable.isMap() && !dictTable.isTmp() && !dictTable.isView())
            {
                if (confind(keyIds, dictTable.configurationKeyId()))
                {
                    i++;
                    info(dictTable.name());
                }
            }
        }
    }

    info(strfmt("%1 tables have configuration key '%2'", i, configKeyName));
}

您可以在作业中使用以下配置键:
LedgerBasic :总分类帐 银行:银行 SysAdmin :管理
LogisticsAdvanced :物流
LogisticsBasic :贸易
ProjBasic :项目
QuotationBasic :报价单 AIF :应用集成框架
货币:货币
ReportingServices :Reporting Services
COSBaseModule :成本核算
资产:固定资产
PBA_ProductBuilder :产品构建器
需求:总体规划
smmOutlook :Microsoft Office Outlook同步
LedgerAdvanced :总帐 - 提前
产品:生产系列I WrkCtr :资源
ProdRouting :生产系列II SysDevelopmentXPP :X ++开发
ProdShop :生产系列III
SMAManagement :服务管理
SmmCRM :CRM系列
活动:活动
TradeAgreements :贸易协议
AIFWebService :应用集成框架Web服务
Trv :费用管理
TradeInterCompany :公司间 SysDevelopmentMorphX :发展
ProjAdvanced :项目 - 先进的 WMSBasic :仓库管理I WMSAdvanced :仓库管理II KMBSC :平衡计分卡
EP :企业门户
HRMAdministration :人力资源I RFID :RFID
SysDatabaseLog :数据库日志
CSS :客户自助服务
SmmSM :销售管理
BankElectronicBanking :电子银行业务 ESS :员工自助服务
BAS :业务分析
PurchReq :采购申请
InventQualityManagement :质量管理
COSPlanCostCalc :灵活的预算编制 SMASubscription :订阅
JmgPayroll :车间控制 - 支付生成
HRMCollaborative :人力资源III CRSECountry :国家/地区特定功能
JmgJob :车间控制 - 工作登记
SIG :电子签名
LedgerAdvanced2 :总分类帐 - 高级II HRMManagement :人力资源II KMBPM :业务流程管理
KMQuestionnaireBasic :问卷I Jmg :车间控制
SmmTM :电话营销
SmmMA :营销自动化
KMQuestionnaireAdvanced :调查问卷II

答案 1 :(得分:1)

检查此链接是否为即兴创作的ExtractTablesNamesFromConfigs类,并根据配置键自动将表导出到多个文本文件。这里提供了大约207个密钥和详细信息http://www.codeproject.com/Articles/320272/Extract-All-tables-from-Dynamics-AX-Data-Dictionar