Funções do NetSuite no Jitterbit Integration Studio
As funções do NetSuite fornecem informações de login e sessão e consultas para instâncias do NetSuite.
NetSuiteGetSelectValue
Declaração
dictionary NetSuiteGetSelectValue(string netSuiteOrg, string recordType, string field[, string sublist])
Sintaxe
NetSuiteGetSelectValue(<netSuiteOrg>, <recordType>, <field>[, <sublist>])
Parâmetros obrigatórios
netSuiteOrg
: Um caminho de referência em string para uma conexão do NetSuite no projeto atualrecordType
: Tipo de registro do NetSuite (veja o exemplo de lista de seleção abaixo)field
: Campo do NetSuite
Parâmetros opcionais
sublist
: Sublista do NetSuite
Descrição
Recupera os valores da lista de seleção para um campo do NetSuite.
A resposta da função é um dicionário (mapa), onde:
- As chaves do dicionário são os valores da lista de seleção.
- Os valores do dicionário são um mapa com dois elementos: o ID interno e o ID externo para cada item da lista de seleção.
Nota
O valor de retorno deve ser atribuído a uma variável e a variável deve ser usada para recuperar os IDs correspondentes para os elementos da lista de seleção em vez de chamar esta função várias vezes.
Nota
Se sublist
for fornecido de forma inadequada, você pode receber
ERROR code=INSUFFICIENT_PERMISSION;message=You do not have permissions to set a value for element cef records
devido a qualquer uma dessas razões:
- O campo é somente leitura.
- Um recurso associado está desativado.
- O campo está disponível apenas quando um registro é criado ou atualizado, mas não em ambos os casos.
Nota
Os endpoints criados com esta função estão incluídos em relatório de uso de endpoints e contam para sua licença.
Exemplos
Exemplo 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]
Exemplo 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]
Exemplo de lista de seleção
-
Acesse o Navegador de Esquema SOAP do NetSuite para a versão do WSDL do NetSuite que você está usando. Este exemplo utiliza o Navegador de Esquema SOAP 2021.1.
-
Vá para a aba Records Browser e navegue até o tipo de registro Customer. A página resultante exibe a tabela de registro
customer
, mostrando a estrutura do registrocustomer
, incluindo os nomes e tipos de campo. Os tipos de registro são sensíveis a maiúsculas e minúsculas. -
Na coluna Name da tabela de registro
customer
, localize o nome do campoentityStatus
. Isso corresponde ao campoentityStatus
mostrado no esquema de uma atividade de pesquisa do NetSuite. Você pode visualizar os valores para este campo ao visualizar uma transformação usando este esquema. -
Para recuperar todos os valores da lista de seleção para o campo
entityStatus
sob o tipo de registrocustomer
, use um 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 retornará uma lista de chaves:
{CUSTOMER-Closed Won,CUSTOMER-Lost Customer,CUSTOMER-Renewal}
-
Você pode então testar o script para ver os IDs internos e externos para cada uma das entradas da lista de seleção.
NetSuiteGetServerTime
Declaração
string NetSuiteGetServerTime(string netSuiteOrg)
Sintaxe
NetSuiteGetServerTime(<netSuiteOrg>)
Parâmetros obrigatórios
netSuiteOrg
: Um caminho de referência em string para uma conexão do NetSuite no projeto atual
Descrição
Recupera a data e hora do servidor de um servidor NetSuite.
Exemplos
netSuiteOrg = "<TAG>endpoint:netsuite/NetSuite</TAG>";
NetSuiteGetServerTime(netSuiteOrg);
// Retorna uma data como "2017-12-07T21:00:26.000-08:00"
NetSuiteLogin
Declaração
string NetSuiteLogin(string netSuiteOrg)
Sintaxe
NetSuiteLogin(<netSuiteOrg>)
Parâmetros obrigatórios
netSuiteOrg
: Um caminho de referência de string para uma conexão NetSuite no projeto atual
Descrição
Recupera um novo ID de sessão de um endpoint NetSuite para uso em chamadas REST ou SOAP que são utilizadas fora do conector NetSuite. Isso fornece uma maneira simples de fazer login no NetSuite sem exigir cabeçalhos de autenticação para cada chamada de serviço web.
Nota
O uso desta função não é necessário se você estiver usando o Conector NetSuite Harmony.
Aviso
A sessão do NetSuite expira após 15 minutos. Ela pode ser invalidada por outras chamadas ao NetSuite.
Exemplos
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=/"