<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 1, comments - 0, trackbacks - 0, articles - 1

     http://www.lotus-gateway.com/tech-article/25-lotus-design/524-2009-10-18-13-03-12.html

    問(wèn)題: 運(yùn)行在服務(wù)器上以及有多個(gè)復(fù)本的數(shù)據(jù)庫(kù)難免會(huì)出現(xiàn)復(fù)制與保存沖突的情況。如何處理這種情況是所有Notes管理員和設(shè)計(jì)者都要面對(duì)的問(wèn)題。

    復(fù)制與保存沖突可由以下原因造成:

    在兩次復(fù)制之間,如果有兩個(gè)用戶(hù)同時(shí)編輯或多個(gè)用戶(hù)編輯了不同數(shù)據(jù)庫(kù)復(fù)本上的相同文檔,就會(huì)出現(xiàn)復(fù)制沖突。 如果有兩個(gè)或多個(gè)用戶(hù)同時(shí)編輯同一個(gè)數(shù)據(jù)庫(kù)的同一個(gè)文檔,則會(huì)出現(xiàn)保存沖突。

    解決方法:

    一、可以在表單屬性框中的基本付簽選中:“合并復(fù)制沖突”,并知底功能表單基本付簽中的版本選項(xiàng)。

    二、在這里介紹一些和處理復(fù)制與保存沖突情況有關(guān)的方法與技巧:

    1、創(chuàng)建列出所有沖突文檔的視圖:(VewConflict) 沖突文檔都包含一個(gè)名為“$Conflict”的域,因此可以用下面的試圖選擇公式列出所有沖突文檔。

    1 SELECT @ISAvailable("$Conflict")

     

    2、將沖突文檔與主文檔同屏顯示以便比較兩者之間的差別: 由于沖突文檔被保存為主文檔的答復(fù)文檔,在打開(kāi)沖突文檔以后使用快捷圖標(biāo)“顯示/隱藏預(yù)覽主文檔”,主文檔就會(huì)被顯示在預(yù)覽窗格中了。

    3、附加菜單命令比較兩個(gè)文檔之間的差別: 在Notes.ini文件中加入下面一行:

    AddInMenus=C:\Notes\nntediff.dll

    然后重起Notes,就回發(fā)現(xiàn)“操作”菜單中多了一項(xiàng)“Different of 2 document”.  

    4、找到?jīng)_突文檔的主文檔:

    Sub Click(Source as Button)

    Const FolderName="ReplicationConFlict"

    dim s As New NotesSession

    dim doccol as NotesDocumentCollection

    dim doc as Notesdocument,topdoc as notesdocument

    dim folder as notesView

    set dbcur=s.currentdatabase

    set doccol.dbcur.unprocesseddocuments

    set doc=doccol.getfirstdocument

    while not(doc is nothing)

    set topdoc=gettopdoc(doc)

    call topdoc.putinfolder(Foldername)

    set doc=doccol.getnextdocument(doc)

    wend

    End Sub

    Function GetTopDoc(DocSource as notesDocument) as NotesDocument

    dim doctop as notesdocument dim strUNID as String

    set doctop=docsource

    strUNID=doctop.ParentDocumentUNID  

    Do While (strUNID<>"")

    set DocTop=dbCur.GetDocumentByUNID(StrUNID)

    strUNID=doctop.ParentdocumentUNID

    loop

    set GetTopDoc=doctop

    End Functiong  

      

    5、將沖突文檔保存為主文檔 選種若干沖突文檔后運(yùn)行下面代理。這個(gè)代理把選種的沖突文檔保存為主文檔。

    dim s as new notessession

    set db=s.currentdatabase

    set dc=db.unprocessedDocuments

    set doc=dc.getfirstdocument '$conflict是沖突文檔的標(biāo)志

    call doc.removeItem("$Conflict") '得到?jīng)_突文檔的主文檔

    if doc.isResponse then

    Set Parent=db.GetDocumentByUNID(doc.ParentDocumentUNID)

    if parent.IsResponse then '如果文檔是答復(fù)的答復(fù)

    dim GrandParant as Notesdocument

    Set GrandParant=db.GetDocumentByUNID(Parent.ParentDocumentUNID)

    call doc.MakeResponse(GrandParent) else '$Ref 域是答復(fù)文檔的標(biāo)志

    call doc.RemoveItem("$Ref")

    end if

    end if

    call doc.save(True,True)  

    當(dāng)使用LS在后臺(tái)創(chuàng)建文檔的時(shí)候,表單中“合并復(fù)制沖突”選項(xiàng)無(wú)效,在文檔中加入下面代碼: doc.$Conflicts="1"  


    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 成**人免费一级毛片| 中文精品人人永久免费| 久久青草国产免费观看| 伊人久久综在合线亚洲91| 国产福利免费视频 | 亚洲一区二区影视| 日本片免费观看一区二区| 亚洲制服在线观看| 免费无码又黄又爽又刺激| 亚洲а∨天堂久久精品9966| 好大好深好猛好爽视频免费| 亚洲AV性色在线观看| 亚洲国产精品国产自在在线| 一级特级女人18毛片免费视频| 久久久久国产成人精品亚洲午夜| 99在线视频免费观看| 亚洲精品线在线观看| 亚洲三级高清免费| 亚洲AV日韩AV永久无码色欲| 亚洲第一视频在线观看免费| 中文字幕免费视频精品一| 亚洲精品福利视频| 好大好硬好爽免费视频| 免费无遮挡无遮羞在线看 | 1000部拍拍拍18免费网站| 亚洲午夜在线播放| 一本久到久久亚洲综合| a视频在线免费观看| 久久精品国产亚洲AV无码偷窥| 最近免费中文字幕视频高清在线看 | xxxxx做受大片视频免费| 亚洲国产成人私人影院| 免费A级毛片无码无遮挡内射| 亚洲国产精品无码观看久久| 国产亚洲av片在线观看18女人| 2020因为爱你带字幕免费观看全集 | 久久亚洲AV无码精品色午夜| 日韩免费一区二区三区| 精品国产免费一区二区三区| 亚洲精品在线免费观看| 亚洲精品网站在线观看不卡无广告 |