Autor Thema: @Unique in Skript  (Gelesen 1950 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
@Unique in Skript
« am: 11.02.03 - 13:55:20 »
Hallo Leute,

ich möchte, das Werte in einem bestimmten Feld (DOC_ID) eindeutig sind.
Dazu habe ich eine View sortiert nach diesem Wert eingerichtet.
Die Doc_ID ist ein String der Länge 32

Leider liefert meine Funktion immer 0 zurück.
Wo ist mein Denkfehler ?

Ciao

Don Pasquale

Function DoesDOC_IDexists(DOC_ID As String) As Integer
   
Dim VIEW_BY_DOC_ID As String
VIEW_BY_DOC_ID   = "DOC_ID"
Dim Anzahl As Integer
Dim session As New NotesSession    
Set db = session.CurrentDatabase
Set view = db.GetView(VIEW_BY_DOC_ID)
Set dc = view.GetAllDocumentsByKey(DOC_ID, True)
   
Print DOC_ID
ANZAHL = dc.Count
   
If ANZAHL = 0 Then
 DoesDOC_IDexists = 0
Else
 DoesDOC_IDexists = 1
End If
End Function
« Letzte Änderung: 11.02.03 - 14:43:07 von Don Pasquale »

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:@Unique in Skript
« Antwort #1 am: 11.02.03 - 13:58:35 »
Könnte daran liegen dass der Key nicht definiert ist.
Dennoch arbeitet die Funtkion nicht einwandfrei,
wie gut ist denn das GetDocumentsbyKey ?
Die funktion liefert 131 mal false zurück statt 274 mal ?
Gibt es da Bugs ?
pascal
« Letzte Änderung: 11.02.03 - 14:20:46 von Don Pasquale »

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:@Unique in Skript
« Antwort #2 am: 11.02.03 - 14:07:19 »
... du übergibst im Kopf der Funktion Doc_ID - wie ziehst du dir den Wert - mit doc.UniversalID oder mit uidoc.GetFieldText("Doc_ID") ?

ata

Grüßle Toni :)

Offline forrest g

  • Aktives Mitglied
  • ***
  • Beiträge: 130
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:@Unique in Skript
« Antwort #3 am: 11.02.03 - 14:07:51 »
... da fehlt erstmal folgendes...
dim dc as notesdocumentcollection

die suchfunktion sucht nach dem String "Doc_ID"

du musst das ändern in:
Set dc = view.GetAllDocumentsByKey(DOC_ID, True)

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:@Unique in Skript
« Antwort #4 am: 11.02.03 - 14:11:42 »
@forrest_g

... korrekt... *blinzel*

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:@Unique in Skript
« Antwort #5 am: 11.02.03 - 14:14:46 »
@Forrrest g

Das mit dem
Set dc = view.GetAllDocumentsByKey(DOC_ID, True)
hatte ich auch schon gemerkt ,
ob das dim dc etwas ausmacht ?

Die DOC_ID ist NICHT die UniversalID.

Die Doc_ID hole ich aus einer SQL Datenbank mittels
DOC_ID = Cstr(Res.GetValue("DOC_ID"))                

ciao

Don Pasquale

Offline forrest g

  • Aktives Mitglied
  • ***
  • Beiträge: 130
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:@Unique in Skript
« Antwort #6 am: 11.02.03 - 14:26:39 »
hallo don pasquale,

also der Suchwert(DOC_ID) ist doch in einem Feld gespeichert?
das hast du doch oben geschrieben...(?)

dann solltest du auch nach diesem wert suchen(egal, dass das nicht die unid ist) und nicht nach dem stringwert in deiner formel(VIEW_BY_DOC_ID   = "DOC_ID")

ist die erste spalte der view sortiert?
« Letzte Änderung: 11.02.03 - 14:30:31 von forrest g »

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:@Unique in Skript
« Antwort #7 am: 11.02.03 - 14:33:20 »
@Forrest

Vielen Dank,
jetzt klappt´s


Ciao

Don Pasquale
« Letzte Änderung: 11.02.03 - 14:42:51 von Don Pasquale »

Offline forrest g

  • Aktives Mitglied
  • ***
  • Beiträge: 130
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:@Unique in Skript
« Antwort #8 am: 11.02.03 - 14:46:15 »
hi don pasquale,

also das mit der anbindung an die sql-db kenne ich nicht genau...,
aber...

-deine view muss in der ersten spalte sortiert sein nach DOC_ID
-du muss mit nach dieser id suchen mit
Set dc = view.GetAllDocumentsByKey(DOC_ID, True)
... sag mal, hast du dein erstes posting bearbeitet...,
denn du hattest doch als suchwert VIEW_BY_DOC_ID eingetragen und das war ein string(VIEW_BY_DOC_ID   = "DOC_ID"), der nicht gefunden werden konnte...   (?!)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz