Autor Thema: dokument existiert, wird aber nicht gefunden.  (Gelesen 2669 mal)

Offline Grmpf

  • Frischling
  • *
  • Beiträge: 34
dokument existiert, wird aber nicht gefunden.
« am: 05.02.07 - 14:24:26 »
hallo,


folgendes problem :

in einer dokumentenabfrage eines agenten(manueller start) wird von x documenten in der ausgewählten Ansicht immer nur die erste hälfte der dokumente gefunden(fehlermeldung : Object variable not set).

zB. bei 4 dokumenten werden nur die ersten 2 gefunden . bei 8 die ersten 4.


-ansicht ist sortiert
-zaehler sind nach überprüfung richtig, und werden nirgendwo anders im code geändert
-alle notwendigen variablen sind deklariert
-Ansicht.EntryCount gibt die korrekte Anzahl der dokumente zurück!!

Habe alles was ich weiß probiert, und mir sämtliche variablen ausgeben lassen, komm aber nicht drauf :(
 


BEISPIEL : in der ansicht "viewxyz" befinden sich 4 dokumente
die variablen inhalte habe ich entsprechend im codebeispiel mit "//" abgetrennt.

Code
...
Set view = db.GetView("viewxyz")

zaehl = view.EntryCount //Wert = 4

For i=1 To zaehl
Set doc = view.GetNthDocument(i)

// Sobald auf den inhalt eines dokuments zugegriffen wird welches
// die hälfte von "zaehl" überschreitet kommt --> Object Variable Not Set
// in diesem Fall bei i = 3 und i = 4 
// view.EntryCount gibt korrekterweise 4 zurück.....

If Not doc Is Nothing Then

     Messagebox "Doc is not Nothing"
     
     //änderungen/speicherung am aktuellem doc
     ...


End If

Next
...



ich hoffe ich konnte mein problem ordentlich beschreiben;)


freue mich über jeden hinweis !


danke im vorraus
matze


Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #1 am: 05.02.07 - 14:32:29 »
Hast Du dir mal angeschaut wie GetNthDocument funktioniert?

Warum machst Du nicht

Set doc = view.GetFirstDocument

while not doc is nothing

 ...
 ...
 ...

 set doc = view.GetNextDocument(doc)


wend
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

Offline Grmpf

  • Frischling
  • *
  • Beiträge: 34
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #2 am: 05.02.07 - 14:37:51 »
hab ich schon probiert.

GetFirst - und Getnextdocument..... verursachen die gleichen fehler , sobald auf das 3. dokument (im obigen beispiel) zugegriffen werden soll..

EDIT : es sieht so aus , als ob das document an der stelle einfach nicht existiert für notes...

Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #3 am: 05.02.07 - 14:39:57 »
Dann sag ich mal:

Bau ein Errorhandle ein um die Stelle zumindest erstmal einzugrenzen.
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #4 am: 05.02.07 - 14:41:30 »
Ändert sich die Position des Dokuments in der Ansicht durch Änderung am Dokument selbst?

Bernhard

PS: Bitte verwende Grossbuchstaben - das lässt sich dann leichter lesen.

Offline Grmpf

  • Frischling
  • *
  • Beiträge: 34
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #5 am: 05.02.07 - 14:52:39 »
der fehler tritt genau an der stelle meines kommentars(im obigen codebeispiel) auf, sobald ich auf eins der dokumenten - inhalte zugreifen will ..
zB. Messagebox Cstr(doc.GetItemValue("Title")(0))     // ist bei jedem der 4 docs befüllt!


die fehlermeldung tritt ja deswegen auf, weil immer die dokumente der sortierten ansicht nicht gefunden werden welche die erste hälfte überschreiten..

bei 4 documenten eben --> doc 3 und doc 4 in der sortierreihenfolge


... auf doc 1 und doc 2 kann ganz normal zugegriffen werden.

Offline Grmpf

  • Frischling
  • *
  • Beiträge: 34
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #6 am: 05.02.07 - 14:57:12 »
Entschuldigung. Dein Post kam während ich am nächsten geschrieben habe.

Ok . Ich versuche mich an Groß-/Kleinschreibung zu halten ;)


Am Aktuellem Dokument wird tatsächlich eine Statusänderung durchgeführt, wodurch es aus dieser Ansicht rausfällt. Hatte mir auch schon überlegt, das das der Fehler sein könnte...


Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #7 am: 05.02.07 - 14:58:04 »
Sorry, mit meinen Kaninchenaugen überlesen.
Da wäre dann noch der Hinweis von Bernhard interessant.
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #8 am: 05.02.07 - 15:01:33 »
Schonmal hinten angefangen?  ;D
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #9 am: 05.02.07 - 15:07:26 »
Das ist dann der sogenannte ADT-Fehler. GetNextDocument bezieht sich immer in Bezug auf das Dokument, was gerade instantiiert ist.
Du musst daher entweder ein AutoUpdate der View ausschalten oder - einfacher - das GetNextDocument gleich am Anfang machen und das gearde instantiierte Dokument vorher in eine weitere Instanz packen:
Set docToProcess = doc
Set doc = view.GetNextDocument (docToProcess)
und jetzt erst ändern und speichern.

Wenn allerdings auf diese Weise sowieso ALLE Dokumente aus der Ansicht fallen, dann kannst Du ja auch immer mit GetFirstDocument oder GetLastDocument arbeiten, bis dieses Nothing ist.
Oder eine Collection bilden und darüber ein StampAll ausführen  ;)

Bernhard

Offline Grmpf

  • Frischling
  • *
  • Beiträge: 34
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #10 am: 05.02.07 - 15:31:01 »
Danke, das hat mir schon den Wink in die richtige Richtung gegeben :)

Ich hab das jetzt dadurch gelößt bei einer Änderung eines Dokuments entsprechend der Zähler aktualisiert wird, und so nicht mehr ins Leere zeigt.


grüße
matze

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: dokument existiert, wird aber nicht gefunden.
« Antwort #11 am: 05.02.07 - 15:37:17 »
Dann arbeitest Du immer noch mit GetNthDocument? Das wäre die denkbar unperformanteste Lösung.
Das mit der Zählermanipulation halte ich für unsicher.

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz