Introduction

The article describes typical problems, their reasons, and solutions.

Enabling Logging

To enable StoreHouse 5 logging:

  1. Open the registry editor and go to HKLM\Software\USC\sdbserv.2\Server_key
  2. Create the DWORD uplt parameter — the maximum allowed procedure execution time in ms — with a value, for example, 100.
  3. Save your changes and restart the StoreHouse 5 server.

The log looks like this:

11.10.2019 14:30:10- PROCTIME DebugProc time=1.050 sec, conn_id=11, status=
CODE

How to read the log: procedure name is DebugProc, the execution time, including the commit or rollback time, is 1.05 seconds, the connection ID is 11, the procedure was completed successfully; the signature for the search is PROCTIME.

Error Sending Data to Server Win32 = 10054

During the inactive time, the following error may appear: Error sending data to the Win32 server = 10054: An existing connection was forcibly closed by the remote host.

Reason

Not found yet, but there is a workaround solution. It is assumed that the client enters sleep mode and the connection is terminated.

Workaround 1

Enable the option to prohibit sleep mode in the server settings. This setting is disabled by default. To do this:

  1. Open the Registry Editor
  2. Go to HKLM\Software\USC\sdbserv.2\Server_key
  3. In the params parameter, specify the number 512 in the decimal system or 200 in the hexadecimal system. If the value was 0, it should become 512. If it was more than 0, then +512 greater.
  4. Save the changes and restart the server.

Workaround 2

Enable Keep-alive mode for the server. You can do this by adding two parameters to the server registry branch:

  • np1kat (DWORD) — the time in the passive state of the channel before sending the first keepalive package, in ms. 2 hours by default. Assign a value of no more than 300000, decimal
  • np1kai (DWORD) — the interval for sending keepalive messages, if no confirmation is received, in ms. 1 second by default. Assign a value, for example, 10000.

If you enable the Log network events setting, you will see a string of the type Keep-alive enabled; prot=1; ip=so-and-so; time=300000; interval=10000 or an error message for each new TCP connection in the server protocol.

Invalid Object Name

During the synchronization setup with r_keeper 7 via QUSH, the following error may occur:

Reason

The problem occurs because there is no data in the SQL table. Data is not transferred from r_keeper 7 to SQL due to the connection to SQL not by IP, but by name:

r_keeper

QUSH

At the same time, checking the settings will give no errors, both in the manager station and in QUSH.

Solution

Reconfigure MSSQL to connect by IP address, specifying the port numbers. To do this, specify the ports for the required IP in the TCP/IP protocol settings in MSSQL. Do the following:

  1. Go to the SQL Sever Configuration Manager, it is located in the Start menu
  2. Next, go to the Protocols for SQL section
  3. Go to the TCP/IP protocol settings
  4. Select IP Addresses section and specify the port for the required IP addresses. By default, this is port 1433, but you can specify any suitable one. Be sure to specify the port at 127.0.0.1 or at the internal IP, if the server and the client are not installed on the same computer
  5. Click ОК. Restart the MSSQL service to apply the changes. You can restart it via Configuration Manager or Windows services.
  6. Now you can connect to the database by IP address. Check this through SQL Server Management Studio. If it is connected, it means that you did everything correctly.
  7. Reconfigure synchronization with SQL in RK7 and QUSH to IP. The problem is solved.

Offline License Is Used

When replacing the database, the following license error may appear: Offline license is used

To fix the error, open Sdbman.exe. Go to Maintenance > Execute procedure.

In the window that appears, enter:

Procedure: LimN
Library:
 Shsrv64.dll

and click Execute. After that, the license should work.