Before upgrading

It is recommended to perform an upgrade in dealer offices.
Be sure to make a backup when performing any operations with the original SH4 database.

The minimum r_keeper version required for an upgrade is 7.6.2.

You will need

  1. A StoreHouse 5 master license
  2. A StoreHouse 5 installation file
  3. The set of upgrade files can be downloaded at

Data transfer information

  1. Goods
    • Alcohol product type codes are created from SH4. Code=name. If needed, the reference can be configured manually.
    • The goods of the link type cannot be exported as this type is not present in SH5. If goods are imported from r_keeper, these items will be transferred to SH during the first import.
    • The food energy values are exported only as the protein/fat/carbohydrate content. These parameters are exported if their sum does not exceed 1 and if the product card has at least one unit of measurement belonging to the Weight dishes group.
  2. Enterprise and Legal Entity — this information is taken from the details available in SH4.
    • During the first import from r_keeper 7, the enterprises will be imported as new ones. It is impossible to align the SH4 and r_keeper 7 data.
    • It is the enterprises exported from r_keeper that should be licensed
    • It is required to reassign all the departments to the imported enterprises
    • The enterprise created as the result of the upgrade should be deleted.
  3. Sets
    • If the standardized recipe of an SH4 set changes by periods of the set, it is the set standardized recipe from the latest period that will be used after upgrading. This is so because at the date of issuing this document it is impossible to change the standardized recipes of SH5 sets by periods.
    • But it is possible to 'cut off' older set periods. For that, there should be no documents in the SH4 database (the deldoc function must be applied to the SH4 database).
    • As the Replacements reference is not uploaded, there is no such information in the sets
  4. Correspondents
    • All special correspondents are exported as sales. If needed, this type can be changed manually.
  5. Requests, Payment Documents, and Invoices are not exported from SH4 to SH5.
  6. Delivery notes
    • As the cost price calculation methods are different in SH4 and SH5, plus SH5 does not have the negative balance notion and compensated records are generated for negative balance, the amounts in the internal documents will not match when delivery notes are exported from SH4 to SH5
    • As for the return to supplier, goods write-off and decomplectation notes, only their headings are uploaded but not their bills of materials (BOMs), i.e. the delivery notes do not contain any goods. This leads to SH4 and SH5 documents inconsistency when using notes types data in SH4.
    • No replacements data is uploaded by delivery notes. The complectations BOM is recalculated by sets as of the document date, without any replacements. This leads to SH4 and SH5 documents inconsistency when using replacements in SH4.
    • So it is recommended to either enter the opening balance as of the date closest to the upgrade date and keep only receipt notes after this date, or to make a database without documents
    • Delivery notes are taken only from one inventory type.

Preparing SH4 Database for Upgrading

Be sure to make a backup when performing any operations with the original SH4 database.

  1. If you need to transfer only dictionaries when upgrading:
    1. In SH4, perform a backup recovery using DELDOC
    2. Check the SH4 database for errors and fix them if there are any
    3. Make a backup before upgrading.
  2. If you need to transfer all the delivery notes:
    1. Check the database for errors and fix them if there are any
    2. Make a backup before upgrading.
  3. If you need to transfer the dictionaries and opening balance as of the required date:
    1. Check the database for errors and fix them if there are any
    2. If the SH4 version is lower than 4.107.362, upgrade it to this version or later
    3. Make a backup of the working database. The original database will become unavailable in SH4.
    4. Copy the shv4cut2.exe file from the upgrade file package to the folder containing the SH4 client
    5. Run the app:
    6. Indicate the stocktaking date (Дата снятия остатков):
      • If no data is specified, in the morning of which the balance is generated, the current balance is used and receipt notes are created for the date preceding the current date. All other documents will be deleted.
      • If the date is indicated, receipt notes are generated for the date preceding the specified date.
    7. Specify the correspondent for whom Opening balance receipt notes will be generated (Корреспондент остатков)
    8. Check the box if you need to process secondary delivery notes (Специальный учет)
    9. Press Start Processing (Начать обработку). The system will warn you about changing the SH4 database structure. Press Yes to create a database for SH5.
    10. When the operation is completed, the system will offer to make a backup for further upgrading. Press Yes.
      A backup can be made later via the Sdbman.

Upgrading Procedure

  1. Install StoreHouse 5
  2. Copy the Cvtbkp.exe file from the upgrade file package to the folder containing the SH5 client
  3. Copy the ShUpg.exe file from the upgrade file package to the folder containing the SH5 client
    • There is an INI file for ShUpg.exe where you can indicate the preselected settings.
  4. The SH5 server must be running. If the server is installed as a service, to control the service and additional server settings you can use Sdbsetup.exe from FTP:
  5. If you need to export Special Inventory documents from SH4, indicate the following value in the shcrtdb.ini file:

    SysFlag = 1
  6. If you need to shorten the set validity periods, indicate the date from which you want to keep the validity periods in the shcrtdb.ini file:

    [Common] ; The maximum delivery note date equals to the base date plus 4090 days.

    It is important to remember that this parameter influences the date of creating documents in the SH5 database. It is impossible to create documents with a date earlier than the specified one.

    Binding to this parameter is conditioned by the need to control the availability of set periods for delivery notes if delivery notes are exported from SH4.

  7. Run ShUpg.exe

  8. In the Server area, specify the server connection parameters. Indicate the server name for the local server or the server's IP address and port. For example: /pT /a7773.
  9. Indicate the Username and Password to connect to the server
  10. In the Database area, indicate the parameters of the database being created.
  11. In the Crtdb lib field, indicate the path to the file shcrtdb64.dll
  12. Bkp file converter: indicate the path to the Cvtbkp.exe executable file
  13. Backup file: select a backup of the SH4 database that you will use as a starting point for upgrading
  14. Click Convert and upgrade old (ver 4) Store House db
  15. The upgrade procedure will start. Depending on the original database size and the PC capacity, the upgrade can take up to several hours.

    19:15:07 Backup file conversion... OK
    19:15:07 Login... OK
    19:15:07 New db creation... OK
    19:15:18 Login... OK
    19:15:22 Temp files deleting
    19:15:22 Exec crtdb proc CvtBuild... OK
    19:15:22 Exec crtdb proc CvtPopulate... OK
    19:15:25 Db backup copy... OK
    19:15:26 New db creation... OK
    19:15:32 Login... OK
    19:15:35 Temp files deleting
    19:15:35 Exec crtdb proc Register... OK
    19:15:36 Exec shsrv proc RebuildGDocs8_12... OK
    19:15:36 Exec shsrv proc RebuildQueues... OK
    19:15:36 Exec shsrv proc RebuildB... OK
    19:15:36 Db validation... OK
    19:15:41 Exec shsrv proc Validate... OK
    19:15:41 Operation completed successfully
  16. The Operation completed successfully message indicates that the upgrade is successful
  17. The upgrade can finish with an error. Each error should be considered individually. Upgrade errors can happen:
    • Because of original database problems. This is why we strongly recommend checking databases before upgrading.
    • Because of the incorrectly specified size of the database being created. This information can be viewed in the server log file.

    Client Installation

    1. Perform a standard SH5 installation.
    2. Restart the installer and select the Upgrade item. Follow the installer instructions.
    3. Licensing can be performed either before the import or after it. When licensing after the import, transfer the licenses.
    4. Configure the settings and perform the import from r_keeper.
      1. In the Goods reference, the Restaurant Menu group and Modifiers linked to it should be created using the QUSH utility, as it is GUID synchronization that is performed in SH5. Two groups for import should be created using the import utilities.
      2. Start the import. All r_keeper items will be synchronized with the SH data using r_keepers GUIDs.
      3. Dishes and modifiers will be transferred to the groups created during the import
      4. Groups remaining from SH4 can be deleted.
      5. Perform licensing or reassign licenses to enterprises imported from r_keeper.
    5. If the As of the Date balance is generated when upgrading, we recommend deleting all sales and expenditure documents from the SH5 database after this date. Then create them anew according to the SH5 rules.

    Creating Reports in SH4

    If SH4 is upgraded to SH5, you should return the SH4 keys to the r_keeper office. After upgrading the SH4 database becomes unavailable. To enable report generation without editing in SH4, the 4.109.368 version is available for downloading from the folder at the FTP server. This version doesn't require a key but also doesn't allow editing references and documents. A database opens in the read-only mode, i. e. for report generation.


    Differences in Bills of Sale

    Problem: after switching from SH4 to SH5 you can discover a huge difference between the cost price amounts in the systems. The transition has been performed correctly, the revenue is the same but the cost price is different.

    This happens because of differences between the cost price calculation methods in the programs. Goods write-off and decomplectation cannot be exported from SH4 to SH5.

    Solution: use the Opening balance.

    Error 1007 in Procedure of Server Library

    Issue: the SH4 database contains goods linked with sets that do not have a UOM for the standardized recipe of a set. This error cannot be detected using standard SH4 tools.
    Solution: install SH5 version 5.45.204 or later.

    When this error occurs, the list of problematic goods and missing UOMs is recorded in the SH5 server log file.

    Log example:

    12.11.2018 14:15:13- GoodsMUnits not found. GoodsName:я+++++*tiramisu in a dessert bowl s/f 1pc 150g, MUnitsName:s/f serving
    12.11.2018 14:15:15- GoodsMUnits not found. GoodsName:*honey SYRUP s/f, MUnitsName:kg.

    A goods item having the same UOM can be entered into a log file several times. You should make corrections for the indicated goods in the SH4 database, then make a backup and perform an upgrade to SH5.

    Error of Updating StoreHouse 4 Database to StoreHouse 5

    Problem: in some SH4 databases, preset units of measurement could be deleted. When switching to Store House 5, various errors occur.

    Example 1: when trying to check the Сalculate energy value box, the system generates an error: The field value must be defined, and an empty line is added to the goods UOMs tab.

    Example 2: when updating the Store House 4 database to Store House 5, an error occurs in the RebuildB procedure:

    SEH - an exception occurred while performing an operation. Exception code: C0000005

    The following records appear in the SH5 db upgrader log:

    The solution is to compare the existing UOMs with the basic settings in the created Store House 5 database and restore the base.
    1. Open the Sdbman app and log in
    2. Go to Maintenance > Execute procedure
    3. Select the shsrv64.dll library:
      1. In the window that appears, double-click with the left mouse button in the Library field
      2. In the next window, go to the StoreHouse 5 installation folder and open the Server folder
      3. Select the shsrv64.dll file
      4. Click Open

    4. In the Procedure field, enter MUnits and click Execute

    5. In the table that appears, take the values ​​from the first column for G, Liter and Portion

      In a specific case, G — 0, Portion — 2, Liter — 4
    6. Next, in the Procedure field, enter SetAlcMUnit. If an error occurs, click OK
      Fill in the table in accordance with point 6:
      • in column 206#10 enter a value for Portion. In our case, it is 2
      • in column 206#20 enter a value for G. In our case, it is 0
      • in column 206#30 enter a value for Liter. In our case, it is 4
        Click Execute

    7. On the parameters tab, you can see which parameters the units of measure refer to:
      • Object 206#10 — Rid UOM Liter
      • Object 206#20 — Rid UOM G
      • Object 206#30 — Rid UOM Portion
    8. To test the parameter changes, in the Procedure field, enter ShParams and click Execute.
      In the table that appears, you will see the specified values:
    9. In the Procedure field, enter RebuildB and click Execute
    10. Make a backup of the already fixed database:
      1. Go to Maintenance > Backup
      2. Click Yes in the confirmation window

        After a while, a message about the successful backup of the database will appear 
    11. Run the ShUpg utility. Fill in the required fields for restoring and upgrading the database.
    12. Then click Restore and upgrade StoreHouse db

    13. The upgrade procedure will start.
      The Operation completed successfully message indicates a successful upgrade.