27.10. Tips and tricks

It is unusual, but you may be in a situation where your mSupply client application needs to switch between more than one mSupply Server.

Launch the mSupply client application by double-clicking on the mSupply client icon, then immediately hold down the Alt key until the mSupply Server connection dialog box appears:

If you tick the Display this dialog at next startup tick-box, this dialog box will automatically be displayed on startup of the mSupply client application, and you will not need to do the double-click, Alt routine described above.

There are three ways of selecting the mSupply server to connect to. These are accessed via the tabs: Recent, Available and Custom:

The Recent tab retains a list of all mSupply servers recently used. The list is sorted by alphabetical order. To connect to a server from this list, double-click on its name or select it and click the OK button.

The mSupply Server includes a built-in TCP/IP broadcasting system that publishes by default the name of the mSupply Server databases available over the network. These names are listed on the Available tab of the connection dialog box.

This list is sorted by order of appearance and is updated dynamically. To connect to a server from this list, double-click on its name or select it and click the OK button.

Computer networks can be configured to stop dynamic publication of the database name on the network. In this case, you will need to manually configure the the connection on the Custom tab.

The Custom tab allows assigning a published server on the network using its IP address and database name.

Database name: allows defining the name of the mSupply Server database.

Network address: allows entering the IP address of the machine where the mSupply Server was launched. If two servers are operating simultaneously on the same machine, the IP address must be followed a colon and port number, for example:

By default, the publishing port of a mSupply Server is 19813. This number can be modified in the Database Settings… under Client-server tab of mSupply server.

If a database was selected in the Recent or Available tabs when you clicked on the Custom tab, these two fields display the corresponding information from that tab.

Once the server details have been entered, clicking the OK button will connect you to the server.

If you tick the Force the update of the local resources tick-box, it allows you systematic updating of the local resources on the client machine when it connects. As a rule, updating of the local resources is automatic on the remote machine each time it connects, when the structure of the database has been modified between two connections. Most of the time, this option is unnecessary. Nevertheless, in certain specific cases, it may be necessary to force the update.

Sometimes, the actual stock situation in a store becomes so out of step with mSupply's records that you want to start again from scratch with a brand new stocktake.

Be warned: Following the procedure below will result in the stock lines losing all Cost price data. Cost price data can be added back to the stock lines, but that is ordinarily a slow process that will not necessarily get back the correct Cost prices. But, you are only doing this because the mSupply record is so desperately inaccurate anyway… :-/

To do this, you will need to:

  1. Confirm or delete all customer invoices with status = nw (New) or sg (Suggested). This should remove from stock all lines that have been made unavailable, but are still showing as in stock - see figure below.
    1. Click on Customer
    2. Click on Show Customer Invoices
    3. Click on By Status
    4. Click on All new and suggested
    5. Double-click on the first displayed invoice
    6. Click on Confirm (or, if you want to delete the CI, delete each of the lines, and then Click on Delete)
    7. Click on OK & Next
    8. Repeat steps f & g until all invoices are confirmed (or deleted).Confirming all invoices with status nw and cn
  2. Empty the mSupply store of all stock by means of an Inventory Adjustment based on an mSupply stocktake of all stock in the store
    1. Create the stocktake - see figure below.
      1. Click on Item
      2. Click on Stocktakes
      3. Click on New stocktake
      4. Click OK (accept default filter values which includes all stock)Create new stocktake of all stock
    2. Set all actual quantities to zero (0) - see figure below.
      1. Click once on the first stock line. The whole line will become highlighted.
      2. Click once on the value in the 'Enter Quantity' column. The Enter Quantity value will become highlighted
      3. Type 0, then press Tab. Repeat this for each line of the whole stocktake. You should be able to be faster than 2 stock lines per second, maybe a lot faster. At 2 stock lines per second, you can get through 1000 stock lines in less than 10 minutes…
    3. Click on Create Inventory adjustments If you've got a lot of stock lines, this could take a while…Setting all quantities to zero (0)
  3. Import new stock as described in Importing items & stock

In a multi-store system, you will often be wanting to create new customers that are visible in only one store. By default, when new customers are created, they will be made visible to all stores in the system. If you actually want these new customers to be visible to only one store, you will need to edit the store visibility for that customer, and un-tick the visibility for all the other stores - a tedious exercise in a system with scores or hundreds of stores!

For this reason, there is a solution: There is a store preference called Names created in this store not visible in other stores. To use it:

  1. Edit the store preferences for the store that needs to be able to see the new customers and turn on the Names created in this store not visible in other stores store preference.
  2. Make sure that you have user permission to create customers in this store.
  3. Log in to the store
  4. Create the new customers

    … or import the customers - refer Importing Names

  • Last modified: 2021/03/31 14:57
  • by Gary Willetts