Autor Thema: "no document in that direction"  (Gelesen 7469 mal)

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.873
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
"no document in that direction"
« am: 04.09.06 - 15:11:59 »
Folgendes Szenario:

ich habe eine Maske, wo der Benutzer per Button bestimmte Informationen "optional" einblenden kann, und das auch im Lesemodus.

Da im Lesemodus weder "RefreshHideFormulas" noch ViewRefreshfields bzw. deren Script- Pendants funktionieren, habe ich folgenden hochkomplizierten Code verwendet:

@Environment( "SHOW_HEADER" ; "1" );
@Command([ViewSwitchForm] ; "Doc" )

Das funktioniert einwandfrei:
Ich öffne das Dokument aus der Ansicht, die Daten sind "versteckt".
Ich klicke den Button - Die Daten werden angezeigt (nur zur Info: die Umgebungsvariable wird von einem berechnet zur Anzeige- Feld sofort wieder zurückgesetzt, damit habe ich abgefangen, dass mehrere Dokumente in verschiedenen Stati geöffnet sein können).
Ich klicke einen anderen Button (setzt SHOW_HEADER auf "") und die Daten werden verborgen.

ABER: Öffne ich das Dokument nicht aus einer Ansicht, sondern über einen Hyperlink auf einer Seite (die als Einstiegsseite für die Datenbank angezeigt wird), dann erhalte ich den Fehler

"No Document in that direction"
oder
"Kein Dokument in dieser Richtung"

Die Datenbank hat eine Vorgabe- Ansicht und eine Vorgabe- Datenbankmaske.

Ansonsten wüsste ich nicht, wo ich noch suchen soll.

KB habe ich durchsucht, aber nix gefunden.

Hat jemand ne Idee ?

Tode
« Letzte Änderung: 05.09.06 - 17:21:19 von Tode »
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Glombi

  • Gast
Re: "no document in that direction"
« Antwort #1 am: 04.09.06 - 15:16:25 »
Arbeitest Du mit einem Frameset und Frames?

Falls ja, könnte es daran liegen, dass die Frames nicht die richtigen namen haben: NotesNavigation (für die Outline Page) und NotesView (für die Ansichten).

Damit hatte ich schon diverse komische Effekte.

Andreas

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.873
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: "no document in that direction"
« Antwort #2 am: 04.09.06 - 15:26:35 »
Danke erstmal für den Tipp.
Habs gleich ausprobiert. Das wars leider nicht.

Es ist aber halt auch keine typische Aufteilung:
Ich starte mit 2 Frames: Links die Navigation, über die die Ansichten rechts geöffnet werden können, und rechts (so lange keine Ansicht geöffnet ist) die "QuickAccess"- Seite für den direkten Zugriff auf bestimmte Dokumente.

in dieser Konstellation ist also gar keine View geöffnet, vielleicht ist das mein Problem...

Die QuickAccess- Seite lädt die Doks dann in einem neuen Fenster (nicht innerhalb der Rahmengruppe, das macht mir zu viele Scherereien...)

Ich werde mal versuchen. eine Ansicht in diese Konstellation mit aufzunehmen, vielleicht klappt es ja dann...

Für weitere Tipps wäre ich dankbar.

Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.873
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: "no document in that direction"
« Antwort #3 am: 04.09.06 - 15:44:03 »
So, Dein Tipp hat mich doch zu einer -zumindest temporären- Lösung gebracht:

Es ist tatsächlich so, dass der Befehl "SwitchForm" nur funktioniert, wenn eine Ansicht geöffnet ist. Dabei reicht es nicht, dass die Ansicht in einem X-Beliebigen Frame offen ist, sondern der Frame muss auch noch "NotesView" heissen.

Ich habe also (um nicht alles komplett über den Haufen schmeissen zu müssen) einen neuen Frame hinzugefügt, und diesen "NotesView" genannt, ihn aber nur 1 Pixel hoch gemacht. Damit klappt's erstmal.

Mal wieder eines dieser tollen "Features".

FAZIT:

SWITCHFORM funktioniert nur dann, wenn:

1. Das Dokument aus einer Ansicht heraus geöffnet wurde

oder

2. Wenn das Dokument aus einer Rahmengruppe heraus aufgerufen wurde nur dann,
wenn diese Rahmengruppe einen Rahmen Namens "NotesView" besitzt, und dieser eine Ansicht enthält (egal ob die Ansicht das Dokument, in dem man arbeitet anzeigt oder nicht.

Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.873
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: "no document in that direction"
« Antwort #4 am: 05.09.06 - 17:18:15 »
die von mir genannte Lösung hatte an anderer Stelle negative Nebenwirkungen, deshalb musste ich jetzt noch was anderes finden.

Ich habe aber jetzt eine bessere Lösung gefunden: Öffnet man VOR dem Öffnen des Dokumentes eine Ansicht, dann kommt der Fehler nicht.

Deshalb jetzt dieser Würgaround:

Öffnen des Dokuments:

   Dim blablablub und set blabla

   Set doc = viw.GetDocumentByKey( chapter , True )
   
   If doc Is Nothing Then
      Messagebox "Das Dokument für das Kapitel " & chapter & " konnte nicht gefunden werden" , 16 , "ABBRUCH"
   Else
      Call ses.SetEnvironmentVar( "CLOSE_IMMED" , "1" )
      Call uidb.OpenView( "VwByChapter" )         
      Call ws.EditDocument( False, doc )
   End If

und im PostOpen der VwByChapter:
   Dim ses As New NotesSession
   Dim x As String
   x = ses.GetEnvironmentString( "CLOSE_IMMED" )
   Call ses.SetEnvironmentVar( "CLOSE_IMMED" , "" )
   If x = "1" Then   
      Call Source.Close
   End If

ist zwar auch nicht schön, aber offensichtlich reicht es, dass das aufgerufene Dokument eine "referenz" zu einer Ansicht hat und damit das Switchform den beschriebenen Fehler nicht mehr bringt

vielleicht hilft das ja irgendwann mal jemandem was...

Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline dh-paule

  • Aktives Mitglied
  • ***
  • Beiträge: 199
  • Geschlecht: Männlich
  • DNUG Award 2006
Re: "no document in that direction"
« Antwort #5 am: 27.03.09 - 09:23:33 »
DANKE! mir hat es gerade eben geholfen
Life on earth may be expensive,
but it does include an annual free trip around the sun


_________________________________________________________

Offline Alex.

  • Frischling
  • *
  • Beiträge: 9
Re: "no document in that direction"
« Antwort #6 am: 30.08.12 - 17:27:40 »
Hi, über Google bin ich auf diesen Thread aufmerksam geworden (2. aus den Suchergebnissen).
Danke Tode für die Lösung.

Ich hatte das Problem: Ein Button in einer Maske, in dem ein @PostedCommand( [SwitchForm]; "...") ausgeführt wird. Dies führte zu der Fehlermeldung "no document in that direction", wenn der User das Dokument per DocLink öffnet.

Lösung: Im Button folgenden Code:
Code
	Dim ws As New NotesUIWorkspace
	Dim uidb As NotesUIDatabase
	Dim uiview As NotesUIView
	Dim uidoc As NotesUIDocument	
	Dim doc As NotesDocument
	Set uidb = ws.GetCurrentDatabase
	Set uidoc = ws.CurrentDocument	
	Set doc = uidoc.Document	
	Call uidb.OpenView("xyz")	'beliebige View der Datenbank
	Set uiview = ws.CurrentView
	Call uiview.Close
	Call uidoc.Close
	doc.Form = "formXYZ"
	Call ws.EditDocument( True, doc )

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.873
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: "no document in that direction"
« Antwort #7 am: 30.08.12 - 23:03:43 »
Leichenschänder  ;)
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz