Je tente d'interroger un objet personnalisé qui a une relation de référence de détail principal avec des opportunités. Lorsque je construis la requête dynamique, je reçois une erreur SOQL:Requête SOAP Apex supprimant la désignation de type d'objet de l'ID dans la requête
System.QueryException: unexpected token: 'A000000VmhPyIAJ'
Les trois premiers caractères de l'ID ont été abandonnées dans cette exception, l'ID complet est:
006A000000VmhPyIAJ
Si je vider le chaîne de requête avec System.debug je reçois ce (avec l'ID complet):
SELECT id, isdeleted, name, createddate, createdbyid, lastmodifieddate, lastmodifiedbyid, systemmodstamp, lastactivitydate, opportunity__c, issue__c, description__c, ... FROM Exceptions__c WHERE Opportunity__c = 006A000000VmhPyIAJ
Si je passe cette même chaîne exacte dans le I obtenir des résultats database.query() comme prévu.
Quelqu'un at-il une idée de ce qui cause? Le code qui génère cette requête est une bibliothèque que j'utilise pour des centaines d'autres requêtes à travers notre Apex personnalisé, et aucune de ces requêtes échoue.
Le bloc de requête réelle:
try {
String query = 'SELECT id, isdeleted, name, createddate, createdbyid, lastmodifieddate, lastmodifiedbyid, systemmodstamp, lastactivitydate, opportunity__c, issue__c, description__c, ... FROM Exceptions__c WHERE Opportunity__c = 006A000000VmhPyIAJ';
exceptions = database.query(query);
} catch (e DmlException) {
System.debug('DmlException: ' + e);
}