NetSuite-Funktionen im Jitterbit Integration Studio
NetSuite-Funktionen bieten Anmelde- und Sitzungsinformationen sowie Abfragen für NetSuite-Instanzen.
NetSuiteGetSelectValue
Deklaration
dictionary NetSuiteGetSelectValue(string netSuiteOrg, string recordType, string field[, string sublist])
Syntax
NetSuiteGetSelectValue(<netSuiteOrg>, <recordType>, <field>[, <sublist>])
Erforderliche Parameter
netSuiteOrg
: Ein String-Verweis auf eine NetSuite-Verbindung im aktuellen ProjektrecordType
: NetSuite-Datensatztyp (siehe Picklist-Beispiel unten)field
: NetSuite-Feld
Optionale Parameter
sublist
: NetSuite-Subliste
Beschreibung
Ruft die Picklistwerte für ein Feld aus NetSuite ab.
Die Funktionsantwort ist ein Wörterbuch (Map), wobei:
- Die Schlüssel des Wörterbuchs die Picklistwerte sind.
- Die Werte des Wörterbuchs sind eine Map mit zwei Elementen: der interne ID und der externen ID für jede Picklist.
Hinweis
Der Rückgabewert sollte einer Variablen zugewiesen werden, und die Variable sollte verwendet werden, um die entsprechenden IDs für Picklist-Elemente abzurufen, anstatt diese Funktion mehrfach aufzurufen.
Hinweis
Wenn sublist
unangemessen angegeben wird, kann es zu folgendem Fehler kommen:
ERROR code=INSUFFICIENT_PERMISSION;message=You do not have permissions to set a value for element cef records
aufgrund eines dieser Gründe:
- Das Feld ist schreibgeschützt.
- Eine zugehörige Funktion ist deaktiviert.
- Das Feld ist entweder verfügbar, wenn ein Datensatz erstellt oder aktualisiert wird, jedoch nicht in beiden Fällen.
Hinweis
Endpunkte, die mit dieser Funktion erstellt wurden, sind in Endpoint-Nutzungsberichten enthalten und zählen zu Ihrer Lizenz.
Beispiele
Einfaches Beispiel
netSuiteOrg = "<TAG>endpoint:netsuite/NetSuite</TAG>";
recordType = "customer";
field = "entityStatus";
dict = NetSuiteGetSelectValue(netSuiteOrg, recordType, field);
i1=dict[field]["internalId"]; // or dict[field][0]
e1=dict[field]["externalId"]; // or dict[field][1]
Sublistenbeispiel
netSuiteOrg = "<TAG>endpoint:netsuite/NetSuite</TAG>";
recordType = "salesOrder";
field = "item";
sublist = "itemList";
dict = NetSuiteGetSelectValue(netSuiteOrg, recordType, field, sublist);
i1=dict[field]["internalId"]; // or dict[field][0]
e1=dict[field]["externalId"]; // or dict[field][1]
Picklist-Beispiel
-
Gehen Sie zum SOAP-Schema-Browser von NetSuite für die Version des NetSuite WSDL, die Sie verwenden. Dieses Beispiel verwendet den 2021.1 SOAP Schema Browser.
-
Gehen Sie zum Tab Records Browser und navigieren Sie zum Datensatztyp Customer. Die resultierende Seite zeigt die
customer
-Datensatztabelle, die die Struktur descustomer
-Datensatzes einschließlich der Feldnamen und Feldtypen anzeigt. Datensatztypen sind groß- und kleinschreibungsempfindlich. -
Suchen Sie in der Name-Spalte der
customer
-Datensatztabelle den FeldnamenentityStatus
. Dies entspricht dem FeldentityStatus
, das im Schema einer NetSuite-Suchaktivität angezeigt wird. Sie können die Werte für dieses Feld beim Vorschau einer Transformation mit diesem Schema anzeigen. -
Um alle Picklist-Werte für das Feld
entityStatus
unter dem Datensatztypcustomer
abzurufen, verwenden Sie ein Skript:netSuiteOrg = "<TAG>endpoint:netsuite/NetSuite</TAG>"; recordType = "customer"; field = "entityStatus"; d = NetSuiteGetSelectValue(netsuiteOrg, recordType, field); keys = GetKeys(d); $cw.internalId = d[keys[0]]["internalId"]; $cw.externalId = d[keys[0]]["externalId"]; keys
Dieses Skript gibt eine Liste von Schlüsseln zurück:
{CUSTOMER-Closed Won,CUSTOMER-Lost Customer,CUSTOMER-Renewal}
-
Sie können dann das Skript testen, um die internen und externen IDs für jeden der Picklist-Einträge zu sehen.
NetSuiteGetServerTime
Deklaration
string NetSuiteGetServerTime(string netSuiteOrg)
Syntax
NetSuiteGetServerTime(<netSuiteOrg>)
Erforderliche Parameter
netSuiteOrg
: Ein String-Verweis auf einen NetSuite-Verbindungspfad im aktuellen Projekt
Beschreibung
Erhält das Serverdatum und die Uhrzeit von einem NetSuite-Server.
Beispiele
netSuiteOrg = "<TAG>endpoint:netsuite/NetSuite</TAG>";
NetSuiteGetServerTime(netSuiteOrg);
// Gibt ein Datum wie "2017-12-07T21:00:26.000-08:00" zurück
NetSuiteLogin
Deklaration
string NetSuiteLogin(string netSuiteOrg)
Syntax
NetSuiteLogin(<netSuiteOrg>)
Erforderliche Parameter
netSuiteOrg
: Ein String-Verweis auf einen NetSuite-Verbindungspfad im aktuellen Projekt
Beschreibung
Erhält eine neue Sitzungs-ID von einem NetSuite-Endpunkt zur Verwendung in REST- oder SOAP-Aufrufen, die außerhalb des NetSuite-Connectors verwendet werden. Dies bietet eine einfache Möglichkeit, sich bei NetSuite anzumelden, ohne für jeden Webdienstaufruf Authentifizierungsheader zu benötigen.
Hinweis
Die Verwendung dieser Funktion ist nicht erforderlich, wenn Sie den Harmony NetSuite Connector verwenden.
Warnung
Die NetSuite-Sitzung läuft nach 15 Minuten ab. Sie kann durch andere Aufrufe an NetSuite ungültig gemacht werden.
Beispiele
netSuiteOrg = "<TAG>endpoint:netsuite/NetSuite</TAG>";
NetSuiteLogin(netSuiteOrg);
// Returns a string such as
// "JSESSIONID=_wXox...847; path=/; HttpOnly;NS_ROUTING_VERSION=LAGGING; path=/;NS_VER=2017.2.0; path=/"