Inside Dynamics Axapta源代码赏析(四)
生活随笔
收集整理的这篇文章主要介绍了
Inside Dynamics Axapta源代码赏析(四)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
第八章:Developing Applications Using Business Connector
这一章的代码主要演示如何通过Business Connector与Axapta交互
在Dynamics Axapta的客户端安装目录中找到Microsoft.Dynamics.BusinessConnectorNet.dll这个文件,添加到VS.NET的工程中.
1.HelloWorldBC.cs
class HelloWorldBC
{
static void Main(string[] args)
{
Axapta ax;
// Log on to Dynamics AX
ax = new Axapta();
try
{
ax.Logon(null, null, null, null);
}
catch (Exception)
{
Console.WriteLine("Exception occurred during logon");
}
Console.WriteLine("Hello World!");
// Log off from Dynamics AX
ax.Logoff();
}
} 好久没用VS2005了,今天用了一下,智能提示忒爽了,Axapta编辑器也快点好起来吧......
搞不清楚四个参数都填null是怎么找到AOS的?本来想用Reflector反编译一下Microsoft.Dynamics.BusinessConnectorNet.dll,结果出来的是乱七八糟的东西,唉,忒不友好了......
2.AccessingDataBC.cs
遍历所有的料品,并打印料品Id和料品名称.
// Instantiate a Dynamics AX record object for the
// record we want to work with
AxaptaRecord axRecord = ax.CreateAxaptaRecord("InventTable");
// Execute a query against the record
axRecord.ExecuteStmt("select * from %1");
// Loop through the returned records
// Extract the data from two fields for each record
while (axRecord.Found)
{
invItemName = axRecord.get_Field(invItemNameField);
invItemId = axRecord.get_Field(invItemIdField);
Console.WriteLine(invItemId + "\t" + invItemName);
// Go to the next record
axRecord.Next();
} 3.InvokingBusinessLogicBC.cs
调用Axapta中的静态方法.
// Invoke the CallStaticClassMethod managed class
// Provide the X++ class name and method to execute
// The return value is placed into returnValue
returnValue = ax.CallStaticClassMethod("InventoryManager",
"updateInventoryQty");
// Use the return value to take some action
if((Boolean)returnValue)
Console.WriteLine("Inventory quantity updated successfully");
else
Console.WriteLine("Inventory quantity update failed");
这一章的代码主要演示如何通过Business Connector与Axapta交互
在Dynamics Axapta的客户端安装目录中找到Microsoft.Dynamics.BusinessConnectorNet.dll这个文件,添加到VS.NET的工程中.
1.HelloWorldBC.cs
class HelloWorldBC
{
static void Main(string[] args)
{
Axapta ax;
// Log on to Dynamics AX
ax = new Axapta();
try
{
ax.Logon(null, null, null, null);
}
catch (Exception)
{
Console.WriteLine("Exception occurred during logon");
}
Console.WriteLine("Hello World!");
// Log off from Dynamics AX
ax.Logoff();
}
} 好久没用VS2005了,今天用了一下,智能提示忒爽了,Axapta编辑器也快点好起来吧......
搞不清楚四个参数都填null是怎么找到AOS的?本来想用Reflector反编译一下Microsoft.Dynamics.BusinessConnectorNet.dll,结果出来的是乱七八糟的东西,唉,忒不友好了......
2.AccessingDataBC.cs
遍历所有的料品,并打印料品Id和料品名称.
// Instantiate a Dynamics AX record object for the
// record we want to work with
AxaptaRecord axRecord = ax.CreateAxaptaRecord("InventTable");
// Execute a query against the record
axRecord.ExecuteStmt("select * from %1");
// Loop through the returned records
// Extract the data from two fields for each record
while (axRecord.Found)
{
invItemName = axRecord.get_Field(invItemNameField);
invItemId = axRecord.get_Field(invItemIdField);
Console.WriteLine(invItemId + "\t" + invItemName);
// Go to the next record
axRecord.Next();
} 3.InvokingBusinessLogicBC.cs
调用Axapta中的静态方法.
// Invoke the CallStaticClassMethod managed class
// Provide the X++ class name and method to execute
// The return value is placed into returnValue
returnValue = ax.CallStaticClassMethod("InventoryManager",
"updateInventoryQty");
// Use the return value to take some action
if((Boolean)returnValue)
Console.WriteLine("Inventory quantity updated successfully");
else
Console.WriteLine("Inventory quantity update failed");
其中的类InventoryManager在工程InsideDynamicsAXChapter8中定义.
这些连接和简单的操作倒还可以,不过Axapta的接口和SDK写得确实不甘恭维......
转载于:https://www.cnblogs.com/Farseer1215/archive/2006/09/26/515255.html
总结
以上是生活随笔为你收集整理的Inside Dynamics Axapta源代码赏析(四)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 做了输卵管造影一般多久后可以要孩子?
- 下一篇: Google 代码搜索