📄 udataout.~pas
字号:
SQL.Add('WHERE b.ryid_ff (+)= a.ryid_ff and');
SQL.Add(' a.dwid_ff = a.ssdwid and');
SQL.Add(' a.ssdwid = c.dwid_ff and');
SQL.Add(' a.ryzt = 1 and');
SQL.Add(' a.ffjgid = ''1000000007''');
SQL.Add('ORDER BY b.dm, a.ssdwid, a.ryid_ff');
mmoMain.Lines.Add('邮政汇款正在生成...');
Open;
mmoMain.Lines.Add('共生成数据' + IntToStr(RecordCount) + '条记录');
ToCSV.Transfer(path + '发放机构_邮政汇款.txt');
mmoMain.Lines.Add('已生成文件' + path +
'发放机构_邮政汇款.txt');
AddLine;
{ //有组
Close;
SQL.Clear;
SQL.Add('select a.dwjbr as 姓名, a.yzbm as 邮政编码,');
SQL.Add(' a.dwdz as 地址, c.je_hk as 发放金额, b.dwdm as 单位代码,');
SQL.Add(' b.dwmc as 单位名称, a.dwid_ff as 组标示, c.rs_hk as 人数,'''
+ edtYear.Text
+ FillWord(edtMonth.Text, 2)
+ ''' AS 所属年月');
SQL.Add('FROM tff_dwxx a, tff_dwhzxx c, tff_dwxx b');
SQL.Add('WHERE a.dwid_ff <> a.ssdwid and');
SQL.Add(' a.ssdwid = b.dwid_ff and');
SQL.Add(' a.dwid_ff = c.dwid_ff and');
SQL.Add(' nvl(c.rs_hk,0) > 0 and ');
SQL.Add(' c.ffyf = to_Date(''' + edtYear.Text +
edtMonth.Text + ''',''yyyymm'')');
SQL.Add('ORDER BY b.dwdm, a.dwid_ff ');
mmoMain.Lines.Add('邮政汇款(有组)正在生成...');
Open;
mmoMain.Lines.Add('共生成数据' + IntToStr(RecordCount) + '条记录');
ToCSV.Transfer(path + '发放机构_邮政汇款(有组).txt');
mmoMain.Lines.Add('已生成文件' + path +
'发放机构_邮政汇款(有组).txt');
AddLine;
}
end;
if chkJG_7.Checked then
begin
Close;
SQL.Clear;
SQL.Add('SELECT a.xm as 姓名, a.sfzh as 身份证号,');
SQL.Add(' a.zh as 帐号, a.khh as 开户行, a.hrdd as 汇入地点, a.ffje as 发放金额,');
SQL.Add(' b.dm as 地区代码, b.mc as 地区名称, c.dwdm as 单位代码, c.dwmc as 单位名称,');
SQL.Add(' a.ryid_ff as 人员标示,''' + edtYear.Text +
FillWord(edtMonth.Text, 2)
+ ''' AS 所属年月');
SQL.Add('FROM tff_ryxx a, tff_rydqxx b, tff_dwxx c');
SQL.Add('WHERE b.ryid_ff (+)= a.ryid_ff and');
SQL.Add(' a.dwid_ff = a.ssdwid and');
SQL.Add(' a.ssdwid = c.dwid_ff and');
SQL.Add(' a.ryzt = 1 and');
SQL.Add(' (a.ffjgid = ''1000000009'' or a.ffjgid = ''1000000005'')');
SQL.Add('ORDER BY b.dm, a.ssdwid, a.ryid_ff');
mmoMain.Lines.Add('其他机构正在生成...');
Open;
mmoMain.Lines.Add('共生成数据' + IntToStr(RecordCount) + '条记录');
ToCSV.Transfer(path + '发放机构_其他机构.txt');
mmoMain.Lines.Add('已生成文件' + path +
'发放机构_其他机构.txt');
AddLine;
{ //有组
Close;
SQL.Clear;
SQL.Add('select a.dwjbr as 姓名, a.zh as 帐号,');
SQL.Add(' a.khmc as 开户行, a.dwdz as 汇入地点,');
SQL.Add(' c.je_qt as 发放金额, b.dwdm as 单位代码,');
SQL.Add(' b.dwmc as 单位, a.dwid_ff as 组标识, c.rs_qt as 组人数');
SQL.Add('from tff_dwxx a, tff_dwhzxx c, tff_dwxx b');
SQL.Add('where a.dwid_ff <> a.ssdwid and');
SQL.Add(' a.ssdwid = b.dwid_ff and');
SQL.Add(' a.dwid_ff = c.dwid_ff and');
SQL.Add(' nvl(c.rs_qt,0) > 0 and');
SQL.Add(' c.ffyf = to_Date(''' + edtYear.Text +
edtMonth.Text + ''',''yyyymm'')');
SQL.Add('order by b.dwdm, a.dwid_ff');
mmoMain.Lines.Add('其他机构(有组)正在生成...');
Open;
mmoMain.Lines.Add('共生成数据' + IntToStr(RecordCount) + '条记录');
ToCSV.Transfer(path + '发放机构_其他机构(有组).txt');
mmoMain.Lines.Add('已生成文件' + path +
'发放机构_其他机构(有组).txt');
AddLine;
}end;
end;
mmoMain.Lines.Add('发放机构数据已经生成');
end;
2: //XXXX年XX月补发数据
begin
mmoMain.Lines.Add(edtYear.Text + '年' + fillWord(edtMonth.Text, 2) + '月'
+
'补发数据正在生成...');
mmoMain.Lines.Add('');
with qryMain do
begin
if ChkJG_1.Checked then
begin
//工商补发数据
Close;
SQL.Clear;
SQL.Add('select a.xm as 姓名, a.sfzh as 身份证号, ');
SQL.Add(' a.zh as 帐号, a.khh as 开户行, ');
// SQL.Add(' a.hrdd as 汇入地点, a.ffje as 发放金额, ');
SQL.Add(' a.hrdd as 汇入地点, d.ffje as 发放金额, ');
SQL.Add(' b.dm as 地区代码, b.mc as 地区名称, ');
SQL.Add(' c.dwdm as 单位代码, c.dwmc as 单位名称, ');
SQL.Add(' a.ryid_ff as 人员标识,to_char(d.ffyf,''yyyymm'') as 所属月份');
SQL.Add('from tff_ryxx a, tff_rydqxx b, tff_dwxx c, tff_ryfkxx d');
SQL.Add('where b.ryid_ff (+)= a.ryid_ff and');
SQL.Add(' a.dwid_ff = a.ssdwid and');
SQL.Add(' d.ffbz=1 and');
SQL.Add(' a.ssdwid = c.dwid_ff and');
SQL.Add(' d.ryid_ff = a.ryid_ff and');
//补发数据必须不同于人员数据
SQL.Add(' (d.xm<>a.xm or d.sfzh<>a.sfzh or d.khh<>a.khh ');
SQL.Add(' or d.zh<>a.zh or d.yzbm<>a.yzbm or d.dz<>a.dz) and ');
//
SQL.Add(' to_char(d.fkrq,''yyyy.mm'')=''' + edtYear2.Text + '.'
+ fillword(edtMonth2.Text, 2) + ''' and ');
SQL.Add(' to_char(d.ffyf,''yyyy.mm'')=''' +
edtYear.Text + '.' + fillword(edtMonth.Text, 2) + ''' and');
SQL.Add(' d.ffjgid = ''1000000001'' and');
SQL.Add(' a.ffjgid <> ''1000000006'' and a.ffjgid <> ''1000000007''');
SQL.Add('order by b.dm, a.ssdwid, a.ryid_ff');
mmoMain.Lines.Add(edtYear.Text + '年' +
fillWord(edtMonth.Text, 2) + '月' +
'工商银行补发数据正在生成...');
Open;
mmoMain.Lines.Add('共生成数据' + IntToStr(RecordCount) +
'条记录');
if RecordCount <> 0 then
begin
ToCSV.Transfer(path + edtYear.Text + '年' +
fillWord(edtMonth.Text,
2) +
'月' + '工商银行补发数据.txt');
mmoMain.Lines.Add('已生成文件' + path + edtYear.Text + '年' +
fillWord(edtMonth.Text, 2) + '月' +
'工商银行补发数据.txt');
end;
AddLine;
{ //工商银行(有组)
Close;
SQL.Clear;
SQL.Add('select a.dwjbr as 姓名, a.zh as 帐号,');
SQL.Add(' a.khmc as 开户行, a.dwdz as 汇入地点,');
SQL.Add(' d.ffje as 发放金额, d.dwdm as 单位代码,');
SQL.Add(' a.dwmc as 单位名称, d.dwid_ff as 组标识,');
SQL.Add(' d.zrs as 人数,to_char(d.ffyf,''yyyymm'') as 所属月份');
SQL.Add('from tff_dwxx a, tff_zfkxx d');
SQL.Add('where a.dwid_ff = d.dwid_ff and');
SQL.Add(' to_char(d.fkrq,''yyyy.mm'')=''' + edtYear2.Text + '.'
+ fillword(edtMonth2.Text, 2) + ''' and');
SQL.Add(' d.ffjgid = ''1000000001'' and');
SQL.Add(' to_char(d.ffyf,''yyyy.mm'')=''' +
edtYear.Text + '.' + fillword(edtMonth.Text, 2) + ''' and');
SQL.Add(' a.ffjgid <> ''1000000006'' and a.ffjgid <> ''1000000007''');
SQL.Add('order by d.dwdm, d.dwid_ff');
mmoMain.Lines.Add(edtYear.Text + '年' +
fillWord(edtMonth.Text, 2) + '月' +
'工商银行(有组)补发数据正在生成...');
Open;
mmoMain.Lines.Add('共生成数据' + IntToStr(RecordCount) +
'条记录');
if RecordCount <> 0 then
begin
ToCSV.Transfer(path + edtYear.Text + '年' +
fillWord(edtMonth.Text,
2) +
'月' + '工商银行(有组)补发数据.txt');
mmoMain.Lines.Add('已生成文件' + path + edtYear.Text + '年' +
fillWord(edtMonth.Text, 2) + '月' +
'工商银行(有组)补发数据.txt');
end;
AddLine;
}
end;
if ChkJG_2.Checked then
begin
//农行补发数据
Close;
SQL.Clear;
SQL.Add('select a.xm as 姓名, a.sfzh as 身份证号, ');
SQL.Add(' a.zh as 帐号, a.khh as 开户行, ');
SQL.Add(' a.hrdd as 汇入地点, d.ffje as 发放金额, ');
// SQL.Add(' a.hrdd as 汇入地点, a.ffje as 发放金额, ');
SQL.Add(' b.dm as 地区代码, b.mc as 地区名称, ');
SQL.Add(' c.dwdm as 单位代码, c.dwmc as 单位名称, ');
SQL.Add(' a.ryid_ff as 人员标识,to_char(d.ffyf,''yyyymm'') as 所属月份');
SQL.Add('from tff_ryxx a, tff_rydqxx b, tff_dwxx c, tff_ryfkxx d');
SQL.Add('where b.ryid_ff (+)= a.ryid_ff and');
SQL.Add(' d.ffbz=1 and');
SQL.Add(' a.dwid_ff = a.ssdwid and');
SQL.Add(' a.ssdwid = c.dwid_ff and');
SQL.Add(' d.ryid_ff = a.ryid_ff and');
//补发数据必须不同于人员数据
SQL.Add(' (d.xm<>a.xm or d.sfzh<>a.sfzh or d.khh<>a.khh ');
SQL.Add(' or d.zh<>a.zh or d.yzbm<>a.yzbm or d.dz<>a.dz) and ');
//
SQL.Add(' to_char(d.fkrq,''yyyy.mm'')=''' + edtYear2.Text + '.'
+ fillword(edtMonth2.Text, 2) + ''' and');
SQL.Add(' to_char(d.ffyf,''yyyy.mm'')=''' +
edtYear.Text + '.' + fillword(edtMonth.Text, 2) + ''' and');
SQL.Add(' d.ffjgid = ''1000000002'' and');
SQL.Add(' a.ffjgid <> ''1000000006'' and a.ffjgid <> ''1000000007''');
SQL.Add('order by b.dm, a.ssdwid, a.ryid_ff');
mmoMain.Lines.Add(edtYear.Text + '年' +
fillWord(edtMonth.Text, 2) + '月' +
'农业银行补发数据正在生成...');
Open;
mmoMain.Lines.Add('共生成数据' + IntToStr(RecordCount) +
'条记录');
if RecordCount <> 0 then
begin
ToCSV.Transfer(path + edtYear.Text + '年' +
fillWord(edtMonth.Text,
2) +
'月' + '农业银行补发数据.txt');
mmoMain.Lines.Add('已生成文件' + path + edtYear.Text + '年' +
fillWord(edtMonth.Text, 2) + '月' +
'农业银行补发数据.txt');
end;
AddLine;
{ //农行(有组)
Close;
SQL.Clear;
SQL.Add('select a.dwjbr as 姓名, a.zh as 帐号,');
SQL.Add(' a.khmc as 开户行, a.dwdz as 汇入地点,');
SQL.Add(' d.ffje as 发放金额, d.dwdm as 单位代码,');
SQL.Add(' a.dwmc as 单位名称, d.dwid_ff as 组标识,');
SQL.Add(' d.zrs as 人数,to_char(d.ffyf,''yyyymm'') as 所属月份');
SQL.Add('from tff_dwxx a, tff_zfkxx d');
SQL.Add('where a.dwid_ff = d.dwid_ff and');
SQL.Add(' to_char(d.fkrq,''yyyy.mm'')=''' + edtYear2.Text + '.'
+ fillword(edtMonth2.Text, 2) + ''' and');
SQL.Add(' d.ffjgid = ''1000000002'' and');
SQL.Add(' to_char(d.ffyf,''yyyy.mm'')=''' +
edtYear.Text + '.' + fillword(edtMonth.Text, 2) + ''' and');
SQL.Add(' a.ffjgid <> ''1000000006'' and a.ffjgid <> ''1000000007''');
SQL.Add('order by d.dwdm, d.dwid_ff');
mmoMain.Lines.Add(edtYear.Text + '年' +
fillWord(edtMonth.Text, 2) + '月' +
'农业银行(有组)补发数据正在生成...');
Open;
mmoMain.Lines.Add('共生成数据' + IntToStr(RecordCount) +
'条记录');
if RecordCount <> 0 then
begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -