Fórum Trabalhar com Arquivo .INI para resolver meu problema de imagens em relatorio usando QuickReport #7229

01/07/2009

0

Prezado Rodrigo,                      Hoje 1/07/2009, estou repetindo a minha ultima mensagem neste novo chamado, para aprender a trabalhar com arquivo .INI e solucionar o meu problema de imagens no QuickReport, conforme voce falou que já se utilizou deste recurso.                        Obrigado pela sua solução.                      " Você poderia me dar um exemplo, já que eu nunca trabalhei com arquivos .INI? Lembrando que cada usuário vai ter que escolher seu próprio Logotipo, dessa forma no programa tenho que colocar uma opção como já existe, para gravar este arquivo .INI."                        Atenciosamente, aguardo a sua resposta.                                Pedro da Conceição 
Pedro Conceição

Pedro Conceição

Responder

Posts

02/07/2009

Wesley Yamazack

Olá Pedro,
  estou analisando seu chamado. Vamos lá.

  Primeira coisa a se trbalhar com arquivo INi, você tem que dar Uses em IniFiles

  Vamos agora ao exemplo.
  No onCreate do Form, faça o seguinte

procedure TForm1.FormCreate(Sender: TObject);
var
  Ini: TIniFile;
begin
  // Ler no Arquivo INI
  Ini := TIniFile.Create( ChangeFileExt( Application.ExeName, '.INI' ) );
  try
    Ini.WriteInteger( 'Form', 'Top', Top);
    Ini.WriteInteger( 'Form', 'Left', Left);
    Ini.WriteInteger( 'Form', 'Width', Width);
    Ini.WriteInteger( 'Form', 'Height', Height);
    Ini.WriteString( 'Form', 'Edit1', Edit1.Text );
    Ini.WriteBool( 'Form', 'InitMax', WindowState = wsMaximized );
  finally
    Ini.Free;
  end;
end;


Dicas do código :
     WriteInteger : Para você poder escrever um valor Inteiro  no teu Arquivo;
     WriteString   : Para você poder escrever um valor string    no teu Arquivo;
     WriteBool      : Para você poder escrever um valor boolean no teu Arquivo;

      Form : Propriedade onde você vai estar trabalhando
      Top, Left, Width, Edit1,InitMax :  Propriedade que vai ser gravada no arquivo ini, como se fosse uma tag HTML


  No OnClose do Form, faça o Seguinte
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
  Ini: TIniFile;
begin
  // Escrever no Arquivo INI
  Ini := TIniFile.Create( ChangeFileExt( Application.ExeName, '.INI' ) );
  try
    Ini.WriteInteger( 'Form', 'Top', Top);
    Ini.WriteInteger( 'Form', 'Left', Left);
    Ini.WriteInteger( 'Form', 'Width', Width);
    Ini.WriteInteger( 'Form', 'Height', Height);
    Ini.WriteString( 'Form', 'Edit1', Edit1.Text );
    Ini.WriteBool( 'Form', 'InitMax', WindowState = wsMaximized );
  finally
    Ini.Free;
  end;
end;



   O arquivo INI propriamente dito, como fica :

[Form]
Top=100
Left=100
Width=428
Height=316
Edit1=wes
InitMax=0


  Com isso você pode adaptar a sua necessida, criar uma tela de configuração do relatório, onde o seu usuário poderia carregar uma logo, ou o titulo de um relatório, ou mesmo você gravar as posições de onde ficariam o teu cabeçalho e rodapé.
  Espero que ajude.


Att,

Wesley Y

 
Responder

Gostei + 0

02/07/2009

Pedro Conceição

             Prezado Wesley,                        Eu compreendi mais ou menos. A minha dúvida está sendo como criar este arquivo .INI, com os campos tipo Blob, que serão as imagens que eu quero que saia nos relatórios, e como vou associar em tempo de execução estes campos com o componente QRDBImage ou o QRImage do QuickReport, já que o usuario vai escolher a imagem do logotipo que ele quer.                         Parece que o Rodrigo Mourão tem um exemplo.                         Obrigado. Aguardo a sua resposta.                         Atenciosamente,                                            Pedro da Conceição                      
Responder

Gostei + 0

02/07/2009

Wesley Yamazack

Olá,
  Segue abaixo o link do exemplo.
 
        http://www.4shared.com/file/115532720/d711cc85/QReport.html

  No mesmo você irá encontrar um formulário e 2 botões, no segundo botão você irá carregar a imagem ( BMP ), e no outro botão, você ira ler do arquivo INI, arquela imagem e jogar em um QrImage.

Att,

Wesley Y
Responder

Gostei + 0

03/07/2009

Pedro Conceição

Prezado Wesley,                Obrigado pela sua solução, só tem um problema: quando eu abro o projeto no Delphi, ele pede um unit que não está no diretório: "uFrmPrincipal.pas". Por favor me ajude, pois pelo que compreendi ali é que está o codigo que eu preciso.                 Obrigado, aguardo a sua resposta.                  Atenciosamente,                                    Pedro da Conceição
Responder

Gostei + 0

03/07/2009

Wesley Yamazack

Olá Pedro,
  Segue o link com a solução completa.

http://www.4shared.com/file/115801178/49bb0aa0/QReport2.html


Att,
Wesley Y
Responder

Gostei + 0

06/07/2009

Devmedia

Pedro,
a resposta do consultor foi suficiente? Podemos encerrar o chamado?
Responder

Gostei + 0

08/07/2009

Devmedia

Pedro,
por falta de retorno estamos encerrando o chamado. Caso ainda tenha dúvidas sobre o assunto do post, por favor, volte a postar aqui mesmo que o consultor voltará a lhe atender.
Responder

Gostei + 0

10/07/2009

Pedro Conceição

Prezado Consultor,               O meu problema foi resolvido. Obrigado.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar