日韩欧美一区二区久久-日韩欧美一区二区三区-日韩欧美一区二区三区不卡-日韩欧美一区二区三区不卡视频-日韩欧美一区二区三区不卡在线

產(chǎn)品中心 業(yè)內(nèi)新聞 案例中心 視頻中心

Gungho任務(wù)二次開發(fā)-任務(wù)分類集成3000功能的擴(kuò)展屬性excel導(dǎo)入 Gungho任務(wù)二次開發(fā)-任務(wù)分類集成3000功能的擴(kuò)展屬性excel導(dǎo)入

Gungho任務(wù)二次開發(fā)-任務(wù)分類集成3000功能的擴(kuò)展屬性excel導(dǎo)入

分類:二次開發(fā) 產(chǎn)品中心 454

Gungho任務(wù)二次開發(fā)-任務(wù)分類集成3000功能的清單導(dǎo)入

這個是一個標(biāo)準(zhǔn)的導(dǎo)入模板 ,使用前可以通過修改 表名,字段名稱,字段中文名,字段對應(yīng)賦值變量名稱。

–[[

這個是一個標(biāo)準(zhǔn)的腳本,可以

1、修改里面的數(shù)據(jù)對象名稱 樣品技術(shù)參數(shù)

2、字段相關(guān)名稱(字段中文名、字段名稱、字段賦值變量名稱)

字段名稱? ? ? ? ? ? ? ? ? ? ? ? ? ? 字段中文名? ? ? ? ? 字段對應(yīng)賦值變量名

N_SN? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?序號? ? ? ? ? ? ? ? ? ? ?nSN

S_ITEM_NAME? ? ? ? ? ? ? ? ?名稱? ? ? ? ? ? ? ? ? ? ?strItemName

S_ITEM_M_S_N? ? ? ? ? ? ? ?型號_規(guī)格_數(shù)量? ?strItemMSN

S_ITEM_CODE? ? ? ? ? ? ? ? ?編號? ? ? ? ? ? ? ? ? ? ?strItemCode

S_MANUFACTURER? ? ? ? 生產(chǎn)單位? ? ? ? ? ? ? strFacturer

3、若字段不夠多,或太多,需要調(diào)整程序

4、里面的唯一性判斷是 task_id + S_ITEM_NAME + S_ITEM_CODE (需要根據(jù)情況調(diào)整)

–]]

功能說明:json = require(“json”)

mobox = require(“OILua_JavelinExt”)

require(“oi_basestrfunc”)

function ImportExcle(strLuaDEID)

local nRet, strRetInfo

local strPrjID = ”

local strTaskID = ”

— 獲取全局變量 prj_id, task_id

nRet, strRetInfo = mobox.getGlobalAttr( strLuaDEID, “task_id”,”prj_id” )

if ( nRet ~= 0 or strRetInfo == ” ) then

mobox.error( strLuaDEID, “系統(tǒng)無法獲取全局變量 “..strRetInfo )

return

end

local input_paramter = json.decode( strRetInfo )

strTaskID = input_paramter[1].value

strPrjID = input_paramter[2].value

if ( strTaskID == ” ) then

mobox.error( strLuaDEID, “必須要有項目及任務(wù)相關(guān)信息” )

return

end

— 獲取導(dǎo)入的單條數(shù)據(jù), 返回 {“id”:”xxx”,”attrs”:[{“attr”:”attr1″,”value”:”xxx1″},{“attr”:”attr2″,”value”:”xxx2″}, …]}

nRet, strRetInfo = mobox.getInputParameter(strLuaDEID)

if (nRet ~= 0 or strRetInfo == ” ) then

mobox.error(strLuaDEID, “無法獲取導(dǎo)入數(shù)據(jù)!”..strRetInfo)

return

end

local n, nCount, nValue

local strAddAttr = ”

local strAttr = ”

local strSetSQL = ”

— 一些關(guān)鍵屬性 (腳本 后期只需要改字段名稱就可以)

local nSN? ? ? ? ? ? ? ? ? ? ? ? ? ?— 對應(yīng) 序號 N_SN

local strItemName = ”? ? ? ? — 對應(yīng) 名稱 S_ITEM_NAME

local strItemMSN = ”? ? ? ? ?— 對應(yīng) 型號_規(guī)格_數(shù)量 S_ITEM_M_S_N

local strItemCode = ”? ? ? ? ?— 對應(yīng) 編號 S_ITEM_CODE

local strFacturer = ”? ? ? ? ? ? — 對應(yīng) 生產(chǎn)單位 S_MANUFACTURER

 

— 因為每次導(dǎo)入只傳一條記錄,所以當(dāng)前條寫入 prj_id 及 task_id

strAddAttr = strAddAttr .. ‘{“attr”:”G_TASK_ID”,”value”:”‘ .. strTaskID .. ‘”},’

strAddAttr = strAddAttr .. ‘{“attr”:”G_PRJ_ID”,”value”:”‘ .. strPrjID .. ‘”},’

local retJson =json.decode(strRetInfo)

local input_rows =retJson[“parameter”]

— 步驟1 獲取從excel導(dǎo)入的一行數(shù)據(jù),根據(jù)excel的列定義進(jìn)行屬性組合 strAddAttr

nCount = #input_rows

for n = 1, nCount do

strAttr = input_rows[n].attr

strValue = input_rows[n].value

— 根據(jù)導(dǎo)入的excel列頭名稱進(jìn)行判斷

— 關(guān)鍵屬性判斷

if (strAttr == “名稱”) then

if (strValue == ”) then

mobox.error(strLuaDEID, strAttr .. “不能為空!”)

return

end

strItemName = strValue
strAddAttr = strAddAttr .. ‘{“attr”:”S_ITEM_NAME”,”value”:”‘ .. strItemName .. ‘”},’

 

— 常規(guī)屬性

elseif (strAttr == “序號”) then

nSN = strValue
strAddAttr = strAddAttr .. ‘{“attr”:”N_SN”,”value”:”‘ .. nSN .. ‘”},’

elseif (strAttr == “型號_規(guī)格_數(shù)量”) then

strItemMSN = strValue
strAddAttr = strAddAttr .. ‘{“attr”:”S_ITEM_M_S_N”,”value”:”‘ .. strItemMSN .. ‘”},’

elseif (strAttr == “編 號”) then

strItemCode= strValue
strAddAttr = strAddAttr .. ‘{“attr”:”S_ITEM_CODE”,”value”:”‘ .. strItemCode .. ‘”},’

elseif (strAttr == “生產(chǎn)廠家”) then

strFacturer = strValue
strAddAttr = strAddAttr .. ‘{“attr”:”S_MANUFACTURER”,”value”:”‘ .. strFacturer .. ‘”},’

end

end
–去除最后一個,
local strAddAttr1 = trim_laster_char(strAddAttr)

— 步驟2 根據(jù) (名稱+編號+taskid) 來判斷導(dǎo)入的檢測數(shù)據(jù)是否已經(jīng)存在
— 如果已經(jīng)存在,根據(jù)導(dǎo)入的數(shù)據(jù)進(jìn)行覆蓋
— 如果不存在需要創(chuàng)建
local attrs
local strCondition = “S_ITEM_NAME='” .. strItemName .. “‘ and G_TASK_ID='”..strTaskID..”‘ and S_ITEM_CODE='” .. strItemCode.. “‘”
nRet, strRetInfo = mobox.existThisData(strLuaDEID, “樣品技術(shù)參數(shù)”, strCondition)
if (nRet ~= 0 ) then

mobox.error(strLuaDEID, “在檢查樣品技術(shù)參數(shù)是否存在時失敗! ” .. strRetInfo)

return
end

if (strRetInfo == ‘yes’) then

— 已經(jīng)存在,根據(jù)導(dǎo)入的數(shù)據(jù)進(jìn)行覆蓋

strCondition = “S_ITEM_NAME='” .. strItemName .. “‘ and G_TASK_ID='”..strTaskID..”‘ and S_ITEM_CODE='” .. strItemCode.. “‘”

strSetSQL = “N_SN='” ..nSN.. “‘, S_ITEM_NAME = ‘” .. strItemName ..”‘ , S_ITEM_CODE ='” ..strItemCode .. “‘ , S_ITEM_M_S_N = ‘” .. strItemMSN ..”‘ “

nRet, strRetInfo = mobox.updateDataAttrByCondition(strLuaDEID, “樣品技術(shù)參數(shù)”, strCondition, strSetSQL)

if (nRet ~= 0) then

mobox.error(strLuaDEID, strRetInfo)

return

end

elseif (strRetInfo == ‘no’) then

— 創(chuàng)建 樣品技術(shù)參數(shù)

— mobox.writeSysLog(“strAddAttr1”, strAddAttr1)

strAddAttr1 = ‘[‘ .. strAddAttr1 .. ‘]’

mobox.writeSysLog(“strAddAttr2”, strAddAttr1)

nRet, strRetInfo = mobox.createDataObj(strLuaDEID, “樣品技術(shù)參數(shù)”, strAddAttr1)

if (nRet ~= 0) then

mobox.error(strLuaDEID, “創(chuàng)建樣品技術(shù)參數(shù)失敗! ” .. strRetInfo )

return
end

end
end

 

function
標(biāo)簽:手冊腳本 上一篇: 下一篇:
展開更多
預(yù)約軟件體驗

loading...

主站蜘蛛池模板: 欧美视频在线播放观看免费福利资源 | 亚洲一级二级三级 | 天天综合色网 | 国产日韩欧美亚洲青青草原 | 亚洲精选| 在线观看国产三级 | 亚洲一区二区三区夜色 | 超乳w真性中出し冲田杏梨101 | 亚洲黄色三级网站 | 欧美黄色一级毛片 | 亚洲国产成人精品不卡青青草原 | 伊人丁香婷婷综合一区二区 | 九一国产精品视频 | 日韩视频中文字幕专区 | 欧美在线视 | 国产亚洲精品福利片 | 免费看黄的视频 | 亚洲欧美日韩激情在线观看 | 国产精品毛片无码 | 色屁屁一区二区三区视频国产 | 国产乱码在线精品可播放 | 国产99福利视频在线 | 一级女性全黄久久生活片 | 国产三级精品最新在线 | 欧美啪啪网站 | 亚洲午夜日韩高清一区 | 欧美一区二区三区在线视频 | 在线精品国内视频秒播 | 免费观看的成年网址 | 国产福利视频一区二区微拍 | 热99re久久精品天堂vr | 久久久久国产视频 | 在线网站 看片 网站 | 在线视频免费观看短视频 | 91精品国产闺蜜国产在线 | 亚洲精品一区henhen色 | 日韩欧美一中文字幕不卡 | 国产一级黄色录像 | 免费国产成人高清在线观看不卡 | 国产一区二区三区在线看片 | 免费人成黄页在线观看视频国产 |