没人可以解决吗? FastReport 单元格纵向合并 找管家婆软件教程下载
细名称 细编号 细单价 单位
1 Aaaaa 101 A1111 1001 5 元
11111
A2222 1002 6 元
22222
22222
A333 1003 8 元
合计 19 元
2 Bbbbbb 102 B1111 2001 9 元
11111
11111
111
B2222 2003 8 元
合计 17 元
类似金蝶 凭证查询的显示效果.
要求单元格纵向合并, 试了几天, 也没有办法,
2楼: 用DBGRIDEH 的打印功能可以实现的 如采购管理
3楼: 单元格的重复值合并吗?
但是要求的是每组的 前2列自动合并, 而月象excel 一样要画表格线的
4楼: 简单的单元格值重复合并是不行的,
还要求的是 如果跨页时 前2列底部还有一根横线要画
以前有人问过这样的问题, 但是不了了之了,
有人可以解决吗?
5楼: 没有作过 帮不上忙
6楼: 可以用FASTREPORT中的分组打印,你看一下里面的DEMO,里面都有的,
销售管理软件版7楼: 高版本的有suppressRepeated属性,置成true就OK了
8楼: 路过学习
9楼: to yangairong
可以用FASTREPORT中的分组打印,你看一下里面的DEMO,里面都有的,
to
高版本的有suppressRepeated属性,置成true就OK了
你们没有看清楚我的说明, 根本不行的!!!
这些我都试过了.
10楼: 用Remport的分组打印可以实现.
11楼: 见过的,只有DBGRIDEH有这个功能
12楼: 我也试着,使用重绘事件来实现,得判断相邻记录的字段值是不是一样,效率真不敢恭维,最后只好作罢.楼主有新招的话说一声啊. 如管家婆软件教程下载
13楼: 如果可以改进 2个功能
1.suppressrepeated, 不显示重复值 直到下一组,
2.Stretch, 自动伸展到下一组就可以啦?
这样作是不是最简单的?
销售管理软件版14楼: 或者把 分组头的 几个东东 放到 细项栏的 前面 就行了, 哈哈,
可是好象不好作呀.
15楼: 在分组头按条件分组,再放一个子面板汇总就搞定了。
16楼: to jake668
做做看好吗? 单据名称,单据编号的Memo如何只显示一个,如何自动调整高度?
如何在跨页中显示?
17楼: 放了几天, 没有热心人解决啊, 自已完成.
在主项数据Band的onbeforeprint 写如下脚本,
begin
v_group1 := [ADOQuery1."FORMNAME"]; // 分组的标识列
if v_group<>v_group1 then //如果是新组
begin
v_no := v_no + 1;
v_visible := True;
if not FinalPass then //第一遍报表
begin
arr_height[v_group1] := 20; //初始化每组高度
arr_no[v_group1] := v_no; //保存每组的序号
v_page := [PAGE#];
end;
end else
begin
v_visible := False;
if not FinalPass then //第一遍报表
begin
if (v_page=[PAGE#]) and ([FREESPACE]>=20) then //如果在同一页上
arr_height[v_group1] := arr_height[v_group1] + 20;
end;
end;
if FinalPass then //第二遍报表
begin
// 所有的分组列
Memo3.Visible := v_visible;
Memo3.Height := arr_height[v_group1];
Memo6.Visible := v_visible;
Memo6.Height := arr_height[v_group1];
// 序号
Memo6.Memo := Str(v_no); // 显示序号
end;
v_group := v_group1;
end
18楼: 如果是rm的话,单元格的重复值合并就可以很容易解决,不知fr行不行。
19楼: 多人接受答案了。