//提取動態交叉報表動態標題名和動態列值:
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
ls_Str += '標題:' + ls_Name_Text + '~t標題名:' + ls_Text + &
'~t列:' + ls_Name + '~t列值:' + ls_Str1 + '~r~n'
NEXT
//設回動態模式
dw_2.Modify('datawindow.crosstab.staticmode=no')
MessageBox( '', ls_Str )
【PB】提取動態交叉報表動態標題名和動態列值
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.