Páginas filhas
  • ER_FRWJOI01_87_exposicao_servicos_logix_whois

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

Logix

Módulo

Foundation

Segmento Executor

Tecnologia

Projeto

FRWJOI01

Requisito

FRWJOI01-87

Sub tarefa

FRWJOI01-113

País

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

(  ) USA  (  ) Colombia   (  ) Outro ______________.

Objetivo

Atualizar a transação WhoIs, que disponibiliza a consulta das transações disponíveis no aplicativo hospedeiro do EAI, possibilitando consultar também os serviços expostos pelo Logix para utilização via Mensageria TOTVS (objetos de negócio).

 

Definição da Regra de Negócio

RotinaTipo de OperaçãoOpção de Menu
EAI10002Modificação

Administração Logix > Controle Geral > Cadastros > EAI > Console EAI

EAI10002 Transações

As transações retornadas pelo WhoIs devem ser previamente cadastradas a partir do programa EAI10000 na opção "TOTVS > Configuração > Aplicativo Hospedeiro". Portanto será necessário alterar este programa para que, além de buscar no repositório de objetos do Logix (RPO) as transações de mensagem única, busquem também as transações da mensageria TOTVS.

O programa deverá fazer distinção em tela das transações pertencentes a mensageria TOTVS, sendo que o nome das transações será o nome da API combinado com "." (ponto) mais o nome da função do objeto de negócio. Por exemplo para a API logr2, onde existem as funções logr2_pub_create_companies e logr2_pub_delete_companies, as duas novas transações serao criadas conforme a tabela abaixo:

APIFunçãoTransação
logr2logr2_pub_create_companieslogr2.logr2_pub_create_companies
logr2logr2_pub_delete_companieslogr2.logr2_pub_delete_companies

Além da diferença acima, a tela deve exibir de forma mais clara para o usuário quais são as transações de mensagens únicas e quais são as da mensageria TOTVS através de um indicador visível em tela, conforme mostra o protótipo de tela #1.

Transação WhoIs

A transação WhoIs encontra-se atualmente na versão 1.000 permitindo que o mesmo retorne apenas as informações das transações que fazem parte da implementação de Mensagem Única. Para possibilitar que o mesmo retorne também as transações da implementação de Mensageria TOTVS, será necessário atualizá-lo criando assim a versão 1.001.

A versão 1.001 da transação WhoIs requer uma nova informação no corpo da mensagem, será incluído o elemento <RequestType> com o atributo BusinessObjectOnly, de tipo booleano, dentro do <BusinessContent> da mensagem. O novo adapter poderá ser gerado pela ferramenta EAI0032 através do XSD exemplificado abaixo:

WhoIs (1.001)
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="../totvsmsg.xsd"/>
    <xs:complexType name="BusinessContentType">
        <xs:sequence>
            <xs:element name="RequestType" minOccurs="0">
                <xs:complexType>
                    <xs:attribute name="BusinessObjectOnly" default="false">
                        <xs:simpleType>
                            <xs:restriction base="xs:boolean"/>
                        </xs:simpleType>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ReturnContentType">
        <xs:sequence>
            <xs:element name="EnabledTransactions" minOccurs="0" maxOccurs="1">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="Transaction" minOccurs="1" maxOccurs="unbounded">
                            <xs:complexType>
                                <xs:all>
                                    <xs:element name="Name" minOccurs="1" type="xs:string"/>
                                    <xs:element name="BusinessObject" type="xs:string" minOccurs="0"/>
                                    <xs:element name="Version" type="xs:string" minOccurs="0"/>
                                    <xs:element name="Mode" minOccurs="0">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:enumeration value="SEND_ENABLED"/>
                                                <xs:enumeration value="RECEIVE_ENABLED"/>
                                                <xs:enumeration value="BOTH_ENABLED"/>
                                                <xs:enumeration value="send_enabled"/>
                                                <xs:enumeration value="receive_enabled"/>
                                                <xs:enumeration value="both_enabled"/>
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:element>
                                </xs:all>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:element name="BusinessContent" type="BusinessContentType" substitutionGroup="AbstractBusinessContent"/>
    <xs:element name="ReturnContent" type="ReturnContentType" substitutionGroup="AbstractReturnContent"/>
</xs:schema>

O conteúdo retornado será determinado pelo atributo BusinessObjectOnly, conforme tabela abaixo:

RequestTypeBusinessObjectOnlyRetorno
AusenteN/ATransações de mensagem única  e mensageria TOTVS.
PresentefalseTransações de mensagem única e mensageria TOTVS.
PresentetrueTransações de mensageria TOTVS.

A transação WhoIs, na versão 1.000, manterá seu comportamento atual retornando somente transações de mensagem única.

Protótipo de Tela

Imagem 1: indicador do tipo da transação.

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