添加matic网络,web service框架
也有咨询认为外部系统需要始终在线连接到Aras Innovator PLM,ERP系统、MES、CRM、SCM等,PLM必须与ERP等集成,否则该PLM是不完整的实现。
由此可见,成熟的PLM并不是孤立的,需要服务或接口或定制,但需要通过协议的数据交换格式完成集成。 幸运的是,Aras有很多技术。
访问Aras有哪些技术? 1、web服务无法逃脱。 2、通过XML和SOAP进行数据交换。 3 )使用Aras提供的客户端API(IOM.dll )。 4、IOM API扩展(使用IOM.dll作为中间件传输技术,或者将IOM.dll注册为COM的COM调用技术)。
分章节介绍上述几种方法。 (关于将IOM.dll桥接到COM上的方法,我不认为是在VC环境以外的地方的好方法。
从标题中可以看出,这篇文章介绍了方式1。
实际上. net平台的软件系统也可以通过web服务访问Aras,VS提供的工具在开发WS相关程序方面更为高效。
准备工作:
1、必须向Aras公开web服务才能等待调用。 (有关Aras公共web服务的信息,请参阅Aras联机帮助文件。
2、我正在使用XFire访问Aras公开的web服务。 需要下载与XFire相关的Jar包。
3 )在Arsa上发布web服务后,默认提供3个接口服务,1个登录服务LogOn,1个AML语句请求服务ApplyAml,1个方法调用请求服务ApplyMethod
注:在我的Demo码中,硬编码很多,请理解----那样的话,可以省去很多时间~~。
Demo的主要步骤:
1 )提供用于访问Aras的用户信息,
public void initUserInfo ()
{
userName='admin ';
pwd='innovator ';
web服务URL=' http://localhost/aras web/innovator.asmx? WDL ';
}
2 )调用LogOn服务进行登录认证
object [ ] results=client.invoke (' logon ',newstring ) {'root ',' innovator ','',' ' newstring );
参数的顺序是登录用户名、登录密码、zh-CN等地区、China Standard Time等时区
3 )准备AML语句或方法参数,调用ApplyAml或ApplyMethod服务
以下是调用ApplyAml服务
string AML=' amlitemaction=' get ' type=' user ' max records='3'/item/AML ';
object [ ] am lresult=client.invoke (' apply AML ',new String[]{aml} );
4 )分析结果,随时返回结果的是XML字符串,通常访问WS的结果是以Result为根节点的XML字符串。
例如:
结果
item type=' user ' typeid=' 45e 899 CD 2859442982 e b22 bb2 df 683 e5' id=' c 2176 a 05792246 beba 15716315 BF 5d 0e '
config _ id keyed _ name=' aa ' type=' user ' c 2176 a 05792246 beba 15716315 BF 5d 0e/config _ id
created _ by _ id keyed _ name=' innovator admin ' type=' user ' 30b 991 f 927274 fa 3829655 f 50 c 99472 e/created _ by _ id
created _ on 2012-08-29t 16336058336051/created _ on
efault _ vault keyed _ name=' default ' type=' vault ' 67 BBB 9204 Fe 84a 8981 ed 8313049 ba 06c/default _ vault
第1代/第2代
id keyed _ name=' aa ' type=' user ' c 2176 a 05792246 beba 15716315 BF 5d 0e/id
is _ current1/is _ current is _ released0/is _ released
keyed_n
ame>a a</keyed_name><last_login_date>2012-08-29T16:59:15</last_login_date>
<login_name>aa</login_name><logon_enabled>1</logon_enabled>
<major_rev>A</major_rev>
<modified_by_id keyed_name="Innovator Admin" type="User">30B991F927274FA3829655F50C99472E</modified_by_id>
<modified_on>2012-12-03T10:11:31</modified_on>
<new_version>1</new_version>
<not_lockable>0</not_lockable>
<permission_id keyed_name="4AD3091C01A044F5B1F148D428D63CA1" type="Permission">
4AD3091C01A044F5B1F148D428D63CA1</permission_id>
<starting_page>Activity Assignment
</starting_page><working_directory>
</working_directory><first_name>a</first_name>
<last_name>a</last_name>
</Item>
<Item type="User" typeId="45E899CD2859442982EB22BB2DF683E5" id="30B991F927274FA3829655F50C99472E">
<config_id keyed_name="Innovator Admin" type="User">30B991F927274FA3829655F50C99472E</config_id>
<created_by_id keyed_name="Super User" type="User">AD30A6D8D3B642F5A2AFED1A4B02BEFA</created_by_id>
<created_on>2002-04-24T21:46:12</created_on>
<current_state name="Released" keyed_name="Released" type="Life Cycle State">C363ABDADF8D485393BB89877DBDCFD0</current_state>
<default_vault keyed_name="Default" type="Vault">
67BBB9204FE84A8981ED8313049BA06C</default_vault>
<empid keyed_name="****" type="T_Emp">3A4A9AB544EE411EA326097571485774</empid>
<generation>1</generation>
<id keyed_name="Innovator Admin" type="User">30B991F927274FA3829655F50C99472E</id>
<is_current>1</is_current><is_released>0</is_released>
<keyed_name>Innovator Admin</keyed_name><last_login_date>2013-07-01T11:50:36</last_login_date><login_name>admin</login_name><logon_enabled>1</logon_enabled><major_rev>A</major_rev><modified_by_id keyed_name="Innovator Admin" type="User">30B991F927274FA3829655F50C99472E</modified_by_id><modified_on>2013-04-02T15:52:17</modified_on><new_version>0</new_version><not_lockable>0</not_lockable><permission_id keyed_name="71AF3103AE134CE7874AC622620812AB" type="Permission">71AF3103AE134CE7874AC622620812AB</permission_id>
<pwd_is_set_on>2013-02-25T12:44:47</pwd_is_set_on>
<starting_page>Activity Assignment</starting_page>
<state>Released</state>
<telephone></telephone>
<working_directory>C:\</working_directory>
<first_name>Innovator</first_name>
<last_name>Admin</last_name>
</Item>
</Result>
5)
Demo中取到的用户信息:
附上Demo:Java Web Services访问Aras Innovator下载。