Páginas filhas
  • ER_PCREQ-4888_Unificar_bibliotecas_compartilhadas_dos_frameworks_Logix_Protheus

Versões comparadas

Chave

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

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

Composition Setup
import.css=style.css

Informações Gerais

Especificação

Produto

Logix

Módulo

Framework

Segmento Executor

Tecnologia

Projeto

LD_FRW_FRW001

IRM

PCREQ-4887

Requisito

PCREQ-4888

Subtarefa

PDR_LD_FRW001-68

Release de Entrega Planejada

12.1.7

País

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

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

 


Objetivo

Unificar as bibliotecas e componentes de framework compartilhados entre os produtos Protheus e Logix para que não haja qualquer incompatibilidade ou conflito na unificação dos mesmos em um repositório de objetos (RPO) único.


Definição da Regra de Negócio

Atualmente no Logix são utilizadas diversas bibliotecas que foram duplicadas do Protheus, porém com a unificação dos frameworks, estes fontes irão conflitar com os já existentes no Protheus. Para evitar tais conflitos, as bibliotecas utilizadas no Logix serão revisadas conforme as necessidades abaixo:

  1. Adequação:
    Funções do Logix com nomes iguais a funções do Protheus serão renomeadas ou serão retirados do código fonte do Logix.
  2. Renomeação:
    Caso o código fonte utilizado pelo Logix sofreu muitas alterações, o mesmo será renomeado e todos os outros fontes que o utilizam serão alterados.
  3. Verificação de produto:
    Caso o código fonte não possa ser renomeado, será feita uma alteração para verificar o produto em questão, executando a lógica conforme o resultado.

Para outras bibliotecas que não sofreram alterações, será apenas necessário readequar o local em que se encontra o código fonte - os mesmos deverão permanecer na pasta de códigos fontes do Protheus.

Adequação

No Logix existem muitas funções que possuem nomes iguais a funções já existentes no Protheus (pode-se perceber isto durante a unificação do RPO), estas são funções copiadas de códigos fontes do Protheus ou por coincidência foram criadas com o mesmo nome. Neste caso deve-se avaliar cada uma das funções conflitantes para que a mesma seja renomeada ou alterada para estática ou retirada do código fonte de Logix para que o mesmo passe a utilizar a função que se encontra no Protheus.


Fontes do produto Logix que devem ser adequados:

#Código FonteConflitoSolução
6LConfiguratorEmail.prwChamada da função de retorno de erro no envio de e-mail.Alterar a chamada da função de


Renomeação

Com a evolução de ambos os produtos, algumas bibliotecas duplicadas para uso no Logix foram alteradas com diversas correções e melhorias inviabilizando o merge entre os fontes. Para que não haja qualquer impacto tanto no produto Logix quanto no Protheus, o código fonte alterado será renomeado, criando-se assim uma nova classe ou biblioteca específica para o produto Logix.


Fontes do produto Logix que precisam ser renomeados:

Código FonteConflitoSolução
style.chInclude já existe com este mesmo nome no Protheus.Renomear a include de style.ch para logixstyle.ch.

Fontes afetados

Alterar chamada da include style.ch para logixstyle.ch.

eai.ch$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/include
framework.ch$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/include
log8100.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/audit_trail
log8110.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/audit_trail
log8120.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/audit_trail
log8130.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/audit_trail
log8140.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/audit_trail
tinterop4gl.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/lib/generico
tlocalfile.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/menu10R2
tpmenugroup.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/menu10R2
tpmenuitem.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/menu10R2
Código FonteConflitoSolução
mail.prwFunções de envio de e-mail já existem com o mesmo nome no Protheus.Renomear as funções de envio de e-mail no mail.prw.

Fontes afetados

Revisar as chamadas das funções de envio de e-mail.

LConfiguratorEmail.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/configurator
LMail.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/free_form
log5600.4gl$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/log/funcoes
log5600.prw$/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/log/funcoes

 

Verificação do Produto

Em casos específicos, como serviços WS do tipo SOAP ou REST, não é possível renomear o código fonte e suas funções - o mesmo código fonte deve ser utilizado por ambos os produtos. Para isso, estas bibliotecas serão alteradas para verificar se o produto em execução é Logix ou Protheus e executará a lógica conforme o resultado. A verificação poderá consistir o produto conforme uma chave encontrada no arquivo APPSERVER.INI do servidor de aplicação, conforme o exemplo abaixo:

 

FWIsLogix

 

OBS: Atentar para questão das chaves SERVERTYPE e DATEZERO que podem estar definidas no ambiente em uso ou na seção GENERAL. A prioridade é ambiente e quando não encontradas são pesquisadas na seção GENERAL.

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