Histórico da Página
...
Ambiente: http://ferramentaseai.totvs.com.br:8051
Usuário: RM
Senha: Totvs
Servidor WSO2: http://api.totvs.com.br:8091
Ele também pode ser instalado na pasta RM juntamente com o Monitor. Bin\wwwroot\
JSON DE CONFIGURAÇÃO DE PACOTE - TOP X PROTHEUS:
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "_expandables": null, "integrationId": "52644D93-0D83-49D5-8D38-3B1030CA74A1", "name": "TOTVS Obras e Projetos x BackOffice Protheus", "description": "A gestão dade obra/projetoobras e projetos é feita exclusivamente no TOP (cadastroque doslibera projetosmovimentações e estruturas associadas, cronogramas, necessidades de material, medições de contrato, etc.)de compra e venda para os módulos Protheus responsáveis por todo o controle de BackOffice. ", "documentationUrl": "http://tdn.totvs.com/display/public/integracoes/TOTVS+TOPINT/DI_MANUAL_TOTVS_TOP_BackOffice_Protheus_EAI2.0", "routes": { "items": [ { { "_expandables": null, "transactionsFlow": { "items": [ { "transactionId":"ACCOUNTPAYABLEDOCUMENT", "version":{ "transactionId": "ACCOUNTPAYABLEDOCUMENT", "version": "2.000", "direction": "send" }, { }, { "transactionId": "ACCOUNTRECEIVABLEDOCUMENTTASKCOSTASSIGNMENTS", "version": "21.000", "direction": "send" }, { }, { "transactionId": "CONTRACTACCOUNTRECEIVABLEDOCUMENT", "version": "12.000", "direction": "send" }, { }, { "transactionId": "COSTCENTERBALANCEBASELINEENTRY", "version": "21.000", "direction": "receivedsend" },{ }, { "transactionId": "CURRENCYCONTRACT", "version": "21.001000", "direction": "received" },{ "transactionId":"CURRENCYQUOTATION", "version":"2.001", "direction":"received" },{ "transactionId":"CUSTOMERVENDOR", "version":"2.002", "direction":"both" },{ "transactionId":"INVOICE", "version":"3.007", "direction":"received" },{ "transactionId":"ITEM", "version":"2.001", "direction":"received" }, { "transactionId":"ORDER", "version":"3.002", "direction":"received" }, ] }, "applicationPair":{ "sourceApplication":{ "appId":"P12_1718@PROTHEUS", "name":"PROTHEUS", "description":"PROTHEUS", "productCode":"PROTHEUS", "sourceApplication":"P12_1718", "productVersion":"12.1.17", "isHost":true, "msgValidation":"skip", "portName":"EAISERVICESOAP", "wsdlUrl":"http://187.94.56.206:8051/EAIService/MEX?wsdl", "user":"mestre", "password":"totvs", "monitorUrl":"", "paramEndpoints":{ "general":{ "metadata":"/params/1.0/metadata", "values":"/params/1.0/value" }, "transaction":{ "metadata":"/transactionParams", "values":"/transactionValues" } } }, "destinationApplication":{ "appId":"RM@RM", "name":"RM", "description":"RM", "productCode":"RM", "sourceApplication":"RM", "productVersion":"", "isHost":false, "msgValidation":"skip", "portName":"EAISERVICESOAP", "wsdlUrl":"https://totvslabs.carol.ai:8443/api/v1/totvssm/receiveMessage?WSDL", "user":"totvslabs/rm/[email protected]", "password":"Foobar1!", "monitorUrl":"", "paramEndpoints":{ send" }, { "transactionId": "COSTCENTER", "version": "2.000", "direction": "receive" }, { "transactionId": "CURRENCY", "version": "2.001", "direction": "receive" }, { "transactionId": "CURRENCYQUOTATION", "version": "2.001", "direction": "receive" }, { "transactionId": "CUSTOMERVENDOR", "version": "2.002", "direction": "receive" }, { "transactionId": "DOCUMENTTRACEABILITYORDER", "version": "1.000", "direction": "send" }, { "transactionId": "DOCUMENTTRACEABILITYREQUESTS", "version": "1.000", "direction": "send" }, { "transactionId": "FINANCIALNATURE", "version": "2.000", "direction": "receive" }, { "transactionId": "ITEM", "version": "2.001", "direction": "receive" }, { "transactionId": "ITEMCOSTING", "version": "1.000", "direction": "receive" }, { "transactionId": "ORDER", "version": "3.007", "direction": "send" }, { "transactionId": "PAYMENTCONDITION", "version": "2.000", "direction": "receive" },{ "transactionId": "PROJECT", "version": "2.001", "direction": "send" }, { "transactionId": "REQUEST", "version": "1.009", "direction": "send" }, { "transactionId": "STEPPROJECT", "version": "2.000", "direction": "send" }, { "transactionId": "STOCKGROUP", "version": "1.000", "direction": "receive" }, { "transactionId": "STOCKTURNOVER", "version": "1.001", "direction": "receive" }, { "transactionId": "SUBPROJECT", "version": "2.000", "direction": "send" }, { "transactionId": "TASKPROJECT", "version": "2.000", "direction": "send" }, { "transactionId": "UNITOFMEASURE", "version": "2.000", "direction": "receive" }, { "transactionId": "WAREHOUSE", "version": "1.000", "direction": "receive" }, { "transactionId": "ORDERASSIGNMENTSINFORMATION", "version": "1.000", "direction": "send" } ] }, "applicationPair": { "sourceApplication": { "name": "RM", "description": "RM", "productCode": "RM", "productVersion": "12.1.17", "isHost": true, "paramEndpoints": { "general": { "metadata": "/rm/configurator/v1/PrjConfiguraIntegracaoAPI/Metadata", "values": "/rm/configurator/v1/PrjConfiguraIntegracaoAPI/Values" }, "transaction": { "metadata": "/transactionParams", "values": "/transactionValues" } }, "appId": "RM@RM", "sourceApplication": "RM", "msgValidation": "skip", "portName": "EAISERVICESOAP", "wsdlUrl": "", "user": "mestre", "password": "totvs", "monitorUrl": "" }, "destinationApplication": { "generalname":{ "PROTHEUS", "description": "PROTHEUS", "metadataproductCode":"/params/1.0/metadata "PROTHEUS", "isHost": false, "valuesparamEndpoints":"/params/1.0/value" { },"general": { "transaction":{ "metadata": "/PMSINTEGRATION/configurator/v1/parms/general/TOPXProtheus/metadata", "metadatavalues": "/transactionParams", PMSINTEGRATION/configurator/v1/parms/general/TOPXProtheus/values" }, "valuestransaction":"/transactionValues" { }"metadata": "/transactionParams", }"values": "/transactionValues" } } }, ] } } |
PARÂMETROS DE ADAPTER:
- MASCARA DE PRODUTO
- MASCARA DE CLIENTE FORNECEDOR
- STATUS DE PROJETO
PARÂMETROS GERAIS?
MOEDA? PODE SER UTILIZADA EM MOVIMENTO E TITULO FINANCEIRO?
QUESTÕES A ANALISAR:
- HOJE O CONFIGURADOR SO PERMITE SELECIONAR UM PACOTE POR VEZ.
- COMO OS DESENVOLVEDORES SABERIAM OS ADAPTERS EXISTENTES OU PACOTES, SEM UM FONTE CENTRALIZADOR? PAGINA NO TDN?
PONTOS DE LEGADO:
Vamos descontinuar?
1 - Configurador do TOP deletava triggers Stored
Exemplo: DROP TRIGGER TG_EXCLUIPROJETO
2 - Configurador Criando tabela HCUNDCONV
...
"appId": "P12_1718@PROTHEUS",
"sourceApplication": "P12_1718",
"msgValidation": "skip",
"portName": "EAISERVICESOAP",
"wsdlUrl": "http://187.94.56.206:8051/EAIService/MEX?wsdl",
"user": "mestre",
"password": "totvs",
"monitorUrl": ""
}
}
}
]
}
}
|
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"hasNext": false,
"items": [
{
"name": "STATUSPRJ_EMANDAMENTO",
"label": "Integrar Projetos em andamento?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "STATUSPRJ_PARALISADO",
"label": "Integrar Projetos paralizados?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "STATUSPRJ_CONCLUIDO",
"label": "Integrar Projetos concluídos?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "STATUSPRJ_AEXECUTAR",
"label": "Integrar Projetos a executar?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "STATUSPRJ_EMNEGOCIACAO",
"label": "Integrar Projetos em negociação?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "STATUSPRJ_REVISADO",
"label": "Integrar Projetos revisados?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "STATUSPRJ_CANCELADO",
"label": "Integrar Projetos cancelados?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "PRJ_EXPORTAVALORTRF",
"label": "Exportar valor da tarefa?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "PRJ_AGLUTINAITENSSC",
"label": "Aglutinar itens de SC?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "PRJ_AGLUTINAITENSSA",
"label": "Aglutinar itens de SA?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "PRJ_AGLUTINAITENSPEDIDO",
"label": "Aglutinar itens de Pedidos?",
"datatype": "combo",
"options": [
{
"value": "True",
"label": "Sim"
},
{
"value": "False",
"label": "Não"
}
]
},
{
"name": "PRODUTOPADRAO",
"label": "Produto Padrão",
"datatype": "text",
"options": null
},
{
"name": "MOEDAPADRAO",
"label": "Moeda Padrão",
"datatype": "text",
"options": null
},
{
"name": "CONSWSAPROPRIACAOPROTHEUS",
"label": "Utilizar novo modelo de Apropriações de Custo?",
"datatype": "combo",
"options": [
{
"value": "1",
"label": "Sim"
},
{
"value": "0",
"label": "Não"
}
]
},
{
"name": "PRJ_URLAPIRESTPROTHEUS",
"label": "URL da API de Apropriação Protheus",
"datatype": "text",
"options": null
},
{
"name": "PRJ_USRAPIRESTPROTHEUS",
"label": "Usuário de autenticação Protheus",
"datatype": "text",
"options": null
},
{
"name": "PRJ_PASSAPIRESTPROTHEUS",
"label": "Senha de autenticação Protheus",
"datatype": "text",
"options": null
}
]
} |
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"hasNext": false,
"items": [
{
"name": "STATUSPRJ_EMANDAMENTO",
"value": "True"
},
{
"name": "STATUSPRJ_PARALISADO",
"value": "True"
},
{
"name": "STATUSPRJ_CONCLUIDO",
"value": "False"
},
{
"name": "STATUSPRJ_AEXECUTAR",
"value": "True"
},
{
"name": "STATUSPRJ_EMNEGOCIACAO",
"value": "True"
},
{
"name": "STATUSPRJ_REVISADO",
"value": "True"
},
{
"name": "STATUSPRJ_CANCELADO",
"value": "True"
},
{
"name": "PRJ_EXPORTAVALORTRF",
"value": "False"
},
{
"name": "PRJ_AGLUTINAITENSSC",
"value": "True"
},
{
"name": "PRJ_AGLUTINAITENSSA",
"value": "True"
},
{
"name": "PRJ_AGLUTINAITENSPEDIDO",
"value": "True"
},
{
"name": "PRODUTOPADRAO",
"value": ""
},
{
"name": "MOEDAPADRAO",
"value": ""
},
{
"name": "CONSWSAPROPRIACAOPROTHEUS",
"value": "0"
},
{
"name": "PRJ_URLAPIRESTPROTHEUS",
"value": "HTTP://[Server]:[Port]"
},
{
"name": "PRJ_USRAPIRESTPROTHEUS",
"value": "mestre"
},
{
"name": "PRJ_PASSAPIRESTPROTHEUS",
"value": "totvs"
}
]
} |
Parâmetros de Adapters
- Mascara de produto - parametro de estoque
- Máscara de cliente fornecedor - parâmetro de financeiro
- Status de projeto - parâmetro de gestão de projetos
Questões a analisar
- Hoje o configurador so permite selecionar um pacote por vez, mesmo o cliente necessitando fazer a configuração de múltiplos.
- Como os desenvolvedores saberiam os adapters existentes ou pacotes sem um fonte centralizador? Página no tdn?
- As informações presentes no JSon não deveriam ser adicionados em uma base de dados que permita consulta e transformados em JSon somente no momento da consulta?
- Como os desenvolvedores farão para montar um ambiente de simulação, onde eles testem os seus JSons?
- Devemos disponibilizar um Mock para usarem?
- No JASON de metadados teremos a tag para bloquear a edição?
- JSON de configuração ficara no repositorio totvsmsg? se sim nem todos tem acesso. Se sim, em qual pasta?
- Versão da mensagem configurada conforme a versão dos produtos.
- Como configurar um parâmetro RM com base em uma configuração do Protheus?
- Ex.: Para saber se devemos configurar o Produto como global devemos consultar no Protheus qual o compartilhamento do mesmo.
- Para viabilizar este comportamento é necessário já possuir o caminho do URL do sistema de destino, talvez pre-configurando o par de Apps antes da configuração do pacote.
- Ex.: Para saber se devemos configurar o Produto como global devemos consultar no Protheus qual o compartilhamento do mesmo.
- Como será informado para as APIs de transaction qual o tipo de pacote (sou backoffice ou vertical?) e a versão do produto e da mensagem que será aplicada??
- Isso será informado na URL? Esta solução não tem boa manutenção, tendo que alterar todos os JSons caso precise ser passado novo parametro e deverá passar queryparams no método POST.
Processos Especificos da Integração do TOP
1 - Configurador do TOP deletava triggers Stored;
Exemplo: DROP TRIGGER TG_EXCLUIPROJETO - O EAI 1.0 JÁ FAZ ISTO E O EAI 2.0 SO É ADICIONADO A PARTIR DO EAI 1.0
2 - Configurador Criando tabela HCUNDCONV - COLOCAR;
3 - Triggers de atualização na inclusão de coligada (configuração de movimentos, etc). Esta atualização é compartilhada com o TIN. A procedure acoplada a trigger é executada no momento da configuração;
4 - Triggers no cadastro de usuários (permissão em movimentos);
5 - Como proceder com os parâmetros de movimentos;
6 - Configurador do TOP Insere integração (GINTEGRACAO) entre TOP com Nucleus e Financeiro com Nucleus;
7 - Configurador altera vários parâmetros gerais do Nucleus, parâmetros de produtos, do Liber para utilizar a nutereza;
8 - Configurador cria ou altera tipo de documento de provisão no Financeiro.
9 - Configurador ajusta contratos;
10 - Configurador ajustas projetos revisão múltiplas;
Parâmetros Integração do TOP
Aplicação | Tabela | Parâmetro | Tipo | Valor Defalut | Classificação | Condição | Observação |
Integração Cli/For | HCPARAMETRO | CLIFORAUTOINC | Boolean | False | Integração | ||
HCPARAMETRO | SIZECODCFO | Int | Integração | ||||
Integração Centro Custos | HCPARAMETRO | CENTROCUSTOAUTOINC | Boolean | False | Integração | ||
Integração Loca Estoque | HCPARAMETRO | MASCARACODLOC | String | Integração | |||
Integração Cotação Moedas | HCPARAMETROS | MOEDAPADRAO | String | Integração | Utilizado no recebimento da Cotação de Moedas como moeda de referência | ||
Integração Projetos | HCPARAMETROS | STATUSPRJ_EMANDAMENTO | Boolean | True | Adapter | Envia | |
HCPARAMETROS | STATUSPRJ_PARALISADO | Boolean | True | Adapter | |||
HCPARAMETROS | STATUSPRJ_AEXECUTAR | Boolean | True | Adapter | |||
HCPARAMETROS | STATUSPRJ_EMNEGOCIACAO | Boolean | True | Adapter | |||
HCPARAMETROS | STATUSPRJ_REVISADO | Boolean | True | Adapter | |||
HCPARAMETROS | STATUSPRJ_CANCELADO | Boolean | True | Adapter | |||
Integração Tarefas | HCPARAMETROS | PRJ_EXPORTAVALORTRF | Boolean | False | Adapter | Envia | |
Integração Solicitações | HCPARAMETROS | PRJ_AGLUTINAITENSSC | Boolean | True | Integração | ||
HCPARAMETROS | PRJ_AGLUTINAITENSPEDIDO | Boolean | True | Integração | |||
HCPARAMETROS | PRJ_AGLUTINAITENSSA | Boolean | True | Integração | |||
Cliente / Fornecedor | FPARAM | 1001 | String | ##;L###### | Adapter | Recebe | |
FPARAM | String | ########## | Adapter | Se CLIFORAUTOINC = True e SIZECODCFO não definido ou 0(zero) | |||
FPARAM | String | Replica('#', SIZECODCFO) | Adapter | Se CLIFORAUTOINC = True e SIZECODCFO maior que 0(zero) | |||
FPARAM | 1030 | Int | 0 | Adapter | Recebe | Se CLIFORAUTOINC = True adiciona 1 | |
Centro de Custos | GCCUPAR | MASCARACC | String | Adapter | Recebe | Se CENTROCUSTOAUTOINC = False adiciona a máscara em branco. | |
GCCUPAR | String | ####### | Adapter | Se CENTROCUSTOAUTOINC = True | |||
GCCUPAR | LOOKUPTODOS | Boolean | F | Adapter | |||
FPARAM | 1050 | Int | 3 | Adapter | Rateio | ||
FPARAM | 67 | Int | 0 | Adapter | Informar Conta/Caixa na Inclusão | ||
FPARAM | 83 | Int | 0 | Adapter | Default Contábil do Lançamento | ||
Local de Estoque | TPAR | MASCLOCAL | String | QQQQQQQ | Adapter | Recebe | Ajusta se houver valor informar em MASCARACODLOC |
Solicitações e Pedidos | MPARAMETRO | AGRUPARITENSMOVIMENTOPORPRODUTO | Int | 0 | Adapter | Envia | Este parâmetro é marcado o valor string com 1 |
MPARAMETRO | INTEGRADONUCLEUS | Int | 1 | Adapter | Este parâmetro é marcado o valor string com 1 | ||
MPARAMETRO | UTILIZARATEIOCC | Int | 1 | Adapter | Utiliza movimento de cotação | ||
MPARAMETRO | USATIPOMOVNUCLEUSCOTACAO | Int | 0 | Adapter | Utiliza movimento de histórico | ||
MPARAMETRO | USANUCLEUSTIPOMOVHISTORICO | Int | 1 | Adapter | Utiliza movimento de solicitação de compras | ||
MPARAMETRO | USANUCLEUSTIPOMOVCOMPRA2 | Int | 1 | Adapter | Descrição do parâmetro | ||
MPARAMETRO | NOMENUCLEUSTIPOMOVREQ | String | Solicitação de Armazém | Adapter | Descrição do parâmetro | ||
MPARAMETRO | NOMENUCLEUSTIPOMOVCOMPRA2 | String | Solicitação de Compra | Adapter | Desativa o rateiro de tarefas na geração de todos os pedidos | ||
MPARAMETRO | AGRUPARITENSMOVIMENTOPORPRODUTO | Int | 1 | Adapter | Desativa solicitação de compras em todos os projetos | ||
MPARAMETRO | NAOUSANUCLEUSTIPOMOVCOMPRA | Int | 0 | Adapter | Tipo de movimento para solicitação de armazém | ||
MPARAMETRO | TIPOMOVESTOQUE | String | 1.1.01 | Adapter | Código do movimento de solicitação de compras | ||
MPARAMETRO | NUCLEUSTIPOMOVREQ | String | 1.1.01 | Adapter | Código do Movimento de histórico de solicitação de compras | ||
MPARAMETRO | NUCLEUSTIPOMOVHISTORICO | String | 1.1.02 | Adapter | Movimento de solicitação de compra | ||
MPARAMETRO | NUCLEUSTIPOMOVCOMPRA2 | String | 1.1.03 | Adapter | Código do movimento de solicitação de cotação | ||
MPARAMETRO | TIPOMOVNUCLEUSCOTACAO | String | 1.1.04 | Adapter | Código do movimento de adiantamentos a pagar | ||
MPARAMETRO | NUCLEUSTIPOMOVADIA | String | 1.2.02 | Adapter | Tipo de movimento para título a receber | ||
MPARAMETRO | NUCLEUSTIPOMOVADIACNTREC | String | 2.2.03 | Adapter | Inibe o envio de obra e etapas no pedido extra | ||
MPARAMETRO | EXIBEETAPAPEDIDOEXTRA | Int | 0 | Adapter | |||
Financeiro | MPARAMETRO | FLUXUSTIPODOCLINHABASE | String | PR | Adapter | Envia | Tipo de documento de lançamentos de linha base |
MPARAMETRO | FLUXUSTIPODOCLINHABASEEDITAVEL | Int | 0 | Adapter | Tipo de documento de linha base não pode ser editado | ||
MPARAMETRO | FLUXUSTIPODOCSALDO | String | PR | Adapter | Tipo de documento de saldo | ||
MPARAMETRO | FLUXUSTIPODOCSALDOEDITAVEL | Int | 0 | Adapter | Tipo de documento de saldo não pode ser editado |