zoukankan      html  css  js  c++  java
  • [BTS]WSS+InfoPath+BizTalk 案例


    [BTS]WSS+InfoPath+BizTalk 案例


    一.目的

          通过本文的学习,将带你进入BizTalk与WSS进行整合,完成一次简单的工作流程开发过程。了解BizTalk流程开发的基本过程,了解WSS+InfoPath的应用,了解InfoPath的使用方法,熟悉BizTalk WSS Adapter的使用方法。

    二.背景

    1.名词解释

    WSS
        Windows SharePoint Services 是一个用来创建能够实现信息共享和文档协作的Web站点的引擎,从而有助于提高个人和团队的生产力。它是Microsoft Windows Server™ 2003中所提供的信息工作者体系结构的重要组成部分, 为Microsoft Office System和其他的桌面应用程序提供了附加的功能,并能够作为应用程序开发的平台。

    InfoPath

        InfoPath 2003—Office System 中的新产品—是一个功能强大的程序,它使团队和公司能够通过丰富、动态的表单,高效地收集他们所需的信息。因为 InfoPath 支持使用任何客户定义架构的行业标准的可扩展标记语言 (XML),所以可以在整个企业内和在业务进程之间轻松重用收集到的信息。XML 支持使 InfoPath 用户可以在公司间和业务进程间共享信息,以获得更大的业务影响。

    BizTalk
        Schema, Pipeline, Adapter, Orchestration, Mapping, Rule, BAM

    2.运行环境

    Server :
        windows 2003 server sp2 , sql server 2005, BizTalk 2006 , IIS , WSS2.0, Office 2003

    Client :
        Windows XP , Office 2003

    三.需求分析

    1.处理流程

          如果非常详细的写,可以写一份《软件需求说明书》了,这里只把最关键的流程图放在这里。



    2.数据定义

    采购订单:订单号,填写人,采购产品名称,采购数量,单价,备注,时间
    查看生产计划:订单号,产品名称,数量,备注
    完成的订单:订单号,填写人,采购产品名称,采购数量,单价,总价,备注
    取货表单:订单号,填写人,采购产品名称,采购数量,单价,备注,填写时间,完成时间

    3.规则定义

    如果订单中产品数量大于50件时,需要通知生产厂家进行生产后,将生产后的产品直接发给销售代理。

    4.要求

    全部数据保存在WSS的文档库中即可。

    四.程序开发

    很多BizTalk初学者与我当初一样,不知如何下手,其实,biztalk开发与一般的程序开发基本一样,只是使用的工具不同而已。

    与程序开发一样,首先要明确用户需求,从用户需求中找到可以流程化的东西。然后确认用户现有系统中可以提供的接口有哪些,这也是为EAI做准备,缺的接口就找人或自己开发好。biztalk是基于消息的,所以,要根据需求中确定的数据定义来定义流程中要使用到的消息体(schema),以及明确消息之间的关系(map)。根据与各接口对接的方式,选择不同的adapter进行连接。根据业务流程的定义,就可以很快的把Orchestration画好。最后几步当然是部署、测试。

    1.消息定义

    注意:如果为了后面用到数据有效果验证,以及InfoPath自动生成控件,请为每一个Field设置正确的数据类型。

    客户订单

    生产计划(用state标记生产结束)

    取货单

    2. 升级属性

    目的:.................................

    创建Order的属性定义

    属性定义(取关键性字段)

    升级消息中对应的字段

     

     

    其他几个消息也按同样规则定义好相应的属性。

    3. 在WSS上建好对应的文档库

     

     

     

     

    4. 使用InfoPath定制表单

     

     

    点击保存后,选择发布

     

     

     

     

     

     

    最完点击完成。

    重复上面的步骤,完成其它两个Form表单的设计及发部。

    5. 开发流程

    根据前面的需求,定制Orchestration。
     

    注意,这里用到了相关性概念(会在以后介绍),先按1,2,3顺序操作。

    6. 部署、配置

    RcvOrderPort 配置

    SndProducePort 配置

    RcvProduceResponsePort 配置
     

    SndGoodsPort 配置
     

    五. 测试

    新建一个订单

     

    理论上可以按原流程设计走通。

    但当前进行测试时发现流程中有逻辑上的问题;

    1. 发送到Produce_Form中后,又有一接收端口从这里取数据,这个地方有点问题,觉得应该再增加一个Form用来存ProduceResponse,然后从这个FormList中取数据。

    2. 由于定义的Produce_XML的FinishTime类型是xs:datetime,所以生成的InfoPath表单无法打开从SndProducePort发过来的xml,因为这时FinishTime无值。InfoPath会发出警告。

    所以整合流程只走通了count < 50 的那部分。

     

     

    六. 总结

          本次实验虽然没有完全成功,但主要是为了介绍一下biztalk + infopath + sps 的一个开发方法,希望能从这个案例中明确使用biztalk进行开发的整体步骤。
          下一回会重点研究一下BAM在本流程中的应用,以及InfoPath的相关开技术。

  • 相关阅读:
    前端代码异常日志收集与监控
    基于window.onerror事件 建立前端错误日志
    MySQL数据类型和常用字段属性总结
    MySQL中char(36)被认为是GUID导致的BUG及解决方案
    dl,dt,dd,ul,li,ol区别
    泛型
    EF里Guid类型数据的自增长、时间戳和复杂类型的用法
    EF里的默认映射以及如何使用Data Annotations和Fluent API配置数据库的映射
    EF里的继承映射关系TPH、TPT和TPC的讲解以及一些具体的例子
    SQL JOIN
  • 原文地址:https://www.cnblogs.com/xuzhong/p/1057873.html
Copyright © 2011-2022 走看看