Using Profiler to Trace Programs in M3

In some cases we might need to know what happens in the background when some function is performed in M3. For an example we will assume that we need to identify the tables that are getting updated when we create a record in CRS140 program.

There is an option in Life Cycle Manager that can be used to perform this task. In this post we will discuss how this option can be used.

1. Log in to Life Cycle Manger, Right click on the BE node in desired environment and click on Manage Application.

01.png

2.  This will open up a tab that displays all the subsystems running in the business engine.

Setting up a dedicated Subsystem for our User Id

Note: All UI programs run in M3 Interactive subsystem where as MI programs (APIs) run in M3 API subsystem. M3 Auto subsystem handles Auto jobs. If we want to trace the functionality of CRS140 program we need to run the trace in M3 Interactive subsystem. However, at a given time many users will be using the system and M3 Interactive subsystem will have jobs from different users. If we run a trace in that subsystem, it will record data from all of those user interactions. Therefore I need to setup a dedicated subsystem for my user ID; so that it will only have jobs created by my user id.

3. Click on Tools.

02.png

4. Click on User Debug/ Trace

03.png

5. Click Add to add a user ID

04.png

6. Put the you user id in User Text box, set Trace as the Type and click Activate.

05.png

7. A user will be added to the Debug/ Trace Activation List.

06.png

8. Now log in to Smart Office with your user id and go to CRS140 program.

9. Go back to LCM and check the BE manage application screen. Now You should see a dedicated M3 Interactive subsystem created for your user id.

07.png

Enabling the Profiler

10. Now go in to newly spawned subsystem by clicking on type column of the relevant subsystem.

11. Click on Profiler.

08.png

12. Then click on Enable on the next screen.

09.png

13. Now go in to M3 and create a record in CRS140 program. Once the record has been created, go back to LCM and Disable the profiler. Then it will create a list of tasks that the BE has performed in the back end while you were creating a record in CRS140.

14. You can exporting this list of activities in to a CSV file for further analysis.

10.png

15. Once you have finished running the profiler, go back to User Debug/ Trace Activation screen and remove your user id from the list.

16. Then go to Manage Application Screen and Shutdown all dedicated subsystems that have been spawned for you user id.

11.png

12.png

You can use the same method to the trace the functionality of an API transaction as well. In that case you will have to enable the profiler in a M3 API subsystem instead of a M3 Interactive Subsystem.

Have a nice day…

Compare Deployed fixes in Different Environments

In one of my previous posts we looked at how to install a fix to M3 BE using the Life Cycle Manager.

As a practice when I am deploying a fix, I will first deployed it in DEV environment and get the Key Users to test it to make sure that the fix works fine and there is no impact on existing functionalities. Then it is deployed in TST environment for business users to test it. Once users confirm the functionality of the fix, finally it is deployed in PRD.

Even though this process makes sure that a fix is properly tested before it is deployed in PRD, this can create discrepancies between environments. Therefore we might need to compare the fixes deployed in different environments in certain cases to make sure that fixes have been properly deployed in all environments.

1. Log in to LCM as an Administrator.

2. Expand any of the Grid Nodes and locate the M3BE_XX folder in the tree view. Right click on this folder and click Environment Compare (Fixes).

01

3. This opens up Environment Compare Tab in which you have to select your BE version. In my case it is 15.1.2.

02

4. Once the correct BE version selected, fixes that are available in your server will be displayed.

03

5. From the last few columns of the grid you can identify in which environments each fix has been deployed.

04.png

6. If it is hard for you to comparing fixes in this grid it self, you have the option of exporting these details to a spread sheet using Export to Excel option.

05.png

This is going to be really helpful option when you are troubleshooting issues in different environments.

Have a nice day…

Removing a Company using LifeCycle Manger

In some cases we might need to remove a configured company from a M3 environment. In this post we will see how to do it using Infor Life Cycle Manager. The steps are quite similar to copying a company in the same environment that we discussed in a previous post.

1. Log in to LifeCycle Manager and right click on the BE node of the environment that you need to perform the company copy. Then go to Database → Maintain Company and Division.

Maintain Company and Division

2. Put the environment to maintenance mode, while removing the company.

Set environment to Maintenance Mode

3. Provide database administrator credentials  in the next window.

DB Credentials

4. Select Maintain Company and Division option in the next window.

Maintain Company and Division

5. Select the component from which you need to remove data. In this case it is MVX component.

Tables to Copy

6. On the next window select Remove company option and enter the company number that you need to remove.

Remove Company

7. Set the number of threads to 4 or 5 and click Next.

Number of Threads

8. Provide a configuration name.

Config name

9. Look at the summary provided in the next window and verify if your selections are correct. Click Finish.

Remove Summary

10. The Status of the remove operation is displayed on the bottom of the LCM Page.

Remove Status

11. Once the remove operation is successful, a message is displayed.

Copy Successful

12. Finally, once the remove operation is finished, restart the BE.

Restart BE

Log in to ISO and see if the company has been removed.

Have a nice day…

Copying a Company from one Environment to Another

In my previous post we looked at how to copy a company  in the same environment. In today’s post we will see how to copy company details from one environment to another; say from TST environment to DEV environment.

1. Log in to LifeCycle Manager and right click on the BE node of the target environment. In this case our target environment is DEV. Then go to Database → Import from M3BE Environment Database.

Import data from BE

2. LCM will then check the running status of the environment.

Running Status of BE

3. In the next window appears check Set M3BE Environment in maintenance mode and click Next.

Maintenance Mode

4. In next window, you have to provide administrator credentials for the Database. In this case you have to provide Administrator credentials for both databases; for source and  target databases.

DB Credentials

5. Next window select the Configuration option as Import from database.

Import from DB

6. We need to select the Table set that needs to be copied from the source. In this case I need to copy the Standard M3 Table set; hence I am selecting MVX component.

Source Component

7. Then we need to select the Target component and it should be same as the source component.

Target Component

8. In this case we are going to copy data related to a particular company from TST environment to DEV. Therefore it is mandatory to check Filter Company check box and enter the Source Company number and Target Company Number. If this check box is not enabled, data related to all the companies configured in source environment will be copied to the target environment. You can copy a specific division if needed using the Division Filter.

Company Numbers

9. Set the number of threads to 4 or 5.

Number of Threads

10. Set the import strategy as Replace existing records in the next window.

Replace existing Records

11. Give a configuration name.

Configuration Name

12. You will get a summary of your selections, verify it and click Finish.

Summary

13. The Status of the copy operation is displayed on the bottom of the LCM Page.

Status

14. Once the copy operation is successful, a message is displayed.

Copy Successful

15. Finally, once the copying is finished, restart the Target BE.

Restart BE

You can log in to smart office and see if the new company has been correctly copied.

Have a nice day…

Copying a Company in the same environment using LifeCycle Manager

In some cases we might need to copy all the configuration+data in a M3 Company to another. This is really useful when you are configuring a new solution. Before trying out new changes in the existing configuration, we can copy the configuration+data of the existing company to another and do the changes in the new company.

In this post we will see how to copy existing company data in to another in the same environment.

1. Log in to LifeCycle Manager and right click on the BE node of the environment that you need to perform the company copy. Then go to Database → Maintain Company and Division

Maintain Company & Division

2. LCM will then check the running status of the environment.

Running Status of the Environment

3. In the next window appears check Set M3BE Environment in maintenance mode and click Next.

Set to Maintenance Mode

4. In the next window, key in the credentials of M3 Database Administrator and click Next.

DB Credentials

5. In the next window, Maintain Company and Division should be selected. Click Next.

Maintain Company and Division

6. We need to select the Table set that needs to be copied. In this case I need to copy the Standard M3 Table set; hence I am selecting MVX component.

Tables to Copy

7. We have to then set the source and target companies that are involved. In this case I am going to copy data from company 200 to a new company 100. If we want we can copy only a particular Division of a Company using the Division Filter, but in this case the full company is copied. Click Next.

Source and Target Company

8. In the next window, set the number of threads that should be used when copying data. The ideal number of threads would be 4-5 which will not affect the overall performance of the server. Click Next.

Number of Threads

9. You will get a summary of your selections, verify it and click Finish.

Summary

10. The Status of the copy operation is displayed on the bottom of the LCM Page.

Copying Operation

11. Once the copy operation is successful, a message is displayed.

Copy Successful

12. Finally, once the copying is finished, restart the BE.

Restart BE

You can log in to smart office and see if the new company has been correctly copied.

In our next post we will see how to import company data from another environment.

Have a nice day…

Applying Fixes using Infor LifeCycle Manager

Infor releases Fixes whenever a bug is found in M3 and you can apply those fixes to your environment using Infor LifeCycle Manager (LCM). In this post we will look at how to apply a fix in to Development Environment. Let’s assume that we have the required fix number or the Solution Id in hand.

1. Log in to LCM as an Administrator.

2. First you need to download the required fix into your server from the Customer Correction Self Service (CCSS) Server. For that right click on M3BE_XX folder in the tree view and go to Retrieve MCE.

Retrieve MCE

3. LCM will ask for your credentials to CCSS Server. You can use your Infor Xtreme credentials in this case.

CCSS Credentials

4. In the Retrieve MCE tab you need to select your M3 BE version first. In my case I am selecting 15.1.1 as my BE version.

M3 BE Version Selection

5. Once the required BE version is selected, LCM displays all available fixes for the selected BE version. The fixes that have not been already retrieved in to our server are marked with a ‘X’.

Fixes not retrieved

6. From this list you need to select the required fix and retrieve it. First search for the using the Solution Id, select the fix and click Retrieve. You can see more details about the fix on right hand side of the same tab.

Retrieve Fix

7. Once the Fix is retrieved to your server a message is displayed and the fix retrieved status becomes ‘‘.

Fix retrieved

8. Retrieving the Fix does not mean that it is applied on to you environment. Right click on the BE node that you need apply the fix and go to Fixes → Manage Fixes. In this case we are going to apply the fix to DEV environment BE.

Fixes - Manage Fixes

7. Manage Fixes tab is opened in right pane. Search fix that you need to apply. In this case I am going to apply the fix that i just retrieved, that is JT-497982.

Search the Fix

8. If the fix has not already been applied ‘X’ is displayed in the status column. Select the fix and click Apply.

Apply Fix

9. LCM then analyzes if there are any conflicts of the new fix with the environment. If not you can proceed.

Fix Analysis

10. When the fix is applied properly a message is displayed and ‘√’ mark is displayed in the status column.

Fix Applied

11. For the fix to take effect, the BE should be restarted. Right click on the M3BE node → Stop Application.

Stop BE

12. Once the BE is completely stopped, start the BE again.

Start the application

Newly applied fix should now be active in DEV environment. If you need to apply the same fix in other environments again, you do not need to retrieve that again from the CCSS server, as it is available in your server.

Have a nice day…