Je travaille sur une application client Domino qui ouvre les documents dans un jeu de cadres.Domino 6.5 - ferme le document dans le jeu de cadres - ferme l'application
Lorsque je clique sur le bouton d'enregistrement, il fait une validation de script de lotus, ajoute au champ de l'histoire et etc, puis fait enfin une sauvegarde:
Sub Cliquez (Source Comme Button) Dim validate1 Comme validation Dim ws en tant que nouveau NotesUIWorkspace Dim de As New NotesSession
Dim uidoc Comme NotesUIDocument Dim approverNames As String Dim Workflow1 Comme workflow
Dim nom1 As String Dim names1 As String Dim item1 Comme NotesChamp Dim histoire1 Comme Histoire
Set uidoc = ws.CurrentDocument
Call uidoc.refresh
'===============================================
'Validation
'===============================================
Set validate1 = New Validation()
Call validate1.checkCustomer(uidoc.FieldGetText("Customer"))
Call validate1.checkEndUser(uidoc.FieldGetText("EndUser"))
Call validate1.checkShortProjectDescription(uidoc.FieldGetText("ShortProjectDescription"))
Call validate1.checkProjectName(uidoc.FieldGetText("ProjectName"))
Call validate1.checkProjectLocation(uidoc.FieldGetText("ProjectLocation"))
Call validate1.checkOperationCenter(uidoc.FieldGetText("BusinessUnit"))
Call validate1.checkSalesCenter(uidoc.FieldGetText("SalesCenter"))
Call validate1.checkMarketSegment(uidoc.FieldGetText("MarketSegment"))
Call validate1.checkSAPDate(uidoc.FieldGetText("SAPDate"))
Call validate1.checkRevision(uidoc.FieldGetText("Revision"))
Call validate1.checkValidityDate(uidoc.FieldGetText("ValidityDate"))
Call validate1.checkDateApproval(uidoc.FieldGetText("DateApproval"))
Call validate1.checkCurrencyUSD(uidoc.FieldGetText("CurrencyUSD"))
Call validate1.checkMargin(uidoc.FieldGetText("Margin"))
If validate1.displayErrorMessages() = 0 Then
'========================================================================
Call uidoc.FieldSetText("WhoHasApproved","")
Call uidoc.FieldSetText("ApproversNotified","")
Call uidoc.FieldSetText("SubmitDate",Cstr(Now))
Call uidoc.FieldSetText("Status","In Process")
'Add calls to workflow here....
Set workflow1 = New workflow("SAPFCD")
'Update History Field - Submitted for Processing by
Set history1 = New History(uidoc.Document)
Call history1.addTo("Submitted for Processing", uidoc.FieldGetText("CreatedBy"))
Set item1 = uidoc.Document.ReplaceItemValue("History" , history1.getDescription())
'Set ApproverList
names1 = workflow1.setApproverList(uidoc)
Call uidoc.FieldSetText("ApproverList",names1)
uidoc.Refresh
name1 = workflow1.setNextApprover(uidoc)
Call uidoc.FieldSetText("NextApprover", name1)
'========================================================================
'Add calls to workflow here....
Call uidoc.FieldSetText("Status","1st Peer")
uidoc.Save
uidoc.Close(True)
uidoc.Close(True)
End If
End Sub
et procède ensuite à fermer la base de données complète et retourne utilisateur à l'espace de travail.
Ce que je veux, c'est que le document soit sauvegardé, puis que l'utilisateur retourne à une page spécifiée dans le jeu de cadres.
Je tenté d'ajouter un code comme celui-ci à l'événement QuerySave, mais ne fonctionne pas:
Sous QueryClose (Source Comme NotesUIDocument, Continuer comme variante) Dim ws en tant que nouveau NotesUIWorkspace
ws.OpenFrameSet ("MainFrame ") ws.SetTargetFrame (" Main ")
ws.OpenPage (" Saved ") End Sub
Toutes les idées sur la façon dont je peux sauvegarder/fermer un document d'interface utilisateur qui est dans un jeu de cadre sans elle fermer la base de données entière.
Derek
fait quelques tests plus et vous pouvez insérer cette après la uidoc.save et de supprimer uidoc.close Appel ws.SetTargetFrame (« nom de votre cadre ici ») Appel ws.ComposeDocument (« », « », "votre nom de formulaire ici ",, False) – Carlos
On m'a demandé de mettre le document dans le cadre parce que les utilisateurs devenaient confus en ayant plusieurs documents ouverts ...J'ai continué à leur dire que c'est un problème de formation et c'est comme ça que le Mail fonctionne ... mais ils ne voulaient pas l'entendre ... – Derek