Páginas filhas
  • Configurador EAI 2.0

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagejs
titleJSon JSON Configuração
collapsetrue
{
	"_expandables": null,
	"integrationId": "52644D93-0D83-49D5-8D38-3B1030CA74A1",
	"name": "TOTVS Obras e Projetos x BackOffice Protheus",
	"description": "********* Descrição da Integração*********",
	"documentationUrl": "http://tdn.totvs.com/display/public/integracoes/TOTVS+TOP",
	"routes": {
		"items": [{
			"_expandables": null,
			"transactionsFlow": {
				"items": [{
					"transactionId": "ACCOUNTPAYABLEDOCUMENT",
					"version": "2.000",
					"direction": "send"
				},
				{
					"transactionId": "TASKCOSTASSIGNMENTS",
					"version": "1.000",
					"direction": "send"
				},
				{
					"transactionId": "ACCOUNTRECEIVABLEDOCUMENT",
					"version": "2.000",
					"direction": "send"
				},
				{
					"transactionId": "BALANCEBASELINEENTRY",
					"version": "1.000",
					"direction": "send"
				},
				{
					"transactionId": "CONTRACT",
					"version": "1.000",
					"direction": "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.005",
					"direction": "send"
				},
				{
					"transactionId": "PAYMENTCONDITION",
					"version": "2.000",
					"direction": "receive"
				},
				{
					"transactionId": "PROJECT",
					"version": "2.000",
					"direction": "send"
				},
				{
					"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": "/params/1.0/metadata",
							"values": "/params/1.0/value"
						},
						"transaction": {
							"metadata": "/transactionParams",
							"values": "/transactionValues"
						}
					},
					
					
					"appId": "RM@RM",
					"sourceApplication": "RM",					
					"msgValidation": "skip",
					"portName": "EAISERVICESOAP",
					"wsdlUrl": "https://totvslabs.carol.ai:8443/api/v1/totvssm/receiveMessage?WSDL",
					"user": "totvslabs/rm/[email protected]",
					"password": "Foobar1!",
					"monitorUrl": ""
				},
				"destinationApplication": {
					"name": "PROTHEUS",
					"description": "PROTHEUS",
					"productCode": "PROTHEUS",
					"productVersion": "12.1.17",
					"isHost": false,
					"paramEndpoints": {
						"general": {
							"metadata": "/params/1.0/metadata",
							"values": "/params/1.0/value"
						},
						"transaction": {
							"metadata": "/transactionParams",
							"values": "/transactionValues"
						}
					},	
					
					
					"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
languagexml
titleJASON JSON Metadados dos Parâmetros
collapsetrue
{
	"hasNext": false,
	"items": [
	{
		"_expandables": null,
		"name": "param1",
		"label": "Agrupar Itens",
		"datatype": "combo",
		"options": [{
			"value": "1.01",
			"label": "Solicitação de Compra"
		},
		{
			"value": "1.02",
			"label": "Pedido de Compra"
		},
		{
			"value": "1.03",
			"label": "Ordem de Compra"
		}]
	},
	{
		"name": "param2",
		"label": "Mascara do Fornecedor",
		"datatype": "text"
	},
	{
		"name": "param3",
		"label": "Tipo de Documento",
		"datatype": "NUMBER"
	},
	{
		"name": "param4",
		"label": "Observações",
		"datatype": "textarea"
	},
	{
		"name": "param5",
		"label": "Data de Início contábil",
		"datatype": "date"
	}]
}
Bloco de código
languagexml
titleJASON JSON Values dos Parâmetros
collapsetrue
{
	"hasNext": false,
	"items": [{
		"name": "param1",
		"value": "1.01"
	},
	{
		"name": "param2",
		"value": "####"
	},
	{
		"name": "param3",
		"value": 30.5
	},
	{
		"name": "param4",
		"value": ""
	},
	{
		"name": "param5",
		"value": "2017-09-01T00:00:00"
	}]
}

...

  • MASCARA DE PRODUTO - PARAMETRO DE ESTOQUE
  • MASCARA DE CLIENTE FORNECEDOR  - PARAMETRO DE FINANCEIRO
  • STATUS DE PROJETO  - PARAMETRO DE GESTÃO DE PROJETOS

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? Página no tdn?
  • 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
  • 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?]
  • 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.
  • 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.

...