======5. Performance ====== ===== 5.1. SBO Notification Listener ===== When using the SBO notification listener, the frequency at which this tool will check for new transactions to process can have a very important impact on the global performance of the system. This frequency is controlled by a setting in the SBO notification listener's configuration file (Produmex.Foundation.SboNotification.ServiceHost.exe.config), called FrequencyMilliseconds and located in the appSettings section: For PDMX versions 5.3 and older, the default value is 1000, meaning that the SBO notification listener will check for new transactions to process every second. For PDMX versions 5.4 and higher, the default value is 5000, meaning that the SBO notification listener will check for new transactions to process every 5 seconds. This value can be changed to any frequency. Increasing the delay defined in this value will typically help decreasing the load on the server. ===== 5.2. Logging level ===== On version 5.3 or older, there is a possible performance gain when adding the following to the 'root' tag in the logging section of the config file: It will make sure that time consuming logging operations for logging levels lower than 'WARN' won't be executed. The full logging section will then look similar to: For more information about the application configurations please see: [[implementation:wms:app_config|10. Application configurations]] ===== 5.3. Logging level Debug ===== If you want to enable extra logging for debugging purposes, you can enable this in the config files. If we need to add this extra debug-logging to let's say the fat client, you need to change some values in the FatClient config file: C:\Program Files (x86)\Produmex\Produmex Fat Client\Produmex.Sbo.Logex.Execute.FatClient.exe.config In this file you'll need to change all the 'WARN' levels to 'DEBUG' ===== 5.4. Production Order closing process very slow ===== Run trace during closure to see what Queries are taking a lot of time to execute; Possible fix is to add an index to JDT1, but this needs to be clear from the trace. CREATE NONCLUSTERED INDEX [PMX_TEST_2] ON [dbo].[JDT1] ( [MatchRef] ASC, [TransType] ASC, [InterimTyp] ASC ) INCLUDE ( [TransId], [Line_ID], [Account], [Debit], [Credit], [SYSCred], [SYSDeb], [FCDebit], [FCCredit], [CreatedBy], [Project], [DebCred]) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] GO ===== 5.5. The printing is slow ===== Check the print filter script. Make sure that you did not use SELECT * in your SELECT QUERY. For more information please see: [[implementation:wms:printevents#scripted_print_filters|Print filters]] ===== 5.6. Pick list proposal creation ===== It is possible to speed up the pick list proposal creation process. There are columns in the pick list proposal line table that stores some additional information on the stock when the proposal was created. In the pick list proposal form this information is shown in the columns 'Full stock' and 'Stock compliant shelf life'. If this information is not being used, you can disable the calculation of this stock status field. There is a setting in the Pick list proposal generator for this.