I am new to proiv and am looking at using function keys, is there a way to use undefined function keys, I am using v6.2 also if there is good tech docs that wouls be helpful as well.
Jump to content
Posted 10 November 2016 - 03:49 PM
Yes there is Paul. It is the primary method for defining events e.g. click a button/icon and then go do something.
The PROIV support documents are a bit cryptic but go to the following support website and search for topic 500167.
Programmer defined function keys run from 33 to 132 on version 6 (33 to 240 on version 8). They are defined at the cycle level (each cycle has its own set of 33 to 132) but !!! they can inherit down i.e. an inner cycle can 'inherit' the function keys of the parent/calling cycle if they are not overwritten at the child cycle level.
Making the assumption that you are using PROIV developer (VIP), open/create a screen function and navigate to statics. Define an icon/button and click on the Events tab within the properties. Enter a user-defined function key e.g. 33 and click on the function key icon to the right of the input. This will open up a function key properties dialogue. Select an action type e.g. Local Logic and define a suitable logic e.g. UMSG('hello world',-1). Gen and run.
Posted 14 November 2016 - 04:18 PM
So...in what context are you hoping to use function keys...as you cannot 'click' on anything to invoke an event. Can you provide a use case for the problem you are trying to solve.
Posted 14 November 2016 - 10:56 PM
Yes, that can be achieved. I need to do a little research as I have not worked in green screen for nearly 20 years. You should also read up on the FNKEYSTACK logic command (topic 500551), as this works in green screen as well and may be useful to you in the future.
Posted 16 November 2016 - 05:18 PM
I have done a little research and think I have an understanding of how it all works.
A feature exists that allows you to define up to 10 'user defined' function keys. They are actually not user defined as they are associated with the terminal type that is being referenced e.g. DECVT220.
These function keys, when defined, invoke the first 10 programmer definable function keys i.e. 33-42. As mentioned, they are defined in the terminal type characteristics definition screen which from memory is the $CRT function in the old green screen environment. i.e. run $CRT
I have attached a screen shot of what the terminal type user function key definition screen (tab) looks like in Developer for the terminal definition GUIDEV. These 'escape sequences' translate to the key combination CTRL and the number 1 through 10 respectively in this example. Thus is <CTRL>1 is pressed, function key 33 would be invoked and <CTRL>2 would invoke function key 34 etc. You can define them to be anything you want but I would recommend sticking with the <CTRL> as part of the definition e.g. you could define <CTRL>W to be the first escape sequence key (that internally invokes function key 33). Be careful as some are reserved, <CTRL>C being an obvious one.
Hope the above helps
0 members, 0 guests, 0 anonymous users