//提取動態交叉報表動態標題名和動態列值:
string ls_str, ls_str1, ls_name, ls_name_text, ls_text
long ll_cnt, ll_cnttmp, i, ll_row
dwobject ldwo
environment env
getenvironment(env)
ll_cnt = long(dw_2.describe('datawindow.column.count'))
//設定靜態模式
dw_2.modify('datawindow.crosstab.staticmode=yes')
ll_cnttmp = long(dw_2.describe('datawindow.column.count'))
for i = 0 to ll_cnttmp - ll_cnt
ls_name = dw_2.describe('#' + string(ll_cnt) + '.name')
//獲取動態標題名
if i = 0 then
ls_name_text = ls_name + '_t'
ls_text = dw_2.describe( ls_name_text + '.text')
else
ls_name_text = ls_name + '_t_' + string(i)
ls_text = dw_2.describe( ls_name_text + '.text')
end if
//獲取動態列名
ls_name = dw_2.describe('#' + string(ll_cnt + i) + '.name')
//當前pb版本
if env.pbmajorrevision > 6 then
//返回dwobject
ldwo = dw_2.object.__get_attribute( ls_name, true )
else
//pb6使用get_attribute返回dwobject
ldwo = dw_2.object.get_attribute( ls_name, true )
end if
//獲取動態列值
ls_str1 = ''
for ll_row = 1 to dw_2.rowcount()
ls_str1 += string( ldwo.primary[ll_row] ) + ','
next
'~t列:' + ls_name + '~t列值:' + ls_str1 + '~r~n'
next
//設回動態模式
dw_2.modify('datawindow.crosstab.staticmode=no')
messagebox( '', ls_str )
動態列 模板 複雜報表設計之動態報表
如上圖所示,可以需選擇不同的分組維度進行資料分析,例如類別 商維度 可以通過使用者輸入的引數值進行資料動態過濾,例如傳入不同 商 類別的值進行資料查詢過濾 可以選擇要顯示的附加字段資料 同時要求顯示有排名 每個分組內的資料從大到小顯示 佔比 產品占該分組維度總訂購量的百分比 此示例使用指令碼資料集完...
動態列 模板 複雜報表設計之動態報表
如上圖所示,可以需選擇不同的分組維度進行資料分析,例如類別 商維度 可以通過使用者輸入的引數值進行資料動態過濾,例如傳入不同 商 類別的值進行資料查詢過濾 可以選擇要顯示的附加字段資料 同時要求顯示有排名 每個分組內的資料從大到小顯示 佔比 產品占該分組維度總訂購量的百分比 此示例使用指令碼資料集完...
動態交叉表頭報表的製作
在資料資訊系統中,常常會看到這樣一類報表需求,它們的樣式為交叉報表的變形 既縱向分組擴充套件又橫向分組擴充套件,在交叉區域對統計項進行彙總 同時在縱向分組時,要求每個組跟隨乙個與分組相對應的橫向表頭。對比效果如下圖所示 從上圖可看到,報表縱向按照年進行分組擴充套件,同時每年又能生成乙個橫向分組表頭,...