Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| other_stuff:virtual_stores [2025/03/31 14:48] – [Preferences tab] Adrian Boone | other_stuff:virtual_stores [2025/11/10 00:04] (current) – [Merging stores] Mark Glover | ||
|---|---|---|---|
| Line 48: | Line 48: | ||
| <WRAP center round important 60%> | <WRAP center round important 60%> | ||
| - | If you're working within a syncing system (see [[synchronisation: | + | If you're working within a [[synchronisation: |
| </ | </ | ||
| Line 58: | Line 58: | ||
| As noted above, in a syncing system you must be logged into the central server to create a new store - it will be synced to any site where it is visible to any stores active on that site (which will also include the supplying store). When a store is created, it is made active on the central server by default - see [[synchronisation: | As noted above, in a syncing system you must be logged into the central server to create a new store - it will be synced to any site where it is visible to any stores active on that site (which will also include the supplying store). When a store is created, it is made active on the central server by default - see [[synchronisation: | ||
| - | </ | ||
| - | |||
| - | <WRAP center round alert 90%> | ||
| - | <wrap em>After creating the new store, you will not be able to immediately log in to it.</ | ||
| </ | </ | ||
| Line 90: | Line 86: | ||
| === Address details === | === Address details === | ||
| - | + | Enter the address and contact details for the store in here if there are any. These details can be used in reports. Note that these fields will be copied to the **Main/ | |
| - | Enter the address and contact details for the store in here if there are any. These details can be used in reports | + | |
| + | === Turn an existing customer into a store === | ||
| + | Only visible if you are creating a new store, not if you are editing an existing one. If this is checked then the **Name** field becomes a search field for the customer: enter the first few characters of the customer' | ||
| + | === Down arrow button === | ||
| + | Only visible if editing an existing store, not when creating a new one. Clicking this button will open the store' | ||
| === Disable this store === | === Disable this store === | ||
| Line 117: | Line 117: | ||
| * for controlling some customisation features. | * for controlling some customisation features. | ||
| * for reporting to group stores together. | * for reporting to group stores together. | ||
| - | * | + | |
| This area shows the tags that the store currently has. To add a tag, simply click into the area and type the tag's name. When you have finished typing the tag's name then press the Tab or Space keys on the keyboard (not Enter or return, that will close the window!). You know when you have done it right because the tag will appear in its own little box with an ' | This area shows the tags that the store currently has. To add a tag, simply click into the area and type the tag's name. When you have finished typing the tag's name then press the Tab or Space keys on the keyboard (not Enter or return, that will close the window!). You know when you have done it right because the tag will appear in its own little box with an ' | ||
| Line 130: | Line 131: | ||
| * Set the [[other_stuff: | * Set the [[other_stuff: | ||
| * Set the store' | * Set the store' | ||
| - | * Set the [[other_stuff: | + | * Set the [[other_stuff: |
| + | For any system bigger than the most basic operation, you will likely want to use [[items: | ||
| + | </ | ||
| * Setup any [[other_stuff: | * Setup any [[other_stuff: | ||
| - | * Set the master lists used by the store (a convenient method for controlling item visibility). | ||
| Line 155: | Line 158: | ||
| |<100% 40%>| | |<100% 40%>| | ||
| + | ^ Preference | ||
| ^ Sort available batches by VVM status rather than Expiry | When issuing stock, this will sort the list of available batches by vaccine status first, then by expiry date rather than by expiry date first (e.g. [[issuing_goods: | ^ Sort available batches by VVM status rather than Expiry | When issuing stock, this will sort the list of available batches by vaccine status first, then by expiry date rather than by expiry date first (e.g. [[issuing_goods: | ||
| ^ Patients created in other stores not visible in this store| If this is checked, patients that are created in other stores across all sites will not be visible in this store. If it is **off**, all patients from all stores from all sites will be visible to this store. It is set to true by default when a store is created. **USE CAUTION:** Turning this **OFF** for many stores does not scale well and can overload the sync system. See the [[dispensing: | ^ Patients created in other stores not visible in this store| If this is checked, patients that are created in other stores across all sites will not be visible in this store. If it is **off**, all patients from all stores from all sites will be visible to this store. It is set to true by default when a store is created. **USE CAUTION:** Turning this **OFF** for many stores does not scale well and can overload the sync system. See the [[dispensing: | ||
| Line 176: | Line 180: | ||
| ^ Show item unit column when issuing| If checked, when goods are issued on a customer invoice or prescription, | ^ Show item unit column when issuing| If checked, when goods are issued on a customer invoice or prescription, | ||
| ^ Log transaction edit | | | ^ Log transaction edit | | | ||
| - | ^ Set pack to one for all visible items in this store| | | + | ^ Set pack to one for all visible items in this store| |
| ^ Use remote authorisation for response requisitions | Turns on remote authorisation for response requisitions. See [[other_stuff: | ^ Use remote authorisation for response requisitions | Turns on remote authorisation for response requisitions. See [[other_stuff: | ||
| ^ Include requisitions from this store in suppliers' | ^ Include requisitions from this store in suppliers' | ||
| Line 207: | Line 211: | ||
| == Threshold for overstock == | == Threshold for overstock == | ||
| - | The minimum | + | The months of stock of an item for it to be considered as overstocked. |
| - | This value should | + | Clearly, the Threshold for overstock must be more than the [[other_stuff:virtual_stores#threshold_for_understock|Threshold for understock]]. The default |
| </ | </ | ||
| == Threshold for understock == | == Threshold for understock == | ||
| - | Also called <wrap em> | + | Also called <wrap em> |
| - | This alert should only be triggered when your stock levels fall below your buffer stock levels. | + | This alert should only be triggered when your stock levels fall below your buffer stock levels. |
| </ | </ | ||
| Line 301: | Line 305: | ||
| ==== Master lists tab and Visibility tab (controlling item visibility) ==== | ==== Master lists tab and Visibility tab (controlling item visibility) ==== | ||
| - | Controlling the visibility of items in different stores is important because you can only order, distribute, receive goods for and report on items that are visible in your store. It's also important that stores don't have items visible that they don't use so that they don't accidentally order them etc. | + | |
| + | Controlling the visibility of items in different stores is important because you can only order, distribute, receive goods for, and report on items that are visible in your store. It's also important that stores don't have items visible that they don't use so that they don't accidentally order them etc. | ||
| + | |||
| + | <WRAP center round important 60%> | ||
| + | In a syncing system, item visibility and master lists can only be edited on the primary server => if it's a mirror sync system, then you'll need to create the store first on the central server and wait for it to sync to the primary. | ||
| + | </ | ||
| If you have lots of stores in your data file, managing item visibility can turn into a difficult task. Thankfully, mSupply has some helpful tools to make it simple! There are 2 ways to manage item visibility and you use one or the other, not both: | If you have lots of stores in your data file, managing item visibility can turn into a difficult task. Thankfully, mSupply has some helpful tools to make it simple! There are 2 ways to manage item visibility and you use one or the other, not both: | ||
| - | - automatically using the Master lists tab or | + | - automatically using the Master lists tab (recommended!) |
| - manually using the Visibility tab | - manually using the Visibility tab | ||
| + | |||
| Each are useful in different situations and are described below. | Each are useful in different situations and are described below. | ||
| === Master lists tab === | === Master lists tab === | ||
| - | If you have a lot of stores in mSupply, we recommend that you use master lists to control item visibility. Especially in a [[other_stuff: | ||
| - | The first thing to do is to turn on the preference to make master lists control item visibility in stores. Do that in **File > Preferences...** on the //Item// tab - see [[preferences: | + | If you have a lot of stores in mSupply, and especially in a syncing system, we recommend that you use master lists to control item visibility, because it means that the visibility of newly created items will be automatically handled correctly. The visibility of items in a store whose visibility is controlled by master lists is immediately updated if any changes are made to any of the master lists. For instance, if a new item is added to a master list controlling visibility then that new item is made visible in all stores that use the master list. And any items deleted from the master list are made invisible in any store using that list. |
| + | |||
| + | The first thing to do is to make sure that you have turned | ||
| The next thing to do is to create the master list(s) that will control item visibility. See [[items: | The next thing to do is to create the master list(s) that will control item visibility. See [[items: | ||
| Line 325: | Line 336: | ||
| === Visibility tab === | === Visibility tab === | ||
| + | |||
| <WRAP center round important 90%> | <WRAP center round important 90%> | ||
| - | If your system is a Sync system | + | In a syncing |
| </ | </ | ||
| <WRAP center round tip 90%> | <WRAP center round tip 90%> | ||
| - | You will //only// be able to use this tab if you have permission to login to the store you have selected and you have permission to edit the visibility | + | You will //only// be able to use this tab if you have permission to login to the store you have selected and you have permission to edit visibility in that store.\\ To log into a store you may need to first give yourself permission to do so under File > Edit Users > Double-click your user name > the Log in rights tab. Phew! |
| </ | </ | ||
| Line 340: | Line 352: | ||
| If you have turned on the [[preferences: | If you have turned on the [[preferences: | ||
| </ | </ | ||
| - | |||
| Here's what the tab looks like: | Here's what the tab looks like: | ||
| Line 379: | Line 390: | ||
| ==== Names tab ==== | ==== Names tab ==== | ||
| - | This tab shows a list of all the customers, suppliers and stores (collectively called " | + | |
| + | This tab shows a list of all the customers, suppliers and stores (collectively called " | ||
| {{ : | {{ : | ||
| Line 385: | Line 397: | ||
| The table shows whether the name is a customer or supplier (or both). The checkboxes in the **Visible in this store** column are editable. If checked then the name is visible in this store, if unchecked then the name is not visible in this store. Click on one of the checkboxes to change its state. | The table shows whether the name is a customer or supplier (or both). The checkboxes in the **Visible in this store** column are editable. If checked then the name is visible in this store, if unchecked then the name is not visible in this store. Click on one of the checkboxes to change its state. | ||
| - | * **Store checkbox:** If checked then names thast are stores are shown in the table | + | * **Store checkbox:** If checked then names that are stores are shown in the table |
| * **Customer checkbox:** If checked then names that are customers are shown in the table | * **Customer checkbox:** If checked then names that are customers are shown in the table | ||
| * **Supplier checkbox:** If checked then names that are suppliers are shown in the table | * **Supplier checkbox:** If checked then names that are suppliers are shown in the table | ||
| Line 395: | Line 407: | ||
| Clicking on the **OK**, **OK & Next** or **OK & Previous** buttons will save any changes you make on this tab. | Clicking on the **OK**, **OK & Next** or **OK & Previous** buttons will save any changes you make on this tab. | ||
| ==== Deleting a store ==== | ==== Deleting a store ==== | ||
| - | To delete a store, click on the //Delete// button in the View stores window. **Note:** deletion of a store is a serious thing to do and is only possible when that store contains zero stock and there have been no transactions recorded. mSupply will check and tell you that deletion is not possible if these criteria are not met. If you can't meet these criteria and you still want to stop people using the store then you can [[other_stuff: | + | |
| + | To delete a store, click on the //Delete// button in the View stores window. **Note:** deletion of a store is a serious thing to do and is only possible when that store contains zero stock and there have been no transactions recorded. | ||
| + | |||
| + | <WRAP center round important 60%> | ||
| + | If the store is **Active** on another site, then this process will not delete the site. | ||
| + | </ | ||
| + | |||
| + | ==== Merging stores ==== | ||
| + | |||
| + | Circumstances change, and you may find yourself in a position where you want to merge two stores. | ||
| <WRAP center round alert 60%> | <WRAP center round alert 60%> | ||
| - | If the store is **Active** on a sync satellite site, then this process will not delete the sync satellite site. | + | Merging stores |
| </ | </ | ||
| + | |||
| + | |||
| + | <WRAP center round important 60%> | ||
| + | The merge store feature has only recently been developed (2025). | ||
| + | |||
| + | Please email [[support@msupply.foundation]] so that the support team can test and see if you will encounter any issues, and then, in consultation with you, carry it out on your Central server for you. | ||
| + | </ | ||
| + | |||
| + | <WRAP center round info 60%> | ||
| + | In order to merge stores, both of them need to be: | ||
| + | |||
| + | - Active on the Central server | ||
| + | - Not disabled (Special > Show stores) | ||
| + | |||
| + | It is OK if one or both of the stores are: | ||
| + | * Not visible to each other | ||
| + | * Not visible to the store that the user is logged in to when carrying out the merge | ||
| + | * On Hold (Customer > Show Customer) | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| Line 407: | Line 450: | ||
| * The ' | * The ' | ||
| - | * The recommended :-D method: | + | * The recommended :-D method: |
| - | <WRAP center round important | + | <WRAP center round alert 90%> |
| **Whichever method is used, this is difficult to reverse. | **Whichever method is used, this is difficult to reverse. | ||
| </ | </ | ||
| Line 424: | Line 467: | ||
| * mSupply may prevent the merge due to unfinalised CIs from other stores in the system. | * mSupply may prevent the merge due to unfinalised CIs from other stores in the system. | ||
| * These can be hard to find on a multi-store system where the transactions could have come from a number of places. | * These can be hard to find on a multi-store system where the transactions could have come from a number of places. | ||
| - | * If these transactions are on a number of stores on satellite | + | * If these transactions are on a number of stores on remote |
| * These inconveniences are why the [[other_stuff: | * These inconveniences are why the [[other_stuff: | ||
| </ | </ | ||
| Line 433: | Line 476: | ||
| - | <WRAP center round alert 60%> | + | <WRAP center round info 60%> |
| - | If the name is not visible to the store that you are logged in to, this method will not work! First make the name visible, then start this process... | + | This method will only work if you are logged in to a store that is visible to the customer. |
| </ | </ | ||
| + | <WRAP center round important 60%> | ||
| + | * The new store will be made visible to all stores that the original customer was visible to. | ||
| + | * The new store will have the same User and group permissions as the store you are logged in to | ||
| + | * The only user who will be configured to be able to //login// to the new store is the user who created the store. | ||
| + | </ | ||
| - | + | | |
| - | | + | - Is visible to the customer that is to be converted to a store |
| - | - **Customer > Show customers...** to find the customer that you want to convert into a store and copy the Name. This will ensure that you are converting the correct | + | - Has similar |
| - | - **Special > Show stores... > New Store** | + | - **Customer > Show customers...** to find the customer that you want to convert into a store and copy the name. This will ensure that you are converting the correct |
| + | - **Special > Show stores... > New Store** | ||
| - Click on the **Turn an existing customer into a store** checkbox | - Click on the **Turn an existing customer into a store** checkbox | ||
| - | - Enter the existing customer name into the **Name** field. | + | - Enter the existing customer name into the **customer** field. |
| + | If you do not see the store code field getting populated, then the existing customer has not been recognised - try again. | ||
| + | </ | ||
| - Populate the [[other_stuff: | - Populate the [[other_stuff: | ||
| - Click **OK** | - Click **OK** | ||