Skip to Content
0

oData gateway services with more than 200 filter parameters with "OR" Operator - GET operation

Oct 17, 2016 at 09:09 AM

98

avatar image

Hi,

Kindly help with one of the issues, facing with oData services from browser side.

I have oData service with more than 200 filter params with "OR" Operator, and while calling this service though the browser, getting "400 Bad request". The operation we doing here i.e. GET.

Its working fine if I am passing more than 100 filter params.

Can somebody help with the alternate options, how we can manage with such kind of long URL service.

PFB the service URL which I am using here.

  1. $filter: IWerksLow eq '1007' and IWerksHigh eq '' and ILgortLow eq '' and ILgortHigh eq '' and ISobkzLow eq '' and ISobkzHigh eq '' and IPsPosidLow eq '' and IPsPosidHigh eq '' and IVbelnLow eq '' and IVbelnHigh eq '' and (IMatnrLow eq '93301060400H' or IMatnrLow eq '92900120800C' or IMatnrLow eq '92900120280B' or IMatnrLow eq '92900101000B' or IMatnrLow eq '92900100900B' or IMatnrLow eq '92900100600B' or IMatnrLow eq '92900080601B' or IMatnrLow eq '92900080600B' or IMatnrLow eq '92900080550B' or IMatnrLow eq '92900080503B' or IMatnrLow eq '92900080501B' or IMatnrLow eq '92900080500B' or IMatnrLow eq '92900080451B' or IMatnrLow eq '92900080401B' or IMatnrLow eq '92900080321B' or IMatnrLow eq '92900080320B' or IMatnrLow eq '92900080253B' or IMatnrLow eq '92900080251B' or IMatnrLow eq '92900080250D' or IMatnrLow eq '92900080250C' or IMatnrLow eq '92900080250B' or IMatnrLow eq '92900080221B' or IMatnrLow eq '92900080220B' or IMatnrLow eq '92900060600B' or IMatnrLow eq '92900060500B' or IMatnrLow eq '92900060251C' or IMatnrLow eq '92900060251B' or IMatnrLow eq '92900060250B' or IMatnrLow eq '92900060200B' or IMatnrLow eq '92900060181B' or IMatnrLow eq '92900060161B' or IMatnrLow eq '92900060160C' or IMatnrLow eq '92900060160B' or IMatnrLow eq '92900060141B' or IMatnrLow eq '92900060140B' or IMatnrLow eq '92900060121B' or IMatnrLow eq '92900060120B' or IMatnrLow eq '92301060200A' or IMatnrLow eq '92301060120H' or IMatnrLow eq '92101120300H' or IMatnrLow eq '92101080250A' or IMatnrLow eq '92101060250J' or IMatnrLow eq '92101060180A' or IMatnrLow eq '92101060160G' or IMatnrLow eq '92101060160A' or IMatnrLow eq '92101060120A' or IMatnrLow eq '92101050200A' or IMatnrLow eq '92101050100B' or IMatnrLow eq '91770S0X 0001' or IMatnrLow eq '91553TZ5 A001' or IMatnrLow eq '91552TZ5AA001' or IMatnrLow eq '91552TZ5 A001' or IMatnrLow eq '91552TZ5 A00050' or IMatnrLow eq '91552TZ5 A000' or IMatnrLow eq '91551TZ5AA001' or IMatnrLow eq '91551TZ5AA000' or IMatnrLow eq '91551TZ5A000020' or IMatnrLow eq '91551TZ5 A000' or IMatnrLow eq '91551TZ5 000020' or IMatnrLow eq '91551SWA 9011M1' or IMatnrLow eq '91551SWA 9010M1' or IMatnrLow eq '91551SE0 0031' or IMatnrLow eq '91544S0X A001' or IMatnrLow eq '91531TK8 A010M1' or IMatnrLow eq '91105S5A 0001' or IMatnrLow eq '90912T6NAA000Z1' or IMatnrLow eq '90911T6NAA000Z1' or IMatnrLow eq '90870XJ1BC000' or IMatnrLow eq '90870TJBFA000' or IMatnrLow eq '90870TJBAA000' or IMatnrLow eq '90801TK8XA010M1' or IMatnrLow eq '90801TK8XA000' or IMatnrLow eq '90801S5A A002' or IMatnrLow eq '90774SB2 9802' or IMatnrLow eq '90701TR0 0030' or IMatnrLow eq '90701SZA A000' or IMatnrLow eq '90672SYV 0030' or IMatnrLow eq '90671TY2 003050' or IMatnrLow eq '90671TY2 0030' or IMatnrLow eq '90671TBAAA00050' or IMatnrLow eq '90671TBAAA000' or IMatnrLow eq '90671TBA A00050' or IMatnrLow eq '90671TBA A000' or IMatnrLow eq '90671T6NAA00050' or IMatnrLow eq '90671T6NAA000' or IMatnrLow eq '90671SB2 0004' or IMatnrLow eq '90671SB2 000050' or IMatnrLow eq '90671S5A 0030' or IMatnrLow eq '90671RDC A010M1' or IMatnrLow eq '90520TJBFA000' or IMatnrLow eq '90501SM4 0032' or IMatnrLow eq '90497-CB00A' or IMatnrLow eq '90497-4U00A' or IMatnrLow eq '90497-40U00' or IMatnrLow eq '90437T6NAA00052' or IMatnrLow eq '90401SZN 0001' or IMatnrLow eq '90398DDS K000' or IMatnrLow eq '90397SNA A000' or IMatnrLow eq '90396TLAAA02030' or IMatnrLow eq '90396TLAAA020' or IMatnrLow eq '90396TLAAA010' or IMatnrLow eq '90396TLA A011' or IMatnrLow eq '90396THAFH000' or IMatnrLow eq '90396SCV A001' or IMatnrLow eq '90396S5A 0100' or IMatnrLow eq '90383TF0 0000' or IMatnrLow eq '90382SZA 0030' or IMatnrLow eq '90382SH9 0032' or IMatnrLow eq '90381T6NAA000Z1' or IMatnrLow eq '90381T6NAA000' or IMatnrLow eq '90380TV1 E000' or IMatnrLow eq '90380TBAAA100Z1' or IMatnrLow eq '90380TBAAA000Z1' or IMatnrLow eq '90380T6NAA000Z1' or IMatnrLow eq '90380T6NAA000' or IMatnrLow eq '90380S50 N001' or IMatnrLow eq '90334T6NAA000Z4' or IMatnrLow eq '90329TZ5 A002' or IMatnrLow eq '90329TZ5 A001' or IMatnrLow eq '90329TZ5 A000' or IMatnrLow eq '90329STX A001' or IMatnrLow eq '90329STX A000' or IMatnrLow eq '90318STX A001' or IMatnrLow eq '90317STX A001' or IMatnrLow eq '90310TY2 A010M1' or IMatnrLow eq '90310TBAAA01050' or IMatnrLow eq '90310TBA A01050' or IMatnrLow eq '90310SMA 003050' or IMatnrLow eq '90304T6NAA110M1' or IMatnrLow eq '90304T6NAA100Z1' or IMatnrLow eq '90304T6NAA010M1' or IMatnrLow eq '90304T6NAA000Z6' or IMatnrLow eq '90304T6NAA000Z5' or IMatnrLow eq '90304T6NAA000Z4' or IMatnrLow eq '90304T6NAA000Z3' or IMatnrLow eq '90304T6NAA000Z2' or IMatnrLow eq '90304T6NAA000Z1' or IMatnrLow eq '90304T6NAA00020' or IMatnrLow eq '90304T6N A110M1' or IMatnrLow eq '90303T6NA0001' or IMatnrLow eq '90303T6NA0000' or IMatnrLow eq '90303SHJ A000' or IMatnrLow eq '90303SEC A001H1' or IMatnrLow eq '90303S84 A001H1' or IMatnrLow eq '90303S2A 3001' or IMatnrLow eq '90277T6NAA000Z1' or IMatnrLow eq '90276T6NAA002' or IMatnrLow eq '90276T6NAA001' or IMatnrLow eq '90276T6NAA000Z1' or IMatnrLow eq '90276T6NAA000' or IMatnrLow eq '90275T6NAA000' or IMatnrLow eq '90274T6NAA100' or IMatnrLow eq '90274T6NAA001' or IMatnrLow eq '90274T6NAA00050' or IMatnrLow eq '90274T6NAA000' or IMatnrLow eq '90248T6NAA010M1' or IMatnrLow eq '902315X6AJ010M1' or IMatnrLow eq '902315X6 J010M1' or IMatnrLow eq '90215TJBFA000' or IMatnrLow eq '90211TEVFA01050' or IMatnrLow eq '90210TKAFA510M1' or IMatnrLow eq '90210TBAAA011M1' or IMatnrLow eq '90210TBAAA010M1' or IMatnrLow eq '90210TBA A010M1' or IMatnrLow eq '90202SJK 3001' or IMatnrLow eq '90195TJBFA000' or IMatnrLow eq '90192SJC A000' or IMatnrLow eq '90192SG0 0030' or IMatnrLow eq '90191SD4 9801H1' or IMatnrLow eq '90190TJBFA000' or IMatnrLow eq '90190SZT 0000' or IMatnrLow eq '90189T6NAA000Z1' or IMatnrLow eq '90188T6NAA000Z1' or IMatnrLow eq '90188SCC A001' or IMatnrLow eq '90187T6NAA000Z1' or IMatnrLow eq '90186TZ5 A000' or IMatnrLow eq '90186TG7AA000' or IMatnrLow eq '90186T6NAA000Z1' or IMatnrLow eq '90186SR3 0001' or IMatnrLow eq '90186SL4 0002' or IMatnrLow eq '90186SJA 0100' or IMatnrLow eq '90186SDA A001' or IMatnrLow eq '90185TZ3AA000' or IMatnrLow eq '90185TZ3 A000' or IMatnrLow eq '90185THRFA000' or IMatnrLow eq '90185THRAA010' or IMatnrLow eq '90185THRAA000' or IMatnrLow eq '90185T6NAA000' or IMatnrLow eq '90185STX A000' or IMatnrLow eq '90185SHJ A001H1' or IMatnrLow eq '90185SHJ A000H1' or IMatnrLow eq '90184XJ1BS000' or IMatnrLow eq '90184TVAAA000' or IMatnrLow eq '90184TF0 0000' or IMatnrLow eq '90184TBAFA100' or IMatnrLow eq '90184TBAFA001' or IMatnrLow eq '90184TBAAA030' or IMatnrLow eq '90184TBAAA020' or IMatnrLow eq '90184TBAAA010' or IMatnrLow eq '90184TBA A000')
Regards,Amit Anand
10 |10000 characters needed characters left characters exceeded

Hi,

Can any one help on the above queries ?

Regards,

Amit Annad

0
* Please Login or Register to Answer, Follow or Comment.

3 Answers

Danilo Vorpahl Nov 01, 2016 at 04:29 PM
0

hi Amit Anand

try to find better property for your odata entity. eg. something like material group..

Share
10 |10000 characters needed characters left characters exceeded
Amit Anand Oct 27, 2016 at 07:42 AM
0

Hi,

Can any one help on the above queries ?

Regards,

Amit Annad

Share
10 |10000 characters needed characters left characters exceeded
lokeswar reddy byni Nov 08, 2016 at 12:10 PM
0

Hi Amit,

Try to modify the service as $batch service and execute the below steps.

Steps:

1. Create one input parameter type string of length 500.

2. redefine Changeset_begun and changeset end () methods.

3. Redefine get entity set method and convert the input string value(JSON payload) to the local structure using convert XML to string function.

Reference link to convert JSON to ABAP: https://wiki.scn.sap.com/wiki/display/Snippets/JSON+and+ABAP

execute the service as Batch service.

This will work for you, Please check and confirm.

Thanks,

Lokeswar Reddy Byni.

Share
10 |10000 characters needed characters left characters exceeded