Eric,
Not sure how much help this will be, but these are the things I
noticed the last time I took a system to Windows from a Mac:
1. Printing. OMG. There is a world of hurt here, and
Get(SystemPlatform) just won't cut it. I found the most success by
using FM under Windows to create a second copy of each printing layout
(NOT duplicating, RECREATING FROM SCRATCH) with the default printer in
FM set to the printer and tray combination that would be required by
the layout. On occasion, this meant quitting FM, clearing the registry
key relating to printing, setting the default Windows printer to the
new printer and tray combination, and then relaunching FM to create
the new layout. AFTER you have done all this you can use
Get(SystemPlatform) to vary your printing scripts.
2. More printing. In v9 you can store more than one print setup per
script, so it is possible to change all of your current printing
scripts to just branch based on the Get(SystemPlatform) value. In my
opinion, you are better off using this opportunity to abstract the
printing process so that you call one of a small number of scripts
that do the actual printing from all of your existing print scripts.
That is, your existing print scripts call one script that decides,
based on the target layout and the Get(SystemPlatform) value, which
script to call that executes the Print Setup and Print steps. It is
also useful to have these scripts open a new window on the target
layout just for the purposes of printing, and close it when finished
so that the user (hopefully) never notices that another window was
created.
3. More printing - if all else fails, allow the user to control the
print process if they are on Windows. I found the Mac side of things
continued to work like a charm, and while the Windows users complained
they recognised that it was better to have the job go to the right
printer than to save a few seconds and have it go to the printer they
_last_ printed to.
4. Exporting - should be mostly OK; the best setup is to set a
variable to the path of the export file using the "file:" prefix to
specify a path. You can use "filemac:" or "filewin:" if you have to
define an explicit path, but you can calculate that fiarly easily. You
might even want to set that value into a global variable on system
startup, so that you can use the value in all of your export scripts
without having to declare it every time, and/or you can create a
custom function to return the appropriate value. Other than that, all
you need to remember is to give the file a suffix (eg ".txt") so that
it will be properly recognised under Windows.
Plan this process carefully, make heavy use of the DDR to identify
your printing and export scripts, and test as much as possible.
--
Daniel Farnan
Developer/Consultant
DeskPower Computers Pty Ltd
http://www.deskpower.com.auIgnorance is curable, not preventable.
On 27/10/2009, at 8:52 PM, Eric Wright wrote:
> Hi experts
>
> Posted this to Technet as Cross Platfomr Abstraction but got zero
> responses.
> Not sure how to better express it so hopefully here someone has some
> tips.
>
> We have a 70 odd file solution that has been grown in FM6 and been
> migrated to 9 this year all on a mac platform.
>
> I need now to take it cross platform and although layouts and look
> are done with both platforms in mind there are a number of exports
> and print scripts that have never been addressed.
>
> Any suggestions for the quickest and most efficient way to abstract
> Get System Platform to handle the differences where needed.
>
> By abstraction I was meaning code snippets (utility scripts) that I
> can write once then re-use wherever I know there'll be an issue.
>
> Likewise there are levels of abstraction that can be applied up to
> where a script is unique to a context.
>
> Normally I do something then realize I've done it three tiems in
> three scripts and think I should lift it out.
>
> I'm thinking oythers have been down this path already and might have
> some pointers to easily generalizable snippets.
>
> Any thoughts ?
>
> Kind Regards
> Eric
> _______________________________________________
> FMPexperts mailing list
>
[hidden email]
>
http://lists.ironclad.net.au/listinfo.cgi/fmpexperts-ironclad.net.au>
_______________________________________________
FMPexperts mailing list
[hidden email]
http://lists.ironclad.net.au/listinfo.cgi/fmpexperts-ironclad.net.au