when i save a Notes Document in a XPage with computeWithForm="onsave" there is nothing computed at the form.
I thought that the computeWithForm Option trigger the "QuerySave" Event in the form, but am i wrong ?
I know that i could use the querySaveDocument Event at the Xpage DataSource, but there is a lot of lotusscript logic :-)
form:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE form SYSTEM 'xmlschemas/domino_9_0_1.dtd'>
<form name='testform' xmlns='http://www.lotus.com/dxl' version='9.0' maintenanceversion='1.9'
replicaid='C125827800263D1B' noquery='true' publicaccess='false' designerversion='8.5.3'
recalc='true' renderpassthrough='true'>
<code event='querysave'><lotusscript
>Sub Querysave(Source As Notesuidocument, Continue As Variant)
Dim doc As NotesDocument
Set doc = Source.Document
doc.test = "123"
Call doc.Save( True, False )
End Sub</lotusscript></code>
<body><richtext>
<pardef id='1' leftmargin='1in' hide='notes web' tabs='L6.9375in'/>
<par def='1'/>
<pardef id='2'/>
<par def='2'><run><font name='Verdana' pitch='variable' truetype='true' familyid='20'/><field
usenotesstyle='false' height='0.2500in' width='4.7243in' multiline='true'
borderstyle='single' type='text' kind='editable' name='title'/></run></par>
<par def='2'><field type='text' kind='editable' name='test'/><compositedata
type='98' prevtype='65418' nexttype='222' afterparcount='6' containertype='65418'
aftercontainercount='1' afterbegincount='3'>
Yg4BAIQAAAAAAAAAAAA=
</compositedata></par></richtext></body>
<item name='$$ScriptName' summary='false' sign='true'><text>testform</text></item></form>
Xpage:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:this.data>
<xp:dominoDocument var="document1" formName="testform" computeWithForm="onsave" />
</xp:this.data>
<xp:inputText value="#{document1.titel}" id="titel1" />
<xp:br></xp:br>
<xp:button value="save" id="button1">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
<xp:saveDocument var="document1" />
</xp:this.action>
</xp:eventHandler>
</xp:button>
</xp:view>
computeWithForm
only runs Input Translation and Input Validation formulas.
If you want to retain the LS logic, one option would be to move it to an agent (I believe you would need to change UIDocument classes to Document classes and re-code accordingly) and call the agent from XPages. It's not something I've done though, so I can't point you towards documentation.