Arquivo Ini para caminho do banco
26/02/2013
0
estou usando SqlConection, Banco de dados Firebird 2.1.
desde já obg!
Francielio Medeiros
Posts
26/02/2013
Luiz Menin
Você pode utilizar este código no evento BeforeConnect do SQLConnection.
if not (FileExists(ExtractFilePath(ParamStr(0)) + 'IniConf.INI')) then begin IniConf := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'IniConf.INI'); IniConf.WriteString('BANCO_DADOS', 'HostName', 'LocalHost'); IniConf.WriteString('BANCO_DADOS', 'Port', '266'); end else begin IniConf := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'IniConf.INI'); SQLConnection1.Params.Values['HostName'] := IniConf.ReadString('BANCO_DADOS', 'HostName', ''); SQLConnection1.Params.Values['Port'] := IniConf.ReadString('BANCO_DADOS', 'Port', ''); end;
26/02/2013
Luiz Menin
var IniConf : TIniFile;
26/02/2013
Francielio Medeiros
unit U_DataModulo;
interface
uses
SysUtils, Classes, WideStrings, DB, SqlExpr, DBXFirebird, FMTBcd, DBClient,
Provider, IniFiles;
type
TDM = class(TDataModule)
SQLConnection1: TSQLConnection;
Q_Cheques: TSQLQuery;
Q_ChequesCODIGO: TIntegerField;
Q_ChequesDATA_EMISSAO: TDateField;
Q_ChequesDATA_VENCIMENTO: TDateField;
Q_ChequesNUMCHEQUE: TStringField;
Q_ChequesTITULAR: TStringField;
Q_ChequesAPELIDO_TITULAR: TStringField;
Q_ChequesTEL_TITULAR: TStringField;
Q_ChequesBANCO: TStringField;
Q_ChequesAGENCIA: TStringField;
Q_ChequesCONTA: TStringField;
Q_ChequesSITUACAO_CHQ: TStringField;
Q_ChequesSACADOR: TStringField;
Q_ChequesTEL_SACADOR: TStringField;
Q_ChequesOBS: TStringField;
DSP_Cheques: TDataSetProvider;
CDS_Cheques: TClientDataSet;
CDS_ChequesCODIGO: TIntegerField;
CDS_ChequesDATA_EMISSAO: TDateField;
CDS_ChequesDATA_VENCIMENTO: TDateField;
CDS_ChequesNUMCHEQUE: TStringField;
CDS_ChequesTITULAR: TStringField;
CDS_ChequesAPELIDO_TITULAR: TStringField;
CDS_ChequesTEL_TITULAR: TStringField;
CDS_ChequesBANCO: TStringField;
CDS_ChequesAGENCIA: TStringField;
CDS_ChequesCONTA: TStringField;
CDS_ChequesSITUACAO_CHQ: TStringField;
CDS_ChequesSACADOR: TStringField;
CDS_ChequesTEL_SACADOR: TStringField;
CDS_ChequesOBS: TStringField;
Q_ChequesVALOR: TFMTBCDField;
CDS_ChequesVALOR: TFMTBCDField;
SQLDataSet1: TSQLDataSet;
DataSetProvider1: TDataSetProvider;
SQLDataSet1CODIGO: TIntegerField;
SQLDataSet1DATA_EMISSAO: TDateField;
SQLDataSet1DATA_VENCIMENTO: TDateField;
SQLDataSet1NUMCHEQUE: TStringField;
SQLDataSet1TITULAR: TStringField;
SQLDataSet1APELIDO_TITULAR: TStringField;
SQLDataSet1TEL_TITULAR: TStringField;
SQLDataSet1BANCO: TStringField;
SQLDataSet1AGENCIA: TStringField;
SQLDataSet1CONTA: TStringField;
SQLDataSet1VALOR: TFMTBCDField;
SQLDataSet1SITUACAO_CHQ: TStringField;
SQLDataSet1SACADOR: TStringField;
SQLDataSet1TEL_SACADOR: TStringField;
SQLDataSet1OBS: TStringField;
ClientDataSet1: TClientDataSet;
ClientDataSet1CODIGO: TIntegerField;
ClientDataSet1DATA_EMISSAO: TDateField;
ClientDataSet1DATA_VENCIMENTO: TDateField;
ClientDataSet1NUMCHEQUE: TStringField;
ClientDataSet1TITULAR: TStringField;
ClientDataSet1APELIDO_TITULAR: TStringField;
ClientDataSet1TEL_TITULAR: TStringField;
ClientDataSet1BANCO: TStringField;
ClientDataSet1AGENCIA: TStringField;
ClientDataSet1CONTA: TStringField;
ClientDataSet1VALOR: TFMTBCDField;
ClientDataSet1SITUACAO_CHQ: TStringField;
ClientDataSet1SACADOR: TStringField;
ClientDataSet1TEL_SACADOR: TStringField;
ClientDataSet1OBS: TStringField;
Q_PesqChq: TSQLQuery;
DSP_PesqChq: TDataSetProvider;
CDS_PesqChq: TClientDataSet;
Q_PesqChqCODIGO: TIntegerField;
Q_PesqChqDATA_EMISSAO: TDateField;
Q_PesqChqDATA_VENCIMENTO: TDateField;
Q_PesqChqNUMCHEQUE: TStringField;
Q_PesqChqTITULAR: TStringField;
Q_PesqChqAPELIDO_TITULAR: TStringField;
Q_PesqChqTEL_TITULAR: TStringField;
Q_PesqChqBANCO: TStringField;
Q_PesqChqAGENCIA: TStringField;
Q_PesqChqCONTA: TStringField;
Q_PesqChqVALOR: TFMTBCDField;
Q_PesqChqSITUACAO_CHQ: TStringField;
Q_PesqChqSACADOR: TStringField;
Q_PesqChqTEL_SACADOR: TStringField;
Q_PesqChqOBS: TStringField;
CDS_PesqChqCODIGO: TIntegerField;
CDS_PesqChqDATA_EMISSAO: TDateField;
CDS_PesqChqDATA_VENCIMENTO: TDateField;
CDS_PesqChqNUMCHEQUE: TStringField;
CDS_PesqChqTITULAR: TStringField;
CDS_PesqChqAPELIDO_TITULAR: TStringField;
CDS_PesqChqTEL_TITULAR: TStringField;
CDS_PesqChqBANCO: TStringField;
CDS_PesqChqAGENCIA: TStringField;
CDS_PesqChqCONTA: TStringField;
CDS_PesqChqVALOR: TFMTBCDField;
CDS_PesqChqSITUACAO_CHQ: TStringField;
CDS_PesqChqSACADOR: TStringField;
CDS_PesqChqTEL_SACADOR: TStringField;
CDS_PesqChqOBS: TStringField;
Q_ChequesCLIENTE: TStringField;
CDS_ChequesCLIENTE: TStringField;
procedure SQLConnection1BeforeConnect(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DM: TDM;
implementation
uses U_CadCheques, U_Principal, U_ListChqData;
{$R *.dfm}
procedure TDM.SQLConnection1BeforeConnect(Sender: TObject);
var
IniConf : TIniFile;
begin
if not (FileExists(ExtractFilePath(ParamStr(0)) + 'IniConf.INI')) then
end;
begin
IniConf := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'IniConf.INI');
IniConf.WriteString('BANCO_DADOS', 'HostName', 'LocalHost');
IniConf.WriteString('BANCO_DADOS', 'Port', '266');
end
else
begin
IniConf := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'IniConf.INI');
SQLConnection1.Params.Values['HostName'] := IniConf.ReadString('BANCO_DADOS', 'HostName', '');
SQLConnection1.Params.Values['Port'] := IniConf.ReadString('BANCO_DADOS', 'Port', '');
end;
end;
end.
precisa de mais alguma coisa ??
26/02/2013
Luiz Menin
- Eu utilizo arquitetura cliente/servidor. Se você utiliza também, vai funcionar sem problemas.
- Se você não utiliza, deve alterar os parâmetros. Por exemplo, path do banco de dados.
26/02/2013
Francielio Medeiros
Arquivo Ini contem:
[CONFIG]
DATABASE=LocalHost:C:\MSCheques\BANCO\MSDADOS.FDB
26/02/2013
Luiz Menin
procedure TDM.SQLConnection1BeforeConnect(Sender: TObject); var IniConf : TIniFile; begin if not (FileExists(ExtractFilePath(ParamStr(0)) + 'IniConf.INI')) then end; begin IniConf := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'IniConf.INI'); IniConf.WriteString('CONFIG', 'DATABASE', 'LocalHost:C:\MSCheques\BANCO\MSDADOS.FDB'); end else begin IniConf := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'IniConf.INI'); SQLConnection1.Params.Values['HostName'] := IniConf.ReadString('CONFIG', 'DATABASE', ''); end; end;
Fico no aguardo do resultado...
26/02/2013
Luiz Menin
procedure TDM.SQLConnection1BeforeConnect(Sender: TObject); var IniConf : TIniFile; begin if not (FileExists(ExtractFilePath(ParamStr(0)) + 'IniConf.INI')) then end; begin IniConf := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'IniConf.INI'); IniConf.WriteString('CONFIG', 'DATABASE', 'LocalHost:C:\MSCheques\BANCO\MSDADOS.FDB'); end else begin IniConf := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'IniConf.INI'); SQLConnection1.Params.Values['DataBase'] := IniConf.ReadString('CONFIG', 'DATABASE', ''); end; end;
27/02/2013
Francielio Medeiros
O Mundo precisa de mais pessoas como vc que ajuda aos outros tudo de Bom!!!
27/02/2013
Luiz Menin
Estou apenas retribuindo a ajuda que me foi dada quando iniciei a programar e visitava fóruns em busca de soluções.
Fico no aguardo do resultado.
Abraço.
Clique aqui para fazer login e interagir na Comunidade :)