范例:

代码:

#add-point:input段落 name="ui_dialog.input"INPUT BY NAME g_master.bdate,g_master.edate,g_master.l_group ATTRIBUTE(WITHOUT DEFAULTS)AFTER FIELD edateIF NOT cl_null(g_master.edate) AND NOT cl_null(g_master.bdate) THENIF g_master.edate < g_master.bdate THENLET g_master.edate = NULLDISPLAY g_master.edate TO edateNEXT FIELD edateEND IFEND IFEND INPUT#end add-point

  

#add-point:construct段落 name="ui_dialog.construct"CONSTRUCT BY NAME g_master.wc ON pmdo001,imaa009,pmaa080,pmdl004ON ACTION controlp INFIELD pmdo001INITIALIZE g_qryparam.* TO NULLLET g_qryparam.state = 'c'LET g_qryparam.reqry = FALSECALL q_imaf001()                           #呼叫開窗DISPLAY g_qryparam.return1 TO pmdo001  #顯示到畫面上NEXT FIELD pmdo001                     #返回原欄位ON ACTION controlp INFIELD imaa009INITIALIZE g_qryparam.* TO NULLLET g_qryparam.state = 'c'LET g_qryparam.reqry = FALSECALL q_rtax001()                           #呼叫開窗DISPLAY g_qryparam.return1 TO imaa009  #顯示到畫面上NEXT FIELD imaa009                     #返回原欄位ON ACTION controlp INFIELD pmaa080INITIALIZE g_qryparam.* TO NULLLET g_qryparam.state = 'c'LET g_qryparam.reqry = FALSELET g_qryparam.arg1 = '251'CALL q_oocq002()                           #呼叫開窗DISPLAY g_qryparam.return1 TO pmaa080  #顯示到畫面上NEXT FIELD pmaa080                     #返回原欄位ON ACTION controlp INFIELD pmdl004INITIALIZE g_qryparam.* TO NULLLET g_qryparam.state = 'c'LET g_qryparam.reqry = FALSECALL q_pmaa001_3()                           #呼叫開窗DISPLAY g_qryparam.return1 TO pmdl004  #顯示到畫面上NEXT FIELD pmdl004                     #返回原欄位END CONSTRUCT#end add-point

  

双击汇总,打开对应报表;

#add-point:page1自定義行為 name="ui_dialog.body.page1.action"ON ACTION modify_detailLET l_wc_web = l_wcLET l_wc_web = cl_replace_str(l_wc_web,"pmdo001","imaa001")LET l_wc_web = cl_replace_str(l_wc_web,"pmdl004","pmaa001")CASE g_master.l_groupWHEN '1'CALL apmr006_x01(l_wc_web)WHEN '2'CALL apmr006_x02(l_wc_web)WHEN '3'CALL apmr006_x03(l_wc_web)WHEN '4'CALL apmr006_x04(l_wc_web)WHEN '5'CALL apmr006_x05(l_wc_web)END CASE#end add-point

  

#+ 單身陣列填充
PRIVATE FUNCTION cpmq006_b_fill()#add-point:b_fill段define-客製 name="b_fill.define_customerization"#end add-pointDEFINE ls_wc           STRINGDEFINE l_pid           LIKE type_t.chr50DEFINE ls_sql_rank     STRING#add-point:b_fill段define-標準  (請盡量不要在客製環境修改此段落內容, 否則將後續patch的調整需人工處理) name="b_fill.define"#end add-point#add-point:b_fill段sql_before name="b_fill.sql_before"CALL cl_set_comp_visible("b_pmdl004,b_pmdl004_desc,b_pmdl002,b_pmdl002_desc,b_pmdl003,b_pmdl003_desc,b_pmdo001,b_pmdo001_desc,b_pmdo001_desc_1,b_imaa009,b_imaa009_desc",FALSE)CASE g_master.l_groupWHEN '1'    #供应商编码CALL cl_set_comp_visible("b_pmdl004,b_pmdl004_desc",TRUE)WHEN '2'    #采购人员CALL cl_set_comp_visible("b_pmdl002,b_pmdl002_desc",TRUE)WHEN '3'    #采购部门CALL cl_set_comp_visible("b_pmdl003,b_pmdl003_desc",TRUE)WHEN '4'    #产品分类CALL cl_set_comp_visible("b_imaa009,b_imaa009_desc",TRUE)WHEN '5'    #料件编号CALL cl_set_comp_visible("b_pmdo001,b_pmdo001_desc,b_pmdo001_desc_1",TRUE)END CASEIF cl_null(g_master.wc) THENLET g_master.wc = " pmdlsite = '",g_site CLIPPED,"' AND pmdlent = '",g_enterprise CLIPPED,"' "ELSELET g_master.wc = g_master.wc CLIPPED," AND pmdlsite = '",g_site CLIPPED,"' AND pmdlent = '",g_enterprise CLIPPED,"' "END IFLET g_master.wc = g_master.wc CLIPPED," AND (pmdl005 = '1' OR pmdl005 = '2' OR pmdl005 = '3' OR pmdl005 = '5' ) AND pmdlstus='Y'"IF NOT cl_null(g_master.bdate) THENLET g_master.wc = g_master.wc , " AND pmdldocdt >= to_date( '",g_master.bdate,"','yy/mm/dd') "END IFIF NOT cl_null(g_master.edate) THENLET g_master.wc = g_master.wc , " AND pmdldocdt <= to_date('",g_master.edate,"','yy/mm/dd') "END IFLET l_wc = g_master.wc#end add-pointIF cl_null(g_wc_filter) THENLET g_wc_filter = " 1=1"END IFIF cl_null(g_wc) THENLET g_wc = " 1=1"END IFIF cl_null(g_wc2) THENLET g_wc2 = " 1=1"END IFLET ls_wc = g_wc, " AND ", g_wc2, " AND ", g_wc_filterCALL g_pmdl_d.clear()#add-point:陣列清空 name="b_fill.array_clear"#end add-pointLET g_cnt = l_acIF g_cnt = 0 THENLET g_cnt = 1END IFLET l_ac = 1# b_fill段sql組成及FOREACH撰寫#應用 qs04 樣板自動產生(Version:9)#+ b_fill段資料取得(包含sql組成及FOREACH段撰寫)LET ls_sql_rank = "SELECT  UNIQUE pmdl004,'',pmdl002,'',pmdl003,'','','','','','','','','',''  ,DENSE_RANK() OVER( ORDER BY pmdl_t.pmdldocno) AS RANK FROM pmdl_t", #table2" LEFT JOIN pmdn_t ON pmdnent = pmdlent AND pmdldocno = pmdndocno",""," WHERE pmdlent= ? AND 1=1 AND ", ls_wcLET ls_sql_rank = ls_sql_rank, cl_sql_add_filter("pmdl_t")," ORDER BY pmdl_t.pmdldocno"#add-point:b_fill段rank_sql_after name="b_fill.rank_sql_after"LET ls_sql_rank = " SELECT pmdl004,pmaal003,pmdl002,ooag011,pmdl003,ooefl003,pmdo001,imaal003,imaal004,imaa009,rtaxl003,pmdo006,pmdo033 "," FROM pmdo_t "," LEFT JOIN pmdn_t ON pmdnent=pmdoent AND pmdndocno=pmdodocno AND pmdnseq=pmdoseq  "," LEFT JOIN pmdl_t ON pmdlent=pmdnent AND pmdldocno=pmdndocno "," LEFT JOIN imaa_t ON imaaent=pmdnent AND imaa001=pmdn001 "," LEFT JOIN pmaa_t ON pmaaent=pmdlent AND pmaa001=pmdl004 "," LEFT JOIN pmaal_t ON pmaalent=pmdlent AND pmaal001=pmdl004 AND pmaal002='zh_CN' "," LEFT JOIN ooag_t ON ooagent=pmdlent AND ooag001=pmdl002 "," LEFT JOIN ooefl_t ON ooeflent=pmdlent AND ooefl001=pmdl003 AND ooefl002='zh_CN' "," LEFT JOIN imaal_t ON imaaent=pmdnent AND imaal001=pmdn001 AND imaal002='zh_CN' "," LEFT JOIN rtaxl_t ON rtaxlent=imaaent AND rtaxl001=imaa009 AND rtaxl002='zh_CN' "," WHERE  ",l_wc CLIPPED{#end add-pointLET g_sql = "SELECT COUNT(1) FROM (",ls_sql_rank,")"PREPARE b_fill_cnt_pre FROM g_sql  #總筆數EXECUTE b_fill_cnt_pre USING g_enterprise INTO g_tot_cntFREE b_fill_cnt_pre#add-point:b_fill段rank_sql_after_count name="b_fill.rank_sql_after_count"}LET g_sql = "SELECT COUNT(1) FROM (",ls_sql_rank,")"PREPARE b_fill_cnt_pre FROM g_sql  #總筆數EXECUTE b_fill_cnt_pre  INTO g_tot_cntFREE b_fill_cnt_pre#end add-pointCASE g_detail_page_actionWHEN "detail_first"LET g_pagestart = 1WHEN "detail_previous"LET g_pagestart = g_pagestart - g_num_in_pageIF g_pagestart < 1 THENLET g_pagestart = 1END IFWHEN "detail_next"LET g_pagestart = g_pagestart + g_num_in_pageIF g_pagestart > g_tot_cnt THENLET g_pagestart = g_tot_cnt - (g_tot_cnt mod g_num_in_page) + 1WHILE g_pagestart > g_tot_cntLET g_pagestart = g_pagestart - g_num_in_pageEND WHILEEND IFWHEN "detail_last"LET g_pagestart = g_tot_cnt - (g_tot_cnt mod g_num_in_page) + 1WHILE g_pagestart > g_tot_cntLET g_pagestart = g_pagestart - g_num_in_pageEND WHILEOTHERWISELET g_pagestart = 1END CASELET g_sql = "SELECT pmdl004,'',pmdl002,'',pmdl003,'','','','','','','','','',''"," FROM (",ls_sql_rank,")"," WHERE RANK >= ",g_pagestart," AND RANK < ",g_pagestart + g_num_in_page#add-point:b_fill段sql_after name="b_fill.sql_after"LET g_sql = " WITH t1 AS ( "," SELECT pmdl004,pmaal003,pmdl002,ooag011,pmdl003,ooefl003,pmdo001,imaal003,imaal004,imaa009,rtaxl003,pmdo006,pmdo033 "," FROM pmdo_t "," LEFT JOIN pmdn_t ON pmdnent=pmdoent AND pmdndocno=pmdodocno AND pmdnseq=pmdoseq  "," LEFT JOIN pmdl_t ON pmdlent=pmdnent AND pmdldocno=pmdndocno "," LEFT JOIN imaa_t ON imaaent=pmdnent AND imaa001=pmdn001 "," LEFT JOIN pmaa_t ON pmaaent=pmdlent AND pmaa001=pmdl004 "," LEFT JOIN pmaal_t ON pmaalent=pmdlent AND pmaal001=pmdl004 AND pmaal002='zh_CN' "," LEFT JOIN ooag_t ON ooagent=pmdlent AND ooag001=pmdl002 "," LEFT JOIN ooefl_t ON ooeflent=pmdlent AND ooefl001=pmdl003 AND ooefl002='zh_CN' "," LEFT JOIN imaal_t ON imaaent=pmdnent AND imaal001=pmdn001 AND imaal002='zh_CN' "," LEFT JOIN rtaxl_t ON rtaxlent=imaaent AND rtaxl001=imaa009 AND rtaxl002='zh_CN' "," WHERE pmdoent=? AND  ",l_wc CLIPPED," ) "CASE g_master.l_groupWHEN '1'    #供应商编码LET g_sql = g_sql, " SELECT pmdl004,pmaal003,'','','','','','','','','',SUM(pmdo006),to_char(SUM(pmdo006)/(SELECT SUM(pmdo006) FROM t1)*100,'fm990.99')||'%',SUM(pmdo033),to_char(SUM(pmdo033)/(SELECT SUM(pmdo033) FROM t1)*100,'fm990.99')||'%' "," FROM t1 "," GROUP BY pmdl004,pmaal003 "," ORDER BY pmdl004 "WHEN '2'    #采购人员LET g_sql = g_sql, " SELECT '','',pmdl002,ooag011,'','','','','','','',SUM(pmdo006),to_char(SUM(pmdo006)/(SELECT SUM(pmdo006) FROM t1)*100,'fm990.99')||'%',SUM(pmdo033),to_char(SUM(pmdo033)/(SELECT SUM(pmdo033) FROM t1)*100,'fm990.99')||'%' "," FROM t1 "," GROUP BY pmdl002,ooag011 "," ORDER BY pmdl002 "WHEN '3'    #采购部门LET g_sql = g_sql, " SELECT '','','','',pmdl003,ooefl003,'','','','','',SUM(pmdo006),to_char(SUM(pmdo006)/(SELECT SUM(pmdo006) FROM t1)*100,'fm990.99')||'%',SUM(pmdo033),to_char(SUM(pmdo033)/(SELECT SUM(pmdo033) FROM t1)*100,'fm990.99')||'%' "," FROM t1 "," GROUP BY pmdl003,ooefl003 "," ORDER BY pmdl003 "WHEN '4'    #产品分类LET g_sql = g_sql, " SELECT '','','','','','','','','',imaa009,rtaxl003,SUM(pmdo006),to_char(SUM(pmdo006)/(SELECT SUM(pmdo006) FROM t1)*100,'fm990.99')||'%',SUM(pmdo033),to_char(SUM(pmdo033)/(SELECT SUM(pmdo033) FROM t1)*100,'fm990.99')||'%' "," FROM t1 "," GROUP BY imaa009,rtaxl003 "," ORDER BY imaa009 "WHEN '5'    #料件编号LET g_sql = g_sql, " SELECT '','','','','','',pmdo001,imaal003,imaal004,'','',SUM(pmdo006),to_char(SUM(pmdo006)/(SELECT SUM(pmdo006) FROM t1)*100,'fm990.99')||'%',SUM(pmdo033),to_char(SUM(pmdo033)/(SELECT SUM(pmdo033) FROM t1)*100,'fm990.99')||'%' "," FROM t1 "," GROUP BY pmdo001,imaal003,imaal004 "," ORDER BY pmdo001 "END CASE#end add-pointLET g_sql = cl_sql_add_mask(g_sql)              #遮蔽特定資料PREPARE cpmq006_pb FROM g_sqlDECLARE b_fill_curs CURSOR FOR cpmq006_pbOPEN b_fill_curs USING g_enterpriseFOREACH b_fill_curs INTO g_pmdl_d[l_ac].pmdl004,g_pmdl_d[l_ac].pmdl004_desc,g_pmdl_d[l_ac].pmdl002, g_pmdl_d[l_ac].pmdl002_desc,g_pmdl_d[l_ac].pmdl003,g_pmdl_d[l_ac].pmdl003_desc,g_pmdl_d[l_ac].pmdo001, g_pmdl_d[l_ac].pmdo001_desc,g_pmdl_d[l_ac].pmdo001_desc_1,g_pmdl_d[l_ac].imaa009,g_pmdl_d[l_ac].imaa009_desc, g_pmdl_d[l_ac].l_sum_cnt,g_pmdl_d[l_ac].l_sum_cntb,g_pmdl_d[l_ac].l_sum_money,g_pmdl_d[l_ac].l_sum_moneyb IF SQLCA.sqlcode THENINITIALIZE g_errparam TO NULL LET g_errparam.extend = "FOREACH:" LET g_errparam.code   = SQLCA.sqlcode LET g_errparam.popup  = TRUE CALL cl_err()EXIT FOREACHEND IF#add-point:b_fill段資料填充 name="b_fill.fill"#end add-pointCALL cpmq006_detail_show("'1'")CALL cpmq006_pmdl_t_mask()IF l_ac > g_max_rec THENIF g_error_show = 1 THENINITIALIZE g_errparam TO NULL LET g_errparam.extend =  "" LET g_errparam.code   =  9035 LET g_errparam.popup  = TRUE CALL cl_err()END IFEXIT FOREACHEND IFLET l_ac = l_ac + 1END FOREACH#應用 qs05 樣板自動產生(Version:3)#+ b_fill段其他table資料取得(包含sql組成及資料填充)#add-point:b_fill段資料填充(其他單身) name="b_fill.others.fill"#end add-pointCALL g_pmdl_d.deleteElement(g_pmdl_d.getLength())#add-point:陣列長度調整 name="b_fill.array_deleteElement"#end add-pointLET g_error_show = 0LET g_detail_cnt = g_pmdl_d.getLength()LET l_ac = g_cntLET g_cnt = 0#應用 qs06 樣板自動產生(Version:3)#+ b_fill段CURSOR釋放CLOSE b_fill_cursFREE cpmq006_pb#調整單身index指標,避免翻頁後指到空白筆數CALL cpmq006_detail_index_setting()#重新計算單身筆數並呈現CALL cpmq006_detail_action_trans()LET l_ac = 1IF g_pmdl_d.getLength() > 0 THENCALL cpmq006_b_fill2()END IFCALL cpmq006_filter_show('pmdl004','b_pmdl004')CALL cpmq006_filter_show('pmdl002','b_pmdl002')CALL cpmq006_filter_show('pmdl003','b_pmdl003')CALL cpmq006_filter_show('pmdo001','b_pmdo001')CALL cpmq006_filter_show('imaa009','b_imaa009')CALL cpmq006_filter_show('pmdlstus','b_pmdlstus')END FUNCTION

  

#+ 單身陣列填充2
PRIVATE FUNCTION cpmq006_b_fill2()#add-point:b_fill2段define-客製 name="b_fill2.define_customerization"#end add-pointDEFINE li_ac           LIKE type_t.num10#add-point:b_fill2段define-標準  (請盡量不要在客製環境修改此段落內容, 否則將後續patch的調整需人工處理) name="b_fill2.define"#end add-point#add-point:FUNCTION前置處理 name="b_fill2.before_function"#end add-pointLET li_ac = l_ac#單身組成#應用 qs07 樣板自動產生(Version:6)#+ b_fill2段table資料取得(包含sql組成及資料填充)
#Page2CALL g_pmdl2_d.clear()#add-point:陣列清空 name="b_fill2.array_clear"{#end add-point#table2#為避免影響執行效能,若是按上下筆就不重組SQLIF g_action_choice <> "fetch" OR cl_null(g_action_choice) THENLET g_sql = "SELECT  UNIQUE '','','','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','',pmdnud001,pmdn015,pmdn045,pmdn049,'',pmdn051,'' FROM pmdn_t", ""," WHERE pmdnent=? AND pmdndocno=?"IF NOT cl_null(g_wc2_table2) THENLET g_sql = g_sql CLIPPED," AND ",g_wc2_table2 CLIPPEDEND IFLET g_sql = g_sql, " ORDER BY pmdn_t.pmdnseq"#add-point:單身填充前 name="b_fill2.before_fill2"}LET g_sql = " SELECT pmdldocno,pmdldocdt,pmdl004,pmaal003,pmdl002,ooag011,pmdl003,ooefl003,pmdl005,pmdlud002,pmdlstus,pmdoseq, "," pmdoseq1,pmdoseq2,pmdo003,pmdo001,imaal003,imaal004,pmdo004,pmdo005,pmdo006,pmdo011,pmdo012,pmdo013,pmdo009, "," pmdo015,pmdo016,pmdo017,pmdo040,pmdo019,pmdo024,pmdo033,pmdnud001,pmdn015,pmdn045,pmdn049,oq1.oocql004,pmdn051,oq2.oocql004 "," FROM pmdo_t "," LEFT JOIN pmdn_t ON pmdnent=pmdoent AND pmdndocno=pmdodocno AND pmdnseq=pmdoseq  "," LEFT JOIN pmdl_t ON pmdlent=pmdnent AND pmdldocno=pmdndocno "," LEFT JOIN imaa_t ON imaaent=pmdnent AND imaa001=pmdn001 "," LEFT JOIN pmaa_t ON pmaaent=pmdlent AND pmaa001=pmdl004 "," LEFT JOIN pmaal_t ON pmaalent=pmdlent AND pmaal001=pmdl004 AND pmaal002='zh_CN' "," LEFT JOIN ooag_t ON ooagent=pmdlent AND ooag001=pmdl002 "," LEFT JOIN ooefl_t ON ooeflent=pmdlent AND ooefl001=pmdl003 AND ooefl002='zh_CN' "," LEFT JOIN imaal_t ON imaaent=pmdnent AND imaal001=pmdn001 AND imaal002='zh_CN' "," LEFT JOIN rtaxl_t ON rtaxlent=imaaent AND rtaxl001=imaa009 AND rtaxl002='zh_CN' "," LEFT JOIN oocql_t oq1 ON oq1.oocqlent=pmdnent AND oq1.oocql001='265' AND oq1.oocql002=pmdn049 AND oq1.oocql003='zh_CN'  "," LEFT JOIN oocql_t oq2 ON oq2.oocqlent=pmdnent AND oq2.oocql001 IN ('258','317') AND oq2.oocql002=pmdn051  AND oq2.oocql003='zh_CN'   "," WHERE  ",l_wc CLIPPEDCASE g_master.l_groupWHEN '1'    #供应商编码LET g_sql = g_sql, " AND pmdl004 = '",g_pmdl_d[g_detail_idx].pmdl004,"'  "WHEN '2'    #采购人员LET g_sql = g_sql, " AND pmdl002 = '",g_pmdl_d[g_detail_idx].pmdl002,"'  "WHEN '3'    #采购部门LET g_sql = g_sql, " AND pmdl003 = '",g_pmdl_d[g_detail_idx].pmdl003,"'  "WHEN '4'    #产品分类LET g_sql = g_sql, " AND imaa009 = '",g_pmdl_d[g_detail_idx].imaa009,"'  "WHEN '5'    #料件编号LET g_sql = g_sql, " AND pmdo001 = '",g_pmdl_d[g_detail_idx].pmdo001,"'  "END CASE{#end add-pointLET g_sql = cl_sql_add_mask(g_sql)              #遮蔽特定資料PREPARE cpmq006_pb2 FROM g_sqlDECLARE b_fill_curs2 CURSOR FOR cpmq006_pb2END IFOPEN b_fill_curs2 USING g_enterprise,g_pmdl_d[g_detail_idx].pmdldocnoLET l_ac = 1FOREACH b_fill_curs2 INTO g_pmdl2_d[l_ac].pmdldocno,g_pmdl2_d[l_ac].pmdldocdt,g_pmdl2_d[l_ac].pmdl004, g_pmdl2_d[l_ac].pmdl004_2_desc,g_pmdl2_d[l_ac].pmdl002,g_pmdl2_d[l_ac].pmdl002_2_desc,g_pmdl2_d[l_ac].pmdl003, g_pmdl2_d[l_ac].pmdl003_2_desc,g_pmdl2_d[l_ac].pmdl005,g_pmdl2_d[l_ac].pmdlud002,g_pmdl2_d[l_ac].pmdlstus, g_pmdl2_d[l_ac].pmdoseq,g_pmdl2_d[l_ac].pmdoseq1,g_pmdl2_d[l_ac].pmdoseq2,g_pmdl2_d[l_ac].pmdo003, g_pmdl2_d[l_ac].pmdo001,g_pmdl2_d[l_ac].pmdo001_2_desc,g_pmdl2_d[l_ac].pmdo001_2_desc_1,g_pmdl2_d[l_ac].pmdo004, g_pmdl2_d[l_ac].pmdo005,g_pmdl2_d[l_ac].pmdo006,g_pmdl2_d[l_ac].pmdo011,g_pmdl2_d[l_ac].pmdo012, g_pmdl2_d[l_ac].pmdo013,g_pmdl2_d[l_ac].pmdo009,g_pmdl2_d[l_ac].pmdo015,g_pmdl2_d[l_ac].pmdo016, g_pmdl2_d[l_ac].pmdo017,g_pmdl2_d[l_ac].pmdo040,g_pmdl2_d[l_ac].pmdo019,g_pmdl2_d[l_ac].pmdo024, g_pmdl2_d[l_ac].pmdo033,g_pmdl2_d[l_ac].pmdnud001,g_pmdl2_d[l_ac].pmdn015,g_pmdl2_d[l_ac].pmdn045, g_pmdl2_d[l_ac].pmdn049,g_pmdl2_d[l_ac].pmdn049_2_desc,g_pmdl2_d[l_ac].pmdn051,g_pmdl2_d[l_ac].pmdn051_2_desc IF SQLCA.sqlcode THENINITIALIZE g_errparam TO NULL LET g_errparam.extend = "FOREACH:" LET g_errparam.code   = SQLCA.sqlcode LET g_errparam.popup  = TRUE CALL cl_err()EXIT FOREACHEND IF#add-point:b_fill2段資料填充 name="b_fill2.fill2"}LET g_sql = cl_sql_add_mask(g_sql)              #遮蔽特定資料PREPARE cpmq006_pb2 FROM g_sqlDECLARE b_fill_curs2 CURSOR FOR cpmq006_pb2OPEN b_fill_curs2 LET l_ac = 1FOREACH b_fill_curs2 INTO g_pmdl2_d[l_ac].pmdldocno,g_pmdl2_d[l_ac].pmdldocdt,g_pmdl2_d[l_ac].pmdl004, g_pmdl2_d[l_ac].pmdl004_2_desc,g_pmdl2_d[l_ac].pmdl002,g_pmdl2_d[l_ac].pmdl002_2_desc,g_pmdl2_d[l_ac].pmdl003, g_pmdl2_d[l_ac].pmdl003_2_desc,g_pmdl2_d[l_ac].pmdl005,g_pmdl2_d[l_ac].pmdlud002,g_pmdl2_d[l_ac].pmdlstus, g_pmdl2_d[l_ac].pmdoseq,g_pmdl2_d[l_ac].pmdoseq1,g_pmdl2_d[l_ac].pmdoseq2,g_pmdl2_d[l_ac].pmdo003, g_pmdl2_d[l_ac].pmdo001,g_pmdl2_d[l_ac].pmdo001_2_desc,g_pmdl2_d[l_ac].pmdo001_2_desc_1,g_pmdl2_d[l_ac].pmdo004, g_pmdl2_d[l_ac].pmdo005,g_pmdl2_d[l_ac].pmdo006,g_pmdl2_d[l_ac].pmdo011,g_pmdl2_d[l_ac].pmdo012, g_pmdl2_d[l_ac].pmdo013,g_pmdl2_d[l_ac].pmdo009,g_pmdl2_d[l_ac].pmdo015,g_pmdl2_d[l_ac].pmdo016, g_pmdl2_d[l_ac].pmdo017,g_pmdl2_d[l_ac].pmdo040,g_pmdl2_d[l_ac].pmdo019,g_pmdl2_d[l_ac].pmdo024, g_pmdl2_d[l_ac].pmdo033,g_pmdl2_d[l_ac].pmdnud001,g_pmdl2_d[l_ac].pmdn015,g_pmdl2_d[l_ac].pmdn045, g_pmdl2_d[l_ac].pmdn049,g_pmdl2_d[l_ac].pmdn049_2_desc,g_pmdl2_d[l_ac].pmdn051,g_pmdl2_d[l_ac].pmdn051_2_desc IF SQLCA.sqlcode THENINITIALIZE g_errparam TO NULL LET g_errparam.extend = "FOREACH:" LET g_errparam.code   = SQLCA.sqlcode LET g_errparam.popup  = TRUE CALL cl_err()EXIT FOREACHEND IF#end add-pointCALL cpmq006_detail_show("'2'")CALL cpmq006_pmdn_t_mask()IF l_ac > g_max_rec THENINITIALIZE g_errparam TO NULL LET g_errparam.extend =  "" LET g_errparam.code   =  9035 LET g_errparam.popup  = TRUE CALL cl_err()EXIT FOREACHEND IFLET l_ac = l_ac + 1END FOREACH#Page2CALL g_pmdl2_d.deleteElement(g_pmdl2_d.getLength())#add-point:陣列長度調整 name="b_fill2.array_deleteElement"#end add-point#Page2LET li_ac = g_pmdl2_d.getLength()DISPLAY li_ac TO FORMONLY.cntLET g_detail_idx2 = 1DISPLAY g_detail_idx2 TO FORMONLY.idx#add-point:單身填充後 name="b_fill2.after_fill"#end add-pointLET l_ac = li_acEND FUNCTION

  

转载于:https://www.cnblogs.com/xiaoli9627/p/8920158.html

T100——q查询,子母查询(汇总——明细)练习笔记相关推荐

  1. elasticsearch系列-子条件查询

    子条件查询 子条件查询又称为叶子条件查询,在特定字段中查询所指定值.在子查询中又分为Query Context和FilterContext. QueryContext 在QueryContext查询过 ...

  2. SQL语句汇总(三)——聚合函数、分组、子查询及组合查询

    聚合函数: SQL中提供的聚合函数可以用来统计.求和.求最值等等. 分类: –COUNT:统计行数量 –SUM:获取单个列的合计值 –AVG:计算某个列的平均值 –MAX:计算列的最大值 –MIN:计 ...

  3. MySQL(八)子查询和分组查询

    一.子查询 1.子查询(subquery):嵌套在其他查询中的查询. 例如:select user_id from usertable where mobile_no in (select mobil ...

  4. 数据库MySQL基础---约束、表关系、聚合函数、连接查询、分组查询和子查询

    约束 1.主键约束亦成为主码,关键字:primary key,设置了主键约束的列的数据要求:不能为空,不允许重复. 2.自增长策略针对主键,不需要手动给值,自动的值是当前表中该列最大值+1关键字:au ...

  5. MySQL操作之条件,排序,分页,聚合函数,分组,连接,子查询,自连接查询总结...

    -- 查询练习-- 查询所有字段-- select * from 表名;select * from students;-- 查询指定字段-- select 列1,列2,... from 表名;sele ...

  6. Django 【第六篇】ORM跨表操作(聚合查询,分组查询,F和Q查询等)

    一:创建表 书籍模型: 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系(many-to-many);     一本书只应该由一个出版商出 ...

  7. 数据库 day60,61 Oracle入门,单行函数,多表查询,子查询,事物处理,约束,rownum分页,视图,序列,索引

    1.    oracle介绍 ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的 ...

  8. mysql 分组联合查询_【MySQL】-2 函数、分组、子查询、联合查询

    函数 Mysql的函数特性没有SQL可移植性强. 大多数情况下支持的函数: 处理文本串的函数: RTrim():处理列值右边的空格 LTrim():处理列值左边的空格 Trim():处理列值的左右两边 ...

  9. mysql子查询日期比较_数据分析系列 16/32 | MySQL中子查询与联合查询

    前面说了很多MySQL中的查询,比如条件查询.分组聚合查询.连接查询,今天来说一下另外两个非常的重要的查询,MySQL中的子查询和联合查询. PART01 子查询 子查询也称嵌套查询,是将一个查询语句 ...

最新文章

  1. 追求代码质量: 监视圈复杂度
  2. 【R语言】迫松分布估计--判断是否符合迫松分布
  3. gen already exists but is not a source folder
  4. android面试之fragment,当你面试的时候,被问到关于Fragment的种种
  5. 支付系统设计:支付系统的账户模型(一)
  6. 将Sublime Text 添加到鼠标右键菜单的教程方法
  7. pls-toolbox_使用T-SQL Toolbox数据库解决时区,GMT和UTC问题
  8. Winform 调整SplitContainer中Panel的大小
  9. Java版点餐小程序2022最新版笔记,Springboot+Mysql+Freemarker+Bootstrap+微信小程序实现扫码点餐小程序
  10. QTreeView 详解 并设置样式表
  11. 优秀软件测试工程师必读书籍推荐
  12. 台式计算机没有外放声音,台式电脑外放无声音怎么办
  13. Hive: Reflect UDF
  14. 运维工程师高阶面试总结
  15. “天翼阅读”APP用户体验
  16. 前后端传图片用base64好吗_Base64是什么?前端用Base64加载图片到底好不好?
  17. vue3 注册全局方法 定义全局方法
  18. 抓包工具--Fiddler
  19. 每日爬虫:爬百度千千音乐
  20. ZCMU-1411:喜闻乐见的a+b(大整数)

热门文章

  1. MongoDB--Linux下搭建的副本集集群(踩过的坑,血和泪的教训)
  2. 群晖php配置支持后端,群晖NAS服务器iSCSI管理器配置连接及使用说明
  3. U盘启动盘装系统Win10教程
  4. 文件末尾eof_什么是EOF(文件末尾)? PHP,C ++,C,Python,Java的示例
  5. 语音识别(ASR)技术优势都有哪些?
  6. SSM框架搭建简单实例
  7. cookie的简单介绍
  8. Nuxt - 自定义页面布局,<Nuxt /> 个性化多套模板(一个项目内既要有用户正常浏览的普通页面,又要存在后台管理系统布局的页面)
  9. 团队公司地点拍照打卡签到活动小程序 document.forms[“myForm“][“fname“]
  10. PLSQL 14.0.6 下载使用教程