Symptom
- Data acquisition from SAP HANA Cloud CAP OData services into SAP Analytics Cloud fails when the result set exceeds the configured page size limit and pagination is triggered.
- The import may fail with a PLUGIN_ERROR and an HTTP 400 response from the OData service.
- Error details HAR logs:
- "PLUGIN_ERROR",
"rawError": "Response from external server has status code of 400. ",
"errorDefinition": "{\"code\":\"\",\"rawError\":\"Response from external server has status code of 400. \",\"params\":[\"status: 400 body: {\\\"error\\\":{\\\"message\\\":\\\"Parsing URL failed at position 62: Expected \\\\\\\"\\u0026\\\\\\\", [a-zA-Z0-9\\\\\\\\-\\\\\\\".\\\\\\\"_~!$\\u0027()*+,;\\u003d:@\\\\\\\"/\\\\\\\"\\\\\\\"?\\\\\\\"], or end of input but \\\\\\\"[\\\\\\\" found.\\\",\\\"code\\\":\\\"400\\\",\\\"@Common.numericSeverity\\\":4}}\"]}",
- "PLUGIN_ERROR",
Environment
SAP Analytics Cloud 2026.2.16
Reproducing the Issue
- Create a model.
- Choose OData Services.
- Choose the connection to the HANA Cloud OData service.
- Choose a query.
- Select Entire table.
- Set Batch Size to a value greater than 1000 (for example, 50000).
- Attempt to create the model and it fails.
Cause
- The issue occurs when the result set exceeds the configured page size limit and pagination is triggered. In this scenario, the CAP OData service returns a
nextLinkcontaining an encoded$skiptokenvalue. The subsequent request sent by SAC contains a modified token value ($skiptoken=[object Object]1000), which results in the observed error. - Usually, SAP OData providers such as S/4HANA, SuccessFactors, and C4C typically return numeric $skiptoken values, while CAP OData may return encoded values as part of its reliable pagination mechanism.
Resolution
- As a possible workaround, we recommend increasing the CAP OData maximum page size limit to a value that can accommodate the expected dataset size. This may allow the complete result set to be returned without generating a
nextLink, thereby avoiding the use of$skiptokenand the behavior currently being observed. - The CAP documentation indicates that the default maximum page size is 1,000 records, but this value can be increased either at the project level or through the
@cds.query.limitannotation: Generic Service Providers | capire; Project-Specific Configurations | capire
- "cds": { "query": { "limit": { "default": 20, "max": 50000 } } }
- The maximum limit defines the maximum number of items that can get retrieved, regardless of $top.
- The default limit defines the number of items that are retrieved if no $top was specified.
- "cds": { "query": { "limit": { "default": 20, "max": 50000 } } }
- Additionally, according to the roadmap, a new native HANA Cloud Import Connection is planned for delivery in SAC QRC3. Since this solution uses a native connection instead of OData, it should eliminate the pagination behavior currently causing this issue: SAP Road Map Explorer.
See Also
- KBA 3752448 - Imports Models Pointing to OData Services on SAP HANA Cloud Fail When Batch Size Is Greater Than 1000 in SAC
- KBA 2569847 - Where can you find SAC user assistance (help) to use, configure, and operate it more effectively?
- KBA 2487011 - What information do I need to provide when opening a case for SAP Analytics Cloud?
- KBA 2511489 - Troubleshooting performance issues in SAP Analytics Cloud
- SAP Analytics Cloud Connection Guide
- SAP Analytics Cloud Get More Help and SAP Support
- Need More Help? Contact Support
Keywords
OData, hana cloud, sac import, pagination, batch size, plugin_error, status code 400, parsing url failed, odata pagination, import model failure, data acquisition, odata service, sac agent, cloud connector , KBA , LOD-ANA-AQU , Import Data Connections (Acquiring Data) , Problem
Product
SAP Analytics Cloud all versions
SAP Knowledge Base Article - Public