09 November 2005

Weekly Feature: Advanced Macro Tips

We covered basic macro information last week. This week we've got some advanced features.

1) Move macros from version to version.

Sometimes recorded macros won't run after an upgrade or a service pack. Open the macro file (.mac) in notepad and remove the top line. It will look something like this: # DEXVERSION=DEX 8.00m076 2 2 and indicates the version the macro was recorded in. Since many GP updates add features, rather than changing features this usually works fine.

2) Split up macros.

This was covered in last weeks Weekly Gotcha

3) Allow access to limited areas.

This was more important in past versions but if a user needs to perform a single function behind the system password, you can create a macro that incorporates the password and allows them to perform the funtion. Other items behind the system password are normally not accessible because the password would be required again and the macro has hidden it from the user. BEWARE though, this puts the system password in an unencrypted text (.mac) file so you'll want to limit access to the macro file and track system activity. Also, if you change the system password, you break the macro.

4) Edit a macro by hand.

You can edit the macro (.mac) file with notepad. So if you have a long macro and you need to make a simple change (like a name or system password ;)) you can edit the file. I asked MBS support and developer types if there is a document outlining how the macro language works but I've been repeated told that nothing like that exists.

5) Step through the macro.

You can use the STEP (shift-f8) option to step through your macro one command at a time if you are having problems.

6) Macrotize your reports.

Report Scheduler and Report Groups are great but sometimes you need odd report settings (like yesterday). Remember that you can use macros to setup the report, let you enter the date and then finish printing.

7) Macrotize your maintenance.

Checklinks and Reconcile can both be run with macros. You can review the macro help file to even see how to autoschedule a macro. I'll probably cover it as well on a later post.