You need to sign in to do that
Don't have an account?
Vj@88
SOQL query failing when using SOAP API
I am trying to query records using IN clause via SOAP API, but It is throwing me the error --
'Failed to process query: MALFORMED_QUERY: SOQL statements cannot be empty or null'
Query - list contains around 550 ID's like
SELECT id from Account where id IN ('001i000000iG2EJAA0','001i000000iGHzvAAS','001i000000iFHpbAAS','001i000000iFGYXAAW','001i000001F2hTgAAJ','001i000000iErcWAAS','00001i000000iExVNAA0','001i000000iF44RAAS','001i000000iV17RAG','001i000000iEf43AAK','001i000000iF8QQAA0','001i000000iEer3AAC')
Even the length of query is within limits (around 12k char)Can you please let me know what I am doing wrong?
'Failed to process query: MALFORMED_QUERY: SOQL statements cannot be empty or null'
Query - list contains around 550 ID's like
SELECT id from Account where id IN ('001i000000iG2EJAA0','001i000000iGHzvAAS','001i000000iFHpbAAS','001i000000iFGYXAAW','001i000001F2hTgAAJ','001i000000iErcWAAS','00001i000000iExVNAA0','001i000000iF44RAAS','001i000000iV17RAG','001i000000iEf43AAK','001i000000iF8QQAA0','001i000000iEer3AAC')
Even the length of query is within limits (around 12k char)Can you please let me know what I am doing wrong?
Vijay
SELECT id from Account where id IN ('001i000000iF2EJAA0','001i000000iF3zLAAS')
job = new JobInfo();
job.setObject("Account");
query = "SELECT id from Account where id = \'001i000000iF2EJAA0\'";
System.out.println(query);
job.setOperation(OperationEnum.query);
job.setConcurrencyMode(ConcurrencyMode.Parallel);
job.setContentType(ContentType.CSV);
job = bulkConnection.createJob(job);
assert job.getId() != null;
job = bulkConnection.getJobStatus(job.getId());
BatchInfo info2 = null;
ByteArrayInputStream bout2 = new ByteArrayInputStream(query.getBytes());
info2 = bulkConnection.createBatchFromStream(job, bout);
while(true){
info2 = bulkConnection.getBatchInfo(job.getId(), info2.getId());
// System.out.println(info.getState());//30 sec
if((info2.getState() == BatchStateEnum.Completed) || (info2.getState() == BatchStateEnum.Failed)){
System.out.println("Status Done" + info.getState());//30 sec
break;
}
}
if (info2.getState() == BatchStateEnum.Completed) {
//logic} ----
Thanks for your help.