<?xml version="1.0" encoding="GBK"?>
<process xmlns:bean="http://bean.boe.com/" xmlns:bpel="http://bpel.boe.com/" targetNamespace="http://bpel.boe.com/bpelj/" name="BMDTTrackOutBox.bpel">
    <partnerLinks>
        <partnerLink name="bpelj" partnerLinkType="bpel:bpelj" />
        <partnerLink name="EventInfoUtil" partnerLinkType="bean:EventInfoUtil" />
        <partnerLink name="MaterialPackingServiceImpl" partnerLinkType="bean:MaterialPackingServiceImpl" />
        <partnerLink name="TransactionUtil" partnerLinkType="bean:TransactionUtil" />
        <partnerLink name="CommonValidation" partnerLinkType="bean:CommonValidation" />
        <partnerLink name="ESBService" partnerLinkType="bean:ESBService" />
    </partnerLinks>
    <variables>
        <variable name="actType" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/ACTTYPE')" />
        <variable name="areaName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/AREANAME')" />
        <variable name="boxFlag" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/BOXQTYFLAG')" />
        <variable name="boxQuantity" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/MATERIALQUANTITY')" />
        <variable name="charge" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/CHARGE')" />
        <variable name="CreateStorageSpec" messageType="java.lang.String"></variable>
        <variable name="erpFactory" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/ERPFACTORY')" />
        <variable name="erpLocation" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/ERPLOCATION')" />
        <variable name="erpreceiveLocation" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/ERPRECEIVELOCATION')" />
        <variable name="eventComment" messageType="java.lang.String" expression="getXmlData('message', '//Message/Header/EVENTCOMMENT')" />
        <variable name="eventInfo" messageType="com.cim.idm.framework.data.EventInfo"></variable>
        <variable name="eventUser" messageType="java.lang.String" expression="getXmlData('message', '//Message/Header/EVENTUSER')" />
        <variable name="EveryBoxQuantity" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/MATERIALCREATEQUANTITY')" />
        <variable name="improvmentFlag" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/IMPROVMENTFLAG')" />
        <variable name="lastEventTimeKey" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/LASTEVENTTIMEKEY')" />
        <variable name="listMaterialPacking" messageType="java.lang.String"></variable>
        <variable name="makeDate" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/MAKEDATE')" />
        <variable name="materialSpecName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/MATERIALSPECNAME')" />
        <variable name="message" messageType="org.jdom.Document"></variable>
        <variable name="NPFlag" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/NPFLAG')" />
        <variable name="OICSender" messageType="java.lang.String"></variable>
        <variable name="palletID" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/SUPERMATERIALPACKINGNAME')" />
        <variable name="reasonCode" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/REASONCODE')" />
        <variable name="reasonCodeType" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/REASONCODETYPE')" />
        <variable name="ReceiveAct" messageType="java.lang.String"></variable>
        <variable name="receiveActNo" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/RECEIVEACTNO')" />
        <variable name="receiveQty" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/RECEIVEQTY')" />
        <variable name="receiveRequestDetailName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/RECEIVEREQUESTDETAILNAME')" />
        <variable name="receiveRequestName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/RECEIVEREQUESTNAME')" />
        <variable name="replySubjectName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Header/ORIGINALSOURCESUBJECTNAME')" />
        <variable name="shipRequestDetailName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/SHIPREQUESTDETAILNAME')" />
        <variable name="shipRequestName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/SHIPREQUESTNAME')" />
        <variable name="siteName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/SITENAME')" />
        <variable name="supplierName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/SUPPLIERNAME')" />
        <variable name="TrackOutBox" messageType="org.jdom.Document"></variable>
    </variables>
    <sequence>
        <receive name="BMDTTrackOutBox" bounds="70,30,149,81">
            <input variable="message" type="org.jdom.Document" />
        </receive>
        <invoke name="EventInfoUtil makeEventInfo" type="invokebean" description="public static com.cim.idm.framework.data.EventInfo makeEventInfo(java.lang.String eventName, java.lang.String eventUser, java.lang.String eventComment, java.lang.String reasonCodeType, java.lang.String reasonCode)" bounds="74,141,141,105" partnerLink="EventInfoUtil" partnerLinkType="EventInfoUtil" operation="makeEventInfo" operationDesc="public static com.cim.idm.framework.data.EventInfo makeEventInfo(java.lang.String eventName, java.lang.String eventUser, java.lang.String eventComment, java.lang.String reasonCodeType, java.lang.String reasonCode)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input constant="TrackOutBox" type="java.lang.String" />
            <input variable="eventUser" type="java.lang.String" />
            <input variable="eventComment" type="java.lang.String" />
            <input variable="reasonCodeType" type="java.lang.String" />
            <input variable="reasonCode" type="java.lang.String" />
            <output variable="eventInfo" />
        </invoke>
        <invoke name="MaterialPackingServiceImpl checkLimitedSpec" type="invokebean" description="public void checkLimitedSpec(com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String siteName, java.lang.String receiveQty, java.lang.String receiveRequestName, java.lang.String receiveRequestDetailName, java.lang.String shipRequestName, java.lang.String shipRequestDetailName, java.lang.String materialSpecName, java.lang.String receiveActno)" bounds="74,276,141,105" partnerLink="MaterialPackingServiceImpl" partnerLinkType="MaterialPackingServiceImpl" operation="checkLimitedSpec" operationDesc="public void checkLimitedSpec(com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String siteName, java.lang.String receiveQty, java.lang.String receiveRequestName, java.lang.String receiveRequestDetailName, java.lang.String shipRequestName, java.lang.String shipRequestDetailName, java.lang.String materialSpecName, java.lang.String receiveActno)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="eventInfo" />
            <input variable="siteName" />
            <input variable="receiveQty" />
            <input variable="receiveRequestName" />
            <input variable="receiveRequestDetailName" />
            <input variable="shipRequestName" />
            <input variable="shipRequestDetailName" />
            <input variable="materialSpecName" />
            <input variable="receiveActNo" />
            <input constant="delete" type="java.lang.String" />
        </invoke>
        <invoke name="TransactionUtil beginTransaction" type="invokebean" description="public void beginTransaction()" bounds="74,411,141,105" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="beginTransaction" operationDesc="public void beginTransaction()">
            <source idx="0" terminal="5,A" />
        </invoke>
        <invoke name="MaterialPackingServiceImpl ModifyErpLocation" type="invokebean" description="public static void ModifyErpLocation(com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String siteName, java.lang.String areaName, java.lang.String receiveRequestName, java.lang.String receiveRequestDetailName, java.lang.String materialSpecName, java.lang.String shipRequestName, java.lang.String shipRequestDetailName, java.lang.String erpLocation, java.lang.String erpFactory)" bounds="74,546,141,105" partnerLink="MaterialPackingServiceImpl" partnerLinkType="MaterialPackingServiceImpl" operation="ModifyErpLocation" operationDesc="public static void ModifyErpLocation(com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String siteName, java.lang.String areaName, java.lang.String receiveRequestName, java.lang.String receiveRequestDetailName, java.lang.String materialSpecName, java.lang.String shipRequestName, java.lang.String shipRequestDetailName, java.lang.String erpLocation, java.lang.String erpFactory)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
            <input variable="siteName" type="java.lang.String" />
            <input variable="areaName" type="java.lang.String" />
            <input variable="receiveRequestName" type="java.lang.String" />
            <input variable="receiveRequestDetailName" type="java.lang.String" />
            <input variable="materialSpecName" type="java.lang.String" />
            <input variable="shipRequestName" type="java.lang.String" />
            <input variable="shipRequestDetailName" type="java.lang.String" />
            <input variable="erpLocation" type="java.lang.String" />
            <input variable="erpFactory" type="java.lang.String" />
        </invoke>
        <invoke name="MaterialPackingServiceImpl Packing" type="invokebean" description="public static java.lang.String Packing(com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String siteName, java.lang.String areaName, java.lang.String receiveQty, java.lang.String boxQuantity, java.lang.String EveryBoxQuantity, java.lang.String boxFlag, java.lang.String receiveRequestName, java.lang.String receiveRequestDetailName, java.lang.String materialSpecName, java.lang.String receiveActNo, java.lang.String makeDate, java.lang.String shipRequestName, java.lang.String shipRequestDetailName, java.lang.String reasonCodeType, java.lang.String reasonCode, java.lang.String erpLocation, java.lang.String erpFactory, java.lang.String charge, java.lang.String supplierName, java.lang.String NPFlag, java.lang.String improvmentFlag, java.lang.String erpreceivelocation, java.lang.String acttype)" bounds="74,681,141,105" partnerLink="MaterialPackingServiceImpl" partnerLinkType="MaterialPackingServiceImpl" operation="BMDTPacking" operationDesc="public static java.lang.String Packing(com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String siteName, java.lang.String areaName, java.lang.String receiveQty, java.lang.String boxQuantity, java.lang.String EveryBoxQuantity, java.lang.String boxFlag, java.lang.String receiveRequestName, java.lang.String receiveRequestDetailName, java.lang.String materialSpecName, java.lang.String receiveActNo, java.lang.String makeDate, java.lang.String shipRequestName, java.lang.String shipRequestDetailName, java.lang.String reasonCodeType, java.lang.String reasonCode, java.lang.String erpLocation, java.lang.String erpFactory, java.lang.String charge, java.lang.String supplierName, java.lang.String NPFlag, java.lang.String improvmentFlag, java.lang.String erpreceivelocation, java.lang.String acttype)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="eventInfo" />
            <input variable="siteName" />
            <input variable="areaName" />
            <input variable="receiveQty" />
            <input variable="boxQuantity" />
            <input variable="EveryBoxQuantity" />
            <input variable="boxFlag" />
            <input variable="receiveRequestName" />
            <input variable="receiveRequestDetailName" />
            <input variable="materialSpecName" />
            <input variable="receiveActNo" />
            <input variable="makeDate" />
            <input variable="shipRequestName" />
            <input variable="shipRequestDetailName" />
            <input variable="reasonCodeType" />
            <input variable="reasonCode" />
            <input variable="erpLocation" />
            <input variable="erpFactory" />
            <input variable="charge" />
            <input variable="supplierName" />
            <input variable="NPFlag" />
            <input variable="improvmentFlag" />
            <input variable="erpreceiveLocation" />
            <input variable="actType" />
            <input variable="palletID" />
            <output variable="lastEventTimeKey" />
        </invoke>
        <invoke name="TransactionUtil commitTransaction" type="invokebean" description="public void commitTransaction()" bounds="74,816,141,105" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="commitTransaction" operationDesc="public void commitTransaction()">
            <source idx="0" terminal="5,A" />
        </invoke>
        <invoke name="CommonValidation setReturnDoc" type="invokebean" description="public static void setReturnDoc(java.lang.String nodeValue, java.lang.String nodeName, org.jdom.Document doc)" bounds="74,951,141,105" partnerLink="CommonValidation" partnerLinkType="CommonValidation" operation="setReturnDoc" operationDesc="public static void setReturnDoc(java.lang.String nodeValue, java.lang.String nodeName, org.jdom.Document doc)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="lastEventTimeKey" type="java.lang.String" />
            <input constant="LASTEVENTTIMEKEY" type="java.lang.String" />
            <input variable="message" type="org.jdom.Document" />
        </invoke>
        <invoke name="ESBService sendReplyBySender" type="invokebean" description="public void sendReplyBySender(java.lang.String replySubject, org.jdom.Document doc, java.lang.String senderName)" bounds="74,1086,141,105" partnerLink="ESBService" partnerLinkType="ESBService" operation="sendReplyBySender" operationDesc="public void sendReplyBySender(java.lang.String replySubject, org.jdom.Document doc, java.lang.String senderName)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="replySubjectName" type="java.lang.String" />
            <input variable="message" type="org.jdom.Document" />
            <input constant="OICSender" type="java.lang.String" />
        </invoke>
    </sequence>
</process>

