package com.thysmichels; import java.io.IOException; import com.sforce.soap.partner.*; import com.sforce.ws.*; public class SalesforceGlobalSearch { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub ConnectorConfig sfconfig = new ConnectorConfig(); //Use your salesforce username = email sfconfig.setUsername("username"); //Use your saleforce password with your security token look like: passwordjeIzBAQKkR6FBW8bw5HbVkkkk sfconfig.setPassword("passwordsecuritytoken"); PartnerConnection partnercon = null; try { partnercon = Connector.newConnection(sfconfig); DescribeGlobalResult describeGlobalResult = partnercon.describeGlobal(); DescribeGlobalSObjectResult[] sobjectResults = describeGlobalResult.getSobjects(); if (describeGlobalResult != null) { //Object[] obj = describeGlobalResult.getSobjects(); if (sobjectResults != null) for (int i = 0; i < sobjectResults.length; i++) { System.out.println("*** SObject: " + sobjectResults[i].getName() + " ***"); DescribeSObjectResult describeSObjectResult = partnercon.describeSObject(sobjectResults[i].getName()); if (describeSObjectResult != null) { Field[] fields = describeSObjectResult.getFields(); PicklistEntry[] picklistValues; String[]referenceTos; for (int k = 0; k < fields.length; k++) { System.out.println("Label: " + fields[k].getLabel() + " Name: " + fields[k].getName() + " Length: " + fields[k].getLength() + " Required Field: " + fields[k].getNillable()); referenceTos = fields[k].getReferenceTo(); if (referenceTos != null) { for (int j = 0; j < referenceTos.length; j++) { System.out.println("Field Reference To: " + referenceTos[j]); } } picklistValues = fields[k].getPicklistValues(); if (picklistValues != null) { for (int j = 0; j < picklistValues.length; j++) { if (picklistValues[j].getLabel() != null) { System.out.println("\tItem: " + picklistValues[j].getLabel()); } } } } } } } } catch (ConnectionException ce) { ce.printStackTrace(); } } }
Output
*** SObject: Account *** Label: Account ID Name: Id Length: 18 Required Field: false Label: Deleted Name: IsDeleted Length: 0 Required Field: false Label: Master Record ID Name: MasterRecordId Length: 18 Required Field: true Field Reference To: Account Label: Account Name Name: Name Length: 255 Required Field: false Label: Account Type Name: Type Length: 40 Required Field: true Item: Prospect Item: Customer - Direct Item: Customer - Channel Item: Channel Partner / Reseller Item: Installation Partner Item: Technology Partner Item: Other Label: Parent Account ID Name: ParentId Length: 18 Required Field: true Field Reference To: Account