📄 utdmqcrlcf.~pas
字号:
unit utDMQCRLCF;
interface
uses
SysUtils, Classes, DBTables, DB,IniFiles;
type
TdmRLCF = class(TDataModule)
qryRLCFSQL: TQuery;
dbRLCFSQL: TDatabase;
dbRLCFORA: TDatabase;
dtRLCFORA: TTable;
bmRLCF: TBatchMove;
tblHTEMP: TTable;
qryRLCFORA: TQuery;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
dmRLCF: TdmRLCF;
implementation
uses utFORM2;
{$R *.dfm}
procedure TdmRLCF.DataModuleCreate(Sender: TObject);
var
MyIni: TIniFile;
filename: String;
sqlstr: String;
lhstr: String;
tabnamesql: String;
useridsql: String;
pwdsql: String;
useridora: String;
pwdora: String;
begin
Filename := ExtractFilePath(ParamStr(0)) + 'tqrlcf.ini';
MyIni := TIniFile.Create(Filename);
tabnamesql := MyIni.ReadString('SQLSERVERDB', 'tabname', '');
useridsql := MyIni.ReadString('SQLSERVERDB', 'userid', '');
pwdsql := MyIni.ReadString('SQLSERVERDB', 'pwd', '');
useridora := MyIni.ReadString('ORACLEDB', 'userid', '');
pwdora := MyIni.ReadString('ORACLEDB', 'pwd', '');
dbRLCFSQL.Params.Values['user name'] :=useridsql;
dbRLCFSQL.Params.Values['password'] :=pwdsql;
dbRLCFORA.Params.Values['user name'] :=useridora;
dbRLCFORA.Params.Values['password'] :=pwdora;
msg(useridsql);
msg(pwdsql);
msg(useridora);
msg(pwdora);
with tbLHTEMP do
begin
Open;
lhstr := FieldByName('LH').AsString;
Close;
end;
msg('aaa');
with qryRLCFSQL do
begin
Close;
sql.Clear;
sqlstr :=
'select ''' + lhstr +
''',C*1000 C,Si*1000 Si,Mn*1000 Mn,P*1000 P,S*1000 S,Alt*1000 Alt,Ni*1000 Ni,' +
'Cr*1000 Cr,Cu*1000 Cu,Mo*1000 Mo,V*1000 V,Ti*1000 Ti, Nb*1000 Nb,B*1000 B,' +
'As0*1000 As0,W*1000 W,Others*1000 Others,[C+1/4Mn]*1000 Ceq4 from ' + tabnamesql +
' where heat_id =''' + lhstr + '''';
sql.add(sqlstr);
Open;
end;
msg('ppp');
dbRLCFORA.Connected := True;
msg('iii');
dbRLCFSQL.Connected := True;
msg('yyy');
bmRLCF.Source := qryRLCFSQL;//设置Batchmove组件的源表
bmRLCF.Destination := dtRLCFORA;//设置Batchmove组件的目的表
msg('rrr');
qryRLCFSQL.Open; //激活源表
dtRLCFORA.Open; //激活目的表
bmRLCF.Mode := batAppend;//设置Batchmove组件的功能为追加
bmRLCF.Execute; //执行追加
msg('qqq');
with qryRLCFORA do
begin
Close;
sql.Clear;
sqlstr :=
'update qcpd.pdcfsj set lh=''' + lhstr +
''',pd_C=pd_C/1000,pd_si=pd_Si/1000,pd_Mn=pd_Mn/1000,pd_P=pd_P/1000,pd_S=pd_S/1000,' +
'pd_Alt=pd_Alt/1000,pd_Ni=pd_Ni/1000,pd_Cr=pd_Cr/1000,pd_Cu=pd_Cu/1000,pd_Mo=pd_Mo/1000,' +
'pd_V=pd_V/1000,pd_Ti=pd_Ti/1000,pd_Nb=pd_Nb/1000,pd_B=pd_B/1000,pd_AS=pd_As/1000,'+
'pd_W=pd_w/1000,qt1=qt1/1000,pd_Ceq4=pd_Ceq4/1000 where lh ='''
+ lhstr + '''';
sql.add(sqlstr);
ExecSQL;
Close;
end;
msg('eee');
dbRLCFORA.Close;
dbRLCFSQL.Close;
MyIni.Destroy;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -