Ir para o conteúdo principal

Carga de tabelas personalizadas

Com a disponibilização da funcionalidade de execução de relatórios no app Android, surgiu a necessidade de enviar para o banco de dados do dispositivo informações que possam ser usadas adicionalmente nestas consultas.

Para atender a esta necessidade, foram criadas 10 tabelas no banco de dados do app Android:

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

Cada tabela é composta por 10 campos de texto:

  • Campo01
  • Campo02
  • Campo03
  • Campo04
  • Campo05
  • Campo06
  • Campo07
  • Campo08
  • Campo09
  • Campo10
Exemplo estrutura tabela

Recomendações Importantes:

  • Evite uso de * em SELECTs. Especifique apenas os 10 campos necessários.
  • Limite a quantidade de dados: evite milhões de linhas. Use filtros como "últimos 30 dias".
  • Formate os dados no servidor. O app Android não deve realizar conversões.
  • Concatenar dados quando possível: use melhor os 10 campos disponíveis.

Como configurar

No SAP Business One com o Add-on CRM One em execução, acesse:

  • Módulos
  • CRM One
  • Configurações
  • Configurações gerais
Configurações gerais

Acesse: Extensão CRM One > Sincronização app mobile e clique no botão “Carga de tabelas personalizadas”.

Formulário de carga

Preenchimento dos campos:

  1. Marcar a opção “Ativo”.
  2. Informar uma “Descrição” do uso.
  3. Selecionar a “Tabela” desejada (ex: Tabela10).
  4. Selecionar “Tipo sincronização app”:
    • E – Excluir dados anteriores
    • I – Incrementar
  5. Inserir a consulta SQL (máximo 10 colunas).
Consulta SQL

Cenário de exemplo

Uma empresa deseja saber quais clientes não compraram nos últimos 30 dias. As compras são representadas pela tabela OINV, que não é sincronizada com o app.

Consulta SQL para SQL Server:

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

Consulta SQL para SAP HANA:

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

Importante: Utilize filtros como #UserIDCRM# ou #SlpCodeCRM# para evitar excesso de dados.

Exemplo consulta pronta

Resumo da configuração:

  1. Marcar “Ativo”
  2. Descrição: Clientes faturados no mês
  3. Tabela: Tabela10
  4. Tipo sincronização: Excluir dados anteriores
  5. Consulta SQL: (conforme tipo de banco)
Resumo configuração

Pré-requisitos:

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