Question
Raul Munoz · Apr 4, 2017

Extended Escape Sequences: Terminal scripts: question with scripting over Pop-Out boxes in the Terminal.

Hello,

I have been involved with using terminal scripts lately (I use GE Centricity Business), that usually do not go beyond 'send:' and 'wait for:' commands.  Notwithstanding, I have been stuck with the message boxes since the script recorder does not record over this whenever I need to click 'Yes' in a given message box prompt which aggressively stops my scripts/macros from continuing.  I know that this commands are labeled 'Extended Escape Sequences', but I have been looking all over at the Intersystems document repository with no luck in finding anything of the sort.  I have, however, found documentation on the basic commands of using regular terminal scripts in the following address: 'http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...'.  In any case, could someone help out in providing any feedback that could enable me to use some sort of terminal script or extended escape sequence command, for that matter, that could help me out in scripting a mouse click within the terminal?  

00
1 0 7 371
Log in or sign up to continue

Replies

If you are scripting you may want to consider setting your process as a "Batch User".  This is found in IDX DBMS system settings.   If you go down this path in your script code 

1. your process will not be sent any extended escape sequences but you will instead be sent terminal prompts which your script can react to

2. If your script is on a dbms form/selector you can use commands to interact with the dbms form/selector such as

|FILE|

|QUIT|

etc.  Those may not be the exact commands from my memory but I believe the extended help for the Batch Users field will show you all of the commands you script can send.

My method for dealing with the pop-up boxes is to not deal with them at all.

In IDXTerm, under the Edit menu select 'User Settings'.  In the window that appears change the 'Terminal Type' from "IDXTerm" to "Plain".  Click Save and Apply and start up a new session for good measure.

Changing this setting will prevent IDXTerm from responding to the extended control character sequences.  Anything that would have been displayed in a pop-up window will now be displayed in the terminal area itself, which will make it an easy target of the IDXTerm scripting language.

My experience has been that changing this setting makes IDXTerm scripting infinitely more useful for repetitive tasks.

Best of luck!

John

As an addenda, the scripting language in the 'Using Terminal Scripts' documentation that you linked to is essentially the same, if not identical to, the IDXTerm scripting language.  It appears that IDXTerm and CTerm have a common ancestor in their code bases.

Thank you sir

I tried changing the user settings to 'Plain' I am still getting the pop-out windows for some reason. 

Ok now I got it to work.  I will start testing it with no delay.  Thanks a lot John.

You would have to completely log off to see the settings take effect.  If you change this setting after already signed in the client knows you are in plain mode but the server does not.  It is during the process of signing in the server polls the terminal and determines this setting.