Ir para conteúdo
Fórum Script Brasil

Halfar

Membros
  • Total de itens

    542
  • Registro em

  • Última visita

Tudo que Halfar postou

  1. Peguei o seguinte codigo aqui no forum para saber qual o ultimo dia util, a(1) = DateAdd("m", 1, data - Day(data)) Peguei este codigo lá em http://www.macoratti.net/d290801.htm Testei as datas de 24-03-2006 e 25-06-2006 mas não retornou valor correto. alguém saberia o motivo?
  2. Ola, Testei o programa sugerido neste site, mas para as datas que testei não funcionou, não retornou corretamente o ultimo dia do mes. Pelo o que entendi do codigo dele, o codigo que retorna o ultimo dia do mes é o codigo abaixo. Testei as datas de 24-03-2006 e 25-06-2006 a(1) = DateAdd("m", 1, data - Day(data)) Será que alguém saberia o porque disto?
  3. Tenho um projeto em VB e preciso compilar o arquivo, gerar um executavel. Só que apos executar o arquivo exe, ao tentar executa-lo ocorre um erro e o programa não carrega. Sei que existe alguns parametros que são definidos no VB para compilar o arquivo. Quais são os parametros comuns? Quando possuia a versao 5.0 não dava problema, mas com a versao 6.0 está dando erro...
  4. A variavel desvio2, tipo boleana esta perdendo seu valor. Note a sequencia do programa. Inicialmente a variavel contem o valor true Em seguida é executado o laco for. Quando a variavel X contem o nome de um determinado checkbox, o programa executa o evento click deste checkbox. Na realidade isto não era para acontecer, mas como ocorre isto, é justamente esta variavel desvio2 que irá abortar o fluxo do programa no evento click do check box. Mais abaixo veja o evento click do checkbox: este codigo esta inserido no evento onChange do textbox desvio2 = True ' For I = 0 To FormHoteis.Count - 1 If TypeOf FormHoteis.Controls(I) Is CheckBox Then FormHoteis.Controls(I).Value = False X = FormHoteis.Controls(I).Name End If Next I este trecho de codigo esta inserido no evento click do checkbox If Login.usuario = "" And Login.usuario_administrador = "" Then Mensagem = MsgBox("Seu login está desabilitado. Efetue o login para poder continuar", vbCritical, "Sinithsp - Aviso do sistema") Exit Sub End If xDataUsuario = Format(Date, "yyyy/mm/dd") xHoraUsuario = Format(Time, "HH:MM") // aqui o programa deveria ser abortado. Mas o conteudo da variavel é false. If FormHoteis.desvio2 = True Then Exit Sub End If A variavel que continha o valor true no evento onChange do textbox, ao ir para o evento onClick do checkbox ela fica falsa. não sei porque ocorre isto..
  5. o codigo abaixo funciona corretamente ao ler o tipo de controle textbox. Mas para o controle de opção (optionbox), ele não aceita como optionbox. Já tentei como option somente, mas não aceita. dá erro. funciona para textbox, checkbox, mas para optionbox não funciona... If TypeOf FormHoteis.Controls(i) Is option Then FormHoteis.Controls(i).Value = False X = FormHoteis.Controls(i).Name endif
  6. pode deixar. já resolvi o problema. Tive que pregar alguns pregos no programa para desviar o fluxo do programa... assim resolveu...
  7. Eu disparo o evento onChange a cada caracter porque é um sistema de pesquisa, o usuario digita a letra A, então o sistema busca todos os registros que comecem com a letra A, depois o usuario digita letra N, então o sistema busca todos os registros com An, e assim sucessivamente. Ocorre que se o usuario antes de digitar qualquer coisa no evento OnChange, ele clicar em algum check box, e depois digitar alguma coisa no evento onChange da caixa de texto, ele ao invés de executar o evento onChange, ele primeiro executará o evento onClick do checkbox. Eu já tinha visto este tipo de comportamento em outros programas que fiz, geralmente para arrumar esta coisa, crio variaveis que desviam o fluxo do programa para evitar estes tipos de erro. Mas é que estou com uma curiosidade muito grande em saber porque o VB faz isto. Será que é um bug do VB? Voce nunca viu este tipo de coisa? Até parece que é só comigo que ocorre isto... Explicando melhor o ocorrido: 1 - Usuario clica no evento onClick do checkbox. É disparada corretamente o evento onClick deste checkbox. Até aqui tudo bem. 2 - Em seguida usuario digita algum caracter na caixa de texto que contem o evento OnChange. O VB dispara o evento onClick do checkbox. isto está errado. Deveria disparar o evento OnChange da caixa de texto. Depois que ele executa o evento onClick do checkbox é que ele executa o evento onChange do textbox.
  8. Eu tenho uma caixa de texto e um checkbox. Eu executo um codigo na caixa de texto no evento OnChange. A cada caractere que o usuario digita na caixa de texto, dispara o evento onChange e executa uma rotina. Ocorre que quando o usuario digita na caixa de texto alguma coisa, alem de executar a rotina, absurdamente, o VB executa tambem o evento OnClick do checkbox. Mas isto ocorre somente na seguinte situacao: Usuario clica no checkbox e é executada uma rotina no evento Onclick do checkbox. Isto está correto. Em seguida usuario digita um caracter na caixa de texto no evento Onchange. Ai o programa le o evento onClick do checkbox. Isto está errado. Então gostaria de saber porque o VB faz isto, está executando o evento onClick sem o usuário ter clicado no checkbox.
  9. Bem pessoal, Tenho uma caixa de texto onde é armazenado o cep. Utilizei o controle NumberBox e estava funcionando. Mas sei lá porque, após ter testado alguns ceps e estar tudo ok, ao levar o soft para a empresa concratante do serviço, o usuário ao digitar um cep, quando o cursor sai do campo e vai para outro campo, o controle numberbox simplesmente altera o valor do cep para um outro numero qualquer. Não sei porque ocorreu isto. Achei totalmente estranho, porque ele altera somente para um determinado cep, outros ceps que foram digitados tudo ocorreu normalmente, não deu erro nehum. Pois bem, como já estou de saco cheio destes controles, porque antes utilizei o MaskEdit para formatar outros campos e deu problemas tambem, então resolvi escrever um codigo simples para formatar o cep, pois trata-se apenas de colocar um traço no meio do cep. então fiz o seguinte: Private Sub TextCep_Change(Index As Integer) If Len(TextCep(0).Text) = 5 Then TextCep(0).Text = TextCep(0).Text & "-" End Sub O codigo acima faz com que toda vez que o usuario digitar algo no campo cep, ele verifica o tamanho da string, se for igual a 5 então o programa acrescenta o traço. Só que aí o cursor é posicionado no primeiro numero do cep, dificultando ainda mais o trabalho do usuário. Eu preciso de um comando que posicione o cursor no final do cep....
  10. Ola. O que siginifica o numero 1 na trecho de codigo da funcao abaixo: x = dateadd ('m', 1, x)
  11. Como faço para substituir uma virgula por ponto em um número?
  12. Bem pessoal, Isto ai funciona parcialmente... Mas tem mes que é 30, ou 31.... será que não tem uma funcao para facilitar as coisas... do mes de fevereio fiz um script, funciona, mas achei meio complicado... deve ter algo mais simples senao vou ter que escrever outro script para considerar os dias 30 ou 31... e ainda nem quero pensar no ano bisexto...
  13. Bem, acho que descobri, então eu mesmo responderei: For I = 1 To 12 X = DateSerial(Year(Date), Month(Date) + I, Day(Date)) Next
  14. Tenho uma data inicial, assim: 05-01-2006 Preciso gerar os proximos vencimentos das datas, assim: 05-02-2006 05-03-2006 05-04-2006, e assim sucessivamente...
  15. Halfar

    Dia Util

    Como faço para saber quais são os dias uteis de determinado mes ou do ano inteiro? É que tenho que gerar alguns boletos com vencimentos em dias úteis, assim: O boleto vence no quinto dia útil do mes... Então esse dia de vencimento não será dia 5 e sim, dia 6 ou 7 ou 8, depende... Creio que deu para entender... alguém sabe como? O VB tem alguma função que faça isto?
  16. Ah tá legal, estava realmente utilizando a propriedade text e não value. Quando for a empresa mudo o codigo lá. Grato por toda a atenção que tem dispensado.
  17. Halfar

    Bloquear

    Bem, eu fiz algo muito simples uma vez, mas foi o suficiente para o cara querer me matar. Trabalhei com datas, tipo assim: if DataHoje > = "01-12-2005" // sendo que DataHoje é a data do sistema operacional. alert("Tempo de validade expirado") exit sub endif E se o cara alterar a data do sistema operacional? Aí criei um campo na tabela do banco de dados, um campo lógico, verdadeiro ou falso. Se a condição if acima for verdadeira, então atribui-se verdadeiro para o tal campo logico da tabela. Então aí vem uma segunda parte do programa, após ler o if acima, então lerá o outro if abaixo: if CampoLogico = true then alert("Tempo de validade expirado") exit sub endif E se ele alterar o campo logico da tabela? Neste caso a tabela deverá estar protegida por senha, para que ele não consiga acessá-la. E se ele descobrir a senha, ou fizer uma pratica hackeana para invadir o sistema? Aí f**** legal... Não adiantou nada seu trabalho de proteção. Talvez alguém aqui no forum tenha uma ideia melhor. Mas se voce estiver precisando de algo profissional mesmo, eu utilizei uma vez o HandProt em um software que faz uma série de restrições de uso ao soft, quantos dias o soft pode ser acessado, ou quantas vezes pode ser acessado, ou se funciona até qual data, etc. Eu odiava este soft. Dava uma dor de cabeça com os clientes, porque os clientes inventavam que formatou a máquina e ainda tinha direito a usar mais alguns dias, ai eu tinha que resetar tudo e dar nova habilitação de uso para eles. Estou dizendo tudo isto pelo seguinte: Voce quer mesmo colocar restrição? Dá dor de cabeça viu...
  18. Halfar

    Eventos.

    não sei se vou conseguir te ajudar, mas para acessar os eventos dos objetos (click, gotfocus, lostfocus, dobleclick, etc...) , basta dar um duplo clique em cima do objeto e aparecerá em cima,do lado direito, uma caixa de combo com todos os eventos disponíveis para o objeto. Então voce escolhe o evento que deseja. Abaixo aparecerá uma funçao com o evento escolhido, dentro desta funcao voce escreverá o codigo que deseja. Quanto ao início da ação no formulário, existe eventos que ocorrem no próprio formulário: Initialize ou Activate, por exemplo, ocorrem quando o formulário está sendo "carregado", em um destes eventos voce poderá colocar o codigo que desejar. Estes eventos voce deverá testar para ver se funciona para o que está querendo. Não sei se te ajudei, mas é isso ai. Abraços.
  19. Utilizei maskedit para formatacao do cnpj. Ocorre que preciso limpar o conteudo da caixa do maskedit, assim: maskedit.text = "" Só que não limpa. Alguma solucao ai...?
  20. Olhei as funções, mas será que servem mesmo para manipular o arquivo txt? No exemplo que foi postado aqui neste tópico, (logo abaixo) não aparece a função GetString. Preciso saber por exemplo, como faço para ler a primeira linha do arquivo txt. Open "c:\nome.txt" For Output As #2 Do Until Rs5.EOF Print #2, Rs5.GetString(, 100, vbTab, vbCrLf, ""); Loop Close #2
  21. Ola, Estou utilizando agora o numberbox. Para valores ele funcionou legal na hora de digitar os valores. Só que quando puxo o valor do banco de dados e jogo na caixa do numberbox ocorre erro: Set not supported at runtime. Aí não tem jeito de usar. Porque só funciona quando digito os valores na caixa e depois gravo la no BD. Só que ao puxar o valor do banco de dados dá este erro ai. Porque será este erro?
  22. Ola, tentei primeiro em components, não deu certo, depois fui em references, também não deu certo. Mas e quanto a questao que postei sobre a forma atrapalhada dos numeros no Maskedit, porque se a mascara for assim ##.###,##, se digitar algum numero em formato diferente disto, fica tudo bagunçado. É claro que preciso ter flexibilidade de digitar qualquer intervalo de valor entre 0,01 até 99.999,99. Se eu digitar fora deste formato (99.999,99) como por exemplo 2,23, ai a máscara fica toda bagunçada. Grato por toda ajuda que vem sendo dispensada. Abraços.
  23. Bem, como não consegui usar o input32.ocx conforme expliquei no meu post anterior, tentei utilizar o maskedit mesmo. Só que para valores, não sei se não estou sabendo usar direito, mas veja só: eu tenho a seguinte mascara para valores: ##.###,## Isto deve me permitir digitar valores desde 0,01 até 99.999,99. Se informar valores com a quantidade exata de numeros, ou seja, tipo assim, 45.343,22, neste caso preencho a mascara toda. Mas se for apenas 0,10 aí a máscara fica atrapalhada. Será que não estou sabendo mesmo usar o maskedit para valores?
  24. Ola, Bem, vou testar este codigo. Mas poderia me apontar uma literatura mais abrangente sobre o assunto pois estou trabalhando num sistema cujo arquivo txt contem dados enviandos pelo banco (instituição financeira). Neste arquivo txt existem várias linhas e em cada linha diversos números que representam nome do cliente, valor do boleto, data do boleto, etc... Então preciso ler este arquivo txt linha a linha e em cada linha ler cada grupo de sequencia de numeros, por exemplo, o primeiro grupo de numeros é o cliente, o segundo grupo de numeros é o valor do boleto, etc... Então preciso trabalhar lendo cada grupo de numeros, do primeiro caracter até o 20 caracter é o nome do cliente, e assim para os demais campos... Então precisaria de algum material que tratasse sobre o assunto, ou os comandos que me permitam trabalhar para ler a linha, a posição do caracter, etc... Fico grato.
  25. preciso gravar e extrair dados de um arquivo txt. Estou utilizando ADO para conexao com o BD. alguém poderia me dar um exemplo disto?
×
×
  • Criar Novo...