zoukankan      html  css  js  c++  java
  • .NET 中使用 Business Connector --------Dynamics AX

    Axapta ax;
      
    AxaptaRecord custtable;
      
    AxaptaObject query;
    AxaptaObject queryrun;
    AxaptaObject querybuilddatasource;
    AxaptaObject querybuildrange;
      
    //---------------------------------
    // 登录
    ax = new Axapta();
      
    ax.Logon("", "", "", "");
    //---------------------------------
      
    //---------------------------------
    // 创建query对象和数据源
    query = ax.CreateAxaptaObject("Query");
    querybuilddatasource = query.Call("AddDataSource", 77) as AxaptaObject;  // CustTable的 tableId = 77
    querybuildrange = querybuilddatasource.Call("AddRange", 1) as AxaptaObject;  // AccountNum的 fieldId = 1
      
    querybuildrange.Call("value", "4000");  //查找 AccountNum=4000
    //---------------------------------
      
    //---------------------------------
    // 执行query
    queryrun = ax.CreateAxaptaObject("QueryRun", query) as AxaptaObject;
      
    queryrun.Call("prompt");
      
    queryrun.Call("next");
    //---------------------------------
      
    //---------------------------------
    // 获取结果
    custtable = queryrun.Call("getNo", 1) as AxaptaRecord;
      
    MessageBox.Show((string)custtable.get_Field("Name"));
    //---------------------------------
      
    //---------------------------------
    //注销
    ax.Logoff();
    //---------------------------------

    需要添加引用 Microsoft.Dynamics.BusinessConnectorNet 简单的:

    Axapta ax;
    AxaptaRecord custtable;
    AxaptaObject connTest;
      
    //---------------------------------
    // 登录
    ax = new Axapta();
      
    ax.Logon("", "", "", "");
    //---------------------------------
      
    //---------------------------------
    // 创建一个ax类对象的实例
    connTest = ax.CreateAxaptaObject("ConnTest");
    // 执行方法 getCust
    custtable = connTest.Call("getCust", "4000") as AxaptaRecord;
      
    MessageBox.Show((string)custtable.get_Field("Name"));
    //---------------------------------
      
    //---------------------------------
    // 注销
    ax.Logoff();
    //---------------------------------

    ax中代码:

    class ConnTest
    {
      
    }
      
    public CustTable getCust(str _custAccount)
    {
        Query                   q;
        QueryRun                qr;
        QueryBuildDataSource    qbds;
        QueryBuildRange         qrange;
      
        TableId                 _tableId;
        CustTable               _custtable;
        ;
      
        _tableId = tablename2id("CustTable");
      
        q = new Query();
      
        qbds = q.addDataSource(_tableId);
      
        qrange = qbds.addRange(fieldname2id(_tableId, "AccountNum"));
        qrange.value(_custAccount);
      
        qr = new QueryRun(q);
      
        qr.interactive(false);
      
        qr.prompt();
      
        if (qr.next())
            _custtable = qr.getNo(1);
      
        return _custtable;
    }
  • 相关阅读:
    #敏捷个人# 每日成长101:第72天【自我接纳】
    如何从敏捷个人架构图看出时间管理的演变
    #敏捷个人# 每日成长101:第73天【选择】
    2012年度总结:内心宁静的2012
    欢迎关注敏捷个人微信公众帐号
    敏捷个人的创立与详解Scrum会议
    学习敏捷个人卡片V1.0
    #敏捷个人# 每日认识101(11):做自己的医生
    #敏捷个人# 面向对象分析与PPT有什么关系?
    《敏捷个人-认识自我,管理自我 v0.6.pdf》配套PPT打印书籍
  • 原文地址:https://www.cnblogs.com/perock/p/3360968.html
Copyright © 2011-2022 走看看