+ Start a Discussion
Ajay LAjay L 

SFDC Integration with Oracle

Hi All,

Here is my business requirement and I never worked on webservices. 

1. We have specif objects and fields to consume by Oracle.
2. Oracle will consume the webservice and then should be able to  updated few fields in SFDC.

My Assumptions:
Simply generate WSDL and provide them to consume the webservice?
or Do we have to write any classes for each object to expose the data?

Please help me, how I have to achieve this.

regards,
Ajay

Best Answer chosen by Ajay L
Shri RajShri Raj
For that you need to create a WebService class inside Salesforce if you want to give access to only specific fields. Here is an example class. Paste it in your test org and you could notice a Custom Generate WSDL button once the class is created. In the place of Opportunity, You need to paste those fields and objcts for which you want to give an access for the Oracle team. 

Instead of an Default WSDL from Salesforce, Provice them the WSDL which is generated by this class. 

global class HelloWorldWebService {
    webService static List<Opportunity> AMIOpportunityDetails() {
   
    List<Opportunity> oppntyList = new List<Opportunity>();
   
    oppntyList = [Select Id, Name From Opportunity ];
  
    return oppntyList;  
   
    }
    }

All Answers

Shri RajShri Raj
Hello Ajay. 

1. I think by default Oracle has a Salesforce connector embedded into their Database. Do check this with them. If they do then you can just give them the Credentails and the Token. If not, 
Apart from giving them the WSDL, In the Salesforce remote site settings add their endpoint. and also you need to give them a new credentials. They can access the objects in Salesforce directly and Insert, Update data based on the permissions.

Goodluck!
Shri
AshwaniAshwani
Hi Ajay,

Oracle provides wsdl to use their methods from any platform by webservice callout. You can login to Oracle repository and can get required WSDL.

Also vice versa you can use Salesforce WSDL into Oracle platform, Oracle uses Groove and Java server pages to customise its CRM. You can easily use WSDL and call webservce methods from it.

You don't have to write code at Salesforce end to expose data. Only securtiy settings may cause some issues.
Ajay Kumar Lankipalle 8Ajay Kumar Lankipalle 8
Thanks Shri Raj and Avilion for your quick response.

I understood that we dont need to write any code from our SFDC side. My question is how do we restrict Oracle to use only specifi fields? can they read, Insert, Update the values to the specific fields?

When do we write Web Service class in SFDC? in what scenario?

Regards,
Ajay
Shri RajShri Raj
For that you need to create a WebService class inside Salesforce if you want to give access to only specific fields. Here is an example class. Paste it in your test org and you could notice a Custom Generate WSDL button once the class is created. In the place of Opportunity, You need to paste those fields and objcts for which you want to give an access for the Oracle team. 

Instead of an Default WSDL from Salesforce, Provice them the WSDL which is generated by this class. 

global class HelloWorldWebService {
    webService static List<Opportunity> AMIOpportunityDetails() {
   
    List<Opportunity> oppntyList = new List<Opportunity>();
   
    oppntyList = [Select Id, Name From Opportunity ];
  
    return oppntyList;  
   
    }
    }
This was selected as the best answer
Ajay Kumar Lankipalle 8Ajay Kumar Lankipalle 8
Thanks Shri Raj,

Now I understood. Can I include all custom and standrd objects in one webservice class or seperate ones?

Regards,
Ajay
Shri RajShri Raj

You must include all of them in one WSDL since it would be easier for them to parse the WSDL and access those fields then and there. So, Try and include all the Fields & Objects in a single class and Generate a WSDL for all the components for which you want to give an access. 
 

Goodluck!

Ajay Kumar Lankipalle 8Ajay Kumar Lankipalle 8
Thank you somuch mate...:)

I will do this and get back to you, I have any issues.

Regards,
Ajay
Shri RajShri Raj
If you think your issues is resolved please choose any one of the answers as the BEST Answer so that it would be helpful for others in future who are planning to do an integration as well. 
Ajay Kumar Lankipalle 8Ajay Kumar Lankipalle 8
May be this is a basic question, how do I make it as BEST?
Shri RajShri Raj
Out of all the answere provided by Me or Avilion, When you hover over right beside the Flag option, The 'Best Answer' would popup. You can choose one.
Ajay Kumar Lankipalle 8Ajay Kumar Lankipalle 8
 Flag optionsSurprisingly, I can only see these option, I cant see the Best Answer. Am I looking at the wrong place?
Shri RajShri Raj
Not on the FLAG. Hover on the Right side of the FLAG! Something like this... 



August 5, 2014 · Like1 · Dislike0 · Flag     Best Answer
Shri RajShri Raj
Oh i get it. You have two different profiles. The profile frm which you posted this Question is different from the profile from which you are Answering. Only the Profiles from which the Questions are being created can see the 'Best Answer' option
Ajay Kumar Lankipalle 8Ajay Kumar Lankipalle 8
Oh.., right. I will login back with original profile and mark it as best