2016-08-03 45 views
0

Ich habe die Abfrage für externes Objekt namens test__x.! = ODER <> ODER NICHT IN Operatoren Unterstützt in ODATA?

Ich schreibe die Abfrage, um die Daten zu erhalten OData 4.0 in externen Daten sourse unter Verwendung von der NOT EQUAL TO Logik mit != Anwendung OR <> OR NOT IN Operatoren dann wie unten einen Fehler gegenüber besagt.

SQL:

select id,status__c from current_year_order_summary__x where status__c NOT IN('C') LIMIT 2000 

Fehler:

"Error received from the external system: 500: com.informatica.cloud.api.adapter.runtime.exception.ReadException: java.sql.SQLException: [Teradata Database] [TeraJDBC 15.10.00.14] [Error 3707] [SQLState 42000] Syntax error, expected something like a 'SUCCEEDS' keyword or a 'MEETS' keyword or a 'PRECEDES' keyword or an 'IN' keyword or a 'CONTAINS' keyword between the word 'status__c ' and '|'."

+0

sieht für mich wie Syntaxfehler aus. Also, können Sie versuchen, einfache SQL wie diese ID, status__c aus current_year_order_summary__x wählen. Fügen Sie dann where-Klausel hinzu, um zu sehen, ob sie funktioniert. BTW, haben Sie diese SQL in der Datenbank gefeuert und Erfolg gehabt? – Koushik

+0

Ich habe verschiedene Szenarien ausprobiert, wo es funktioniert, wenn wir den = operator geben und nur! = Operator nicht funktioniert. – saru

Antwort

0

In OData 4, die Gleichheit und Ungleichheit operators sind eq und ne.

+0

Ja, aber in salesforce werden wir drei Operatoren und odata werden in die ne.as von jetzt konvertieren wird es in ne, aber wir bekommen den Fehler. Wir haben mit externen db getestet und ne arbeitet von ihrem Ende auch – saru

+0

Meine Erwartung wäre odata nicht in der Lage dies zu konvertieren – saru