Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: Algoritmo :: Explorando Compressão de Dados com o Projeto naldodj-hb-huffman (xBase)

✨ **Explorando Compressão de Dados com o Projeto naldodj-hb-huffman** ✨ Recentemente, desenvolvi o **hb-huffman**, uma implementação do algoritmo de Huffman em Harbour, focada em estudo e aprendizado. Este projeto é uma oportunidade de mergulhar nos conceitos de compressão e descompressão de dados sem perdas, combinando a simplicidade da linguagem Harbour com otimizações em C para maior eficiência. ### 🔍 Sobre o Projeto O algoritmo de Huffman é uma técnica clássica que utiliza a frequência de símbolos para criar códigos binários otimizados, reduzindo o tamanho de textos sem perder informações. No **naldodj-hb-huffman**, implementei uma versão prática e otimizada desse método, ideal para quem deseja entender como a compressão funciona na prática. O projeto inclui: ✅ **Construção Dinâmica da Árvore**: Baseada em frequências calculadas ou fornecidas. ⚡ **Otimização em C**: Funções como `StrOccurs` aceleram a contagem e manipulação de caracteres. 📚 **Flexibilidade**: Suporta desd...

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