Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

 

Especificação

Produto

Datasul

Módulo

Pedidos

Segmento Executor

Manufatura

Projeto1

PDRDL-1871

IRM1

PCREQ-115

Requisito1

PCREQ-7370

Subtarefa1

 

Chamado2

 

Release de Entrega Planejada

 

Réplica

 

País

( X ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

<Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>.

   Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos). 

Objetivo

Possibilitar a integração do ERP do Datasul com o produto Samsung Visibility. O ERP deverá fornecer os dados necessários para o produto Samsung Visibility para que este possa apresentar em sua solução a evolução e realização de cada etapa do processo de atendimento de um pedido de venda. A integração deve ser realizada por intermédio de arquivo XML, utilizando o Web Service da solução Samsung Visibility, sem transformação de mensagens e sem utilização de sistemas intermediários (TOTVS EAI, TOTVS ESB, etc.).

Definição da Regra de Negócio

 

Rotina

Tipo de Operação

Opção de Menu

Regras de Negócio

BODI159CAL.I03Alteração  
BODI317PD.M07Alteração  
CDAPI090A.I1Alteração  

 

Camada de integração (envio de dados do Datasul para o SCI)

A integração entre os programas do Datasul e o Samsung Visibility será intermediada por uma API (proxy) que terá como objetivos: a) verificar quais integrações com sistemas externos devem ser realizadas; b) acessar os parâmetros da integração; c) conectar o Web Service do sistema externo; d) montar e enviar a mensagem de integração (XML) e arquivos de log; e) enviar avisos eletrônicos e gerar histórico dos erros de conexão com o Web Service.

Atualmente a API suporta a integração com o Cockpit Logístico mas sua estrutura admite a implementação de outras integrações sem impacto no legado. Deste modo esta API também será utilizada na integração do Datasul com o produto Samsung Visibility.

Para cada argumento (parâmetro) que a API possa receber ou enviar aos programas chamadores deve ser disponibilizada uma procedure; dessa forma a procedure de execução da integração não terá argumentos (parâmetros) e as eventuais evoluções da API não causarão impacto no legado (a assinatura da procedure principal nunca será alterada).

 

Proxy de Integração via WS (CDAPI090)

Será utilizada a mesma API responsável por toda a integração com Samsung.

Abaixo segue detalhamento de como serão enviadas as informações para o Track Point 3 e 4 (Financial e Delivery Creation). Será complementada a include cdp/cdapi090a.i (criada no requisito PCREQ-7369) para padronizar a execução do proxy nos programas chamadores.

Exemplo de linha de comando: {cdp/cdapi090a.i "INTEGRACAO" "OPERACAO" "TABELA" "TRACKING POINT"},

Onde:

INTEGRACAO à é o código do sistema com o qual a integração ocorrerá. ex. SCI;

OPERACAO à é o código da operação efetuada pelo programa chamador. ex. UPSERT;

TABELA à é o código da entidade de dados que está sendo integrada. ex. PED-VENDA;

TRACKING POINT à é o momento em que a mensagem está sendo enviada. No caso deste requisito serão enviadas as opções abaixo:

TP3 – Financial;

TP4 – Delivery Creation

 

Programas de Envio do Tracking Point 3 - Comercial Evaluation

Alterar os programas abaixo listados, incluindo a chamada da include {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP2"}:

  • BODI159COM.P Incluir após a linha 1240 a verificação em qual Tracking Point está o pedido e incluir a chamada da include.

Mensagem Tracking Point 3

  • Exemplo Mensagem XML

    <tracking>

            <refNo>XXXXXX</refNo>

            <refType>XXXXXX</refType>

            <trackingCode>XXXXXX</trackingCode>

            <checkpointCode>XXXXXX</checkpointCode>

            <trackingDate>XXXXXX</trackingDate>

            <remarks>XXXXXX</remarks>

            <longitude>XXXXXX</longitude>

            <latitude>XXXXXX</latitude>

    </tracking>

  • Mensagem Tracking Point 3
    • Exemplo Mensagem XML

      <tracking>

              <refNo>XXXXXX</refNo>

              <refType>XXXXXX</refType>

              <trackingCode>XXXXXX</trackingCode>

              <checkpointCode>XXXXXX</checkpointCode>

              <trackingDate>XXXXXX</trackingDate>

              <remarks>XXXXXX</remarks>

              <longitude>XXXXXX</longitude>

              <latitude>XXXXXX</latitude>

      </tracking>
                  

    • Definição preenchimento XML

Campo

TAG Pai

Tipo

Ocorrência

Tamanho

Descrição

tracking
 
XML
1-50
 
TAG Principal

Tracking

Campo

TAG Pai

Tipo

Ocorrência

Tamanho

Descrição

refNo
tracking
Char
1-1
70
ped-venda.nome-abrev + ped-venda.nr-pedcli
refType
tracking
Number
1-1
2
1 = Sales Order
trackingCode
tracking
Char
1-1
10
TP1010-10
checkpointCode
tracking
Char
1-1
10
TP1010-10
trackingDate
tracking
Date & Time
1-1
yyyymmddThh24miss
SUBSTRING(ped-venda.char-1,95,8) + "T" + SUBSTRING(ped-venda.char-1,103,6)
remarks
tracking
Char
1-1
100
Em branco
longitude
tracking
Number
1-1
10,6
Não será enviado
latitude
tracking
Number
1-1
10,6
Não será enviado

Programas de Envio do Tracking Point 4

Alterar os programas abaixo listados, incluindo a chamada das includes conforme segue {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP4"} e {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP4"}:

  • BODI159CAL.I03
    • Incluir após a linha 198 as chamadas das includes com a verificação se o pedido já foi enviado para o SCI pela verificação do tracking point atual gravado em (ped-venda.char-1,93,1) e se está liberado para faturamento
      •         IF ped-venda.dsp-pre-fat THEN DO:

                    IF SUBSTRING(ped-venda.char-1,93,1) = "" THEN DO:

                        {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP1"}

                        {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP2"}

                        {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP3"}

                        {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP4"}

                    END.

                    ELSE DO:

                        IF SUBSTRING(ped-venda.char-1,93,1) = "3"

                        OR SUBSTRING(ped-venda.char-1,93,1) = "4" THEN DO:

                            {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP4"}

                            {cdp/cdapi090a.i "SCI" "CREATE" "PED-VENDA" "TP2"}

                        END.

                        ELSE DO:

                            {cdp/cdapi090a.i "SCI" "UPDATE" "PED-VENDA" "TP4"}

                            message "2" avail ped-venda view-as alert-box.

                            {cdp/cdapi090a.i "SCI" "UPDATE" "PED-VENDA" "TP2"}

                        END.

                    END.

                END.

                ELSE DO:

                    IF SUBSTRING(ped-venda.char-1,93,1) = "3"

                    OR SUBSTRING(ped-venda.char-1,93,1) = "4" THEN DO:

                        {cdp/cdapi090a.i "SCI" "DELETE" "PED-VENDA" "TP4"}

                        {cdp/cdapi090a.i "SCI" "DELETE" "PED-VENDA" "TP2"}

                    END.

                END.

                      

  • BODI317PD.M07

    • Incluir após a linha 327  a chamada da include verificando se o pedido está com status de Atendido Total e passando TP3 no parâmetro de Tracking Point

      • {cdp/cdapi090a.i "SCI" "UPDATE" "PED-VENDA" "TP4"}
         

  • CDAPI090A.I1
    • Incluir o bloco de envio da mensagem do TP4

  • Mensagem Tracking Point 4
    • Exemplo Mensagem XML

      <tracking>

              <refNo>XXXXXX</refNo>

              <refType>XXXXXX</refType>

              <trackingCode>XXXXXX</trackingCode>

              <checkpointCode>XXXXXX</checkpointCode>

              <trackingDate>XXXXXX</trackingDate>

              <remarks>XXXXXX</remarks>

              <longitude>XXXXXX</longitude>

              <latitude>XXXXXX</latitude>

      </tracking>
                  

    • Definição preenchimento XML

Campo

TAG Pai

Tipo

Ocorrência

Tamanho

Descrição

tracking
 
XML
1-50
 
TAG Principal

Tracking

Campo

TAG Pai

Tipo

Ocorrência

Tamanho

Descrição

refNo
tracking
Char
1-1
70
ped-venda.nome-abrev + ped-venda.nr-pedcli
refType
tracking
Number
1-1
2
1 = Sales Order
trackingCode
tracking
Char
1-1
10
TP1010-15
checkpointCode
tracking
Char
1-1
10
TP1010-15
trackingDate
tracking
Date & Time
1-1
yyyymmddThh24miss
SUBSTRING(ped-venda.char-1,95,8) + "T" + SUBSTRING(ped-venda.char-1,103,6)
remarks
tracking
Char
1-1
100
Em branco
longitude
tracking
Number
1-1
10,6
Não será enviado
latitude
tracking
Number
1-1
10,6
Não será enviado

Protótipo de Tela

 Não se aplica

Fluxo do Processo

 Não se aplica

Dicionário de Dados

 Não se aplica 

Grupo de Perguntas

Não se aplica 

Consulta Padrão

Não se aplica

Estrutura de Menu

Não se aplica

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))