SalesForce integration — custom UI functionality
My company wants to use SalesForce as its backend for a new Web application that we are building. We will host the Web application with an ISP on our own servers. The integration points mainly involve sending customer and transaction data via the API. In essence, the Web application will have its own database, but will send over customer and transaction data to saleforce at key points.
The plan is to use SalesForce as a backend, so that we can save some time in developing all of this. What I don't understand though, is how custom functionality is handled by SalesForce?
Let's assume that our application offers some functionality. How would w开发者_JAVA技巧e expose that functionality in the SalesForce application? Initially I had imagined we could reference this function/page (in our app) via an iframe from the salesforce app — but this does not seem to be possible... are there any other options?
So, to summarise, I need to show parts (or pages) of our web app in the SalesForce UI. If I can achieve this, it would mean that the customer services team can do everything in one interface (handle tickets, update user data etc.).
I am at my wit's end with this, it's even causing some sleepless nights. I would appreciate any useful advice!
If you create a visualforce page using a standard controller, you will be able to embed that visualforce page on page layouts of that object type. You can then iframe your web app into that visualforce page.
I.e. if you create the following visualforce page, you can drag it onto your case layout:
<apex:page standardController="Case">
<iframe src="http://your-web-app-url" style="width: 100%; height: 100%;" />
</apex:page>
You will need seperate but similar visualforce pages if you need your app on other objects than case.
Alternatively, you could expose your data to Salesforce via some API (xml or Json) and then build your application natively in Salesforce with apex and vf. This presents a different set of challenges, but the user experience is better in my opinion.
Consider using Force.com Canvas, now GA, which is an added-value iframe with more security and easier integration with Salesforce APIs than raw iframes - see https://stackoverflow.com/a/17484855/992887
Iframes should be possible - If you are using standard layouts, try creating Visualforce components containing iframes - like the example above.
If it is a simple application/part, I would recommend developing the application on Force.com itself - We have build some very complex enterprise level apps on Force.com - although I would add that Apex/Visualforce is an immature language for building complex apps and many times you will be dealing with its limitations. But once you make it, it works like a charm.
精彩评论