⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sjdr_un.pas

📁 布林电话收费管理系统
💻 PAS
📖 第 1 页 / 共 2 页
字号:
              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 + -