134 lines
6.1 KiB
Plaintext
134 lines
6.1 KiB
Plaintext
xquery version "1.0";
|
|
|
|
|
|
(:: OracleAnnotationVersion "1.0" ::)
|
|
|
|
declare namespace ns0 = "http://xmlns.banesco.com/Service/MessageEnrichUtilMgmtSvc";
|
|
(:: import schema at "../../../../BanescoCommonArtifacts/xsd/utilities/MessageEnrichUtilMgmtSvc.xsd" ::)
|
|
|
|
declare namespace xf = "http://tempuri.org/MessageEnrichUtilMgmtSvc/operations/readDVM/xq/MessageEnrichUtilMgmtSvc_readDVM_Response/";
|
|
declare namespace lvs = "http://www.banesco.com/ServicesPortfolio/ListValueManagementService";
|
|
|
|
declare variable $DVM_VB_NAME as xs:string := "DVM_VB_PROTOCOL";
|
|
|
|
declare function xf:BuildResponseBody($response as element(ns0:readDVM_Rs), $outputDVM as element(*), $DVMName as xs:string) as element(*) {
|
|
<response>
|
|
{
|
|
if ($DVMName = $DVM_VB_NAME) then (
|
|
<body>
|
|
<ns0:Outputs>
|
|
<ns0:Output>
|
|
<ns0:Attributes>
|
|
<ns0:Attribute>
|
|
<ns0:Name>INDLINEA</ns0:Name>
|
|
<ns0:Value>{data($outputDVM/response[1]/lvs:BlocksData[./lvs:columnName='INDLINEA']/lvs:columnValue)}</ns0:Value>
|
|
</ns0:Attribute>
|
|
<ns0:Attribute>
|
|
<ns0:Name>CRITREV</ns0:Name>
|
|
<ns0:Value>{data($outputDVM/response[1]/lvs:BlocksData[./lvs:columnName='CRITREV']/lvs:columnValue)}</ns0:Value>
|
|
</ns0:Attribute>
|
|
<ns0:Attribute>
|
|
<ns0:Name>INDCONT</ns0:Name>
|
|
<ns0:Value>{data($outputDVM/response[1]/lvs:BlocksData[./lvs:columnName='INDCONT']/lvs:columnValue)}</ns0:Value>
|
|
</ns0:Attribute>
|
|
<ns0:Attribute>
|
|
<ns0:Name>NUMREG</ns0:Name>
|
|
<ns0:Value>{data($outputDVM/response[1]/lvs:BlocksData[./lvs:columnName='NUMREG']/lvs:columnValue)}</ns0:Value>
|
|
</ns0:Attribute>
|
|
<ns0:Attribute>
|
|
<ns0:Name>TIPOPER</ns0:Name>
|
|
<ns0:Value>{data($outputDVM/response[1]/lvs:BlocksData[./lvs:columnName='TIPOPER']/lvs:columnValue)}</ns0:Value>
|
|
</ns0:Attribute>
|
|
<ns0:Attribute>
|
|
<ns0:Name>TIPTRN</ns0:Name>
|
|
<ns0:Value>{data($outputDVM/response[1]/lvs:BlocksData[./lvs:columnName='TIPTRN']/lvs:columnValue)}</ns0:Value>
|
|
</ns0:Attribute>
|
|
</ns0:Attributes>
|
|
</ns0:Output>
|
|
</ns0:Outputs>
|
|
<ns0:Execute>true</ns0:Execute>
|
|
</body>
|
|
)
|
|
|
|
else (
|
|
if ($DVMName = "DVM_CUSTOMER_TYPE") then (
|
|
<body>
|
|
{
|
|
let $Outputs := $response/ns0:Outputs
|
|
return
|
|
<ns0:Outputs>
|
|
{
|
|
for $Output at $index in $Outputs/ns0:Output
|
|
return
|
|
<ns0:Output>
|
|
{
|
|
let $Attributes := $Output/ns0:Attributes
|
|
return
|
|
<ns0:Attributes>
|
|
{
|
|
for $Attribute in $Attributes/ns0:Attribute
|
|
return
|
|
<ns0:Attribute>
|
|
<ns0:Name>{ data($Attribute/ns0:Name) }</ns0:Name>
|
|
<ns0:Value>{ data($outputDVM/response/lvs:BlocksData/lvs:columnValue)}</ns0:Value>
|
|
</ns0:Attribute>
|
|
}
|
|
</ns0:Attributes>
|
|
}
|
|
</ns0:Output>
|
|
}
|
|
</ns0:Outputs>
|
|
}
|
|
<ns0:Execute>true</ns0:Execute>
|
|
</body>
|
|
)
|
|
else (
|
|
<body>
|
|
{
|
|
let $Outputs := $response/ns0:Outputs
|
|
return
|
|
<ns0:Outputs>
|
|
{
|
|
for $Output at $index in $Outputs/ns0:Output
|
|
return
|
|
<ns0:Output>
|
|
{
|
|
let $Attributes := $Output/ns0:Attributes
|
|
return
|
|
<ns0:Attributes>
|
|
{
|
|
for $Attribute in $Attributes/ns0:Attribute
|
|
return
|
|
<ns0:Attribute>
|
|
<ns0:Name>{ data($Attribute/ns0:Name) }</ns0:Name>
|
|
<ns0:Value>{ data($outputDVM/response[$index]) }</ns0:Value>
|
|
</ns0:Attribute>
|
|
}
|
|
</ns0:Attributes>
|
|
}
|
|
</ns0:Output>
|
|
}
|
|
</ns0:Outputs>
|
|
}
|
|
<ns0:Execute>true</ns0:Execute>
|
|
</body>
|
|
)
|
|
)
|
|
}
|
|
</response>
|
|
};
|
|
|
|
declare function xf:MessageEnrichUtilMgmtSvc_readDVM_Response($readDVM_Rs1 as element(ns0:readDVM_Rs),
|
|
$anyType1 as element(*),
|
|
$DVMName as xs:string)
|
|
as element(ns0:readDVM_Rs) {
|
|
<ns0:readDVM_Rs>{xf:BuildResponseBody($readDVM_Rs1, $anyType1, $DVMName)/body/*}</ns0:readDVM_Rs>
|
|
};
|
|
|
|
declare variable $readDVM_Rs1 as element(ns0:readDVM_Rs) external;
|
|
declare variable $anyType1 as element(*) external;
|
|
declare variable $DVMName as xs:string external;
|
|
|
|
xf:MessageEnrichUtilMgmtSvc_readDVM_Response($readDVM_Rs1,
|
|
$anyType1,
|
|
$DVMName) |