other_stuff:virtual_stores

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
other_stuff:virtual_stores [2025/03/31 14:37] – [Tags] Adrian Booneother_stuff:virtual_stores [2025/05/07 03:19] (current) – [Address details] Gary Willetts
Line 48: Line 48:
  
 <WRAP center round important 60%> <WRAP center round important 60%>
-If you're working within a syncing system (see [[synchronisation:introduction|Introduction to sync]]), stores and their settings/preferences can only be created and edited on the central server, and all stores exist on the central server. A mirror sync setup is slightly more complex - stores themselves and any settings related to //name// visibility are only editable on the central server (primary server in versions of mSupply older than v7.13), but master lists and //item// visibility settings are only editable on the primary server. In this case, all stores exist on both the central server and the primary server.+If you're working within a [[synchronisation:introduction|syncing system]], stores and their settings/preferences can only be created and edited on the central server, and all stores exist on the central server. A mirror sync setup is slightly more complex - stores themselves and any settings related to **name** visibility are only editable on the central server (or the primary server in versions of mSupply older than v7.13), but master lists and **item** visibility settings are only editable on the primary server. In this case, all stores exist on both the central server and the primary server.
 </WRAP> </WRAP>
  
Line 90: Line 90:
  
 === 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/Billing Address** fields in the store's name record (see the [[names:adding_and_editing#editing_or_viewing_a_name|5.01. Names: using, adding and editing]] page for details) if they are updated.
-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's name and press the //Tab// key on the keyboard to select the name from all those that begin with what you entered (or mSupply will select it for you if only one customer matches). When the **OK** or **OK & Next** buttons are clicked, the existing customer record will become this new store.
 +
 +=== Down arrow button ===
 +Only visible if editing an existing store, not when creating a new one. Clicking this button will open the store's name record (see the [[names:adding_and_editing]] page for information on names) where you can view and edit things like categories.
 === Disable this store === === Disable this store ===
  
Line 136: Line 140:
  
 ==== Preferences tab ==== ==== Preferences tab ====
 +
 <WRAP center round important 90%> <WRAP center round important 90%>
-  * The preferences tab is only visible if you are looking at the details of the store you are logged into. 
   * The preferences described here are set 'per store' and can be different for each store in an mSupply datafile.   * The preferences described here are set 'per store' and can be different for each store in an mSupply datafile.
-  * In a **synced system** there will be multiple 'sync satellites' and store preferences will need to be set for each store on each mSupply sync satellite.  See [[other_stuff:remote_sync]].+  * In a **synced system** the store preferences will be synced along with the store to any sites where the store is visible.
   * Other preferences (accessed through **File > Preferences...**) apply to //all// stores in an mSupply datafile.   * Other preferences (accessed through **File > Preferences...**) apply to //all// stores in an mSupply datafile.
   * If you have to set the same preferences for lots of stores you might like to try the [[other_stuff:bulk_store_preferences_editor|]]. It just might save you some time and your sanity :-)   * If you have to set the same preferences for lots of stores you might like to try the [[other_stuff:bulk_store_preferences_editor|]]. It just might save you some time and your sanity :-)
Line 182: Line 186:
 ^ Automatically populate supply quantities with requested quantities | On requisitions, automatically populate supply quantities with requested quantities, instead of 0. Supply quantities can still be edited. | ^ Automatically populate supply quantities with requested quantities | On requisitions, automatically populate supply quantities with requested quantities, instead of 0. Supply quantities can still be edited. |
 ^ Show extra fields on requisitions | When a line is selected on a response requisition, an extra box is displayed under the table of requisition lines to show the calculations behind the suggested quantity. The extra field is currently only populated for Côte d'Ivoire users. | ^ Show extra fields on requisitions | When a line is selected on a response requisition, an extra box is displayed under the table of requisition lines to show the calculations behind the suggested quantity. The extra field is currently only populated for Côte d'Ivoire users. |
-^ Keep requisition lines with zero requested quantity on finalise | If this is checkled, lines on requisitions that have zero requested quantity are kept when the requisition is finalised. Otherwise they are deleted (normal behaviour). |+^ Keep requisition lines with zero requested quantity on finalise | If this is checked, lines on requisitions that have zero requested quantity are kept when the requisition is finalised. Otherwise they are deleted (normal behaviour). |
 ^ Show comment field when entering supplier invoice lines | Allows users to type a comment for individual items received on a supplier invoice. | ^ Show comment field when entering supplier invoice lines | Allows users to type a comment for individual items received on a supplier invoice. |
 ^ Use EDD placeholder lines in supplier invoices from this store | If turned on, any placeholder lines on a customer invoice that is a stock transfer are duplicated on the supplier invoice in the receiving store when the customer invoice is finalised. The placeholder lines in the supplier invoice appear on an //Unsupplied items// tab (see the [[receiving_goods:supplier_invoices#unsupplied_items_tab|7.01. Supplier invoices]] page for details). **Note:** the placeholder lines are not duplicated on the supplier invoice if the receiving store is an [[mobile:user_guide2|mSupply mobile]] store (placeholder lines are not used in mobile stores). | ^ Use EDD placeholder lines in supplier invoices from this store | If turned on, any placeholder lines on a customer invoice that is a stock transfer are duplicated on the supplier invoice in the receiving store when the customer invoice is finalised. The placeholder lines in the supplier invoice appear on an //Unsupplied items// tab (see the [[receiving_goods:supplier_invoices#unsupplied_items_tab|7.01. Supplier invoices]] page for details). **Note:** the placeholder lines are not duplicated on the supplier invoice if the receiving store is an [[mobile:user_guide2|mSupply mobile]] store (placeholder lines are not used in mobile stores). |
Line 190: Line 194:
 ^ Use consumption and stock from customers for internal orders | If checked, when calculating the current stock and consumption figures (to calculate the suggested order quantity), the stock issued to all customers and the total stock of all customers will be used instead of the current stock and consumption of the current store. Note that customer stores are all those stores that have this store set as their supplying store. See the [[purchasing:ordering_from_one_store_to_another|]] page for details about internal orders. | ^ Use consumption and stock from customers for internal orders | If checked, when calculating the current stock and consumption figures (to calculate the suggested order quantity), the stock issued to all customers and the total stock of all customers will be used instead of the current stock and consumption of the current store. Note that customer stores are all those stores that have this store set as their supplying store. See the [[purchasing:ordering_from_one_store_to_another|]] page for details about internal orders. |
 ^ Items received on a purchase order must be within a minimum expiry date | When turned on, stock cannot be received if it has an expiry date that is before a date set on a purchase order. See [[https://docs.msupply.foundation/en:mobile:setup:server_side:config|mSupply mobile setup]] for details. | ^ Items received on a purchase order must be within a minimum expiry date | When turned on, stock cannot be received if it has an expiry date that is before a date set on a purchase order. See [[https://docs.msupply.foundation/en:mobile:setup:server_side:config|mSupply mobile setup]] for details. |
-^ Store credentials are controlled on the central server | In a [[synchronisation:introduction|synchronising system]], if this preference is checkd, then the //Store credentials// preferences (see the [[other_stuff:virtual_stores#store_credentials|Store credentials]] section above for details) can only be edited on the Central server, rather than the primary server (where they are usually edited). Also, if this preference is turned on, the //Store credentials// cannot be edited on remote sites in a synchronisation system. |+^ Store credentials are controlled on the central server | In a [[synchronisation:introduction|syncing system]], if this preference is checked, then the //Store credentials// preferences (see the [[other_stuff:virtual_stores#store_credentials|Store credentials]] section above for details) can only be edited on the central server, rather than on the site where the store is active (where they are usually edited). |
 ^ mobile: Alert if a patient is dispensed the same vaccine multiple times in a week | This preference only has an effect if this is an mSupply mobile store. See [[https://docs.msupply.foundation/en:mobile:setup:server_side:config|mSupply mobile setup]] for details. | ^ mobile: Alert if a patient is dispensed the same vaccine multiple times in a week | This preference only has an effect if this is an mSupply mobile store. See [[https://docs.msupply.foundation/en:mobile:setup:server_side:config|mSupply mobile setup]] for details. |
 ^ mobile: Enforce lookback period | This preference only has an effect if this is an mSupply mobile store. See [[https://docs.msupply.foundation/en:mobile:setup:server_side:config|mSupply mobile setup]] for details. | ^ mobile: Enforce lookback period | This preference only has an effect if this is an mSupply mobile store. See [[https://docs.msupply.foundation/en:mobile:setup:server_side:config|mSupply mobile setup]] for details. |
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 forand 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. 
 +</WRAP>
  
 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 or
   - 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:remote_sync|syncing system]] 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.+ 
 +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 visibilitybecause 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 turn on the preference to make master lists control item visibility in stores. Do that in **File > Preferences...** on the //Item// tab - see [[preferences:general#item_tab|General preferences, the item tab]] for details. 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:general#item_tab|General preferences, the item tab]] for details.
Line 325: Line 336:
  
 === Visibility tab === === Visibility tab ===
 +
 <WRAP center round important 90%> <WRAP center round important 90%>
-If your system is Sync system (with Primary and Satellite servers) and your store is hosted on a Sync Satellite server, then you will not see the Visibility tab.  These settings need to be made while logged in to the Sync Primary Server.+In syncing system, the **item** visibility icons and fields will be disabled unless you're on the primary serverthe **name** visibility icons and fields will be disabled unless you're on the central server.
 </WRAP> </WRAP>
  
 <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 of items 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!+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!
 </WRAP> </WRAP>
  
Line 340: Line 352:
 If you have turned on the [[preferences:general#item_list_master_local|preference to control item visibility by master list]] then you will not be able to use the visibility tab or the visibility settings on the store tab of an individual item's details window. If you have turned on the [[preferences:general#item_list_master_local|preference to control item visibility by master list]] then you will not be able to use the visibility tab or the visibility settings on the store tab of an individual item's details window.
 </WRAP> </WRAP>
- 
  
 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 "names") in the datafile and which are visible in this store. You are also able to edit the visibility of names:+ 
 +This tab shows a list of all the customers, suppliers and stores (collectively called "names") in the datafile and which are visible in this store. If you're on the central server (and you have edit visibility permissions for the store), you are also able to edit the visibility of names:
  
 {{ :other_stuff:pasted:20250328-155144.png?600 }} {{ :other_stuff:pasted:20250328-155144.png?600 }}
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:virtual_stores#disable_this_store|Disable it - see above]].+ 
 +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:virtual_stores#disable_this_store|disable it - see above]].
  
 <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.+If the store is **Active** on another site, then this process will not delete the site.
 </WRAP> </WRAP>
  
Line 424: Line 437:
   * mSupply may prevent the merge due to unfinalised CIs from other stores in the system.  You will need to finalise these CIs on the corresponding stores before the merge is successful.   * mSupply may prevent the merge due to unfinalised CIs from other stores in the system.  You will need to finalise these CIs on the corresponding stores before the merge is successful.
   * These can be hard to find on a multi-store system where the transactions could have come from a number of places.  Suggested approach:  Use [[other_stuff:misc_topics#supervisor_mode_-_all_stores|Supervisor mode]], view CIs, and customise the list view to show Store name.   * These can be hard to find on a multi-store system where the transactions could have come from a number of places.  Suggested approach:  Use [[other_stuff:misc_topics#supervisor_mode_-_all_stores|Supervisor mode]], view CIs, and customise the list view to show Store name.
-  * If these transactions are on a number of stores on satellite sites on dodgy internet connections, it can take **//days//** to log in to the satellite sites, finalise the CIs, and sync the finalised CIs back to the Primary.  Meanwhile, there is a danger that new transactions will be created!  :-\+  * If these transactions are on a number of stores on remote sites with dodgy internet connections, it can take **//days//** to log in to the remote sites, finalise the CIs, and sync the finalised CIs back to the central server.  Meanwhile, there is a danger that new transactions will be created!  :-\
   * These inconveniences are why the [[other_stuff:virtual_stores#turn_an_existing_customer_into_a_store|Turn an existing customer into a store]] feature was developed ;-).   * These inconveniences are why the [[other_stuff:virtual_stores#turn_an_existing_customer_into_a_store|Turn an existing customer into a store]] feature was developed ;-).
 </WRAP> </WRAP>
  • Last modified: 2025/03/31 14:37
  • by Adrian Boone