SAP OData connector — per-table $filter (fixed selection) for ODP entities
Which connector?:
SAP Odata connector
Additional details:
Problem
Some SAP extractors refuse any request without a selection. Example on ECC (SAP_BW 750):
0CO_PC_PCP_02 and 0CO_PC_PCP_03 (cost estimate components / itemization) answer
400 RSODP_ODATA/020 "Selection criterion PERIODE is missing in the data request"
(and RSODP_ODATA/014 prefetch error on a change-tracking request). The connector never
sends $filter, so these tables cannot be synced at all — the sync fails until the
tables are unticked. BW queries with mandatory variables behave the same way.
Today's workaround
Custom ABAP CDS views + generic DataSources + OData services over the base tables
(here CKIS/KEPH), transported into every customer system. That is new custom code at
each customer, which most customers want to avoid.
Request
Let the user set, per table, a fixed OData $filter that the connector appends to
every request of that entity, e.g.:
EntityOf0CO_PC_PCP_03: PERIODE ge '2024001' and PERIODE le '2026012'
- Applied to the initial load and to change-tracking (Prefer: odata.track-changes)
requests alike; for a delta subscription the selection is fixed at init, so a
changed filter means a new initial load (the connector should say so in the UI).
- Nice to have: relative values (e.g. "current fiscal year − 2") resolved at each
initial load.
Acceptance
0CO_PC_PCP_03 with a PERIODE range syncs on ECC ABA (SAP_BW 750) without custom objects,
and the same setting works for any ODP entity whose fields are selectable.
Please sign in to leave a comment.
Comments
0 comments