T100 GR 报表常见知识点 (含套版制作)
轉載至赫非域 >
T100 GR 报表常见知识点
8.9.1 注意事项
字体:
如果字型没选对,会造成没设对字型的数据汇出 PDF 格式乱掉,
请将 4rp 中自行新增的字段的字型、字体大小及宽度都是设
定正确,字型:微软雅黑体,字体大小 10,另外不需要的字段请移除。
1. 凭证报表不参考任何程序时,不需要进行 SQL 验证,直接在报表程序中 XXX__sel_prep()写查询条件,验证 sql
只对第一次用参考程序的才会验证
2. 在报表组件设计器(adzp188)选择栏位时,需要把主表中的企业编号,营运据点等主键添加到栏位中,如果需
要用到自定义的变量,命名是以:l_xx 3. 如果报表模板下载错误,可能是 GDC 没有以管理员的身份打开
4. 重点:如果做的报表样板很复杂,生成报表样板,且画面已经设置好了之后发现要增加栏位:可以在报表设计
器中新增字段之后,点击生成报表元件,字段就会生成到程序中,不建议直接把 define 的内容给注释掉重新写,这样的原因是,如果以后的报表样板可以参考这个报表程序时,就会报错。新手可能会找不到错误
5. 栏位中的内容很多,打印内容会重叠。例如备注:可以在报表样板的备注值中,新增一个 MINIpage 的容器包着
备注,然后设置 s_x:min s_y:max,并且把点 x,点 y,锚 x,锚 y 都要移除
6. 调整报表的字体,上传之后会弹出一个窗口,不要认为是错误,实际只是警告,字体会生效
7. 上传的讯息中,如有有【强制】那就是一定要改,不改会影响报表产生,而有强制就不会上传样板,其余【提
示】【设置】是建议讯息,可以不理会,因为样板会上传成功
8. 如果要设置格子的宽度,可以根据需求设置样式,如左部样式,右部样式,设置左边宽度,右边宽度
9. 做销售报表打印,可以用样式代替表格,设置边框的宽度和样式,在每个 value 中用一个 minipage 容器包着,
要设置 minipage 边框的宽度和样式,不要设置 value 值的,否则会导致线条变粗,如果画面中的值有多有少,
会导致线条长短不一,就需要调整 minipage 的属性。如下图:x-调整,或者 y-调整。去将 detail01 里面的每一个
minipage,都设这个属性,这个属性的用意是他的 x-size(这边是高度) 要延伸跟父容器一样高。另外一个跟 child
的 是缩小跟自己容器内的对象一样高
10.
11.因为你 DetailHeader01 跟 Detail01 的宽度不一,所以还需要去调整 Detail01 的宽度
最终的打印呈现是:
12.若是打印时有以下 xml 的错误,可以打开 gst,看错误讯息中,双击错误,就可以找到具体错误在哪里
8.9.2 IE 浏览器闲置时间设置
AZZI301 里面放大下闲置时间
8.9.3 GR 报表复合 key 值设定方式 201706
范例程序:axmr510
应用场景:当群组需要设 3 个以上,并以 key1+key2 跳页时,请使用复合字段跳页。
例如订单变更单打印,群组为「订单单号+变更序+项次」,跳页的依据为订单单号+变更序
- 请先执行『报表组件设计器(adzp188)』于【字段】页签,设定自定义字段
- 字段代号请输入 l_order
注:如果有多个复合 key 的需求,请依流水号依序编 l_order1,l_order2,……
(2) 字段说明:请依需求输入例:单号更改序
(3) 型态参考请选择 type_t
字段长度请依据复合字段的长度(可参考 r.t)做选择
例:订单单号(xmeedocno)→20
变更序(xmee900)→4(请注意!如为数值型态,固定给 4 码)
总长度:20+4=24→因此选择 chr30
- 数据值请选择”(空值)
- 上述步骤完成后如下图,点选箭号后,完成自定义字段新增。
- 请切换至【群组】页签
- 在「萃取的排序」中,请根据需求设定例:订单单号+变更序+项次
- 在「印出的排序」中,请使用自定义字段的 l_order,并且一定要选择”ORDER BY”,不可选”ORDER
EXTERNAL BY”
例:l_order+项次
- 在『报表组件设计器(adzp188)』中的其余设定都相同,完成后请点选「产生报表组件(4gl)」
- 请透过设计器开启 4gl,调整部分如下:
- 在 BEFORE GROUP 中呼叫签核 FUNCTION,应传入单号,
请将刚性结构批注,并在上方的 add-point 加入,单号请根据您的 table 设定。
CALL cl_gr_init_pageheader() #表头信息
PRINTX g_grPageHeader.*
CALL cl_gr_init_apr(sr1.xmeedocno)
5. 请调整 4 个备注子报表,将 sr1.l_order 复合字段条件自行拆解,并依照 key 值顺序给值。
例:
ooffent→sr1.xmeeent ooff002→sr1.xmeedocno ooff003→sr1.xmee900 ooff004→sr1.xmegseq
subrep01
subrep02
subrep03
subrep04
6. 上述步骤完成后,请储存并上传。
- 请透过设计器下载样板档,使用 Genero Report 开启后,让样板自动抓取 rdd 的信息调整节点内容 ,出现下图按下确定,再按下储存即可。
8. 储存完毕后请上传样板档。
8.9.4 套表 SOP(有底稿)
**此范例为使用打印营业税媒体申报 403 报表(非套表),相关细节可参考 aisr403***
Step1:先把执行报表的主程序设计准备好
Step2:至 azzi901 注册 xxxrXXX_g01 的报表信息,然后签出程序
Step3:开启 adzp188,输入报表组件名称,参考程序不用输入,单头区块&单身行数都设定 1 即可
Step4:数据表>>选取报表要使用的数据表
Step5:字段>>选取报表用到的字段
Step6:群组>>依照规格放入指定排序的条件
Step7:参数>>依照规格设定传入参数
Step8:排版>>随便放入字段,此仅为了产生 4rp 用,届时至 4rp 时会在作处理
Step9:下载_g01.4gl,依规格需求修改,完毕之后上传,在下载 4rp 报表
Step10:开启 4rp 报表前,需先准备好底稿,然后放入该 4rp 同目录下,文件名需跟 4rp 一样
*底稿图片仅限使用 PNG 格式
Step11:开启 4rp,先设定纸张大小,请参考下图调整
*边界记得四边调整成 0cm
Step12:架构设置请参考下图调整
*Details 跟 subrep04 需设置不显示,因为不需要用到
Step13:OnEveryRow 里面新增一 BOX 命名为 DetailCs,里面放置底稿
*底稿须设定来源路径,即一开始跟 4rp 放在一起的那张底稿
*X-size 跟 Y-size 都要设定成 max
*此时建议可以先上传,测试底稿有没有正常显示,在接着下面步骤
*若有问题无法排解,请洽 IT 报表组人员求救
Step14:如果上述步骤都没问题,那可以开始摆数据字段
*所有数据字段请摆放在底稿里面
Step15:数据字段摆好之后,依照原来报表上传方式上传即可
*微调小撇步:请先摆放几个之后,打印出来看看 OK 否,在继续摆
8.9.5 套表 SOP(無底稿)
**此范例为使用打印营业税媒体申报 403 报表(套表),相关细节可参考 aisr403***
Step1:先把执行报表的主程序设计准备好
Step2:至 azzi901 注册 xxxrXXX_g01 的报表信息,然后签出程序
若只做套表(无底稿)记得新增,若做套表(底稿+无底稿),新增一笔信息即可
Step3:若只做套表(无底稿)记得参考「套表 SOP(有底稿).docx」Step3~Step10,完成后请跳至 Step5
若已完成套表(有底稿),请往下做
至 azzi301 复制套表(有底稿)>>EX:aisr403_g01 复制 aisr403_g01_01
Step4:复制套表(有底稿)的 4rp,并将底稿一并放入 4rp 同目录下,文件名需跟 4rp 一样
**繁体、简体都要复制 *底稿图片仅限使用 PNG 格式
Step5:开启 4rp 修改,先设定纸张大小,请参考下图调整(长、宽长度仅供参考)
Step6:架构设置请参考下图调整
字段跟图片放至 Detail01 里面,字段跟图片摆在同一阶层里↓↓↓
**此底稿仅用于摆放位置用,若完工时记得移除 or 设定成 Boolean.FALSE
Step7:subrep01、subrep02、subrep03、subrep04 需设置不显示,因为不需要用到 Boolean.FALSE
Step8:数字记得设节点
Step9:完成后上传完工
若有问题无法解决,请洽 IT 报表组处理
8.9.6 一式二份套表(有底稿并自动跳页)
范例:制作一式二份套表(执据/存根)并自动跳页
参考程序:报表 anmp450_g01_02 / 子报表 anmp450_g01_02_subrep07 Step1:将执行报表的主程序设计好后,开始调整样板部分 (请注意阶层位置)
说明:
使用套表前先重新命名 PageHeader >PageHeaderCs 与 ReportHeader >ReportHeaderCs
放入 套表底稿(红框处) 拉入单头信息 ,以及 区分单头的区块(橘框处) 格式如下
底稿的「浮动行为(Floating Behavior)」设定为 free,X 跟 Y 都设 0 ( PH_Space/RH_Space 格式,Y-Size 设定为单头区块的大小 )
Step2:接着置入单身数据于 DetailCs 文件夹 (位置调整后,先上传确认是否正确的显示在格内)
Step3:如有限制跳页条件,加入跳页区块 skip
>>
说明:
在程序中加入判断跳页的条件式 ( 20 笔自动跳页 ) #595
样板中属性调整如上图 ( 主要调整 X-Size : rest 与 浮动行为 : free )
Step4:主报表完成后先行上传确认画面正确,接着比照其格式调整子报表
说明:
完成子报表之程序段 #759
子报表中加入同主程序之格式(如 ORDER BY/ FORMAT/ BEFORE GROUP OF/ ON EVERY ROW 使结构相同)
样板调整方式同主报表 ( 加入单头区块,放置单头数据,依序完成单身与跳页 )
8.9.7 单身长字串分页显示
8.9.8 单身手绘表格的做法
1.在 ReportHeaders 跟 PageHeaders 下面分别建立一个 RHDetailHeaders 和PHDetailHeaders(放在 RH/PHMasters 下面),然后将原本的单身说明栏位放进去
2.自己建一个 detail01,里面放 details_box01_xx,将单身字段放进去; detail01 放在 subrep02 跟 03 之间 detail01 记得设置边框(为了显示线条)
3.将原本的 subrep02 跟 03 分别用一个左右横向容器包起来,记得修改容器属性
4.将原本的 detailtable 整个删掉
5.大功告成
T100 GR 报表常见知识点 (含套版制作)的更多相关文章
- mysql常见知识点总结
mysql常见知识点总结 参考: http://www.cnblogs.com/hongfei/archive/2012/10/20/2732516.html https://www.cnblogs. ...
- CompTIA Security+ 常见知识点
前言: Security+ 认证是一种中立第三方认证,其发证机构为美国计算机行业协会CompTIA: 是和CISSP.CISA等共同包含在内的国际IT业热门认证之一,和CISSP偏重信息安全管理相比, ...
- iOS 常见知识点(三):Lock
iOS 常见知识点(一):Runtime iOS 常见知识点(二):RunLoop 锁是最常用的同步工具.一段代码段在同一个时间只能允许被有限个线程访问,比如一个线程 A 进入需要保护代码之前添加简单 ...
- HTML+CSS+js常见知识点
一.HTML.CSS常见知识点 1.垂直居中盒子 /* 方法一 */ html, body { width: 100%; height: 100%; padding: 0; margin: 0; } ...
- Java 基础常见知识点&面试题总结(中),2022 最新版!| JavaGuide
你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 上篇:Java 基础常见知识点&面试题总结(上),2022 最新 ...
- Java 基础常见知识点&面试题总结(下),2022 最新版!
你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,同步一下最新更新,希望能够帮助你. 前两篇: Java 基础常见知识点&面试题总结(上),2022 最新版 ...
- MySQL 锁常见知识点&面试题总结
节选自 <MySQL 常见知识点&面试题总结> 表级锁和行级锁了解吗?有什么区别? MyISAM 仅仅支持表级锁(table-level locking),一锁就锁整张表,这在并发 ...
- Java 集合常见知识点&面试题总结(上),2022 最新版!
你好,我是 Guide.秋招即将到来(提前批已经开始),我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 你也可以在网站(javaguide.cn)上在线阅读, ...
- 【HTTP】HTTP 的15个常见知识点复习
前言 自从入职新公司到现在,我们前端团队内部一直在做 ?每周一练 的知识复习计划,我之前整理了一个 每周一练 之 数据结构与算法 学习内容,大家也快去看看~~ 最近三周,主要复习 网络基础 相关的知识 ...
随机推荐
- [Zjoi2006]三色二叉树(bzoj1864)(洛谷2585)题解
原题地址:https://www.luogu.org/problemnew/show/P2585 题目大意:可以把一个节点染成三种颜色,父节点和两个子节点(可以有一个)颜色不能相同.求最多(少)能有多 ...
- shell 文件比较符
文件夹不存在创建 if [ ! -d "/data/" ];then mkdir /data else echo "文件夹已经存在" fi 文件存在则删除 if ...
- Hash总结
算法介绍 这个没什么好说的,就是一段比较简单的代码,具体的话要看题目. 自然溢出 这个是比较好用而且容易被卡的一种Hash方式. 用\(2^{64}\)当模数然后做\(Hash\),常数比较小. 单模 ...
- GEO Gene Expression Omnibus
GEO Gene Expression Omnibus 基因表达数据库 网址:https://www.ncbi.nlm.nih.gov/geo/ GEO的数据存储方式 GEO数据库具体存放四类数据: ...
- c++笔试题 已迁移完成
转载 1.C和C++的特点与区别? 答:(1)C语言特点:1.作为一种面向过程的结构化语言,易于调试和维护: 2.表现能力和处理能力极强,可以直接访问内存的物理地址: 3.C语言实现了对硬件的编程操作 ...
- 自顶向下深入分析Netty(七)--ChannelPipeline和ChannelHandler总述
自顶向下深入分析Netty(七)--ChannelPipeline和ChannelHandler总述 自顶向下深入分析Netty(七)--ChannelPipeline源码实现 自顶向下深入分析Net ...
- Dubbo Filter详解
转载:https://www.jianshu.com/p/c5ebe3e08161 Dubbo的Filter在使用的过程中是我们扩展最频繁的内容,而且Dubbo的很多特性实现也都离不开Filter的工 ...
- vue的跳转方式(打开新页面)及传参
1. router-link跳转 // 直接写上跳转的地址 <router-link to="/detail/one"> <span class="sp ...
- Metasploit使用内网跳板, 扫描局域网主机
最近,拿到一台内网机器, 苦于无法使用nmap扫描改主机的内网, 所以才有此文 在跳板机子获取一定权限后,需要积极的向内网主机权限发展,获取指定的目标信息,探查系统漏洞,借助msf已经得到的meter ...
- C++中深入理解dynamic_cast
转载:https://blog.csdn.net/gaojing303504/article/details/78860773 dynamic_cast运算符的主要用途:将基类的指针或引用安全地转换成 ...