📄 sjdr_un.pas
字号:
q_a.SQL.Add('B_DATE,e_date,b_time,e_time,TEL_UNIT,');
q_a.SQL.Add('FL_NAME,TOTAL_MONEY,JBFL,USER_ID,USER_TIME)');
q_a.SQL.Add('values(:zj_tel,:bj_tel,:b_date,:e_date,');
q_a.SQL.Add(':b_time,:e_time,:tel_unit,:fl_name,:total_money,');
q_a.SQL.Add(':jbfl,:user_id,:user_time)');
q_a.Parameters.ParamByName('zj_tel').Value:=zj_num;
q_a.Parameters.ParamByName('bj_tel').Value:=trim(bj_num);
q_a.Parameters.ParamByName('b_date').Value:=b_date;
q_a.Parameters.ParamByName('e_date').Value:=e_date;
q_a.Parameters.ParamByName('b_time').Value:=b_time;
q_a.Parameters.ParamByName('e_time').Value:=e_time;
q_a.Parameters.ParamByName('tel_unit').Value:=TRIM(tel_unit);
q_a.Parameters.ParamByName('fl_name').Value:=TRIM(fl_name);
q_a.Parameters.ParamByName('total_money').Value:=fy_total;
q_a.Parameters.ParamByName('jbfl').Value:=jbfl;
q_a.Parameters.ParamByName('user_id').Value:=user_id;
q_a.Parameters.ParamByName('user_time').Value:=now;
q_a.Prepared;
q_a.ExecSQL;
//将数据导入到TEL_NO表中 及 无户主数据表(no_DATA_YW)中
//首先在客户表中查看用户的信息是否存在.
//存在则录入到数据库中...如果不存在.则录入到无主数据库中
q_1.Close;
q_1.SQL.Clear;
q_1.SQL.Add('select * from TEL_USER where TEL_NUM =:tel_num');
q_1.Parameters.ParamByName('tel_num').Value:=zj_num;
q_1.Prepared;
q_1.Open;
if q_1.Recordset.RecordCount >0 then
begin
//说明存在这个电话号,录入到NO数据表中.
q_a.Close;
q_a.SQL.Clear;
q_a.SQL.Add('insert into TEL_NO (zj_tel,bj_tel,');
q_a.SQL.Add('B_DATE,e_date,b_time,e_time,TEL_UNIT,');
q_a.SQL.Add('FL_NAME,TOTAL_MONEY,JBFL,USER_ID,USER_TIME,TEL_SFZH,TEL_NAME)');
q_a.SQL.Add('values(:zj_tel,:bj_tel,:b_date,:e_date,');
q_a.SQL.Add(':b_time,:e_time,:tel_unit,:fl_name,:total_money,');
q_a.SQL.Add(':jbfl,:user_id,:user_time,:TEL_SFZH,:TEL_NAME )');
q_a.Parameters.ParamByName('zj_tel').Value:=zj_num;
q_a.Parameters.ParamByName('bj_tel').Value:=trim(bj_num);
q_a.Parameters.ParamByName('b_date').Value:=b_date;
q_a.Parameters.ParamByName('e_date').Value:=e_date;
q_a.Parameters.ParamByName('b_time').Value:=b_time;
q_a.Parameters.ParamByName('e_time').Value:=e_time;
q_a.Parameters.ParamByName('tel_unit').Value:=TRIM(tel_unit);
q_a.Parameters.ParamByName('fl_name').Value:=TRIM(fl_name);
q_a.Parameters.ParamByName('total_money').Value:=fy_total;
q_a.Parameters.ParamByName('jbfl').Value:=jbfl;
q_a.Parameters.ParamByName('user_id').Value:=user_id;
q_a.Parameters.ParamByName('user_time').Value:=now;
q_a.Parameters.ParamByName('TEL_SFZH').Value:=Q_1.FieldValues ['TEL_SFZH'];
q_a.Parameters.ParamByName('TEL_NAME').Value:=Q_1.FieldValues ['tel_name'];
q_a.Prepared;
q_a.ExecSQL;
end
else
begin
//说明不存在这个电话号 录入到无户主数据据表中.
q_a.Close;
q_a.SQL.Clear;
q_a.SQL.Add('insert into no_DATA_YW (zj_tel,bj_tel,');
q_a.SQL.Add('B_DATE,e_date,b_time,e_time,TEL_UNIT,');
q_a.SQL.Add('FL_NAME,TOTAL_MONEY,JBFL,USER_ID,USER_TIME)');
q_a.SQL.Add('values(:zj_tel,:bj_tel,:b_date,:e_date,');
q_a.SQL.Add(':b_time,:e_time,:tel_unit,:fl_name,:total_money,');
q_a.SQL.Add(':jbfl,:user_id,:user_time)');
q_a.Parameters.ParamByName('zj_tel').Value:=zj_num;
q_a.Parameters.ParamByName('bj_tel').Value:=trim(bj_num);
q_a.Parameters.ParamByName('b_date').Value:=b_date;
q_a.Parameters.ParamByName('e_date').Value:=e_date;
q_a.Parameters.ParamByName('b_time').Value:=b_time;
q_a.Parameters.ParamByName('e_time').Value:=e_time;
q_a.Parameters.ParamByName('tel_unit').Value:=TRIM(tel_unit);
q_a.Parameters.ParamByName('fl_name').Value:=TRIM(fl_name);
q_a.Parameters.ParamByName('total_money').Value:=fy_total;
q_a.Parameters.ParamByName('jbfl').Value:=jbfl;
q_a.Parameters.ParamByName('user_id').Value:=user_id;
q_a.Parameters.ParamByName('user_time').Value:=now;
q_a.Prepared;
q_a.ExecSQL;
end;
// dm.q_3.Next;
end
else
main.stu.Caption:='系统正准备导入缓冲数据到数据库中,请稍候.当前的电话号为:'+ zj_num+'此条数据已经存在,不能导入。。。。';
dm.q_3.Next;
end;
// showmessage(mb);
end;
end;
begin
das:=tdatasource.Create(nil);
dm:=tdm.Create(nil);
das.DataSet:=dm.q_b;
dm.q_b.Close;
dm.q_b.SQL.Clear;
dm.q_b.SQL.Add('select ZJ_TEL as 主叫号码,BJ_TEL as 被叫号码,');
dm.q_b.SQL.add('B_DATE as 开始日期,B_TIME as 开始时间,E_TIME as 结束时间,');
dm.q_b.SQL.Add('TEL_UNIT as 单元,FL_NAME as 费类名称,TOTAL_MONEY as 总费用,');
dm.q_b.SQL.Add('JBFL as 基本费率,USER_ID as 操作员工号 from DATA_YW');
dm.q_b.Prepared;
dm.q_b.Open;
bsskindbgrid1.DataSource:=das;
da1.DataSet:=dm.q_1;
dm.q_1.Close;
dm.q_1.SQL.Clear;
dm.q_1.SQL.Add('select TEL_SFZH as 身份证号,TEL_NAME as 用户姓名,ZJ_TEL as 主叫号码,BJ_TEL as 被叫号码,');
dm.q_1.SQL.add('B_DATE as 开始日期,B_TIME as 开始时间,E_TIME as 结束时间,');
dm.q_1.SQL.Add('TEL_UNIT as 单元,FL_NAME as 费类名称,TOTAL_MONEY as 总费用,');
dm.q_1.SQL.Add('JBFL as 基本费率,USER_ID as 操作员工号 from tel_no');
dm.q_1.Prepared;
dm.q_1.Open;
bsskindbgrid2.DataSource:=da1;
da2.DataSet:=dm.q_2;
dm.q_2.Close;
dm.q_2.SQL.Clear;
dm.q_2.SQL.Add('select ZJ_TEL as 主叫号码,BJ_TEL as 被叫号码,');
dm.q_2.SQL.add('B_DATE as 开始日期,B_TIME as 开始时间,E_TIME as 结束时间,');
dm.q_2.SQL.Add('TEL_UNIT as 单元,FL_NAME as 费类名称,TOTAL_MONEY as 总费用,');
dm.q_2.SQL.Add('JBFL as 基本费率,USER_ID as 操作员工号 from no_DATA_YW');
dm.q_2.Prepared;
dm.q_2.Open;
bsskindbgrid3.DataSource:=da2;
end;
main.stu.Caption:='系统数据导入完毕...现在可以正常使用.';
{ with dm do
begin
q_A.Close;
q_a.SQL.Clear;
q_a.SQL.Add('update table tel_yes set total_money=round(total_money,-2)');
q_a.Prepared;
q_a.ExecSQL;
end; }
bsskingauge1.Value:=0;
writetolog('0.00');
end
else
begin
bsskinmessage1.MessageDlg('请先选择要导入到数据库中的文件....',MTINFORMATION,[mbyes],0);
bsskinxformbutton1.SetFocus;
end;
end;
procedure Tdrsj.FormCreate(Sender: TObject);
// var
// das:tdatasource;
var
table_name:tstringlist;
begin
dm:=tdm.Create(nil);
table_name:=tstringlist.Create;
dm.sj.GetTableNames(table_name,false);
if table_name.IndexOf('drsj_tmp')=-1 then
begin
dm.q_1.Close;
dm.q_1.SQL.Clear;
dm.q_1.SQL.Add('create table drsj_tmp (');
dm.q_1.SQL.Add('YW_XH integer null identity primary key ,');
dm.q_1.SQL.Add('ZJ_TEL varchar(13) null,');
dm.q_1.SQL.Add('bJ_TEL varchar(20) null,');
dm.q_1.SQL.Add('B_DATE datetime,');
dm.q_1.SQL.Add('e_DATE datetime,');
dm.q_1.SQL.Add('B_time datetime,');
dm.q_1.SQL.Add('e_time datetime,');
dm.q_1.SQL.Add('TEL_unit varchar(8) null,');
dm.q_1.SQL.Add('fl_name varchar(18) null,');
dm.q_1.SQL.Add('total_money double null,');
dm.q_1.SQL.Add('jbfl double null');
dm.q_1.SQL.Add(')');
dm.q_1.Prepared;
dm.q_1.ExecSQL;
end;
main.stu.Caption:='系统正在初始化。。。。。请稍候。。' ;
bsskingauge1.Value:=0;
das:=tdatasource.Create(nil);
da1:=tdatasource.Create(nil);
da2:=tdatasource.Create(nil);
bsskindbgrid1.DataSource:=das;
das.DataSet:=dm.q_b;
dm.q_b.Close;
dm.q_b.SQL.Clear;
dm.q_b.SQL.Add('select ZJ_TEL as 主叫号码,BJ_TEL as 被叫号码,');
dm.q_b.SQL.add('B_DATE as 开始日期,B_TIME as 开始时间,E_TIME as 结束时间,');
dm.q_b.SQL.Add('TEL_UNIT as 单元,FL_NAME as 费类名称,TOTAL_MONEY as 总费用,');
dm.q_b.SQL.Add('JBFL as 基本费率,USER_ID as 操作员工号 from DATA_YW');
dm.q_b.Prepared;
dm.q_b.Open;
main.stu.Caption:='系统正在初始化。。。。。正在处理可收费数据。。。' ;
bsskindbgrid2.DataSource:=da1;
da1.DataSet:=dm.q_1;
dm.q_1.Close;
dm.q_1.SQL.Clear;
dm.q_1.SQL.Add('select TEL_SFZH as 身份证号,TEL_NAME as 用户姓名,ZJ_TEL as 主叫号码,BJ_TEL as 被叫号码,');
dm.q_1.SQL.add('B_DATE as 开始日期,B_TIME as 开始时间,E_TIME as 结束时间,');
dm.q_1.SQL.Add('TEL_UNIT as 单元,FL_NAME as 费类名称,TOTAL_MONEY as 总费用,');
dm.q_1.SQL.Add('JBFL as 基本费率,USER_ID as 操作员工号 from tel_no');
dm.q_1.Prepared;
dm.q_1.Open;
main.stu.Caption:='系统正在初始化。。。。。正在处理坏帐数据。。。' ;
bsskindbgrid3.DataSource:=da2;
da2.DataSet:=dm.q_2;
dm.q_2.Close;
dm.q_2.SQL.Clear;
dm.q_2.SQL.Add('select ZJ_TEL as 主叫号码,BJ_TEL as 被叫号码,');
dm.q_2.SQL.add('B_DATE as 开始日期,B_TIME as 开始时间,E_TIME as 结束时间,');
dm.q_2.SQL.Add('TEL_UNIT as 单元,FL_NAME as 费类名称,TOTAL_MONEY as 总费用,');
dm.q_2.SQL.Add('JBFL as 基本费率,USER_ID as 操作员工号 from no_DATA_YW');
dm.q_2.Prepared;
dm.q_2.Open;
main.stu.Caption:='系统初始化完毕。。可以使用' ;
end;
procedure Tdrsj.bsSkinXFormButton4Click(Sender: TObject);
begin
bsskingauge1.Value:=0;
dm:=tdm.Create(nil);
with dm do
begin
q_2.Close;
q_2.SQL.Clear;
q_2.SQL.Add('select count() as cu_jl from tel_no');
q_2.Prepared;
q_2.Open;
end;
bsskingauge1.MinValue:=0;
bsskingauge1.MaxValue:=dm.q_2.Recordset.RecordCount;
main.stu.Caption:='正在进行系统数据整理,请稍候..................' ;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -