APPX Software Library

Files and Data: Checking, Recovery and Locks

How can i build up the FMS path for APPXIO data files?

There is a feature in release 4.0 which may help you do this... for AppxIO data files, you can build up the FMS path using the following macros:

$(host)         -  host name
$(engine)       -  Appx engine version
$(endian)       -  'intel' or 'risc'
$(root)         -  $APPXPATH
$(uid)          -  3-character Appx User ID
$(user)         -  OS User ID
$(pid)          -  OS Process ID
$(ap)           -  File's application ID
$(ver)          -  File's application Version
$(db)           -  File's Database ID
$(scope)        -  Process nesting level
$(file)         -  8-character file name
$(type)         -  "Data", "Struct", "Portdata", etc.
$(anything-else)-  An environment variable

As an example, the normal location for an Appx data file would be:

$(root)/$(db)/$(ap)/$(type)/$(file)

If you wanted to invert the database/application hierarchy:

$(root)/$(ap)/$(db)/$(type)/$(file)

And, of course, you can do other fancy things:

/tmp/$(user)/$(type)/$(file)

The one thing which is missing is that you don't have a way to set an environment variable from within ILF code. If you could do that, you could programmatically control the entire pathname.