
- Post History
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
on 04-16-2022 06:58 AM
Para garantir a performance de uma instância, a ServiceNow define uma série de propriedades de sistema para impor limites em algumas operações.
Uma operação que certamente é capaz de causar lentidão para os usuários é a importação de um número muito grande de registros. Nesse artigo vamos analisar como importar um arquivo CSV para a sua tabela e também como é possível alterar temporariamente esse limite.
Para início de conversa precisamos ter em mãos um arquivo com 100.000 registros a ser importado para uma tabela no nosso projeto. Clique aqui para fazer o download de um CSV contendo esses registros com os campos nome e email.
Criando uma tabela para o carregamento de dados
Dentro do seu Aplicativo crie uma tabela com apenas dois campos: nome e email.
Para carregar os dados do arquivo CSV para a nossa tabela de destino, há uma sequência lógica a ser executada:
1) Carregar o arquivo para uma tabela Stage (temporária);
2) Criar um Transform Map para mapear os campos do arquivo com os campos da tabela target (destino);
3) Executar a transformação.
1) Carregar o arquivo para uma tabela Stage (temporária)
A primeira coisa a ser feita é clicar em System Import Sets > Load Data
Aqui é basicamente selecionar:
- Create table
- Preencher o nome da tabela temporária no campo Label
- Em Source of the import, selecione File
- No campo File clique em [Choose File] para selecionar o arquivo CSV que contém os 100.000 registros
- Clique em [Submit]
2) Criar um Transform Map para mapear os campos do arquivo com os campos da tabela target (destino)
Após o passo 1 você precisa aguardar até a conclusão da importação de dados. Quando a importação terminar você verá uma tela como a seguir:
Clique em [Create transform map]
Em Name defina um nome para esse Mapa de Transformação;
Em Source table informe a tabela Temporária já criada;
Em Target table informe a tabela oficial criada dentro do Studio para receber os dados;
Desmarque "Run business rules";
Antes de clicar em Submit, clique em [Mapping Assist] para relacionar os campos.
Utilize as seta Add > da esquerda para colocar o campo nome da tabela de relacionamento. Depois utilize Add < da direita para colocar o campo nome da tabela Target na tabela de relacionamento. Assim mapeamos que o campo nome da tabela temporária será gravado no campo nome da tabela oficial.
Repita o processo para o campo email e depois clique em [Save]
3) Executar a transformação.
Nessa tela basta clicar em [Transform]
Coloque o Transform Map para a tabela da direita e clique em [Transform]
Ao término do processo, clique em [Transform history] para conferir os detalhes do processamento.
Confira o total de registros inseridos, atualizados, etc.
Consultando a tabela oficial é possível ver os registros inseridos.
Instâncias corporativas geralmente possuem limites mais rígidos com relação ao número máximo de registros importados.
Conforme documentação oficial, criando o parâmetro glide.ui.export.limit na tabela sys_properties é possível aumentar esse limite. A ServiceNow cria propriedades por um motivo, então tenha cuidado ao alterar esses parâmetros.
- 571 Views