12. januar 2003 - 22:56Der er
5 kommentarer og 1 løsning
Editmode
Hvad er det lige der er galt??? Min kode her knækker i den linie der er markeret med ***** (editmode = False) Dim workspace As New NotesUIWorkspace Dim uidoc As NotesUIDocument Set uidoc = workspace.CurrentDocument If ( UiDoc.EditMode ) Then Else Call workspace.EditDocument( True ) End If Call uidoc.GotoField( "Taskname" ) Call uidoc.SelectAll Call uidoc.Copy ********uidoc.EditMode = False Set uidoc = workspace.ComposeDocument _ ("", "", "AssignTo" ) Call uidoc.GotoField( "AssigneeTask" ) Call uidoc.Paste
Fejlen lyder på: Document command not available! Nogle forslag????
Hvorfor anvender du copy/paste til denne funktion. Det kunne jo være at brugeren havde noget brugbart liggende i udklipsholderen, så det er synd at overskrive denne.
Dim workspace As New NotesUIWorkspace Dim uidoc As NotesUIDocument Dim sTask as String sTask = workspace.CurrentDocument.Document.Taskname(0) set uidoc = workspace.ComposeDocument ("", "", "AssignTo" ) Call uidoc.FieldSetText( "AssigneeTask", sTask )
Jo, men ikke på kildedokumentet. Kildedokumentet må gerne være i ReadMode når du udfører min kode. Det nye dokument, som du opretter med COMPOSE, er jo allerede i EditMode og derfor virker InsertText/SetText. //Jörg
Jeg så lige at AssignTo formularen ligger i samme database som kildedokumentet. Så er det hele en helt anden sag. Feltet "AssigneeTask" skal være sat til "Computed when composed" og have Taskname som formel. Selve formularen skal være sat til "Formulas inherit values from selected document" i FormProperties. Det giver mulighed for at alle @formler kan trække på kildedokumentets data via dets feltnavne. Der er således ikke brug for noget kodning hvis de to dokumenter er i samme database.
Hvis formularen "AssignTo" lå i en anden database så kan du anvende de tidligere koder og nedenstående:
Hvis du anvender @Formula så gem oplysningen med @Environment og hent den frem igen med @Environment.
På kildeformularen skal du blot skrive: ENVIRONMENT TaskName := Taskname; @Command([Compose]; ""; "AssignTo"); På AssignTo-Formularen skal feltet AssigneeTask være af typen "ComputedWhenComposed" og have følgende formel: @Environment( "TaskName")
Jeg kan også vise noget LS kode, men det er vist nok ikke nødvendig. Du bør anvende "Formulas inherit values from selected document"
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.