Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: LeetCode (17) :: Comparando Implementações do Desafio "Letter Combinations of a Phone Number" em Harbour e TOTVS TLPP

_Créditos das imagens: ChatGPT_ # LeetCode (17) :: Comparando Implementações do Desafio "Letter Combinations of a Phone Number" em Harbour e TOTVS TLPP O desafio [**"Letter Combinations of a Phone Number"**](https://leetcode.com/problems/letter-combinations-of-a-phone-number/description/) (Combinações de Letras de um Número de Telefone) é um problema clássico de programação que envolve a geração de todas as combinações possíveis de letras que um número de telefone pode representar, com base no mapeamento tradicional dos teclados de telefone. Abaixo, comparamos duas implementações desse desafio: uma em **Harbour** e outra em **TOTVS TLPP** (TOTVS Language Plus Plus). ## O Desafio Dada uma string contendo dígitos de 2 a 9, retorne todas as combinações possíveis de letras que esses dígitos podem representar. O mapeamento dos dígitos para as letras é o mesmo dos teclados de telefone tradicionais: - 2: "abc" - 3: "def" - 4: "ghi" - 5: ...

BlackTDN :: Execuçao de Códigos em AdvPL por Filial/Empresa

Uma das GRANDES sacadas da TOTVS foi a questão de poder configurar o TOTVS Microsiga Protheus, seu sistema de ERP, utilizando o conceito de "Gestão de Empresas". Uma sacada, ainda maior, seria a possíbilidade de configurar a execução de PE (Pontos de Entrada), Customizações, etc., também, por Empresa/Filial considerando se: Produção ou Teste.

Hoje temos que tomar um enorme cuidado com este procedimento. Ele fica à cargo do Implementador da Regra de Negócio podendo causar efeitos colaterais indesejados.

Seria muito interessante se existisse uma tabela de configurações de programas a serem executados onde, mesmo que o programa estivesse compilado no RPO ele só seria executado se autoriado. A TOTVS nos forneceria funlçoes para testar em que Empresa/Filial/Ambiente o código seria executado. Teriamos algo como:

Tabela Execução AdvPL

 Environment

Empresa 

 Filial

 Programa/Função

 Habilitado

 Observação

 Produção

01 

 01

 ADVPL-01.PRX

 Sim

 Programa utilizado para ...

 Teste

01

 01

 ADVPL-01.PRX

 Não




O modelo acima serve apenas como exemplo. Lógicamente teriamos algo mais sofisticado. E, considerando o exemplo teriamos algumas funções para validar a execução. Exemplo:

Programa:ADVPL-01.PRX
Funcao: U_ADVPL-01()
User Function ADVPL-01()
  
BEGIN SEQUENCE

IF .NOT.(VALID_EXECUTE())
     BREAK
ENDIF

//...Implementação do código a ser executado.

END SEQUENCE  

Return(NIL)

Com isso, além de termos o controle/mapeamento de tudo o que está "Compilado" e sendo executado no sistema teriamos mais segurança para a implementação das customizações.

Fica a dica.

[]s
иαldσ dj


Comentários

  1. Fala aee naldo?
    No CFG tem opção de selecionar se o PE vai ser executado na filial X Y Z.
    Não cheguei testar empresa e funções.
    Com isso evita no fonte validar com xFilial / cEmpAnt / cFilAnt.......

    ResponderExcluir

Postar um comentário

Postagens mais visitadas