Salesforce Java Web Service

오픈소스 비즈니스 컨설팅
둘러보기로 가기 검색하러 가기

Apex Web Service API Developer's Guide, Ver 9.0 Spring'07

Basic Information

  • Editions
  • Developer Edition
5000 calls/day for organization, 5 concurrent
  • Enterprise Edition, Professional Edition with API access enabled (300$)
1000 calls/license * day, 1000000 calls/day for organization
  • Unlimited Edition
5000 calls/license * day, 5000000 calls/day for organization
  • CSS files
/sCSS/9.0/Theme2/ko/common.css
/sCSS/9.0/Theme2/ko/setup.css, addUsers, advancedForecasting, ...
       
   SOAP 1.1, WSDL 1.1, WS-I Basic Profile 1.1
   Visual Studio .NET 2005, Apache axis 1.3/JDK 5.0 (Java, C#.NET)
   Unicode (UTF-8) or ISO-8859-1
    
  • Login Server URL
       http://www.salesforce.com/services/Soap/c/9.0
       http://test.salesforce.com/services/Soap/c/9.0 (enterprise WSDL)
       http://test.salesforce.com/services/Soap/u/9.0 (partner WSDL)

SOQL (Sforce Object Query Language)

   select ~ from ~ where ~ order by ~ NULLS FIRST/LAST limit ~
       count(), toLabel(field), convertCurrency(~), Parent.~
       TODAY, YESTERDAY, TOMORROW, LAST_WEEK, THIS_WEEK, NEXT_WEEK/MONTH
       "~;~" - ;는 and를 의미
    
   QueryResult qr = null;
   try {
       qr = binding.query("~");
       boolean done = false;
       if (0 < qr.getSize()) {
           while (!done) {
               for (int i = 0;i < qr.getRecords().length;i++) {
                   Account acct = (Account) qr.getRecords(i);
               }
               
               if (!qr.isDone()) {
                   qr.binding.queryMore(qr.getQueryLocator());
               }
           }
       }
   } catch (RemoteException ex) {
   }

SOQL BNF Notation

   QUERY ::= 'SELECT' ('COUNT()' | (FIELD ( ',' FIELD)*))
           'FROM' (NAME ('AS' ? NAME)? ('USING' NAME)?) ( ',' NAME ('AS' ? NAME)? ('USING' NAME)?)*
           ('WHERE' CONDITIONEXPR )? ('ORDER BY' ORDERBYEXPR)? ('LIMIT' POSINTEGER )?
   FIELD ::= NAME | '(' QUERY ')'
   CONDITIONEXPR ::= ANDEXPR | OREXPR | NOTEXPR | SIMPLEEXPR
   ANDEXPR ::= 'AND' SIMPLEEXPR
   OREXPR ::= 'OR' SIMPLEEXPR
   NOTEXPR ::= 'NOT' SIMPLEEXPR
   SIMPLEEXPR ::= '(' CONDITIONEXPR ')' | FIELDEXPR | SETEXPR
   FIELDEXPR ::= NAME OPERATOR VALUE
   SETEXPR ::= ( NAME ('includes' | 'excludes' | 'in' | 'not' 'in') '(' VALUE (',' VALUE)* ')' )
   ORDERBYEXPR ::= NAME ('asc' | 'desc')? ('nulls' ('first'|'last'))? (',' NAME ('asc' | 'desc')? ('nulls' ('first'|'last'))?)*
   OPERATOR ::= '=' | '!=' | '<' | '<=' | '>' | '>=' | 'like'
   LOGICALOPERATOR ::= 'AND' | 'OR ' | 'NOT'
   VALUE ::= STRING_LITERAL | NUMBER | DATE | DATETIME | NULL | TRUE | FALSE | DATEFORMULA
   DATEFORMULA ::= TODAY | TOMORROW | LAST_WEEK | THIS_WEEK | NEXT_WEEK | THIS_MONTH
           | LAST_MONTH | NEXT_MONTH | LAST_90_DAYS | NEXT_90_DAYS | LAST_N_DAYS ':' NUMBER
           | NEXT_N_DAYS ':' NUMBER
   NAME ::= LETTER (NAMECHAR)*
   LETTER ::= 'a'..'z' | 'A'..'Z'
   NAMECHAR ::= LETTER | DIGIT | '_' | '.'
   DATE ::= YEAR '-' MONTH '-' DAY
   DATETIME ::= DATE 'T' HOUR ':' MINUTE ':' SECOND ('Z' | (('+' |'-') HOUR ':' MINUTE))
   YEAR ::= DIGIT DIGIT DIGIT DIGIT
   MONTH ::= '0' '1'..'9' | '1' ('0' | '1' | '2')
   DAY ::= '0' '1'..'9' | '1'..'2' DIGIT | '3' ('0' | '1')
   HOUR ::= '0'..'1' DIGIT | '2' '0'..'3'
   MINUTE ::= '0'..'5' DIGIT
   SECOND ::= '0'..'5' DIGIT | '60'
   NULL ::= 'null'
   TRUE ::= 'true'
   FALSE ::= 'false'
   NUMBER ::= '.' POSINTEGER | INTEGER '.' POSINTEGER
   INTEGER ::= ('+' | '-')? POSINTEGER
   POSINTEGER ::= DIGIT+
   DIGIT ::= '0'..'9'
   STRING LITERAL ::= "'" (ESC_CHAR | ~("'"|'\"
   ESC_CHAR ::= '\'n' | 'r' | 't' | 'b' | 'f' | '"' | "'" | '\'
   WS ::= S+
   S ::= ' ' |  | '

SOSL (Sforce Object Search Language)

   FIND {SearchQuery} [toLabel()] [IN SearchGroup [convertCurrency(Amount)]]
   [RETURNING FieldSpec] [LIMIT n]
   
   Find {"~"} IN Name FIELDS RETURNING Account(Name, Id ORDER BY Id) LIMIT 20

API Objects

  • Primitive Data Types
base64Binary, boolean, byte, date, dateTime, double, int, string
  • API Field Properties
Autonumber, Create, Defaulted on create, Delete, Filter, Nillable
Query, Replicate, Restricted picklist, Retrieve, Search, Update
  • Field Types
anyType, calculated, combobox, currency, email, ID, masterrecord
multipicklist, percent, phone, picklist, reference, textarea, url
  • System Fields
Id, IsDeleted, CreatedById, CreatedDate, LastModifiedById
LastModifiedDate, SystemModstamp
  • Relationships Among Objects
Master-Detail (1:1), Lookup (1:n)
  • Custom Objects
customObject__c, customObject__r (Relationship)
prefix_name_c (Managed Packages)
  • Standard Objects
Account, Campaign, Case, Contact, Contract, Event, Lead, Opportunity
Product2, Solution, Task, User

Call Reference

   convertLead, LeadConvertResult
   create, SaveResult
   delete, DeleteResult
   getDeleted, GetDeletedResult
   getUpdated, GetUpdatedResult
   login, LoginResult
   merge, mergeResult
   process, ProcessResult
   query, QueryResult, QueryLocator
   queryAll
   queryMore, QueryResult, QueryLocator
   retrieve
   search, SearchResult
   undelete, UndeleteResult
   update, SaveResult
   upsert, UpsertResult

   describeGlobal, DescribeGlobalResult
   describeLayout, DescribeLayoutResult
   describeSObject, DescribeSObjectResult
   describeSObjects, DescribeSObjectResult
   describeSoftphoneLayout
   describeTabs, DescribeTabSetResult

   getServerTimestamp, GetServerTimestampResult
   getUserInfo, GetUserInfoResult
   resetPassword
   sendEmail, SendEmailResult
   setPassword
  • Standard Object Reference
   Account
   AccountContactRole
   AccountOwnerSharingRule
   AccountPartner
   AccountShare
   AccountTeamMember
   AccountTerritoryAssignmentRule
   AccountTerritoryAssignmentRuleItem
   AccountTerritorySharingRule
   ActivityHistory
   AdditionalNumber
   Approval
   Asset
   AssignmentRule
   Attachment
   BrandTemplate
   BusinessHours
   BusinessProcess
   CallCenter
   Campaign
   CampaignMember
   CampaignMemberStatus 
   Case
   CaseComment
   CaseContactRole 
   CaseHistory
   CaseOwnerSharingRule
   CaseShare
   CaseSolution
   CaseStatus
   CategoryData
   CategoryNode
   Contact
   Contract
   ContractContactRole 
   ContractHistory
   ContractStatus
   CurrencyType
   Division
   Document
   DocumentAttachmentMap
   EmailMessage
   EmailStatus
   EmailTemplate
   EntityHistory
   Event
   EventAttendee
   FiscalYearSettings
   Folder
   Group
   GroupMember
   Lead
   LeadHistory
   LeadOwnerSharingRule
   LeadShare
   LeadStatus
   LineitemOverride
   MailMergeTemplate
   Name
   Note
   NoteAndAttachment
   OpenActivity
   Opportunity
   OpportunityCompetitor
   OpportunityContactRole
   OpportunityHistory
   OpportunityLineItem
   OpportunityLineItemSchedule
   OpportunityOverride
   OpportunityOwnerSharingRule
   OpportunityPartner
   OpportunityShare
   OpportunityStage
   OpportunityTeamMember
   Organization
   Partner
   PartnerRole 
   Period
   Pricebook2
   PricebookEntry 
   ProcessInstance
   ProcessInstanceHistory
   ProcessInstanceStep
   ProcessInstanceWorkitem
   Product2 
   Profile
   QuantityForecast
   QuantityForecastHistory
   QueueSobject
   RecordType
   RevenueForecast 
   RevenueForecastHistory 
   Scontrol
   SelfServiceUser 
   Solution
   SolutionHistory 
   SolutionStatus
   Task
   TaskPriority
   TaskStatus
   Territory
   User
   UserAccountTeamMember
   UserPreference
   UserRole
   UserTeamMember
   UserTerritory
   WebLink

SOAP Header Reference

   AssignmentRuleHeader 
  CallOptions
  EmailHeader
  MruHeader
  LoginScopeHeader
  QueryOptions
  SessionHeader
  UserTerritoryDeleteHeader

지원 업체

SuiteCRM을 사용한 영업관리, 고객관리는 아래 담당자에게 연락하여 주시면, 빠르고 친절하게 전문적인 답변을 드리겠습니다.

영업 문의 sales@obcon.biz 010-4667-1106 영업 대표
기술 문의 tech@obcon.biz 구축/컨설팅 담당
고객 지원 support@obcon.biz 고객 지원 담당

OBCon 홈페이지 바로가기