Lançar um lançamento de diário no NetSuite
Lance lançamentos de diário das tabelas de um projeto do PlaidCloud no NetSuite com o passo de fluxo de trabalho Post NetSuite Journal Entry. Este guia cria um lote a partir de uma tabela de cabeçalho e de uma tabela de linhas, pré-visualiza-o sem tocar no NetSuite, lança-o e, por fim, lê o resultado.
Pré-requisitos
Seção intitulada “Pré-requisitos”- Uma ligação ao NetSuite funcional, com uma função que possa criar lançamentos de diário (acesso Create ao registo Journal Entry, além da configuração REST/OAuth abordada no guia de leitura).
- Duas tabelas de origem no seu projeto:
- Uma tabela de cabeçalho com uma linha por lançamento de diário.
- Uma tabela de linhas com uma ou mais linhas de débito/crédito por lançamento de diário.
Preparar as tabelas de cabeçalho e de linhas
Seção intitulada “Preparar as tabelas de cabeçalho e de linhas”-
Crie ou importe uma tabela de cabeçalho com uma linha por lançamento de diário. No mínimo, precisa de:
Coluna Mapeia para Obrigatório Um identificador do diário Journal ID Sim A subsidiária do NetSuite Subsidiary Sim A data do lançamento Data de lançamento Sim A moeda do NetSuite Currency Não Uma nota ao nível do lançamento Memo Não Um ID externo fornecido pelo autor da chamada External ID Não -
Crie ou importe uma tabela de linhas com uma ou mais linhas por lançamento de diário, partilhando o mesmo identificador de diário da respetiva linha de cabeçalho:
Coluna Mapeia para Obrigatório O identificador do diário Journal ID Sim A conta do razão geral Account Sim O montante de débito (0 se não existir) Debit Sim O montante de crédito (0 se não existir) Credit Sim Uma nota ao nível da linha Memo Não Departamento, classe, localização, entidade Department / Class / Location / Entity Não -
Agregue os montantes nestas duas tabelas ao nível a que pretende lançar — um lançamento por dia, por documento, por lote — com os passos de tabela habituais (uma tabela dinâmica, uma agregação com agrupamento ou uma junção). O Journal ID é o que associa um conjunto de linhas à respetiva linha de cabeçalho, pelo que deve construí-lo como uma chave única por lançamento de diário e partilhada por todas as linhas que lhe pertencem.
Configurar o passo
Seção intitulada “Configurar o passo”-
Adicione um passo Post NetSuite Journal Entry ao seu fluxo de trabalho.
-
No separador Connection, defina NetSuite Connection com a sua ligação ao NetSuite e escolha um Environment.
-
No separador Data:
- Defina Journal Entry Header Table e Journal Entry Lines Table com as tabelas que criou acima.
- Deixe Test Only Mode assinalado por agora — consulte Pré-visualizar e validar.
- Deixe Continue posting remaining entries if one entry fails assinalado, a menos que prefira que um lote pare logo no primeiro lançamento com erro.
- Deixe Submit Asynchronously desativado, a menos que precise especificamente do caminho de aceitação assíncrona do NetSuite para um lote de grande volume — consulte Submissão assíncrona abaixo.
- Defina Posting Result Table com uma tabela que o PlaidCloud possa criar ou substituir. Vai querer fazê-lo em todas as execuções, não apenas na primeira — consulte Ler a tabela de resultados.
-
No separador Header Map, mapeie as colunas da tabela de cabeçalho para Journal ID, Subsidiary, Data de lançamento e (se existirem) Currency, Memo e External ID. Utilize Header Filters se pretender lançar apenas um subconjunto das linhas de cabeçalho.
-
No separador Line Map, mapeie as colunas da tabela de linhas para Journal ID, Account, Debit, Credit e (se existirem) Memo, Department, Class, Location e Entity. Utilize Line Filters da mesma forma.
Pré-visualizar e validar
Seção intitulada “Pré-visualizar e validar”Com Test Only Mode assinalado, execute o passo. O PlaidCloud constrói cada lançamento de diário a partir dos dados mapeados e executa as mesmas verificações que faria antes de lançar — débitos e créditos equilibrados, campos obrigatórios presentes, data de lançamento válida — sem fazer uma única chamada ao NetSuite. Nada é lançado.
-
Execute o passo (consulte Executar um único passo num fluxo de trabalho).
-
Abra a tabela de resultados e confirme que todas as linhas que esperava lançar apresentam
status = validated. Qualquer linha comerrorindica o Journal ID do lançamento e o problema — normalmente um lançamento desequilibrado, uma Account em falta ou uma Subsidiary ou Data de lançamento em branco. -
Corrija os dados de origem (ou os mapeamentos e filtros) de qualquer linha com
errore execute novamente até o lote ser validado sem erros.
Lançar o lote
Seção intitulada “Lançar o lote”Quando um lote for validado sem erros, desassinale Test Only Mode e execute o passo novamente. Desta vez, o PlaidCloud lança efetivamente cada lançamento validado no NetSuite.
Submissão assíncrona
Seção intitulada “Submissão assíncrona”Submit Asynchronously envia cada lançamento com o cabeçalho de aceitação assíncrona do NetSuite, em vez de aguardar uma criação e leitura síncronas. O NetSuite coloca o lançamento em fila e responde de imediato; o PlaidCloud regista-o como pending, com uma referência de submissão, em vez de posted ou error.
Ler a tabela de resultados
Seção intitulada “Ler a tabela de resultados”A tabela de resultados contém uma linha por lançamento de diário tentado, qualquer que seja o modo em que o passo foi executado:
| Coluna | Descrição |
|---|---|
| journal_id | O Journal ID da sua tabela de cabeçalho. |
| external_id | O ID externo utilizado nesta tentativa de lançamento (ver abaixo). |
| internal_id | O ID interno do NetSuite para o lançamento criado ou a referência de submissão assíncrona enquanto pending. Em branco em Test Only Mode e em caso de erro. |
| status | validated, posted, pending (Submit Asynchronously aceitou o lançamento, mas o NetSuite ainda não o confirmou) ou error. |
| message | Detalhe do erro em error. Em branco em posted/validated. |
Construa os passos seguintes — uma notificação para qualquer linha error, uma junção à tabela de cabeçalho para registar o internal_id — a partir desta tabela e não a partir do estado de execução do próprio passo, uma vez que um lançamento com erro num lote grande não faz falhar o passo inteiro quando Continue posting remaining entries está ativo.
Voltar a executar um lote em segurança
Seção intitulada “Voltar a executar um lote em segurança”Cada lançamento é enviado com um ID externo determinístico, construído a partir do projeto, da ligação, do Journal ID, da Data de lançamento e dos montantes das linhas. Voltar a executar o passo sobre um lançamento inalterado reutiliza esse mesmo ID externo, e o tratamento de IDs externos do próprio NetSuite impede a criação de duplicados — por isso, voltar a executar um fluxo de trabalho após uma falha transitória é seguro para os lançamentos que não foram alterados.
Relacionado
Seção intitulada “Relacionado”- Ligar ao NetSuite — configure a ligação através da qual este passo lança
- Referência de Post NetSuite Journal Entry — referência completa de campos e configuração
- Exemplos de consultas SuiteQL do NetSuite — extraia as subsidiárias, contas e dimensões de que precisa como IDs internos
- Utilização avançada do Data Mapper