Apex-Synchronisierungsbefehle für Intacct

Apex ist eine objektorientierte Programmiersprache, mit der Sie Flow- und Transaktionssteuerungsanweisungen in Salesforce mit Anwendungsaufrufen an Salesforce-APIs zentralisieren und ausführen können. Webservice-Anfragen und Datenbank-Trigger für Objekte können auch die Ausführung von Apex-Code initiieren.

Sage Intacct hat Apex-Synchronisierungsbefehle speziell für die erweiterte CRM-Integration erstellt, mit denen Sie Intacct Apex-Klassen in Ihrem eigenen Code aufrufen und verwenden können.

Weitere Informationen zum Salesforce Apex-Code finden Sie auf der Salesforce-Entwickler-Website.

SobjectController

Die SobjectController-Klasse wird verwendet, um Synchronisationsaufrufe aus dem Code innerhalb des Pakets für die erweiterte CRM-Integration und außerhalb des Pakets zu initiieren. Diese Klasse soll aufgrund ihres globalen Zugriffsmodifizierers außerhalb des Pakets sichtbar sein.

Einen einzelnen Datensatz synchronisieren

Um einen einzelnen Datensatz zu synchronisieren, verwenden Sie Folgendes als Vorlage:

Kopieren
Vorlage
ia_crm.SobjectController instance = new 
ia_crm.SobjectController([ObjectName],[RecordId],[Action],[TransactionDefinitionName]);

Parameter für die Synchronisierung einzelner Datensätze

Parameter

Definition

ObjectName(String)

Name des Objekts

Beispiel: "Konto", "Produkt2"

RecordId(String)

Salesforce-ID des Datensatzes

Beispiel: ' 000000000004MVox'

Aktion(Zeichenfolge)

Kann eine der Aktionen sein, die in der Aktionsliste.

TransactionDefinitionName(String)

Name der benutzerdefinierten Intacct-Transaktionsdefinition

Beispiel: "Umsatzrealisierung der Verkaufsrechnung"

Der anfängliche Synchronisierungsvorgang erfolgt durch Aufrufen der Methode customAction() innerhalb dieser Klasse. Dieser Methodentyp ist ungültig. Sie erhalten keinen Rückgabewert.

Beispiel für die Synchronisierung eines einzelnen Datensatzes

Das folgende Codebeispiel dient zum Synchronisieren eines einzelnen Datensatzes:

Kopieren

Beispiel

ia_crm.SobjectController instance = new 
ia_crm.SobjectController(’Account’,’ 01t41000000sitr’ , ’SYNC_CUSTOMER’, null); instance.customAction();

Datensätze in großen Mengen synchronisieren

Um Datensätze gleichzeitig zu synchronisieren, verwenden Sie Folgendes als Vorlage:

Kopieren
Vorlage
ia_crm.SobjectController instance = new 
ia_crm.SobjectController([ObjectName],[List<Id> RecordIds],[Action],[TransactionDefinitionName]);

Parameter für die Massensynchronisierung von Datensätzen

Parameter Definition
ObjectName(String)

Name des Objekts.

Beispiel "Konto", "Produkt2"

RecordIds(List<Id>) Liste der Salesforce-Datensatz-IDs.
Aktion(Zeichenfolge) Kann eine der Aktionen sein, die in der Aktionsliste.
TransactionDefinitionName(String) Name der benutzerdefinierten Intacct-Transaktionsdefinition (z. B. "Umsatzrealisierung der Verkaufsrechnung")

Der erste Synchronisierungsvorgang erfolgt durch Aufrufen des customAction() -Methode in dieser Klasse. Dieser Methodentyp ist ungültig. Sie erhalten keinen Rückgabewert.

Beispiel für eine Massensynchronisierung von Datensätzen

Das folgende Codebeispiel dient zum Synchronisieren von Datensätzen in großen Mengen:

Kopieren

Beispiel

List<Id> recordIds = List<Id>();
ia_crm.SobjectController instance = new ia_crm.SobjectController(’Account’, recordIds, ’SYNC_CUSTOMER’, null);instance.customAction();

Eine Transaktion synchronisieren

Um eine Transaktion zu synchronisieren, verwenden Sie Folgendes als Vorlage:

Kopieren
Vorlage
ia_crm.SobjectController instance = new 
ia_crm.SobjectController({opportunityIds}, {transactionName}, {applyOnlyToEmptyTransactions});
instance.customAction();

Parameter für die Transaktionssynchronisierung

Parameter

Definition

opportunityIds

ID der Geschäftschance.

Beispiel: Eine Listen-ID: '0061v00000d2Dhm'

transactionName

Der Name im Feld "Intacct-Transaktionstyp".

Beispiel: "Verkaufsrechnung" oder "Kundenauftrag" usw.

applyOnlyToEmptyTransactions

Kann wahr oder falsch sein.

Setzen Sie diese Option auf TRUE, wenn Sie {transactionName} auf Geschäftschancen anwenden möchten, bei denen das Feld "Intacct-Transaktion" leer ist.

Setzen Sie diese Option auf FALSE, wenn Sie {transactionName} auf alle Geschäftschancen anwenden und das Feld "Intacct-Transaktion" überschreiben möchten.

Der anfängliche Synchronisierungsvorgang erfolgt durch Aufrufen der Methode customAction() innerhalb dieser Klasse. Dieser Methodentyp ist ungültig. Sie erhalten keinen Rückgabewert.

Aktionsliste

Im Folgenden finden Sie eine Liste der Synchronisierungsvorgänge, die im Paket "Erweiterte CRM-Integration" verfügbar sind.

Synchronisierungsoperator Definition
SYNC_CUSTOMER Kontosynchronisierung
SYNC_PRODUCT Produktsynchronisierung
SYNC_CONTACT Kontaktsynchronisierung
CREATE_CONTRACT Vertrag erstellen
SYNC_PRICEBOOK Preisbuchsynchronisierung
DELETE_CUSTOMER Callout "Konto entfernen"
DELETE_CONTACT Callout zum Löschen von Kontakten
DELETE_PRODUCT Produkthinweis entfernen
DELETE_PRICEBOOK Preisbuch-Callout entfernen
MERGE_CUSTOMER Konten zusammenführen
UPDATE_CONTRACT Vertrag aktualisieren
SYNC_RENEWAL_CONTRACT Verlängerungsvertrag erstellen
CREATE_OPPORTUNITY_CONTRACT Vertrag synchronisieren Add-on
C_SYNC_PRICEBOOK Vertragspreisbuch erstellen/aktualisieren
SYNC_JOURNAL_ENTRY Journaleintrag erstellen