U8EAI简介和开发手册

更新时间:2024-06-18 03:17:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

6. EAI开发

6.1. 概述

6.1.1. EAI产品简介

U8企业应用集成(EAI)产品是U8ERP与第三方系统进行业务数据交换的平台级工具产品,是U8ERP统一的对外开放接口。

EAI产品包括一整套U8ERP的标准业务数据交换接口,这些接口涵盖基础档案、财务、供应链、生产制造、客户关系管理、HR等ERP业务模块,具备统一的入口、一致的业务外观和相对完整的业务功能,能完成U8基础数据、凭证、业务单据的导入导出及增、删、改等操作(少数不支持),是U8与外部系统进行应用集成和业务整合的基本资源。

在技术上,EAI数据交换接口采用符合业界标准的XML作为数据交换接口规范(协议)描述,充分利用了XML跨平台和低耦合的特性。基于XML的交换协议描述了数据交换过程中Request/Response消息数据格式及元数据规范(Schema),外部系统只要遵循此标准和规范即可以方便的与U8ERP进行Talking。

6.1.2. EAI产品结构

U8EAI产品结构 EAI工具 手动导入导出工具 自动任务计划执行引擎 Web Interface(ASP) 数据映射规则定义、过滤条件规则定义、任务计划配置 EAI数据交换框架 EAIEAI适配器 XML适配 EDI适配 平面文件适配 规则 数据映射 条件过滤 增量 档案单据元数据业务接口注册表 EAI Broker (U8Distribute )-- EAI分发调用代理服务 U8ERP数据交换业务接口 基本档案接口 总帐凭证接口 供应链接口 生产制造接口

U8企业应用集成(EAI)产品结构自下而上分为三层:数据交换基本资源层、EAI数据交换框架层、EAI工具层。

6.1.2.1. 数据交换基本资源层

即U8ERP基础数据交换接口层,这一层包含U8ERP各业务模块所提供的以业务数据实体(档案、单据、凭证等)导入导出为核心任务的基础业务接口,涵盖了U8ERP的核心业务功能点。这些业务接口通过EAI数据交换框架层对外开放并公布,为外部系统访问U8提供了最基础的功能支持。

这些原始业务接口属于U8内部功能,只能通过EAI数据交换接口统一访问,外界不能直接使用。

6.1.2.2. EAI数据交换框架层

EAI数据交换框架层统一封装了底层的U8ERP的数据交换业务接口;对外公布了U8的所有数据交换服务;为外部系统访问U8提供了统一的访问途径和一致的调用入口(Broker /Proxy)。

其中,通过一套标准的档案和单据元数据模板(Schema),提供了U8的业务数据接口外观,描述了数据交换的应用协议(交换格式、上下文),为外部系统访问U8提供了详细完整的接口规范。

另外,通过EAI业务接口注册表,对外提供可用的U8ERP数据交换服务目录,为数据

交换服务的查找、发现提供集中统一的资源库,为U8内部的数据交换基础服务的开发、部署、发布、注销提供全生命期管理机制。

EAI数据交换框架层还包括为解决系统之间数据格式差异而提供的各种数据格式适配器(XML适配器、EDI适配器、平面文件适配器等);以及为系统之间业务数据翻译转换提供的数据映射规则(比如:基本档案的编码映射);为剪裁和适配导出数据提供的条件约束规则等机制。

EAI数据交换框架还提供了运行时统一服务访问接口-- EAIBroker(U8Distribute组件),该接口为外部系统访问U8提供了统一的入口和一致接口外观(Facade)。该接口提供本地调用和远程(Internet)调用两种方式,是使用EAI进行系统集成开发的核心接口。

6.1.2.3. EAI工具层

EAI工具层包括一组EAI配置工具和一套基于EAI数据交换框架的缺省的客户端导入导出工具。

EAI配置工具主要包括U8账套连接(登录)配置、外部系统与U8账套对应关系配置,以及各种规则定义(数据映射规则定义、过滤条件规则定义),定时自动任务执行引擎的任务计划配置等。

EAI导入导出工具是基于EAI数据交换框架开发的,提供给最终用户使用的轻量级工具,具备简单易用的特点。它同时也作为基于EAI数据交换框架进行二次开发的一个典型范例。此工具分为手动导入导出和自动定时任务导入导出两种,其中自动定时任务需要使用配置工具进行任务计划设定。

6.2. EAI二次开发模式

6.2.1 直接使用EAI导入导出工具

在开始菜单中选择 用友ERP-U8?企业应用集成(EAI)?企业应用集成,登录企业应用集成主界面。在这里可以将U8数据以标准XML文件的形式导出或将标准XML数据文件导入U8系统。二次开发程序员只需编写一个工具将标准XML数据文件进行适当转换写入外部系统或取出外部系统数据写成标准XML数据文件。(参考EAI安装目录\\xml\\Samples\\下的例子) 数据流程如下:

调用接口 EAI组件 数据处理 外部 U8 系统

二次开发的工作

二次开发出的软件 这

种开发模式比较简单,优点是:充分利用EAI工具提供的功能,编程简单;缺点是:只能提供批量导入导出功能。

6.2.2 调用EAI数据交换框架接口

包括两种方式:本地COM方式、Internet方式。

这两种方式在使用之前都需要检查有没有进行EAI接口配置(开始->程序->U8ERP->企业应用集成->EAI接口配置),如果没有则需要进行配置。一般配置好后就不要动了,除非出现服务器迁移或重新安装的情况。

EAI接口配置包括两项内容:EAI基本设置、外部系统注册。

? EAI接口基本设置

需要指定U8服务器、EAI登录身份验证、EAI数据源。 如果进行数据交换的数据包比较大,则需要点“自动设置IIS”更改IIS的大数据限制。

? 外部系统注册

在数据交换中,需要明确指定外部系统与U8的某个业务账套的对应关系,该对应关系由一个唯一的注册码标识。可以注册多个外部系统注册码。数据交换时需要在请求消息的头指定一个注册码:

6.2.2.1 本地COM方式

处理流程如下:

调用接口 EAI组件 数据处理 外部 系统 U8 二次开发的工作 二次开发出的软件

这种方式可根据开发者的需要批量处理或者实时处理。接口调用非常简单,简化了编程。开发者只需将标准数据传入接口,如下:

Dim obj as Object Dim strRet as string

Set Obj=CreateObject(U8Distribute.iDistribute) strRet =obj. Process(sXml)

可以根据回执内容strRet对操作结果进行相应的处理。

传入参数sXml和返回结果strRet为标准XML数据串,具体格式后面会说明。

6.2.2.2 Internet方式

U8 IIS服 务器 SOAP 协议 二次开发模块 外部 系统 二次开发工作

开发者可以用SOAP协议向装有U8-EAI的IIS服务器发送XML数据,类似本地调用分

析返回的XML回执,如下:

Dim http As New XMLHTTP Dim sHttpServer As String Dim strRet as string

sHttpServer = \ //指定服务器 http.Open \ //True为异步,Fasle为同步 http.send sXml //发送数据 Do While http.readyState <> 4 DoEvents Loop

If http.Status = 200 Then

strRet = http.responseText //返回结果 Else

//处理出错信息 End If

6.3. 导入导出数据格式标准

6.3.1. 档案单据模板格式

单据模板指的U8中各个基础档案和业务档案用XML存储时的格式。目前放在

290. 物料生产线关系 295. 生产订单 300. ATP规则 305. 预测版本 310. 设备管理 311. 设备台账 316. 设备类型台账 321. 测量点记录 327. 贸易术语 332. 贸易方式 337. 国家档案 342. 港口资料 326. 出口管理 347. 唛头资料 352. 存货价格 357. 报价单 362. 出口订单 367. 费用单 372. 信用证 377. 进口管理 383. 委外管理 378. 进口订单 384. 委外发票 389. 委外订单 395. 部门档案 396. 集团账套不支持部门的导入(添加、删除、修改)导出操作 401. 集团企业目录[非集团账套不支持该档案的导入导出操作] 406. 人员档案 411. 人员类别 416. 职务簇 421. 职务级别 394. 基础档案 426. 职务档案 431. 岗位序列 436. 岗位等级 441. 岗位档案 446. 币种 451. 银行档案 456. 本单位开户银行 461. 地区分类 466. 发运方式 471. 仓库档案 476. 货位档案 481. 客户分类 291. Y 296. Y 301. Y 306. Y 312. 317. 322. 328. Y 333. Y 338. Y 343. Y 348. Y 353. Y 358. Y 363. Y 368. Y 373. Y 379. Y 385. Y 390. Y 397. Y 292. 297. 302. 307. 313. 318. 323. 329. 334. 339. 344. 349. 354. 359. 364. 369. 374. 380. 386. 391. 398. Y 293. 298. 303. 308. 314. 319. 324. 330. 335. 340. 345. 350. 355. 360. 365. 370. 375. 381. 387. 392. 399. Y 294. Y 299. Y 304. Y 309. Y 315. 320. 325. 331. Y 336. Y 341. Y 346. Y 351. Y 356. Y 361. Y 366. Y 371. Y 376. Y 382. Y 388. Y 393. Y 400. Y 402. Y 407. Y 412. Y 417. Y 422. Y 427. Y 432. Y 437. Y 442. Y 447. Y 452. Y 457. Y 462. Y 467. Y 472. Y 477. Y 482. Y 403. Y 408. Y 413. Y 418. Y 423. Y 428. Y 433. Y 438. Y 443. Y 448. 453. Y 458. Y 463. Y 468. Y 473. Y 478. Y 483. Y 404. 409. Y 414. Y 419. Y 424. Y 429. Y 434. Y 439. Y 444. Y 449. 454. Y 459. Y 464. Y 469. Y 474. Y 479. Y 484. Y 405. Y 410. Y 415. Y 420. Y 425. Y 430. Y 435. Y 440. Y 445. Y 450. Y 455. Y 460. Y 465. Y 470. Y 475. Y 480. Y 485. Y 486. 客户档案 491. 供应商分类 496. 供应商档案 501. 计量单位组 506. 计量单位 511. 存货分类 516. 存货档案 521. 结算方式 526. 付款条件 531. 收发类别 536. 销售类型 541. 采购类型 546. 成套件 551. 费用项目分类 556. 费用项目 561. 自定义项设置 566. 自定义项档案 571. 原因码档案 576. 仓库存货对照表 581. 存货货位对照表 586. 供应商存货对照表 591. 客户存货对照表 596. 项目 601. 会计科目 606. 汇率 611. 凭证类别 616. 常用摘要 621. 交易单位分类 626. 交易单位档案 631. 交易单位账号 487. Y 492. Y 497. Y 502. Y 507. Y 512. Y 517. Y 522. Y 527. Y 532. Y 537. Y 542. Y 547. Y 552. Y 557. Y 562. 567. Y 572. Y 577. Y 582. Y 587. Y 592. Y 597. Y 602. Y 607. Y 612. Y 617. Y 622. Y 627. Y 632. Y 488. Y 493. Y 498. Y 503. Y 508. Y 513. Y 518. Y 523. Y 528. Y 533. Y 538. Y 543. Y 548. Y 553. Y 558. Y 563. Y 568. 573. Y 578. Y 583. Y 588. Y 593. Y 598. 603. 608. 613. 618. 623. 628. 633. 489. Y 494. Y 499. Y 504. Y 509. Y 514. Y 519. Y 524. Y 529. Y 534. Y 539. Y 544. Y 549. Y 554. Y 559. Y 564. 569. Y 574. Y 579. Y 584. Y 589. Y 594. Y 599. 604. 609. 614. 619. 624. 629. 634. 490. Y 495. Y 500. Y 505. Y 510. Y 515. Y 520. Y 525. Y 530. Y 535. Y 540. Y 545. Y 550. Y 555. Y 560. Y 565. Y 570. Y 575. Y 580. Y 585. Y 590. Y 595. Y 600. Y 605. Y 610. Y 615. Y 620. Y 625. 630. 635. 6.5. 凭证的导入

1. 由于凭证导入的特殊性,凭证导入时单据头中增加了renewproofno、import、newadd

三个属性,含义如下:

2. proc=”add” //追加 3. proc=”edit” //覆盖

4. renewproofno=”y” //重新编号 5. renewproofno=”n” //不重新编号 6. import=”y” //导入式 7. newadd=”y” //新增式 8. 并且,导入时只有下面六种组合

9. 序9.1. 操作 号 10. 1 11. 重新编号+追加+新增式 12. Proc=”add” renewproofno=”y” 13. newadd=”y” 14. import=”n” 17. 2 18. 不重新编号+追加+新增式 19. Proc=”add” renewproofno=”n” 20. newadd=”y” 21. import=”n” 24. 3 25. 重新编号+追加+导入式 31. 4 32. 不重新编号+追加+导入式 38. 5 39. 不重新编号+覆盖+新增式 26. Proc=”add” renewproofno=”y” 27. newadd=”n” 28. import=”y” 33. Proc=”add” renewproofno=”n” 34. newadd=”n” 35. import=”y” 40. Proc=”edit” renewproofno=”n” 41. newadd=”y” 42. import=”n” 45. 6 46. 不重新编号+覆盖+导入式 47. Proc=”edit” renewproofno=”n” 48. newadd=”n” 49. import=”y” 36. 保持除记账、预算审批标志外的所有导入前输出状态。 37. 凭证号不重新编号 43. 覆盖生成的凭证记录为生成态。即刚编写完的凭证状态。 44. 凭证号不重新编号 50. 保持除记账、预算审批标志外的,所有导入前输出状态。 51. 凭证号不重新编号 29. 保持除记账、预算审批标志外的所有导入前输出状态。 30. 凭证号重新编号 22. 追加生成的凭证记录为生成态。即刚编写完的凭证状态。 23. 凭证编号不重新排序 15. 追加生成的凭证记录为生成态。即刚编写完的凭证状态。 16. 凭证编号重新排序 9.2. 单据头 9.3. 说 明

本文来源:https://www.bwwdw.com/article/y8n3.html

Top