Ir para o conteúdo principal

Carga de tabelas personalizadas

Carga de Tabelas Personalizadas

Com a disponibilização da funcionalidade de execução de relatórios no app Android,Android surgiudo aCRM necessidadeOne, deé possível enviar dados adicionais para o banco de dadoslocal do dispositivodispositivo. informações que possam ser usadas adicionalmente nestas consultas.

Para atender a esta necessidade,isso, foram criadas 10 tabelas noespecíficas bancocom deestrutura dadospadronizada.

do

Estrutura das Tabelas

O app Android,Android compossui os10 seguintestabelas nomes:disponíveis:

  • Tabela01
  • Tabela02
  • a
  • Tabela03
  • Tabela04
  • Tabela05
  • Tabela06
  • Tabela07
  • Tabela08
  • Tabela09
  • Tabela10

 

Cada tabela écontém composta10 campos de 10 campos, com as seguintes descrições:texto:

  • Campo01
  • Campo02
  • a
  • Campo03
  • Campo04
  • Campo05
  • Campo06
  • Campo07
  • Campo08
  • Campo09
  • Campo10

 Exemplo visual da tabela

Um

⚠️ exemploTodos os campos são do tipo TEXT (SQLite) e, apesar de representaçãosuportarem visualgrandes das tabelas, segue na imagem abaixo:

Uma consulta em linguagem SQL deverá ser desenvolvida, observando as particularidadesvolumes de escritadados, paraé Microsoftrecomendável SQLmanter Serveros ouconteúdos HANA,leves.

de

 acordoBoas comPráticas oao tipoCriar de banco de dados utilizado pelo SAP Business One da empresa.

IMPORTANTE:

Consultas

  • TodosEvite usar * no SELECT: selecione somente os 10 campos foram criados no SQLite com o tipo TEXT, onde segundo a documentação suportam uma quantidade ilimitada de caracteres, contudo neste sentido recomendamos que enviemdeseja para cada campo a menor quantidade possível de informações, evitando o uso excessivo de informações armazenadas no dispositivo, assim como reduzir o uso de dados para envio das informações ao dispositivo.expor.
  • EvitarEvite ogerar usomuitas de * no SELECT, levando em consideração o tempo de processamento no banco de dados vs. a limitação de 10 colunas para envio, desta forma em seu SELECT informe o nome das 10 colunas que serão expostadas.
  • Evitar consultas que gerem um número elevado de linhas, pense em consultas comlinhas: limite deos informação, comodados, por exemplo de um período curto de dataexemplo, últimos 30 dias.
  • Em um SELECT hipotético:
    SELECT A, B, C, D, E, F, G, H, I, J, K, L FROM TAB
    onde cada letra representa o nome de uma coluna, estão sendo selecionadas 12 colunas, considerando que Faça tabelaformatações e concatenações no dispositivolado teráservidor, não no máximo 10 colunas, dispense informar as colunas excedentes, como por exemplo K e L.app.
  • Envie as informações de forma formatada, faça todas as conversões necessárias do lado do servidor, evitando processamento do lado do dispositivo (app Android).
  • Aproveite melhorOtimize o uso de cada campo, concatenandodos campos emunindo sua consulta e ocupando umdados únicoteis camponum namesmo tabela do dispositivo, lembre-se que está limitado a 10 colunas por linha/registro.campo.

Configurando

no CRM One

Para realizarconfigurar a configuraçãocarga de “Cargadados:

de
    tabelas personalizadas” para
  1. Acesse o app Android, os usuários com perfil de administração do CRM One deverão acessar, dentro do SAP Business One com o Add-on CRM One eminiciado.
  2. execução:
    >
  3. Menu: Módulos > CRM One > Configurações > Configurações gerais

Configurações gerais no SAP

    Ao

  1. Acesse abrira oaba: formulário de Configurações gerais, acessar:
    > Extensão CRM One > Sincronização app mobile
    clicar
  2. no
  3. Clique botãoem Carga de tabelas personalizadas”.personalizadas

Tela de carga de tabelas

 

No formulário de “Cadastro deda consulta para carga de tabelas personalizadas”:

Consulta

  1. MarcarMarque a opção “Ativo”Ativo.
  2. para
  3. Insira uma descrição da finalidade.
  4. Escolha a tabela destino (Tabela01 a Tabela10).
  5. Defina o cadastro estar disponível para uso no app Android.
  6. Informar uma “Descrição” para a finalidadetipo de uso deste cadastro.
  7. Em “Tabela” selecionar em qual tabela o resultado da consulta será armazenado no dispositivo.
  8. Em “Tipo sincronização app” escolha entre as opções:o:
    • E - Excluir dados anteriores
      Utilizando
      : esta opção, durante cada sincronização das tabelas no app Android, todosremove os registrodados serão apagadosantigos antes de receberinserir asos novas informações.novos.
    • I - Incrementar
      Todas
      : asadiciona informações recebidas em sincronizações anteriores do app Android serão mantidas eos novos dados serãosem adicionadosapagar emos novas linhas da tabela.anteriores.
  9. EmInsira “Consultasua consulta SQL/HanaHANA (ximo de 10 colunas)”, informar a sua consulta personlizada..


Lembrete:Consulta SQL cadastrada

Na
💡 elaboraçãoVocê dapode usar variáveis como #UserIDCRM# ou #SlpCodeCRM# para personalizar dinamicamente sua consulta poderão ser usadas “variáveis” que serão convertidas na execução.

consulta.

Cenário de exemploExemplo: Clientes sem Compras Recentes

UmaObjetivo: empresacarregar usuária do CRM One App Android deseja customizarpara o Dashboardapp Insights“, nesta customização o objetivo é saber quais sãoAndroid os clientes que não realizaram compras nos últimos 30 dias.

No SAP Business One as “Vendas” são oficializadas/faturadas no documento “Nota fiscal de saída”, que é o correspondente da tabela [OINV]. Porém esta não é uma tabela sincronizada do SAP Business One para o App CRM One (referindo-se a versão 2020.07.1.001 do App CRM One Android).

Para poder realizar esta customização será necessário enviar para uma tabela customizada o código dos clientes que compraram nos últimos 30 dias.dias.

A consulta/query em

SQL para Microsoft SQL Server pode ser representada por:

Server:

SELECT DISTINCT T0.[CardCode] 
FROM OINV T0 
WHERE T0.[DocDate] >= DATEADD(DAY,-30,GETDATE())

A consulta/query em SQL para

SAP HANA DB pode ser representada por:

HANA:

SELECT DISTINCT T0."CardCode" 
FROM OINV T0 
WHERE T0."DocDate" >= ADD_DAYS(NOW(), -30);

IMPORTANTE:

⚠️ AReforce consultaa de exemplo pode requerer alguma condiçpersonalização adicional,com observem bem o número de registros gerados e as informações,variáveis para evitar a carga de informaçõesdados desnecessáriasrios para o dispositivo dea todos os usuários,rios.
ou seja, avalie usar uma condição WHERE com as variáveis #UserIDCRM# ou #SlpCodeCRM#.

Resultado visual no app

 

ComFinalizando a consultaConfiguração

elaborada,
    acessar
  1. Acesse onovamente: SAP Business One:

    > Módulos > CRM One > Configurações > Configurações gerais
    Ao abrir o formulário de Configurações gerais, acessar:
    > Extensão CRM One > Sincronização app mobile
    clicar

  2. no
  3. Clique botãoem Carga de tabelas personalizadas”.

    1. Marcar “Ativo”.personalizadas
    2. PreencherConfigure: a
      • Ativo: marcado
      • Descrição” com:o: Clientes faturados no mês.s
      • SelecionarTabela: em “Tabela” a opção “Tabela10”.Tabela10
      • EmTipo: “Tipo sincronização app” selecionar “Excluir dados anteriores”.anteriores
      • EmConsulta: “Consultainsira SQL/Hana (Máximo 10 colunas)” informar a consulta SQL de acordo comconforme o tipo de banco deutilizado
      • dados
      da empresa.

    Ao realizar a sincronização de dados do aplicativo Android o resultado da consulta será carregado para a respectiva tabela configurada, neste exemplo na “Tabela10”.Configuração final

    Pre requisitos:

    Pré-requisitos

    • CRM One Desktop Add-on versão 2020.07.6.002 ou superior
    • App Android versão 2020.07.1.001 ou superior