Autor Thema: Parameter aus Profildocauslesen  (Gelesen 1919 mal)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Parameter aus Profildocauslesen
« am: 12.02.04 - 09:32:12 »
Hallo Leute,

ich hatte keine Lust mehr ständig in meinem Code dutzende
von zeilen zu haben, nur um einen parameter aus dem
Profildokument zu ziehen.

In meinem Code steht jetzt nur noch :

GesuchterParameter = getParam("GesuchterParameter")

Die Funktio sieht so aus und lässt sich beliebig erweitern,
oder was meint Ihr ?

Function getParam( PARAM As String) As String

' Funktion um Parameter aus dem ProfilDokument auszulesen
Dim PROFILDOC As String
PROFILDOC = "Options" ' Name der Form
   
' PARAMETER
' NAME : Name von was weiss ich
' PFAD : Pfad zu irgendeiner Datei

Dim pdoc As NotesDocument
Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase   
Set pdoc = db.GetProfileDocument( PROFILDOC )    
   
PARAM= Ucase$(PARAM)
   
Select Case PARAM
      
Case "NAME"   :  getParam = pdoc.WilderFeldname(0)    
Case "PFAD"    :  getParam = pdoc.GanzWilderFeldname(0)

Case Else  :   getParam = "False"
      
End Select
   
End Function



Das ist so banal, vielleicht habe ich deswegen nirgendwo
im Forum bisher gesehen.

Ciao
Don Pasquale
« Letzte Änderung: 12.02.04 - 11:04:40 von Don Pasquale »

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Parameter aus Profildochauslesen
« Antwort #1 am: 12.02.04 - 09:43:33 »
... wenn du nur mit diesem einen Profildokument arbeitest, dann wäre das OK...

ata
Grüßle Toni :)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Parameter aus Profildochauslesen
« Antwort #2 am: 12.02.04 - 10:11:13 »
Was wäre denn möglich ?
Ein Profildoc für die DB und eines für jeden User.
oder ?

Ciao
Don Pasquale

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Parameter aus Profildochauslesen
« Antwort #3 am: 12.02.04 - 10:18:51 »
... ich hätte mich an die möglichen Parameter des @GetProfileField gehalten, dann hast du es volldynamisch...

Toni
Grüßle Toni :)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Parameter aus Profildochauslesen
« Antwort #4 am: 12.02.04 - 10:28:35 »
"Beliebig zu erweitern" - das würde ich hier auf jeden Fall empfehlen, dann so funktioniert das ja nur mit Bezug auf ein bestimmtes ProfileDoc.
Vorab: Wenn das ProfilDoc nicht vorhanden ist - was ja passieren kann - geht Deine Routine baden.
ALso:
If pdoc Is Nothing then
   '-> definierten Fehlercode setzen
   Exit Function
End If

Vorschläge zur Erweiterung:
Parameter der Function aufbohren:
- Name des ProfileDocs
- Name des Users (ist dies ein Leerstring, wird das ProfileDoc dann nur mit dem Maskennamen geholt)
- Name des auszulesenden Items

Rückgabewert der Function: Variant (und immer ein Array)

Definierte "Garantie-Antwort" (für RTF):
Dim aResult (0 to 0) as Variant
DeinFunctionName = NULL  (das ist der Fehlerwert der Function)

GetItem und Prüfung auf item Is Nothing (wenn ja - exit)

Wenn item = RTF:
aResult (0) = doc.GetItemValue ...
DeinFunctioName = aResult  (so kriegen wir auch hier ein Array zurück!)

Wenn nicht RTF:
DeinFunctioName = doc.GetItemValue ...


Das mal nur so als ein paar Überlegungen ;-)

HTH,
Bernhard

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Parameter aus Profildochauslesen
« Antwort #5 am: 12.02.04 - 10:34:04 »
... da die Übergabe der gewünschten Felder als Array erfolgt, sollte die Rückgabe aber als 2-dimensionales Array - es könnten Mehrfachwerte in den Profilfeldern vorliegen - erfolgen...

... dann könnte man noch einen Parameter "get" und "set" verwenden, damit man mit einer Funktion ausliest und setzt...

ata
Grüßle Toni :)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Parameter aus Profildochauslesen
« Antwort #6 am: 12.02.04 - 10:39:46 »
Ich würde - wie GetProfileField - nur ein Item pro Funktionsaufruf auslesen. Und wegen möglicher Listwerte bzw. eben weil GetItemValue sowieso ein Array zurück liefert, habe ich ein garantiertes Array als Rückgabewert vorgeschlagen.

Bernhard

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Parameter aus Profildochauslesen
« Antwort #7 am: 12.02.04 - 10:41:52 »
... mein Gedanke war auf einen Rutsch alles zu holen, was ich benötige, übersichtlicher ist sicher dein Weg...

ata
Grüßle Toni :)

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Ohne Computer wären wir noch lange nicht hinterm Mond!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz