Need clarification on several topics

I’m finishing up an HL7 system for a client and before I move towards production I’d like to clear my brain fog on some basic Xojo issues; thanks in advance for any help and advice. I have a three tiered console/service system and a controlling desktop app. I’m trying to keep the console apps as lean and fast as possible. Each one is independent of the other and with minimal/no dependencies. My questions are pretty general Xojo stuff:

  1. If I have FolderItem properties in the App.Properties; are they instantiated when the App class is instantiated at startup or do they need instantiation before use?
    Example: I pull in config values for folders and files from an SQLite DB. Will App.property be set as “recordset.column(“folderpathandname”).StringValue” or “folderitemProperty = New FolderItem(recordset.column(“folderpathandname”).StringValue)”?

  2. In a Try-Catch-End Try, if it goes into Catch does the rest of the method run or does Catch auto-bail out? I’ve got a Return in the Catch right now when the Catch is fixable but I’m not sure if the rest of the code will run. For example if accessing the config.sqlite an exception is thrown I run a default-setting method; I’d like the method to then continue.

  3. I’ve got the folder structure and DB’s placed in the SpecialFolder.ApplicationData(Mac)/AppData(Win) space and the config and activity log in SpecialFolder.Applications(Mac)/Program Files(Win) space; the actual console apps in same but I think they should go elsewhere as console apps but can’t find docs specifying where. I need them to always auto start on computer start/restart.

  4. Running the console apps in debug mode they always open a terminal window. How do I prevent terminals from opening when they run?

Thanks again!

They won’t when you run them yourself. The IDE does that so you can see any output.

  1. I’ve got the folder structure and DB’s placed in the SpecialFolder.ApplicationData(Mac)/AppData(Win) space and the config and activity log in SpecialFolder.Applications(Mac)/Program Files(Win) space; the actual console apps in same but I think they should go elsewhere as console apps but can’t find docs specifying where. I need them to always auto start on computer start/restart.

Console apps are often special in this regard. In my case, I typically put any config in a file right next to the app, but I also find that most prefs actually come from the command line options.

If you have a catch for the type of exception that occurs, execution will continue afterwards unless you call Return.

  1. FolderItem properties will be Nil. You must instantiate them before you use them.
  2. If Try/Catch goes into the Catch portion and you do not return out of the method, the rest of the code will run.

Only if you do it in code.

I had a feeling that was the case, thanks for the confirmation!

Thanks, I’ve got an interface to the configs in the control desktop app…more user friendly for this install.

Great, had my suspicions, I will code accordingly.

Again, what I suspected but I’ll sleep better knowing.

That’s how I’ve proceeded, thanks for the confirmation.