2017-08-29 3 views
1

Ich bin neu mit Notes und LotusScript und ich habe ein Problem.LotusScript Erstellen Tabelle in RichTextItem

Ich muss eine Tabelle in einem Rich-Text-Element erstellen, ich habe eine "Aktion partagée" (vielleicht "shared action" in Englisch) verwendet. Mein Code wird ausgeführt, ohne dass ein Fehler zurückgegeben wird, aber meine Tabelle ist nicht sichtbar.

Sub Click(Source As Button) 
    On Error Goto errorhandler 

    Dim workspace As New NotesUIWorkspace  
    Dim session As New NotesSession 
    Dim db As NotesDatabase 
    Dim uidoc As Notesuidocument 
    Dim doc_bdl As NotesDocument  
    Dim table As NotesRichTextItem 
    Dim rtnav As NotesRichTextNavigator 

    ' création du document 
    Set uidoc = workspace.ComposeDocument("","","EXPEDITION") 
    Set doc_bdl = uidoc.Document 
    Set table = New NotesRichTextItem(doc_bdl,"rtTableau") 

    ' création du tableau 
    Call table.AppendTable(4, 3) 
    Set rtnav = table.CreateNavigator 
    Call rtnav.FindFirstElement(RTELEM_TYPE_TABLECELL) 
    Dim iRow As Integer 
    Dim iColumn As Integer 
    For iRow = 1 To 4 Step 1 
     For iColumn = 1 To 3 Step 1 
      Call table.BeginInsert(rtnav) 
      Call table.AppendText("Ligne " & iRow & ", Colonne " & iColumn) 
      Call table.EndInsert 
      Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL) 
     Next 
    Next 

    Exit Sub 

errorHandler: 
    Print Lsi_info(2) & " : " & Err & " (" & Error & ") ligne " & Erl 

    Exit Sub 
End Sub 

Ich habe gelesen, dass, um den Inhalt von Rich-Text-Elemente zu sehen, ist es notwendig, das Dokument zu aktualisieren. Also habe ich Beispiele in der Hilfe verwendet. Ich habe versucht, diese hinzuzufügen:

Call doc_bdl.Save(True, False) 
Dim ws As New NotesUIWorkspace 
Call ws.ViewRefresh 

Ich habe keine Fehler, aber ich sehe immer noch nicht meinen Tisch.

Ich versuchte dies:

Call doc_bdl.Save(True, False) 
Call doc_bdl.Refresh(True) 

ich diesen Fehler habe: "Illegale Verwendung von PROPERTY"

Kann mir jemand helfen? Vielen Dank im Voraus

PS: Englisch ist nicht meine Sprache, also bitte entschuldigen Sie meine möglichen Fehler, ich finde keine französischen Foren für Hilfe.

Antwort

1

Sie brauchen so etwas wie dies zu tun:

' Save your backend document with the updated RichText field 
Call doc_bdl.Save(True, False) 
' Open saved backend document as a uidoc 
ws.EditDocument(True, doc_bdl) 

Wenn Sie eine Tabelle mit Inhalt zu bauen, und Sie wissen nicht, wie viele Zeilen es wird (und/oder wenn Sie wollen mehr Kontrolle ov die Formatierung der Tabelle) können Sie diese Technik verwenden:

http://blog.texasswede.com/dynamic-tables-in-classic-notes/

+0

Danke. Ich versuche deine Lösung, aber ich sehe meinen Tisch immer noch nicht und jetzt habe ich das Standardformular, das geöffnet wird. Ich werde deinen Link sehen, der versucht, es zu verstehen. – Elehyan

Verwandte Themen