Milan | refresh |
| v LN6 mam dva formulare z jedneho formulara zmenim hodnotu v druhom formulari pomocou LS: Dim session As New NotesSession Dim db As NotesDatabase Set db = session.CurrentDatabase Dim view As NotesView Dim doc As NotesDocument Set view = db.GetView( "wiZmenyIndex" ) Set doc = view.GetDocumentByKey("1") "Najdi index "1" ktorému je pridelena X hodnota ..."
Do While Not ( doc Is Nothing ) Call Doc.ReplaceItemValue("Index","2") "zmeni pole index na "2" ktorému je pridelena Y hodnota..." Call Doc.Save(True, False) Set Doc = docselected.GetNextDocument( Doc ) Loop
Pole Index sa nahradi "2", ale priradena hodnota k indexu ostane povodna t.j. X az pokial nezeditujem dokument v ktorom mam vypocitavane pole "Nazov" s funkciou: @DbLookup("":"NoCache";"":"";"Pohlad"; Index;1)
V ciselniku je: 1 => X 2 => Y
poradte mi ako refresnut vypocitavane polia pomocou LS v dokumente bez toho aby som editoval dokument rucne... dakujem
|
VZ | Přepočítat i s formulářem ... |
01.04.2014 14:01:58
ID: 3552.1
| ... pomocí doc.ComputeWithForm(...) |
milan | refres |
04.04.2014 08:06:22
ID: 3552.2
| dakujem, je to OK... ale je to dost pomale pri ukladani....
este raz dakujem
milan |
VZ | Rychlost |
04.04.2014 10:45:38
ID: 3552.3
| Ta rychlost záleží na tom co všechno se musí na formuláři přepočítat a jakým způsobem. Když je na formuláři hodně vypočítávaných polí, které třeba dohledávají info z jiných DB pomocí @DBLookup, tak je vypočítání přes ComputeWithForm o dost rychlejší, když to provádí nějaký agent přímo na serveru. Jinak je možné jen těch pár souvisejících políček vypočítat přímo ve skriptu, aby se to nemuselo přepočítávat všechno. |