Funciones de NetSuite en Jitterbit Integration Studio
Las funciones de NetSuite proporcionan información de inicio de sesión y sesión, así como búsquedas para instancias de NetSuite.
NetSuiteGetSelectValue
Declaración
dictionary NetSuiteGetSelectValue(string netSuiteOrg, string recordType, string field[, string sublist])
Sintaxis
NetSuiteGetSelectValue(<netSuiteOrg>, <recordType>, <field>[, <sublist>])
Parámetros requeridos
netSuiteOrg
: Una ruta de referencia de cadena a una conexión de NetSuite en el proyecto actualrecordType
: Tipo de registro de NetSuite (ver ejemplo de lista de selección a continuación)field
: Campo de NetSuite
Parámetros opcionales
sublist
: Sublista de NetSuite
Descripción
Recupera los valores de la lista de selección para un campo de NetSuite.
La respuesta de la función es un diccionario (mapa), donde:
- Las claves del diccionario son los valores de la lista de selección.
- Los valores del diccionario son un mapa con dos elementos: el ID interno y el ID externo para cada elemento de la lista de selección.
Nota
El valor de retorno debe asignarse a una variable y la variable debe usarse para recuperar los IDs correspondientes para los elementos de la lista de selección en lugar de llamar a esta función múltiples veces.
Nota
Si sublist
se proporciona de manera inapropiada, puede recibir
ERROR code=INSUFFICIENT_PERMISSION;message=You do not have permissions to set a value for element cef records
debido a alguna de estas razones:
- El campo es de solo lectura.
- Una función asociada está deshabilitada.
- El campo está disponible ya sea cuando se crea o se actualiza un registro, pero no en ambos casos.
Nota
Los puntos finales creados con esta función se incluyen en informe de uso de puntos finales y cuentan para su licencia.
Ejemplos
Ejemplo básico
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]
Ejemplo de sublista
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]
Ejemplo de lista de selección
-
Ve al Navegador de Esquemas SOAP de NetSuite para la versión del WSDL de NetSuite que estás utilizando. Este ejemplo utiliza el Navegador de Esquemas SOAP 2021.1.
-
Ve a la pestaña Navegador de Registros y navega al tipo de registro Cliente. La página resultante muestra la tabla de registros
customer
que muestra la estructura del registrocustomer
, incluidos los nombres de sus campos y tipos de campo. Los tipos de registro son sensibles a mayúsculas y minúsculas. -
En la columna Nombre de la tabla de registros
customer
, localiza el nombre del campoentityStatus
. Esto corresponde con el campoentityStatus
que se muestra en el esquema de una actividad de búsqueda de NetSuite. Puedes previsualizar los valores para este campo al previsualizar una transformación utilizando este esquema. -
Para recuperar todos los valores de la lista de selección para el campo
entityStatus
bajo el tipo de registrocustomer
, utiliza un script: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
Este script devolverá una lista de claves:
{CUSTOMER-Closed Won,CUSTOMER-Lost Customer,CUSTOMER-Renewal}
-
Luego puedes probar el script para ver los IDs internos y externos de cada una de las entradas de la lista de selección.
NetSuiteGetServerTime
Declaración
string NetSuiteGetServerTime(string netSuiteOrg)
Sintaxis
NetSuiteGetServerTime(<netSuiteOrg>)
Parámetros requeridos
netSuiteOrg
: Una ruta de referencia de cadena a una conexión de NetSuite en el proyecto actual
Descripción
Recupera la fecha y hora del servidor desde un servidor de NetSuite.
Ejemplos
netSuiteOrg = "<TAG>endpoint:netsuite/NetSuite</TAG>";
NetSuiteGetServerTime(netSuiteOrg);
// Devuelve una fecha como "2017-12-07T21:00:26.000-08:00"
NetSuiteLogin
Declaración
string NetSuiteLogin(string netSuiteOrg)
Sintaxis
NetSuiteLogin(<netSuiteOrg>)
Parámetros requeridos
netSuiteOrg
: Una referencia de cadena a una conexión de NetSuite en el proyecto actual
Descripción
Recupera un nuevo ID de sesión desde un endpoint de NetSuite para su uso en llamadas REST o SOAP que se utilizan fuera del conector de NetSuite. Esto proporciona una forma sencilla de iniciar sesión en NetSuite sin requerir encabezados de autenticación para cada llamada de servicio web.
Nota
El uso de esta función no es necesario si se está utilizando el Conector de NetSuite de Harmony.
Advertencia
La sesión de NetSuite expira después de 15 minutos. Puede ser invalidada por otras llamadas a NetSuite.
Ejemplos
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=/"