I am currently trying to learn salesforce.
Following is my understanding(correct me if i am wrong)
Database.com
Database as a service.
Uses oracle under the hood.
Provides REST API service to interact with database.
Force.com
Platform as a service.
Provides metadata layer(Apex language,tool to edit/debug code,visualforce page etc.)
Provides default metadata for database.com field types.
Uses Database.com under the hood(for storing data and metadata).
Salesforce.com
Software as a service.
Uses Force.com under the hood.
Provides few data model (i.e.schema) eg:-sales,marketing.
Provides a framework(mainly UI) to create/configure various parameters of metadata and data model.
Question
I believe database.com, force.com and salesforce.com are 3 different services.
But on searching I am always reaching to salesforce CRM.Is it possible to use Database.com or Force.com alone i.e. without salesforce CRM?
Thank you!
I believe the database is currently going by the name of Force.com Database, while database.com is the name of one of the salesforce editions (products). I haven't heard much about database.com recently, and most of the links to database.com seem to be redirected, so it seems like they are trying to phase it out.
As for the underlying database technologies that support salesforce, Oracle seems to be the main one, link, link. But when working with the force.com database, it's very different from Oracle, and the SOQL language is very different from SQL (e.g. no JOIN).
Your description of force.com and salesforce.com seems basically correct.
As for using them separately, you can essentially build a web app to do whatever you want on the force.com platform. That being said, the ecosystem mostly revolves around the CRM products (sales/service cloud, marketing cloud). Besides CRM customers developing/customizing the systems for their own use, the platform also draws ISVs who publish their apps on the appexchange to sell to salesforce.com CRM customers.
Related
I am stuck as a developer trying to explore Salesforce for integrating with my CRM which is used by our clients as SaaS.
Background of what i want to achieve in the integration
The idea is that my CRM software allows many features that Salesforce does not and vice-versa. Due to this a typical client who is using my CRM (Saas) ends up using both the softwares. This ends into duplication of efforts where for eg: a customer created in my CRM has to be copied over to Salesforce manually from Salesforce UI.
The integration that i wish to provide will work like a 2 way integration where a customer created from my CRM gets created as Accounts in Salesforce and vice-versa. Same way sync of edits and deletes across the 2 system should work.
Problem that i am having
When i started exploring Salesforce integration, i found that Salesforce allows integration to be done in below ways
Apex trigger based system - I was able to achieve 2 way syncing with Salesforce and my CRM using Apex approach. But the problem is it requires me to access their web api's to send data from my CRM to Salesforce. This feature is only supported in higher pricing plans of Salesforce (Enterprise, Unlimited, Professional - you have to pay extra if you are using professional)
App based approach (eg: Slack): I am looking more towards this approach. As Slack integration works for almost all pricing plans and is supported well. What i could not conclude clearly is - how can i create an App for my CRM and get it listed on Salesforce? How does Salesforce allow an App based access from Slack to submit data into Salesforce system for lower pricing plans. Their documentation says that Api access is only available for higher pricing plans. Then how is this achieved? For eg: you can install Salesforce app into Slack and there after you can send messages to chatter service under individual accounts of Salesforce from Slack.
I am really not sure if i have given enough insight into the problem i am having. But i tried explaining as much as possible. In short i want to integrate 2 way with Salesforce and i am looking for possible solution that is supported at lower pricing plans as well. What type of integration should i go forward with?
Look into using an ETL provider that already is a salesforce technology partner (Boomi, Jitterbit, etc...).
These are already on appexchange.com, and as certified appexchange apps, can access data in salesforce Professional Edition (which does not allow open API access).
Let me start with a bit of background: I'm helping a non-profit organization that would like to have a browser-based application that is backed by Salesforce, but has very specific requirements.
I see Salesforce has a REST API that we can call, so we can develop a standalone application to serve the web pages they want and use the REST API to call Salesforce when needed.
I'm wondering if there is a way to host a web application directly on Salesforce; this way we don't have to have a separate application server. Any recommendations or pointers to documentation/open source products is greatly appreciated.
Yes, you can create services that will allow your app to hit Salesforce
Depending on the type of application, yes you can host it on salesforce using the Salesforce Sites feature, also you can develop and host your app on Heroku which is owned by salesforce and can sync data to and from salesforce using Heroku Connect, or you can build and host it on another service like AWS and connect via the REST API. You just need to investigate and choose the option that best fits your use-case. One thing to be aware of is that there are API limits (the number of calls you can make to salesforce in a rolling 24hr period). Depending the the needs of the app be sure to see if those limits will be an issue. Because if the app makes constant calls to salesforce that could be an issue. But there are things you can do to get around that, like caching.
Yes, both Force.com Sites and Site.com features allow you to host webpages on the Force.com Platform. The markup is stored in Visualforce Pages and can use Apex to access records in the Database. I have migrated multiple websites (including our company's www.mkpartners.com) to Force.com using Force.com Sites.
One thing to keep in mind is that you are limited to 500,000 views per month and the rendering of a page with images that are also stored on the platform will incur a single view for the page and a single view for each image. If you already have a very popular website, I wouldn't migrate. If you're a small business or nonprofit, then it should be fine.
Another thing to keep in mind is that dynamic functionality based on records in the database will not work during maintenance windows. There is the ability to upload a static version of your website to be rendered during these windows though.
As some background, my company is currently using an Apple Calendar server, some Exchange servers and a Google Apps subscription to provide calendaring for different parts of the organization. I've been tasked with providing free/busy access across these services while we try to take at least one of the services out of the equation.
I've attempted to use Google Interop, but it does not work with Exchange 2013 due to Microsoft eliminating Exchange Public Folder Databases in that release. I've also set up an IIS WebDAV server to attempt to share calendars, but this has shortcomings as well because only one person is able to moderate the calendar, and f/b data can't be queried in the Apple Calendar app - you have to subscribe to a separate f/b calendar.
Are there any suggestions as to how I should proceed?
If you can write your own connectors for each service (ie using propietary API's) you could then expose that information through a custom caldav service.
For example you could use http://milton.io (java) or http://sabre.io/ (php), both allow pulling data from arbitrary data sources.
We are designing a project in which we plan to use 20 SFDC users (managers) and more than 100 database.com light users (salesmen). The idea is that the SDFC users will use the site to see reports and so on, while the others will use our mobile software which relies on API calls to create orders and similar.
I never used database.com before and I am quite a newbie with force.com. I just created a db.com account but I have no idea on how I can connect the two systems together. I want the both types of users to access to the same records, so if a salesman creates an order the manager can see this order in the reports and the online tools. How can achieve that? I there any limitation I should be aware of?
Thanks!
See if these proprietary websites have a public API.
The only way you can interface with them is through an API, or via really hackish script which simulate a web browser. Thus if they don't have a public API, you should call the appropriate department on their Contact Us page.
We are looking to develop our in-house custom integration between Salesforce & Quickbooks.
So far we got to the point that we need to develop some Federated App on Quickooks platform.
Is there any way to access/update Quickbooks data from Salesforce using REST API without developing app on IPP?
You can use the old QuickBooks SDK. It's free, and XML based. But it will eventually be retired, in favor of IPP.
The next thing from IPP (Intuit Partner Platform) is Intuit Anywhere (IA), which avoids you having to do a full federated implemented. Intuit Anywhere is 100 times easier to integrate than federated, mainly because you manage your own billing and user management. There is a cost to use their Rest API, it's $5 a month.
We do both. We have a legacy SDK app that works great for the QuickBooks desktop version. We also have an Intuit Anywhere sync that we use for QuickBooks Online. Note: you could use the SDK or IA for either.
Questions: Why not use use the standard salesforce DataSync link from Pervasive?
Also, does it have to be salesforce? CRM's like Method CRM have the syncing seamlessly built in, so you don't have to mess with anything.
Paul
We have used AppSynergy's federated integration with QuickBooks to create an employee facing web app that reads and writes live QuickBooks data (mostly purchase orders in our case) based on data from other systems.