Autor Thema: In einer Ansicht suchen, ob Nummer schon vorhanden  (Gelesen 5499 mal)

Offline Selin

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 532
  • Geschlecht: Weiblich
Hallo,

ich hab ein Problem. Ich bin erst seit kurzer Zeit in der Programmierung von Notes. Ich habe eine Ansicht mit zwei Spalten. Name und Doc-ID.
In meiner Maske hab ich das Feld Name. Dort habe ich auch "versucht" einen DBLookup reinzuschreiben in der Eingabevalidierung, der rüft, ob der Name schon vergeben ist, wenn ja dann soll er eine Meldung ausgeben. Allerdings lässt er trotzdem zu, dass ich ein Dokument unter einem anderen Namen wie ein bereits bestehendes Dokument speichern kann.


Bitte um Hilfe    >:(
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Windows XP
Notes 6.5

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #1 am: 10.06.02 - 15:42:01 »
Hallo Selin,

habe diesen Lotus Script Code (Dank nochmal an Axel) als Seriennummerüberprüfung in einer HardwareDB eingebaut. Bau diesen Code in Deine Maske in den QuerySave Event. Erstelle Dir eine sortierte Ansicht mit dem zu durchsuchendem Feld.


Sub Querysave(Source As Notesuidocument, Continue As Variant)

    Dim session As New NotesSession
    Dim db As Notesdatabase
    Dim view As NotesView
    Dim doc As Notesdocument
    Dim strValue As String

    If Source.IsNewdoc Then
         strValue = Source.FieldGetText("zu prüfender Feldname")

         Set db = session.CurrentDatabase
         Set view = db.GetView("sortierte Ansicht des Feldnamen")

         Set doc = view.GetDocumentByKey(strValue, True)

         If Not (doc Is Nothing) Then
              Msgbox "Überprüfen Sie die Eingabe ",48,"Fehler: Dokument bereits vorhanden""
              Continue = False
         End If
    End If
End Sub

Bei mir funzt das schön.

Gruss
Bubble

« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Selin

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 532
  • Geschlecht: Weiblich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #2 am: 10.06.02 - 15:58:04 »
Hi Bubble,

danke erst einmal für deine Antwort
also irgendwie funktioniert das nicht.

Sollen hier in die Gänsefüsschen, die Werte rein??
muss ich den Spaltennamen in der Ansicht in setview setzen oder den eigentlichen Inhaltsnamen???

strValue = Source.FieldGetText("zu prüfender Feldname")

   
    Set view = db.GetView("sortierte Ansicht des Feldnamen")

   
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Windows XP
Notes 6.5

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #3 am: 10.06.02 - 16:02:57 »
Hi,

hier das ganze für die Eingabevalidierung.

So muss die Formel in der Eingabevalidierung aussehen:

@If (@DbLookup("":"NoCache"; ""; "Ansichtname"; Feldname; 1 ) = Feldname; @Failure("Dokument bereits vorhanden"); @Success)

Die Werte für Ansichtname und Feldname musst du entsprechend anpassen. Wobei der Name der Ansicht in Anführungszeichen stehen muss und der Feldname nicht.
Die Ansicht muss in der ersten Spalte die Werte des Feldes enthalten und die Spalten muss sortiert sein.

Ich hoffe das hilft dir weiter.

Axel
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #4 am: 10.06.02 - 16:17:31 »
Hallo,


laut Deiner Beschreibung heißt das Feld "Name" also

strValue = Source.FieldGetText("Name")  
 
Neue sortierte Ansicht erstellen z.B. DocName

Spalte zeigt die Werte des Feldes Name z.B.

AAA
BBB
CCC
     
Set view = db.GetView("DocName")

Gruss
Bubble  
 


« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Selin

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 532
  • Geschlecht: Weiblich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #5 am: 11.06.02 - 09:18:30 »
Also ich habe in der Ansicht eine Spalte dich cih aufsteigend sortiert habe. Dann habe ich in der Maske bei Querysave den Code reingeschrieben. Aber ich kann immernoch Werte unter dem bereits vorhandenen Titel speichern...

Die Ansicht, in der geprüft wird sieht der USer aber nicht. Also es ist eine andere Ansicht, wo ich z.B. die Auflistung der Dokumnete habe. Daran kann es nicht liegen, oder?
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Windows XP
Notes 6.5

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #6 am: 11.06.02 - 09:21:57 »
Hallo Selin,

schick mir mal Deinen modifizierten Code zu.

Bubble
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Selin

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 532
  • Geschlecht: Weiblich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #7 am: 11.06.02 - 09:30:51 »


Sub Querysave(Source As Notesuidocument, Continue As Variant)
     
     Dim session As New NotesSession
     Dim db As Notesdatabase
     Dim view As NotesView
     Dim doc As Notesdocument
     Dim strValue As String
     
     If Source.IsNewdoc Then
           strValue = Source.FieldGetText("Subject")
           
           Set db = session.CurrentDatabase
           Set view = db.GetView("All2")
           
           Set doc = view.GetDocumentByKey(strValue, True)
           
           If Not (doc Is Nothing) Then
                 Msgbox "Überprüfen Sie die Eingabe ",48,"Fehler: Dokument bereits vorhanden"
                 Continue = False
           End If
     End If
End Sub
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Windows XP
Notes 6.5

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #8 am: 11.06.02 - 09:32:00 »
Zitat
Die Ansicht, in der geprüft wird sieht der USer aber nicht. Also es ist eine andere Ansicht, wo ich z.B. die Auflistung der Dokumnete habe. Daran kann es nicht liegen, oder?


@Selin,

heißt das, das der User keine Rechte auf die Ansicht hat, oder das sie nur versteckt ist ? Ist die andere Ansicht, die du verwendest, entsprechend sortiert ?

Axel



« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Selin

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 532
  • Geschlecht: Weiblich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #9 am: 11.06.02 - 09:55:46 »
Die Ansicht in der geprüft wird ist einfach eine Ansicht, die ich nicht anzeige. Also keine Rechtebeschränkung.

Die Ansicht, die der USer sieht ist auch nach dem Titel (Subject) sortiert wie die andere Ansicht
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Windows XP
Notes 6.5

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #10 am: 11.06.02 - 10:04:19 »
Wie ist Sie denn gespeichert - als:


All2
dann Set view = db.GetView("All2")  
 
(All2)
dann Set view = db.GetView("(All2)")  
 

($All2)
dann Set view = db.GetView("($All2)")

Zugriff auf die Ansicht in der Regel Leser oder höhere.

Bubble  
 
 
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Selin

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 532
  • Geschlecht: Weiblich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #11 am: 11.06.02 - 10:08:58 »
All2
dann Set view = db.GetView("All2")  
   
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Windows XP
Notes 6.5

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #12 am: 11.06.02 - 10:15:46 »
Gut

in der Ansicht die Spalte Subject
Sortierung -> Aufsteigend
Typ -> Standard

ohne irgendwelche Häckchen.

Bubble
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #13 am: 11.06.02 - 10:19:52 »
Hi,

der Code sieht ok aus, wenn die Ansicht nach dem Subject-Feld sortiert ist auch ok. Dann sollte das Ganze eigentlich funktionieren.

Das einzigste was ich mir noch vorstellen kann, dass die Eingaben im Feld Subject, bei einem neuen Dokument, doch nicht 100% mit denen, von vorhandenen Doks übereinstimmen. Kann sich vielleicht ein Leerzeichen eingeschlichen haben, oder Groß-und Kleinschreibung?

Hast du den Code mal mit dem Debugger geprüft ?
Kannst du mir mal die Datenbank schicken ?

Axel
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Selin

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 532
  • Geschlecht: Weiblich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #14 am: 11.06.02 - 10:22:13 »
hab ich, funzt immer noch nicht
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Windows XP
Notes 6.5

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #15 am: 11.06.02 - 10:38:12 »
Hi,

schick mir mal die Datenbank, wenn das möglich ist. Vielleicht finde ich was.

Axel
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #16 am: 11.06.02 - 10:39:07 »
Zitat
Hi,

der Code sieht ok aus, wenn die Ansicht nach dem Subject-Feld sortiert ist auch ok. Dann sollte das Ganze eigentlich funktionieren.

Das einzigste was ich mir noch vorstellen kann, dass die Eingaben im Feld Subject, bei einem neuen Dokument, doch nicht 100% mit denen, von vorhandenen Doks übereinstimmen. Kann sich vielleicht ein Leerzeichen eingeschlichen haben, oder Groß-und Kleinschreibung?

Hast du den Code mal mit dem Debugger geprüft ?
Kannst du mir mal die Datenbank schicken ?

Axel


Schick mal die DB her.

Bubble
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline smajli

  • Junior Mitglied
  • **
  • Beiträge: 71
  • Geschlecht: Männlich
Re: In einer Ansicht suchen, ob Nummer schon vorha
« Antwort #17 am: 12.06.02 - 03:39:19 »
Hallo,
also bei mir funktioniert das Script einwandfrei.
Meine Frage:
Wie muss das Script lauten, damit bei jedem "Speichern" geprueft wird, ob ein Dokument mit dem entsprechenden Wert schon vorhanden ist.
Im Moment wird nur: "If Source.IsNewdoc" geprueft.
Gruss
Smajli
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
********************
Domino 5.0.8 auf SP6a
Notes 5.0.8;5.0.9 auf SP6a

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz