cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

GET parameters rest service returns max 50 prompt values

Former Member
0 Kudos
1,184

Hi All,

I'm calling

GET http://server:port/biprws/raylight/v1/documents/docID/parameters

to retrieve the parameters in JSON format.

I've noticed that the array answer.info.lov.values.value always has a maximum of 50 values. I've tested this by adding entries to the source table in the database. Can anyone tell be how this is configured? I presume there's an option to do this somewhere.

Thank you,

Malcolm

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Also, I'm using JSON, but I got

JAXBException occurred : cvc-complex-type.2.4.a: Invalid content was found starting with element 'intervalId'. One of '{sort, search, path}' is expected.

when I tried this:

{
  "parameters": {
    "parameter": {
      "id": "2",
      "answer": {
        "info": {
          "lov": {
            "query": {
              "intervalSize": "-1",
              "refresh": "true"
            }
          }
        }
      }
    }
  }
}
Former Member
0 Kudos

Thanks very much Ayman! Do you know if there's any way to configure this in the report definition, rather than calling the rest service?

Malcolm

ayman_salem
Active Contributor
0 Kudos

here an Exmaple: (to get the whole list of values for "SKUNumber")

method: PUT

http://<server>:<port>/biprws/raylight/v1/documents/<DOCID>/parameters

body:

<parameters>
    <parameter optional="false" type="prompt" dpId="DP0" primary="true">
        <id>1</id>
        <technicalName>SKUNumber</technicalName>
        <name>SKUNumber</name>
        <answer constrained="false" type="Numeric">
            <info cardinality="Single">
                <lov hierarchical="false" refreshable="true">
                    <query intervalId="0" intervalSize="-1" refresh="true">
                        <sort order="Descending"/>
                    </query>
                </lov>
            </info>
        </answer>
    </parameter>
</parameters>
ayman_salem
Active Contributor
0 Kudos

this by design (every interval has only 50 values)

see:

https://help.sap.com/viewer/58f583a7643e48cf944cf554eb961f5b/4.2/en-US/127ead2c022d46a389fc62c33a7cd...


Intervals: The element block that describes values as intervals when the number of values is too large. The first interval is returned by default. The default number of values in an interval is 50.

Values of a context parameter can have a description.

<intervals>
    <interval id="integer">
        <value id="integer" description="string" final="Boolean">

-------------------------

to change the Interval Size

see:

https://help.sap.com/viewer/58f583a7643e48cf944cf554eb961f5b/4.2/en-US/6e86cfe466a345b7ad904c9cda6e7...

Answer Request Body Schemas

Request Body Schemas (XML)

(PUT .../parameters)

.....

Query

intervalSize integer|-1|Unlimited|Server

Specifies the number of values in the interval to return. If not specified, 50 is used. Possible values are:

  • A strictly positive integer
  • -1 or Unlimited indicates the whole list of values is returned
  • Server indicates that the Information Engine Service propertyList of Values Batch size (entries) of the CMC defines the number of values to return.
Can4
Explorer
0 Kudos
Hi, @ayman_salem. When I call this address get -> http://<server>:<port>/biprws/raylight/v1/documents/<DOCID>/parameters, the parameters of the relevant document are listed and not all values of parameters ​​are displayed due to intervalsize. Is there a way to get all the values of parameters when calling http://<server>:<port>/biprws/raylight/v1/documents/<DOCID>/parameters directly without making an extra put query etc.?