SSRS报表生成器:如何创建POST SOAP数组请求
在SSRS报表生成器中配置SOAP请求的triplets数组参数
要在已有的SSRS SOAP查询配置中添加triplets数组参数,需修改<Query>节点内容,同时补充原请求中缺失的ventureid参数,具体配置如下:
修改后的完整Query配置
<Query> <Method Namespace="http://schemas.datacontract.org/2004/07/Dynamics.Ax.Application" Name="GetInfo"> <Parameters> <!-- 原有单参数保留 --> <Parameter Name="enddate"> <DefaultValue>2019-01-01</DefaultValue> </Parameter> <Parameter Name="startdate"> <DefaultValue>2019-02-01</DefaultValue> </Parameter> <Parameter Name="field"> <DefaultValue>9</DefaultValue> </Parameter> <Parameter Name="nodeparentid"> <DefaultValue>32</DefaultValue> </Parameter> <Parameter Name="nodegrandparentid"> <DefaultValue>0</DefaultValue> </Parameter> <!-- 新增triplets数组参数 --> <Parameter Name="triplets" Type="Array"> <DefaultValue> <Element> <element>0</element> <stratum>0</stratum> <well>195</well> </Element> <Element> <element>0</element> <stratum>0</stratum> <well>257</well> </Element> <Element> <element>0</element> <stratum>587</stratum> <well>189589</well> </Element> </DefaultValue> </Parameter> <!-- 补充原SOAP请求中缺失的ventureid参数 --> <Parameter Name="ventureid"> <DefaultValue>32</DefaultValue> </Parameter> </Parameters> </Method> </Query>
关键配置说明
- 给
triplets参数添加Type="Array"属性,明确该参数为数组类型。 - 在
<DefaultValue>内部,用<Element>节点定义数组的每个元素,每个<Element>的子节点结构完全匹配目标SOAP请求中<triplets>下的<element>节点,确保字段名和值一一对应。 - 原SOAP请求包含
ventureid参数,现有配置中未定义,必须补充该参数才能保证请求结构完整。
动态参数扩展(可选)
如果需要使用报表的动态参数而非固定默认值,可以将<DefaultValue>替换为<Value>,绑定到报表中预先定义的参数集合。例如,若报表有一个多值参数或自定义的结构化参数,可通过表达式映射数组元素。
内容的提问来源于stack exchange,提问作者MoonRaiser
相关产品推荐
相关产品推荐

