• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 293
  • Last Modified:

modifying .lss file and execute the code via LS agent

Is it possible to modify the .lss file in the background(on server) and then call functions/subs from any agent (one or multiple dbs) ?


1. keep modifying the content of codeexecution.lss file using AgentA that will write code from a notesdocument to the lss file.
2. AgentB will call the functions from codeexecution.lss

Note: i ve kept the function names (calling & called) the same in AgentB so that i don;t have to modify or resave AgentB.

Does it work this way ?

  • 3
  • 3
  • 3
1 Solution
No..You have to recompile with the new .lss file again

navgupAuthor Commented:
Can LSO file work instead ? How do you actually compile source to get a .LSO file?
navgupAuthor Commented:
Or is there a way via API to recompile .LSS file ?
Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.


You can always save and sign the design objects using c/c++ api.

Do a search and you can find some interesting topics/solns here
This bit might help you....

Lets say we have an lss file "c:\temp\extls.lss".
I created one that contained following code:

Sub LssCode(Text as String)
   Messagebox Text
End Sub

I call the file from this agent (manually, run once):

Sub Initialize
      Dim code As String
      Dim my_code As String
      Dim code_ret As Integer
      Dim cd As String
      cr = Chr$(10) + Chr$(13)
      my_code = Inputbox$("Please enter code to execute:", "Run-time compilation?")
      code = _
      "Option Declare" + cr + _
      "%include " + Chr$(34) + "c:\temp\extls.lss" + Chr$(34) + cr + _
      "Sub Initialize" + cr + _
      my_code + cr + _
      "End Sub"
      code_ret = Execute ( code )
End Sub

First thing is does is ask me to enter a line of code. This required compilation, doesn't it?
I entered:

      Call LssCode("Hello world")

The code is then fed into a sub, executed: a messagebox appears: "Hello world".

In short: it should be possible.....!
navgupAuthor Commented:

Thanks, What if i pass the file name as a static parameter and keep changing the code in the file and then want to run the agent on scheduled basis ?
The entire "code" is built dynamically in my example above.
I haven't tried, but I bet it'll work!

Good point this approach, instead of modifying an active lss! I had not seen the upcoming problems yet....  ;-))
CRAK.. the scope doesn't extend beyond the execute module.. execute module loads , compiles, runs and destroy and nothing is available out of this scope...

So navgup has to include all of his code inside a string and pass it to execute method. And I am sure there is a limit of how much data you can send to this method.
It looked promising though! But with that info, perhaps navgup can still find a way to archieve whatever he/she's trying to do....

From R5 designer help:

Number of lines per script or source file, not including the contents of %Include files: 64K
Depth of nested %Include directives: 16
Size of executable module code: limited by available memory
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

  • 3
  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now