当前位置:主页>销售管理软件> 列表

如何能生成这样特殊的报表形式

销售管理软件版1楼: 报表形式大致如下:

姓名:Name004 | 姓名:Name003
------------------+------------------
姓名:Name005 | 姓名:Name002
------------------+------------------
姓名:Name006 | 姓名:Name001
第1页

姓名:Name010 | 姓名:Name009
------------------+------------------
姓名:Name011 | 姓名:Name008
------------------+------------------
姓名:Name012 | 姓名:Name007
第2页
它的格式比较特殊,数据排列方式是从右下->右上->左上->左下,形成两栏。
用什么报表控件可以生成这样的报表,如何做?

2楼: 还真稀奇,做几年软件还头一次见这种需求的。跟平时的分栏打印刚好相反。 如销售软件

3楼: 做一个临时数据库,让数据是按照这样的方式排序。
或者使用SQL语句时按照你这样的方式排序,接下来
你就可以使用任何一种报工具实现了。

4楼: 哈哈﹐杜撰的吧?在onneed?里寫數據吧﹐用二個查詢語句﹐


adoquery1定位到name004-->next
adoquery2定位到name003-->poior就行了。
第二頁重新計算﹐也很簡單﹐

5楼: 絕對行﹐絕對簡單﹐在quickrep1的onneeddata里寫(具體寫查一下)
adoquery1定位到name004-->next
adoquery2定位到name003-->prior就行了。
adoquery2也可降序next.
第二頁簡單重新計算一下﹐
思路就這樣。
等著領分了。

6楼: top
[:D]

销售管理软件版7楼: to hhmyz:能不能详细说明一下,写个例子代码。对QuickRep控件我不熟悉,您上面用了两个adoquery,是不是也要两个quickrep,并且还要用个什么合并的控件??

8楼: quickrep里的onneeddata是用來手動寫報表用的﹐此時不用要求與
adoquery關聯。Qrband設為rbdetail,上放qrlabel給其賦值即可。
with bpcsdm.CDSqrytemp1 do
begin
if not eof then
begin
qrlabel1.Caption:=fieldbyname(''m_cycle'').AsString;
qrlabel2.Caption:=fieldbyname(''m_special'').AsString;
next;
end;
if eof then
begin
moredata:=false;
first;
end
else moredata:=true;
end;
有多個adoquery一樣的處理方法﹐如同你寫程序一樣。

9楼: 楼上的,难道你不用考虑一页打印多少行吗?
这个必须事先知道,不然,怎么搞?

10楼: 只需将文字角度倒转,就跟平时报表一样啦。。
FR 3.18、RM 等 都有文字角度可调的。

11楼: Grid++Report可以,设多栏报表,打印方向可以设定:先上到下后左到右 || 先左到右后上到下。去 http://www.rubylong.cn 下载。

12楼: 自由界面和报表的完美解决方案!
http://www.anylib.com 如用友财务软件论坛



上一篇:请帮忙看一下,语句错在哪里?   下一篇:没有了