*&---------------------------------------------------------------------*
*& Report ZMMWZDK2_001
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
report zmmwzdk2_001.
data: p_sl type i.
data:g_ht type c.
*&---------------------------------------------------------------------*
*& 选择屏幕
*&---------------------------------------------------------------------*
selection-screen begin of block block1 with frame title text-f01.
select-options s_date for sy-datum . "抽取数据的日期
selection-screen skip.
selection-screen begin of line.
parameters :p_cs type char1 radiobutton group grp default 'X'.
selection-screen comment 3(10) g_cs.
parameters :p_gx type char1 radiobutton group grp.
selection-screen comment 16(14) g_gx.
parameters :p_dm type char1 radiobutton group grp.
selection-screen comment 33(20) g_dm.
parameters :p_wd type char1 radiobutton group grp.
selection-screen comment 56(10) g_wd.
selection-screen end of line.
selection-screen uline /1(25).
selection-screen comment /1(70) comm1.
selection-screen comment /1(70) comm2.
selection-screen end of block block1.
selection-screen begin of block block2 with frame title text-f02.
parameter p_all as checkbox user-command a. "全选
selection-screen uline /1(25).
parameter p_ckzyl as checkbox. "仓库资源利用率指标统计
parameter p_crkfx as checkbox. "出入库量统计分析
parameter p_cshdd as checkbox. "调配平台超市化订单信息
parameter p_dhxx as checkbox. "到货信息查询
parameter p_fhtz as checkbox. "发货通知信息查询
parameter p_fhtzl as checkbox. "物资供应指标统计-发货通知完整率
parameter p_gyjhl as checkbox. "物资供应指标统计-供应计划完成率
parameter p_gywzl as checkbox. "物资供应指标统计-供应计划完整率
parameter p_gyjh as checkbox. "供应计划信息查询
parameter p_gywcl as checkbox. "物资供应完成率指标统计
parameter p_hss as checkbox. "调配平台回收商查询报表
parameter p_htjsmx as checkbox. "合同结算明细信息查询
parameter p_htlx as checkbox. "合同履行情况查询
parameter p_htlxfx as checkbox. "合同履行信息分析
parameter p_htqd as checkbox. "合同签订情况查询
parameter p_htzb as checkbox. "物资供应完成率指标统计
parameter p_jhbg as checkbox. "供应计划交货期变更信息查询
parameter p_jhfx as checkbox. "供应计划交货期变更分析
parameter p_kcwz as checkbox. "库存物资查询
parameter p_kcfx as checkbox. "库存资源分析
parameter p_stck as checkbox. "实体仓库资源
parameter p_tyxx as checkbox. "投运信息查询
parameter p_jkyj as checkbox. "物资供应监控预警
parameter p_htjs as checkbox. "国网报表-物资合同结算情况查询
parameter p_xsdd as checkbox. "销售订单查询
parameter p_ht as checkbox. "业务数据统计分析-合同维度
parameter p_xm as checkbox. "业务数据统计分析-项目维度
parameter p_zh as checkbox. "业务数据统计分析-综合分析
parameter p_xykc as checkbox. "协议库存执行情况查询
parameter p_ydyp as checkbox. "一单一评结果统计
parameter p_ysjh as checkbox. "运输计划信息查询
parameter p_zdwz as checkbox. "重点物资维护信息查询
parameter p_zdxm as checkbox. "重点项目建设进度跟踪
parameter p_zdxmwz as checkbox. "重点项目物资供应综合查询
parameter p_ybdc as checkbox. "月报导出
parameter p_zdxmmx as checkbox ."重点项目明细
selection-screen uline /1(25).
selection-screen end of block block2.
*&---------------------------------------------------------------------*
*& 初始化
*&---------------------------------------------------------------------*
initialization.
comm1 = '说明:日期不填,默认日期为上个月'.
comm2 = ' 仅需要年份,月份的指标,自动截取左空日期的年份、月份'.
g_cs = 'ERP抽数'.
g_gx = '更新ODS数据'.
g_dm = '更新DM数据(调用存储过程)'.
g_wd = '更新维度表'.
at selection-screen.
case sy-ucomm.
when 'A'.
if p_all eq 'X'.
p_ckzyl = 'X'.
p_crkfx = 'X'.
p_cshdd = 'X'.
p_dhxx = 'X'.
p_fhtz = 'X'.
p_fhtzl = 'X'.
p_gyjh = 'X'.
p_gyjhl = 'X'.
p_gywcl = 'X'.
p_hss = 'X'.
p_gywzl = 'X'.
p_ht = 'X'.
p_htlx = 'X'.
p_htlxfx = 'X'.
p_htqd = 'X'.
p_htzb = 'X'.
p_jhbg = 'X'.
p_jhfx = 'X'.
p_jkyj = 'X'.
p_kcfx = 'X'.
p_stck = 'X'.
p_tyxx = 'X'.
p_xm = 'X'.
p_xsdd = 'X'.
p_xykc = 'X'.
p_ydyp = 'X'.
p_ysjh = 'X'.
p_zdwz = 'X'.
p_zdxm = 'X'.
p_zdxmwz = 'X'.
p_zh = 'X'.
p_htjs = 'X'.
p_kcwz = 'X'.
p_htjsmx = 'X'.
p_ybdc = 'X'.
p_zdxmmx = 'X'.
else.
p_ckzyl = ''.
p_crkfx = ''.
p_cshdd = ''.
p_dhxx = ''.
p_fhtz = ''.
p_fhtzl = ''.
p_gyjh = ''.
p_gyjhl = ''.
p_gywcl = ''.
p_hss = ''.
p_gywzl = ''.
p_ht = ''.
p_htlx = ''.
p_htlxfx = ''.
p_htqd = ''.
p_htzb = ''.
p_jhbg = ''.
p_jhfx = ''.
p_jkyj = ''.
p_kcfx = ''.
p_stck = ''.
p_tyxx = ''.
p_xm = ''.
p_xsdd = ''.
p_xykc = ''.
p_ydyp = ''.
p_ysjh = ''.
p_zdwz = ''.
p_zdxm = ''.
p_zdxmwz = ''.
p_zh = ''.
p_htjs = ''.
p_kcwz = ''.
p_htjsmx = ''.
p_ybdc = ''.
p_zdxmmx = ''.
endif.
endcase.
*&---------------------------------------------------------------------*
*& START-OF-SELECTION.
*&---------------------------------------------------------------------*
start-of-selection.
"定义查询数据库名称
data: dbs type dbcon-con_name.
data:exc_ref type ref to cx_sy_native_sql_error.
data:sql_error type string.
if sy-mandt ne '800'.
dbs = 'WZYJ'.
else.
dbs = 'ZODS_WZDPPT'.
endif.
"抽数逻辑调用
if p_cs eq 'X'.
if p_ckzyl eq 'X'.
call function 'ZMMWZDK2_CKZYLYL' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_crkfx eq 'X'.
call function 'ZMMWZDK2_CRKLTJFX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_cshdd eq 'X'.
call function 'ZMMWZDK2_CSHDDXX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_dhxx eq 'X'.
call function 'ZMMWZDK2_DHXX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_fhtz eq 'X'.
call function 'ZMMWZDK2_FHTZ' in background task as separate unit .
endif.
if p_fhtzl eq 'X'.
call function 'ZMMWZDK2_FHTZWZL' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_gyjhl eq 'X'.
call function 'ZMMWZDK2_GYJHWCL' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_gywzl eq 'X'.
call function 'ZMMWZDK2_GYJHWZL' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_gyjh eq 'X'.
call function 'ZMMWZDK2_GYJHXXCX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_gywcl eq 'X'.
call function 'ZMMWZDK2_GYWCL' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_hss eq 'X'.
call function 'ZMMWZDK2_HSSCX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_htlx eq 'X'.
call function 'ZMMWZDK2_HTLXQKCX' in background task as separate unit
.
endif.
if p_htlxfx eq 'X'.
call function 'ZMMWZDK2_HTLXXXFX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_htzb eq 'X'.
call function 'ZMMWZDK2_HTZB' in background task as separate unit
.
endif.
if p_jhbg eq 'X'.
call function 'ZMMWZDK2_JHQBG' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_jhfx eq 'X'.
call function 'ZMMWZDK2_JHQBGFX' in background task as separate unit
tables
rt_zdate = s_date.
.
endif.
if p_kcfx eq 'X'.
call function 'ZMMWZDK2_KCZYFX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_kcwz eq 'X'.
call function 'ZMMWZDK2_KCWZCX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_stck eq 'X'.
call function 'ZMMWZDK2_STCKZY' in background task as separate unit
.
endif.
if p_tyxx eq 'X'.
call function 'ZMMWZDK2_TYXXCX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_jkyj eq 'X'.
call function 'ZMMWZDK2_WZGYJKYJ' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_xsdd eq 'X'.
call function 'ZMMWZDK2_XSDD' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_xykc eq 'X'.
call function 'ZMMWZDK2_XYKCZXQKCX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_ydyp eq 'X'.
call function 'ZMMWZDK2_YDYPJGTJ' in background task as separate unit
.
endif.
if p_ysjh eq 'X'.
call function 'ZMMWZDK2_YSJHXXCX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_zdwz eq 'X'.
call function 'ZMMWZDK2_ZDWZWHXXCX' in background task as separate unit
.
endif.
if p_zdxmwz eq 'X'.
call function 'ZMMWZDK2_ZDXMWZZHCX' in background task as separate unit
.
endif.
if p_htjs eq 'X'.
call function 'ZMMWZDK2_WZHTJSQKCX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_htjsmx eq 'X'.
call function 'ZMMWZDK2_HTJSMXXXCX' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_htqd eq 'X'.
call function 'ZMMWZDK2_HTQD' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_xm eq 'X' .
call function 'ZMMWZDK2_XWFX_XM' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_ybdc eq 'X'.
call function 'ZMMWZDK2_YBDC' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_zh eq 'X'.
"综合维度和合同、项目维度一起跑
call function 'ZMMWZDK2_XWFX_HT' in background task as separate unit
tables
rt_zdate = s_date.
call function 'ZMMWZDK2_ZDXMJSJDGZ' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_zdxm eq 'X' and p_zh ne 'X'.
call function 'ZMMWZDK2_ZDXMJSJDGZ' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_ht eq 'X' and p_zh ne 'X'.
"综合不抽,才抽
call function 'ZMMWZDK2_XWFX_HT' in background task as separate unit
tables
rt_zdate = s_date.
endif.
if p_zdxmmx eq 'X' .
call function 'ZMMWZDK2_XMJDGZ' in background task as separate unit
tables
rt_zdate = s_date.
endif.
commit work .
elseif p_gx eq 'X'.
"打开DBLINK
"定义数据库表
data: t_ckzyl like standard table of zmm_dp_ckzylyl initial size 0 with header line.
data: t_crkfx like standard table of zmm_dp_crkltjfx initial size 0 with header line.
data: t_cshdd like standard table of zmm_dp_cshdd initial size 0 with header line.
data: t_dhxx like standard table of zmm_dp_dhxx initial size 0 with header line.
data: t_fhtz like standard table of zmm_dp_fhtz initial size 0 with header line.
data: t_fhtzl like standard table of zmm_dp_fhtzwzl initial size 0 with header line.
data: t_gyjhl like standard table of zmm_dp_gyjhwcl initial size 0 with header line.
data: t_gywzl like standard table of zmm_dp_gyjhwzl initial size 0 with header line.
data: t_gyjh like standard table of zmm_dp_gyjh initial size 0 with header line.
data: t_gywcl like standard table of zmm_dp_gywcl initial size 0 with header line.
data: t_hss like standard table of zmm_dp_hss initial size 0 with header line.
data: t_htlx like standard table of zmm_dp_htlx initial size 0 with header line.
data: t_htlxfx like standard table of zmm_dp_htlyzhfx initial size 0 with header line.
data: t_htqd like standard table of zmm_dp_htqd initial size 0 with header line.
data: t_htzb like standard table of zmm_dp_htzb initial size 0 with header line.
data: t_jhbg like standard table of zmm_dp_jhqbg initial size 0 with header line.
data: t_jhfx like standard table of zmm_dp_jhqbgfx initial size 0 with header line.
data: t_kcfx like standard table of zmm_dp_kczyfx initial size 0 with header line.
data: t_stck like standard table of zmm_dp_stckzy initial size 0 with header line.
data: t_tyxx like standard table of zmm_dp_tyd initial size 0 with header line.
data: t_jkyj like standard table of zmm_dp_gyjkyy initial size 0 with header line.
data: t_xsdd like standard table of zmm_dp_xsdd initial size 0 with header line.
data: t_ht like standard table of zmm_dp_htwdtb initial size 0 with header line.
data: t_xmhz like standard table of zmm_dp_xmwdhz initial size 0 with header line.
data: t_xm2 like standard table of zmm_dp_xmwdfx_fk initial size 0 with header line.
data: t_zh like standard table of zmm_dp_wzgyjd initial size 0 with header line.
data: t_zh2 like standard table of zmm_dp_gdwwzgy initial size 0 with header line.
data: t_zh3 like standard table of zmm_dp_zjxmwzgy initial size 0 with header line.
data: t_xykc like standard table of zmm_dp_xykczx initial size 0 with header line.
data: t_ydyp like standard table of zmm_dp_ydyp initial size 0 with header line.
data: t_ysjh like standard table of zmm_dp_ysjh initial size 0 with header line.
data: t_zdwz like standard table of zmm_dp_zdwzwh initial size 0 with header line.
data: t_zdxm like standard table of zmm_dp_zdxmjd initial size 0 with header line.
data: t_zdxmwz like standard table of zmm_dp_zdxmwz initial size 0 with header line.
data: t_htjs like standard table of zmm_dp_gwyb_wzht initial size 0 with header line.
data: t_kcwz like standard table of zmm_dp_kcwz initial size 0 with header line.
data: t_htjsmx like standard table of zmm_dp_htjs initial size 0 with header line.
data: t_htjsmxfx like standard table of zmm_dp_htjsfx initial size 0 with header line.
data: t_ybdc like standard table of zmm_dp_ybdc initial size 0 with header line.
data: t_zdxmmx like standard table of zmm_dp_xmjdgzmx initial size 0 with header line .
data: t_zmm_process_log like standard table of zmm_process_log initial size 0 with header line.
data: t_flag like standard table of zmm_process_log initial size 0 with header line.
"判断ABAP程序有没有完成抽数
* if p_all eq 'X'.
* select count(*) into p_sl from zmm_process_log where mod = 'ABAP' and end_date eq sy-datum.
* if p_sl ne '34'.
* exit.
* endif.
* endif.
try.
EXEC SQL.
connect to :dbs
ENDEXEC.
EXEC SQL.
set connection :dbs
ENDEXEC.
if sy-subrc <> 0.
raise exception type cx_sy_native_sql_error.
endif.
"往ODS写数
if p_ckzyl = 'X'.
select * into corresponding fields of table t_ckzyl from zmm_dp_ckzylyl.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_ckzylyl;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_ckzyl.
EXEC SQL.
begin
insert into zmm_dp_ckzylyl
(mandt,zdwbm,ztjyf,zdwmc,zkczzlzb,zkczzlpx,zckbzhjszb,zckbzhjspx,zccjzjszb,zccjzjspx,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_ckzyl-mandt,:t_ckzyl-zdwbm,:t_ckzyl-ztjyf,:t_ckzyl-zdwmc,:t_ckzyl-zkczzlzb,:t_ckzyl-zkczzlpx,:t_ckzyl-zckbzhjszb,:t_ckzyl-zckbzhjspx,:t_ckzyl-zccjzjszb,:t_ckzyl-zccjzjspx,:t_ckzyl-zdate,:t_ckzyl-ztime,:t_ckzyl-zfield1,
:t_ckzyl-zfield2,:t_ckzyl-zfield3,:t_ckzyl-zfield4,:t_ckzyl-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_ckzylyl'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
commit work.
endif.
endif.
if p_crkfx = 'X'.
select * into corresponding fields of table t_crkfx from zmm_dp_crkltjfx.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_crkltjfx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_crkfx.
EXEC SQL.
begin
insert into zmm_dp_crkltjfx
(mandt,zwlbm,zwlpzh,zpzhxmh,zwlmc,zgcbm,zgcmc,zssdwbm,zssdwmc,zkclxbm,zkclxms,zckje,zrkje,zcksl,zrksl,zcrkrq,zcrkyf,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_crkfx-mandt,:t_crkfx-zwlbm,:t_crkfx-zwlpzh,:t_crkfx-zpzhxmh,:t_crkfx-zwlmc,:t_crkfx-zgcbm,:t_crkfx-zgcmc,:t_crkfx-zssdwbm,:t_crkfx-zssdwmc,:t_crkfx-zkclxbm,:t_crkfx-zkclxms,:t_crkfx-zckje,:t_crkfx-zrkje,:t_crkfx-zcksl,
:t_crkfx-zrksl,
:t_crkfx-zcrkrq,
:t_crkfx-zcrkyf,:t_crkfx-zdate,:t_crkfx-ztime,:t_crkfx-zfield1,:t_crkfx-zfield2,:t_crkfx-zfield3,:t_crkfx-zfield4,:t_crkfx-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_crkltjfx'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_cshdd = 'X'.
select * into corresponding fields of table t_cshdd from zmm_dp_cshdd.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_cshdd;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_cshdd.
EXEC SQL.
begin
insert into zmm_dp_cshdd
(mandt,zebeln,zebelp,zwerks,ZSSDWBM,ZSSDWMC,zdwmc,zbanfn,zbnfpo,zdgdh,zdgdhxm,zmatnr,zmaktx,zxysl,zmeins,zprice,zunitprice,
zhszj,zhsjj,zlifnr,zgysmc,zaedat,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5,ZBEDAT,ZSHJE,ZSHRQ,ZFPJE,ZFPRQ)
values(:t_cshdd-mandt,:t_cshdd-zebeln,:t_cshdd-zebelp,:t_cshdd-zwerks,:t_cshdd-ZSSDWBM,:t_cshdd-ZSSDWMC,:t_cshdd-zdwmc,:t_cshdd-zbanfn,:t_cshdd-zbnfpo,:t_cshdd-zdgdh,:t_cshdd-zdgdhxm,:t_cshdd-zmatnr,:t_cshdd-zmaktx,:t_cshdd-zxysl,
:t_cshdd-zmeins,:t_cshdd-zprice,
:t_cshdd-zunitprice,:t_cshdd-zhszj,:t_cshdd-zhsjj,:t_cshdd-zlifnr,:t_cshdd-zgysmc,
:t_cshdd-zaedat,
:t_cshdd-zdate,:t_cshdd-ztime,:t_cshdd-zfield1,:t_cshdd-zfield2,:t_cshdd-zfield3,:t_cshdd-zfield4,:t_cshdd-zfield5,
:t_cshdd-ZBEDAT,:t_cshdd-ZSHJE,:t_cshdd-ZSHRQ,:t_cshdd-ZFPJE,:t_cshdd-ZFPRQ);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_cshdd'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_dhxx = 'X'.
select * into corresponding fields of table t_dhxx from zmm_dp_dhxx.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_dhxx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_dhxx.
EXEC SQL.
begin
insert into zmm_dp_dhxx
(mandt,zysdh,zebeln,zebelp,gysch,zswhtbh,zdwmc,ZSSDWBM,ZSSDWMC,zpspnr,zxmmc,zwerks,zmatnr,zmaktx,zmenge,zmeins,zlifnr,zgysmc,zjjsl,zyssl,zsjjhq,zjhwc,zzjrq,zyspj,zpjycts,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5,ZYSZT)
values(:t_dhxx-mandt,:t_dhxx-zysdh,:t_dhxx-zebeln,:t_dhxx-zebelp,:t_dhxx-gysch,:t_dhxx-zswhtbh,:t_dhxx-zdwmc,:t_dhxx-ZSSDWBM,:t_dhxx-ZSSDWMC,:t_dhxx-zpspnr,:t_dhxx-zxmmc,:t_dhxx-zwerks,:t_dhxx-zmatnr,:t_dhxx-zmaktx,:t_dhxx-zmenge,
:t_dhxx-zmeins,:t_dhxx-zlifnr,
:t_dhxx-zgysmc,:t_dhxx-zjjsl,:t_dhxx-zyssl,
:t_dhxx-zsjjhq,
:t_dhxx-zjhwc,
:t_dhxx-zzjrq,
:t_dhxx-zyspj,:t_dhxx-zpjycts,:t_dhxx-zdate,:t_dhxx-ztime,:t_dhxx-zfield1,:t_dhxx-zfield2,:t_dhxx-zfield3,:t_dhxx-zfield4,
:t_dhxx-zfield5,:t_dhxx-ZYSZT);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_dhxx'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_fhtz = 'X'.
select * into corresponding fields of table t_fhtz from zmm_dp_fhtz.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_fhtz;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_fhtz.
EXEC SQL.
begin
insert into zmm_dp_fhtz
(mandt,zwerks,zfhtzdh,zebeln,zebelp,zgysch,ZSSDWBM,ZSSDWMC,zpspnr,zxmmc,zdwmc,zswhtbh,zmatnr,zmaktx,zmenge,zmeins,zfhtzzt,zshlxr,zshlxrsj,eindt,zsjjhdd,zzjrq,ernam,zlifnr,zgysmc,zdate,ztime,
zfield1,zfield2,zfield3,zfield4,zfield5,ZQRRQ,ZLXFS,ZLXR)
values(:t_fhtz-mandt,:t_fhtz-zwerks,:t_fhtz-zfhtzdh,:t_fhtz-zebeln,:t_fhtz-zebelp,:t_fhtz-zgysch,:t_fhtz-ZSSDWBM,:t_fhtz-ZSSDWMC,:t_fhtz-zpspnr,:t_fhtz-zxmmc,:t_fhtz-zdwmc,:t_fhtz-zswhtbh,:t_fhtz-zmatnr,:t_fhtz-zmaktx,:t_fhtz-zmenge,
:t_fhtz-zmeins,:t_fhtz-zfhtzzt,
:t_fhtz-zshlxr,:t_fhtz-zshlxrsj,
:t_fhtz-eindt,
:t_fhtz-zsjjhdd,
:t_fhtz-zzjrq,
:t_fhtz-ernam,:t_fhtz-zlifnr,:t_fhtz-zgysmc,:t_fhtz-zdate,:t_fhtz-ztime,:t_fhtz-zfield1,:t_fhtz-zfield2,:t_fhtz-zfield3,:t_fhtz-zfield4,:t_fhtz-zfield5,:t_fhtz-ZQRRQ,
:t_fhtz-ZLXFS,:t_fhtz-ZLXR);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_fhtz'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_fhtzl = 'X'.
select * into corresponding fields of table t_fhtzl from zmm_dp_fhtzwzl.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_fhtzwzl;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_fhtzl.
EXEC SQL.
begin
insert into zmm_dp_fhtzwzl
(mandt,zdwbm,ztjyf,zdwmc,zfhtzje,zfhtzhtje,zfhtzwzl,zsxhtfs,zgyjhhtfs,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_fhtzl-mandt,:t_fhtzl-zdwbm,:t_fhtzl-ztjyf,:t_fhtzl-zdwmc,:t_fhtzl-zfhtzje,:t_fhtzl-zfhtzhtje,:t_fhtzl-zfhtzwzl,:t_fhtzl-zsxhtfs,:t_fhtzl-zgyjhhtfs,:t_fhtzl-zdate,:t_fhtzl-ztime,:t_fhtzl-zfield1,:t_fhtzl-zfield2,:t_fhtzl-zfield3,
:t_fhtzl-zfield4,:t_fhtzl-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_fhtzwzl'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_gyjh = 'X'.
select * into corresponding fields of table t_gyjh from zmm_dp_gyjh.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_gyjh;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_gyjh.
EXEC SQL.
begin
insert into zmm_dp_gyjh
(mandt,zwerks,zgysch,zebeln,zebelp,zswhtbh,ZSSDWBM,ZSSDWMC,zdwmc,zmatnr,zmaktx,zmenge,zmeins,zpspnr,zxmmc,zdydj,zjhq,zeindt,gystatus,upgstatus,zjhqbgzt,zlifnr,zgysmc,sountsch,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5,ZFPJYZT)
values(:t_gyjh-mandt,:t_gyjh-zwerks,:t_gyjh-zgysch,:t_gyjh-zebeln,:t_gyjh-zebelp,:t_gyjh-zswhtbh,:t_gyjh-ZSSDWBM,:t_gyjh-ZSSDWMC,:t_gyjh-zdwmc,:t_gyjh-zmatnr,:t_gyjh-zmaktx,:t_gyjh-zmenge,:t_gyjh-zmeins,:t_gyjh-zpspnr,:t_gyjh-zxmmc,
:t_gyjh-zdydj,:t_gyjh-zjhq,:t_gyjh-zeindt,
:t_gyjh-gystatus,:t_gyjh-upgstatus,:t_gyjh-zjhqbgzt,:t_gyjh-zlifnr,:t_gyjh-zgysmc,:t_gyjh-sountsch,:t_gyjh-zdate,:t_gyjh-ztime,:t_gyjh-zfield1,:t_gyjh-zfield2,:t_gyjh-zfield3,:t_gyjh-zfield4,:t_gyjh-zfield5,:t_gyjh-ZFPJYZT) ;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_gyjh'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_gyjhl = 'X'.
select * into corresponding fields of table t_gyjhl from zmm_dp_gyjhwcl.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_gyjhwcl;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_gyjhl.
EXEC SQL.
begin
insert into zmm_dp_gyjhwcl
(mandt,zdwbm,ztjyf,zdwmc,zsjwcdhje,zjhwclhtje,zjhwcl,zsxhtfs,zgyjhhtfs,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_gyjhl-mandt,:t_gyjhl-zdwbm,:t_gyjhl-ztjyf,:t_gyjhl-zdwmc,:t_gyjhl-zsjwcdhje,:t_gyjhl-zjhwclhtje,:t_gyjhl-zjhwcl,:t_gyjhl-zsxhtfs,:t_gyjhl-zgyjhhtfs,:t_gyjhl-zdate,:t_gyjhl-ztime,:t_gyjhl-zfield1,:t_gyjhl-zfield2,:t_gyjhl-zfield3,
:t_gyjhl-zfield4,:t_gyjhl-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_gyjhwcl'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_gywcl = 'X'.
select * into corresponding fields of table t_gywcl from zmm_dp_gywcl.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_gywcl;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_gywcl.
EXEC SQL.
begin
insert into zmm_dp_gywcl
(mandt,zdwbm,ztjyf,zdwmc,zgywclzb,zfhwzlzb,zjswclzb,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_gywcl-mandt,:t_gywcl-zdwbm,:t_gywcl-ztjyf,:t_gywcl-zdwmc,:t_gywcl-zgywclzb,:t_gywcl-zfhwzlzb,:t_gywcl-zjswclzb,:t_gywcl-zdate,:t_gywcl-ztime,:t_gywcl-zfield1,:t_gywcl-zfield2,:t_gywcl-zfield3,
:t_gywcl-zfield4,:t_gywcl-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_gywcl'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_hss = 'X'.
select * into corresponding fields of table t_hss from zmm_dp_hss.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_hss;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_hss.
EXEC SQL.
begin
insert into zmm_dp_hss
(mandt,zkunnr,zhssmc,zgsdjh,zzzjgd,zstcd1,ztel_number,zstreet,zcjrq,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_hss-mandt,:t_hss-zkunnr,:t_hss-zhssmc,:t_hss-zgsdjh,:t_hss-zzzjgd,:t_hss-zstcd1,:t_hss-ztel_number,:t_hss-zstreet,
:t_hss-zcjrq,
:t_hss-zdate,:t_hss-ztime,:t_hss-zfield1,:t_hss-zfield2,:t_hss-zfield3,:t_hss-zfield4,:t_hss-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_hss'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_gywzl = 'X'.
select * into corresponding fields of table t_gywzl from zmm_dp_gyjhwzl.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_gyjhwzl;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_gywzl.
EXEC SQL.
begin
insert into zmm_dp_gyjhwzl
(mandt,zdwbm,ztjyf,zdwmc,zsxhtje,zjhwzlhtje,zjhwzl,zsxhtfs,zgyjhhtfs,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_gywzl-mandt,:t_gywzl-zdwbm,:t_gywzl-ztjyf,:t_gywzl-zdwmc,:t_gywzl-zsxhtje,:t_gywzl-zjhwzlhtje,:t_gywzl-zjhwzl,:t_gywzl-zsxhtfs,:t_gywzl-zgyjhhtfs,:t_gywzl-zdate,:t_gywzl-ztime,:t_gywzl-zfield1,:t_gywzl-zfield2,:t_gywzl-zfield3,
:t_gywzl-zfield4,:t_gywzl-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_gyjhwzl'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_ht = 'X'.
select * into corresponding fields of table t_ht from zmm_dp_htwdtb.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_htwdtb;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_ht.
EXEC SQL.
begin
insert into zmm_dp_htwdtb
(mandt,zebeln,ztjday,zgcbm,zgcmc,zssdwbm,zssdwmc,zzbjgje,zhtqdje,zjhdhje,zsjdhje,zdhruje,zfkje,zddyf,ztjrq,zhtlx,zdate,ztime,zzbjgrq,zhtqdrq,zjhdhrq,zsjdhrq,sjrkrq,zfkrq,zzbjgyf,zhtqdyf,zjhdhyf,zsjdhyf,zsjrkyf,zfkyf,zfield1,zfield2,
zfield3,
zfield4,
zfield5)
values(:t_ht-mandt,:t_ht-zebeln,:t_ht-ztjday,:t_ht-zgcbm,:t_ht-zgcmc,:t_ht-zssdwbm,:t_ht-zssdwmc,:t_ht-zzbjgje,:t_ht-zhtqdje,:t_ht-zjhdhje,:t_ht-zsjdhje,:t_ht-zdhruje,:t_ht-zfkje,:t_ht-zddyf,:t_ht-ztjrq,:t_ht-zhtlx,:t_ht-zdate,
:t_ht-ztime,
:t_ht-zzbjgrq,
:t_ht-zhtqdrq,
:t_ht-zjhdhrq,
:t_ht-zsjdhrq,
:t_ht-sjrkrq,
:t_ht-zfkrq,
:t_ht-zzbjgyf,:t_ht-zhtqdyf,:t_ht-zjhdhyf,:t_ht-zsjdhyf,:t_ht-zsjrkyf,:t_ht-zfkyf,:t_ht-zfield1,:t_ht-zfield2,:t_ht-zfield3,:t_ht-zfield4,:t_ht-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_htwdtb'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_htlx = 'X'.
select * into corresponding fields of table t_htlx from zmm_dp_htlx.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_htlx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_htlx.
EXEC SQL.
begin
insert into zmm_dp_htlx
(mandt,zdwmc,zgysch,zswhtbh,zebeln,zebelp,ZSSDWBM,ZSSDWMC,zmatnr,zmaktx,zmenge,zmeins,zjhq,zeindt,gystatus,zwerks,zlifnr,zgysmc,zpspnr,zxmmc,zfhtzdh,zfhtzzt,zysdh,zyszt,zfpjyzt,ztydh,ztyzt,zdate,ztime,zfield1,zfield2,zfield3,zfield4,
zfield5)
values(:t_htlx-mandt,:t_htlx-zdwmc,:t_htlx-zgysch,:t_htlx-zswhtbh,:t_htlx-zebeln,:t_htlx-zebelp,:t_htlx-ZSSDWBM,:t_htlx-ZSSDWMC,:t_htlx-zmatnr,:t_htlx-zmaktx,:t_htlx-zmenge,:t_htlx-zmeins,
:t_htlx-zjhq,
:t_htlx-zeindt,
:t_htlx-gystatus,:t_htlx-zwerks,:t_htlx-zlifnr,:t_htlx-zgysmc,:t_htlx-zpspnr,:t_htlx-zxmmc,:t_htlx-zfhtzdh,:t_htlx-zfhtzzt,:t_htlx-zysdh,:t_htlx-zyszt,:t_htlx-zfpjyzt,:t_htlx-ztydh,:t_htlx-ztyzt,:t_htlx-zdate,:t_htlx-ztime,
:t_htlx-zfield1,:t_htlx-zfield2,:t_htlx-zfield3,:t_htlx-zfield4,:t_htlx-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_htlx'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_htlxfx = 'X'.
select * into corresponding fields of table t_htlxfx from zmm_dp_htlyzhfx.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_htlyzhfx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_htlxfx.
EXEC SQL.
begin
insert into zmm_dp_htlyzhfx
(mandt,zebeln,zebelp,zgcbm,zgcmc,zssdwbm,zssdwmc,zgyjhje,zfhtzje,zdhje,ztyje,zgyjhtms,zfhtztms,zdhtms,ztytms,zddyf,zddrq,zzsnr,zgyjhrq,zfhtzrq,zfhrq,ztyrq,zgyjhyf,zfhtzyf,zdhyf,ztyyf,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5
)
values(:t_htlxfx-mandt,:t_htlxfx-zebeln,:t_htlxfx-zebelp,:t_htlxfx-zgcbm,:t_htlxfx-zgcmc,:t_htlxfx-zssdwbm,:t_htlxfx-zssdwmc,:t_htlxfx-zgyjhje,:t_htlxfx-zfhtzje,:t_htlxfx-zdhje,:t_htlxfx-ztyje,:t_htlxfx-zgyjhtms,:t_htlxfx-zfhtztms,
:t_htlxfx-zdhtms,:t_htlxfx-ztytms,:t_htlxfx-zddyf,
* :t_htlxfx-zddrq,'00000000',null,to_date(:t_htlxfx-zddrq,'YYYYMMDD')),
* :t_htlxfx-zzsnr,
* :t_htlxfx-zgyjhrq,'00000000',null,to_date(:t_htlxfx-zgyjhrq,'YYYYMMDD')),
* :t_htlxfx-zfhtzrq,'00000000',null,to_date(:t_htlxfx-zfhtzrq,'YYYYMMDD')),
* :t_htlxfx-zfhrq,'00000000',null,to_date(:t_htlxfx-zfhrq,'YYYYMMDD')),
* :t_htlxfx-ztyrq,'00000000',null,to_date(:t_htlxfx-ztyrq,'YYYYMMDD')),
:t_htlxfx-zddrq,
:t_htlxfx-zzsnr,
:t_htlxfx-zgyjhrq,
:t_htlxfx-zfhtzrq,
:t_htlxfx-zfhrq,
:t_htlxfx-ztyrq,
:t_htlxfx-ZGYJHYF,:t_htlxfx-ZFHTZYF,:t_htlxfx-ZDHYF,:t_htlxfx-ZTYYF,:t_htlxfx-zdate,:t_htlxfx-ztime,:t_htlxfx-zfield1,:t_htlxfx-zfield2,:t_htlxfx-zfield3,:t_htlxfx-zfield4,:t_htlxfx-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_htlyzhfx'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_htqd = 'X'.
select * into corresponding fields of table t_htqd from zmm_dp_htqd.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_htqd;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_htqd.
EXEC SQL.
begin
insert into zmm_dp_htqd
(mandt,zdwbm,zhtbh,zebeln,zebelp,ZSSDWBM,ZSSDWMC,zdwmc,zmatnr,zmaktx,zjbdw,zhtsl,zhtqdrq,zhtjhrq,zpspnr,zxmmc,zdydj,zxykcddbs,zcshcgddbs,zlifnr,zgysmc,zddzje,zhtdj,zhhszj,zsxrq,zjhjhrq,zqdzt,zgyjh,zjhwcbs,ZZBPC,ZPCMC,zdate,ztime,zfield1,
zfield2,
zfield3,zfield4,zfield5,ZDDLX,ZKONNR,ZKTPNR,ZAEDAT,ZXMLX,zcjrxm)
values(:t_htqd-mandt,:t_htqd-zdwbm,:t_htqd-zhtbh,:t_htqd-zebeln,:t_htqd-zebelp,:t_htqd-ZSSDWBM,:t_htqd-ZSSDWMC,:t_htqd-zdwmc,:t_htqd-zmatnr,:t_htqd-zmaktx,:t_htqd-zjbdw,:t_htqd-zhtsl,
:t_htqd-zhtqdrq,
:t_htqd-zhtjhrq,
:t_htqd-zpspnr,:t_htqd-zxmmc,:t_htqd-zdydj,:t_htqd-zxykcddbs,:t_htqd-zcshcgddbs,:t_htqd-zlifnr,:t_htqd-zgysmc,:t_htqd-zddzje,:t_htqd-zhtdj,:t_htqd-zhhszj,
:t_htqd-zsxrq,
:t_htqd-zjhjhrq,
:t_htqd-zqdzt,:t_htqd-zgyjh,:t_htqd-zjhwcbs,:t_htqd-ZZBPC,:t_htqd-ZPCMC,:t_htqd-zdate,:t_htqd-ztime,:t_htqd-zfield1,:t_htqd-zfield2,:t_htqd-zfield3,:t_htqd-zfield4,:t_htqd-zfield5,:t_htqd-ZDDLX,:t_htqd-ZKONNR,:t_htqd-ZKTPNR,
:t_htqd-ZAEDAT,:t_htqd-ZXMLX,:t_htqd-zcjrxm);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_htqd'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_htzb = 'X'.
select * into corresponding fields of table t_htzb from zmm_dp_htzb.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_htzb;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_htzb.
EXEC SQL.
begin
insert into zmm_dp_htzb
(mandt,zzbpc,zpcmc,zqdjsl,zqdzql,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_htzb-mandt,:t_htzb-zzbpc,:t_htzb-zpcmc,:t_htzb-zqdjsl,:t_htzb-zqdzql,:t_htzb-zdate,:t_htzb-ztime,:t_htzb-zfield1,:t_htzb-zfield2,:t_htzb-zfield3,:t_htzb-zfield4,:t_htzb-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_htzb'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_jhbg = 'X'.
select * into corresponding fields of table t_jhbg from zmm_dp_jhqbg.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_jhqbg;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_jhbg.
EXEC SQL.
begin
insert into zmm_dp_jhqbg
(mandt,zwerks,zgysch,zbglsh,ZSSDWBM,ZSSDWMC,zdwmc,zcjrq,zebeln,zebelp,zpspnr,zxmmc,zhtjhq,zeindt,zxqjhq,zgjhq,zsponsor,zreason,zcreator,operstatus,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5
)values(:t_jhbg-mandt,:t_jhbg-zwerks,:t_jhbg-zgysch,:t_jhbg-zbglsh,:t_jhbg-ZSSDWBM,:t_jhbg-ZSSDWMC,:t_jhbg-zdwmc,
:t_jhbg-zcjrq,
* :t_jhbg-zebeln,:t_jhbg-zebelp,:t_jhbg-zpspnr,:t_jhbg-zxmmc,
* :t_jhbg-zhtjhq,'00000000',null,to_date(:t_jhbg-zhtjhq,'YYYYMMDD')),
* :t_jhbg-zeindt,'00000000',null,to_date(:t_jhbg-zeindt,'YYYYMMDD')),
* :t_jhbg-zxqjhq,'00000000',null,to_date(:t_jhbg-zxqjhq,'YYYYMMDD')),
* :t_jhbg-zgjhq,'00000000',null,to_date(:t_jhbg-zgjhq,'YYYYMMDD')),
:t_jhbg-zebeln,:t_jhbg-zebelp,:t_jhbg-zpspnr,:t_jhbg-zxmmc,:t_jhbg-zhtjhq,:t_jhbg-zeindt,:t_jhbg-zxqjhq,:t_jhbg-zgjhq,:t_jhbg-zsponsor,:t_jhbg-zreason,:t_jhbg-zcreator,:t_jhbg-operstatus,:t_jhbg-zdate,:t_jhbg-ztime,
:t_jhbg-zfield1,:t_jhbg-zfield2,:t_jhbg-zfield3,:t_jhbg-zfield4,:t_jhbg-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_jhqbg'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_jhfx = 'X'.
select * into corresponding fields of table t_jhfx from zmm_dp_jhqbgfx.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_jhqbgfx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_jhfx.
EXEC SQL.
begin
insert into zmm_dp_jhqbgfx
(mandt,zebeln,zebelp,zgyjhbh,zjhbgrq,zbgtbdw,zbgyy,zbgje,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5,zgcbm,zgcmc,zssdwbm,zssdwmc)
values(:t_jhfx-mandt,:t_jhfx-zebeln,:t_jhfx-zebelp,:t_jhfx-zgyjhbh,
:t_jhfx-zjhbgrq,
:t_jhfx-zbgtbdw,:t_jhfx-zbgyy,:t_jhfx-zbgje,:t_jhfx-zdate,:t_jhfx-ztime,:t_jhfx-zfield1,:t_jhfx-zfield2,:t_jhfx-zfield3,:t_jhfx-zfield4,:t_jhfx-zfield5,:t_jhfx-zgcbm,:t_jhfx-zgcmc,:t_jhfx-zssdwbm,:t_jhfx-zssdwmc);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_jhqbgfx'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_jkyj = 'X'.
select * into corresponding fields of table t_jkyj from zmm_dp_gyjkyy.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_gyjkyy ;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_jkyj.
EXEC SQL.
begin
insert into zmm_dp_gyjkyy
(mandt,zcgsqbh,zcgsqxmh,zcgddbm,zcgddhxmh,zxmbm,zxmmc,zssdwbh,zssdwmc,zwlbh,zwlmc,zwlzbh,zwlzms,zsqsl,zddsl,zgcbh,zgcmc,zywhj,zyjlx,zjhcjrq,zjhhztjrq,zzbjgrq,zcgddcjrq,zhtjhq,zqdjhq,zysdblrq,zwzrkrq,zyjcsrq,zyjzt,zfield1,zfield2,zfield3,
zfield4,zfield5,ZXMLX,zdate,ztime,zjhwcsj)
values(:t_jkyj-mandt,:t_jkyj-zcgsqbh,:t_jkyj-zcgsqxmh,:t_jkyj-zcgddbm,:t_jkyj-zcgddhxmh,:t_jkyj-zxmbm,:t_jkyj-zxmmc,:t_jkyj-zssdwbh,:t_jkyj-zssdwmc,:t_jkyj-zwlbh,:t_jkyj-zwlmc,:t_jkyj-zwlzbh,:t_jkyj-zwlzms,:t_jkyj-zsqsl,:t_jkyj-zddsl,
:t_jkyj-zgcbh,:t_jkyj-zgcmc,:t_jkyj-zywhj,:t_jkyj-zyjlx,
:t_jkyj-zjhcjrq,
:t_jkyj-zjhhztjrq,
:t_jkyj-zzbjgrq,
:t_jkyj-zcgddcjrq,
:t_jkyj-zhtjhq,
:t_jkyj-zqdjhq,
:t_jkyj-zysdblrq,
:t_jkyj-zwzrkrq,
:t_jkyj-zyjcsrq,
:t_jkyj-zyjzt,:t_jkyj-zfield1,:t_jkyj-zfield2,:t_jkyj-zfield3,:t_jkyj-zfield4,:t_jkyj-zfield5,:t_jkyj-ZXMLX,:t_jkyj-zdate,:t_jkyj-ztime,:t_jkyj-zjhwcsj) ;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_gyjkyy'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_kcfx = 'X'.
select * into corresponding fields of table t_kcfx from zmm_dp_kczyfx.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_kczyfx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_kcfx.
EXEC SQL.
begin
insert into zmm_dp_kczyfx
(mandt,zpspnr,zssdwbm,zssdwmc,zxmmc,zwerks,zgcmc,zmatkl,zwgbez,zmatnr,zmaktx,zlgort,zlgobe,zkclx,zkcje,zkcsl,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5
)
values(:t_kcfx-mandt,:t_kcfx-zpspnr,:t_kcfx-zssdwbm,:t_kcfx-zssdwmc,:t_kcfx-zxmmc,:t_kcfx-zwerks,:t_kcfx-zgcmc,:t_kcfx-zmatkl,:t_kcfx-zwgbez,:t_kcfx-zmatnr,:t_kcfx-zmaktx,:t_kcfx-zlgort,:t_kcfx-zlgobe,:t_kcfx-zkclx,:t_kcfx-zkcje,
:t_kcfx-zkcsl,
:t_kcfx-zdate,:t_kcfx-ztime,:t_kcfx-zfield1,:t_kcfx-zfield2,:t_kcfx-zfield3,:t_kcfx-zfield4,:t_kcfx-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_kczyfx'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_stck = 'X'.
select * into corresponding fields of table t_stck from zmm_dp_stckzy.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_stckzy;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_stck.
EXEC SQL.
begin
insert into zmm_dp_stckzy
(mandt,zckbh,zgcbm,zssdwbm,zssdwmc,zgcmc,zckmc,zckdd,zckzcssdw,zckssds,zglbm,zckcj,zckmj,zckcjsj,zzcsx,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5
)
values(:t_stck-mandt,:t_stck-zckbh,:t_stck-zgcbm,:t_stck-zssdwbm,:t_stck-zssdwmc,:t_stck-zgcmc,:t_stck-zckmc,:t_stck-zckdd,:t_stck-zckzcssdw,:t_stck-zckssds,:t_stck-zglbm,:t_stck-zckcj,:t_stck-zckmj,
:t_stck-zckcjsj,:t_stck-zzcsx,:t_stck-zdate,:t_stck-ztime,:t_stck-zfield1,:t_stck-zfield2,:t_stck-zfield3,:t_stck-zfield4,:t_stck-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_stckzy'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_tyxx = 'X'.
select * into corresponding fields of table t_tyxx from zmm_dp_tyd.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_tyd;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_tyxx.
EXEC SQL.
begin
insert into zmm_dp_tyd
(mandt,ztydh,ztydhh,zwerks,ZSSDWBM,ZSSDWMC,zpspnr,zxmmc,zdwmc,zebeln,zebelp,zswhtbh,zmatnr,zmaktx,zmenge,zmeins,zlifnr,zgysmc,zzjrq,zyspj,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5,ZTYZT)
values(:t_tyxx-mandt,:t_tyxx-ztydh,:t_tyxx-ztydhh,:t_tyxx-zwerks,:t_tyxx-ZSSDWBM,:t_tyxx-ZSSDWMC,:t_tyxx-zpspnr,:t_tyxx-zxmmc,:t_tyxx-zdwmc,:t_tyxx-zebeln,:t_tyxx-zebelp,:t_tyxx-zswhtbh,:t_tyxx-zmatnr,:t_tyxx-zmaktx,:t_tyxx-zmenge,
:t_tyxx-zmeins,:t_tyxx-zlifnr,
:t_tyxx-zgysmc,
:t_tyxx-zzjrq,
:t_tyxx-zyspj,:t_tyxx-zdate,:t_tyxx-ztime,:t_tyxx-zfield1,:t_tyxx-zfield2,:t_tyxx-zfield3,:t_tyxx-zfield4,:t_tyxx-zfield5,:t_tyxx-ZTYZT);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_tyd'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_xm = 'X'.
* SELECT * INTO CORRESPONDING FIELDS OF TABLE t_xm FROM zmm_dp_xmwdfx.
* IF sy-subrc = 0.
* "清数
* EXEC SQL.
* begin
* delete from zmm_dp_xmwdfx where zdate = :sy-datum ;
* if sql%found then
* commit;
* else
* rollback;
* end if;
* end;
* ENDEXEC.
* "写数
* LOOP AT t_xm.
*
* EXEC SQL.
* begin
* insert into zmm_dp_xmwdfx
* (mandt,zxmbm,zgcbm,zebeln,zebelp,zgcmc,zssdwbm,zssdwmc,zdydj,zxmmc,zxmys,zyqdgyxqje,zhtqdje,zdhje,zddyf,zddrq,zdate,ztime,zxmlx,zxmlxms,zqdgyxqrq,zhtqdrq,zsjdhwcrq,zqdgyxqyf,zhtqdyf,zsjdhwcyf,zfield1,zfield2,zfield3,zfield4,zfield5)
* values(:t_xm-mandt,:t_xm-zxmbm,:t_xm-zgcbm,:t_xm-zebeln,:t_xm-zebelp,:t_xm-zgcmc,:t_xm-zssdwbm,:t_xm-zssdwmc,:t_xm-zdydj,:t_xm-zxmmc,:t_xm-zxmys,:t_xm-zyqdgyxqje,:t_xm-zhtqdje,:t_xm-zdhje,:t_xm-zddyf,
* :t_xm-zddrq,'00000000',null,to_date(:t_xm-zddrq,'YYYYMMDD')),
* :t_xm-zdate,:t_xm-ztime,:t_xm-zxmlx,:t_xm-zxmlxms,
* :t_xm-zqdgyxqrq,'00000000',null,to_date(:t_xm-zqdgyxqrq,'YYYYMMDD')),
* :t_xm-zhtqdrq,'00000000',null,to_date(:t_xm-zhtqdrq,'YYYYMMDD')),
* :t_xm-zsjdhwcrq,'00000000',null,to_date(:t_xm-zsjdhwcrq,'YYYYMMDD')),
* :t_xm-zqdgyxqyf,:t_xm-zhtqdyf,:t_xm-zsjdhwcyf,:t_xm-zfield1,:t_xm-zfield2,:t_xm-zfield3,:t_xm-zfield4,:t_xm-zfield5);
*
* if sql%found then
* commit;
* else
* rollback;
* end if;
* end;
* ENDEXEC.
* ENDLOOP.
* ENDIF.
*
* SELECT * INTO CORRESPONDING FIELDS OF TABLE t_xm2 FROM zmm_dp_xmwdfx_fk.
* IF sy-subrc = 0.
* "清数
* EXEC SQL.
* begin
* delete from zmm_dp_xmwdfx_fk where zdate = :sy-datum ;
* if sql%found then
* commit;
* else
* rollback;
* end if;
* end;
* ENDEXEC.
* "写数
* LOOP AT t_xm2.
*
* EXEC SQL.
* begin
* insert into zmm_dp_xmwdfx_fk
* (mandt,zebeln,zxmbm,zgcbm,zssdwbm,zgcmc,zssdwmc,zxmmc,zdhkzfje,zhtzfje,zdate,ztime,zdhkzfrq,zhtzfrq,zdhkzfyf,zhtzfyf,zfield1,zfield2,zfield3,zfield4,zfield5)
* values(:t_xm2-mandt,:t_xm2-zebeln,:t_xm2-zxmbm,:t_xm2-zgcbm,:t_xm2-zssdwbm,:t_xm2-zgcmc,:t_xm2-zssdwmc,:t_xm2-zxmmc,:t_xm2-zdhkzfje,:t_xm2-zhtzfje,:t_xm2-zdate,:t_xm2-ztime,
* :t_xm2-zdhkzfrq,'00000000',null,to_date(:t_xm2-zdhkzfrq,'YYYYMMDD')),
* :t_xm2-zhtzfrq,'00000000',null,to_date(:t_xm2-zhtzfrq,'YYYYMMDD')),
* :t_xm2-zdhkzfyf,:t_xm2-zhtzfyf,:t_xm2-zfield1,:t_xm2-zfield2,:t_xm2-zfield3,:t_xm2-zfield4,:t_xm2-zfield5);
*
* if sql%found then
* commit;
* else
* rollback;
* end if;
* end;
* ENDEXEC.
* ENDLOOP.
* ENDIF.
select * into corresponding fields of table t_xmhz from zmm_dp_xmwdhz .
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from ZMM_DP_XMWDHZ;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_xmhz.
EXEC SQL.
begin
insert into ZMM_DP_XMWDHZ
(mandt,ZDYDJ,ZXMBM,ztjday,ZXMLX,ZXMMC,ZGCBM,ZGCMC,zssdwbm,zssdwmc,ZXMYS,ZYQDGYXQJE,ZHTQDJE,ZDHJE,ZXMLXMS,ZDHKZFJE,ZHTZFJE,ZHTQDFS,ZDATE,ZTIME)
values(:t_xmHZ-MANDT,
:t_xmHZ-ZDYDJ,
:t_xmHZ-ZXMBM,
:t_xmHZ-ztjday,
:t_xmHZ-ZXMLX,
:t_xmHZ-ZXMMC,
:t_xmHZ-ZGCBM,
:t_xmHZ-ZGCMC,
:t_xmHZ-ZSSDWBM,
:t_xmHZ-ZSSDWMC,
:t_xmHZ-ZXMYS,
:t_xmHZ-ZYQDGYXQJE,
:t_xmHZ-ZHTQDJE,
:t_xmHZ-ZDHJE,
:t_xmHZ-ZXMLXMS,
:t_xmHZ-ZDHKZFJE,
:t_xmHZ-ZHTZFJE,
:t_xmHZ-ZHTQDFS,
:t_xmHZ-ZDATE,
:t_xmHZ-ZTIME);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_xmwdhz'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_xsdd = 'X'.
select * into corresponding fields of table t_xsdd from zmm_dp_xsdd.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_xsdd;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_xsdd.
EXEC SQL.
begin
insert into zmm_dp_xsdd
(mandt,zwerks,zvbeln,zposnr,zdwmc,ZSSDWBM,ZSSDWMC,zauart,zmatnr,zmaktx,zmeng,meins,zkunnr,zhssmc,zdj,zzj,zerdat,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_xsdd-mandt,:t_xsdd-zwerks,:t_xsdd-zvbeln,:t_xsdd-zposnr,:t_xsdd-zdwmc,:t_xsdd-ZSSDWBM,:t_xsdd-ZSSDWMC,:t_xsdd-zauart,:t_xsdd-zmatnr,:t_xsdd-zmaktx,:t_xsdd-zmeng,:t_xsdd-meins,:t_xsdd-zkunnr,:t_xsdd-zhssmc,:t_xsdd-zdj,
:t_xsdd-zzj,
:t_xsdd-zerdat,
:t_xsdd-zdate,:t_xsdd-ztime,:t_xsdd-zfield1,:t_xsdd-zfield2,:t_xsdd-zfield3,:t_xsdd-zfield4,:t_xsdd-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_xsdd'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_xykc = 'X'.
select * into corresponding fields of table t_xykc from zmm_dp_xykczx.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_xykczx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_xykc.
EXEC SQL.
begin
insert into zmm_dp_xykczx
(mandt,zbukrs,zebeln,zebelp,zdwmc,zhtbh,zmatnr,zmaktx,zxysl,zyfpsl,zmeins,zprice,zunitprice,zlifnr,zgysmc,zsxrq,zvalidatefrom,zvalidateend,zfpwcl,zqdzt,zzbrq,zbanfn,zbnfpo,ZZBPC,ZPCMC,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_xykc-mandt,:t_xykc-zbukrs,:t_xykc-zebeln,:t_xykc-zebelp,:t_xykc-zdwmc,:t_xykc-zhtbh,:t_xykc-zmatnr,:t_xykc-zmaktx,:t_xykc-zxysl,:t_xykc-zyfpsl,:t_xykc-zmeins,:t_xykc-zprice,:t_xykc-zunitprice,:t_xykc-zlifnr,:t_xykc-zgysmc,
* :t_xykc-zsxrq,'00000000',null,to_date(:t_xykc-zsxrq,'YYYYMMDD')),
* :t_xykc-zvalidatefrom,'00000000',null,to_date(:t_xykc-zvalidatefrom,'YYYYMMDD')),
* :t_xykc-zvalidateend,'00000000',null,to_date(:t_xykc-zvalidateend,'YYYYMMDD')),
:t_xykc-zsxrq,:t_xykc-zvalidatefrom,:t_xykc-zvalidateend,
:t_xykc-zfpwcl,:t_xykc-zqdzt,
:t_xykc-zzbrq,
* :t_xykc-zzbrq,'00000000',null,to_date(:t_xykc-zzbrq,'YYYYMMDD')),
:t_xykc-zbanfn,:t_xykc-zbnfpo,:t_xykc-ZZBPC,:t_xykc-ZPCMC,:t_xykc-zdate,:t_xykc-ztime,:t_xykc-zfield1,:t_xykc-zfield2,:t_xykc-zfield3,:t_xykc-zfield4,:t_xykc-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_xykczx'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_ydyp = 'X'.
select * into corresponding fields of table t_ydyp from zmm_dp_ydyp.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_ydyp;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_ydyp.
EXEC SQL.
begin
insert into zmm_dp_ydyp
(mandt,zdwbm,ztjqx,zdwmc,zysdjsl,zwpjsl,zwpjbl,ZTYDSL,ZTYWPJSL,ZTYWPJBL,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_ydyp-mandt,:t_ydyp-zdwbm,:t_ydyp-ztjqx,:t_ydyp-zdwmc,:t_ydyp-zysdjsl,:t_ydyp-zwpjsl,:t_ydyp-zwpjbl,:t_ydyp-ZTYDSL,:t_ydyp-ZTYWPJSL,:t_ydyp-ZTYWPJBL,:t_ydyp-zdate,:t_ydyp-ztime,:t_ydyp-zfield1,:t_ydyp-zfield2,:t_ydyp-zfield3,
:t_ydyp-zfield4,:t_ydyp-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_ydyp'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_ysjh = 'X'.
select * into corresponding fields of table t_ysjh from zmm_dp_ysjh.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_ysjh;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_ysjh.
EXEC SQL.
begin
insert into zmm_dp_ysjh
(mandt,ysjhdh,zgysch,zwerks,zdwmc,ZSSDWBM,ZSSDWMC,zpspnr,zxmmc,zfhtzdh,zebeln,zebelp,zswhtbh,zmatnr,zmaktx,zmenge,zmeins,zlifnr,zgysmc,zysfs,zyscyrxm,zyscyrdh,zclcph,zcx,zsfz,zzdz,zgpssbbh,crdate,zdate,ztime,zfield1,zfield2,zfield3,
zfield4,zfield5)
values(:t_ysjh-mandt,:t_ysjh-ysjhdh,:t_ysjh-zgysch,:t_ysjh-zwerks,:t_ysjh-zdwmc,:t_ysjh-ZSSDWBM,:t_ysjh-ZSSDWMC,:t_ysjh-zpspnr,:t_ysjh-zxmmc,:t_ysjh-zfhtzdh,:t_ysjh-zebeln,:t_ysjh-zebelp,:t_ysjh-zswhtbh,:t_ysjh-zmatnr,:t_ysjh-zmaktx,
:t_ysjh-zmenge,:t_ysjh-zmeins,
:t_ysjh-zlifnr,:t_ysjh-zgysmc,:t_ysjh-zysfs,:t_ysjh-zyscyrxm,:t_ysjh-zyscyrdh,:t_ysjh-zclcph,:t_ysjh-zcx,:t_ysjh-zsfz,:t_ysjh-zzdz,:t_ysjh-zgpssbbh,
:t_ysjh-crdate,
:t_ysjh-zdate,:t_ysjh-ztime,:t_ysjh-zfield1,:t_ysjh-zfield2,:t_ysjh-zfield3,:t_ysjh-zfield4,:t_ysjh-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_ysjh'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_zdwz = 'X'.
select * into corresponding fields of table t_zdwz from zmm_dp_zdwzwh.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_zdwzwh;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_zdwz.
EXEC SQL.
begin
insert into zmm_dp_zdwzwh
(mandt,zwerks,zgysch,zebeln,zebelp,zdwmc,ZSSDWBM,ZSSDWMC,zpspnr,zxmmc,zlifnr,zgysmc,ztzjfzt,zpcjhzt,zscjdzt,zysjhzt,zjhq,zeindt,zmatnr,zmaktx,zmatkl,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_zdwz-mandt,:t_zdwz-zwerks,:t_zdwz-zgysch,:t_zdwz-zebeln,:t_zdwz-zebelp,:t_zdwz-zdwmc,:t_zdwz-ZSSDWBM,:t_zdwz-ZSSDWMC,:t_zdwz-zpspnr,:t_zdwz-zxmmc,:t_zdwz-zlifnr,:t_zdwz-zgysmc,:t_zdwz-ztzjfzt,:t_zdwz-zpcjhzt,:t_zdwz-zscjdzt,
:t_zdwz-zysjhzt,
:t_zdwz-zjhq,
:t_zdwz-zeindt,
:t_zdwz-zmatnr,:t_zdwz-zmaktx,:t_zdwz-zmatkl,:t_zdwz-zdate,:t_zdwz-ztime,:t_zdwz-zfield1,:t_zdwz-zfield2,:t_zdwz-zfield3,:t_zdwz-zfield4,:t_zdwz-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_zdwzwh'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_zdxm = 'X'.
select * into corresponding fields of table t_zdxm from zmm_dp_zdxmjd.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_zdxmjd;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_zdxm.
EXEC SQL.
begin
insert into zmm_dp_zdxmjd
(mandt,ZWERKS,zpspnr,zdwmc,zxmmc,zssdwbm,zssdwmc,zdydj,zerdat,zjhkgsj,zsjkgsj,zjhtcsj,zsjtcsj,zwzxqje,zhtqdje,zhtdhje,zfkje,zeindt,zxmxqrq,zhtqdrq,zdhysrq,zfkrq,zxmxqyf,zhtqdyf,zdhysyf,zfkyf,zdate,ztime,zfield1,zfield2,zfield3,zfield4,
zfield5,ZXMDL)
values(:t_zdxm-mandt,:t_zdxm-ZWERKS,:t_zdxm-zpspnr,:t_zdxm-zdwmc,:t_zdxm-zxmmc,:t_zdxm-zssdwbm,:t_zdxm-zssdwmc,:t_zdxm-zdydj,
:t_zdxm-zerdat,
:t_zdxm-zjhkgsj,
:t_zdxm-zsjkgsj,
:t_zdxm-zjhtcsj,
:t_zdxm-zsjtcsj,
:t_zdxm-zwzxqje,:t_zdxm-zhtqdje,:t_zdxm-zhtdhje,:t_zdxm-zfkje,:t_zdxm-zeindt,
:t_zdxm-zxmxqrq,
:t_zdxm-zhtqdrq,
:t_zdxm-zdhysrq,
:t_zdxm-zfkrq,
:t_zdxm-zxmxqyf,:t_zdxm-zhtqdyf,:t_zdxm-zdhysyf,:t_zdxm-zfkyf,:t_zdxm-zdate,:t_zdxm-ztime,:t_zdxm-zfield1,:t_zdxm-zfield2,:t_zdxm-zfield3,:t_zdxm-zfield4,:t_zdxm-zfield5,:t_zdxm-ZXMDL);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_zdxmjd'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_zdxmwz = 'X'.
select * into corresponding fields of table t_zdxmwz from zmm_dp_zdxmwz.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_zdxmwz;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_zdxmwz.
EXEC SQL.
begin
insert into zmm_dp_zdxmwz
(mandt,zpspnr,zwerks,zgysch,zebeln,zebelp,zdwmc,ZSSDWBM,ZSSDWMC,zmatnr,zmaktx,zmenge,zmeins,zhtdj,zjhsl,zswhtbh,zxmmc,zdydj,zhtsx,gystatus,zfhtzzt,zscfyzt,zyszt,zfpjyzt,ztyzt,zlifnr,zgysmc,zjhq,zaedat,zerdat,zdate,ztime,zfield1,zfield2,
zfield3,zfield4,
zfield5,ZXMDL)
values(:t_zdxmwz-mandt,:t_zdxmwz-zpspnr,:t_zdxmwz-zwerks,:t_zdxmwz-zgysch,:t_zdxmwz-zebeln,:t_zdxmwz-zebelp,:t_zdxmwz-zdwmc,:t_zdxmwz-ZSSDWBM,:t_zdxmwz-ZSSDWMC,:t_zdxmwz-zmatnr,:t_zdxmwz-zmaktx,:t_zdxmwz-zmenge,:t_zdxmwz-zmeins,
:t_zdxmwz-zhtdj,:t_zdxmwz-zjhsl,
:t_zdxmwz-zswhtbh,:t_zdxmwz-zxmmc,:t_zdxmwz-zdydj,:t_zdxmwz-zhtsx,:t_zdxmwz-gystatus,:t_zdxmwz-zfhtzzt,:t_zdxmwz-zscfyzt,:t_zdxmwz-zyszt,:t_zdxmwz-zfpjyzt,:t_zdxmwz-ztyzt,:t_zdxmwz-zlifnr,:t_zdxmwz-zgysmc,
:t_zdxmwz-zjhq,
:t_zdxmwz-zaedat,
:t_zdxmwz-zerdat,
:t_zdxmwz-zdate,:t_zdxmwz-ztime,:t_zdxmwz-zfield1,:t_zdxmwz-zfield2,:t_zdxmwz-zfield3,:t_zdxmwz-zfield4,:t_zdxmwz-zfield5,:t_zdxmwz-ZXMDL);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_zdxmwz'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_zh = 'X'.
select * into corresponding fields of table t_zh from zmm_dp_wzgyjd.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_wzgyjd;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_zh.
EXEC SQL.
begin
insert into zmm_dp_wzgyjd
(mandt,zgcbm,zssdwbm,zebeln,ztjday,zebelp,zgcmc,zssdwmc,zdydj,zhtqdje,zjhdhje,zhtdhje,zfkje,zddyf,zdate,ztime,
zhtqdrq,zjhdhrq,zhtdhrq,zfkrq,
zhtqdyf,zjhdhyf,zhtdhyf,zfkyf,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_zh-mandt,:t_zh-zgcbm,:t_zh-zssdwbm,:t_zh-zebeln,:t_zh-ztjday,:t_zh-zebelp,:t_zh-zgcmc,:t_zh-zssdwmc,:t_zh-zdydj,:t_zh-zhtqdje,:t_zh-zjhdhje,:t_zh-zhtdhje,:t_zh-zfkje,:t_zh-zddyf,:t_zh-zdate,:t_zh-ztime,
:t_zh-zhtqdrq,
:t_zh-zjhdhrq,
:t_zh-zhtdhrq,
:t_zh-zfkrq,
:t_zh-zhtqdyf,:t_zh-zjhdhyf,:t_zh-zhtdhyf,:t_zh-zfkyf,:t_zh-zfield1,:t_zh-zfield2,:t_zh-zfield3,:t_zh-zfield4,:t_zh-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_wzgyjd'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
select * into corresponding fields of table t_zh2 from zmm_dp_gdwwzgy.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_gdwwzgy;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_zh2.
EXEC SQL.
begin
insert into zmm_dp_gdwwzgy
(mandt,
zgcbm,
zssdwbm,
zebeln,
ztjday,
zgcmc,
zssdwmc,
zdydj,
zhtlyje,
zhtqdje,
zdhysje,
zfkje,
zddyf,
zgyjhtms,
zdate,
ztime,
zhtqdrq,
zdhysrq,
zfkrq,
zhtqdyf,
zdhysyf,
zfkyf,
zfield1,
zfield2,
zfield3,
zfield4,
zfield5)
values(:t_zh2-mandt,
:t_zh2-zgcbm,
:t_zh2-zssdwbm,
:t_zh2-zebeln,
:t_zh2-ztjday,
:t_zh2-zgcmc,
:t_zh2-zssdwmc,
:t_zh2-zdydj,
:t_zh2-zhtlyje,
:t_zh2-zhtqdje,
:t_zh2-zdhysje,
:t_zh2-zfkje,
:t_zh2-zddyf,
:t_zh2-zgyjhtms,
:t_zh2-zdate,
:t_zh2-ztime,
:t_zh2-zhtqdrq,
:t_zh2-zdhysrq,
:t_zh2-zfkrq,
:t_zh2-zhtqdyf,
:t_zh2-zdhysyf,
:t_zh2-zfkyf,
:t_zh2-zfield1,
:t_zh2-zfield2,
:t_zh2-zfield3,
:t_zh2-zfield4,
:t_zh2-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_gdwwzgy'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
select * into corresponding fields of table t_zh3 from zmm_dp_zjxmwzgy.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_zjxmwzgy;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_zh3.
EXEC SQL.
begin
insert into zmm_dp_zjxmwzgy
(mandt,
zgcbm,
zssdwbm,
zpspid,
ztjday,
zgcmc,
zssdwmc,
zxmmc,
zdydj,
zxmxqje,
zhtqdje,
zdhysje,
zfkje,
zcjrq,
zdate,
ztime,
zxmxqrq,
zhtqdrq,
zdhysrq,
zfkrq,
zxmxqyf,
zhtqdyf,
zdhysyf,
zfkyf,
zfield1,
zfield2,
zfield3,
zfield4,
zfield5)
values(:t_zh3-mandt,
:t_zh3-zgcbm,
:t_zh3-zssdwbm,
:t_zh3-zpspid,
:t_zh3-ztjday,
:t_zh3-zgcmc,
:t_zh3-zssdwmc,
:t_zh3-zxmmc,
:t_zh3-zdydj,
:t_zh3-zxmxqje,
:t_zh3-zhtqdje,
:t_zh3-zdhysje,
:t_zh3-zfkje,
* :t_zh3-zcjrq,'00000000',null,to_date(:t_zh3-zcjrq,'YYYYMMDD')),
:t_zh3-zcjrq,
:t_zh3-zdate,
:t_zh3-ztime,
* :t_zh3-zxmxqrq,'00000000',null,to_date(:t_zh3-zxmxqrq,'YYYYMMDD')),
:t_zh3-zxmxqrq,
* :t_zh3-zhtqdrq,'00000000',null,to_date(:t_zh3-zhtqdrq,'YYYYMMDD')),
:t_zh3-zhtqdrq,
* :t_zh3-zdhysrq,'00000000',null,to_date(:t_zh3-zdhysrq,'YYYYMMDD')),
:t_zh3-zdhysrq,
* :t_zh3-zfkrq,'00000000',null,to_date(:t_zh3-zfkrq,'YYYYMMDD')),
:t_zh3-zfkrq,
:t_zh3-zxmxqyf,
:t_zh3-zhtqdyf,
:t_zh3-zdhysyf,
:t_zh3-zfkyf,
:t_zh3-zfield1,
:t_zh3-zfield2,
:t_zh3-zfield3,
:t_zh3-zfield4,
:t_zh3-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_zjxmwzgy'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_htjs = 'X'.
select * into corresponding fields of table t_htjs from zmm_dp_gwyb_wzht.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_gwyb_wzht;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_htjs.
EXEC SQL.
begin
insert into zmm_dp_gwyb_wzht
(mandt,zebeln,zgcbm,zssdwbm,zssdwmc,zyfksqje,zyfkzfje,zdhksqje,zdhkzfje,ztyksqje,ztykzfje,zzbksqje,zzbkzfje,zddyf,zddrq,zdate,ztime,ZYFKSQRQ,ZYFKSQYF,ZDHKSQRQ,ZDHKSQYF,ZTYKSQRI,ZTYKSQYF,ZZBKSQRQ,ZZBKSQYF,ZYFKZFRQ,ZYFKZFYF,ZDHKZFRQ,
ZDHKZFYF,ZTYKZFRI,ZTYKZFYF,ZZBKZFRQ,ZZBKZFYF,zfield1,zfield2,zfield3,zfield4,zfield5)
values(:t_htjs-mandt,:t_htjs-zebeln,:t_htjs-zgcbm,:t_htjs-zssdwbm,:t_htjs-zssdwmc,:t_htjs-zyfksqje,:t_htjs-zyfkzfje,:t_htjs-zdhksqje,:t_htjs-zdhkzfje,:t_htjs-ztyksqje,:t_htjs-ztykzfje,:t_htjs-zzbksqje,:t_htjs-zzbkzfje,:t_htjs-zddyf,
:t_htjs-zddrq,
:t_htjs-zdate,:t_htjs-ztime,
:t_htjs-ZYFKSQRQ,
:t_htjs-ZYFKSQYF,
:t_htjs-ZDHKSQRQ,
:t_htjs-ZDHKSQYF,
:t_htjs-ZTYKSQRI,
:t_htjs-ZTYKSQYF,
:t_htjs-ZZBKSQRQ,
:t_htjs-ZZBKSQYF,
:t_htjs-ZYFKZFRQ,
:t_htjs-ZYFKZFYF,
:t_htjs-ZDHKZFRQ,
:t_htjs-ZDHKZFYF,
:t_htjs-ZTYKZFRI,
:t_htjs-ZTYKZFYF,
:t_htjs-ZZBKZFRQ,
:t_htjs-ZZBKZFYF,
:t_htjs-zfield1,:t_htjs-zfield2,:t_htjs-zfield3,:t_htjs-zfield4,:t_htjs-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_gwyb_wzht'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_kcwz = 'X'.
select * into corresponding fields of table t_kcwz from zmm_dp_kcwz.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_kcwz;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_kcwz.
EXEC SQL.
begin
insert into zmm_dp_kcwz
(mandt,zwerks,zlgort,ztstype,ztskcbh,zmatnr,zbwtar,zststate,ZSSDWBM,ZSSDWMC,zpspnr,zxmmc,zdwmc,zmatkl,zwgbez,zlgobe,ztskcms,zmaktx,zmenge,zmeins,zemoney,zdate,ztime,zfield1,zfield2,zfield3,zfield4,zfield5
)
values(:t_kcwz-mandt,:t_kcwz-zwerks,:t_kcwz-zlgort,:t_kcwz-ztstype,:t_kcwz-ztskcbh,:t_kcwz-zmatnr,:t_kcwz-zbwtar,:t_kcwz-zststate,:t_kcwz-ZSSDWBM,:t_kcwz-ZSSDWMC,:t_kcwz-zpspnr,:t_kcwz-zxmmc,:t_kcwz-zdwmc,:t_kcwz-zmatkl,:t_kcwz-zwgbez,
:t_kcwz-zlgobe,:t_kcwz-ztskcms,
:t_kcwz-zmaktx,:t_kcwz-zmenge,:t_kcwz-zmeins,:t_kcwz-zemoney,:t_kcwz-zdate,:t_kcwz-ztime,:t_kcwz-zfield1,:t_kcwz-zfield2,:t_kcwz-zfield3,:t_kcwz-zfield4,:t_kcwz-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_kcwz'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_htjsmx = 'X'.
select * into corresponding fields of table t_htjsmx from zmm_dp_htjs.
sort t_htjsmx by zebeln .
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_htjs;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_htjsmx.
* if :t_htjsmx-zebeln = '4800000083'.
* BREAK-POINT .
* endif.
EXEC SQL.
begin
insert into zmm_dp_htjs
(MANDT,ZWERKS,ZSWHTBH,ZEBELN,ZSSDWBM,ZSSDWMC,ZDDRQ,ZDWMC,ZLIFNR,ZGYSMC,ZPSPNR,ZXMMC,ZDYDJ,ZHTHS,ZHTJZ,ZSHJE,ZSHRQ,ZFPJE,ZFPRQ,ZWFPJE,ZFKJE,ZFKRQ,ZFHTZDH,ZFKBL,ZFKSQ,ZSHPZ,ZFPPZ,ZJHWC,ZPZRQ,ZDATE,ZTIME,ZDHRQ,ZFPJYRQ,ZZFRQ,ZDHYF,ZFPJYYF,
ZZFYF,
ZFIELD1,ZFIELD2,ZFIELD3,ZFIELD4,ZFIELD5)
values(:t_htjsmx-MANDT,:t_htjsmx-ZWERKS,:t_htjsmx-ZSWHTBH,:t_htjsmx-ZEBELN,:t_htjsmx-ZSSDWBM,:t_htjsmx-ZSSDWMC,:t_htjsmx-ZDDRQ,:t_htjsmx-ZDWMC,:t_htjsmx-ZLIFNR,:t_htjsmx-ZGYSMC,:t_htjsmx-ZPSPNR,:t_htjsmx-ZXMMC,:t_htjsmx-ZDYDJ,
:t_htjsmx-ZHTHS,:t_htjsmx-ZHTJZ,:t_htjsmx-ZSHJE,:t_htjsmx-ZSHRQ,:t_htjsmx-ZFPJE,:t_htjsmx-ZFPRQ,:t_htjsmx-ZWFPJE,:t_htjsmx-ZFKJE,:t_htjsmx-ZFKRQ,:t_htjsmx-ZFHTZDH,:t_htjsmx-ZFKBL,:t_htjsmx-ZFKSQ,:t_htjsmx-ZSHPZ,:t_htjsmx-ZFPPZ,:t_htjsmx-ZJHWC,
:t_htjsmx-ZPZRQ,
:t_htjsmx-ZDATE,:t_htjsmx-ZTIME,:t_htjsmx-ZDHRQ,:t_htjsmx-ZFPJYRQ,:t_htjsmx-ZZFRQ,:t_htjsmx-ZDHYF,:t_htjsmx-ZFPJYYF,:t_htjsmx-ZZFYF,:t_htjsmx-ZFIELD1,:t_htjsmx-ZFIELD2,:t_htjsmx-ZFIELD3,:t_htjsmx-ZFIELD4,:t_htjsmx-ZFIELD5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_htjs'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
select * into corresponding fields of table t_htjsmxfx from zmm_dp_htjsfx.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_htjsfx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_htjsmxfx.
EXEC SQL.
begin
insert into zmm_dp_htjsfx
(mandt,
zwerks,
zswhtbh,
zebeln,
ztjday,
zssdwbm,
zssdwmc,
zddrq,
zdwmc,
zlifnr,
zgysmc,
zpspnr,
zxmmc,
zdydj,
zhths,
zhtjz,
zshje,
zshrq,
zfpje,
zfprq,
zwfpje,
zfkje,
zfkrq,
zfhtzdh,
zfkbl,
zfksq,
zshpz,
zfppz,
zpzrq,
zdate,
ztime,
zdhrq,
zfpjyrq,
zzfrq,
zdhyf,
zfpjyyf,
zzfyf,
zfield1,
zfield2,
zfield3,
zfield4,
zfield5)
values(:t_htjsmx-mandt,
:t_htjsmxfx-zwerks,
:t_htjsmxfx-zswhtbh,
:t_htjsmxfx-zebeln,
:t_htjsmxfx-ztjday,
:t_htjsmxfx-zssdwbm,
:t_htjsmxfx-zssdwmc,
:t_htjsmxfx-zddrq,
:t_htjsmxfx-zdwmc,
:t_htjsmxfx-zlifnr,
:t_htjsmxfx-zgysmc,
:t_htjsmxfx-zpspnr,
:t_htjsmxfx-zxmmc,
:t_htjsmxfx-zdydj,
:t_htjsmxfx-zhths,
:t_htjsmxfx-zhtjz,
:t_htjsmxfx-zshje,
:t_htjsmxfx-zshrq,
:t_htjsmxfx-zfpje,
:t_htjsmxfx-zfprq,
:t_htjsmxfx-zwfpje,
:t_htjsmxfx-zfkje,
:t_htjsmxfx-zfkrq,
:t_htjsmxfx-zfhtzdh,
:t_htjsmxfx-zfkbl,
:t_htjsmxfx-zfksq,
:t_htjsmxfx-zshpz,
:t_htjsmxfx-zfppz,
:t_htjsmxfx-zpzrq,
:t_htjsmxfx-zdate,
:t_htjsmxfx-ztime,
:t_htjsmxfx-zdhrq,
:t_htjsmxfx-zfpjyrq,
:t_htjsmxfx-zzfrq,
:t_htjsmxfx-zdhyf,
:t_htjsmxfx-zfpjyyf,
:t_htjsmxfx-zzfyf,
:t_htjsmxfx-zfield1,
:t_htjsmxfx-zfield2,
:t_htjsmxfx-zfield3,
:t_htjsmxfx-zfield4,
:t_htjsmxfx-zfield5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_htjsfx'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_ybdc = 'X'.
select * into corresponding fields of table t_ybdc from zmm_dp_ybdc.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_dp_ybdc;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_ybdc.
EXEC SQL.
begin
insert into zmm_dp_ybdc
(mandt,ZTJYF,ZWZHTFS,ZWZHTJE,ZWZGYJHFS,ZWZGYJHJE,ZBZHTFS,ZBZHTJE,ZXYKCFS,ZXYKCJE,ZDATE,ZTIME,ZFIELD1,ZFIELD2,ZFIELD3,ZFIELD4,ZFIELD5)
values(:t_ybdc-mandt,:t_ybdc-ZTJYF,:t_ybdc-ZWZHTFS,:t_ybdc-ZWZHTJE,:t_ybdc-ZWZGYJHFS,:t_ybdc-ZWZGYJHJE,:t_ybdc-ZBZHTFS,:t_ybdc-ZBZHTJE,:t_ybdc-ZXYKCFS,
:t_ybdc-ZXYKCJE,:t_ybdc-ZDATE,:t_ybdc-ZTIME,:t_ybdc-ZFIELD1,:t_ybdc-ZFIELD2,:t_ybdc-ZFIELD3,:t_ybdc-ZFIELD4,:t_ybdc-ZFIELD5);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'zmm_dp_ybdc'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
if p_zdxmmx = 'X'.
data:lv_date like sy-datum .
select max( zdate )
into lv_date
from zmm_dp_xmjdgzmx .
select * into corresponding fields of table t_zdxmmx from zmm_dp_xmjdgzmx where zdate = lv_date.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from ZMM_DP_XMJDGZMX;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_zdxmmx.
EXEC SQL.
begin
insert into ZMM_DP_XMJDGZMX
(mandt,
ZEBELN,
ZEBELP,
ZXMMC,
DDZJHS,
ZMAKTX,
ZMENGE,
ZMEINS,
EINDT,
ZQDJHQ,
BUDAT,
SJJHSL,
SJSHJE,
JHZT,
JHWCSJ,
ELIKZ,
FPJYJE,
FPJYSJ,
GYSTATUS,
ZFHTZZT,
ZYSZT,
ZFPJYZT,
DDDJ,
DDDJHS,
DDZJ,
ZFKJE,
ZSJKGSJ,
ZSJTCSJ,
ZPSPNR,
WGBEZ,
ZDYDJ,
ZXMLX,
ZBANFN,
ZBNFPO,
ZMATNR,
ZLIFNR,
ZGYSMC,
ZWERKS,
ZGCMC,
ZSSDWBH,
ZSSDWMC,
ZDATE,
ZTIME,
MWSKZ,
SJSHJEHS,
FPJYJEHS,
zup_date,
RSNUM,
RSPOS,
KZEAR)
values(:t_zdxmmx-mandt,
:t_zdxmmx-ZEBELN,
:t_zdxmmx-ZEBELP,
:t_zdxmmx-ZXMMC,
:t_zdxmmx-DDZJHS,
:t_zdxmmx-ZMAKTX,
:t_zdxmmx-ZMENGE,
:t_zdxmmx-ZMEINS,
:t_zdxmmx-EINDT,
:t_zdxmmx-ZQDJHQ,
:t_zdxmmx-BUDAT,
:t_zdxmmx-SJJHSL,
:t_zdxmmx-SJSHJE,
:t_zdxmmx-JHZT,
:t_zdxmmx-JHWCSJ,
:t_zdxmmx-ELIKZ,
:t_zdxmmx-FPJYJE,
:t_zdxmmx-FPJYSJ,
:t_zdxmmx-GYSTATUS,
:t_zdxmmx-ZFHTZZT,
:t_zdxmmx-ZYSZT,
:t_zdxmmx-ZFPJYZT,
:t_zdxmmx-DDDJ,
:t_zdxmmx-DDDJHS,
:t_zdxmmx-DDZJ,
:t_zdxmmx-ZFKJE,
:t_zdxmmx-ZSJKGSJ,
:t_zdxmmx-ZSJTCSJ,
:t_zdxmmx-ZPSPNR,
:t_zdxmmx-WGBEZ,
:t_zdxmmx-ZDYDJ,
:t_zdxmmx-ZXMLX,
:t_zdxmmx-ZBANFN,
:t_zdxmmx-ZBNFPO,
:t_zdxmmx-ZMATNR,
:t_zdxmmx-ZLIFNR,
:t_zdxmmx-ZGYSMC,
:t_zdxmmx-ZWERKS,
:t_zdxmmx-ZGCMC,
:t_zdxmmx-ZSSDWBH,
:t_zdxmmx-ZSSDWMC,
:t_zdxmmx-ZDATE,
:t_zdxmmx-ZTIME,
:t_zdxmmx-MWSKZ,
:t_zdxmmx-SJSHJEHS,
:t_zdxmmx-FPJYJEHS,
:t_zdxmmx-zup_date,
:t_zdxmmx-RSNUM,
:t_zdxmmx-RSPOS,
:t_zdxmmx-KZEAR);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'ODS'.
t_flag-program_name = 'ZMM_DP_XMJDGZMX'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
endif.
endif.
EXEC SQL.
disconnect :dbs
ENDEXEC.
catch cx_sy_native_sql_error into exc_ref.
EXEC SQL.
disconnect :dbs
ENDEXEC.
"捕获SQL错误
sql_error = exc_ref->get_text( ).
message sql_error type 'I'.
endtry.
elseif p_dm eq 'X'. "调用存储过程
* "判断ABAP程序有没有完成抽数
* select count(*) into p_sl from zmm_process_log where mod = 'ODS' and end_date eq sy-datum.
* if p_sl ne '37'.
* exit.
* endif.
try.
EXEC SQL.
connect to :dbs
ENDEXEC.
EXEC SQL.
set connection :dbs
ENDEXEC.
if sy-subrc <> 0.
raise exception type cx_sy_native_sql_error.
endif.
select * into corresponding fields of table t_zmm_process_log from zmm_process_log.
if sy-subrc = 0.
"清数
EXEC SQL.
begin
delete from zmm_process_log;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"写数
loop at t_zmm_process_log.
EXEC SQL.
begin
insert into zmm_process_log
(mandt,MOD,PROGRAM_NAME,END_DATE,END_TIME,SUCCESS_FLAG,ERROR_INFO)
values(:t_zmm_process_log-mandt,:t_zmm_process_log-mod,:t_zmm_process_log-PROGRAM_NAME,:t_zmm_process_log-END_DATE,:t_zmm_process_log-END_TIME,
:t_zmm_process_log-SUCCESS_FLAG,:t_zmm_process_log-ERROR_INFO);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
endif.
EXEC SQL.
begin
p_all(sysdate,sysdate);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
EXEC SQL.
disconnect :dbs
ENDEXEC.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'DM'.
t_flag-program_name = 'P_ALL'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
catch cx_sy_native_sql_error into exc_ref.
EXEC SQL.
DISCONNECT :dbs
ENDEXEC.
"捕获SQL错误
sql_error = exc_ref->get_text( ).
endtry.
elseif p_wd eq 'X'. "更新维度表
"定义内表
"工厂
data: begin of t_gc occurs 0,
name1 like t001w-name1,
werks like t001w-werks,
end of t_gc.
"公司
data:begin of t_gs occurs 0,
bukrs like t001-bukrs,
butxt like t001-butxt,
end of t_gs.
"利润中心
data:begin of t_lrzx occurs 0,
prctr like cepct-prctr,
ltext like cepct-ltext,
end of t_lrzx.
"供应商
data:begin of t_gys occurs 0,
lifnr like lfa1-lifnr,
name1 like lfa1-name1,
end of t_gys.
"库存地点
data: begin of t_kcdd occurs 0,
lgort like t001l-lgort,
lgobe like t001l-lgobe,
end of t_kcdd.
"物料组
data: begin of t_wlz occurs 0,
matkl like t023t-matkl,
wgbez like t023t-wgbez,
end of t_wlz.
* "项目类型
* data: begin of t_xmlx occurs 0,
* prart like tcj1t-prart,
* pratx like tcj1t-pratx,
* end of t_xmlx.
select
werks
name1
into corresponding fields of table t_gc
from t001w.
select
bukrs
butxt
into corresponding fields of table t_gs
from t001.
select
prctr
ltext
into corresponding fields of table t_lrzx
from cepct.
select
lifnr
name1
into corresponding fields of table t_gys
from lfa1.
select
lgort
lgobe
into corresponding fields of table t_kcdd
from t001l.
select
matkl
wgbez
into corresponding fields of table t_wlz
from t023t.
* select
* prart
* pratx
* into corresponding fields of table t_xmlx
* from tcj1t.
"链接数据库
try.
EXEC SQL.
connect to :dbs
ENDEXEC.
EXEC SQL.
set connection :dbs
ENDEXEC.
if sy-subrc <> 0.
raise exception type cx_sy_native_sql_error.
endif.
"工厂维度表更新
if t_gc[] is not initial.
"清空表
EXEC SQL.
begin
delete from zmm_dc_gc;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"更新数据
loop at t_gc.
EXEC SQL.
begin
insert into zmm_dc_gc
(zgcmc,zgcbm)
values(:t_gc-name1,:t_gc-werks);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
endif.
"公司维度表更新
if t_gs[] is not initial.
"清空表
EXEC SQL.
begin
delete from ZMM_DC_GS;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"更新数据
loop at t_gs.
EXEC SQL.
begin
insert into ZMM_DC_GS
(ZGSMC,ZGSBM)
values(:t_gs-butxt,:t_gs-bukrs);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
endif.
"利润中心维度表更新
if t_lrzx[] is not initial.
"清空表
EXEC SQL.
begin
delete from zmm_dc_lrzx;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"更新数据
loop at t_lrzx.
EXEC SQL.
begin
insert into zmm_dc_lrzx
(zlrzxmc,zlrzxbm)
values(:t_lrzx-ltext,:t_lrzx-prctr);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
endif.
"供应商维度表更新
if t_gys[] is not initial.
"清空表
EXEC SQL.
begin
delete from zmm_dc_gys;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"更新数据
loop at t_gys.
EXEC SQL.
begin
insert into zmm_dc_gys
(zgysmc,zgysbm)
values(:t_gys-name1,:t_gys-lifnr);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
endif.
"库存地点维度表更新
if t_kcdd[] is not initial.
"清空表
EXEC SQL.
begin
delete from zmm_dc_kcdd;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"更新数据
loop at t_kcdd.
EXEC SQL.
begin
insert into zmm_dc_kcdd
(zckddmc,zckddbm)
values(:t_kcdd-lgobe,:t_kcdd-lgort);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
endif.
"库存地点维度表更新
if t_wlz[] is not initial.
"清空表
EXEC SQL.
begin
delete from zmm_dc_wlz;
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
"更新数据
loop at t_wlz.
EXEC SQL.
begin
insert into zmm_dc_wlz
(zwlzbm,zwlzmc)
values(:t_wlz-matkl,:t_wlz-wgbez);
if sql%found then
commit;
else
rollback;
end if;
end;
ENDEXEC.
endloop.
endif.
* "项目类型维度表更新
* if t_xmlx[] is not initial.
* "清空表
* EXEC SQL.
* begin
* delete from zmm_dc_xmlx;
* if sql%found then
* commit;
* else
* rollback;
* end if;
* end;
* ENDEXEC.
* "更新数据
* loop at t_xmlx.
* EXEC SQL.
* begin
* insert into zmm_dc_xmlx
* (zxmlxmc,zxmlxbm)
* values(:t_xmlx-pratx,:t_xmlx-prart);
*
* if sql%found then
* commit;
* else
* rollback;
* end if;
* end;
* ENDEXEC.
* endloop.
* endif.
EXEC SQL.
disconnect :dbs
ENDEXEC.
"标记成功标识
clear: t_flag,t_flag[].
t_flag-mod = 'WD'.
t_flag-program_name = 'WD'.
t_flag-end_date = sy-datum.
t_flag-end_time = sy-uzeit.
t_flag-success_flag = '1'.
append t_flag.
modify zmm_process_log from table t_flag. commit work.
catch cx_sy_native_sql_error into exc_ref.
EXEC SQL.
DISCONNECT :dbs
ENDEXEC.
"捕获SQL错误
sql_error = exc_ref->get_text( ).
endtry.
endif.