Autor Thema: Maske wechseln aus dem Front End?  (Gelesen 3217 mal)

Offline sculer

  • Aktives Mitglied
  • ***
  • Beiträge: 117
Maske wechseln aus dem Front End?
« am: 16.11.05 - 17:09:46 »
Hi,

mal eine Frage, wie würdet ihr eine Maske wechseln, wenn dieses Dokument offen ist (Front End).
Bzw. wie hieß der Befehl, den man in die Ansicht schreiben kann, so dass alle Dokumente mit einer best. Maske geöffnet werden?
Ich weiß, dass es diesen Befehl gibt, jedoch hab ich mich mittlerweile ziemlich duslig gesucht!!

Kann mir da jemand helfen!!

mfg

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Maske wechseln aus dem Front End?
« Antwort #1 am: 16.11.05 - 17:30:24 »
mal eine Frage, wie würdet ihr eine Maske wechseln, wenn dieses Dokument offen ist (Front End).
Bzw. wie hieß der Befehl, den man in die Ansicht schreiben kann, so dass alle Dokumente mit einer best. Maske geöffnet werden?
Ich weiß, dass es diesen Befehl gibt, jedoch hab ich mich mittlerweile ziemlich duslig gesucht!!

Moment, das sind jetzt aber zwei ganz unterschiedliche Sachen: Wenn Du eine Maske für ein Dokument, das bereits im FrontEnd geöffnet ist, wechseln willst, ist das etwas vollkommen anderes, als wenn Du in einer Ansicht das Dokument mit einer anderen Maske, als es gespeichert (!) wurde, öffnen willst.

Wir brauchen hier mehr Informationen über Dein Vorhaben, um da genaueres sagen zu können. Helfen können wir bestimmt, aber mehr Input - mehr Output.

Bernhard

Offline sculer

  • Aktives Mitglied
  • ***
  • Beiträge: 117
Re: Maske wechseln aus dem Front End?
« Antwort #2 am: 16.11.05 - 19:27:40 »
Also ursprünglich will ich im FrontEnd einfach auf eine Aktion klicken, dabei wird alles gespeichert der Status und die Maske verändern sich!
Das Dokument rutscht in eine andere Ansicht und der Käse ist gegessen.

Das Problem, das ich habe ist, dass ich es nicht hinbekomme dieses Feld Form mit einem anderen Wert zufüllen.
Bei dem Befehl :
Call uidoc.fieldsettext("Form",".... ") schmeißt er einen Fehler.
Und bei
doc.Form="...."
übernimmt er es nicht wiklich, obwohl es ím Debugger drinsteht.

mfg

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Maske wechseln aus dem Front End?
« Antwort #3 am: 16.11.05 - 19:32:39 »
Die Änderung des Systemfeldes "Form" kann nur im Backend erfolgen. Wenn danach noch das QuerySave der Form ausgeführt wird, landet wieder der Formname im zugehörigem Item (das wird hierbei IMMER entsprechend des Maskennamens gesetzt).

Du kannst den Prozess also nur pur ins Backend verlegen. Da ich nicht weiss, was sonst noch so im Button oder danach passiert, ist es jetzt schwer, Ratschläge zu geben. Ich kann Dir nur versichern: Die Aufgabe ist lösbar  ;)

Bernhard

Offline sculer

  • Aktives Mitglied
  • ***
  • Beiträge: 117
Re: Maske wechseln aus dem Front End?
« Antwort #4 am: 16.11.05 - 19:48:28 »
Danach soll das Dokument geschlossen werden, daher denk ich auch, dass es lösbar ist.

Offline sculer

  • Aktives Mitglied
  • ***
  • Beiträge: 117
Re: Maske wechseln aus dem Front End?
« Antwort #5 am: 16.11.05 - 19:50:00 »
Deswegen wollte ich dies auch darüber lösen, indem ich der Ansicht sage, mit welcher Maske man das Dokument öffnen soll. Daher auch die Frage, wie der Befehl dafür war.

Danke im voraus
mfg

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Maske wechseln aus dem Front End?
« Antwort #6 am: 16.11.05 - 20:01:05 »
Wenn Du erzwingen willst, dass eine Ansicht ein Dokument mit einer bestimmten Maske öffnet, brauchst Du für die View nur eine "Maskenformel" angeben (in Anführungszeichen). Das setzt dann aber voraus, dass dieses Dokument nur über die Ansicht erreichbar wäre.

Bernhard

Offline sculer

  • Aktives Mitglied
  • ***
  • Beiträge: 117
Re: Maske wechseln aus dem Front End?
« Antwort #7 am: 16.11.05 - 20:30:07 »
Hm, dies ist natürlich auch etwas Doof.

Dann lieber per Script den Eintrag im Script ändern.
Aber gibt es dazu vielleicht irgendwelche ideen, wie dies am besten aussehen kann, so das Funktioniert.

Wie gesagt, nach dem Script wird das Dokument eh geschlossen.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Maske wechseln aus dem Front End?
« Antwort #8 am: 16.11.05 - 20:35:03 »
Wenn noch Änderungen im FrontEnd gemacht sein können:
- FrontEnd-Doc speichern
- SaveOptions auf "0" (damit keine dummen Fragen mehr kommen)

Danach im Backend (!) Form umsetzen und Backend-Doc speichern. An sich sehr einfach, wenn die Rahmenbedingungen hierfür so passen.

HTH,
Bernhard

Offline sculer

  • Aktives Mitglied
  • ***
  • Beiträge: 117
Re: Maske wechseln aus dem Front End?
« Antwort #9 am: 16.11.05 - 20:39:43 »
Dies hab ich auch schon probiert, aber damit ich es richitg verstehe, kannst du es bitte evtl. als Script mal hinschrieben!

Ich hab dies so probiert:
   Call uidoc.save
   Call uidoc.close
   Set doc = uidoc.Document
   doc.Status="..."
   doc.Form="...."
   Call doc.Save(True,False)

Hat aber auch nicht so funktioniert.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Maske wechseln aus dem Front End?
« Antwort #10 am: 16.11.05 - 21:10:32 »
Wo setzt Du das Form-Item ? Wo setzt Du das Item "SaveOptions" ? Steckt Dein Code im Button ?

Bernhard

Offline sculer

  • Aktives Mitglied
  • ***
  • Beiträge: 117
Re: Maske wechseln aus dem Front End?
« Antwort #11 am: 16.11.05 - 21:15:48 »
SaveOption hab ich noch nicht gesetzt, macht aber doch in diesem FAll nichts, da es ja nur die Aufforderung zum Speichern unterdrückt, oder?
Und warum soll ich dies mit dem item machen?
doc.form=
ist doch eine eindeutige zuweisung, welche auch funktioniert (Debugger).  Jedoch setzt er es aber dann doch wieder auf dem Maskennamen zurück.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Maske wechseln aus dem Front End?
« Antwort #12 am: 16.11.05 - 21:23:16 »
Ich habe absolut keine Ahnung, was Du da treibst ...

Dieser schnell hingeklimperte Code in einem Button funktioniert ohne weiteres:
Code
Sub Click (Source As Button)
	
	Dim ws As New NotesUIWorkspace
	Dim uidoc As notesUIDocument
	Dim doc As NotesDocument
	
	On Error Goto ErrorRoutine
	
	Set uidoc = ws.CurrentDocument
	Set doc = uidoc.Document
	
	Call uidoc.Save
	doc.SaveOptions = "0"
	Call uidoc.Close
	
	doc.Form = "0 - AnotherForm"
	Call doc.Save (True, False, True)
	
	Exit Sub
	
ErrorRoutine:
	Call ErrorHandler ("'Form 0 - löschen'")
	Exit Sub
End Sub

Bernhard

PS: Das mit dem Item vs. Feld hast Du sicher nur missverstanden - wir dealen ja hier mit Items und nicht mit Feldern. Das heisst aber noch lange nicht, dass wir diese extra als NotesItem instantiieren müssen. Backend kennt keine "Felder" ;-)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz