T100——查询 r类 报表开发流程

时间:2021-10-07 03:19:01

 

报表开发流程:
1、建立入口程序 如r类的作业:cxmr500
步骤:
azzi900中建立程序代号
azzi910中建立作业代号
设计器--规格--签出
设计器--程序--签出
adzp168(r.a)产生画面
设计器--规格--下载规格--修改规格--上传规格
设计器--程序--下载程序--修改程序--上传程序
azzi850中给程序赋权限

 

 

范例cxmr503,r.a后,画面等内容弄好后,代码上call报表子程序,具体见:

T100——查询 r类 报表开发流程

 

主要关注cxmr503_process函数:

   #add-point:process段前處理
IF cl_null(g_master.wc) THEN
LET g_master.wc
= '1=1'
END IF
LET g_master.wc
= g_master.wc CLIPPED," AND xmdastus = 'Y' AND xmdaent = ",g_enterprise," AND xmdasite = '",g_site,"'"
CALL cxmr503_x01(g_master.wc)
#end add
-point

注意CALL cxmr503_x01(g_master.wc),这里要和cxmr503_x01里面的参数一致,一个就传入一个,两个就传入两个;

g_master.wc 是根据用户所选的条件进行组织(如CONSTRUCT),传入到cxmr503_x01后还会进行处理。

 在cxmr500的process函数中调用报表元件的代号,上传r类的程序;
然后就可以执行cxmr500,根据选择的条件进行打印。

T100——查询 r类 报表开发流程

 

 

到cxmr503_x01:

查询报表、凭证报表开发流程
azzi901 中建立报表的元件代号
查询报表x01结尾 例如:cxmr500_x01 如有多个:cxmr500_x02,cxmr500_x03 以此类推
凭证报表g01结尾 例如:cxmr500_g01 如有多个:cxmr500_g02,cxmr500_g03 以此类推

设计器--规格--签出
设计器--程序--签出
adzp188(报表元件设计器)中输入报表元件代号
根据需求选择报表类型、纸张设定(凭证报表才需要)、资料表、栏位、群组、筛选、参数、排版
产生4gl、产生4rp(凭证报表才需要)

设计器--程序--下载--上传
设计器--gr样板--下载样板--通过genero 打开--上传4rp

 

范例cxmr503_x01,具体见下截图:

T100——查询 r类 报表开发流程

T100——查询 r类 报表开发流程

T100——查询 r类 报表开发流程

T100——查询 r类 报表开发流程

T100——查询 r类 报表开发流程

T100——查询 r类 报表开发流程

T100——查询 r类 报表开发流程

T100——查询 r类 报表开发流程

 

 生成报表元件(4gl)后,下载程序,代码需要修改:

T100——查询 r类 报表开发流程

 

 T100——查询 r类 报表开发流程

 

 

   #add-point:sel_prep g_order name="sel_prep.g_order"
LET g_where
= " WHERE xmdaent=xmdcent AND xmdadocno=xmdcdocno ",
" AND xmdcent=imaalent AND xmdc001=imaal001 AND imaal002='",g_dlang,"'",
" AND xmda_t.xmdastus = 'Y' AND ",tm.wc CLIPPED
#end add
-point

 

T100——查询 r类 报表开发流程

 

 

T100——查询 r类 报表开发流程

 

 

 另外,我们可以在azzi300 里面给查询报表的格式进行相关设置:

T100——查询 r类 报表开发流程

 

 

 

效果:

T100——查询 r类 报表开发流程