Melhorias


Situação/Requisito:

Melhoria na comunicação TEF
Solução/Implementação:

Implementada melhoria para execução de novas funcionalidades na comunicação retaguarda e o Totvs PDV. Esta melhoria somente precisa ser aplicada no ambiente Retaguarda, não sendo necessária aplicação no TotvsPDV.

Chamados relacionados:

DFRM1- 23191

Situação/Requisito:

Implementação de recursos para consumo de licenças para meu RH.
Solução/Implementação:

Implementado no REST a possibilidade de subir um pool de threads de uma URI consumindo licenca do modulo 7 (Gestao de Capital Humano) ao invés de usar a licenca TOTVS .

Lista de APIs liberadas:

Service: /team/

Service: /data/

Service: /payment/

Service: /request/

Service: /auth/

Service: /setting/

Service: /timesheet/

Service: /vacation/

Service: /health/

Chamados relacionados:

DFRM1- 23172

Não conformidades


Situação/Requisito:

Ao acessar várias rotinas do sistema que tentava utilizar uma tabela que ainda não estava aberta, era chamada uma função para abrir a tabela e gerava uma não conformidade ao tentar retornar a lista das tabelas relacionadas à tabela solicitada.
Solução/Implementação:

Alteração efetuada para que no momento de apurar tabelas vinculadas (que possuem o mesmo X2_SYSOBJ ) não utilizar a função indregua() no dicionário SX2.

A função indregua() não pode ser utilizada com CTREE bound server.

Poderia ser reproduzido no uso normal do sistema, quando era criada uma tabela com auditoria (Embedded) que possuía vínculo com a outra, ou durante a aplicação do Embedded AuditTrail (Configurador ).


FWATTABREL.PRW 

Chamados relacionados:

DFRM4-3469

Situação/Requisito:

Ao apagar os itens do menu de miscelânea, mantendo o mesmo vazio, ele deixa de ser apresentado, omitindo assim algumas funções que são inseridas no mesmo por padrão.
Solução/Implementação:

O menu possui um tratamento que quando uma pasta está vazia, ela não é apresentada, porém o menu de miscelânea deve ser uma exceção a essa regra, pois o mesmo possui certos itens criados via hardcode.

FWMENU.PRW

MPSYSMENULOAD.PRW


Chamados relacionados:

DFRM1-21818

Situação/Requisito:

A data de atualização do agente do schedule não está sendo gravada quando o agente é inicializado, parado ou alterado.
Solução/Implementação:

A gravação dos dados do agente do schedule foi alterada para sempre atualizar a data e hora, com isso os dados sempre serão atualizados ao inicializar, parar ou alterar o agente.

FWBOSCHDAGENT.PRW

FWDASSCHDAGENT.PRW


Chamados relacionados:

DFRM1-21535

Situação/Requisito:

Ao tentar gravar a edição de um índice, alterando-o para virtualizado, é apresentado uma não conformidade.
Solução/Implementação:

Corrigida a gravação de registro temporário para alteração de índice.

APCFG10A.PRW
APCFG10I.PRW
APCFG10K.PRW

Chamados relacionados:

DFRM4-3442

Situação/Requisito:

O campo "obrigar uso de letras e números" no cadastro de políticas não está salvando as alterações com dicionário no banco de dados.
Solução/Implementação:

Para que o campo "obrigar uso de letras e números" no cadastro de políticas grave suas alterações com dicionário no banco de dados é necessário executar o upddistr da versão 12.1.27 para 12.1.30.
Não é necessário realizar o upddistr em bases migradas ou novas bases criadas.

FWRUPCFG.PRW
FWRUPCFG30.PRW
FWRUPCFG30TESTCASE.PRW
FWUSERACCOUNT.PRX
CFGA500.PRW

Chamados relacionados:

DFRM1-22716

Situação/Requisito:

No método SetFont tinha uma condição que sempre era executada e acabava não modificando a fonte que foi setada pelo usuário, assim sempre ficando com a fonte e o tamanho da fonte com os padrões da impressão.
Solução/Implementação:

Foi criado um novo parâmetro no método SetFont, com ele se o usuário utilizar o método Say para adicionar um texto ele irá atualizar a fonte e o tamanho que será usada no relatório.

FWMSPRINTER.PW

Chamados relacionados:

DFRM1-22198

Situação/Requisito:

O sistema está travando ao efetuar a cópia de um pedido de venda, o travamento deve-se a tentativa de criar a tabela SX5 ou recriar seus índices.
Solução/Implementação:

A tabela SX5 passou a ser criada e aberta na abertura do ambiente, evitando assim que seja criada em blocos de transação.

APLIB090.PRW
TBICONN.PRW

Chamados relacionados:

DFRM1-22338

Situação/Requisito:

Ao possuir um filtro de função, o mesmo esta ficando duplicado na query de execução no banco e estoura o limite do tamanho da query no dbaccess.
Solução/Implementação:

Corrigido o problema de duplicidade na query avaliando se a mesma já esta contida no filtro.

FWBRWTABLE.PRW

Chamados relacionados:

DFRM1-22340

Situação/Requisito:

Ao abrir o Protheus no WebApp o componente FWCalendar o tamanho de fonte dos números dos dias da semana ficaram grandes, assim sendo coberto por um listbox, além dos títulos dos dias da semana ficarem cortados.
Solução/Implementação:

O tamanho da fonte dos números foram diminuídos e o Html do FWCalendar foi ajustado para os títulos não serem cortados.

FWCALENDAR.PRW

Chamados relacionados:

DFRM1-22439

Situação/Requisito:

Não conformidade na importação de menu para o banco de dados.
Solução/Implementação:

Criação de novo campo para armazenar o valor. Alteração de todos os pontos que fazem acesso à esse campo.

APLIB180.PRW

FWDBMENU.PRW

FWRUPCFG27.PRW

FWMENUCUSTOMIZE.PRW

MPSYSYMENU.PRW

MPSYSYMENUIMPORT.PRW

MPSYSYMENULOAD.PRW

Chamados relacionados:

DFRM1-21941

Situação/Requisito:

Tamanho do código da filial esta sempre sendo gravado como 2 na SM0 quando não é dicionário no banco devido há uma validação que trocaria o tamanho do campo de 2 para 12 mas não é validada porque verifica se está com dicionário no banco.
Solução/Implementação:

Foi retirada a validação que verifica se está com dicionário no banco, assim sempre troca o valor do campo de 2 para 12 e salva a Filial corretamente.

FWCADFILIAL.PRW
FWVLDADFILTESTCASE_SPF.PRW

Chamados relacionados:

DFRM1-22461

Situação/Requisito:

Não conformidade ao realizar o Upgrade de Release da 12.1.25 para 12.1.27 em ambiente PDV SQLLITE.
Solução/Implementação:

Correção no método de leitura em modo SQLLITE.

APUPD030.PRW 

Chamados relacionados:

DFRM4 - 3546

Situação/Requisito:

Não conformidade na consulta de produto área de trabalho no módulo do CRM quando acessando via navegador no tablet, não é possível a seleção dos produtos
Solução/Implementação:

Foram inseridos botões para adicionar uma linha, editar-lá e exclui-lá. Esses botões apenas vão ser habilitados em casos onde o dispositivo acessando o sistema for touch screen e o browse estiver sendo alterado ou incluído.

FWISTOCH.PRW
FWUIBROWSE.PRW
FWBROWSE.PRW
FWGETCSS.PRW
FWCSS.CH

Chamados relacionados:

DFRM1 - 22510

Situação/Requisito:

O sistema está gerando não conformidade quando existem totalizadores ou contadores no browse e o filtro presente também no browse, é um filtro SQL que começa com "@".
Solução/Implementação:

Foi feita uma correção para evitar o parser ADVPL para SQL quando o filtro começa com "@", pois sempre que um filtro começa com "@" ele já é um filtro SQL, não precisando assim de conversão, logo a função responsável pela conversão apenas remove o @ inicial e retorno assim a expressão SQL.

Chamados relacionados:

DFRM1 - 22768

Situação/Requisito:

A importação de filiais para o modelo de gestão corporativa está gerando não conformidade  quando utilizada em modo de multithread, não finalizando assim o processo.
Solução/Implementação:

Foi verificado que durante o processo multithread, a SM0 era aberta de forma exclusiva, logo as demais threads não conseguiam abrir a tabela e continuar o processo, portanto a SM0 passou a ser fechada após o começo do processo, com isso as demais threads conseguem fazer uso da SM0, finalizando assim o processo corretamente.

FWREBUILDINDEX.PRW

FWCADFILIAL.PRW

Chamados relacionados:

DFRM1 - 22012

Situação/Requisito:

Ao salvar uma consulta genérica e abrir a mesma, a ordenação não está sendo respeitada.
Solução/Implementação:

As colunas do browse foram ordenadas de acordo com os dados presentes no arquivo cw4, com exceção do campo de filial que o sistema reordena sozinho.

APLIB230.PRW

Chamados relacionados:

DFRM1 - 22328

Situação/Requisito:

Quando o SIGAMDI é fechado e reaberto por conta da troca a quente de RPO, ele deixa de respeitar a flag de "Usar as informações acima em todas sessões", com isso ao abrir uma rotina é sempre questionada o grupo e filial.
Solução/Implementação:

A flag "Usar as informações acima em todas sessões" passou a ser restaurada quando o SIGAMDI é reaberto de forma automática por conta da troca a quente de RPO, respeitando assim as informações anteriormente salvas de grupo e filial do sistema.

SIGAPSW.PRG
FWAPP.PRW

Chamados relacionados:

DFRM1 - 21932

Situação/Requisito:

Ao acessar alguma tela dessa classe via SIGAADV, não é exibido o botão de fechar no canto superior direito. Enquanto ao acessar via SIGAMDI, o botão é exibido normalmente, além disso ao utilizar o SIGAADV no SmartClient Desktop, o botão X não é exibido mas se o mouse for posicionado onde deveria estar o botão, é possível executar a ação de fechar
Solução/Implementação:

Realizado ajuste para que o bitmap seja localizado tanto para o SIGAMDI quanto para o SIGAADV via desktop ou webapp.

FWDIALOGMODAL.PRW

Chamados relacionados:

DFRM1 - 22246

Situação/Requisito:

Após efetuado o debug na base do cliente, foi identificado que quando utilizada auditoria de usuários habilitada, o Protheus está solicitando duas numerações.
Solução/Implementação:

Verificado que para uma operação de inclusão não é necessário instanciar e carregar um modelo de usuários para fazer comparação, porém a mudança desse procedimento irá mudar comportamento e demandará um planejamento de melhoria na rotina. Como solução para a numeração, foi criado um tratamento para que a carga de dados realizada pela auditoria não dispare a solicitação de um ID novo, deixando ele vazio.

SPFFUNCTIONDB.PRW

MPUSERACCOUNTDATA.PRX

Chamados relacionados:

DFRM1 - 22539

Situação/Requisito:

O Sistema não está validando quando  na importação da base para o banco quando a tag module do menu sigacfg não esta preenchida
Solução/Implementação:

Corrigido a validação do menu do sigacfg para não permitir a tag module vazia.

MPSYSYMENUIMPORT.PRW

Chamados relacionados:

DFRM1 - 22879

Situação/Requisito:

Ao realizar a cópia de um privilegio não esta copiando as funcionalidades das rotinas, somente da primeira que vem posicionada
Solução/Implementação:

Corrigido o controle de cópia de registro em MVC.

FWFORMMODEL.PRX

Chamados relacionados:

DFRM1 - 22808

Situação/Requisito:

Ao fazer logoff com duas ou mais rotinas abertas no SIGAMDI, é gerado uma exceção de forma esporádica.
Solução/Implementação:

O processo de logoff, que encerra as diversas threads abertas, recebeu tratamentos para não acessar índices inválidos e objetos não instanciados.

FWUISKINSTAND.PRW

FWWSF12.PRW

FWRETIDIOM.PRW

Chamados relacionados:

DFRM1 - 22900

Situação/Requisito:

Ao possuir um usuário com grupo configurado para priorizar o grupo, o SIGARPM está gerando não conformidade.
Solução/Implementação:

A verificação de grupos do SIGARPM foi corrigida.

APRPM20.prw

Chamados relacionados:

DFRM1 - 22965

Situação/Requisito:

Ao realizar a aplicação de auditoria, o sistema demora muito para aplicar a alteração, ocasionando uma não conformidade.
Solução/Implementação:

Melhoria no método de aplicação/ remoção das triggers e visualização de erros de aplicação.
Remoção - A verificação é feita das triggers existentes versus tabela, não penalizando quem possui poucas triggers aplicadas.
Aplicação - Para a aplicação em massa foi utilizada a chamada de RPC com 10 threads ativas.
Criação de cache para a consulta de regra (XA4) apenas ativada para a aplicação em massa.
A aplicação das triggers não é mais interrompida caso alguma tabela não possa ser aplicada.
Tela de não conformidade - Melhorada a tela de não conformidade com a exibição da tabela e qual a causa provocada no momento da aplicação.

CFGA710.PRW
FWATTLOAD.PRW
FWATTMKTRIG.PRW

Chamados relacionados:

DFRM4 - 3559

Situação/Requisito:

Relatório de privilégios quando o ambiente é todo no banco não esta saindo nenhum registro.
Solução/Implementação:

Corrigido o controle de impressão do relatório de privilégio quando o ambiente é todo no banco.

CFGA530.PRX


Chamados relacionados:

DFRM1- 22899


Situação/Requisito:

Relatório de usuário possui duas questões que afeta as informações apresentadas:

Menu configurado no usuário: Caso possua um menu gravado na base de dados que possua a diferença de somente um carácter final e esse menu seja retornado antes do configurado ao usuário as informações eram apresentadas de forma errada.

Parâmetro detalhe de menu: O parâmetro detalhe de menu não possui o mesmo comportamento do relatório antigo.

Solução/Implementação:

Ajuste na busca realizada na impressão para seja localizado corretamente o menu configurado para o usuário.

Ajuste para que o parâmetro detalhe do menu seja considerado na impressão das rotinas do menu.

CFGR510.PRW

Chamados relacionados:

DFRM1- 23092


Situação/Requisito:

 Ao fazer cópia do perfil de usuário MultProfile as configurações de restrição de rotina do menu não são carregadas.

Solução/Implementação:

 Foi feita uma proteção para o __cUserID não ir vazio, assim criando o profile do perfil corretamente.

CFGA510.PRX
CFGA510DB.PRW
CFGA510TESTCASE.PRW
CFGA510DBTESTCASE.PRW

Chamados relacionados:

DFRM1- 22686


Situação/Requisito:

 Ao acessar a rotina GPEA010 e acionar os detalhes do browse o campo matricula está sendo cortado. Observado que o campo possui a picture '999999'.

Solução/Implementação:

Realizado ajuste para que o tamanho do get criado nos detalhes do browse seja conforme a fonte utilizada, independente da picture utilizada.

FWEDITCTRL.PRW

FWCALCFIELSIZE.PRW

Chamados relacionados:

DFRM1- 23142