Salesforce-API-Integration mit der Rails-App

Salesforce ist als Customer Relationship Management (CRM)-Plattform bekannt und bietet cloudbasierte Anwendungen für Vertrieb, Service und Marketing. Ziel dieses Artikels ist es, ein klareres Verständnis der Salesforce-API und der Art und Weise zu entwickeln, wie Sie Daten zwischen Salesforce und Ihrer Rails-Anwendung synchronisieren können. Die folgenden Schritte müssen befolgt werden, um die Salesforce-API in Ihre Rails-Anwendung zu integrieren:
Use Rails gem “restforce” – https://github.com/ejholmes/restforce

Installation

Add gem ‘restforce’, ‘~> 2.5.3’ into your Gemfile Run ‘bundle install’ or ‘gem install restforce’

Aufbau

In your application.yml, set the following env variables –
SALESFORCE_USERNAME: “username” SALESFORCE_PASSWORD: “password” SALESFORCE_SECURITY_TOKEN: “security token” SALESFORCE_CLIENT_ID: “client id” SALESFORCE_CLIENT_SECRET: “client secret” SALESFORCE_HOST: “host domain name” SALESFORCE_API_VERSION=”38.0″
Versuchen Sie, eine Verbindung zu Salesforce herzustellen und führen Sie „sf = Restforce.new“ aus.

Abfrage an Salesforce

Salesforce kann über mehrere Objekte verfügen, z. B. „Konto“, „Zertifizierung_c“, „Lernender“ usw. Um auf diese Objekte zuzugreifen, können Sie die folgenden Abfragen anwenden.
  • Abfrage
  • query_all
  • wählen
  • suchen
  • erstellen
  • finden
  • aktualisieren
  • zerstören
1. Abfrage
Beispiel 1:
accounts = sf.query(“select Id, Something__c from Account”)
Beispiel 2: Zeitbasierte Abfrage mit WHERE-Klausel # letzte synchronisierte Zeit
last_synced_at = (Time.now.utc – 1.hour).strftime(“%Y-%m-%dT%H:%M:%SZ”)
#aktuelle Systemzeit
current_time = Time.now.utc.strftime(“%Y-%m-%dT%H:%M:%SZ”)
sf.query(“select Id, Something__c from Account WHERE LastModifiedDate >= #{last_synced_at} AND LastModifiedDate <= #{current_time}”)
2. query_all
query_all lets you to include the results from your query that Salesforce hides in the default “query” method. These also include soft-deleted records and archived records (e.g. Task and Event records, usually archived automatically after they get a year old)
accounts = sf.query_all(“select Id, Something__c from Account where isDeleted = true”)
3. auswählen
select ermöglicht das Abrufen einer bestimmten Liste von Feldern aus einem einzelnen Objekt. Es erfordert eine external_id-Suche, ist aber oft viel schneller als eine beliebige Abfrage.
sf.select(‘Account’, ‘001D000000INjVe’, [“Id”], ‘Some_External_Id_Field__c’)
4. Suchen
# Find all occurrences of ‘bar’
sf.search(‘FIND {bar}’)
5. Erstellen
# Fügen Sie eine neue Zertifizierung_c hinzu
sf.create(‘Certification_c’, Certification_type_c: ‘CSR In-Person’)
6. finden
# Finden Sie eine Zertifizierung anhand der ID
sf.find(‘Certification_c’, ‘001D000000INjVe’)
7. Aktualisierung
# Update the ‘Certification_c’ with `Id` ‘0016000000MRatd’
sf.update(‘Certification_c’, Id: ‘0016000000MRatd’, Certification_type_c: ‘CSR Vertual’)
8. zerstören
# Zerstören Sie eine Zertifizierung anhand der ID
sf.destroy(‘Certification_c’, ‘001D000000INjVe’)

API-Grenzwerte

Salesforce hat ein Limit für API-Aufrufe pro Tag und Stunde. So können Sie einfach Ihre gesamten API-Aufrufe und verfügbaren Aufrufe überprüfen.
limits = sf.limits limits[“DailyApiRequests”]
Output = {“Max”=>15000, “Remaining”=>14746}
Rettung vor Restforce-API-Verbindungsfehlern
def self.connect_to_salesforce sf = nil begin sf = Restforce.new Rescue Exception => e error_message = „Verbindung zu Salesforce mithilfe von Restforce Gem fehlgeschlagen!“ Ende Ende

Abonnieren Sie die neuesten Updates

zusammenhängende Posts

Hinterlasse einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

German
English
English
Japanese
German
French
Spanish

WhatsApp uns

Beenden Sie die mobile Version