需求,我們有一個任務(wù)執(zhí)行后,需要對這個任務(wù)做后做評價。為此與任務(wù)系統(tǒng)集成通過3000功能點定義了一個任務(wù)評分的功能點。任務(wù)評分后,不能通過新增,對這個任務(wù)再次增加一個評分。因此第一個任務(wù)評分后,需要將頁面按鈕(新增)隱藏掉
腳本列子
— 功能:
— 3000 功能點 列出與某一個taskid相關(guān)的數(shù)據(jù)
— 若列出數(shù)據(jù)已經(jīng)有,將 新增 頁面按鈕屏蔽 (這個功能是做任務(wù)評測結(jié)果的,結(jié)果只能有一個,不可能多個)
————————————————————————–
json = require (“json”)
mobox = require (“OILua_JavelinExt”)function shownowtaskdata ( strLuaDEID )local nRet, strRetInfo local nType local strTaskID local bHidden=false local strClsID=""--拿到數(shù)據(jù)對象標(biāo)識 nRet, strRetInfo = mobox.getCurEditExtInfo( strLuaDEID ) if ( nRet ~= 0 ) then mobox.error( strLuaDEID, "系統(tǒng)獲取擴展屬性失敗 "..strRetInfo ) return end if ( strRetInfo =='' or strRetInfo==nil or strRetInfo=='{}' ) then mobox.error( strLuaDEID, "系統(tǒng)獲取擴展屬性為空!" ) return end local extinfo = json.decode( strRetInfo ) strClsID=extinfo.cls_id -- 得到當(dāng)前cls的id ,下面操作需要— 獲取任務(wù)全局屬性 (這個案例是與 Gungho任務(wù)系統(tǒng)集成,所以需要這個參數(shù),別的環(huán)境這個可以忽略
nRet, strRetInfo = mobox.getGlobalAttr( strLuaDEID, “task_id” )
if ( nRet ~= 0 or strRetInfo == ” ) then
mobox.error( strLuaDEID, “系統(tǒng)無法獲取任務(wù)號 “..strRetInfo )
return
end
local input_paramter = json.decode( strRetInfo )
local strTaskID = input_paramter[1].valuelocal strCondition strCondition = "G_TASK_ID='"..strTaskID.."'" --增加隱藏按鈕的依據(jù)-通過條件查詢返回符合數(shù)據(jù)>0 既隱藏 -- local strQeuryCondition="S_TESTITEM='X'" (定義grid某一個字段內(nèi)有某些數(shù)值 這里沒有啟用) nRet, strRetInfo = mobox.getDataObjCount(strLuaDEID, strClsID, strCondition) if (nRet ~= 0 ) then mobox.error(strLuaDEID, "得到數(shù)據(jù)數(shù)量失敗,原因:" .. strRetInfo) return end --轉(zhuǎn)為整數(shù)類型 local nDataCount = tonumber(strRetInfo) if (nDataCount >0) then bHidden=true end --隱藏頁面按鈕 “新增” local strHiddenButton = '' if (bHidden) then strHiddenButton = ',{"action_type":"hidden_button","value":[{"name":"新增"}]}' end local strAction = '[{"action_type":"set_query_condition","value":{"where":"' .. strCondition .. '","order":""}}' strAction = strAction .. strHiddenButton .. ']' mobox.setAction( strLuaDEID, strAction )end
這個列子也可以用于別的一些非法字符串的處理