C'è un modo per recuperare un elenco di tutti i campi in una tabella in Salesforce? DESCRIBE myTable
non funziona, e SELECT * FROM myTable
non funziona.Salesforce SOQL descrive la tabella
risposta
Dall'interno di Apex, è possibile ottenere questo eseguendo il seguente codice Apex snippet. Se la tua tabella/oggetto è denominata MyObject__c
, allora questo ti darà un Set dei nomi API di tutti i campi su quell'oggetto a cui hai accesso (questo è importante --- anche come amministratore di sistema, se determinati campi sulla tua tabella/oggetto non sono visibili attraverso il livello di campo di sicurezza a voi, non saranno visualizzati qui):
// Get a map of all fields available to you on the MyObject__c table/object
// keyed by the API name of each field
Map<String,Schema.SObjectField> myObjectFields
= MyObject__c.SObjectType.getDescribe().fields.getMap();
// Get a Set of the field names
Set<String> myObjectFieldAPINames = myObjectFields.keyset();
// Print out the names to the debug log
String allFields = 'ALL ACCESSIBLE FIELDS on MyObject__c:\n\n';
for (String s : myObjectFieldAPINames) {
allFields += s + '\n';
}
System.debug(allFields);
per finire questo off, e raggiungere SELECT * FROM MYTABLE
funzionalità, si avrebbe bisogno di costruire una query SOQL dinamica utilizzando questi campi:
List<String> fieldsList = new List<String>(myObjectFieldAPINames);
String query = 'SELECT ';
// Add in all but the last field, comma-separated
for (Integer i = 0; i < fieldsList.size()-1; i++) {
query += fieldsList + ',';
}
// Add in the final field
query += fieldsList[fieldsList.size()-1];
// Complete the query
query += ' FROM MyCustomObject__c';
// Perform the query (perform the SELECT *)
List<SObject> results = Database.query(query);
la chiamata API describeSObject restituisce tutti i metadati relativi a un determinato oggetto/tabella inclusi i relativi campi. È disponibile nelle API Apex di REST &.
Provare a utilizzare Schema.FieldSet
Schema.DescribeSObjectResult d = Account.sObjectType.getDescribe();
Map<String, Schema.FieldSet> FsMap = d.fieldSets.getMap();
hai provato DESC myTable
?
Per me funziona bene, è anche nei suggerimenti sottostanti in corsivo. Guarda:
[sf: MALFORMED_QUERY] MALFORMED_QUERY: token imprevisto: DESC –
Interessante. Per me funziona. – Riccardo
- 1. Impaginazione SOQL per query API Salesforce
- 2. Salesforce SOQL: query per recuperare tutti i campi per l'entità
- 3. Salesforce - SOQL Usa mod() o funzioni matematiche simili in SELECT?
- 4. SalesForce su accesso iOS senza utilizzare la visualizzazione Web SalesForce?
- 5. query SOQL WHERE Date = 30_days_ago?
- 6. python salesforce library per ottenere dati salesforce?
- 7. Query API REST di Salesforce Più di 2000
- 8. Salesforce: evitare i limiti del governatore nelle classi di test su tutta la linea
- 9. Lambdas in Salesforce Apex
- 10. Salesforce SOAP vs REST
- 11. Documento che descrive l'implementazione di Lua 5.2?
- 12. Rollback delle modifiche in Salesforce
- 13. Aggiornamento non funzionante nell'API Salesforce
- 14. Convalida di un ID Salesforce
- 15. Problema relativo all'aggiornamento dei campi di andata e ritorno da Salesforce a Salesforce
- 16. Netsuite Integrazione Salesforce ESB vs Connettori precablati
- 17. Nessun refresh_token in SalesForce Risposta OAuth
- 18. Salesforce: distribuzione tra ambienti (sandbox, live, ecc.)
- 19. Come posso rilevare l'ambiente in Salesforce?
- 20. In che modo uno "git descrive" ogni commit?
- 21. Il gelsomino Gelsomino descrive blocchi annidati all'interno di un blocco
- 22. Grammatica context-free che descrive le espressioni regolari?
- 23. Campo personalizzato di eliminazione definitiva in Salesforce
- 24. Salesforce Apex Trigger "isAPI" Variabile di contesto
- 25. Analisi dell'oggetto JSON in Salesforce Apex
- 26. contatto associato con account utilizzando salesforce api
- 27. Come integrare Salesforce con Google Maps?
- 28. Mappa Campi personalizzati di lead in Salesforce
- 29. @ Html.ActionLink e @ Html.DisplayFor allo stesso tempo (non è corretto, ma descrive cosa voglio fare)
- 30. analizza la tabella, ottimizza la tabella, con quale frequenza?
Come dovrei interrogare questo con SOQL però? – Maverick
Penso che non sia possibile usare solo SOQL ... puoi farlo usando Javascript (o qualsiasi linguaggio di implementazione dell'API), o Apex come ho risposto. –
Puoi vedere la tua stessa domanda e la stessa risposta qui: http://stackoverflow.com/questions/8780413/salesforce-soql-query-to-fetch-all-the-fields-on-the-entity –