RedPrairie/JDA WMS — rptab file
As a RedPrairie/JDA WMS Developer or Administrator, ever so often you’re supposed to create a new RedPrairie/JDA WMS environment/instance, be it for a client or internal development. You are pretty much restricted to only two scenarios — either install a new instance or make a copy of an existing instance. The problem with installing a new instance can pose some restrictions in most scenarios:
- You’ll have to repopulate all the configurational and transactional data to develop a new solution
- You’ll have to bring in, test and deploy commands and triggers and other MOCA components to make the environment useable for that specific project.
A simpler way is to copy the Application files, rename it to a different drive, location or server and edit the rptab file. The rptab file is a semicolon-delimited file that hosts information unique to an instance, like Instance or Environment Name, path to LES directory and path to MOCA Registry.
This is how a rptab file looks like on Windows Server:
FORMAT: <EnvironmentName>;<Directory>;<MOCA_REGISTRY ? >
The first two parameters, i.e., %MOCA_ENVNAME% and %LESDIR% are required. However, if the registry’s path is not included. It will use either of the following in the sequence provided below:
To prove it, I used one of my test instances where there’s only a file called registry in LES\Data and when it doesn’t find 1 & 2, it uses 3. However, when I do create a file called registry.instancename, it doesn’t even look for the registry file; thus 2 overrides 3. In Production, it is always best to specify the registry parameter in the rptab file.
However, in Linux, the file is not limited to 3 parameters like it is in windows. It is 5 parameters:
The file in Linux is colon-delimited instead of semicolon-delimited. If the parameter for MOCA_REGISTRY is not defined, it will use $LESDIR\Data\registry. So, why the difference between registry priority in Windows?
Well, in windows, you don’t have a specific user setup for JDA WMS to start/stop MOCA service, any user, who is an Administrator or has permission to start/stop MOCA service (using services.msc) can do so. To run any MOCA utility under %MOCA%\bin, you generally need to run env.bat — hence the need for servicemgr utility to generate one, as shown in the first screenshot.
In Redhat (Linux), when a user logs in as the user to the instance the .profile and .profile.local files are executed, which loads on the parameters required to run MOCA Server and any related utility.
But where are these files located, Ali?
These files are located in the following locations: