這個用fastreport怎麼實現?想了好久也沒有想到辦法!大俠支招!(100分)

  • 主题发起人 主题发起人 rainbow0326
  • 开始时间 开始时间
R

rainbow0326

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一个表,字段为 a b0 b1 c0 c1 (b,c字段可以为空,a 不空)
值为 料 备1 备2 颜色1 颜色2
现在我要作查询,用fastreport作报表,实现以下形式:
-----------------------------
col1 col2 col3 |
料 | 备1 | 颜色1 |
| 备2 | 颜色2 |
-----------------------------
就是一列里面出现的不只一个字段的值,怎么实现??如有有效方法可以再加分!
我想过用child或主细表,但没有成功,可能是哪里想的不对,大侠们多指教了!
 
把master data band向下拉宽,以容纳两排memo:
------------------------------------------------
masterdata band
memo1 memo2 memo3
memo4 memo5
------------------------------------------------
 
to 樓上的
你說的方法不行,我只是舉了一部分的例子,我要做的是 b0-b10,c0-c10,而且b,c均可為空 ,就是說一個a不一定對應幾個b,而且好多a都只有一個b對應,你說的我都想過,不實際,哪位兄台有好的辦法啊?難道沒有人這麼做過?
 
你可以用以下SQL实现啊。
select leadtotable.* from
(select a,c1,b1 from table_name
union all
select a,c2,b2 from table_name) leadtotable
order by leadtotable.a
 
select leadtotable.* from
(select a,c1,b1 from table_name
union all
select a,c2,b2 from table_name
union all
select a,c3,b3 from table_name
union all
。。。
) leadtotable
order by leadtotable.a
 
樓上的朋友們,你們提示的sql語句要放在哪裡呢?
我的報表中的memo怎麼實現不定字段呢? 我沒有明白,還請多多指教!
 
我試著用child來實現,在master data中一memo中用腳本
if (b0<>null) then
showband(child1);
if (bo<>null) and (b1<>null) then
showband(child2);
可是這樣的話第二個if的行會重復第一個if的行,因為第二個if的條件包涵了第一個if的條件,但是我用if (b0<>null)and (b1=null) then
showband(child1);的形式就不會顯示child1,誰能告訴我這樣用為什麼不可以,那要怎麼用呢?
thank!!
 
if (b0<>null) then

begin
showband(child1);
if (b1<>null) then
showband(child2);
end;
 
TO 僂上
不行,因為宰顯示child2的時候的條件同樣滿足顯示child1的條件,所以還是會兩個child一起顯示
我想怎么能在顯示child2的時候條件不滿足child1的顯示條件
附:在b0--b9,如果b9<>null,那么(b8--b0)<>null,就是數據是按b0--b9的順序添的
 
用临时表产生你要的数据,显示临时表
 
你们说的都是用sql来实现,可是我的frreport中的字段怎么对应过去呢?
我目前想到的最好方法就是用child来做了,谁有更好的办法,因为我的想法做起来很麻烦
 
采用子band.
 
在查询数据时用上面的SQL语句试试。
 
多人接受答案了。
 
后退
顶部