Posts

DME Queries in Lawson

Lawson provides the ability to query Lawson tables via URL.  These transactions are called “DME” queries, and can be quite useful in IPA processes, or in scripting bulk data calls.

To query data using a DME call, the URL is https://<server name>/servlet/Router/Data/Erp?.  To select specific fields, use the “FIELD” key word.  To filter the results, use the “SELECT” key word.  You will need to have knowledge of the data tables and columns to build these queries.  The dbdef command in LID can be quite useful for this.

GEN

To query GEN data, the syntax would be https://<servername>/servlet/Router/Data/Erp?PROD=GEN

For example, this URL would return the PRODUCTLINE and FILENAME fields for the FILEDEF record with prefix “API”:

https://lawson.company.com/servlet/Router/Data/ERP?PROD=GEN&FILE=FILEDEF&SELECT=PREFIX=API&FIELD=PRODUCTLINE,FILENAME

LOGAN

To query LOGAN data, the syntax would be https://<servername>/servlet/Router/Data/Erp?PROD=LOGAN

For example, this URL would return the VERSION data in the LOGAN data area

https://lawson.company.com/servlet/Router/Data/ERP?PROD=LOGAN&FILE=VERSION

Data Area

To query your desired data area, the syntax would be https://<servername>/servlet/Router/Data/Erp?PROD=<data area>

For example, this URL would return the CUCODE “USD” from the CUCODES table in the TEST data area.

https://lawson.company.com/servlet/Router/Data/ERP?PROD=TEST&FILE=SELECT=CURRENCY-CODE=USD&FIELD=CURRENCY-CODE,DESCRIPTION

Output

The default output type is XML, but you can also output in CSV format.  To do that, in the URL, append the command “&out=csv”.

Lawson MSCM Handheld Unable to Download PlatformDLL File

Infor recently updated handhelds and MSCM for a cloud environment. The test user was able to download the Infor CAB files to the handheld but was unable to download the PlatformDLL file. The error message kept coming back with “Internet Explorer cannot download file”

 

After ensuring all permissions were set for the user and running several tests, rechecking the configuration setup. We finally located the issue from the update and it turns out a port was reset to a default value and we had to change the Service Type to LHC. Below are the steps you can take to resolve this if you’re experiencing a similar issue.

 

  1. Login into MSCM with Server Administration group rights.
  2. Select MSCM Configuration >> Additional Settings
  3. Select Service Type LHC and under Handheld Service Properties, ensure you’re using the correct port. For us we had to update it to 1447

  1. We updated both LSF and handheld ports to 1447 and the user was now able to download the file.

Hope this was helpful!

How to uninstall a CTP in Lawson using lawappinstall

You’ve applied a patch to your system and it caused more problems than it fixed or it was not the solution to your problem and there is no point in pushing it to PROD. Today we are going over simple steps to uninstall a CTP which is similar to how you install a patch via lawappinstall.

  1. Ensure security is turned off and it is typical to bring down websphere before starting so no user can login during this process.
  2. In LID, start with the uninstall command:
    • perl %GENDIR%\bin\lawappinstall uninstall <productline> <patchxxxxx>
  3. Run lawappinstall STAGE (optional but recommended)
    • perl %GENDIR%\bin\lawappinstall stage <productline>
  4. Verify stage compilation complete:
    • qstatus | wc -l (this command will return the number 4 when compiling is complete)
  5. Check for compiling errors:
    • ls %LAWDIR%\<productline>\*\*.err
      • If any errors found, recompile failed programs with this command:
        • qcompile productline SystemCode ProgramCode
  6. Run lawappinstall VALIDATE:
    • perl %GENDIR%\bin\lawappinstall validate <productline>
  7. Run stgcmp
    • stgcmp list <productline>
      • If the program’s status is FAILED or RECOMPILE REQUIRED, submit the program to the compile queue using the -A option.
  8. Finally, Activate
    • perl %GENDIR%\bin\lawappinstall activate <productline>
      • You should see the patch(es) you ran the initial uninstall for, confirm, verify any other prompts.
  9. Verify Non-stage compilation (if you didn’t run stage):
    • qstatus | wc -l
  10. Turn security on, turn websphere on, run your typical post smoke tests as if you were applying a patch.

 

Hope this was helpful!

How to enable IOS DEBUG Logging in Lawson System Foundation

IOS debug logging can be useful for tracking down issues in Lawson Portal, Add-ins, and Ming.le. There are two methods to enable it, we prefer method 1 below.

Method 1 (ios_logging.properties file must be renamed or deleted for this method to work):

  1. Login to your LSF on-prem server (Admin access required)
  2. Make a backup copy of your xml in %LAWDIR%\system
  3. Edit the xml file with a text editor.
  4. Change INFO to DEBUG as shown below
    • Ideally only use DEBUG if temporarily debugging an issue else leave it on INFO)
  5. If using DEBUG (or prefer a longer history of logging), you also may want to increase the log file size MaxFileSize and maximum number of logs to be generated MaxBackupIndex

Below our IOS logs will be 20mb and we will have a max backup of 5.

 

 

You should now see DEBUG entries in the log.

Method 2 – ios_logging.properties (this will be used by default over ios_logging.xml if it exists)

 

  1. As the lawson user, make a backup copy of ios_logging.properties in %LAWDIR%\system (if it exists).
  2. Copy the ios_logging.properties file from %GENDIR%\install to %LAWDIR%\system (you will only need to do this once to update the formatting of the ios_logging.properties file with the latest delivered version from %GENDIR%\install).
  3. Edit the ios_logging.properties file in %LAWDIR%\system:
  4. Change the second line in the file from INFO to DEBUG.

##Set root logger level to DEBUG and its only appender to A1.

log4j.rootLogger=INFO, IOS

to:

log4j.rootLogger=DEBUG, IOS

 

  1. Change these lines:

log4j.appender.IOS.MaxFileSize=2048KB

log4j.appender.IOS.MaxBackupIndex=5

to:

log4j.appender.IOS.MaxFileSize=20480KB

log4j.appender.IOS.MaxBackupIndex=5

This increases your log from 2mb to 20mb with a max of 5 log files. Adjust based on how busy your system is.

NOTE: A restart of WebSphere is not needed for these changes unless you are switching between ios_logging.properties and ios_logging.xml.

You should now see DEBUG entries in the log.

 

Good luck and happy debugging!

How to enable IOS debug logging for a specific user in Lawson

You may have saw our article on how to enable IOS DEBUG logging and realized after enabling it that the log gets spammed quite a bit which may actually make it harder to isolate an issue, especially if other users are currently in the system.

Today we will show you how to turn on DEBUG logging for a specific user to minimize log spam. This tutorial is only for the ios_logging.xml log.

 

  1. Login to your on-prem LSF system (admin rights required)
  2. Identify the users RM ID (case-sensitive) that you want enable debug logging for.
  3. Locate and backup your ios_logging.xml file in %LAWDIR%\system
  4. Edit ios_loggin.xml with a text editor
  5. Locate the following section:

 

<root>
<priority value=”INFO” />
<appender-ref ref=”IOS” />

<!– Appender Filters–>
<!–<appender-ref ref=”PORTAL” /> –>
<!–<appender-ref ref=”DIRECTIOS” /> –>

</root>

 

Change INFO to DEBUG:

<root>
<priority value=”DEBUG” />
<appender-ref ref=”IOS” />

<!– Appender Filters–>
<!–<appender-ref ref=”PORTAL” /> –>
<!–<appender-ref ref=”DIRECTIOS” /> –>

</root>

  1. Locate the following section:

<!– Filter for users  –>
  <!–
<filter class=”com.lawson.ios.util.log.Log4JMDCFilter”>
<param name=”keyToMatch” value=”username” />
<param name=”valueToMatch” value=”lawson” />
<param name=”denyOnMatch” value=”false” />
</filter>
<filter class=”org.apache.log4j.varia.DenyAllFilter”/>
–>

Uncomment this section (remove the <!– and –> characters shown in bold above) and edit the “valueToMatch” value=”lawson” replacing “lawson” with the RM Id of your user, like so:

        <!– Filter for users  –>

<filter class=”com.lawson.ios.util.log.Log4JMDCFilter”>
<param name=”keyToMatch” value=”username” />
<param name=”valueToMatch” value=”ENTER_USERNAME” />

            <param name=”denyOnMatch” value=”false” />
</filter>
<filter class=”org.apache.log4j.varia.DenyAllFilter”/>

  1. Save your changes (no restart required and you should see immediate changes)
  2. You should now see DEBUG entries in the log for that specific user.
  3. Just undo step 6 to revert changes (or revert to your backup file).

Good luck and happy debugging!

How to Change Lawson Portal TEST Banner

When having users test new patches, it’s a good practice to distinguish TEST from PROD visually. This helps users know what environment they’re in as they may be testing after a long day and may think they are testing in TEST when in fact they are changing production data.

 

This can simply be done by changing a banner color in Lawson Portal.

  1. Login to your TEST environment and locate your index.htm file found here: “D:\<lsf_folder>\web\lawson\portal”
  2. Assuming your index.htm file is unmodified locate header id=“topBanner”

  3. Use an online HTML Color Picker tool to choose the hex color you want to appear and replace background-color:#ff8787 to your preferred color hex color code.

Example of how it will appear:

  1. Save the changes, clear IOS cache, clear your browser cache, logout and back in to see the change. Enjoy!