Have you ever seen your clients say : "Who needs this Lotus, it's sooooo sloooow, maybe we need to change it to another programm???"
I did. Then, I started to check why they think so and say so. What I found out was amazing. It really took them 30-40 seconds to enter forms, and more than couple of minutes to print documents - and don't think that document was too big - its size was around 50-60Kb. Imagine the speed of it.
So, I started to check what takes so much time.
What I found out amazed me - every field that has LotusScript - even one letter takes an additional 2K in version 4.6 and 2.5K in version 5. So, if you had some text in LotusScript in a field and just marked it as comment - it takes that much space anyway. So, when checking around, I saw the next thing - form & subform working in this project took together 1.8 Mb. So, basically, every time a user needed to work with forms - 1.8 Mb + 50-60Kb got passed online. (users had remote drives on central machine).
Every field that has LotusScript has 2 additional fields in the design document:
FieldName - describes field itself
$$FieldName - LotusScript Component of field.
$FieldName_0 - Compiled LotusScript of field.
What do they take?
$$FieldName - at least 562 bytes in version 4.5, going to 768 bytes in version 5 + actual size of your code.
$FieldName_O - at least 1.5 K in v4.6, going up to 2.2K in version 5 + actual size of your compiled script.
What I found out - and we had hundreds of fields in the form+subform combination, that couple of techniques pay off really good.
1. Delete all unnecessary code from your LotusScript. It will give you an automatic boost of 2K*number of fields, at least.
2. If you have same function in couple of fields - put it in Globals, and call to it. Search the ways to put 2 functions together, even maybe with more parameters, and put them in the same function if you can. Cut all code from fields - put only an functional call.
3. Check using form parameters to see what fields it still uses that have $FieldName_O type - you will be able to see all fields that still have remnants of LotusScript code - try to recreate them.
4. Change whenever you can from LotusScript to @Formula. It will give you some boost.
5. If you have fields that some users should be able to edit and some not - use hide-when and create computed text in next paragraph - this method works great in tables, and makes forms much shorter.
6. Create another version of the form for printing - and cut all fields from it using method that you can get from me - email@example.com - I will gladly send you code for it that will not make you need to work on 2 versions, but will allow you to do so much easier.