Cassiano

Administrators
  • Content count

    173
  • Joined

  • Last visited

  • Days Won

    72

Everything posted by Cassiano

  1. Li na internet falando pra não usar NULL e por exemplo em campos do tipo data colocar uma data padrão tipo "01.01.0001", algo assim ai invés de NULL qdo não tiver informação. Exemplo campo DatadaUltimaCompra em um cliente novo não existe então ao invés do NULL colocar um DEFAULT do tipo do exemplo acima, é por ai mesmo ou uso NULL? Quais seriam as boas práticas em relação a esse assunto de DEFAULT x Tipos de Campos?
  2. Que eu saiba seria por ai mesmo encode e compress e tal, não conheço outra maneira mais eficiente, caso consiga gostaria de saber tb.
  3. Claro @Fábio Senji, mantém aberto pra novas ideias e tal.
  4. tenta consumir algum webservice tipo de cep se não der conexão poderia ser uma alternativa.
  5. Coloca aki o print do erro q esta ocorrendo para q possamos ajudar.
  6. Boa tarde, segue em anexo: Vídeo introdutório sobre a demonstração a título de compartilhar conhecimento da integração via HTTP Request métodos POST e GET com a API WTS Api para integração com o Whatsapp. Vídeo explicativo do funcionamento da API Backup do Projeto Link para Manual da API Sobre a API podem falar diretamente com o Hendell criador da mesma. Contato do Sr. Hendell 62 9 8165-9440 Salientamos q nosso objetivo aki é compartilhar e promover conhecimento. A questão da API, comercialização etc é diretamente com Sr. Hendell da WTS Informática. O fórum WxDev ou seus moderadores não tem qualquer vínculo ou responsabilidade. Em anexo, vídeos demonstrativos e projeto utilizado. Lembrando q para q o projeto funcione é necessário ter um ENDPoint e Token q é conseguido solicitando diretamente para o criador da API no contato acima descrito. Vídeo 1 - Introdução Vídeo 2 - Demonstração Backup Projeto na versão Windev 22 *Atenção* Precisa da URL do EndPoit e do Token da API q tem q ser vistos direto com o pessoal da API
  7. Via ACBr tem um método na Dll ou no monitor q assina pra vc o xml, fora isso não sei. Caso tente pelo ACBr segue sintaxe do comando: https://acbr.sourceforge.io/ACBrMonitor/NFEAssinarNFe.html
  8. Vc diz, por exemplo análise tem 100 tabelas ( q podem ser listadas pelo HListFile como mencionou o @Rinaldo Xavier) ai vc quer saber dessas 100 quantas estão sendo utilizadas no projeto isso? Se for isso q eu saiba vc tem q fazer um Cross-References (botão direito na tabela), mas seria uma por 1, não sei se tem como fazer uma forma geral esse Cross-References (verifica onde esta sendo utilizado o objeto)
  9. O ShellExecute não funciona, use o ExeRun, faça uma jogada usando o ExeRun com arquivos de script pra auxiliar (sh), abaixo separei 3 links de fóruns internacionais com exemplos de como vc pode fazer, pessoal q usa passou informação q funciona, porém o ExeRun não se da muito bem com redirecionamentos por isso usar arquivos de script pra auxiliar alguma tarefa. Nos links abaixo no código qdo vc ver LanceAppli é mesma coisa q ExeRun no caso em francês. https://forum.pcsoft.fr/pt-BR/pcsoft.fr.windev/223138-sourisposx-inexistant-sous-linux-comment-faire-223251/read.awp?hl=LanceAppli,linux https://forum.pcsoft.fr/pt-BR/pcsoft.fr.windev/212706-ligne-commande-linux-212741/read.awp?hl=LanceAppli,linux https://forum.pcsoft.fr/pt-BR/pcsoft.fr.windev/169271-commande-bach-recuperation-messages-169284/read.awp?hl=LanceAppli,linux
  10. Respondendo a mim mesmo....kkkk desculpe pessoal, mas valeu ai pela atenção, descobri aki como fazer segue código, o segredo (conforme manual da função FOpen() esta em passar a constante foAdd para adicionar no final do arquivo sArqLog = CompleteDir(fExeDir())+g_sNomeArqLog nFileID is int IF fFileExist(sArqLog) THEN nFileID = fOpen(sArqLog, foAdd+foReadWrite) // Aki esta o segredo, observem a constante foAdd ELSE nFileID = fCreate(sArqLog) IF nFileID = -1 THEN // Error("Erro ao criar o arquivo", ErrorInfo()) RETURN END nFileID = fOpen(sArqLog, foAdd+foReadWrite) // Aki esta o segredo, observem a constante foAdd END IF nFileID = -1 THEN // Error("Erro ao abrir o arquivo",ErrorInfo()) RETURN END fWriteLine(nFileID, sLinha) IF ErrorOccurred THEN // Error("Error writing to file",ErrorInfo()) RETURN END fClose(nFileID)
  11. Olá, preciso de uma rotina para gravar log, criei o código abaixo, onde passo o nome do arquivo de log e a linha q deve ser inserida no arquivo de log, porém o resultado prático é q grava linhas em branco, alguém sabe dizer o q poderia estar de errado ou teria algum outro exemplo de rotina para geração de arquivos de log? nOk is int = -1 IF fFileExist(sArqLog) THEN nOk = fOpen(sArqLog, foReadWrite) ELSE nOk = fCreate(sArqLog) END IF nOk <> -1 fWrite(sArqLog, sLinha) fClose(sArqLog) END
  12. Conseguiu resolver Caio?
  13. Verificou Antivírus, Permissões do Usuário do Windows, coisas assim?
  14. Valeu Fábio, obrigado por compartilhar.
  15. Muda a propriedade SourceName da Tabela pra "" e depois seta qdo mudar de plano
  16. Q eu saiba sim
  17. Olá pessoal, tenho uma tabela plano de contas q tem 5 campos ID, Código, Nível, Descrição e Tipo (1 = Crédito 2 = Débito) Conforme imagem: Tenho outra tabela chamada conta corrente q tem diversos lançamentos correlacionado/informando a conta a q pertence o lançamento. Minha dúvida é como faria pra ter o resultado agrupado por conta, exemplo ----------------------------------------------------- 01. Entradas............................ R$ 9.985,00 --------------------------------------------------- 01.01 Receitas de Vendas.............. R$ 9.000,00 01.01.01 Fretamento................. R$ 4.000,00 01.01.02 Venda de Pacotes Turísticos R$ 5.000,00 --------------------------------------------------- 01.02 Receitas Financeiras............ R$ 985,00 01.02.01 Rendimento CDI............. R$ 985,00 ----------------------------------------------------- 02. Despesas............................ R$ 7.985,00 --------------------------------------------------- 02.01 Despesas Administrativas........ R$ 1.050,00 02.01.01 Aluguel.................... R$ 950,00 02.01.02 Material de Escritório..... R$ 100,00 --------------------------------------------------- 02.02 Despesas com Pessoal............ R$ 6.935,00 02.02.01 Salários................... R$ 3.990,00 02.02.01 Férias..................... R$ 2.945,00 ----------------------------------------------------- Resultado............................... R$ 2.000,00 (+)
  18. Pessoal, tenho uma variável do tipo structure, exemplo: stClientes is structure nCodigo is int sNome is string END Tenho uma table baseada nessa variável. Blz até aki tudo bem. Minha dúvida é ao modificar o conteúdo da variável, como atualizar a table, já q fiz o TABLEDisplaty(Table_Clientes, e todas opções aki) e não funcionou. Alguém saberia como fazer pra que a tabela baseada na variável seja atualizada com os dados/conteúdo atual da variável?
  19. Vlw Galera, funcionou aki, sinceramente não sei o q estava errando, valeu. Refiz seguindo a ideia do exemplo do @Fábio Senji
  20. Quase isso, Criar uma STRUCTURE Criar um Array dessa STRUCTURE q vai variar os dados (dinamico) Linkar a Table nessa Array... Até aki já consigo. Porém ao se alterar os dados do Array não altera da Table. Mas acredito q estou errando algo, vou fazer uns testes aki com uma structure mais simples com menos dados e tal pra ver como se comporta e tb seguir a ideia do janio alterar a table pra ver se altera no array (tipo o inverso)
  21. Vou montar uns testes aki com as ideias pra ver como se comporta, valeu @pvsousa e @Janio Aguiar
  22. Fiz dessa forma Paulo, qdo criei a structure, já criei um g_arrClientes is arry of stClientes e quando cria a table e escolhe essa variável g_arrClientes ele já cria a tabela e as colunas linkadas. Mas qdo populo o array, e faço um TableDisplay(Table_Clientes) não atualiza.
  23. A senha tem q ser criptografada pelo próprio método da Dll pra gravar no INI. Vc faz isso da seguinte forma: ConfigGravarValor("DFe","Senha",EDT_Senha)
  24. Que eu saiba não, se tiver maravilha... mas nada impede de vc criar uma função genérica q recebe o script e monta um array pra vc com o retorno
  25. Não conheço essa, mas como são chinesas são muito semelhantes, por exemplo tenho uma igualzinho essa mas esta escrito outra marca, se funcionar igual a minha q acredito q funcione atende perfeitamente. A rotina caso não tenha feito tem no repositório com código fonte. segue link