T27 Salesforce REST API Connector über JSLIn den letzten Monaten habe ich einige Anfragen von SEs erhalten, die gefragt haben, wie man Salesforce-Daten über JMP abfragt. Die angehängten Dateien stellen das Skript-Framework bereit, das ich verwende, um JMP mit Salesforce zu verbinden und Daten abzufragen. Nachfolgend finden Sie eine Beschreibung der angehängten Skripte sowie den Prozess, wie Sie sie verwenden, um alles erfolgreich einzurichten:
- Generieren Sie Refresh Token.jsl
- Dieses Skript sollte nur ausgeführt werden EINMAL !!!Sobald ein Aktualisierungstoken generiert wurde, bleibt es auf unbestimmte Zeit bestehen. Durch erneutes Ausführen des Skripts wird das Aktualisierungstoken zurückgesetzt , was sich auf alle zukünftigen Schritte auswirken wird.
- In diesem Skript müssen zwei Felder ausgefüllt werden: Kunden ID und C Kundengeheimnis
- Diese Werte müssen innerhalb von Salesforce abgerufen werden.
- Diese Werte müssen an den richtigen Positionen in den Zeilen 13, 19 und 20 im Skript eingegeben werden.
- Führen Sie das Skript aus, nachdem die Client-ID und das Client-Geheimnis eingegeben wurden. Das Feld „rtoken“ wird im Protokoll angezeigt. Speichern Sie diesen Wert an einem sicheren Ort – dies ist das generierte Aktualisierungstoken. Wie oben beschrieben, bleibt dieses Token auf unbestimmte Zeit bestehen Führen Sie dieses Skript nicht erneut aus, es sei denn, Sie benötigen ein neues Aktualisierungstoken .
- Generieren Sie Auth Fields.jsl
- Nachdem nun das Aktualisierungstoken abgerufen wurde, kann das für den Zugriff auf Daten in Salesforce erforderliche Zugriffstoken abgerufen werden. Die Funktion in diesem Skript generiert das Zugriffstoken und andere zum Ausführen einer Abfrage erforderliche Felder und gibt diese Werte in Form eines assoziativen Arrays zurück. Es gibt drei Werte, die in diese Funktion eingegeben werden müssen (aufgelistet in der Reihenfolge, in der sie als Eingaben erscheinen sollen):
- rtoken – Dies ist das Aktualisierungstoken, das aus dem obigen Skript generiert wurde
- Kunden ID – Dies ist die Kunden-ID, die aus Salesforce stammt
- client_secret – Dies ist das Kundengeheimnis, das aus Salesforce stammt
- Nachfolgend sind die Schlüssel und entsprechenden Werte aufgeführt, die im von dieser Funktion generierten assoziativen Array zurückgegeben werden:
- Kunden ID – Dies ist die Client-ID, die ursprünglich eingegeben wurde
- Zugangstoken – Dies ist das Zugriffstoken, das für den Zugriff auf Daten in Salesforce erforderlich ist
- Instanz_URL – Dies ist die URL der Salesforce-Instanz Ihrer Organisation.
- Abfrageformel String.jsl
- Dieses Skript enthält die Funktion, die zum Abfragen von Daten aus Salesforce erforderlich ist. Die Funktion verfügt über 5 Eingaben (unten in der Reihenfolge der Eingaben aufgeführt) und gibt eine Datentabelle zurück.
- st – Dies ist die SOQL-Abfragezeichenfolge, die die abzufragenden Daten angibt. Werkbank ist eine großartige Ressource zum Generieren von SOQL-Abfragen.
- Zugangstoken – Dies sollte dem im obigen Skript generierten Assoziativen Array entnommen werden.
- Kunden ID – Dies sollte dem im obigen Skript generierten Assoziativen Array entnommen werden.
- Instanz_URL – Dies sollte dem im obigen Skript generierten Assoziativen Array entnommen werden.
- Tabellenname – Dies sollte als gewünschter Tabellenname für die von dieser Funktion generierte Datentabelle festgelegt werden. Wenn Sie das Feld leer lassen, wird die generierte Tabelle automatisch als „von Salesforce generierte Tabelle“ benannt.
- Beispiel Query.jsl
- Dieses Skript enthält ein Beispiel für die Verwendung der Skripte „Generate Auth Fields.jsl“ und „Query Formula String.jsl“ zum Generieren einer Tabelle mit Salesforce-Daten. Damit dieses Skript funktioniert, muss der Kunde seine speziellen Eingaben in die Funktion „Authentifizierungsfelder generieren“ eingeben.
InformationsreferenzenSkripteÜbungsmaterialBetreff: Salesforce REST API Connector über JSLDanke für die Auskunft @andyzhou .Ich hatte gefolgert, dass der Beitrag dazu gedacht war, dass SEs möglicherweise auf SF zurückgreifen, um ihre Vertriebsteams zu unterstützen, was darauf hindeutet, dass die Administratorrechte nicht erforderlich waren oder bereits vorhanden waren. Ich werde meine JSL-Bastelambitionen mit SF vorerst beiseite legen.
Betreff: Salesforce REST API Connector über JSLHallo @christianstopp ,
Richtig, der Erhalt einer Client-ID und eines Client-Geheimnisses erfolgt durch die Erstellung einer verbundenen App. Unsere App wurde schon vor einiger Zeit eingerichtet, aber ich glaube, dass nur Administratoren eine Connected App erstellen und einrichten können.
Hmm, nach dem, was ich online gesehen habe, scheint es keine Möglichkeit zu geben, den zugrunde liegenden SOQL-Code für einen Bericht abzurufen. Sie sollten einigermaßen erraten können, welche Felder verwendet werden, aber oft stimmen die Feldnamen im Bericht nicht mit den API-Feldnamen überein.Werkbank ist eine gute Ressource, um herauszufinden, wie die genauen API-Feldnamen für ein bestimmtes SF-Objekt lauten.
Andy
Betreff: Salesforce REST API Connector über JSLHallo @andyzhou ,
Vielen Dank, dass Sie dies für eine mögliche Verwendung aufgeschlüsselt haben.Sind für die Verwendung der Client-ID und des Client-Geheimnisses besondere Berechtigungen erforderlich?Ich habe auf verschiedenen Websites nach Möglichkeiten gesucht, sie zu erhalten, aber sie empfehlen die Erstellung einer neuen App und ich konnte weder das spezifische Plattform-Tool, auf das verwiesen wird, noch die Schaltfläche „Neu“ innerhalb des Plattform-Tools finden, das ich gefunden habe (z. B. Installierte Pakete). > SF Connected Apps).
Außerdem scheint es sich bei der Anfrage nur um eine SQL-Abfrage zu handeln, die in der HTTP-Anfrage weitergegeben wird, und ich gehe davon aus, dass die Berichte, die wir in SF erstellen, auf SQL-Abfragen basieren. Wissen Sie, ob es eine Möglichkeit gibt, die SQL-Abfrage zum Erstellen eines SF-Berichts zu verwenden?
Vielen Dank für jeden Einblick, den Sie in diese Artikel haben.
Christian