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/28 15:54] – [Names tab] Gary Willettsother_stuff:virtual_stores [2025/05/07 03:19] (current) – [Address details] Gary Willetts
Line 44: Line 44:
 The columns in the //Chosen// list are displayed in the table, the columns in the //Available// List can be shosen to be displayed. Select a column you want to show in the //Available// list and click on the ''>>'' button to move it to the //Chosen// list. Similarly, click on one in the //Chosen// list and click on the ''<<'' button to move it to the //Available// list and remove it from the display. You can also drag items in the //Chosen// list up and down to change the order they appear; top of the left is the leftmost column, bottom of the list is the rightmost column. The columns in the //Chosen// list are displayed in the table, the columns in the //Available// List can be shosen to be displayed. Select a column you want to show in the //Available// list and click on the ''>>'' button to move it to the //Chosen// list. Similarly, click on one in the //Chosen// list and click on the ''<<'' button to move it to the //Available// list and remove it from the display. You can also drag items in the //Chosen// list up and down to change the order they appear; top of the left is the leftmost column, bottom of the list is the rightmost column.
 ==== Editing a store ==== ==== Editing a store ====
 +
 Double-click on any store in the list in the View stores window described [[other_stuff:virtual_stores#viewing_available_stores|above]] to view or edit its details. You will see the same window as in the [[other_stuff:virtual_stores#creating_new_stores|Creating new stores]] section below but the various fields will be filled in with the store's current settings. You can click into the fields and edit them as desired. Note that in the top left of the window, the name of the store you are editing is always displayed, regardless of which tab you are on, so that you always have a reminder of which store you are editing!  Double-click on any store in the list in the View stores window described [[other_stuff:virtual_stores#viewing_available_stores|above]] to view or edit its details. You will see the same window as in the [[other_stuff:virtual_stores#creating_new_stores|Creating new stores]] section below but the various fields will be filled in with the store's current settings. You can click into the fields and edit them as desired. Note that in the top left of the window, the name of the store you are editing is always displayed, regardless of which tab you are on, so that you always have a reminder of which store you are editing! 
 +
 +<WRAP center round important 60%>
 +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>
 +
  
 ==== Creating new stores ==== ==== Creating new stores ====
 +
 <WRAP center round important 60%> <WRAP center round important 60%>
 This new store will inherit the same user and group permissions (but not login permissions!) as the store which you are logged in to when you execute it.  It is therefore worth logging in to a store that has similar user and group permissions to those that you want to have in the new store.  Often the supplying store will be a suitable store for this purpose. This new store will inherit the same user and group permissions (but not login permissions!) as the store which you are logged in to when you execute it.  It is therefore worth logging in to a store that has similar user and group permissions to those that you want to have in the new store.  Often the supplying store will be a suitable store for this purpose.
 +
 +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:sync_sites|sync sites]] if you want to move it to (make it active on) another site.
 </WRAP> </WRAP>
  
Line 81: 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 106: Line 119:
 Tags are used in several ways: Tags are used in several ways:
   * for determining which programs a store can use.   * for determining which programs a store can use.
-  * for contronlling some customisation features.+  * for controlling some customisation features.
   * for reporting to group stores together.   * for reporting to group stores together.
   *    * 
Line 121: Line 134:
   * Set the [[other_stuff:virtual_stores#the_preferences_tab|preferences]] for the store.   * Set the [[other_stuff:virtual_stores#the_preferences_tab|preferences]] for the store.
   * Set the store's [[other_stuff:virtual_stores#the_logo_tab|logo]] so that it can appear in print-outs and reports.   * Set the store's [[other_stuff:virtual_stores#the_logo_tab|logo]] so that it can appear in print-outs and reports.
-  * Set the [[other_stuff:virtual_stores#the_visibility_tab|visibility]] of items in the store. All items in the system will be set to invisible in the new store when it is created.  You will need to modify visibility of items in order to be able to handle stock of those items+  * Set the [[other_stuff:virtual_stores#the_visibility_tab|visibility]] of names and items in the store. All items in the system will be set to invisible in the new store when it is created.  You will need to modify visibility of items in order to be able to handle stock of those items.
-  * Setup Synchronisation if you are going to use a synced system. See [[other_stuff:remote_sync]].+
   * Setup any [[other_stuff:virtual_stores#the_custom_fields_tab|custom store data]] (used for reporting).   * Setup any [[other_stuff:virtual_stores#the_custom_fields_tab|custom store data]] (used for reporting).
   * Set the master lists used by the store (a convenient method for controlling item visibility).  See [[items:master_lists]]   * Set the master lists used by the store (a convenient method for controlling item visibility).  See [[items:master_lists]]
  
-<WRAP center round alert 90%> 
-If this newly created store will be 'Active' on a satellite server on a synced mSupply system (refer to [[other_stuff:remote_sync]], then user access to the store will need to be defined on that satellite server. 
-</WRAP> 
  
 ==== 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 177: 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 185: 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 296: 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 320: 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 335: 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 374: 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 380: 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 390: 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 419: 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/28 15:54
  • by Gary Willetts