Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Spalter am 29.11.07 - 09:56:36

Titel: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: Spalter am 29.11.07 - 09:56:36
 :-:

Hallo zusammen,

gibt es eine Möglichkeit, die Feldbezeichnungen und Feldeigenschaften aus einem Dokument einzulesen, ohne im Designer nachzuschauen - per Agent z.B.?

Zu Fuß kann man das ja in den Eigenschaften des Docs nachschauen.

Gruß
Spalter
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: m3 am 29.11.07 - 09:59:26
DXL?
notesDocument.Items ?
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: DAU-in am 29.11.07 - 10:00:57
notesdocument class und notesitem class?
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: klaussal am 29.11.07 - 10:05:02
... hab ich mal in grauer Vorzeit gebastelt als Krücke:

Code
Dim richText As New NotesRichTextItem(docnew,"richText")
	
	Dim rtpStyle As NotesRichTextParagraphStyle
	Dim pos As Long
	Dim interval As Long
	Set rtpStyle = session.CreateRichTextParagraphStyle
	Call rtpStyle.SetTabs(5, 567*3 , 567*4 , 2)
	Call richText.AppendParagraphStyle(rtpStyle)
	
	Forall i In doc.Items
		
		strfeldname = i.Name
		If strfeldname <> "$Fonts" And strfeldname <> "Kontaktmail"  And strfeldname <> "DawText"  And strfeldname <> "Druck" And strfeldname <> "Sonstiges" Then				
			Set item = doc.GetFirstItem( i.Name )
			Forall v In item.Values
				itemtype = item.Type
				
				subj = doc.GetItemValue( i.Name )
				
				Call richText.AppendText( "Feld   :   " & strfeldname)
				Call richText.AddTab(2)
				'Call richText.AddNewLine( 1 )
				Call richText.AppendText( "Inhalt :   " & v )
				Call richText.AddNewLine( 1 )	
				Call richText.AppendText( "Typ    :   " & itemtype)
				Call richText.AddNewLine( 2 )
				
			End Forall
		End If
	End Forall

Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: Spalter am 29.11.07 - 10:11:36
 :)

Danke Euch für die schnellen Antworten.

Werde ich mal ausprobieren und dann berichten.

Gruß und schönen Tag
Spalter
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: Spalter am 08.12.07 - 22:26:11
 O0

Hallo zusammen,

habe das Problem jetzt folgendermaßen gelöst:

Sub Initialize
      Dim session As New NotesSession
      Dim db As NotesDatabase
      Dim Feldstr As String
      Set db = session.CurrentDatabase
      Dim form As NotesForm
      Set form = db.GetForm("1")
      Felder = form.Fields


      For i = 1 To 132
      'Forall field In form.Fields
            Feldstr = Felder(i)
            On Error Goto Errhandle
            Select Case form.GetFieldType(Feldstr)
            'Select Case form.GetFieldType(field)
            Case AUTHORS : fieldType = "Authors"
            Case DATETIMES : fieldType = "DateTime"
            Case NAMES : fieldType = "Names"
            Case NUMBERS : filedType = "Number"
            Case READERS : fieldType = "Readers"
            Case RICHTEXT : fieldType = "Rich text"
            Case TEXT : fieldType = "Text"
            Case Else
                  fieldType = "Other " & form.GetFieldType(Feldstr)
            End Select
            'Messagebox fieldType,, Feldstr
      Next i
      'End Forall

Errhandle:
      Messagebox "Anzahl der Felder:" + i,, i
      Exit Sub

End Sub

Ich habe auf das Forall-Statement verzichtet, weil das ganze aus Excel heraus als Macro starte.

Gruß
Spalter
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: eknori (retired) am 09.12.07 - 09:23:06
oder mit http://www.maysoft.com/web3.nsf/page/products-document_viewer-overview
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: Spalter am 09.12.07 - 12:06:42
 :)

Hallo Ulrich,

danke für den Link. Das wäre dann aber eine Notes-interne Lösung - oder?

Gruß
Spalter
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: WernerMo am 09.12.07 - 12:28:35
Hallo ?Spalter?

Ja das ist eine (sehr praktische) Notes/Domino Datenbank.

Grüße aus Weißenburg (nach 91174 Spalt?)
Werner

---edit---
Nachtrag/Frage:
Gilt das immer noch?: In Spalt, in Spalt, da wern de Leid so alt, die .....
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: eknori (retired) am 09.12.07 - 12:40:50
Zitat
aber eine Notes-interne Lösung - oder?
ja, denn ein
Zitat
ohne im Designer nachzuschauen
impliziert nicht, daß es sich nicht um eine Möglichkeit handeln könnte , die nicht nicht Notes basierend ist ... ;D
Titel: Re: Einlesen der Feldbezeichnungen und Eigenschaften
Beitrag von: LN4ever am 25.12.07 - 12:04:38
Lieber Spalter,

mit deiner Lösung holst du dir die Feldnamen und Feldeigenschaften eines Gestaltungselements (der Maske "1"), nicht aber die Feldnamen und -eigenschaften eines Dokuments.

In dem Dokument können noch weitere Felder enthalten sein und vor allem: vielleicht haben die Dokument-Felder ganz andere Eigenschaften. Schau dir nur einmal in einem Dokument ein nicht ausgefülltes Datumsfeld an.

Und wenn jemand in der Maske einmal eine Feldeigenschaft umgestellt hat, dann kannst du das nur über die Dokumente, die vor und nach der Umstellung damit erzeugt wurden, herausfinden. Dafür ist dein Ansatz so nicht brauchbar.

Also Vorsicht - und das Tool von Mayflower ist dort Gold wert. Vor allem, wenn dein Programm aus unerfindlichen Gründen an bestimmten Dokumenten scheitert.

Gruß

Norbert