Ir para conteúdo
Fórum Script Brasil

flavioavilela

Membros
  • Total de itens

    375
  • Registro em

  • Última visita

Tudo que flavioavilela postou

  1. você pode usar a mesma lógica, só que você deverá agora, não percorrer todo o arquivo texto e sim, o conteúdo do memo... tenta fazer assim: var x: integer; begin for x := 0 to Memo1.Lines.count - 1 do begin VariavelTexto:= Memo1.Text; //faça outros tratamentos que desejar... isso tudo linha a linha do memo end; end;
  2. não sei se ainda precisa disso mas, eu também passei por isso... a solução que achei foi fazer o select normal, como você fez e deu certo e depois faz um campo LookUp, com os campos que quer pegar...
  3. então, ao invés de colocar essa data num maskedit, coloca num label, por exemplo, fazendo assim: Label1.Caption:= FormatDatetime('dddd , dd " de " mmmm" de "yyyy',Date); ve se fica do seu gosto... espero ter ajudado... caso a dica acima não servir, siga esse link abaixo e faça uma função que retorna a data por extenso... http://www.planetadelphi.com.br/dica/6111/...ano-por-extenso
  4. bom, minha opinião é a seguinte: já usei a versão 7, 2007 e estou na 2010... e já tem a 2011... na versão 2010, tem mtos outros componentes interessantes para se colocar na aplicação e outros recursos que o 2007 e o 7 não tinha... por exemplo, o menu Ribbon (estilo office 2007, Hint com balões entre outros, rave reports já incorporado)... todos os componentes externos que eu utilizava nas versões anteriores, consegui para a versão 2010.... eu utilizo como bd, sql server express 2005... muito bom e a integração dele com o delphi é moleza... já tem conexão própria do sql no delphi, o que facilita a integração... mas imagino que se for para aplicações "pequenas", que imagino ser o seu caso, tanto sql server express, firebird, interbase você consegue desenvolver tranquilamente sem grilos, visto que o fluxo de informações não será grande... essa é minha opinião, espero ter ajudado...
  5. para colocar a data no maskedit, faz assim: MaskEdit1.Text:= DateToStr(date); para colocar a mascara no formato de data "DD/MM/AAAA", faz assim '!99/99/9999;1;_'... onde esse 1 no final, indica se você quer gravar o formato também junto no seu banco de dados... '01/01/2011'... se for 0, ele salva só os números da data '01012011'... espero ter ajudado...
  6. devo ter me expressado mal então... estou usando no evento onKeyDown: if (key = VK_DELETE) then begin if not (dm.CDSItens_Venda.State in [dsEdit]) then dm.CDSItens_Venda.Edit; dm.CDSItens_VendaCancelado.AsString:= 'S'; dm.CDSItens_Venda.SaveToFile(Local_Arquivo(2), dfXMLUTF8); end; tipo, não é para deletar propriamente dito... pro usuário, ele pensa que está excluindo, mas para o sistema, ele está cancelando o item selecionado.... outra coisa, eu devo mandar o CDSItens_Venda.SaveToFile somente quando acabar de remover os itens que eu quero??? se sim, fiz um teste aqui, apenas deixando o Clientdataset em modo de edição, passando o valor 'S' para o campo cancelado e só após o usuário terminar tudo, ele salvar... e não funcionou... continuou alterando apenas o último registro para 'S'.... desde já, obrigado
  7. mas esse é código.. edito o clientdataset, passo o valor que quero e depois salvo no xml...
  8. como assim? o usuário digita algo e salva?? só?? cria um arquivo texto pra guardar isso...
  9. bom dia a todos... tenho dbgrid... estou usando clientdataset para criar xml (local)... estou ligando da forma correta, funciona tudo perfeito... só que, tenho um campo chamado Cancelado, onde se o usuário selecionar a linha desejada e pressionar delete, esse campo dessa linha tem que ficar Sim... estou fazendo assim: if not (dm.CDSItens_Venda.State in [dsEdit]) then dm.CDSItens_Venda.Edit; dm.CDSItens_VendaCancelado.AsString:= 'S'; dm.CDSItens_Venda.SaveToFile(Caminho_Arquivo, dfXMLUTF8); só que não funciona... ele sempre coloca o 'S' em uma linha que nem selecionei... e se eu tenho 10 registros e pressiono Delete em 5 por exemplo (um de cada vez), ele fica 'S' somente em um... já tentei ClientDataSet.Post, ClientDataSet.ApplyUpdates e nada... estou usando clientdataset -> datasetprovider -> adoquery -> datasource... desde já, obrigado a todos...
  10. bom, ai você está querendo usar porcentagem? se for, você poderia dar uma "separada" para ficar mais fácil, atribuindo os valores a uma variável e depois jogando nos edit's correspondentes... e para usar a porcentagem, você usa (Valor / 100) * Valor2... assim, você pode estruturar da forma que quiser...
  11. bom, se entendi o que você quis dizer, você quer rodar esse script ai só depois que o processo X estiver aberto, não é isso?? com ctz, quando esse processo estiver aberto, vai ser criado um arquivo na sua máquina, simbolizado esse processo... então, tente fazer assim: Verifica:= false; while not Verifica do begin if FileExists('ArquivoQueRepresentaOProcessoAberto') then begin Verifica:= true; CódigoQueDesejaImplementar; end; end; ou seja, você clica no botão e ele fica num loop até ser encontrado o processo... sacou??? espero ter ajudado...
  12. boa noite amigo, de uma olhada nesses links, acho que ajudará: http://www.revolution.com.br/blogdelphi/20...uma-dbgrid.html http://www.delphibr.com.br/mostradica.php?id=136 espero ter ajudado...
  13. bom, você poderia fazer assim, se eu entendi o que você quer fazer: crie uma variável chamada ativo do tipo boolean... no evento onEnter do RadioGroup você atribui a variavel a true e no onExit você atribui a variavel a false... ai você verifica: if ativo then faça algo else faça algo também tente assim para ver se funciona...
  14. você verificou se as ligações dos compontes (query, datasource) ou outros, estão tudo em ordem? faça alguns outros testes como: where Codigo = 5 só para você ver se realmente ele não chama o registro cujo código seja 5 ou se chama... ai você já vai tirando algumas próprias conclusões...
  15. porque você não faz um modo randomico?? ai esses números já gerados, você vai guardando num lugar (banco, arquivo texto sei lá)... ai, quando gerar outro (numa próxima ocasião), você verifica se esse número gerado já foi gerado... se sim faz algo, se não faz algo.... procedure GeraNumero; var numero: integer; begin randomize; numero := Round(random(99999)); // 99999 é o limite do numero randomico Edit1.Text := IntToStr(num); end; ai um exemplo de como fazer um randomize... espero ter ajudado
  16. boa noite a todos... estou desenvolvendo uma aplicação TEF e nela pede para bloquear o teclado.... estou usando o BlockInput do windows mesmo para bloquear... ele bloqueia teclas "normais", algumas combinações como Alt+Tab, Ctrl+Tab e tal... mas, por exemplo, Tecla do Windows + L ele chama a janela de bloquear computador... mas é preciso bloquear qualquer tecla... alguém da uma dica ai de como fazer para bloquear literalmente tudo????
  17. problema resolvido... se tiver rede, eu inicializdo o clientdataset, limpo e tudo mais... se não, apenas dou o loadfromfile(arquivo)...
  18. hum... uma "mudança significativa" seria uma funcionalidade nova ou acrescentar relatórios ou remover outros... inserir outros tipos de cadastros e por ai vai... isso seria uma "mudança significativa"???
  19. bom, fiz umas modificações aqui e funcionou... o MessageDlg mesmo.. modifiquei os códigos... ficou meio sem lógica mas funcionou rsrsrs...
  20. incrível.... acabei de colocar o MessageDlg aqui em outro lugar no sistema, e mesmo assim ele aparece, mas, sem o foco...
  21. eu marquei a opção Auto_increment build number, ele não deveria incrementar automatico pra mim???
  22. tipo, fiz tudo lá em Options... ele me retornou a versão tudo beleza... só que, eu já compilei ele aqui umas 100 vezes, e a versão retorna 1.0.0.0... é isso mesmo?
  23. nada... será que tem algo a ver que o MessageDlg é um modal e a minha aplicação, não é modal???
×
×
  • Criar Novo...