Domino 9 und frühere Versionen > ND6: Entwicklung
Dokument wird morgens im Index nicht gefunden
botschi:
@Command( [ViewRefreshFields] ) aktualisiert ein Dokument oder eine Ansicht.
Guck Dir die Hilfe dazu nochmal an.
Wenn Du das hinter "@Command([CloseWindow]);" einfügst, könnte es vielleicht gehen.
Sicher bin ich mir aber auch nicht....
alexbeer:
Hi,
danke - mal wieder Scheuklappen aufgehabt...
Kann das heute leide rnicht mehr testen, am Montag werde ich schauen, ob es klappt.
Schoenes Wochenende
Alex
LN4ever:
Ich vermute, daß die Datenbank keine Vorgabeansicht hat oder in der Vorgabeansicht (blauer Pfeil im Designer) nicht die Dokumente angezeigt werden, die du per UNID öffnen willst.
Andererseits: in der lokalen Replik funktioniert es. Merkwürdig.
Schauen wir einmal weiter: Bisher ungeklärt ist die Frage, ob in deiner Schaltfläche das @DBLookup versagt (UNID="") oder ob die Entry nicht gefunden wird. Grundsätzlich sind aber alle COMMANDs - vor allem solche, de im Zusammenhang mit einem FILECLOSEWINDOW verwendet werden, als POSTEDCOMMANDS auszuführen, damit du die Kontrolle über die Reihenfolge behältst - und das Kommando sollte FILECLOSEWINDOW und nicht nur CLOSEWINDOW lauten.
Wenn man sich den Code dann noch etwas genauer anschaut, sollte es auch den Versuch geben, die Kommandofolge abzubrechen, wenn DBLOOKUP nichts oder einen ERROR liefert. Also z.B.
UNID := @DbLookup ("":"NoCache"; ""; "cidb"; @ProperCase(Candidate); 2;[ReturnDocumentUniqueID]);
@IF(UNID="" | @IsError(UNID);@Return("");NUL);
@PostedCommand([FileCloseWindow]);
@PostedCommand([GoUpLevel]);
@PostedCommand([OpenDocument]; ""; UNID)
Wenn auch das nichts hilft - vor allem, wenn UNID immer leer ist, dann mußt du die View eben öffnen, die du brauchst.
Z.B.
@If(@Subset(@DBName;1)!="";@Command([OpenView];"";CIDB");NUL);
UNID := @DbLookup ("":"NoCache"; ""; "cidb"; @ProperCase(Candidate); 2;[ReturnDocumentUniqueID]);
@IF(UNID="" | @IsError(UNID);@Return("");NUL);
@PostedCommand([FileCloseWindow]);
@PostedCommand([GoUpLevel]);
@PostedCommand([OpenDocument]; ""; UNID)
Gruß
Norbert
alexbeer:
Hallo,
danke fuer eure Hilfe.
Trotz dem Tipp von botschi trat heute morgen das Problem wieder auf. Ich werde nachher mal den Gedanken von LN4ever aufgreifen und euch das Ergebnis dann wissen lassen. Koennte mir aber vorstellen, dass das Oeffnen des Views die Loesung darstellt...
Werde das aber spaeter ausprobieren...
Alex
Update:
Ich habe die Aenderungen jetzt mal vorgenommen.
"Natuerlich" hatte ich die Vorgabeansicht auch NICHT definiert ... - danke nochmal fuer den Hinweis.
Ich kann von dem Ergebnis leider erst morgen frueh (deutsche Zeit: Nachmittags) wirklich berichten, da die besagt View jetzt einmal geoeffnet wurde und danach habe ich keine Probleme mehr... Ich hoffe, dass es auch morgen problemlos funktioniert. Werde es euch dann wissen lassen.
Eine Sache noch:
In der Formel von LN4ever ist ein " in der 1. Zeile vor CIDB zu wenig
Update 2
Mit dem Oeffnen der View vor dem Aufruf des Dokumentes klappt es jetzt. Jezt muss ich es nur noch hinbiegen, dass die View automatscih wieder geschlossen wird, da die eigentlich niemand zu gesicht bekommen soll...
LN4ever:
Was jetzt folgt, ist häßlich, sehr, sehr häßlich, weil FILECLOSEWINDOW immer ans Ende einer Sequenz verschoben wird, aber ich glaube, daß man mit einer @Do-Umklammerung auch das in den Griff bekommen kann, also:
1. Zeile wird
@If(@Subset(@DBName;1)!="";@Do(@Command([OpenView];"";"CIDB");NUL);@Command([FileCloseWindow));
Du öffnest die View und schließt sie gleich wieder. Ggf. mußt du im @DO mit @COMMAND und @POSTEDCOMMAND ein wenig probieren.
Wenn es partourt nicht klappen will (View bleibt offen, Dokument wird geschlossen), mußt du es in mehrere Agenten legen
Steueragent
Agent 1 für erste Zeile
Agent 2 für den Rest
Gruß
Norbert
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln