 |
SoftTree Technologies
Technical Support Forums
|
|
Author |
Message |
Sven Opitz
Joined: 02 Dec 2005 Posts: 11
|
|
Some quirks |
|
Hi, some quirks, that I don't really like: 1. If you try to fill an excel file during a job, then the job has to end before that, if the excel file has cells with DDE-Links in it, that link to a programm not found on your computer. That cost me days... 2. Database Profiles are saved in the registry and are not exported 3. Exporting the job database exports only the holidays of the actual year... 4. For no apparent reason all options are saved in HKEY_LOCAL_MACHINE, that is really unnecessary, as the programm can now only be run by a user with write access there, although there is no reason for this 5. After changing the holidays table for the actual year, you need to restart 24x7. I don't know why this is, but a test job of mine, that worked with holidays ran amok, sometimes finding the new holiday, sometimes not. Kudos for highlighting script library scripts, though Sven
|
|
Thu Apr 13, 2006 6:20 am |
|
 |
Sven Opitz
Joined: 02 Dec 2005 Posts: 11
|
|
Re: Some quirks |
|
: some quirks, that I don't really like: Oh, one bad bug, too: If you delete the semaphore file after run, that only works, if the file has no asterisk (*) in name... But @V"file" doesn't work, too, so that is some really bad bug Sven
|
|
Thu Apr 13, 2006 6:56 am |
|
 |
SysOp
Site Admin
Joined: 26 Nov 2006 Posts: 7966
|
|
Re: Some quirks |
|
Sven, Thanks a lot for your feedback. For every point you made I can offer a solution. Just couple of notes, 24x7 is often run as a service. So as you know HKEY_LOCAL_SYSTEM is the only place where a service can read its values. Database profiles and other "profiles" are not exported using job database export becasue they are considered part of the system options just like queues, agents, etc... There is a set of functions available in 24x7 that can be used for tthis export task. Version 4 will offer a much more robust calendaring functions, Multi-platform Java version 4.0 will be available next week. For other issues please let me know what you want to do and I will suggest how that can be done. : Oh, one bad bug, too: If you delete the semaphore file after run, that only : works, if the file : has no asterisk (*) in name... : But @V"file" doesn't work, too, so that is some really bad bug : Sven
|
|
Thu Apr 13, 2006 8:22 am |
|
 |
Sven Opitz
Joined: 02 Dec 2005 Posts: 11
|
|
Re: Some quirks |
|
: Thanks a lot for your feedback. For every point you made I can offer a : solution. Thanks for the fast answer! Some points: 1.) The database profile should be exported, too, at least an empty one, that makes rollout easier. If an empty profile is exported it should not overwrite an existing one. Right now, it is easy to forget to roll out database profiles. 2.) Holidays should be completely exported, I created all easter holidays for some years to come, but only the one of the actual year is exported. 3.) Restarting 24x7 after inserting holidays is bad, forget it and you are in hell, that is a real bug. 4.) I have a job, that starts an excelfile with auto exec. The excel file fills itself with data from a database, but that only works, if no 24x7 job is currently running. If there is a job running, the excel import stops at the first imported DDE link. It only starts again, when there is no job running. If during the import another job starts, excel stops immediately again. 5.) The @V"file" macro is very useful for jobs, that start, because a specific file is found, but it doesn't work and is not known to the JAL validator. 6.) Semaphore file should be deleted after the job is finished. That only works, when the filename is completely known. If you use an asterisk in the filename it doesn't work. It took me quite a lot lines of jal to work around 5 and 6. 7.) If you use the SendMail command, there is no way to escape the @ symbol, that leads to leads to very strange situations, if the mail address is something like for example "1234@werty.com", as the @w macro is executed. These are quirks and bad bugs. I hope, they will be fixed in 4.0. Thank you Sven Opitz
|
|
Thu Apr 13, 2006 9:10 am |
|
 |
SysOp
Site Admin
Joined: 26 Nov 2006 Posts: 7966
|
|
Re: Some quirks |
|
1.) Maybe I am missing something here, but exporting the entire registry key will do everything "HKEY_LOCAL_MACHINE\SOFTWARE\SoftTree Technologies, Inc.\24x7 Scheduler\3.0" What do you mean by empty profiles? 2.) I agree here. This is not good. If you use "Show all dates" on the holidays dialog, it will unhide all other years, which in turn will allow you to export all dates. 3.) Restart is not really required. 4.) I believe this is an Excel limitation. 5.) It is only available in on-start notification action script. On the other had you can alwasy use Dir or DirEx cmmand to geth the same list of files. 6.) That is how it currently designed to work, you can always replace it with a command line action on the job finish, something like cmd /C del "my file path\file mask*.txt" 7.) Use @@. It is documented in the help. Thanks for the input. I added #5 and #6 to the enhancment request list. : Thanks for the fast answer! Some points: 1.) The database profile should be : exported, too, at least an empty one, : that makes rollout easier. If an empty profile is exported it should not : overwrite an existing one. Right now, it is easy to forget to roll out : database : profiles. : 2.) Holidays should be completely exported, I created all easter holidays for : some years to come, but only the one of the actual year is exported. : 3.) Restarting 24x7 after inserting holidays is bad, forget it and you are in : hell, : that is a real bug. : 4.) I have a job, that starts an excelfile with auto exec. The excel file : fills : itself with data from a database, but that only works, if no 24x7 job is : currently running. : If there is a job running, the excel import stops at the first imported DDE : link. : It only starts again, when there is no job running. If during the import : another : job starts, excel stops immediately again. : 5.) The @V"file" macro is very useful for jobs, that start, because : a specific file is found, : but it doesn't work and is not known to the JAL validator. : 6.) Semaphore file should be deleted after the job is finished. That only : works, when the : filename is completely known. If you use an asterisk in the filename it : doesn't work. : It took me quite a lot lines of jal to work around 5 and 6. : 7.) If you use the SendMail command, there is no way to escape the @ symbol, : that leads to : leads to very strange situations, if the mail address is something like for : example : "1234@werty.com", as the @w macro is executed. : These are quirks and bad bugs. I hope, they will be fixed in 4.0. : Thank you : Sven Opitz
|
|
Thu Apr 13, 2006 2:00 pm |
|
 |
Sven Opitz
Joined: 02 Dec 2005 Posts: 11
|
|
Re: Some quirks |
|
: 1.) Maybe I am missing something here, but exporting the entire registry key : will do everything : "HKEY_LOCAL_MACHINE\SOFTWARE\SoftTree Technologies, Inc.\24x7 : Scheduler\3.0" I will do that. : What do you mean by empty profiles? An empty Profile, as a reminder, that the database configuration has to be completed. At the same moment, you already have the correct Profilename, as the empty profile should have the name of the needed profile(s). I think of it as a kind of default database profiles. : 3.) Restart is not really required. It shouldn't be, but I got bad results when checking my holiday routines, after inserting test holidays. They were sometimes found and sometimes not. After restarting 24x7 (without code changes, I didn't know, what else to try) it worked. : 4.) I believe this is an Excel limitation. Could it be, that 24x7 opens an DDE Server when it runs a script? That excel behaviour has never occured here before. It just is a problem, that excel simply stops doing anything, if it tries to fill a cell with a dde formula, while a job is running. : 5.) It is only available in on-start notification action script. On the other : had you can alwasy use Dir or DirEx cmmand to geth the same list of files. Yes, but that gives strange results, if in the meantime additional files, which fit the expression are created in the directory. : 6.) That is how it currently designed to work, you can always replace it with : a command line action on the job finish, something like cmd /C del : "my file path\file mask*.txt" Same problem as above. This should be told to the user, if he enters a name with an expression, and tries to set automatic delete before/after running. That one got me cold, as suddenly a job ran again, that wasn't supposed to run again, as the semaphore file was scheduled to be deleted. : 7.) Use @@. It is documented in the help. I didn't see that, sorry. : Thanks for the input. I added #5 and #6 to the enhancment request list. Thanks very much.
|
|
Wed Apr 19, 2006 9:01 am |
|
 |
Sven Opitz
Joined: 02 Dec 2005 Posts: 11
|
|
Re: Some quirks |
|
Oh, yes and one more point: You should make a big warning in the help file for the ifthen function. Noone expects that to be equal to "If FALSE then", at least no programmer. I always stumble at this point. In every programming language "if something then" means "if something=true then". That is against the grain and should be mentioned clearly. Thanks
|
|
Wed Apr 19, 2006 9:21 am |
|
 |
SysOp
Site Admin
Joined: 26 Nov 2006 Posts: 7966
|
|
Re: Some quirks |
|
3) Please ensure "Show all" option is checked on the Holiday window. This may look like a bug, but it really a stupid-design issue. 4) Yes, it does open internal DDE server with a different name. But Windows supports multiple concurrent DDE servers so this should not be an issue. You may want to try DDE Spy or similar tool to see what is going on there. DDE Spy comes standard with many Microsoft development tools. If you have Visual Studio look in the Microsoft Visual Studio Tools folder. 5) Agree, this is indeed quirky. 6) Agree, this could be done better. Thanks again for your input. It will help us to improve the product. : I will do that. : An empty Profile, as a reminder, that the database configuration has to be : completed. : At the same moment, you already have the correct Profilename, as the empty : profile should have the name of the needed profile(s). : I think of it as a kind of default database profiles. : It shouldn't be, but I got bad results when checking my holiday routines, : after inserting test holidays. : They were sometimes found and sometimes not. After restarting 24x7 (without : code changes, I didn't know, what else to try) it worked. : Could it be, that 24x7 opens an DDE Server when it runs a script? That excel : behaviour has never occured here before. : It just is a problem, that excel simply stops doing anything, if it tries to : fill a cell with a dde formula, while a job is running. : Yes, but that gives strange results, if in the meantime additional files, : which fit the expression are created in the directory. : Same problem as above. This should be told to the user, if he enters a name : with an expression, and tries to set automatic delete before/after : running. : That one got me cold, as suddenly a job ran again, that wasn't supposed to : run again, as the semaphore file was scheduled to be deleted. : I didn't see that, sorry. : Thanks very much.
|
|
Wed Apr 19, 2006 9:51 am |
|
 |
SysOp
Site Admin
Joined: 26 Nov 2006 Posts: 7966
|
|
Re: Some quirks |
|
"If FALSE then" is not supported. Every line in JAL consists of a statement and parameters. IfThen(condition_variable, if_true_then_jump_to_label) If(condition_variable, if_true_then_jump_to_label_1, if_false_then_jump_to_label_2) or IfThen condition_variable, if_true_then_jump_to_label If condition_variable, if_true_then_jump_to_label_1, if_false_then_jump_to_label_2 In JAL you can use brackets, spaces or commas as token separators. JAL is a batch language which is not designed to replace structured scripting languages. For a structured scripting language you can use VBScript (in 24x7 Windows version) or JavaScript (in 24x7 Multi-platform version). The last one is both structured and object-oriented. Hope this helps. : Oh, yes and one more point: You should make a big warning in the help file : for the ifthen function. : Noone expects that to be equal to "If FALSE then", at least no : programmer. : I always stumble at this point. In every programming language "if : something then" means : "if something=true then". That is against the grain and should be : mentioned clearly. : Thanks
|
|
Wed Apr 19, 2006 10:01 am |
|
 |
Sven Opitz
Joined: 02 Dec 2005 Posts: 11
|
|
Re: Some quirks |
|
: "If FALSE then" is not supported. Every line in JAL consists of a : statement and parameters. I am sorry, that is a misunderstanding. I meant that the term "ifthen boolvar, label" would be equivalent to, for example if not boolvar then do_something end if (label:) Boolvar is checked against false, where every other language I know would check against true, unless the not is explicitely given. So that is unintuitive and should be mentioned loud and clear in the help file. Sven Opitz
|
|
Thu Apr 20, 2006 3:12 am |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|