Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: LeetCode 23: Mesclando K Listas Ordenadas com Harbour/xBase e Reutilização de Código

_Créditos das imagens: ChatGPT **Título:** LeetCode 23: Mesclando K Listas Ordenadas com Harbour/xBase e Reutilização de Código **Introdução** Olá, entusiastas de Harbour/xBase e desafios de programação! Depois de explorarmos como mesclar duas listas ordenadas no [nosso post sobre o LeetCode 21](https://www.blacktdn.com.br/2025/03/blacktdn-leetcode-21-merge-two-sorted.html), vamos dar um passo adiante e enfrentar um problema um pouco mais complexo: o LeetCode 23 - Merge K Sorted Lists. Neste artigo, vamos desvendar uma implementação em Harbour/xBase para este desafio, demonstrando como podemos inteligentemente reutilizar a solução que já construímos para o problema 21. Veremos como a modularidade e a construção sobre soluções anteriores podem simplificar problemas mais complexos. **O Problema: LeetCode 23 - Merge K Sorted Lists** O desafio é o seguinte: dado um array (`aLists` em nossa implementação) contendo `k` listas encadeadas, onde cada lista já está ordenada em ordem cres...

Protheus :: Advpl :: Utilizando scripts em PowerShell para manipular objetos COM :: Combo III : Excel

Da mesma forma que podemos rodar scripts em PowerShell para manipular objetos COM no “client” usando WaitRun ( Protheus :: Advpl :: Utilizando scripts em PowerShell para manipular objetos COM :: Combo II : Excel ), podemos usar, para efetuar o mesmo processo no server, a WaitRunSrv .

O que muda, entre um modelo e outro, é, basicamente, a forma como o totvs/protheus server localiza e manipula os diretórios e arquivos e, quando da finalização do processo o arquivo gerado é copiado do “server” para o “client”. Gerar o arquivo no server, teoricamente, é mais rápido uma vez que diminuimos o I/O entre o totvs/protheus server e o remote client.

Apesar da geração no server ser, mais rápida, ela, usando os modelos que disponibilizei, não é tão mais rápida assim. Perceberemos a diferença no próximo “post” quando reescreverei o(s) exemplo(s) de forma a tornar o processo de integração Protheus/PowerShell/Excel um tanto quanto mais rápido.

Um instantâneo do processo de chamada do PowerShell pelo totvs/protheus server pode ser visto abaixo.

TotvsAppServer_PowerShell_Excel_1

TotvsAppServer_PowerShell_Excel_2

image

Para baixar os exemplos do III Combo, clique aqui.

No Programa U_T2PSExcel.prg temos um modelo de geração pelo “Client” e, em U_ST2PSExcel.prg, como efetuar o mesmo processo no “Server. Neste último, verificamos a existência da chave PS_LOCAL na seção correspondente ao Environment em uso durante o processo, e, se o seu conteúdo for igual a 1, quando da cópia do arquivo excel para o client quem se reponsabilizará por abri-lo será o PowerShell através da WaitRun, caso contrário abriremos utilizando a função ShellExecute.

[]s

иαldσ dj

Comentários

Postagens mais visitadas