[SalesForce] When to use soap integration

I've gone through documents and came across few points and i couldn't understand those. Can anyone please explain with real time scenarios

1) Soap is widely used whenever we have bulk data or whenever we receive bulk data in response. I couldn't understand about bulk data. Can anyone please provide sample code of how bulk data insert or update?

2)In soap integration we use WSDL. I know how to generate and parse WSDL from/to salesforce and i know how to integrate salesforce to salesforce. But i would like to know about salesforce to another application like SAP or data sequel server. How do they generate WSDL of web service from SAP or any other application.

3) Do other applications also have enterprise WSDL and Partner WSDL?

Best Answer

I'll try to help summarize this quickly for you. Salesforce doesn't use the latest version of the SOAP standard. SOAP is a dying protocol. It's generally slower than REST, but has been around for a very long time. You use SOAP whenever you're trying to connect with an Oracle based database which already has a SOAP based interface configured for it.

"Bulk Data" is data stored in a database. Transferring "bulk data", means "more than one record at a time". This is not to be confused with the Salesforce Bulk API.

A WSDL (Web Services Definition Language) is an xml file that's very similar to a CSS or metadata file. It has opening and closing tags for each data type in a database. It can be expanded to form a "tree". You could describe it as a "mapping" of all the data types in your database. Another Oracle based database will be able to generate a WSDL that describes itself. An organization that uses SOAP will be able to provide a WSDL to you which you'll need to parse in order to connect with their database.

I wouldn't necessarily expect other applications to have an Enterprise and a Partner WSDL like Salesforce does, but they very well could have. It would entirely depend on the organization and what they were exposing for you to connect with.

As for code, that would be entirely dependent on what you were trying to do and isn't especially relevant to the questions you're asking. If you look in the SOAP Developer's Guide, you should find some examples in the Quick Start and in other sections as well.

Edited to add, you may find it helpful to go through the following two Trailhead modules: Apex Integration Services and API Basics, both of which cover SOAP. The first includes code examples and has exercises covering Apex callouts to perform data transfers when integrating using the SOAP API.

Related Topic