Ir para conteúdo
Fórum Script Brasil

Vivendo&Aprendendo

Membros
  • Total de itens

    856
  • Registro em

  • Última visita

Tudo que Vivendo&Aprendendo postou

  1. Ola tenta colocar no lugar dos parametros no order by os campos do banco que você deseja que ele ordene.... falou
  2. Olha gatinha Esse livro é bom sim e te indico o site da Editora Erica. www.erica.com.br. Procure algum livro sobre relatórios. E infelizmente não posso te ajudar mesmo... vou dar uma olhada no mail que você me mandou e qualquer coisa te envio a resposta falou V&A
  3. Bom amigão.... Se o seu caso é localizar o registro e imprimir o relatório é só você fazer isso via consulta SQL e depois dar um PRINT. Por exemplo, você quer localizar um cliente por nome: AdoQuery.Close; AdoQuery.SQL.Clear; AdoQuery.SQL.Add('Select * From Clientes); AdoQuery.SQL.Add('Where NomeLike :pCod '); AdoQuery.SQL.Add('Order By Codigo'); AdoQuery.Parameters[0].Value := Edit1.Text + '%'; AdoQuery.Open; Isso irá buscar o registro de cliente por nome, quando você digitar o nome do cliente em um edit no envento OnChange; E depois para imprimir é só digitar: QuickReport.Print; Para visualizar QuickReport.Preview; falou
  4. Galera estou criando um sistema para sorteio de jogos, ou seja, o usuario cadastra os times e depois o sistema gera os jogos automaticamente, os times são salvos em uma tabela e os jogos devem ser gerados em outra tabela. Como gerar esse sorteio? falou
  5. Posta o seu código ai ... falou
  6. Ola ... Posta a estrutura do seu relatório e das tabelas do banco de dados ai pra darmos uma olhada nele... Acho que ficará mais fácil de te ajudar. falou V&A
  7. No evento onclose do form de login coloque: Application.terminate; Acho que ira resolver seu problema falou V&A
  8. Ola segue abaixo alguns modelos de atributos para a criação de arquivos: SetFileAttributes('c:\temp\teste.xxx', {Atributo}); Atributo = FILE_ATTRIBUTE_ARCHIVE FILE_ATTRIBUTE_HIDDEN FILE_ATTRIBUTE_NORMAL FILE_ATTRIBUTE_READONLY FILE_ATTRIBUTE_SYSTEM falou V&A
  9. ou no site: www.fortesreport.com.br falou
  10. Amigo eu tuilizo o Fortes Reports para a edição e criação de relatórios é muito bom... E melhor totalmente FREE... Entre em contato comigo pelo e-mail que te envio ele aslalexandre@hotmail.com falou V&A
  11. qual o tipo de relatório que você usa, ou seja, a ferramenta para a criação dos relatórios? O fortes Reports tem um componente próprio para isso. mas tente assim, não sei se dara certo: Procedure TForm1.Button1Click(Sender: TObject); var lf : TLogFont; tf : TFont; i : integer; begin with Form1.Canvas do begin Font.Name := 'Verdana'; Font.Size := 16; tf := TFont.Create; tf.Assign(Font); GetObject(tf.Handle, sizeof(lf), @lf); lf.lfOrientation := 1000; end; For i:= 50000 Downto 1 do Begin lf.lfEscapement := i; tf.Handle := CreateFontIndirect(lf); Form1.Canvas.Font.Assign(tf); Form1.Canvas.TextOut(200, Height div 2, 'Nós é os cara!'); end; tf.Free; end; falou V&A
  12. cara esta relacionada no access e no delhpi via sql pelo código das tabelas falou
  13. Para ler o arquivo use: AssignFile(Arq,CAMINHO DO ARQUIVO'); Reset(Arq); ReadLn(Arq,NumHd); Closefile(Arq); Onde Arq é do tipo TextFile e NumHd e String; falou
  14. Galera tenho um form de entradas, nele possui dados de duas tabelas Entradas e ItensEntradas, quando vou inserir uma entrada digito o local de onde vem, e ai salvo a tabela entradas e depois parto para os campos da tabela ItensEntradas até ai tudo certo, mas quando pesso para editar a tabela Entradas pelo motivo de que ela já recebeu post, tenho q editar ela pra jogar o valor total das entradas, mas quando faço isso da o seguinte erro: A linha não pode ser localizada para atualização. Alguns valores podem ter sido alterados desde que ela foi lida pela ultima vez. O que pode ser isso? falou
  15. quando você abre o relatório e pede para abrir o arquivo .ini e ler o caminho, é só pedir para o componente image receber o arquivo... Eu uso aqui em minha tela principal do meu programa dessa forma, quando abro o sistema ele veirifica o caminho e puxa a imagem. Uso o componente OpenPictureDialog falou
  16. Amigo acho que quando utilizamos o formato de aplicação MDI os forms não aceitam ser chamados pelo ShowModal tem que ser somente Show. Eu utilizo MDI e nunca consegui fazer um form MDI abrir em Showmodal, mas isso é somente o que eu acho. falou
  17. Vivendo&Aprendendo

    Backup

    isso mesmo fecha o outro parenteses que dara certo falou
  18. Olá amigo você pode salvar o caminho dessa imagem no banco de dados ou em um arquivo e depois quando chamar o relatório pede pra verificar o banco ou o local onde você salvou o caminho e abrir a imagem. falou V&A
  19. Amigo eu uso da seguinte forma e funciona corretamente, mas uso banco em access e conexão ADO. No OnClick do botão entrar: If not DmDados.Senhas.Locate('Usuario',EdtUsuario.Text,[LoCaseInsensitive])Then begin MessageBox (handle,'Usuário incorreto. Por favor tente novamente ou clique em Cancelar!','Atenção',mb_IconInformation +mb_ok); EdtUsuario.Text := ''; EdtUsuario.SetFocus; end else If not DmDados.Senhas.Locate('Senha',EdtSenha.Text,[LoCaseInsensitive])Then begin MessageBox (handle,'Senha incorreta. Por favor tente novamente ou clique em Cancelar!','Atenção',mb_IconInformation +mb_ok); EdtSenha.Text := ''; EdtSenha.SetFocus; end else FrmPrincipal.Show; falou espero ter ajudado... qualquer duvida posta ai V&A
  20. Vivendo&Aprendendo

    Backup

    Olá tenta assim então: WinExec(PChar('c:\arquivos de programas\winzip\winzip32.exe' + ' -min -a -r "'+'c:\Teste.zip' + '" ' + 'c:\SeuPrograma\seubanco.gdb',SW_Show); falou
  21. Vivendo&Aprendendo

    Backup

    Olá amigão eu utilizo um componente aqui muito bom, fiz um programa de backup para minhas aplicações, procure na net pelo componente Abrevia, ou AbZiper, e em relação de mover o arquivo para outro local tente o comando copyfile. falou
  22. Ola tenta assim: If (Edit1.Text = '') and (Edit2.Text = '') and (Edit3.Text = '') and (Edit4.Text = '') Then ShowMessage('Não existem dados!'); else QuickReport.print; Não entendi muito bem o que você deseja, mas nesse caso acima ele irá verificar se existe dados em um dos quatro campos, caso não exista dará uma mensagem informando, caso exista irá imprimir o relatório. Não testei. falou V&A
  23. Galera como faço para digitar dentro de um DbLoockUp e de acordo que vou digitando ele vai efetuando uma busca. Exemplo: O nome do cliente é Alexandre, ai digito 'A' e ele me mostra todos com inicio A e de digito ale e ele vai preenchendo o campo... serie como uma busca e um auto preenchimento do campo. falou
  24. Segue abaixo o código completo ta unit, vlw Kikonanet peguei o seu código e implementei ele com o restante q o MdBlade precisava: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids, DB, ADODB, ExtCtrls, Mask, DBCtrls; type TForm1 = class(TForm) StringGrid1: TStringGrid; CheckBox1: TCheckBox; ADOTable1: TADOTable; DataSource1: TDataSource; ADOTable1Fixo: TWideStringField; ADOTable1Id: TWideStringField; ADOTable1Nome: TWideStringField; Label1: TLabel; EdtFixo: TDBEdit; Label2: TLabel; EdtId: TDBEdit; Label3: TLabel; edtNome: TDBEdit; Button2: TButton; ADOTable1Admin: TWideStringField; Label4: TLabel; EdtAdmin: TDBEdit; ADOTable1Cb: TWideStringField; Label5: TLabel; EdtCb: TDBEdit; procedure FormCreate(Sender: TObject); procedure Limpabuffer; procedure AdicionarCheckBoxes; procedure AlinhaCheck; procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.AdicionarCheckBoxes; var i: Integer; NovoCheckBox: TCheckBox; begin limpaBuffer; //é bom não esquecer de limpar controles não utilizados for i := 1 to StringGrid1.RowCount do begin StringGrid1.Cells[0,i] := IntToStr(i); StringGrid1.Cells[1,i] := 'A'; StringGrid1.Cells[2,i] := 'B'; StringGrid1.Cells[3,i] := 'C'; NovoCheckBox := TCheckBox.Create(Application); NovoCheckBox.Width := 0; NovoCheckBox.Visible := false; NovoCheckBox.Caption := 'OK'; NovoCheckBox.Color := clWindow; NovoCheckBox.Tag := i; NovoCheckBox.OnClick := CheckBox1.OnClick; //Associar um evento OnClick já existente para o Novo CheckBox NovoCheckBox.Parent := Form1; StringGrid1.Objects[4,i] := NovoCheckBox; StringGrid1.RowCount := i; end; AlinhaCheck; // agora vamos alinhar o check na celular end; procedure TForm1.AlinhaCheck; var NovoCheckBox: TCheckBox; Rect: TRect; i: Integer; begin for i := 1 to StringGrid1.RowCount do begin NovoCheckBox := (StringGrid1.Objects[4,i] as TCheckBox); if NovoCheckBox <> nil then begin Rect := StringGrid1.CellRect(4,i); // aqui descobrimos a posição da celula para utilizarmos no check NovoCheckBox.Left := StringGrid1.Left + Rect.Left+2; NovoCheckBox.Top := StringGrid1.Top + Rect.Top+2; NovoCheckBox.Width := Rect.Right - Rect.Left; NovoCheckBox.Height := Rect.Bottom - Rect.Top; NovoCheckBox.Visible := True; end; end; end; procedure TForm1.Limpabuffer; var NovoCheckBox: TCheckBox; i: Integer; begin for i := 1 to StringGrid1.RowCount do begin NovoCheckBox := (StringGrid1.Objects[4,i] as TCheckBox); if NovoCheckBox <> nil then // o objeto deve existir para poder ser destruído begin NovoCheckBox.Visible := false; StringGrid1.Objects[4,i] := nil; end; end; end; procedure TForm1.FormCreate(Sender: TObject); begin StringGrid1.Cells[0,0] := 'FIXO'; StringGrid1.Cells[1,0] := 'Id'; StringGrid1.Cells[2,0] := 'Nome'; StringGrid1.Cells[3,0] := 'Admin'; AdicionarCheckBoxes; //rotina que adiciona os Check ADOTable1.Active := True; EdtFixo.Clear; EdtId.Clear; EdtNome.Clear; EdtAdmin.Clear; EdtCb.Clear; end; procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin if not (gdFixed in State) then AlinhaCheck; end; procedure TForm1.Button1Click(Sender: TObject); begin If DataSource1.State in [dsInsert, dsEdit] Then ADOTable1.Post; end; procedure TForm1.Button2Click(Sender: TObject); Var NovoCheckBox: TCheckBox; Rect: TRect; i: Integer; begin for i := 1 to StringGrid1.RowCount do begin NovoCheckBox := (StringGrid1.Objects[4,i] as TCheckBox); If NovoCheckBox.Checked = True Then begin ADOTable1.Append; EdtFixo.Text := StringGrid1.Cells[0,i]; EdtId.Text := StringGrid1.Cells[1,i]; EdtNome.Text := StringGrid1.Cells[2,i]; EdtAdmin.Text := StringGrid1.Cells[3,i]; EdtCb.Text := 'SIM'; ADOTable1.Post; end; end; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin ADOTable1.Active := False; end; end. falou
×
×
  • Criar Novo...