SlideShare une entreprise Scribd logo
1  sur  49
杰表 .2008 布局模型设计 杭州杰创软件拥有版权 .www.jatools.com
组件 @ 合计 @ 金额 @ 单价 @ 数量 @ 产品 @ 客户号 @ 类别号 @ 总序号   合计 金额 单价 数量 产品 客户号 类别号 总序号           数据库 4 11 13 oracle       台式机 4 9 12         笔记本 4 8 11 ibm       电脑配件 3 10 10       台式机 3 9 9         笔记本 3 8 8 ms 国外客户       面包 2 7 7       花生 2 6 6         巧克力 2 5 5 家乐福       牛奶 1 4 4       棕子 1 3 3       黄酒 1 2 2         色拉油 1 1 1 乐购 国内客户 合计 金额 单价 数量 产品 客户号 类别号 总序号  
简单列表   总计                           总分 姓名 学号   总计   @ 总分 @ 姓名 @ 学号 总分 姓名 学号
分组报表   总计       合计                   高二   合计             高一 总分 姓名 学号 班级   总计       合计       @ 班级 总分 姓名 学号 班级
双表连接                                               * 金额 单价 备件数量 备件名称 备件号 序号 索赔备件                                   *       工时名称 工时代码 序号 索赔维修项           * 金额 单价 备件数量 备件名称 备件号 序号 索赔备件           *       工时名称 工时代码 序号 索赔维修项
固定格式表 0.00  0.00    0.00  0.00  五、净利润 028       减:其他 027       加:其他 026       减:所得税 025   0.00  0.00  四、利润总额 024       加:以前年度损益调整 023       其他 022       减:营业外支出 021       其他 020       营业外收入 019       补贴收入 018       加:投资收益 017   0.00  0.00  三、营业利润 016       其他 015       财务费用 014       减:管理费用 013       加:其他业务利润 012   0.00  0.00  二、销售利润 011       减:其他 010       加:其他 009       销售税金及附加 008       销售费用 007       减:销售成本 006   0.00  0.00  销售收入净额 005       减:销售折扣与折让 004       一、销售收入 003 键 ( 虚拟列 ) 本年累计数 本月数 002   001 本年累计数 本月数 科目 行次
交叉报表                 欧洲                  北美                  东南亚                  小计                 台湾                 澳门                 香港                 大陆 大中华区 小计 电脑配件 笔记本 台式机 小计 2006 2005   按类别 应收款 年份   1 4 1 3 1 2 4 1 3 1 2 1 1 1 小区 大区                                                         小区 大区 2006 2005                                           小区 大区 应收款                                                                       小区 大区 电脑配件 笔记本 台式机               小计   @ 电脑配件 @ 笔记本 @ 台式机 @ 应收款   @ 销售额 @ 小区 @ 大区 小计 电脑配件 笔记本 台式机 小计 @ 年份->   按类别 应收款 年份  
布局诀 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
从表数据集扩展 ,[object Object],[object Object],3 冰箱 1994 4 冰箱 1994 3 冰箱 1993 2 洗衣机 1992 1 洗衣机 1991 1 冰箱 1991 1 电视机 1991 销售额 产品 年     2 1 洗衣机 7 3   1 冰箱       1 电视机 1994 1993 1992 1991 产品
从表数据集扩展 ( 多级 ) ,[object Object],[object Object],[object Object],... ... ... ... 1 洗衣机   1991 1 冰箱 1 1991 1 电视机 1 1991 销售额 产品 季度 年   2 1     2 1 洗衣机 7   1 7 3   1 冰箱     1       1 电视机 1992/* 1992/2 1992/1 1991/* 1991/3 1991/2 1991/1 产品
直连 ,[object Object],[object Object],[object Object],[object Object],A B C D 100 电脑 20 洗衣机 60 冰箱 100 电视机 库存数 产品     2 1 洗衣机 7 3   1 冰箱       1 电视机 1994 1993 1992 1991 产品 40 空调 20 洗衣机 60 冰箱 100 电视机 应收款 产品         2 1 洗衣机 40 空调 20 洗衣机           20 洗衣机 60 冰箱 7 3   1 冰箱 60 冰箱 100 电视机       1 电视机 100 电视机 库存数 产品 1994 1993 1992 1991 产品 应收款 产品
合集中的列 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
简单布局 ,[object Object],[object Object],1. 数据合集 (D) a b c 2. 设计时布局 3. 预览效果 = 库存数 = 销售额 = 应收款 = 产品 库存数 = 年份 -> 应收款 产品       2 1 40 空调 20         20 洗衣机 60 7 3   1 60 冰箱 100       1 100 电视机 库存数 1994 1993 1992 1991 应收款 产品         2 1 洗衣机 40 空调 20 洗衣机           20 洗衣机 60 冰箱 7 3   1 冰箱 60 冰箱 100 电视机       1 电视机 100 电视机 库存数 产品 1994 1993 1992 1991 产品 应收款 产品
主表布局 ,[object Object],[object Object],空调 40 空调 洗衣机 20 洗衣机 冰箱 60 冰箱 电视机 100 电视机 null 应收款 产品 主键   20 60 100 库存数 = 库存数 = 应收款 = 产品 库存数 应收款 产品
堆叠交叉 销售额(地区,客户,年,季) 销售额(地区,客户,年,*) 销售额(地区,*,年,季) 销售额(地区,*,年,*) 销售额(产品,年,季) 销售额(产品,年,*) = 销售额 = 销售额 产品 = 销售额 = 销售额 合计 = 销售额 = 销售额 = 客户 = 地区 合计 = 季度 = 年度
合集数据引用 ,[object Object],[object Object],      合计       = 客户 = 地区 合计 = 季 应收款 = 年                   * *       * 华北                 * 华东                 天津 华北                 北京 华北                 南京 华东                 杭州 华东                   上海 华东 应收款 * * * 2 1 3 2 1 客户 地区   * 1992 1991 1992 1992 1991 1991 1991    
合集数据引用 ( 一 ) 规则一:是先定位列 , 后定位行 =销售{年,季}{地区,客户} =应收款 {地区,客户} 列定位  行定位 列定位  行定位 静态列时定位  动态列时定位 = 应收款 { 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() 合计 = 应收款 { 地区 , 客户 } = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 } = 客户 = 地区 合计 = 季 应收款 = 年  
合集数据引用 ( 二 ) 规则二:行或列满键时,可以省去 =销售  // 等价,列键,行键均满 =应收款.sum()  // 等价 = 应收款 { 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() 合计 = 应收款 { 地区 , 客户 } = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 } = 客户 = 地区 合计 = 季 应收款 = 年  
合集数据引用 ( 三 ) 规则二:引用上级,可特指行列键 =销售 / 销售{年}{地区,客户}  // 等价,意即本季与本年合计所占比重 = 应收款 .sum() = 销售 .sum() = 销售 .sum() 合计 = 应收款 = 销售 .sum() = 销售  /  销售 { 年 } = 客户 = 地区 合计 = 季 应收款 = 年  
合集数据引用 ( 四 ) this =销售{年,*}  <=>  =销售{年} =销售{NEXT.年,*}  <=>  =销售{NEXT.年} =销售{*,*}  <=>  =销售{*} =销售{PREV.年,*}  <=>  =销售{PREV.年} =销售{年,PREV.季}  =销售{年,NEXT.季}  =销售{PREV.年,季}  // 去年同期 =销售{NEXT.年,季}  // 下年同季 * * * 1994 * 1993 * 1992 2 1994 1 1994 4 1993 3 1993 2 1993 1 1993 3 1992 2 1992 1 1992
合集上下文 合集数据列, 数据列,动态树 销售,应收款,应付款 行组树
合集上下文 = 年 季 应收款余额  <=>  = 应收款余额 = 年 应收款余额  <=>  = 年 应收款余额 =*应收款余额  = 年 地区 城市 销售  = 年 地区 销售  =*销售  = 销售
合集上下文 灌入变量 : 年度 [.=1991]@ 季度 .sum()  季度 应收款余额 地区 城市 销售
合集上下文 有游标的情况下 , 年度 =1991, 季度 =1 @ 销售额 季度  销售额 年度 季度  销售额  上述等价  年度 [.=1991]季度 [1] 销售额 年度 [postion()-1]@ 销售额 .sum()  上一年度销售额总计 年度 [postion()-1]季度 [.=ANY] 销售额 .sum() 等价 年度[postion()-1]度[.=@季度]销售额.sum() 去年同季销售额 年度 [postion()-1]季度 [].=] 季度  销售额  1991  年 1 季度销售额 年度 @ 销售额 .sum()  1991 的销售额总计
合集上下文 销售表 . 应收款余额 { 华北 城市 }{ 年 季 }
合集数据引用公式 =销售{年,月}{地区,客户}  // 等价 =应收款{地区,客户}  // 等价 =销售{年,月}{地区,客户}.sum()  // 等价 以下二个公式等价 =销售{年}{地区,客户}.sum() =销售{年}.sum() = 应收款 .sum() = 销售 .sum() = 销售 .sum() 合计 = 应收款 = 销售 .sum() = 销售 = 客户 = 地区 合计 = 季 应收款 = 年  
从表模板扩展 A 表A打印后,模板被横向扩展 规则: 同列,同宽的表被扩展 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 产品 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 合计 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 客户 = 地区 合计 四季度 三季度 二季度 一季度 合计 四季度 二季度 一季度 2000 2000 = 销售额 = 销售额 产品 = 销售额 = 销售额 合计 = 销售额 = 销售额 = 客户 = 地区 合计 = 季度 = 年度
纵向扩展 ( 打印扩展 ) A 表B随表A向下打印 规则: 同行,同高的表被打印 打印扩展不扩展模板 B = 销售额 = 销售额 产品 = 销售额 = 销售额 合计 = 销售额 = 销售额 = 客户 = 地区 合计 = 季度 = 年度 6 1 2   3 8 2   6 合计 1       1 3     3 杭州华信科技 1 1       2     2 南京巨人系统公司 4   2   2 3 2   1 上海光明软件公司 华东 合计 四季度 三季度 二季度 一季度 合计 四季度 二季度 一季度 2000 2000
超级 cell 打印流程 ,[object Object],1. 表格打印流程
 
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
同期比 ( 普通列表中 ) 报表数据/年度销售表 Row 38 160 1994 2 122 1993 20 120 1992 - 100 1991 与去年增加 销售额 年 160 1994 122 1993 120 1992 100 1991 销售额 年 =PRE. 销售额 - 销售额 = 销售额 = 年度 与去年增加 销售额 年
字段类型 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
同期比 ( 交叉报表中 )       合计   = 销售 .sum()- 销售 {PRE. 年 }.sum()   = 地区表 . 客户 = 地区表 . 地区 合计 比上年增长 = 季 = 年  
字段类型 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],= 国家表 .area.sum() =area
两类特殊变量 (ValueAlways,ValueIfClosed) 节点变量(NodeVariable) 在任何时候,不管是否收尾都返回value() 要取得节点变量本身,须调用NameSpace.getLocalVariable(String) 节点字段(NodeField)  只有在收尾时,返回为value(),在其他时候,返回本身 节点变量,实现 ValueAnyway 表示在任何时候,都返回value() 节点字段,实现 ValueIfClosed 表示在收尾时,才返回取值
索引字段的引用路线
占比 ( 普通列表中 ) = 销售额 / 销售额 .sum() = 销售额 = 年度 与去年增加 销售额 年
占比 ( 交叉报表中 )       合计   = 销售 .sum()/ 销售 { 年 }.sum()   = 地区表 . 客户 = 地区表 . 地区 合计 占全年比 = 季 = 年  
Table 对象 1. table布局只在 paint()时发生 2. table children 布局 由 gridLayout 进行布局 3. table list中的list,由顶层对象布局,借助cell信息 Component[] cellstore Component[] liststore Vector getChildren() √ √ √ √ 深层列表 √ √ 插入列 √ √ 插入列 √ √ 删除行 √ √ 插入行 √ 撤销合并单元格 √ 合并单元格 顶层列表 单元格对象 操作
PowerTable 对象 1. table布局只在 paint()时发生 2. table children 布局 由 gridLayout 进行布局 3. table list中的list,由顶层对象布局,借助cell信息 Component[] cellstore Component[] liststore Vector getChildren() √ √ √ √ 深层列表 √ √ 插入列 √ √ 插入列 √ √ 删除行 √ √ 插入行 √ 撤销合并单元格 √ 合并单元格 顶层列表 单元格对象 操作
Field解析流程
ReportPrinter.print流程
 
- - ColumnPanel - - RowPanel TableView TableLayout Table CompoundView FreeLayout Panel PageView PageLayout Page View 布局 组件名称
单元格变宽处理 size-mode: fixed | auto auto: 自动可包含内容的最小宽度 fixed: 固定,超出部分截掉 表格打印中,auto组件,将判断实际高度,使其满足其最小需要 fixed组件,则按实际行高列宽分配 对于跨行单元格超出部分,按算法给出
单元格分页处理 size-mode: fixed | auto auto: 自动可包含内容的最小宽度 fixed: 固定,超出部分截掉 表格打印中,auto组件,将判断实际高度,使其满足其最小需要 fixed组件,则按实际行高列宽分配 对于跨行单元格超出部分,按算法给出
杰表2008功能列表 2. 静态表格,类似excel,支持excel行列引用及计算,支持自定义行列索引 3.支持jdbc,bean,csv数据源 4.支持外部xml数据源 5.支持多层不平衡交叉表 6.支持套打 7.支持超链接,文本,图片,统计图 8.支持tooltip,对文本,图片,统计图 9.支持表格固定行列标题 10.支持表格分组缩放, 11.支持统计图,flash,gif,png,等输出格式 12.支持参数查询表单生成,支持文本,日期,下拉,列表,等 13.支持填报,使用插件方式
杰表2008工作单 1. 功能完善 2. 文档(使用说明,flash使用说明,flash白皮书,功能对比) 3. 广告 4. 招聘,招代理 $model.sort_asc(“/root/demos/Row”,”姓名”); $model.sort_desc(“/root/demos/Row,”姓名.sum()”); =!{/root/demos/Row}.sort_asc(“姓名”); =!{/root/demos/地区}.sort_desc(“销售额.sum()”);

Contenu connexe

En vedette

G8 Net Game Andrea Calderaro
G8 Net Game Andrea CalderaroG8 Net Game Andrea Calderaro
G8 Net Game Andrea CalderaroMarco Binotto
 
Forza apresentação
Forza   apresentaçãoForza   apresentação
Forza apresentaçãoForza-POA
 
Beautiful+Pictures
Beautiful+PicturesBeautiful+Pictures
Beautiful+Picturesjmd102
 
A caixa e_a_habitação_rural_caderno_1
A caixa e_a_habitação_rural_caderno_1A caixa e_a_habitação_rural_caderno_1
A caixa e_a_habitação_rural_caderno_1Ely Barros
 
Presentacion de power slideshare
Presentacion de power  slidesharePresentacion de power  slideshare
Presentacion de power slidesharefredher
 
名媛1930_宋路霞_做个心灵富有的人
名媛1930_宋路霞_做个心灵富有的人名媛1930_宋路霞_做个心灵富有的人
名媛1930_宋路霞_做个心灵富有的人名媛荟 my1930
 
Applicazioni Della Ralstonia De Tusculanense
Applicazioni Della Ralstonia De TusculanenseApplicazioni Della Ralstonia De Tusculanense
Applicazioni Della Ralstonia De TusculanenseLe Scienze Web News
 
Ocplab Editoriali di Marco Catino
Ocplab Editoriali di Marco CatinoOcplab Editoriali di Marco Catino
Ocplab Editoriali di Marco CatinoMarco Binotto
 
שנה טובה- רימונים- גרפי
שנה טובה- רימונים- גרפישנה טובה- רימונים- גרפי
שנה טובה- רימונים- גרפיgiltsuri
 
Evaluacion del desempeño y comprensación variable presentation transcript
Evaluacion del desempeño y comprensación variable   presentation transcriptEvaluacion del desempeño y comprensación variable   presentation transcript
Evaluacion del desempeño y comprensación variable presentation transcriptguest0dfd750
 
名媛1930_宋路霞_小提琴的力量
名媛1930_宋路霞_小提琴的力量名媛1930_宋路霞_小提琴的力量
名媛1930_宋路霞_小提琴的力量名媛荟 my1930
 

En vedette (20)

G8 Net Game Andrea Calderaro
G8 Net Game Andrea CalderaroG8 Net Game Andrea Calderaro
G8 Net Game Andrea Calderaro
 
Forza apresentação
Forza   apresentaçãoForza   apresentação
Forza apresentação
 
Haikus dia libro
Haikus dia libroHaikus dia libro
Haikus dia libro
 
Beautiful+Pictures
Beautiful+PicturesBeautiful+Pictures
Beautiful+Pictures
 
Taller
TallerTaller
Taller
 
A caixa e_a_habitação_rural_caderno_1
A caixa e_a_habitação_rural_caderno_1A caixa e_a_habitação_rural_caderno_1
A caixa e_a_habitação_rural_caderno_1
 
Presentacion de power slideshare
Presentacion de power  slidesharePresentacion de power  slideshare
Presentacion de power slideshare
 
名媛1930_宋路霞_做个心灵富有的人
名媛1930_宋路霞_做个心灵富有的人名媛1930_宋路霞_做个心灵富有的人
名媛1930_宋路霞_做个心灵富有的人
 
Norma 2015
Norma 2015Norma 2015
Norma 2015
 
Biologia I
Biologia IBiologia I
Biologia I
 
Psicoactivos
PsicoactivosPsicoactivos
Psicoactivos
 
專題總結
專題總結專題總結
專題總結
 
Applicazioni Della Ralstonia De Tusculanense
Applicazioni Della Ralstonia De TusculanenseApplicazioni Della Ralstonia De Tusculanense
Applicazioni Della Ralstonia De Tusculanense
 
Catologo
CatologoCatologo
Catologo
 
Libis
LibisLibis
Libis
 
Ocplab Editoriali di Marco Catino
Ocplab Editoriali di Marco CatinoOcplab Editoriali di Marco Catino
Ocplab Editoriali di Marco Catino
 
שנה טובה- רימונים- גרפי
שנה טובה- רימונים- גרפישנה טובה- רימונים- גרפי
שנה טובה- רימונים- גרפי
 
Evaluacion del desempeño y comprensación variable presentation transcript
Evaluacion del desempeño y comprensación variable   presentation transcriptEvaluacion del desempeño y comprensación variable   presentation transcript
Evaluacion del desempeño y comprensación variable presentation transcript
 
Los ninos
Los ninosLos ninos
Los ninos
 
名媛1930_宋路霞_小提琴的力量
名媛1930_宋路霞_小提琴的力量名媛1930_宋路霞_小提琴的力量
名媛1930_宋路霞_小提琴的力量
 

Similaire à 杰表.2008布局模型设计

網舖班 成本管控與分析
網舖班 成本管控與分析網舖班 成本管控與分析
網舖班 成本管控與分析Chih-Sean Chen
 
香港六合彩
香港六合彩香港六合彩
香港六合彩zhanghu
 
六合彩
六合彩六合彩
六合彩haoqi
 
光電業、半導體業、紡織業、航運業產業分析報告.pdf
光電業、半導體業、紡織業、航運業產業分析報告.pdf光電業、半導體業、紡織業、航運業產業分析報告.pdf
光電業、半導體業、紡織業、航運業產業分析報告.pdfssuser3b8383
 
Mysql开发与优化
Mysql开发与优化Mysql开发与优化
Mysql开发与优化isnull
 
QM-041-品管七大手法訓練
QM-041-品管七大手法訓練QM-041-品管七大手法訓練
QM-041-品管七大手法訓練handbook
 
构建Excel模板进行长期投资决策
构建Excel模板进行长期投资决策构建Excel模板进行长期投资决策
构建Excel模板进行长期投资决策chenv
 
新觀念的VB6教本ch05
新觀念的VB6教本ch05新觀念的VB6教本ch05
新觀念的VB6教本ch05jameschsc
 
第九章 營運風險的 衡量與管理
第九章 營運風險的 衡量與管理第九章 營運風險的 衡量與管理
第九章 營運風險的 衡量與管理5045033
 
ECA考前衝刺 101 v1
ECA考前衝刺 101 v1ECA考前衝刺 101 v1
ECA考前衝刺 101 v1Jouston Huang
 
Are the fama and french factors global or country specific?
Are the fama and french factors global or country specific?Are the fama and french factors global or country specific?
Are the fama and french factors global or country specific?Stephan Chang
 
杰表.2008数据模型设计
杰表.2008数据模型设计杰表.2008数据模型设计
杰表.2008数据模型设计guest07ce405
 
102年度記帳士班第二次測驗解答
102年度記帳士班第二次測驗解答102年度記帳士班第二次測驗解答
102年度記帳士班第二次測驗解答Shimin Lin
 
觀光財務管理Ch06
觀光財務管理Ch06觀光財務管理Ch06
觀光財務管理Ch06guestcd4445
 

Similaire à 杰表.2008布局模型设计 (16)

網舖班 成本管控與分析
網舖班 成本管控與分析網舖班 成本管控與分析
網舖班 成本管控與分析
 
Ch10 習題
Ch10 習題Ch10 習題
Ch10 習題
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
六合彩
六合彩六合彩
六合彩
 
光電業、半導體業、紡織業、航運業產業分析報告.pdf
光電業、半導體業、紡織業、航運業產業分析報告.pdf光電業、半導體業、紡織業、航運業產業分析報告.pdf
光電業、半導體業、紡織業、航運業產業分析報告.pdf
 
Mysql开发与优化
Mysql开发与优化Mysql开发与优化
Mysql开发与优化
 
QM-041-品管七大手法訓練
QM-041-品管七大手法訓練QM-041-品管七大手法訓練
QM-041-品管七大手法訓練
 
构建Excel模板进行长期投资决策
构建Excel模板进行长期投资决策构建Excel模板进行长期投资决策
构建Excel模板进行长期投资决策
 
新觀念的VB6教本ch05
新觀念的VB6教本ch05新觀念的VB6教本ch05
新觀念的VB6教本ch05
 
第九章 營運風險的 衡量與管理
第九章 營運風險的 衡量與管理第九章 營運風險的 衡量與管理
第九章 營運風險的 衡量與管理
 
ECA考前衝刺 101 v1
ECA考前衝刺 101 v1ECA考前衝刺 101 v1
ECA考前衝刺 101 v1
 
Are the fama and french factors global or country specific?
Are the fama and french factors global or country specific?Are the fama and french factors global or country specific?
Are the fama and french factors global or country specific?
 
杰表.2008数据模型设计
杰表.2008数据模型设计杰表.2008数据模型设计
杰表.2008数据模型设计
 
3
33
3
 
102年度記帳士班第二次測驗解答
102年度記帳士班第二次測驗解答102年度記帳士班第二次測驗解答
102年度記帳士班第二次測驗解答
 
觀光財務管理Ch06
觀光財務管理Ch06觀光財務管理Ch06
觀光財務管理Ch06
 

杰表.2008布局模型设计

  • 1. 杰表 .2008 布局模型设计 杭州杰创软件拥有版权 .www.jatools.com
  • 2. 组件 @ 合计 @ 金额 @ 单价 @ 数量 @ 产品 @ 客户号 @ 类别号 @ 总序号   合计 金额 单价 数量 产品 客户号 类别号 总序号           数据库 4 11 13 oracle       台式机 4 9 12         笔记本 4 8 11 ibm       电脑配件 3 10 10       台式机 3 9 9         笔记本 3 8 8 ms 国外客户       面包 2 7 7       花生 2 6 6         巧克力 2 5 5 家乐福       牛奶 1 4 4       棕子 1 3 3       黄酒 1 2 2         色拉油 1 1 1 乐购 国内客户 合计 金额 单价 数量 产品 客户号 类别号 总序号  
  • 3. 简单列表   总计                           总分 姓名 学号   总计   @ 总分 @ 姓名 @ 学号 总分 姓名 学号
  • 4. 分组报表   总计       合计                   高二   合计             高一 总分 姓名 学号 班级   总计       合计       @ 班级 总分 姓名 学号 班级
  • 5. 双表连接                                               * 金额 单价 备件数量 备件名称 备件号 序号 索赔备件                                   *       工时名称 工时代码 序号 索赔维修项           * 金额 单价 备件数量 备件名称 备件号 序号 索赔备件           *       工时名称 工时代码 序号 索赔维修项
  • 6. 固定格式表 0.00 0.00   0.00 0.00 五、净利润 028       减:其他 027       加:其他 026       减:所得税 025   0.00 0.00 四、利润总额 024       加:以前年度损益调整 023       其他 022       减:营业外支出 021       其他 020       营业外收入 019       补贴收入 018       加:投资收益 017   0.00 0.00 三、营业利润 016       其他 015       财务费用 014       减:管理费用 013       加:其他业务利润 012   0.00 0.00 二、销售利润 011       减:其他 010       加:其他 009       销售税金及附加 008       销售费用 007       减:销售成本 006   0.00 0.00 销售收入净额 005       减:销售折扣与折让 004       一、销售收入 003 键 ( 虚拟列 ) 本年累计数 本月数 002   001 本年累计数 本月数 科目 行次
  • 7. 交叉报表                 欧洲                  北美                  东南亚                  小计                 台湾                 澳门                 香港                 大陆 大中华区 小计 电脑配件 笔记本 台式机 小计 2006 2005   按类别 应收款 年份   1 4 1 3 1 2 4 1 3 1 2 1 1 1 小区 大区                                                         小区 大区 2006 2005                                           小区 大区 应收款                                                                       小区 大区 电脑配件 笔记本 台式机               小计   @ 电脑配件 @ 笔记本 @ 台式机 @ 应收款   @ 销售额 @ 小区 @ 大区 小计 电脑配件 笔记本 台式机 小计 @ 年份->   按类别 应收款 年份  
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. 堆叠交叉 销售额(地区,客户,年,季) 销售额(地区,客户,年,*) 销售额(地区,*,年,季) 销售额(地区,*,年,*) 销售额(产品,年,季) 销售额(产品,年,*) = 销售额 = 销售额 产品 = 销售额 = 销售额 合计 = 销售额 = 销售额 = 客户 = 地区 合计 = 季度 = 年度
  • 16.
  • 17. 合集数据引用 ( 一 ) 规则一:是先定位列 , 后定位行 =销售{年,季}{地区,客户} =应收款 {地区,客户} 列定位 行定位 列定位 行定位 静态列时定位 动态列时定位 = 应收款 { 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() 合计 = 应收款 { 地区 , 客户 } = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 } = 客户 = 地区 合计 = 季 应收款 = 年  
  • 18. 合集数据引用 ( 二 ) 规则二:行或列满键时,可以省去 =销售 // 等价,列键,行键均满 =应收款.sum() // 等价 = 应收款 { 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() 合计 = 应收款 { 地区 , 客户 } = 销售 { 年 , 季 }{ 地区 , 客户 }.sum() = 销售 { 年 , 季 }{ 地区 , 客户 } = 客户 = 地区 合计 = 季 应收款 = 年  
  • 19. 合集数据引用 ( 三 ) 规则二:引用上级,可特指行列键 =销售 / 销售{年}{地区,客户} // 等价,意即本季与本年合计所占比重 = 应收款 .sum() = 销售 .sum() = 销售 .sum() 合计 = 应收款 = 销售 .sum() = 销售 / 销售 { 年 } = 客户 = 地区 合计 = 季 应收款 = 年  
  • 20. 合集数据引用 ( 四 ) this =销售{年,*} <=> =销售{年} =销售{NEXT.年,*} <=> =销售{NEXT.年} =销售{*,*} <=> =销售{*} =销售{PREV.年,*} <=> =销售{PREV.年} =销售{年,PREV.季} =销售{年,NEXT.季} =销售{PREV.年,季} // 去年同期 =销售{NEXT.年,季} // 下年同季 * * * 1994 * 1993 * 1992 2 1994 1 1994 4 1993 3 1993 2 1993 1 1993 3 1992 2 1992 1 1992
  • 21. 合集上下文 合集数据列, 数据列,动态树 销售,应收款,应付款 行组树
  • 22. 合集上下文 = 年 季 应收款余额 <=> = 应收款余额 = 年 应收款余额 <=> = 年 应收款余额 =*应收款余额 = 年 地区 城市 销售 = 年 地区 销售 =*销售 = 销售
  • 23. 合集上下文 灌入变量 : 年度 [.=1991]@ 季度 .sum() 季度 应收款余额 地区 城市 销售
  • 24. 合集上下文 有游标的情况下 , 年度 =1991, 季度 =1 @ 销售额 季度 销售额 年度 季度 销售额 上述等价 年度 [.=1991]季度 [1] 销售额 年度 [postion()-1]@ 销售额 .sum() 上一年度销售额总计 年度 [postion()-1]季度 [.=ANY] 销售额 .sum() 等价 年度[postion()-1]度[.=@季度]销售额.sum() 去年同季销售额 年度 [postion()-1]季度 [].=] 季度 销售额 1991 年 1 季度销售额 年度 @ 销售额 .sum() 1991 的销售额总计
  • 25. 合集上下文 销售表 . 应收款余额 { 华北 城市 }{ 年 季 }
  • 26. 合集数据引用公式 =销售{年,月}{地区,客户} // 等价 =应收款{地区,客户} // 等价 =销售{年,月}{地区,客户}.sum() // 等价 以下二个公式等价 =销售{年}{地区,客户}.sum() =销售{年}.sum() = 应收款 .sum() = 销售 .sum() = 销售 .sum() 合计 = 应收款 = 销售 .sum() = 销售 = 客户 = 地区 合计 = 季 应收款 = 年  
  • 27. 从表模板扩展 A 表A打印后,模板被横向扩展 规则: 同列,同宽的表被扩展 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 产品 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 合计 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 销售额 = 客户 = 地区 合计 四季度 三季度 二季度 一季度 合计 四季度 二季度 一季度 2000 2000 = 销售额 = 销售额 产品 = 销售额 = 销售额 合计 = 销售额 = 销售额 = 客户 = 地区 合计 = 季度 = 年度
  • 28. 纵向扩展 ( 打印扩展 ) A 表B随表A向下打印 规则: 同行,同高的表被打印 打印扩展不扩展模板 B = 销售额 = 销售额 产品 = 销售额 = 销售额 合计 = 销售额 = 销售额 = 客户 = 地区 合计 = 季度 = 年度 6 1 2   3 8 2   6 合计 1       1 3     3 杭州华信科技 1 1       2     2 南京巨人系统公司 4   2   2 3 2   1 上海光明软件公司 华东 合计 四季度 三季度 二季度 一季度 合计 四季度 二季度 一季度 2000 2000
  • 29.
  • 30.  
  • 31.
  • 32. 同期比 ( 普通列表中 ) 报表数据/年度销售表 Row 38 160 1994 2 122 1993 20 120 1992 - 100 1991 与去年增加 销售额 年 160 1994 122 1993 120 1992 100 1991 销售额 年 =PRE. 销售额 - 销售额 = 销售额 = 年度 与去年增加 销售额 年
  • 33.
  • 34. 同期比 ( 交叉报表中 )       合计   = 销售 .sum()- 销售 {PRE. 年 }.sum()   = 地区表 . 客户 = 地区表 . 地区 合计 比上年增长 = 季 = 年  
  • 35.
  • 36. 两类特殊变量 (ValueAlways,ValueIfClosed) 节点变量(NodeVariable) 在任何时候,不管是否收尾都返回value() 要取得节点变量本身,须调用NameSpace.getLocalVariable(String) 节点字段(NodeField) 只有在收尾时,返回为value(),在其他时候,返回本身 节点变量,实现 ValueAnyway 表示在任何时候,都返回value() 节点字段,实现 ValueIfClosed 表示在收尾时,才返回取值
  • 38. 占比 ( 普通列表中 ) = 销售额 / 销售额 .sum() = 销售额 = 年度 与去年增加 销售额 年
  • 39. 占比 ( 交叉报表中 )       合计   = 销售 .sum()/ 销售 { 年 }.sum()   = 地区表 . 客户 = 地区表 . 地区 合计 占全年比 = 季 = 年  
  • 40. Table 对象 1. table布局只在 paint()时发生 2. table children 布局 由 gridLayout 进行布局 3. table list中的list,由顶层对象布局,借助cell信息 Component[] cellstore Component[] liststore Vector getChildren() √ √ √ √ 深层列表 √ √ 插入列 √ √ 插入列 √ √ 删除行 √ √ 插入行 √ 撤销合并单元格 √ 合并单元格 顶层列表 单元格对象 操作
  • 41. PowerTable 对象 1. table布局只在 paint()时发生 2. table children 布局 由 gridLayout 进行布局 3. table list中的list,由顶层对象布局,借助cell信息 Component[] cellstore Component[] liststore Vector getChildren() √ √ √ √ 深层列表 √ √ 插入列 √ √ 插入列 √ √ 删除行 √ √ 插入行 √ 撤销合并单元格 √ 合并单元格 顶层列表 单元格对象 操作
  • 44.  
  • 45. - - ColumnPanel - - RowPanel TableView TableLayout Table CompoundView FreeLayout Panel PageView PageLayout Page View 布局 组件名称
  • 46. 单元格变宽处理 size-mode: fixed | auto auto: 自动可包含内容的最小宽度 fixed: 固定,超出部分截掉 表格打印中,auto组件,将判断实际高度,使其满足其最小需要 fixed组件,则按实际行高列宽分配 对于跨行单元格超出部分,按算法给出
  • 47. 单元格分页处理 size-mode: fixed | auto auto: 自动可包含内容的最小宽度 fixed: 固定,超出部分截掉 表格打印中,auto组件,将判断实际高度,使其满足其最小需要 fixed组件,则按实际行高列宽分配 对于跨行单元格超出部分,按算法给出
  • 48. 杰表2008功能列表 2. 静态表格,类似excel,支持excel行列引用及计算,支持自定义行列索引 3.支持jdbc,bean,csv数据源 4.支持外部xml数据源 5.支持多层不平衡交叉表 6.支持套打 7.支持超链接,文本,图片,统计图 8.支持tooltip,对文本,图片,统计图 9.支持表格固定行列标题 10.支持表格分组缩放, 11.支持统计图,flash,gif,png,等输出格式 12.支持参数查询表单生成,支持文本,日期,下拉,列表,等 13.支持填报,使用插件方式
  • 49. 杰表2008工作单 1. 功能完善 2. 文档(使用说明,flash使用说明,flash白皮书,功能对比) 3. 广告 4. 招聘,招代理 $model.sort_asc(“/root/demos/Row”,”姓名”); $model.sort_desc(“/root/demos/Row,”姓名.sum()”); =!{/root/demos/Row}.sort_asc(“姓名”); =!{/root/demos/地区}.sort_desc(“销售额.sum()”);