Páginas filhas
  • Versão LIB 20181101_P12

Versões comparadas

Chave

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

...

Expandir
titleDFRM1-9393 - Função FillGetDB continua a utilizar de RDD local ( DBF/CTREE ) mesmo com o dicionário migrado ao banco de dados

Situação/Requisito:

A função FillGetDB continua a utilizar de RDD local ( DBF/CTREE ) mesmo com o dicionário migrado ao banco de dados.

Solução/Implementação:

A função FillGetDB foi alterada para criar o alias temporário com a FWTemporaryTable quando o dicionário estiver migrado ao banco de dados.

A liberação desta correção será realizada futuramente através do pacote de LIB versão 20180914, qual contemple os fontes abaixo relacionado(s):

APLIB172.PRW
MSGETDB.PRW

Chamados relacionados:

DFRM1-9393


Bugs


Expandir
titleDFRM1-10142- Não conformidade em alteração de linhas de grid CSS customizados

Situação/Requisito:

Não conformidade em alteração de linhas de grid CSS customizados

Solução/Implementação:

Ajustado o programa para recuperar o CSS customizado na troca de linha do grid Pai

FWFORMGRID.PRW

Chamados relacionados:

DFRM1-10142

Expandir
titleDFRM1-11957 - EventViewer não está realizando uma chamada ao Mingle

Situação/Requisito:

EventViewer não está realizando uma chamada ao Mingle

Solução/Implementação:

Corrigido o programa para fazer um processo ao mesmo tempo, Mingle, independente da chave de seqüência gerada

Chamados relacionados:

DFRM1-11957

Expandir
titleDFRM1-11688 - Embedded Audit Trail não esta removendo a trigger quando o Banco é Oracle para reaplica-la novamente

Situação/Requisito:

Embedded Audit Trail não esta removendo a trigger quando o Banco é Oracle para reaplica-la novamente

Solução/Implementação:

Efetuado tratamento para validar o formato da lista das tabelas do SX2 quando o Banco for Oracle e corrigida a criação da função de captura do login para as triggers do Audit Trail

FWATTMKTRIG.PRW

Chamados relacionados:

DFRM1-11688

Expandir
titleDFRM1-11186 - Ao tentar limpar o filtro e salvar, de um relatório já personalizado anteriormente, o filtro vazio não estava sendo salvo

Situação/Requisito:

Ao tentar limpar o filtro e salvar, de um relatório já personalizado anteriormente, o filtro vazio não estava sendo salvo

Solução/Implementação:

A função SaveFilter, responsável por salvar o filtro criado na personalização, estava validando o filtro criado pelo usuário, porém como o filtro estava vazio ele era ignorado pela função, portanto a mesma foi alterada para quando o filtro estiver vazio, atualizar o filtro já existente, ou seja, limpar o filtro já existente

Report14.prw
FWFilterEdit.PRW

Chamados relacionados:

DFRM1-11186

Expandir
titleDFRM1-11594 - Erro na Consulta Genérica em consultas com filtors de relação

Situação/Requisito:

Ao criar um filtro na consulta genérica era gerado error.log, o erro só era reproduzido quando a consulta genérica era alterada para ter filtros de relação e o filtro fosse executado na tabela relacionada, sendo filtro de data

Solução/Implementação:

O método ExecuteFilter da FWBrwTable estava gerando error.log quando o filtro possuía mais de uma expressão a ser resolvida (#), pois a macro execução não compreendia o operador lógico presente na expressão ( AND, OR ), pois estavam no padrão SQL.

Para corrigir a situação, foi criado um novo método na FWBrwTable chamado ResolveFilter, esse método utiliza da função __TRFil2Exp, que percorre a expressão do filtro e executa cada par de octothorpe (#) de uma vez, evitando erros de macro execução.

Obs1.: A função __TRFil2Exp foi isolada em um único fonte para melhorar a organização e manutenção do código.

Obs2.: Foi criada a função FWTamSX3, que é igual a presente na pasta de infraestrutura do TFS, visando a LIB ficar cada vez mais desacoplada de segmentos e também para que segmentos possa utilizar da mesma eliminando problemas detectados pelo SonarQube.

Report02.prw
FWTRFil2Expression.prw
FWBrwTable.PRW
FWTamSX3.prw

Chamados relacionados:

DFRM1-11594

Expandir
titleDFRM1-10858 - Ao navegar por todas as opções no botão de configurar do Browse está gerando error.log

Situação/Requisito:

Ao navegar por todas as opções no botão de configurar do Browse está gerando error.log

Solução/Implementação:

Corrigido o controle de objetos na navegação do menu de configuração do browse

FWBrwConfig.prw

Chamados relacionados:

DFRM1-10858

Expandir
titleDFRM1-10249 - Ao vincular um privilégio ao usuário, na seleção de empresa, é gerado um erro

Situação/Requisito:

Ao vincular um privilégio ao usuário, na seleção de empresa (grupo), é gerado um erro de array out bounds, por conta de acesso indevido ao array

Solução/Implementação:

A função FWAccessSM0 estava gerando erro de array out bounds, isso ocorria por conta do loop efetuado no array, também por efetuar o aDel e aSize do mesmo, deixando-o menor dentro do loop.

Para a correção, o loop passou a ser efetuado via um while, pois dessa forma a expressão de tamanho do array é sempre reavaliada, assim quando o mesmo acaba diminuindo, o while reavalia e sai do loop, evitando acesso a índices inexistentes.

CFGA512.PRX

Chamados relacionados:

DFRM1-10249

Expandir
titleDFRM1-11893 - Erro no cadastro do MILE ao utilizar acelerador para preenchimento dos campos utilizando MVC

Situação/Requisito:

No cadastro do MILE, ao utilizar acelerador para preenchimento dos campos utilizando MVC, gerava erro por recursividade em instâncias de codeblock

Solução/Implementação:

Implementado um controlador para somente executar o load do modelo sendo utilizado novamente quando trocar o id

CFGA600.prw

Chamados relacionados:

DFRM1-11893

Expandir
titleDFRM1-11919 - Melhoria para colocar as aspas de forma automática quando utilizada consulta padrão em campo Range nos Perguntes

Situação/Requisito:

Solicitada melhoria para colocar as aspas de forma automática quando utilizada consulta padrão em campo Range nos Perguntes

Solução/Implementação:

Adicionadas aspas simples no retorno da consulta padrão quando a mesmo é retornada em campo tipo Range.

Libfunc.prw

Chamados relacionados:

DFRM1-11919

Expandir
titleDFRM1-10812 - No Wizard do Banco de Conhecimento, os campos de usuário tem o conteudo replicado ao incluir um novo conhecimento

Situação/Requisito:

No Wizard do Banco de Conhecimento, os campos de usuário tem o conteúdo replicado ao incluir um novo conhecimento

Solução/Implementação:

Adicionado tratamento para executar o inicializador padrão ou inicializar os campos de usuário quando incluído um novo conhecimento pelo Wizard.

FwSX3Util.prw
Matxfunc.prx

Chamados relacionados:

DFRM1-10812

Expandir
titleDFRM1-10925 - Schedule não apresenta as filiais para configurar novo agendamento

Situação/Requisito:

Schedule não apresenta as filiais para configurar novo agendamento

Solução/Implementação:

Ajustado o programa para trabalhar com uma cópia do cache de filiais do objeto do usuário autenticado.

FwSchF3SM0.prw

Chamados relacionados:

DFRM1-10925

Expandir
titleDFRM1-10626 - Campo que consta no indice tabela configurado com autoincremento no MsGetDB não incrementa corretamente

Situação/Requisito:

Ao utilizar a função MSGetDB com uma tabela temporária criada pela função FWTemporaryTable, o campo de sequência da grid não incrementa corretamente. Essa ocorrência não é reproduzida caso a tabela seja criada pelo CriaTrab()

Solução/Implementação:

Adicionado tratamento para o correto auto incremento no MsGetDB independente se o campo compõe o índice

MsGetDb.prw

Chamados relacionados:

DFRM1-10626

Expandir
titleDFRM1-11791 - Os workshops precisam de uma função da LIB para retornar os campos de uma tabela

Situação/Requisito:

Os workshops precisam de uma função da LIB para retornar os campos de uma tabela

Solução/Implementação:

O nome do método é FWSX3Util():GetAllFields(), que recebe duas notificações na seguinte ordem:

cAlias - Alias da tabela de retorno dos campos
Virtuais - Se o retorno também trará os campos virtuais, a opção opcional com o valor padrão verdadeiro.

FWSX3Util.prw

Chamados relacionados:

DFRM1-11791

Expandir
titleDFRM1-10853 - Pintura de Grid incorreta ao atingir o limite de 990 linhas

Situação/Requisito:

Ao atingir o limite de 990 linhas de tabelas auditadas na rotina Aplicador, e apertar a seta para baixo para incluir mais uma linha, em vez de aparecer uma linha em branco, ele efetua a pintura do grid com os valores da última tabela cadastrada

Solução/Implementação:

Corrigido o controle de registros no grid e aumentado o limite de registros no grid do cadastro de tabelas do Embedded AuditTrail.

CFGA710.PRW
FWBrowse.PRW
FWFormGrid.PRW

Chamados relacionados:

DFRM1-10853

Expandir
titleDFRM1-12099 - Não está sendo possível utilizar o SIGAPAF e logar no SIGALOJA em ambiente TOP

Situação/Requisito:

Não está sendo possível utilizar o SIGAPAF e logar no SIGALOJA em ambiente TOP

Solução/Implementação:

Existia um IFNDEF TOP no módulo SIGAPAF que impedia a sua execução em ambiente TOP, esse IF foi removido, permitindo assim a utilização do SIGAPAF ( SIGALOJA ) em ambiente TOP.

ApLib000.prw

Chamados relacionados:

DFRM1-12099

Expandir
titleDFRM1-11990 - Erro ao utilizar alias New no Informix

Situação/Requisito:

O erro abaixo ocorre pelo fato de estar sendo utilizado o alias como NEW e no Informix a palavra NEW é reservada. Alterando para outro nome o erro não ocorre.

THREAD ERROR ([10628], nilton, NAR-W10K) 13/08/2018 07:12:16
: Error : -201 (37000) (RC=-1) - [Informix][Informix ODBC Driver][Informix]A syntax error has occurred.
( From tInformixConnection::GetQueryFile )

Solução/Implementação:

Efetuada a alteração do nome do alias na montagem da query para não ficar igual ao nome reservado utilizado em banco Informix.

ApUpd030.prw

Chamados relacionados:

DFRM1-11990

Expandir
titleDFRM1-11573 - Não conformidade ao tentar personalizar o relatório CTBR040

Situação/Requisito:

Não conformidade ao tentar personalizar o relatório CTBR040 (TReport).


Solução/Implementação:

A personalização do relatório estava gerando erro por conta da função SaveFilter, a mesma foi criada para sempre receber um objeto no segundo parâmetro:
Static Function SaveFilter( aFilter, oSection )

Porém nem sempre essa seção recebida está instanciada, pois é possível omitir a seção de filtros do relatório, como é o caso do CTBR040, sendo assim a função era chamada com o valor NIL.
Para correção, a função passou a receber o parâmetro oSection como opiconal (OPTIONAL) e tratando o mesmo somente em caso diferente de NIL, corrigindo assim a não conformidade.


REPORT14.PRW

Chamados relacionados:

DFRM1-11573

Expandir
titleDFRM1-11289 - Opção "Esqueceu sua senha" não disponível ao utilizar o servidor de e-mail TSEBR

Situação/Requisito:

Ao utilizar o servidor de e-mail TSEBR, os relatórios são enviados corretamente por e-mail, porém o "Esqueceu sua Senha" não funciona.


Solução/Implementação:

Aumentado o tempo de timeout para o envio de senha por e-mail.

AP5MAIL.PRW

Chamados relacionados:

DFRM1-11289

Expandir
titleDFRM1-10693 - Ao utilizar opção de incluir direto pelo Menu Funcional, o mesmo está direcionando para o Browser da rotina

Situação/Requisito:

Ao utilizar opção de incluir direto pelo Menu Funcional, o mesmo está direcionando para o Browser da rotina e não para inclusão.

Solução/Implementação:

O método GetMenuDef da classe FWUIMenuF estava criando o bloco de código para MDI igual ao padrão ( ADV ), porém para MDI é necessário informar o CARGO do mesmo, assim a nova thread MDI consegue chamar as funções necessárias que setam o browse para já ser aberto de uma determinada forma, como por exemplo a inclusão.
Para correção, os blocos de função e hyperlink do menu foram corrigidos, de forma a setar a variável pública oApp:Cargo com os valores corretos, dessa forma a nova thread MDI executa as funções presentes no Cargo do FWApp e abre corretamente a rotina quando a mesma é chamada via o Menu Funcional.


FWUIMENUF.PRW

Chamados relacionados:

DFRM1-10693

Expandir
titleDFRM1-12289 - Não conformidade na msgetdad quando possui campo tipo lógico na tela

Situação/Requisito:

Não conformidade ao utilizar na msgetdad campo tipo lógico na tela.

Solução/Implementação:

Corrigido a apresentação do campo tipo lógico na tela.


MSGETDAD.PRW 

Chamados relacionados:

DFRM1-12289

Expandir
titleDFRM1-12175 - Ao utilizar a classe FWPreparedStatement e chamar o método SetString com um valor que contenha '?', está gerando um query inconsistente

Situação/Requisito:

Ao utilizar a classe FWPreparedStatement e chamar o método SetString com um valor que contenha '?', está gerando um query inconsistente, pois o método GetFixQuery está confundindo o valor setado pelo SetString com um valor a set setado.

Solução/Implementação:

O método GetFixQuery foi alterado para deixar de fazer o StrTran, o mesmo agora verifica a posição da '?' e substitui utilizando de SubStr, sempre pegando a posição da próxima '?' com base na última encontrada mais o tamanho do valor inserido na query ( parâmetro setado ), dessa forma a substituíção dos valores sempre segue em frente, evitando alterar valores já inseridos.

A liberação desta correção será realizada futuramente através do pacote de LIB versão 20180914, qual contemple os fontes abaixo relacionado(s):


FWPREPAREDSTATEMENT.PRW

Chamados relacionados:

DFRM1-12175

Expandir
titleDFRM1-11149 - PROTHEUS_EVENT_VIEWER_ está consumindo alto consumo de processamento quando possui serviço do Schedule ativo

Situação/Requisito:

PROTHEUS_EVENT_VIEWER_ está consumindo alto consumo de processamento quando possui serviço do Schedule ativo

Solução/Implementação:

Adicionado tratamento para a cada 500 execuções finalizar a thread da PROTHEUS_EVENT_VIEWER_ e iniciar uma nova

BOPROTHEUSEVENTVIEWER.PRW


Chamados relacionados:

DFRM1-11149

Expandir
titleDFRM1-10117 - A consulta padrão não está posicionando no registro corretamente ao efetuar uma pesquisa

Situação/Requisito:

A consulta padrão não está posicionando no registro corretamente ao efetuar uma pesquisa, trocar o índice e selecionar para salvar o índice.

Solução/Implementação:

O seek falhava, pois o índice informado e salvo não continha nenhum valor que pudesse ser utilizado, esse é um comportamento inesperado no P12, pois o checkbox de salvar o índice nunca existiu em versões anteriores.
Para correção, antes de efetuar o seek, é verificado se o índice é o primeiro da lista de índices, caso não seja, é selecionado o primeiro índice, feito e seek e depois o índice anterior é restaurado, de forma ao usuário não perceber que o índice foi alterado antes de efetuar o seek.

FWLOOKUP.PRW
FWSEEK.PRW


Chamados relacionados:

DFRM1-10117

Expandir
titleDFRM1-10883 - A ChangeQuery está entrando em loop em querys que começam com a palavra reservada WITH

Situação/Requisito:

A ChangeQuery está entrando em loop em querys que começam com a palavra reservada WITH.

Solução/Implementação:

A ChangeQuery não conhece e trabalha com querys que começam com a palavra WITH, por isso a mesma entrava em loop.
Como a ChangeQuery não é homologada para trabalhar com querys que utilizem de WITH, a mesma passou a verificar a existência de WITH no começo da Query enviada e gerar exceção ( error.log) informando que a função não está apta a trabalhar com querys assim, ou seja, ao enviar uma Query que comece com WITH para a função ChangeQuery a mesma vai gerar error.log.

APLIB070.PRW


Chamados relacionados:

DFRM1-10883

Expandir
titleDFRM1-12334 - Não conformidade ao subir serviço Ctree BoundServer com SX’s tendo a flag Huge Files

Situação/Requisito:

Não conformidade ao subir serviço Ctree BoundServer com SX’s tendo a flag Huge Files.

Solução/Implementação:

Desabilitado a flag de Huge Files para os arquivos de dicionário de dados do Protheus.

APSDU.PRW


Chamados relacionados:

DFRM1-12334

Expandir
titleDFRM1-11161 - Não conformidade na abertura de arquivos .csv em smartclient no sistema operacional MacOs

Situação/Requisito:

Sistema tentava realizar a abertura de arquivos .csv em smartclient no sistema operacional MacOs através de shellexecute (não suportado pela plataforma).

Solução/Implementação:

Realizado tratamento para sempre perguntar onde gravar a exportação para csv e assim o próprio usuário define onde e quando realizar a abertura do arquivo.

AVISO.PRX
APLIB230.PRW

Chamados relacionados:

DFRM1-11161

Expandir
titleDFRM1-12634 - Não conformidade na impressão do Browse, tipo planilha/excel/Formato de Tabela

Situação/Requisito:

Não conformidade na impressão de browse quando existia os caracteres Á Ì e usava encodeUTF8 duas vezes.

Solução/Implementação:

Realizado tratamento para evitar a não conformidade avaliando se conseguiu executar o encodeUTF8 novamente.

FWMSEXCELEX.PRX

Chamados relacionados:

DFRM1-12634





Expandir
titleDFRM1-11313-Não conformidade no agrupamento de visões criadas no browse

Situação/Requisito:

Não conformidade no agrupamento de visões criadas no browse das rotinas

Solução/Implementação:

Efetuado a criação de um scroll no painel de visões quando exceder o tamanho padrão

FWDROPDOWN.PRW

Chamados relacionados:

DFRM1-11313

...