Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: LeetCode :: Resolvendo o Desafio "Palindrome Number" do LeetCode com XBase e TLPP

_Créditos das imagens: ChatGPT_ ### LeetCode :: **Resolvendo o Desafio "Palindrome Number" do LeetCode com XBase e TLPP** No mundo da programação, os desafios do LeetCode são uma excelente maneira de aprimorar nossas habilidades de codificação. Um desses é o desafio [**Palindrome Number** (Número Palíndromo)](https://leetcode.com/problems/palindrome-number/description/). Neste artigo, vamos explorar como resolvemos esse desafio utilizando XBase e TLPP (linguagens que possuem um poderoso conjunto de ferramentas para o desenvolvimento de soluções rápidas e eficientes). #### Descrição do Desafio O problema **Palindrome Number** exige que verifiquemos se um número inteiro é um palíndromo. Ou seja, o número deve ser lido da mesma forma de trás para frente como é lido da frente para trás. Exemplos de números palíndromos incluem: 121, 12321, etc. Já números como 123, 10, e -121 não são palíndromos, pois sua leitura invertida não é igual ao número original. A ideia é criar uma f...

Protheus :: TOP (DBAccess) :: Macetes e Brincadeiras...

Seguindo o que ja foi mencionado pelo Mestrao Lee (Dr. Naldo FrankStein), vamos brincar um pouco mais com o TOP (DBAccess) e até mesmo nao consumir licença de uso.. (op´s... sem licenças??? rs)

TOP - ODBC Genérico

Com uma conexão genérica, é possível acessar qualquer banco de dados moderno que dê suporte para ODBC. É possível realizar consultas através do comando TCGENQRY e atualizar dados, através de TCSQLEXEC.

A única restrição é que não é possível “abrir” a tabela dentro do Protheus utilizando DBUSEAREA porque para isso a tabela teria de estar registrada dentro da TOP_FIELD. Como consequência, não é possível utilizar uma conexão genérica como base principal do Protheus.

Para isso:

·       Criar todo aquele lance de ODBC.. blablabla...
·         Criar um alias de conexão usando qualquer tipo de banco
·         No INI do TOP (DBAccess):
o    Mudar a seção do banco para [ODBC]. EX: [DB2] --> [ODBC]
o    Mudar o nome da seção do alias criado.
·         [DB2/ALIAS_CRIADO] --> [ODBC/ALIAS_CRIADO] 
·         Mudar as seguintes opções no INI 
[General]
Port=7890
Porta ao qual o TOP abrira a escuta das conexões
 
[Service]
Seção a ser criada para definir o serviço do TOP
Name=TotvsDBAccess
Nome único do serviço (sem espaços)
Displayname=TotvsDBAccess 4.2 Padrao
Nome vísivel no gerenciador de serviços do Windows

No ADVPL:
TCLINK( "ODBC/NOME_DO_ALIAS",  cServidor, nPorta[CASO A PORTA SEJA DIFERENTE DE 7890] )

... SEM GASTAR LICENÇA NO TOP (DBAccess)...
Ao usar o comando TCLINK uma licença de TOP (DBAccess) é consumida. Para evitar que isso ocorra, basta concatenar a seguinte string no nome do alias TOP : “@!!@”
No exemplo acima fica assim:

TCLINK( "@!!@ODBC/NOME_DO_ALIAS",  cServidor, nPorta[CASO A PORTA SEJA DIFERENTE DE 7890] )

Mais tarde tem mais post!!!

Rodrigo "OVERFAIL"

Comentários

  1. Naldo,

    Isso significa que utilizando a função TCLink NÃO podemos de forma alguma realizar um RecLock no banco remoto?

    ResponderExcluir
  2. Putz...me ajudou a corrigir um fonte aqui, muito boa a dica.

    ResponderExcluir

Postar um comentário

Postagens mais visitadas