Solved

Call External Program from Navigator item or Shortcut

  • 1 December 2021
  • 3 replies
  • 260 views

Userlevel 6
Badge +12

Hey all,

I have had good success with using our external integration program (a C#/.NET application) by calling it from RMB Custom Menus where appropriate. It can run command-line modules as well as display UI-based functionality to enrich end-user’s client experience.

Some integrations I am creating, however, would be better to call directly from a Shortcut or Navigator item (I am talking about IEE). Is there a way to call an External Program from a Navigator item or Shortcut the same way a Custom Menu can call an external program? Seems like it should be doable, but I am not seeing it.

Alternately (or additionally), is there a way to call an External Program from a Lobby? We are starting to use Lobby lists to also act as navigation aids, so being able to summon the external program from there would also be of great use.

 

Thanks,

Joe Kaufman

icon

Best answer by Sajith D 1 December 2021, 23:20

View original

This topic has been closed for comments

3 replies

Userlevel 7
Badge +21

Hi Joe,

 

Adding an external program as a navigator item or a shortcut would pretty much follow the same process as adding in a new navigator item to an existing application page or custom page. You simply dump the path to the executable and any parameters directly in the address. 

Did a basic test with a simple CMD to see whether it will work.

 

 

 

Cheers

Userlevel 6
Badge +12

Sajith,

“Application Page” works...cool. I should have tried it, first.

I need it to work with a parameter, though (so it calls the integration exe in the right mode), and am having issues. Parameters appears to be ignored, because it thinks it is calling the “program” as a URL. It turns the “Address” into a file:// type of URL entry point, in fact.

Any idea how to call an external program with parameters? I would also need the SID of the current database otherwise it will be a risky call! I am hoping something like #SID# can work? Or whatever the SID of the current database is. I did not build that into my external program, but of course need to.

 

Thanks!

JoeK

Userlevel 6
Badge +12

Hey all,

Unfortunately, I have been unable to get parameters working in this scenario, so this functionality will be of limited use to us. Using the file:// protocol in Windows does not support parameters (according to my research), and even if it did, I doubt I could get the database SID to pass through.

I can create wrapper programs to call the integration executable with the parameters I need, but would need to hardcode the IFS environments of DEV, TEST, and PROD. And if someone called the wrong executable, they could be adding parts to PROD when they think they are just playing in DEV or TEST -- too risky. Custom Menus are more controllable in this way, and they allow the use of system variables so that hard-coded parameters do not cause issues when we clone PROD to our other environments.

Thanks for the help, though -- it at least got us closer!

 

Thanks,

Joe Kaufman