我们有在BizTalk 2009中使用的此架构,在接收端口中分派XML消息。此模式和XMLReceive管道的接收位置,对消息进行分批处理,并生成POLLINGSTMTRECORD消息,并提升了OperationType和ProcesoType属性。
但是现在,在BizTalk 2016中不会发生这种情况,仅将邮件分批发送,而不升级属性。
<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:tns="http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns:ns0="https://ServicesPlatform.Common.Schemas.PropertySchema" elementFormDefault="qualified" targetNamespace="http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:annotation>
<xs:appinfo>
<fileNameHint xmlns="http://schemas.microsoft.com/servicemodel/adapters/metadata/xsd">POLLINGSTMTCOMMON</fileNameHint>
<b:schemaInfo is_envelope="yes" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" />
<b:imports>
<b:namespace prefix="ns0" uri="https://ServicesPlatform.Common.Schemas.PropertySchema" location=".\propertyschema.xsd" />
</b:imports>
</xs:appinfo>
</xs:annotation>
<xs:complexType name="POLLINGSTMTRECORD">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="ID_SOLICITUD" nillable="true">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4000" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="1" name="OPERACION" nillable="true">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="40" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="1" name="NUM_REINTENTOS" nillable="true">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4000" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PROCESO" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:element name="POLLINGSTMTRECORD" nillable="true" type="tns:POLLINGSTMTRECORD">
<xs:annotation>
<xs:appinfo>
<b:properties>
<b:property name="ns0:OperationType" xpath="/*[local-name()='POLLINGSTMTRECORD' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']/*[local-name()='OPERACION' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']" />
<b:property distinguished="true" xpath="/*[local-name()='POLLINGSTMTRECORD' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']/*[local-name()='ID_SOLICITUD' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']" />
<b:property distinguished="true" xpath="/*[local-name()='POLLINGSTMTRECORD' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']/*[local-name()='NUM_REINTENTOS' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']" />
<b:property name="ns0:ProcesoType" xpath="/*[local-name()='POLLINGSTMTRECORD' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']/*[local-name()='PROCESO' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']" />
<b:property distinguished="true" xpath="/*[local-name()='POLLINGSTMTRECORD' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']/*[local-name()='PROCESO' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']" />
<b:property distinguished="true" xpath="/*[local-name()='POLLINGSTMTRECORD' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']/*[local-name()='OPERACION' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']" />
</b:properties>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:complexType name="ArrayOfPOLLINGSTMTRECORD">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="POLLINGSTMTRECORD" type="tns:POLLINGSTMTRECORD" />
</xs:sequence>
</xs:complexType>
<xs:element name="ArrayOfPOLLINGSTMTRECORD" nillable="true" type="tns:ArrayOfPOLLINGSTMTRECORD" />
<xs:element name="POLLINGSTMT">
<xs:annotation>
<xs:documentation>
<doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMT</doc:action>
</xs:documentation>
<xs:appinfo>
<b:recordInfo body_xpath="/*[local-name()='POLLINGSTMT' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']/*[local-name()='POLLINGSTMTRECORD' and namespace-uri()='http://Microsoft.LobServices.OracleDB/2007/03/POLLINGSTMTCOMMON']" />
</xs:appinfo>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="POLLINGSTMTRECORD" nillable="true" type="tns:ArrayOfPOLLINGSTMTRECORD" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
但是在BizTalk 2016中没有推广此属性吗?
答案 0 :(得分:1)
就像您将端口管道设置为“通过接收”一样-设置为通过时不支持升级。
https://docs.microsoft.com/en-us/biztalk/core/default-pipelines
如果没有,请发布您的属性架构以及消息架构。