/*******************************************************/
/* 如果不存在列头,系统返回。 */
/*******************************************************/
if NOT Lower(Right(ls_col, 2)) = "_t" then Return
string ls_columntext
string ls_column,ls_sort,ls_retrieveasneed
string ls_oldtext
string ls_oldsortcol,ls_temp
IF af_dwotype = "text" THEN
IF af_dwname.RowCount()<=0 THEN RETURN TRUE
ls_oldsortcol=af_dwname.Object.DataWindow.Table.Sort
ls_oldsortcol=left(ls_oldsortcol,len(ls_oldsortcol) - 2)
ls_column = Left(af_dwoname, Len(af_dwoname) - 2)
ls_oldtext=af_dwname.Describe(af_dwoname+".text")
ls_columntext = right(af_dwname.Describe(af_dwoname+".text"),2)
IF ls_columntext <>'↑' and ls_columntext <>'↓' THEN
af_dwname.Modify(af_dwoname+".text = '"+ls_oldtext+"↑'")
if ls_oldsortcol<>af_dwoname then //修改原排序列标题复原
ls_temp=af_dwname.Describe(ls_oldsortcol+"_t.text")
af_dwname.Modify(ls_oldsortcol+"_t.text = '"+mid(ls_temp,1,len(ls_temp) - 2)+"'")
end if
ELSEIF ls_columntext ='↓' THEN
af_dwname.Modify(af_dwoname+".text = '"+mid(ls_oldtext,1,len(ls_oldtext) - 2)+"'")
ls_sort = ""
END IF
ls_retrieveasneed = Upper(af_dwname.object.DataWindow.Retrieve.AsNeeded)
IF ls_retrieveasneed = "YES" THEN
af_dwname.object.DataWindow.Retrieve.AsNeeded = "NO"
af_dwname.SetSort(ls_sort)
af_dwname.Sort()
af_dwname.object.DataWindow.Retrieve.AsNeeded = "YES"
ELSE
af_dwname.SetSort(ls_sort)
af_dwname.Sort()
END IF
RETURN TRUE
ELSE
RETURN FALSE
END IF