May 18, 2010

Macro Scheduler 12 Documentation

Filed under: Announcements — Marcus Tettmar @ 11:12 am

Macro Scheduler 12 ships with a comprehensive help system (.chm). You can hit F1 at any point in the software, click Help on a code builder or press F1 while the cursor is positioned over a command to get context sensitive command help, or choose one of the options in the Help menu.

But if you prefer a different format there are some other options:

Online Help: You can view the documentation online here.

PDF Manual: You can download a 218 page PDF manual for free.

Perfect-bound Dead-tree Manual: You can purchase the 218 page manual in smart physical book form for $19/£19/€19 including world-wide shipping from here.

May 17, 2010

Macro Scheduler 12 is Shipping!

Filed under: Announcements — Marcus Tettmar @ 3:30 pm

Macro Scheduler 12

I am pleased to report that Macro Scheduler 12 is now shipping.

Regular readers will already be well aware of what super new features are available in Macro Scheduler 12 and you will find more detail in the release notes. But here’s a quick summary:

  • Easier to use, more powerful custom dialogs, with more objects and properties and real time event handlers
  • Multi-tabbed editing – edit multiple scripts at once, open scripts from within your code
  • New editing and debugging features
  • Native Excel functions
  • More string functions
  • Process handling functions
  • Array functions
  • Optional local scope
  • Improved Image Recognition
  • 64 bit registry support
  • System tray functions
  • A new loop construct
  • Regex window matching
  • Windows Vista/7 AutoLogon
  • Drag and drop macro import
  • Reorder macro groups
  • Shared macro folders
  • Macro Templates

For a complete list and more detail please see the release notes.

Registered users with maintenance can download from the registered user area. Or to purchase an upgrade log into your account and follow the links. A 30 day evaluation is available here.

May 14, 2010

Remove Unnecessary Obstacles

Filed under: Automation — Marcus Tettmar @ 10:48 am

When considering how to automate something, it’s often worth thinking about whether or not you can change the process a little first.

An example that often comes up is the need to automate the retrieval and processing of a particular email message. Many people will already have a manual process that involves, not surprisingly, their email client, e.g. Outlook. They’ll have a filter set up that moves the email they want to look at into a specific folder. Then they’ll take each of the emails in that folder in turn and do whatever it is they need to do to them, such as pull out some information and put it in an Excel file or database or something.

The user’s first thought when he decides to automate something like this is to have Macro Scheduler manipulate Microsoft Outlook to find the email and parse it.

That’s all very well, and is certainly achievable but it does add a rather awkward obstacle into the mix that needs to be navigated around: Outlook.

Look at what we actually want to do. We have some form of email that gets sent, and we want to parse it and perform some action based on it. Outlook just happens to be what we are currently using to read that email. We’re using it because we’re human and Outlook was designed for humans. But it isn’t the only way to read email. The email exists quite happily without it. We could use a different email client. Or remove the need for an email client altogether.

Macro Scheduler can retrieve email directly from a POP3 server, download the email messages to files and then process them. So we can remove Outlook – or any other email client – from the process entirely.

“Wait”, I hear you say, “What about my other email? I don’t want Macro Scheduler messing up my Facebook notifications, birthday reminders, blog updates and work emails” (notice the order of priority there). Well, don’t worry about that, there are several options. Macro Scheduler’s POP3 commands can be set to leave emails on the server and we could set the script up to search the downloaded email and look for only the pertinent messages.

But Ideally we have control at the sending end. We could set up a dedicated email account which these emails get sent to. That simplifies selecting which email needs to be processed. If that is not possible what about creating a new email account (it could be a free webmail account if you don’t have control over your own mail server) and then set up your filtering rule in Outlook, or whatever client you normally use, to forward the desired emails to that email account? This means the only emails in that account are the ones Macro Scheduler should process, thus simplifying the script which now needs only to collect all email in the mail box and can delete it afterwards.

Of course you can take this concept of removing obstacles as far as you like and in the most ideal world whatever it is that sends emails and whatever it is you want the information extracted from those emails inserted into would have a more direct form of communication between each other. But the world is not always ideal and we don’t always have control over the entire sequence of events. At least consider removing unnecessary obstacles from the part of the process you do have control over.

Retrieving and parsing email is just one example. The concept of simplifying a process applies elsewhere too. E.g. moving and copying files using Windows Explorer: instead of automating Windows Explorer by sending keystrokes and mouse events, use the built in file handling commands; pulling data out of a database: don’t automate your database query tool’s front end, access the data directly using SQL; Getting data from an Excel file: no need to try and manipulate Excel via user simulation, you can query the data directly; and so on.

When you sit down and automate a manual process some of the steps in that process might be things you can replace or skip altogether.

May 13, 2010

New Software Testing Course Featuring Macro Scheduler

Filed under: Testing — Marcus Tettmar @ 10:11 am

If you’re new to Automated Software Testing or looking to expand your knowledge you wouldn’t go far wrong with Randy Rices’ training courses.

Rice Consulting specialise in software testing training, certification and consulting. Their new Practical Software Test Automation course focuses on the basics of software test automation and expands on those topics to learn some of the deeper issues of test automation. The course includes hands on exercises using Macro Scheduler.

The course is aimed at Software Testers, Test Automators, Developers and Test Managers.

I’m told an e-learning version of the course is also in the works and I’ll let you know more when I hear about it.

May 12, 2010

Version 12 Dialog Stuff

Filed under: Uncategorized — Marcus Tettmar @ 9:09 am

For you dialog old-timers used to the way dialogs work in v11 and earlier I’ve posted a crib sheet for the new system here:

http://www.mjtnet.com/usergroup/viewtopic.php?t=6110

sarver311 has posted an example of a dialog that implements a drill down lookup list and demonstrates some of the new techniques:

http://www.mjtnet.com/usergroup/viewtopic.php?t=6161

If you have any nice dialog examples or tricks you wish to share please post them to the beta forum.

JRL points out that since Macro Scheduler is built with Delphi most of the dialog objects and properties are inherited from Delphi so for more detailed information about them the Delphi documentation can be consulted:

http://www.mjtnet.com/usergroup/viewtopic.php?t=6162

May 11, 2010

Macro Scheduler 12 Beta Updates

Filed under: Uncategorized — Marcus Tettmar @ 3:34 pm

Just a quick reminder that you can keep up to date with beta builds at the beta forum. The latest build is 028. So if you have an earlier build you should download now from the registered user area.

Everything seems to be going quite well and all being well we should now be in a position to release v12 by the end of May.

May 7, 2010

Run All Macros in a Folder/Group

Filed under: Automation, Scripting — Marcus Tettmar @ 3:26 pm

Someone asked me today how to run all macros found in a folder. This simple script will run all macros it finds in its own folder in turn:

GetFileList>%SCRIPT_DIR%\*.scp,MacroFiles
Separate>MacroFiles,;,Macros
If>Macros_count>0
  Let>k=0
  Repeat>k
    Let>k=k+1
    Let>this_macro=Macros_%k%
    If>this_macro<>SCRIPT_FILE
      Macro>this_macro
    Endif
  Until>k=Macros_count
Endif

Note the check to make sure it doesn’t run itself!

This could be useful where you want a quick way to schedule a series of macros. Schedule this script and then all you need to do to add another to the schedule is to drop it into the same folder (or macro group).

For a bit more control consider naming each macro with a numeric prefix and then sort the array to determine the order in which they are run. Version 12 (currently in beta) has a built in ArraySort function. Or use this QuickSort algorithm.

April 26, 2010

Windows Version Trends

Filed under: Windows 7 — Marcus Tettmar @ 10:57 am

I’ve just downloaded Windows version usage data from StatCounter and charted it in Excel, adding polynomial trend lines. Here are the results:

wintrends

If this is right Windows 7 usage will eclipse that of XP by the end of this year. But I’m no statistician so don’t hold me to that.

Either way, I understand that a lot of companies chose to skip Windows Vista and are now going straight to Windows 7. Now is definitely the time to make sure your macros run on Windows 7 if you haven’t already.

April 23, 2010

Using an Old Version? Time to Upgrade for Vista/Win7 Support.

Filed under: General, Macro Recorder — Marcus Tettmar @ 9:50 am

If you’re using an old version of Macro Scheduler, especially version 8 or lower, and like many others, you or your company are considering upgrading your Windows operating system to Vista or Windows 7 soon then you will need to consider upgrading Macro Scheduler too.

Windows 7 adoption rates are outpacing those of Vista fast and many companies are planning on going straight from XP to Windows 7. Already Windows 7 has over 15% market share with over 90 million licenses sold as of March 2nd.

Version 8 of Macro Scheduler was superseded before Windows Vista came along. And Vista brought with it some changes that required us to make changes to Macro Scheduler. So Macro Scheduler v9 was the first version that fully supported Vista. The latest version supports Vista and Windows 7 fully and is listed at Microsoft.com as a “Windows 7 Front Runner” application.

One of the things that Vista introduced were the thumbnail windows that appear when you hover over a task bar icon. These have the same title as the application’s main window. So in Macro Scheduler 8.0 and lower you will run into a problem where your SetFocus lines and other window functions find this thumbnail window before the main window and prevent your scripts from working properly.

Starting with Macro Scheduler 9.0 (in 2007) we made the window functions ignore these new thumbnail windows to prevent this problem. We also had to make some changes to the macro recorder. Older versions may not be able to record under Vista without running Macro Scheduler as admin.

So if you’re still running Macro Scheduler 8 or below then even if you have no plans to change your macros, you’re going to need a newer version when your operating system is upgraded to Windows 7.

Furthermore, we can’t support old versions forever and with the release of version 12 we will be discontinuing support for versions 8 and lower. Since version 9.0 was the first version that properly supported Vista and above we can only really continue to provide support for this version and onwards.

Version 12 offers even more Vista/7 functionality including a reliable AutoLogon mechanism that works in Vista/7/2008 to allow you to schedule macros to run even when Windows is locked or logged out.

So now is the time to upgrade. And if you buy or upgrade to v11 now, we’ll give you a free upgrade to v12 when it is released in a few weeks.

So there’s really no need to wait.

For a summary of new features in v12 click here and here.

The best way to upgrade is to log into your registered account and click the upgrade links. Any problems accessing your account email us.

Consider adding maintenance to your order as well. This will ensure you continue to get all future upgrades and new features automatically at no extra cost. Maintenance is the easiest way to ensure your software stays up to date with all the new Windows releases.

Take a look at the Macro Scheduler history list to see how many improvements there have been since version 8:
http://www.mjtnet.com/mswhatsnew.htm

April 20, 2010