香蕉久久夜色精品国产,久久精品国产精品亚洲综合,伊人久久亚洲美女图片 http://www.albertdba.com 免費合同管理系統(tǒng),好用的合同管理軟件 Sat, 26 Mar 2022 14:06:05 +0000 zh-Hans hourly 1 https://wordpress.org/?v=6.8.2 http://www.albertdba.com/wp-content/uploads/2021/05/cropped-mobox512-32x32.png 二次開發(fā) – 共好合同 http://www.albertdba.com 32 32 創(chuàng)建合同歸檔文檔柜目錄 Catalog_Create http://www.albertdba.com/1335/ Sat, 26 Mar 2022 14:06:05 +0000 http://www.albertdba.com/?p=1335 int Catalog_Create ( char *pszRequest, char *&pszResponse )

參數(shù)說明:

【IN】 Char * pszRequest 輸入?yún)?shù)
<Req>
<DataInfo>
<CabinetID>strCabinetID</CabinetID>
<ParentID>strParentID</ParentID>
<InheritACE>bInheritACE</InheritACE>
[ <CatalogName>strCatalogName</CatalogName> ]
|
[ <Catalog ListType=” Order=” GlobalEdit=” MasterID=” MasterName=”>
<Name>strName</Name>
<Desc>strDesc</Desc>
</Catalog> ]
</DataInfo>
<UserInfo Login=” Name=” SessionID=” />
</Req>

【OUT】 Char *&pszResponse 返回的結(jié)果信息
<Res>
<ErrCode>0</ErrCode>
<ErrInfo>strErrInfo</ErrInfo>
<Result>
<CatalogID>strCatalogID</CatalogID>
<CatalogPath>strCatalogIDPath</CatalogPath>
</Result>
</Res>

說明
CabinetID – 檔案柜ID
ParentID – 父級目錄ID
InheritACE – 繼承上一級目錄權(quán)限
CatalogName – 目錄名稱,支持多級,如:A\B\C
// Catalog ———————-
Name – 目錄名稱
ListType – 目錄列表方式:0 – 詳細列表,1 – 縮略圖
Order – 順序號
GlobalEdit – 全局編輯
MasterID – 管理員登錄名
MasterName – 管理員名稱
Desc – 描述

CatalogID – 目錄ID
CatalogPath – 創(chuàng)建多級目錄時,返回各級目錄的 ID,
格式:ID;CatalogName\ID;CatalogName\…

]]>
財務(wù)專用:阿拉伯?dāng)?shù)字轉(zhuǎn)中文大寫金額(支持小數(shù)) http://www.albertdba.com/1200/ Fri, 15 Oct 2021 14:44:08 +0000 http://www.albertdba.com/?p=1200 財務(wù)專用:阿拉伯?dāng)?shù)字轉(zhuǎn)中文大寫金額(支持小數(shù))
— 金額小寫數(shù)字 整數(shù)元 轉(zhuǎn)換 中文大寫
function? yuan_zh(szNum)
? ? —阿拉伯?dāng)?shù)字轉(zhuǎn)中文大寫
? ? local szChMoney = “”
? ? local iLen = 0
? ? local iNum = 0
? ? local iAddZero = 0
? ? local hzUnit = {“”, “拾”, “佰”, “仟”, “萬”, “拾”, “佰”, “仟”, “億”,”拾”, “佰”, “仟”, “萬”, “十”, “百”, “千”}
? ? local hzNum = {“零”, “壹”, “貳”, “叁”, “肆”, “伍”, “陸”, “柒”, “捌”, “玖”}
? ? if nil == tonumber(szNum) then
? ? ? ? return tostring(szNum)
? ? end
? ? iLen =string.len(szNum)
? ? if iLen > 10 or iLen == 0 or tonumber(szNum) < 0 then
? ? ? ? return tostring(szNum)
? ? end
? ? for i = 1, iLen? do
? ? ? ? iNum = string.sub(szNum,i,i)
? ? ? ? if iNum == 0 and i ~= iLen then
? ? ? ? ? ? iAddZero = iAddZero + 1
? ? ? ? else
? ? ? ? ? ? if iAddZero > 0 then
? ? ? ? ? ? szChMoney = szChMoney..hzNum[1]
? ? ? ? end
? ? ? ? ? ? szChMoney = szChMoney..hzNum[iNum + 1] –//轉(zhuǎn)換為相應(yīng)的數(shù)字
? ? ? ? ? ? iAddZero = 0
? ? ? ? end
? ? ? ? if (iAddZero < 4) and (0 == (iLen – i) % 4 or 0 ~= tonumber(iNum)) then
? ? ? ? ? ? szChMoney = szChMoney..hzUnit[iLen-i+1]
? ? ? ? end
? ? end
? ? local function removeZero(num)
? ? ? ? –去掉末尾多余的 零
? ? ? ? num = tostring(num)
? ? ? ? local szLen = string.len(num)
? ? ? ? local zero_num = 0
? ? ? ? for i = szLen, 1, -3 do
? ? ? ? ? ? szNum = string.sub(num,i-2,i)
? ? ? ? ? ? if szNum == hzNum[1] then
? ? ? ? ? ? ? ? zero_num = zero_num + 1
? ? ? ? ? ? else
? ? ? ? ? ? ? ? break
? ? ? ? ? ? end
? ? ? ? end
? ? ? ? num = string.sub(num, 1,szLen – zero_num * 3)
? ? ? ? szNum = string.sub(num, 1,6)
? ? ? ? — 開頭的 “一十” 轉(zhuǎn)成 “十” , 貼近人的讀法
? ? ? ? if szNum == hzNum[2]..hzUnit[2] then
? ? ? ? ? ? num = string.sub(num, 4, string.len(num))
? ? ? ? end
? ? ? ? return num
? ? end
? ? return removeZero(szChMoney)..”圓”
end
— 金額小數(shù)點 角、分轉(zhuǎn)換 中文大寫
function jiaofen_zh(szNum)
? ? local szChMoney = “”
? ? local iLen = 0
? ? local iNum = 0
? ? local iAddZero = 0
? ? local hzUnit = {“分”, “角”}
? ? local hzNum = {“零”, “壹”, “貳”, “叁”, “肆”, “伍”, “陸”, “柒”, “捌”, “玖”}
? ? if nil == tonumber(szNum) then
? ? ? ? return ‘請輸入金額’
? ? end
? ? iLen =string.len(szNum)
? ? if iLen > 15 or iLen == 0 or tonumber(szNum) < 0 then
? ? ? ? return “請輸入金額”
? ? end
? ? local i = 0
? ? for i = 1, iLen do
? ? ? ? iNum = string.sub(szNum,i,i)
? ? ? ? if iNum == 0 then
? ? ? ? ? ? iAddZero = iAddZero + 1
? ? ? ? else
? ? ? ? ? ? if iAddZero > 0 then
? ? ? ? ? ? ? ? szChMoney = szChMoney..hzNum[1]
? ? ? ? ? ? end
? ? ? ? ? ? szChMoney = szChMoney..hzNum[iNum + 1] –//轉(zhuǎn)換為相應(yīng)的數(shù)字
? ? ? ? ? ? iAddZero = 0
? ? ? ? end
? ? ? ? if iNum ~=0 or iLen-i==3 or iLen-i==11 or ((iLen-i+1)%8==0 and iAddZero<4) then
? ? ? ? ? ? szChMoney = szChMoney..hzUnit[iLen-i+1]
? ? ? ? end
? ? end
? ? return szChMoney
end
— 對字符串進行 拆分 ,目的是 將 1309.21 拆分為 1309 及 21 兩個字符串
function split(str,delimiter)
? ? local dLen = string.len(delimiter)
? ? local newDeli = ”
? ? for i=1,dLen,1 do
? ? ? ? newDeli = newDeli .. “[“..string.sub(delimiter,i,i)..”]”
? ? end
? ? local locaStart,locaEnd = string.find(str,newDeli)
? ? local arr = {}
? ? local n = 1
? ? while locaStart ~= nil
? ? do
? ? ? ? if locaStart>0 then
? ? ? ? ? ? arr[n] = string.sub(str,1,locaStart-1)
? ? ? ? ? ? n = n + 1
? ? ? ? end
? ? ? ? str = string.sub(str,locaEnd+1,string.len(str))
? ? ? ? locaStart,locaEnd = string.find(str,newDeli)
? ? end
? ? if str ~= nil then
? ? ? ? arr[n] = str
? ? end
? ? return arr
end
— 需要判斷,金額是否包含小數(shù)點,若 包含小數(shù)點,需要將小數(shù)點前 設(shè)置為:strYuan ; 小數(shù)點后 設(shè)置為:strJiaoFen
local strYuan,strJiaoFen,strDaxie,strOldjine
strOldjine = “104567096”? — 將來這個數(shù)字賦值的時候,小數(shù)點要保留2位,最好小數(shù)第二是0要處理一下
t = split(strOldjine, “.”)? ? ?— 將 124567.09 拆分為 124567 及 09 兩個字符串
— 給 金額 整數(shù)元 賦值; 給 金額 角分 賦值
local strY = t[1]
local strJ = t[2]
–小數(shù)點前整數(shù) 元(需獨立獲取)
strYuan = yuan_zh(strY)
— 金額 的小數(shù)點前的 大寫
strDaxie = strYuan
–strJ小數(shù)點后 角分 (需獨立獲取)
if strJ ~= nil then
? ? strJiaoFen = jiaofen_zh(strJ)
? ? — 完整大寫金額 拼接后完成
? ? strDaxie = strDaxie..strJiaoFen
end
— for i = 1 ,200 do
? ?print(strDaxie)
— end
]]>
數(shù)據(jù)對象的編號生成 http://www.albertdba.com/1187/ Tue, 12 Oct 2021 06:34:04 +0000 http://www.albertdba.com/?p=1187 數(shù)據(jù)對象的編號生成

1.在日常工作中,編號用處有很多地方,以下是一個編號的生成代碼:
標(biāo)號規(guī)則:1、對象類型 2、按照年份排序 3、刪除不影響編號順序

–[[

Code: SD-1701

Author:hanxun Create Date: 2021-10-5

Version:V1.0

功能:

1) 生成一個用戶反饋編號

–]]

json = require (“json”)

mobox = require (“OILua_JavelinExt”)

function BeforeDataObjCreate ( strLuaDEID )

local nRet,strRetInfo

local setAttr

— 需要自動創(chuàng)建 類似 FB-202110050001 (就是 FB-年月日4位順序號)

local strHead = os.date(“%Y%m%d”)

— 注意 這個變量strHead ,是編碼的前綴,其長度不能超過8位

nRet,strRetInfo = mobox.getSerialNumber( “反饋編號”,strHead , 4 )

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

mobox.error( strLuaDEID, “反饋編號序號獲得失敗! “..strRetInfo )

return

end

strRetInfo=’FB-‘..strRetInfo

setAttr = ‘[{“attr”:”S_REQUES_CODE”,”value”:”‘..strRetInfo..'”}]’

— 針對上面賦值語句 解釋:A+B+C (其中B 是變量 strRetInfo)

mobox.setCurEditDataObjAttr( strLuaDEID,setAttr )

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

mobox.error( strLuaDEID, “S_REQUES_CODE設(shè)置賦值錯誤 “..strRetInfo )

return

end

end

]]>
合同的采購清單修改后應(yīng)該自動更新合同總價 http://www.albertdba.com/1175/ Sat, 09 Oct 2021 06:40:58 +0000 http://www.albertdba.com/?p=1175 合同的采購清單修改后應(yīng)該自動更新合同總價

— 以下是代碼部分

–[[
? ? Code: SD-0404
? ? Author:han? ? ?Create Date:? 2021-8-11
? ? Version:V1.0
? ? 功能:
? ? ? ? 更新訂單中的價格 F_TOTAL
–]]
json? = require (“json”)
mobox = require (“OILua_JavelinExt”)
function AfterDataObjModify ( strLuaDEID )
? ? local nRet,strRetInfo, strPOCode
? ? — 獲取 訂單編號
? ? nRet, strRetInfo = mobox.getCurEditDataObjAttr( strLuaDEID, “S_PO_CODE”? )
? ? if ( nRet ~= 0 or strRetInfo == ” ) then
? ? ? ? mobox.error( strLuaDEID, “獲取價格信息失敗!” )
? ? ? ? return
? ? end
? ? local retAttrs = json.decode( strRetInfo )
? ? strPOCode = retAttrs[1].value
? ? — 獲取這個訂單下面的 總價
? ? local strCondition = “S_PO_CODE = ‘”..strPOCode..”‘”
? ? nRet, strRetInfo = mobox.getDataObjAttrSum( strLuaDEID, “采購清單”, strCondition, “F_SUBTOTAL” )
? ? if ( nRet ~= 0? ) then
? ? ? ? mobox.error( strLuaDEID, strRetInfo)
? ? ? ? return
? ? end
? ? local fSumTotal = 0
? ? local retValue = json.decode( strRetInfo )
? ? if ( retValue[1] ~= ”? ) then
? ? ? ? fSumTotal = tonumber( retValue[1] )
? ? end
? ? strCondition = “S_PO_CODE = ‘”..strPOCode..”‘”
? ? strSetAttr = “F_TOTAL = “..fSumTotal
? ? nRet, strRetInfo = mobox.updateDataAttrByCondition( strLuaDEID, “訂單”, strCondition, strSetAttr )
? ? if ( nRet ~= 0 ) then
? ? ? ? mobox.error( strLuaDEID, strRetInfo )
? ? ? ? return
? ? end
end
]]>
將個人網(wǎng)盤文件轉(zhuǎn)移(用戶A轉(zhuǎn)至用戶B指定目錄下) http://www.albertdba.com/1030/ Sat, 26 Jun 2021 09:19:16 +0000 http://www.albertdba.com/?p=1030 — 個人網(wǎng)盤用戶A 所有網(wǎng)盤數(shù)據(jù)都轉(zhuǎn)至 用戶B 根目錄下的一個目錄中(此目錄自動創(chuàng)建,名稱:轉(zhuǎn)自【用戶A】_YYYYmmdd)
BEGIN
? Declare @strUserLogin1 as nvarchar(32)
? Declare @strUserLogin2 as nvarchar(32)
? Declare @strUserName1 as nvarchar(64)
? Declare @strUserName2 as nvarchar(64)
? Declare @nUserIndex1 as int
? Declare @nUserIndex2 as int
? Declare @strTabIndex1 as nchar(1)
? Declare @strTabIndex2 as nchar(1)
? Declare @strCatalogID as nvarchar(36)
? Declare @strCatalogName as nvarchar(64)
? Declare @strSQL as nvarchar(1024)
? Declare @strOwner as nvarchar(32)
? Declare @strOwnerName as nvarchar(64)
? Declare @nNDIndex as int
? Declare @strDate as nvarchar(8)
? — 指定用戶A 與 用戶B 的登錄名,最好小寫
? Set @strUserLogin1 = N’用戶A’
? Set @strUserLogin2 = N’用戶B’
? Set @nUserIndex1 = -1
? Set @nUserIndex2 = -1
? — 申請游標(biāo),得到用戶個人網(wǎng)盤信息
? Declare userindex_cursor cursor for (SELECT Lower( CN_S_OWNER_ID ), CN_S_OWNER_NAME, CN_N_NDX FROM OI_ND_USER WHERE CN_S_OWNER_ID IN ( @strUserLogin1, @strUserLogin2 ) )
? — 打開游標(biāo)
? Open userindex_cursor
? — 開始循環(huán)游標(biāo)變量
? Fetch Next From userindex_cursor into @strOwner, @strOwnerName, @nNDIndex
? — FETCH 后的游標(biāo)狀態(tài)
? While @@FETCH_STATUS = 0
? Begin
? ? If @strOwner = @strUserLogin1
? ? Begin
? ? ? Set @nUserIndex1 = @nNDIndex
? ? ? Set @strUserName1 = @strOwnerName
? ? End
? ? Else
? ? Begin
? ? ? Set @nUserIndex2 = @nNDIndex
? ? ? Set @strUserName2 = @strOwnerName
? ? End
? ? — 轉(zhuǎn)到下一個游標(biāo)
? ? Fetch Next From userindex_cursor into @strOwner, @strOwnerName, @nNDIndex
? End
? — 關(guān)閉游標(biāo)
? Close userindex_cursor
? — 釋放游標(biāo)
? Deallocate userindex_cursor
? — 判斷用戶索引
? If @nUserIndex1 = -1 Or @nUserIndex2 = -1
? Begin
? ? Print N’指定的用戶不存在’
? ? Return
? End
? — 生成表索引
? Set @strTabIndex1 = Str( @nUserIndex1, 1 )
? Set @strTabIndex2 = Str( @nUserIndex2, 1 )
? — 在用戶B根目錄下創(chuàng)建存放轉(zhuǎn)移數(shù)據(jù)的目錄:轉(zhuǎn)自【用戶A】_YYYYmmdd
? Print N’創(chuàng)建轉(zhuǎn)移數(shù)據(jù)的目錄’
? Set @strCatalogID = NewID()
? Set @strDate = Left( Convert( char(8), GetDate(), 112 ), 8 )
? Set @strCatalogName = ‘轉(zhuǎn)自【’ + @strUserName1 + ‘】_’ + @strDate
? Set @strSQL = N’INSERT INTO OI_ND_CATALOG ( CN_S_ID, CN_S_NAME, CN_N_DOC_LIST_TYPE, CN_N_SHARE, CN_S_CREATOR_ID, CN_S_CREATOR, CN_T_CREATE, CN_N_ORDER, CN_S_PARENTID ) ‘ +
N’VALUES ( ”’ + @strCatalogID + ”’, ”’ + @strCatalogName + ”’, 0, 0, ”’ + @strUserLogin2 + ”’, ”’ + @strUserName2 + ”’, GetDate(), 0, ”” )’
? EXEC( @strSQL )
? — 索引值相同,直接替換
? If @nUserIndex1 = @nUserIndex2
? Begin
? ? Print N’用戶索引相同’
? ? — 個人文檔表
? ? Print N’個人文檔表’
? ? Set @strSQL = N’UPDATE OI_ND_DOC_’ + @strTabIndex1 + N’ SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_CREATOR = ”’ + @strUserName2 + N”’ WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? ? — 根級目錄文檔
? ? Print N’根級目錄文檔’
? ? Set @strSQL = N’UPDATE OI_ND_CATALOG_HLINK_’ + @strTabIndex1 + N’ SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_CATALOG_ID = ”’ + @strCatalogID + N”’ WHERE (CN_S_CATALOG_ID IS NULL OR CN_S_CATALOG_ID = ””) AND CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? ? — 子級目錄文檔
? ? Print N’子級目錄文檔’
? ? Set @strSQL = N’UPDATE OI_ND_CATATLOG_HLINK_’ + @strTabIndex1 + N’ SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’ WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? End
? — 索引值不同,數(shù)據(jù)記錄遷移(記錄復(fù)制至 B用戶索引表,刪除A用戶索引表記錄)
? Else
? Begin
? ? Print N’用戶索引不相同’
? ? — 個人文檔表,復(fù)制
? ? Print N’個人文檔表,復(fù)制’
? ? Set @strSQL = N’INSERT INTO OI_ND_DOC_’ + @strTabIndex2 + N’ ( CN_S_ID, CN_S_FILE_NAME, CN_S_FILE_TYPE, CN_N_FILE_SIZE, CN_T_FILE_DATETIME, CN_S_FILE_MD5, CN_S_FILE_SERVER, CN_G_FILE_ID, CN_G_PDF_FILE_ID, CN_G_FLASH_FILE_ID, CN_G_THUMB_IMAGE_ID, CN_S_THUMB_URL, ‘ +
N’CN_S_CREATOR_ID, CN_S_CREATOR, CN_T_CREATE, CN_S_VERSION, CN_S_TAGS_NAME, CN_N_SHARE, CN_N_MOD, CN_S_NOTE, CN_S_SYS_NOTE ) ‘ +
N’SELECT CN_S_ID, CN_S_FILE_NAME, CN_S_FILE_TYPE, CN_N_FILE_SIZE, CN_T_FILE_DATETIME, CN_S_FILE_MD5, CN_S_FILE_SERVER, CN_G_FILE_ID, CN_G_PDF_FILE_ID, CN_G_FLASH_FILE_ID, CN_G_THUMB_IMAGE_ID, CN_S_THUMB_URL, ‘ +
N”” + @strUserLogin2 + N”’, ”’ + @strUserName2 + N”’, CN_T_CREATE, CN_S_VERSION, CN_S_TAGS_NAME, CN_N_SHARE, CN_N_MOD, CN_S_NOTE, CN_S_SYS_NOTE ‘ +
N’FROM OI_ND_DOC_’ + @strTabIndex1 +
N’ WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? ? — 刪除
? ? Print N’個人文檔表,刪除’
? ? Set @strSQL = N’DELETE OI_ND_DOC_’ + @strTabIndex1 + N’ WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? ? — 根級目錄文檔,復(fù)制
? ? Print N’根級目錄文檔,復(fù)制’
? ? Set @strSQL = N’INSERT INTO OI_ND_CATALOG_HLINK_’ + @strTabIndex2 + N’ ( CN_S_CREATOR_ID, CN_S_CATALOG_ID, CN_S_OBJ_ID, CN_S_DISPLAY_NAME, CN_S_FILE_TYPE, CN_N_FILE_SIZE, CN_S_THUMB_URL, CN_T_FILE_DATETIME, CN_S_EXTATTR, CN_N_SHARE, CN_T_LINK, CN_S_TAGS ) ‘ +
N’SELECT ”’ + @strUserLogin2 + N”’, ”’ + @strCatalogID + N”’, CN_S_OBJ_ID, CN_S_DISPLAY_NAME, CN_S_FILE_TYPE, CN_N_FILE_SIZE, CN_S_THUMB_URL, CN_T_FILE_DATETIME, CN_S_EXTATTR, CN_N_SHARE, CN_T_LINK, CN_S_TAGS ‘ +
N’FROM OI_ND_CATALOG_HLINK_’ + @strTabIndex1 +
N’ WHERE (CN_S_CATALOG_ID IS NULL OR CN_S_CATALOG_ID = ””) AND CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? ? — 刪除
? ? Print N’根級目錄文檔,刪除’
? ? Set @strSQL = N’DELETE OI_ND_CATALOG_HLINK_’ + @strTabIndex1 + N’ WHERE (CN_S_CATALOG_ID IS NULL OR CN_S_CATALOG_ID = ””) AND CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? ? — 子級目錄文檔,復(fù)制
? ? Print N’子級目錄文檔,復(fù)制’
? ? Set @strSQL = N’INSERT INTO OI_ND_CATALOG_HLINK_’ + @strTabIndex2 + N’ ( CN_S_CREATOR_ID, CN_S_CATALOG_ID, CN_S_OBJ_ID, CN_S_DISPLAY_NAME, CN_S_FILE_TYPE, CN_N_FILE_SIZE, CN_S_THUMB_URL, CN_T_FILE_DATETIME, CN_S_EXTATTR, CN_N_SHARE, CN_T_LINK, CN_S_TAGS ) ‘ +
N’SELECT ”’ + @strUserLogin2 + N”’, CN_S_CATALOG_ID, CN_S_OBJ_ID, CN_S_DISPLAY_NAME, CN_S_FILE_TYPE, CN_N_FILE_SIZE, CN_S_THUMB_URL, CN_T_FILE_DATETIME, CN_S_EXTATTR, CN_N_SHARE, CN_T_LINK, CN_S_TAGS ‘ +
N’FROM OI_ND_CATALOG_HLINK_’ + @strTabIndex1 +
N’ WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? ? — 刪除
? ? Print N’子級目錄文檔,刪除’
? ? Set @strSQL = N’DELETE OI_ND_CATALOG_HLINK_’ + @strTabIndex1 + N’ WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? ? EXEC( @strSQL )
? End
? — 未分表的數(shù)據(jù)表,直接替換
? — 回收站,原根目錄文檔
? Print N’回收站,原根目錄文檔’
? Set @strSQL = N’UPDATE OI_ND_DOC_DELETE SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_CREATOR = ”’ + @strUserName2 + N”’, CN_S_DELETED_BY_ID = ”’ + @strUserLogin2 + N”’, CN_S_DELETED_BY = ”’ + @strUserName2 + N”’, CN_G_CATALOG_ID = ”’ + @strCatalogID + N”’ ‘ +
N’WHERE (CN_G_CATALOG_ID IS NULL OR CN_G_CATALOG_ID = ””) AND CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? EXEC( @strSQL )
? — 回收站,其它目錄文檔
? Print N’回收站,其它目錄文檔’
? Set @strSQL = N’UPDATE OI_ND_DOC_DELETE SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_CREATOR = ”’ + @strUserName2 + N”’, CN_S_DELETED_BY_ID = ”’ + @strUserLogin2 + N”’, CN_S_DELETED_BY = ”’ + @strUserName2 + N”’ ‘ +
N’WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? EXEC( @strSQL )
? — 歷史表
? Print N’歷史表’
? Set @strSQL = N’UPDATE OI_ND_DOC_HISTORY SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_CREATOR = ”’ + @strUserName2 + N”’, CN_S_OPERATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_OPERATOR = ”’ + @strUserName2 + N”’ ‘ +
N’WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? EXEC( @strSQL )
? — 根級目錄
? Print N’根級目錄’
? Set @strSQL = N’UPDATE OI_ND_CATALOG SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_CREATOR = ”’ + @strUserName2 + N”’, CN_S_PARENTID = ”’ + @strCatalogID + N”’ ‘ +
N’WHERE (CN_S_PARENTID IS NULL OR CN_S_PARENTID = ””) AND CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? EXEC( @strSQL )
? — 子級目錄
? Print N’子級目錄’
? Set @strSQL = N’UPDATE OI_ND_CATALOG SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_CREATOR = ”’ + @strUserName2 + N”’ ‘ +
N’WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? EXEC( @strSQL )
? — 共享出去信息替換
? Print N’共享出去信息替換’
? Set @strSQL = N’UPDATE OI_ND_SHARE_OUT SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’ WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? EXEC( @strSQL )
? — 刪除共享進來 A -> B,B -> A 記錄
? Print N’刪除共享進來 A -> B,B -> A 記錄’
? Set @strSQL = N’DELETE OI_ND_SHARE_IN WHERE (CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N”’ AND CN_S_SHARER_ID = ”’ + @strUserLogin2 + N”’) OR (CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’ AND CN_S_SHARER_ID = ”’ + @strUserLogin1 + N”’)’
? EXEC( @strSQL )
? — 共享進來信息替換
? Print N’共享進來信息替換’
? Set @strSQL = N’UPDATE OI_ND_SHARE_IN SET CN_S_CREATOR_ID = ”’ + @strUserLogin2 + N”’, CN_S_CREATOR = ”’ + @strUserName2 + N”’ WHERE CN_S_CREATOR_ID = ”’ + @strUserLogin1 + N””
? EXEC( @strSQL )
END
GO
]]>
將所有人員都開通網(wǎng)盤功能 http://www.albertdba.com/960/ Tue, 08 Jun 2021 07:40:22 +0000 http://www.albertdba.com/?p=960 將所有人員都開通網(wǎng)盤功能,數(shù)據(jù)庫需要在 Oiorg上運行,系統(tǒng)支持?MSSql及Oracle數(shù)據(jù)庫

— 將目前oiorg表內(nèi)已有的用戶 全部開通網(wǎng)盤

— 創(chuàng)建數(shù)據(jù)庫連接
Create Database link DBLink_Org
connect to amuser identified by Am123123
using ‘127.0.0.1:1521/OIOrg’;

 

INSERT INTO OI_ND_USER ( CN_S_OWNER_ID, CN_S_OWNER_NAME, CN_C_ACTIVE,
CN_N_NETDISK_CAPACITY, CN_N_NETDISK_USED,
CN_N_NDX, CN_S_BAK,
CN_T_LAST_LIST_SHAREIN, CN_T_CREATE,
CN_G_UNIT_ID, CN_S_UNIT_NAME,
CN_C_CLEAN )
SELECT S_C1, S_C2, ‘Y’,
10737418240, 0,
0, ”,
NULL, sysdate,
‘ ‘, ‘ ‘,
‘N’
FROM OI_ORG_T008@DBLink_Org
Where s_c1 not in ( Select cn_s_owner_id from OI_ND_USER )

— 刪除數(shù)據(jù)庫連接
DROP DATABASE LINK DBLink_Org;

]]>
人員維護-將好友從老版本導(dǎo)入 http://www.albertdba.com/934/ Mon, 07 Jun 2021 04:38:47 +0000 http://www.albertdba.com/?p=934 — 目的將 AM8數(shù)據(jù)庫表的好友,轉(zhuǎn)入到 OIOrg表,這個sql 需要在 oiorg 表環(huán)境下運行? (先在am8數(shù)據(jù)庫運行同名)
— 得到用戶所有分組,分組成員版本初始為 1
INSERT INTO OI_ORG_CONTACT_GROUP ( S_OWNER, G_ID, S_NAME, N_MEMBER_VER )
SELECT c.S_OWNER, c.G_GROUPID, g.S_NAME, 1
FROM [AM8].[dbo].[OI_STK_CUSTOMVIEW] c
INNER JOIN [AM8].[dbo].[OI_STK_CUSTOMGROUP] g ON g.G_GROUP = c.G_GROUPID
GROUP BY c.S_OWNER, c.G_GROUPID, g.S_NAME
ORDER BY c.S_OWNER, c.G_GROUPID
— 得到所有用戶聯(lián)系人,會過濾掉所在分組已經(jīng)沒有的數(shù)據(jù)
INSERT INTO OI_ORG_CONTACT ( S_OWNER, S_USER_LOGIN, G_GROUP_ID )
SELECT c.S_OWNER, c.S_USERLOGIN, c.G_GROUPID
FROM [AM8].[dbo].[OI_STK_CUSTOMVIEW] c
WHERE c.S_USERLOGIN <> ”
AND (G_GROUPID IN ( Select G_GROUP From [AM8].[dbo].[OI_STK_CUSTOMGROUP] )
ORG_GROUPID = ‘{00000000-0000-0000-0000-000000000000}’ )
ORDER BY c.S_OWNER, c.G_GROUPID, c.S_USERLOGIN
— 得到人員的聯(lián)系人版本號
UPDATE OI_ORG_T008 SET N_C41 = b.N_VER
FROM ( SELECT S_OWNER, Max( N_VER ) AS N_VER
? FROM [AM8].[dbo].[OI_STK_CUSTOMVIEW]
? GROUP BY S_OWNER ) b
WHERE S_C1 = b.S_OWNER
— 人員的聯(lián)系人分組版本號,有分組就置 1
UPDATE OI_ORG_T008 SET N_C42 = 1 WHERE S_C1 IN ( Select S_OWNER From OI_ORG_CONTACT_GROUP )
— 清除 AM8 數(shù)據(jù)表中的 聯(lián)系人 數(shù)據(jù)
— TRUNCATE TABLE [AM8].[dbo].[OI_STK_CUSTOMVIEW]
— GO
— TRUNCATE TABLE [AM8].[dbo].[OI_STK_CUSTOMGROUP]
— GO
]]>
中文字幕第7页-中文字幕第6页-中文字幕第4页-中文字幕第3页-中文字幕第315页-中文字幕第2页

          国产综合婷婷| 午夜视频精品| 国产精品中文在线| 欧美日韩一区二区在线播放| 久久久人成影片一区二区三区 | 亚洲啪啪91| 在线高清一区| 亚洲国产精品精华液网站| 精品盗摄一区二区三区| 国内精品久久久| 黄色成人在线免费| 在线精品视频一区二区三四| 国内精品美女在线观看| 激情伊人五月天久久综合| 精品成人一区| 亚洲国产日韩综合一区| 亚洲精品久久久久久久久久久久久| 亚洲黄一区二区| 99在线精品视频在线观看| 一本色道久久综合亚洲精品不卡| 在线午夜精品| 亚洲综合视频在线| 久久国产精品久久w女人spa| 久久亚洲春色中文字幕| 欧美国产精品一区| 欧美日本高清一区| 欧美视频免费在线| 国产精品一区一区| 黄色亚洲大片免费在线观看| 在线免费观看视频一区| 亚洲精品黄网在线观看| 一区二区欧美国产| 亚洲欧美激情一区二区| 久久国产精品电影| 欧美成人网在线| 欧美午夜一区二区| 国产一区二区三区不卡在线观看 | 亚洲一区高清| 欧美在线高清视频| 玖玖精品视频| 欧美视频观看一区| 国产一区二区三区免费观看| 精品福利电影| 99精品福利视频| 欧美一级黄色录像| 美女精品网站| 欧美午夜在线观看| 国模一区二区三区| 99视频精品在线| 欧美一区二区三区免费在线看 | 在线性视频日韩欧美| 欧美一二三视频| 欧美高清日韩| 国产精品夜色7777狼人| 一区在线观看视频| 一本色道久久综合亚洲精品不卡| 午夜免费日韩视频| 欧美成人免费在线| 国产日韩视频| 亚洲美女在线视频| 欧美在线观看日本一区| 欧美精品成人| 国产一区二区三区在线观看网站| 亚洲精品久久久一区二区三区| 亚洲欧美卡通另类91av| 女同性一区二区三区人了人一| 国产精品扒开腿爽爽爽视频| 伊大人香蕉综合8在线视| 亚洲午夜久久久久久尤物 | 亚洲一区二区动漫| 久久人人看视频| 国产精品久久77777| 亚洲大胆视频| 亚洲欧美日韩国产综合精品二区| 美女诱惑黄网站一区| 国产精品欧美经典| 日韩午夜电影| 久久色在线播放| 国产精品亚洲аv天堂网| 亚洲精品欧美精品| 另类亚洲自拍| 国产日韩三区| 一区二区欧美在线观看| 你懂的成人av| 国产伊人精品| 午夜在线精品| 国产精品ⅴa在线观看h| 亚洲精品国产品国语在线app| 久久精品男女| 国产精品无人区| 一区二区三区免费网站| 欧美va天堂| 在线观看成人av| 欧美亚洲一区二区在线观看| 欧美日韩亚洲三区| 亚洲精品久久久久久久久久久| 久久亚洲精品一区二区| 国产日本亚洲高清| 亚洲一区黄色| 欧美日韩在线直播| 日韩视频一区二区在线观看 | 欧美午夜精品久久久久久孕妇| **性色生活片久久毛片| 久久精品国产91精品亚洲| 国产精品婷婷午夜在线观看| 一区二区三区四区五区在线| 欧美精品在线一区| 亚洲国产婷婷综合在线精品| 久久久噜噜噜久久中文字免| 国产欧美在线观看| 午夜免费电影一区在线观看 | 国产精品久久久久9999| 日韩视频三区| 欧美日韩免费观看一区| 亚洲精品日韩精品| 欧美寡妇偷汉性猛交| 亚洲国产欧美一区二区三区久久 | 国产一区美女| 性亚洲最疯狂xxxx高清| 国产精品久久久一本精品| 亚洲丝袜av一区| 欧美日韩一二三四五区| 99视频+国产日韩欧美| 欧美日韩免费在线视频| 在线一区二区三区做爰视频网站| 欧美日韩国产天堂| 99国产精品视频免费观看一公开| 欧美日韩国产丝袜另类| 99综合视频| 国产精品二区在线| 亚洲欧美日韩在线观看a三区| 国产精品亚洲网站| 久久国产精品毛片| 在线免费观看日本一区| 欧美激情一区二区三区| av成人免费在线| 国产精品福利av| 性色av一区二区三区| 国内精品伊人久久久久av影院| 久久野战av| 亚洲精品视频在线看| 欧美日韩一区二区三区在线| 亚洲午夜av| 国产亚洲一区二区三区| 久久亚洲春色中文字幕| 亚洲国产第一页| 欧美伦理91| 亚洲免费婷婷| 好吊一区二区三区| 欧美激情一区二区三区| 中日韩男男gay无套| 国产精品日韩欧美综合| 久久国产精品99国产| 亚洲国产精品久久久久秋霞影院| 欧美极品影院| 亚洲欧美激情视频| 国内精品久久久久久久果冻传媒| 牛牛影视久久网| 亚洲在线视频免费观看| 国产一区二区三区丝袜 | 欧美成年人视频网站| 亚洲精品日韩一| 国产欧美日韩在线播放| 久久综合影音| 亚洲午夜羞羞片| 黑人中文字幕一区二区三区| 免费在线观看成人av| 在线亚洲免费| 韩国一区二区三区在线观看| 欧美国产日韩一区| 亚洲欧美怡红院| 亚洲国产一区二区三区a毛片| 欧美日韩在线电影| 久久精选视频| 一本久久综合| 加勒比av一区二区| 欧美日韩色婷婷| 久久久久9999亚洲精品| 亚洲精品一区二区三区在线观看 | 中文日韩在线| 韩国av一区二区三区四区| 欧美精品尤物在线| 久久精品水蜜桃av综合天堂| 日韩亚洲在线| 激情一区二区| 国产精品看片资源| 免费精品视频| 性欧美1819性猛交| 亚洲蜜桃精久久久久久久 | 精品999在线观看| 欧美色视频日本高清在线观看| 久久另类ts人妖一区二区| 一区二区三欧美| 亚洲高清在线精品| 国产欧美日韩亚洲| 欧美日韩一视频区二区| 麻豆freexxxx性91精品| 欧美亚洲一级| 亚洲午夜电影网| 91久久精品国产|