Autor Thema: Feldeintrag unique; keine doppelten Artikelnummern  (Gelesen 7620 mal)

Offline jens1979

  • Aktives Mitglied
  • ***
  • Beiträge: 115
  • Geschlecht: Männlich
Hallo mal wieder,

heute hab ich glaub ich 'ne ziehmliche Anfängerfrage. Ich habe eine kleine Produkt-DB geschrieben.
Mein Problem ist das ich eine Maske habe in die eich als erstes eine Artikelnummer eingebe und dazu einige Informationen.
Nun habe ich eine Ansicht in der ich die Produkte nach Artikelnummern sortiert aufgelistet habe. Wenn allerdings ein Artikel mit der Artikelnummer 1000 bereits vorhanden ist und ein neuer über die Maske eingepfliegt werden soll und dieser versehentlich wieder mit der 1000 abgespeichert wird, sind nun 2 Artikel in der Ansicht.
Das möchte ich unterbinden indem Notes den Datensatz des 2. Artikels gar nich speichert sondern zurückgibt das dieser bereits vorhanden ist.
Bzw. wäre die ideale Lösung das Notes anbietet entweder die Artikelnummer zu ändern oder den Artikel mit der eingegebenen zu öffnen und diesen zu bearbeiten.
Vorerst würde die erste Möglichkeit aber ausreichen.


Danke Jens

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #1 am: 09.12.03 - 13:29:11 »
... auf die schnelle ....

Mit LS per view.GetDocumentByKey( "Artikelnummer" , True ) versuchen das Dokument mit dieser Artikelnummer zu finden. Wenn vorhanden, dann öffen, ansonsten abspeichern...

Dim ws As New NotesUIWorkspace
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument

Set db = session.CurrentDatabase
Set view = db.getView("(ByArticel)") ' # 1. Spalte sortiert nach Artikelnummer
Set doc = view.GetDocumentByKey( "<deine Artikelnummer>" , True )

If doc Is Nothing Then
   ' # ... setzen der Feldwerte und abschließendes Speichern.

Else
   Call ws.EditDocument( true , doc ) ' # öffnen zum Bearbeiten
End if

ata
Grüßle Toni :)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #2 am: 09.12.03 - 13:37:14 »
Das funktioniert aber nur mit neuen Dokumenten - wird ein bereits vorhandenes editiert, dann heisst es: "In Ewigkeit - Amen !", sprach die Endlosschleife ;-)
Bernhard

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #3 am: 09.12.03 - 13:42:02 »
... mit Fehlermeldung sieht das dann eben so aus...

If doc Is Nothing Then
  ' # ... setzen der Feldwerte und abschließendes Speichern.

Else
  MsgBox "Es gibt bereits einen Artikel mit dieser Numer"
  Exit Sub ' # oder Exit Function - je nachdem
End if

ata
Grüßle Toni :)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #4 am: 09.12.03 - 13:47:02 »
Die Fehlermeldung behebt aber nicht das Problem. Wird ein bestehendes Dokument bearbeitet, gibt es immer einen Treffer mit GetDocumentByKey. Man kann nun einfach die UNIDs vergleichen, um festzustellen, ob es sich um das gerade aktuelle Dokument handelt oder um einen "Doppelgänger".

Bernhard

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #5 am: 09.12.03 - 13:54:09 »
Oder auf IsNewDoc überprüfen
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #6 am: 09.12.03 - 14:05:42 »
Dann muss man aber die Artikelnummer für bereits gespeicherte Docs unbearbeitet machen ;-)

Offline jens1979

  • Aktives Mitglied
  • ***
  • Beiträge: 115
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #7 am: 09.12.03 - 14:10:28 »
Hi

erstmal danke für die schnelle Hilfe.
Unbearbeitbar ist die Artikelnummer für bereits gespeicherte Dokumente ... da sollten also eigentlich keine Probleme auftreten.

Ich werd das mit dem Script jetzt gleich mal probieren und dann ein Feedback geben .... Danke erstmal.



Jens

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #8 am: 09.12.03 - 14:11:11 »
Du meinst unbearbeitbar? Oder dann auf Aenderungen angemessen reagieren.

Hat eigentlich jemand Erfahrungen mit der Vieh-Eigenschaft "Generate Unique Keys in Index (ODBX-Access)? Das ist doch im Grunde genommen dasselbe Problem, aber ich habs noch nie ausprobiert, was da geschieht.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #9 am: 09.12.03 - 14:13:36 »
Ok, hab grad selber mal nachgeschaut, offenbar wird da die Anzeige von Dupplikaten unterdrückt, ansonsten passiert nix, ist also nicht wirklich brauchbar -- meistens.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline jens1979

  • Aktives Mitglied
  • ***
  • Beiträge: 115
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #10 am: 09.12.03 - 15:07:10 »
Hab mich jetzt mal an den Script probiert.

Allerdings bekomme ich immer wieder die Fehlermeldung "Object variable not set" , hab hier im Forum schon ein bissel rumgeschaut aber nicht wirlkich was passendes für mich gefunden ... die Erklärung in der Designer Hilfe sagt mir auch nicht so viel ... hab Ihr vieleicht noch ne Idee woran das liegen könnte?

Danke Jens

Achja ich hab den Script erstmal nur zum Testen hinter ne Schaltfläche gelegt (falls Ihr die Info benötigt)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #11 am: 09.12.03 - 15:10:36 »
Bei solchen Meldungen immer den Debugger bemühen.
Und den ganzen Code posten.

Als alter Kaffeesatzleser: Stimmt der Name der Ansicht ?

Bernhard

Offline jens1979

  • Aktives Mitglied
  • ***
  • Beiträge: 115
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #12 am: 09.12.03 - 15:21:24 »
OK hier mal der Code

Sub Click(Source As Button)
   Dim ws As New NotesUIWorkspace
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   
   Set db = session.CurrentDatabase
   Set view = db.getView( "Artikelnummer" ) ' # 1. Spalte sortiert nach Artikelnummer
   Set doc = view.GetDocumentByKey( "12345" , True )
   
   If doc Is Nothing Then
      Messagebox "nicht vorhanden"
      
   Else
      Messagebox "vorhanden"

   End If
End Sub


Ich hoffe das hilft weiter

Offline jens1979

  • Aktives Mitglied
  • ***
  • Beiträge: 115
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #13 am: 09.12.03 - 15:51:09 »
OK die fehlermeldung kommt jetzt net mehr.

Es lag wirklich am Ansichtsnamen, ich verstehs zwar nicht, weil die Ansicht "Artikelnummer" vorhanden ist, aber ich hab jetzt den Namen auf "all" geändert und der Fehler bleibt weg.
Jetzt hab ich allerdings das Problem das er mir immer sagt "nicht vorhanden" egal ob die Artikelnummer drin ist oder nicht.

Jens

Offline jens1979

  • Aktives Mitglied
  • ***
  • Beiträge: 115
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #14 am: 09.12.03 - 18:03:31 »
Hallo nochmal,

mir ist da grad noch was aufgefallen, keine meiner Ansichten ist kategorisiert. Kann es damit zusammenhängen das ich immer das "nicht vorhanden" Feedback bekomme?

Wenn ja wie kategorisiere ich die Ansicht ... hat bis jetzt irgendwie nicht so einfach hingehauen ... d.h. ich bekomme immer wieder "nicht vorhanden".

Gruß Jens

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #15 am: 09.12.03 - 18:27:47 »
Nochmals: Was sagt denn nun der Debugger ? Du stocherst ja sonst im Nebel - und wir mit !
Wenn Du eine Ansicht "all" hast und damit der Fehler "Object variable not set" nicht mehr auftritt, dann heisst das im Umkehrschluss, dass Deine Ansicht "Artikelnummer" eben doch nicht vorhanden ist.
Kategorisierung ist überhaupt nicht erforderlich in diesem Zusammenhang - nur Sortierung der 1. Spalte. Aber Du schreibst ja, dass dies der Fall ist.
Deine Ansicht "all": Hat die überhaupt die Artikelnummer als erste sortierte Spalte ?

Bernhard

Offline jens1979

  • Aktives Mitglied
  • ***
  • Beiträge: 115
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #16 am: 09.12.03 - 18:37:42 »
in der Ansicht "all" hab ich nach der Artikelnummer sortiert.

Frage : Wie komme ich in den Script-Debugger (sorry das sind Grundlagen ich weiß aber ich fang grad mit LS an)

Jens

Offline MartinG

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.802
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #17 am: 09.12.03 - 18:40:21 »
Menü:  Datei - Extras - Debug Lotus Script...

Martin
Wir leben zwar alle unter dem gleichen Himmel, aber wir haben nicht den gleichen Horizont.
KONRAD ADENAUER

Offline jens1979

  • Aktives Mitglied
  • ***
  • Beiträge: 115
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #18 am: 09.12.03 - 18:40:28 »
OK hab den Debugger wieder .... das hat mich schon mal ne Stunde gekostet den zu finden ... sorry für die dämliche Frage ... geb gleich ein feedback

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Feldeintrag unique; keine doppelten Artikelnummern
« Antwort #19 am: 09.12.03 - 18:49:31 »
Zitat
in der Ansicht "all" hab ich nach der Artikelnummer sortiert

Jens, versuche bitte, so genau wie möglich Deine Probleme zu beschreiben (das hilft Dir immer auch gleich selber), und lies unsere Postings ganz genau.
Du schreibst, Du hast "all" nach der Artikelnummer sortiert. Ist die Artikelnummer aber auch die 1. Spalte ?
Steht in der Spalte dann auch wirklich das, was Du erwartest ?

Wir finden des Pudels Kern schon noch ;-)

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz