Histórico da Página
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 | 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:
- 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. - 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. - 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 funções que possuem nomes iguais as 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, 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.
Código Fonte: LNumericField.prw
Conflito: Função RemoveChar já existe no Protheus.
Solução: Remover a função do fonte LNumericField.prw, esta função não está sendo mais utilizada no Logix.
Código Fonte: miscfunctions.prw
Conflito: Função LoadBitmap já existe no Protheus.
Solução: Remover a função do fonte miscfunctions.prw e alterar os fontes do Logix para utilizar a função original do Protheus.
Fontes afetados | ||
LTable.prw | $/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/free_form | |
LTableColumnEx.prw | $/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/free_form | |
----------------------------- | ---------------------------------------------------------------------------------------------------- |
Código Fonte: string.prw
Conflito: Função Capital já existe no Protheus.
Solução: Remover a função do fonte string.prw, os fontes do Logix que a utilizam passarão a usar a função original do Protheus.
Código Fonte: version.prw
Conflito: Função GetVersao já existe no Protheus.
Solução: Remover a função do fonte version.prw, os fontes do Logix que a utilizam passarão a usar a função original do Protheus.
Código Fonte: mail.prw
Conflito: Include já existe com este mesmo nome no Protheus.
Solução: Renomear as funções de envio de e-mail.
Fontes afetados | ||
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 | |
----------------------------- | ---------------------------------------------------------------------------------------------------- |
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 a combinação entre os códigos 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.
Código Fonte: style.ch
Conflito: Include já existe com este mesmo nome no Protheus.
Solução: Renomear a include de style.ch para logixstyle.ch.
Fontes afetados | ||
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 Fonte: FWChart.prw, FWChartBar.prw, FWCharColor.prw, FWChartFactory.prw, FWChartLegend.prw, FWChartLine.prw, FWChartPie.prw, FWChartSerie.prw
Conflito: Foram realizadas diversas melhorias e correções nos componente de gráficos, inviabilizando a combinação entre os fontes Logix e Protheus.
Solução: Renomear os componentes FWChart* para LFWChart* e revisar os fontes que o utilizam no Logix.
Fontes afetados | ||
LBarChart.prw | $/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/free_form | |
LChart.prw | $/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/free_form | |
LLineChart.prw | $/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/free_form | |
LPieChart.prw | $/Logix/Fontes_Doc/Sustentacao/10R2-11R0/10R2-11R0/framework/free_form | |
----------------------------- | ----------------------------------------------------------------------------------------------------- |
Verificação do Produto
Em casos específicos, como serviços WebServices SOAP e 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:
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|