Pular para o conteúdo principal

Postagens

Mostrando postagens de março, 2012

Postagem em destaque

BlackTDN :: Social :: Rifa Festival da Arte Capoeira Projeto Eu Sou Ninja

Angariar fundos para cobrir os custos logísticos do "Festival da Arte Capoeira" e apoiar o projeto Eu Sou Ninja em sua missão de promover a integração social e cultural na comunidade de Jacaraípe. Com a criação da rifa, buscamos envolver a comunidade de forma ativa no financiamento do evento, permitindo que todos contribuam para o sucesso do festival e para a continuidade das atividades do projeto. Prêmio: Copia da minha biblioteca pessoal de AdvPL/TLpp ..etc Participe da Rifa Eu já contribui. Só falta você! ```cmd Pasta de C:\GitHub\naldodj-tlpp 13/04/2024 19:17 . 19/03/2024 13:49 .. 05/01/2024 12:22 2.742 .gitattributes 14/11/2023 16:02 83 .gitignore 02/12/2023 20:08 .vscode 05/01/2024 12:05 bin 13/04/2024 19:18 4.121 ChangeLog.txt 27/12/2023 02:05 include 14/11/2023 16:02 27.030 LICENSE.txt 14/11/2023 16:02 0 makepatch.lst 14/11/2

BlackTDN :: SoundTrack ~ Hey Joe

BlackTDN :: SapuReca v1.0b

Ufa! Tive um trabalhinho para ajustar as coordenadas dos BITMAPS da DIGALOG com as coordenadas das Imagens armazenadas nos “Shapes” da TPaintPanel (e ainda não ficou 100% OK) mas o jogo está pronto. Baixe a versão beta 1 de “ SapuReca ” e divirta-se. A proposta do Jogo é fazer com que os “Sapu´s” e “Reca´s” troquem de lado (uma permuta). É um jogo simples e cumpre duas vezes o seu papel: “Entreter” e “Ensinar”. Verão como usar a classe THash para “transporte” de variáveis e para controle de “índice” de Array. Explorarão as classes TTimer , TPaintPanel , TBitMap . Variáveis Static, Procedures e Funções além da animação de GIFs em advpl. E, de quebra, descobrirão a “ignorância”, desse que vos escreve, em solucionar um simples problema de posicionamento (que não ocorreria se TPaintPanel tivesse o método SetImageName). Se desejar compilar e testar o código observe as dependências em u_Sapureca.prj . Poderá, opcionalmente, consultar o código completo clicando aqui . Para comp

BlackTDN :: ADVPL Games ~ Estrelando SapuReca

Comecei, esse final de semana, a desenvolver o Jogo “Sapureca”. Baseado no original “ Jogo da Perereca ” de Eleusmário Mariano Rabelo (o criador da Linguagem Logic Basic ) tem por finalidade: Demonstrar o uso das Classes TPaintPanel do Protheus,  THash (customizada em ADVPL por esse que vos escreve) e do programa H_GIF89 (criada por P.Chornyj e adaptada para o ADVPL para executar GIF Animado) e servir como “referência didática” para aqueles que estão se “iniciando” na linguagem. A tela do Jogo é muito parecida com a original (uma vez que usei os “resources” do “Jogo da Perereca” para implementar o “SapuReca”). Mas porquê “SapuReca”?  Pareceu-me mais sonoro. Algumas imagens: O Original em Logic Basic: O “Clone” em ADVPL A tela do Jogo, em ADVPL, está pronta. Falta, agora, a regra do Jogo. Poderá acompanhar a evolução em: “ SapuReca ”. Se desejar compilar e testar o código observe as dependências em U_Sapureca.PRJ . Se estiver interessado em saber mais sobre o “Logi

BlackTDN :: SoundTrack ~ Simian Mobile Disco - Hustler UK [HQ]

BlackTDN :: Traduzindo texto utilizando Google Translate

Um dia me perguntaram se era possível utilizar o serviço do Google Translate para traduzir textos....   Realizei uma pesquisa rápida na internet e não encontrei nada do gênero...   Como não tive muito tempo, desenvolvi uma rotina simples utilizando a função HTTPGET , possibilitando resgatar o código HTML do google e com isso eu poderia tratar dentro do Protheus. Aproveitei e desenvolvi uma Dialog com aparência semelhante ao do próprio Google Translate, utilizando o método SETCSS no botão de traduzir. Realizei alguns testes de programador (testes sempre perfeitos e rápidos) e estou disponibilizando em: http://dl.dropbox.com/u/8503472/ADVPL/Translate.rar ou aqui Esta rotina foi desenvolvida apenas para testes e aprendizado. Ela depende do resultado HTML do Google Translate, ou seja, se amanhã o Google resolver mudar a sua estrutura HTML esta rotina pode deixar de funcionar. Abraço! -- Vitor Emanuel Batista

BlackTDN :: SoundTrack ~ Tribalistas : Velha Infância

BlackTDN :: Harbour Source e GIF animada no Protheus

P.Chornyj criou a função LoadGIF para uso no Harbour MiniGui e, este que vos escreve, adaptou-a para uso no Protheus. Com ela é possível executar a animação de arquivo GIF no Protheus. Apesar de funcional torna-se limitada pelo intervalo permitido pela TTimer.  O código em si é bem simples. A função LoadGIF separa os Frames animados do arquivo GIF em pequenos arquivos GIF e, para animá-los, utilizo a classe TTimer do Protheus. Infelizmente não consegui controlar o intervalo e velocidade de atualização dos Frames. Se alguém tiver uma idéia de como fazê-lo ficarei feliz em aprender. Os arquivos de exemplo poderão ser baixados ao clicar aqui ou aqui se deseja atualizar o seu projeto svn a partir dos templates. Compile o projeto H_GIF89.prj e execute a função de exemplo U_GIF89Ex a partir da tela de entrada do sistema. Escolha o diretório com os arquivos GIF a animar E observe a animação:   Uma versão alternativa com controle da velocidade de animação poderá ser verifica

Recuperar a Senha do Usuário 'SA' em Banco de Dados Microsoft SQL

Boa Tarde Galera, Tive um problema com dois banco de dados ano passado, onde tive que recuperar a senha do usuário 'SA' (Para quem não conhece Microsoft SQL usuário 'SA' é o SysAdmin) Resolvi fazer na época um Batch File para fazer isso já que a onda agora é PowerShell resolvi atualizar o script que segue abaixo: <# +------+-----------------------------+------+-----------+-------------------+ |Nome | Reset Pwd SA | Data | 09/03/2012| Version | 1.0 | +------+-----------------------------+------+-----------+-------------------+ |Autor | Fernando Willian de Souza Furtado | +------+--------------------------------------------------------------------+ |Uso | Reiniciar a Senha do Usuário SA | |-----------------------------------------------------------+---------------+ | | Param. Name | Type | Descricao | Default | +------+----------------+--------+----

BlackTDN :: SoundTrack ~ INSTRUMENTAL HIP HOP / RAP MUSIC PIANO BEAT 2011 2012 MAI MAY NEW [ XZOZ - SUMMER SONG ]

BlackTDN :: SoundTrack ~ O Rappa - Meu Mundo é o Barro (ao vivo na Rocinha)

Minhas Idéias em BlackTDN :: Estrelando : Fernando Willian de Souza Furtado

"Bom dia a todos, Hoje pela manhã ao ligar o meu note na empresa, como de costume acessei o BlackTdn e vi o post sobre gerar informações com CPF valido. E então surgiu a ideia de validar o cadastro de todos os funcionários, motoristas, clientes e fornecedores(pessoa física). Decidi fazer então uma busca no banco de dados ( o que de fato consegui mas demorou um pouco para fazer todo em query) Como todo programador resolvi automatizar essa busca/validação. Criei uma função no banco de dados para o calculo do digito verificador, onde a mesma retorna duas colunas a mais (CPFOK, DIGITO_CORRETO). Abaixo exemplo de utilização após compilado a função.: Select            RA_FILIAL,       RA_MAT,       RA_CIC,       CPFOK,       DIGITO_CORRETO From       SRA010 SRA             Cross Apply       ValidCPF(RA_CIC) Where       D_E_L_E_T_  = ' ' And       CPFOK       = 0 Digito_Verificador_de_CPF.sql Espero que ajude Valeu, Fernando Willian de Souza Furtad

BlackTDN :: Limites ~ Stack Depth Overflow in Function

#ifdef TOTVS     #include "totvs.ch" #else     #ifdef PROTHEUS         #include "protheus.ch"        #endif    #endif /*     Funcao: U_StackFull     Autor:  Marinaldo de Jesus     Data:   08/03/2012     Uso:    Limites. Encontrar: stack depth overflow in function U_STACKFULL */ User Function StackFull()     Static nStackFull := 0        ConOut( ++nStackFull ) Return(U_StackFull())   []s иαldσ dj

BlackTDN :: Tips and Tricks ~ Populando RA_CIC com CPFs Válidos via BTDN Shell

As vezes, para que os testes reflitam os problemas e/ou soluções reais, precisamos criar um ambiente o mais fiel possível. Por exemplo: O Cadastro de Funcionários SRA com CPFs válidos. Para isso poderemos usar a ferramenta u_cpf4sra.prg . A idéia é achar tantos CPFs válidos quanto o número de registro da(s) tabelas SRAs que desejamos “popular”. u_cpf4sra.prg depende da NDJLIB024 e NDJLIB001 . O código: #include "ndj.ch" /*     Função:      U_CPF4SRA     Autor:       Marinaldo de Jesus     Data:        08/03/2012     Descrição:   Funcao para Popular o SRA com CPFs Validos baseado no meu original U_SRACPF de 14/11/2009     Sintaxe:     <Vide Parametros Formais>     Parametros:  <Vide Parametros Formais>     Uso:         Popular o SRA com CPFs Validos */ User Function CPF4SRA(ldbPack,lAllTables,cRDD)     DEFAULT ldbPack     := .F.     DEFAULT lAllTables  := .T.     DEFAULT cRDD        := "TOPCONN"     Private lAbortPrint := .F.     SYMBOL_UN

BlackTDN :: SoundTrack ~ Marisa Monte & Ed Motta : THESE ARE THE SONGS (Tim Maia)

BlackTDN :: Tips and Tricks : Verificando a Conexão do Client

GetServerIP()+":"+GetPvProfString("TCP","PORT","",GetSrvIniName()) onde GetServerIP() Retorna o IP do Server GetSrvIniName() Retorna o Nome do .ini do Server GetPvProfString("TCP","PORT","",GetSrvIniName()) Retorna a Porta onde o server está “escutando”   Ex.: Digite em Fórmulas: MsgInfo(GetServerIP()+":"+GetPvProfString("TCP","PORT","",GetSrvIniName()),"MyConnection") []s иαldσ dj

BlackTDN :: SoundTrack ~ Linkin Park - Somewhere I Belong

BlackTDN :: SoundTrack ~ Faith No More: Digging The Grave

BlackTDN :: Autenticando Via tSocketClient

Exemplo de Autenticação via tSocketClient #INCLUDE "PROTHEUS.CH" #DEFINE MSECONDS_WAIT 5000 Static __cCRLF    := CRLF /*/     Funcao: tSocketAuth     Autor:    Marinaldo de Jesus     Data:    03/03/2012     Uso:    Exemplo de Uso da Classe tSocketClient /*/ User Function tSocketAuth()     Local nVarNameL            := SetVarNameLen( 20 )     Local atSocketC            := {}     Local lGetError            := .F.     Local cGetError     Local ctSocketSend     Local ctSocketReceive     Local ntSocketReset     Local ntSocketConnected     Local ntSocketSend     Local ntSocketReceive     //Instanciamos um objeto do tipo Socket Client     Local otSocketC    := tSocketClient():New()     //Obtemos os Metodos da Classe     atSocketC    := ClassMethArray( otSocketC )     lGetError    := ( aScan( atSocketC , { |aMeth| aMeth[1] == "GETERROR" } ) > 0 )     BEGIN SEQUENCE         //Tentamos efetuar a Conexao a teste.com.br aguardando n milisegundos         ntSoc

BlackTDN :: SoundTrack ~ Three Days Grace ( TIME OF DYING ) | Scenes of Gundam 00

BlackTDN :: Autenticando via HttpGet

O fragmento de Código abaixo demonstra uma das maneiras de autenticação via HttpGet usando o Header. #INCLUDE "PROTHEUS.CH" User Function HttpAuth()     Local aHeadOut        := {}     Local cHttpHeader     := ""     Local cUrl              := "http://teste.com.br"     Local cHttpGet        := ""     aAdd( aHeadOut , "Authorization: Basic "+Encode64("user"+":"+"password" ) )     cHttpGet            := HttpGet(cUrl,"",NIL,aHeadOut,@cHttpHeader) Return( cHttpGet ) []s иαldσ dj

BlackTDN :: SoundTrack ~ Tim Maia : Ela partiu | Racionais Mc´s : Um Homem na Estrada

BlackTDN :: Função não documentada TCCommit

TCCommit é uma função não documentada no TDN (não para nós, meros mortais). Ela é uma função de uso Exclusivo com o dbAcces (TOPCONN) e possui as seguintes características. Função:TCCommit( nOpc , uParam  ) nOPC : Obrigatório Tipo Numérico, define as opções para TCCommit uParam : Opcional Tipo Indefinido. nOPC 1 Begin Transaction 2 Commit 3 RollBack 4 End Transaction 5 uParam==.T. (prepara a Criação de Tabela no AS/400) uparam==.F.(finaliza a Criação de Tabela no AS/400) Um exemplo de uso para a TCCommit é o programa U_R3V2Sal.prg (usado pelo meu “Brother” Rodrigo “OverFail” para retornar o salário do funcionário a partir do SR3 e de acordo com a Data de Referência. Rodrigo teve que recalcular a Folha de Pagamento de uma Empresa do ano de 2011) . #INCLUDE "PROTHEUS.CH" #INCLUDE "TRYEXCEPTION.CH" /*     Funcao:     R3V2Sal     Autor:      Marinaldo de Jesus     Data:       02/03/2012     Descricao:  Atualizar Salario do S

BlackTDN :: SoundTrack : 16 Toneladas