Jump to content

Can someone provide a link to all Dialog Manager documentation ie. the subtleties of coding etc. ?


Ian Dalton

Recommended Posts

Right. A Dialogue Manager variable value of zero and blank are considered be the same. In fact, any variable value that evaluates to 0 is treated as equal to a blank. So values like +0 and -0 equate to a blank. All of the following are EQ to one another and EQ to blank:

0

0.

.0

0.0

+.00

.00-

+

-

and so on.

Link to comment
Share on other sites

I think it could be more comprehensive, but here is the primary doc:

🕮 Developing Reporting Applications - Chapter 5 - Managing Flow of Control in an Application

Most all of the functions listed in the Functions Manual can be used (Martin provided link).

Around page 70, see Calling a Function From a Dialogue Manager Command.

App Studio Manual has some info.

🕮 App Studio User's Manual - Chapter 5 - Creating Procedures / Using Dialogue Manager

🕮 App Studio User's Manual - Chapter 6 - Creating HTML Pages / Using Parameters

Link to comment
Share on other sites

Hi guys

Just to cook the ol' noodle a little. In WF 91 (Reporting Server Gen 2553).....

Try this for fun. Think the 0000's are the ony issue? Put a 'dd mmm yyyy' date in the variable for entertainment:

-SET &ECHO=ALL;-DEFAULT &LOCN = '26 Aug 2023'-*-DEFAULT &LOCN = '0000'-DEFAULT &LOC = 'ZZZZ'-TYPE LOCN =&LOCN LOC = &LOC -SET &GFLATNO = IF '&LOCN.EVAL' EQ ' ' THEN '&LOC.EVAL' ELSE '&LOCN.EVAL';-TYPE Loc No. &GFLATNO -* Now we remove the .EVAL from the left side of the EQ test and it'll evaluate like you'd expect:-SET &GFLATNO = IF '&LOCN' EQ ' ' THEN '&LOC.EVAL' ELSE '&LOCN.EVAL';-TYPE New Loc No. &GFLATNO 

The first IF test uses .EVAL on the left side of the relationship and evaluates incorrectly. The bottom IF test without the .EVAL on the left evaluates properly.

This is being addressed by the product division. It seems to have changed between version 8207 and 9.1. Lots of the code I inherited makes too much use of .EVAL and this could bite us.

Walter tells me that the date I put in there (the 26th of august) is being evaluated to a zero for some reason in 9.1 when we use .EVAL.

He also suggested using ASIS which fixes this, but more interesting to me is that I can remove .EVAL from the left side and the code is happy. Go figure.

Also Ian - you're over using -RUN. We can talk about this more in another thread or something. -RUN kicks off the things on the 'focstack' (this is the code that isn't dialog mgr - like TABLE FILE or MATCH FILE...). It also closes any open files. But otherwise, it generally isn't needed as often as I see you using it.

Dialog Manager commands (with the - in front) are executed right away as your focexec is being processed - they don't need a -RUN.

Maybe think of it this way:

DM commands happen right away at the end of every DM statment.

Non DM commands like TABLE FILE ... get batched up into a 'stack' and they pile up there. the reporting server doesn't do anything with them until WF sees a -RUN or it hits the end of a focexec.

So it's sort of like batch processing the non DM commands and it's 'interpreting' the DM statements as it goes along.

Every now and then, seemingly for no specific reason, adding a -RUN will fix some problem you encounter. It does a little more than just close open files and cause the focstack to be executed. So it's worth a try to stick one in your code if something isn't working, but maybe take it back out if it's not helping.

With that said, I guess it doesn't hurt to use -RUN as often as you like. Usually the same goes for .EVAL Old guys like me will be more sparing about when we bother to use -RUN or .EVAL.

Link to comment
Share on other sites

Thanks Toby for your comments - interesting re .EVAL as we have it dotted about in our code here at Lloyd's too. Also I'm glad Walter is a fan of ASIS too as it does the trick. I take note of your comments re -RUN - I do use them to much but didn't realize DM commands are run right away. Good to know !!

Link to comment
Share on other sites

Not that I know of. IBI has not informed me that this issue has been resolved.

We're on 9.1.0. Are your servers on 9.1.1?

Thanks!

Link to comment
Share on other sites

Hi Toby, Yes I think I do over use -RUN but as you say it does fix things from time to time. We are on 9.0.04. I have also had a few issues with .EVAL. In addition, we've found you need to often put SET BYDISPLAY=OFF (which I thought was the default) in lots of programs to avoid the SORT field being repeated unnecessarily.

Link to comment
Share on other sites

For whatever it is worth, I am able to reproduce the issue when I run the code provided by Toby.

? REL

EDA9100 Release * Current Software:

EDA9100 Release RELEASE = 9.1.0

EDA9100 Release GEN_NUM = 2553

EDA9100 Release SOURCE_DATE = 10/23/2022 00:56:23

EDA9100 Release BUILD_DATE = 10/30/2022 02:56:42

EDA9100 Release INSTALLATION_DATE = 3/7/2023 11:22:40

Link to comment
Share on other sites

I will let you guys know when / if I get an update from the product division on this.

Thanks for confirming that you guys also see the issue!

Link to comment
Share on other sites

  • 8 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...