items:phased_stocktakes

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
items:phased_stocktakes [2023/12/12 15:35] Gary Willettsitems:phased_stocktakes [2023/12/13 17:38] (current) Gary Willetts
Line 10: Line 10:
 Before using phased stocktakes you must tell mSupply which parts of your shelf location codes (see the [[items:item_locations#adding_a_location|4.06. Stock locations and location types]] page for details) represent the aisle, level and position of the location (aisle = rack, level = horizontal level within the rack, position = vertical 'column' within the rack). Before using phased stocktakes you must tell mSupply which parts of your shelf location codes (see the [[items:item_locations#adding_a_location|4.06. Stock locations and location types]] page for details) represent the aisle, level and position of the location (aisle = rack, level = horizontal level within the rack, position = vertical 'column' within the rack).
  
 +See the [[other_stuff:virtual_stores#location_code_pattern|26.07. Virtual stores]] page for details on how this is set.
  
  
Line 20: Line 21:
 This is so important that mSupply will show you a warning message when you try to create a new stocktake if it detects any customer invoices with suggested status. Please read the warning and take suitable action. This is so important that mSupply will show you a warning message when you try to create a new stocktake if it detects any customer invoices with suggested status. Please read the warning and take suitable action.
 </WRAP> </WRAP>
- 
- 
  
 /* /*
Line 30: Line 29:
  
  
-===== Displaying stocktakes already performed ===== +===== Creating a phased stocktake ===== 
-Select **Show Stocktakes...** from the **Items** menu to display any stocktakes already created or performed. This displays the following screen:+Choose //Items > Show Stocktakes...// from the menus or click on the //Stocktakes// button on the //Item// tab of the Navigator. This window will open, showing a list of the current stocktakes:
  
-{{ :items:stocktake.png?400 }}+{{ :items:stocktake.png?500 }} 
 + 
 +Note that only phased stocktakes will have a value in the //Reference// column.
  
 The //Show:// filter allows you to choose which stocktakes are displayed in the list. Options are: The //Show:// filter allows you to choose which stocktakes are displayed in the list. Options are:
Line 41: Line 42:
   *  **Last year:** shows all stocktakes of any status that were created in the year before the current one.   *  **Last year:** shows all stocktakes of any status that were created in the year before the current one.
  
-**Note**: there will be an additional **Program** column in the table if you have program based master lists created (see [[items:programs|]]) so that you can easily see if any of your stocktakes are program based.+To create a phased stocktake click on the **New phased stocktake** button. The options window opens:
  
-==== Buttons on the Stocktake list window ====+{{ :items:phased_stocktake_options.png?400 |}}
  
-=== New stock take === +  * **Count reference**: This is mandatory and is the unique reference for this phased stocktake (that is, the collection of all the individual stocktakes that makeup this one). It must be unique so you will be shown an alert if it isn't
-**New stock take** is the normal way that you would create a stocktake, described in more detail on the rest of this page+  * **Item filter**: Make settings here to select the stock that is included in the stocktake. The filters work the same as for standard stocktakes as described on the [[items:stocktakes#filtering_the_stock_to_be_included|4.17. Stocktakes]] page
-=== New blank stock take === +  * **Stock location**: Here you can select a particular aisle or level of the warehouse to include in the stocktakeEnter the identifier of an aisle in the **Aisle** textbox or the identifer of level in the **Level** textbox: 
-**New blank stock take** This would be used only if you are going to use the stocktake process to add new stockthat is stock that you are sure is //not// already recorded as in your store  +    * If you enter an **Aisle** value onlythen a stocktake will be created for each level in that aisle. 
-=== Delete stock take === +    * If you enter a **Level** value only, then a stocktake will be created for that level in each aisle in the warehouse. 
-**Delete stock take** allows you to delete stocktakes that have not been processed (finalised) into inventory adjustments. +    If you enter an **Aisle** and **Level** value then a single stocktake will be created for the level in the aisle specified. 
-<WRAP center round alert 60%> +    * If you enter neither value then a stocktake will be created for every level in every aisle in the warehouse.
-There is little point in keeping old stocktakes with status = "sg", especially if you are about to create new stocktake containing the same items.  Indeedit can be quite dangerous to leave old stocktakes with status = "sg" in your system If time has passed since the stocktake was created, then the snapshot and actual quantities are almost certainly incorrect.  For good housekeeping reasons, it is good practice to delete old "suggested" stocktakes (status = "sg"). +
-</WRAP> +
-===== Creating new stocktake ===== +
-After viewing the current stocktakes, click on the ** New stock take** button, and the following window will appear:+
  
-{{ :items:selectitemsstocktake.png?400 |}}+When you click on the **OK** button mSupply will create a stocktake for each level in each aisle you have selected to be included in the phased stocktake. Each stocktake will contain one line for each line of stock found in a location that beloings to the aisle/level combination that the stocktake is for.
  
-You can produce a stocktake for //all// items in your store by clicking **OK** without entering any filtering criteria Howeverit will often be helpful to filter the stock that will be included in a number of ways as discussed below.+When the stocktake creation is complete you will be told how many stocktakes were created in an alert messageWhen you close the message, the stocktakes will be displayed in the table like this:
  
-==== Filtering the stock to be included ==== +{{ :items:pasted:20231213-124304.png?500 }}
-You can filter by: +
-  * [[items:item_basics:tab_general|Item properties]] Item name, code etc. as shown in this screenshot: {{ :items:dd_options.png?300 |Item properties filter}} +
-  * [[items:item_categories|Item categories]] +
-  * [[items:item_categories#ven_categories|VEN categories]] +
-  * [[items:department_management#managing_item_access_with_departments|Department]] +
-  * [[items:master_lists|Master list]] If you organise your items using master lists this can be a very powerful way of including items on particular master lists only in a stocktake e.g. for programmes +
-  * [[receiving_goods:donors#managing_donors|Donor]] This filter is only displayed if the donor tracking preference is turned on (see [[receiving_goods:donors#using_the_donor_module|Using the donor module]]) +
-  * [[items:item_locations#stock_locations_and_location_types|Locations]]. This is recommended when you are doing a full stocktake of a large warehouse where you can have several stocktake teams working simultaneously - see the  [[items:stocktakes#filtering_by_location|Filtering by location]] section below. +
-  * **Expiry date**. Search for items whose expiry is before a particular date. This allows you to easily remove all expired items from stock. +
-  * **Randomly selected**.  Select a number of items randomly chosen by mSupply.  This is handy for the purposes of doing an audit.+
  
-<WRAP center round important 60%> +The reference in the //Reference// column is constructed as ''Count reference-Number-Aisle-Level/Phase'' where: 
-Whatever filters you use, ad-hoc or non-stock items will **never** be included in stocktake +  ''Count reference'' is the **Count reference** value entered in the stocktake options 
-</WRAP>+  * ''Number'' is an incrementing number starting at 1 and padded to 5 digits with leading zeroes 
 +  * ''Aisle'' is the aisle this stocktake is for 
 +  * ''Level'' is the level this stocktake is for 
 +  * ''Phase'' is the phase of this stocktake, a number from 1 to 3
  
-==== Filtering the stock Expiry ==== 
-You can carry out a stock take based on expiry dates for your stock. This is useful to review and to remove expired stock from your inventory. 
  
-{{ :items:stock_take-2023-04-19-t18-07.png?400 |}} +===== Carrying out a phased stocktake ===== 
-==== Filtering by location ==== +To open phased stocktake, double click on it in the listThe stocktake detail window is opened:
-Filtering by location is an especially useful way of breaking up large stocktake in to a series of smaller stocktakes.  This also allows different teams to undertake different smaller stocktakes simultaneously.+
  
-<WRAP center round alert 60%> +{{ :items:pasted:20231213-161135.png?600 }}
-Of course, it is not possible to filter by [[items:item_locations#item_locations_and_location_types|stock locations]] if locations have not been defined, and stock placed in to those locations!</WRAP>+
  
-<WRAP center round info 60%> +  * **Description**: An editable description of the stocktakeSet to the date the stocktake was created followed by "Stocktake" by default 
-  The "Shelf location" in the top left //Item properties// drop-down list is the **default shelf location** of the item, which is where stock of a particular item might usually storedThis is not a recommended way of organising a warehouse, and is included here only due to customer request ;-). +  * **Reference**: The count referenceread only 
-  * To filter the stock take by shelf location to include what stock is actually stored there (according to mSupply records!)use the **Stock location** filter. +  * **Comment**: Enter anything you need to remember about this stocktake 
-</WRAP>+  * **Stocktake date**: the date the stocktake count was started, set to the creation date by default
  
-In this example, the location filter has been set to **equals** (the default), and the entry in the box has been typed in as ''A'' Only stock in shelf locations called ''A'' will be included in the stocktake. 
  
-{{ :items:stock_loc_fltr.png?400 }}+==== Print the count sheets ==== 
 +The next thing to do is to print out the count sheets so that the warehouse operatives can take them into the warehouse to carry out the count. At this stage, when the stocktake is at sg (suggested) status, this is the only thing you can print and it looks like this:
  
-===== Preparing the stocktake =====+{{ :items:pasted:20231213-164425.png?600 }}
  
-The stocktake list is produced: +<WRAP info center round 90%> 
- +**NOTE:** When the **Reference** value ends in ''/1'' the count sheets contain a line for every location in the aisle/level combination this stocktake is for. These are the blank lines with a value only in the //Location// (EmplacecolumnWhen the **Reference** value ends in ''/2'' or ''/3'' then only lines in the stocktake are printed.
-  Sorted alphabetically, by name +
-  Omitting items whose stock level is zero +
- +
-At this point the status of the stocktake is **sg** (suggested i.e. it is still being worked on and has not affected stock in any way yet): +
- +
-{{ :items:stocktake_details.png?700 |}} +
- +
-Now fill in the information at the top of the stocktake: +
-  * **Description:** A default description is filled in for you.  We recommend that edit this to make it more meaningful while processing and for when you look back at your records later.  This description is what is visible when you see a list of stocktakes.  For example, you could add ''Annual stocktake'' or ''Monthly check'' And or, if you are filtering by anything such as stock location, it is worth including that here, e.g. ''M02.12.2A''+
-  * **Comment:** Put any other information you need to record about the stocktake in here. +
-  * **Stock take date:** This is the date you performed the stocktake and is set to the date the stocktake was created by default. Users will only be able to edit this if they have the //Can edit stocktake dates// permission set (see [[admin:managing_users#the_permissions_tabs|Managing users]] for more information)They will also be able to set the confirmation date of the inventory adjustments created from the stocktake when it has been finalised (but you can never change the date to before the //Stock take date// set in this field). +
- +
-**New line button**: You can add new lines to the stocktake by clicking on this button (see the [[items:stocktakes#adding_items_not_in_the_stocktake_list|Adding items not in the stocktake]] section below) +
- +
-**Delete lines(s) button**: Click on this to remove lines you have already selected in the list from the stocktake (you can use the usual Shift and Ctrl/Cmd clicking to select lines as usual). +
- +
-Just a quick word about the read-only (non-editable) information displayed at the top of the stocktake: +
-  //Stock take key//: The stock take number. This is an automatically generated number which increments by 1 for each new stocktake. It is **unique within a store** only so it is possible for stocktakes from different stores to have the same number. +
-  * //Stock take entered date//: The date the stocktake was created in mSupply. +
-  * //Stock take status//: The current status is the stocktake: +
-    * sg = suggested, the stocktake is still being worked on and is editable - new lines can be added or deleted and values can be edited etc. +
-    * fn = finalised, the stocktake is complete and cannot be edited (inventory adjustments have been created form it) +
- +
-The stocktake is a list of your stock, providing you with a 'snapshotof your stock at a point in time.  From this, mSupply enables you to create printed lists of your stock items from which you and your staff can do the physical stocktake. +
- +
- +
-==== Example for a large warehouse ==== +
-A large warehouse can have thousands of locations.  A full stocktake would run to tens or even hundreds of pages.  This is a challenge to manage.  In cases like this, it is recommended to create stocktakes broken down according to locations. +
- +
-<WRAP center round important 60%> +
-Remember to [[items:stocktakes#confirm_customer_invoices|confirm any outstanding CIs]] with status = **sg** before you start, and don't let any of your staff create any new customer invoices until the stocktake is over, and preferably, all [[items:stocktakes#create_inventory_adjustments|inventory adjustments have been processed]].!+
 </WRAP> </WRAP>
  
 +Using the count sheets, the warehouse operatives count the stock in the warehouse.
  
-In large warehouses, stock locations are often labeled in a systematic pattern something like this: 
  
-**A<nowiki>##</nowiki>.<nowiki>$$</nowiki>.<nowiki>%%</nowiki>**, where, +==== After counting the stock ==== 
 +After counting the stock, the count sheets are brought back to mSupply and the information is entered into the stocktake.
  
-  * **A** = 'Room'for example, ''M'' -> Main store room +The stocktake is completely blind so the batchexpiry date and number of packs of each line entered on the count sheets should be entered in the //Counted batch//, //Counted Expiry date// and //Counted number of packs// columns. Optionallyyou can enter value in the //Comment// column if there is something you need to remember about this line.
-  * **<nowiki>##</nowiki>** = aisle numbers''01'', ''02'', ''03'', etc. +
-  * **<nowiki>$$</nowiki>** = bay number, ''01'', ''02'', ''03'', etc. noting that common convention is for even numbered aisles to have only even numbered bays, and similarly, odd numbered aisles to have only odd numbered bays. +
-  * **<nowiki>%%</nowiki>** = shelf number, ''1A'', ''1B'', ''1C'', etc.+
  
-For example''M20.02.4E'' would be the location name for the location in the ''M''ain store roomAisle ''20''Bay ''02'', Shelf ''4E'' +To enter something in one of the columnssimply click into it and type what you want to enterIf you need to enter more than the batchexpiry datenumber of packs or comment then double-click on the line to make more fields available for entry:
  
 +{{ :items:pasted:20231213-165718.png?600 }}
  
-^  To create stocktakes for each  ^   Filter Stock location by  ^ +  * **Counted number of packs**: The number of packs counted on the shelf 
-| Aisle  **Starts with** ''M01'', **Starts with** ''M02'', **Starts with** ''M03'', etc | +  * **Pack size**: The number of units that are in a pack 
-| Bay  **Starts with** ''M01.01'', **Starts with** ''M01.03'', **Starts with** ''M01.05'', etc.  | +  * **Batch**: The batch of the stock 
-| Shelf  **Starts with** ''M01.01.1A'', **Starts with** ''M01.01.1B'', **Starts with** ''M01.01.2A'', **Starts with** ''M01.01.2B'',  etc.  |+  * **Expiry date**: The expiry date of the stockEnter is manually or select it by clicking on the calendar button 
 +  * **Location**: The location the stock was found inType the first few characters of the location and press the //Tab// key to select the location from a list of locations that begin with what you typed (if there is only one that matches then it will be selected and filled in for you) 
 +  * **Donor**: The donor of this stock (only shown if the option to track donor is turned on - see the [[preferences:invoices#allow_tracking_of_received_stock_by_donor|16.03. Invoice preferences]] page for details). Type the first few characters of the donor's name and press the //Tab// key to select the location from a list of locations that begin with what you typed (if there is only one that matches then it will be selected and filled in for you) 
 +  * **Cost price**: The cost price of one pack 
 +  * **12 month average checkbox**: Check this to replace the cost price with an average of the cost prices for stock of the same item received in the last 12 months 
 +  * **Sell price**: The sell price of one pack
  
-To speed things up //and// ensure that you have described your stocktakes correctly according to the stock locations filter, you can copy the text of your filter (before clicking OK) and then paste it at the end of the stocktake description.  After clicking on the **Stocktakes** button on the **Items** navigator this can be done entirely with the keyboard! 8-)  For example, if you want to create a stocktake for all location in Bay **M01.01**:+If a new line of stock was found which isn't in mSupply then add it using the **New line** button (see the [[items:phased_stocktakes#add_a_new_line_to_the_stocktake|Add a new line to a stocktake]] section below for details).
  
-Firstly, click on the **Stocktakes** button on the **Items** navigator\\ The **Stocktake list...** window appears.  Then+When all the count sheet details have been entered into the stocktake and checked, it is time to finalise the stocktake. To do this, click on the **Finalise** button. After confirming that you want to finalise the stocktake, this will do two things
-  - Type **Ctrl**+**N** to start a **New stock take** +  - The stocktake will be made read-only and no further changes can be made to it. 
-  - Type **Tab** **Tab** **Tab** **Tab** **Tab** **Tab** **Tab** **Tab** (**Tab** x 8) to get to the Stock location **equals** pull-down button +  - If there are any differencies between the the batch, expiry date or number of packs that were entered for a line and the actual batch, expiry date or number of packs of the stock line in mSupply then: 
-  Type **Down-arrow** to get to the **starts with** option +    if the **Reference** value of the stocktake ends in ''/1'' or ''/2'', a new stocktake containing only the lines that showed a discrepancy is created. This sticktake will have the same reference value as this stocktake except that its phase number will be incremented by 1So, if the **Reference** ended in ''/1'', the new stocktake's reference will end in ''/2'', if it ended in ''/2'' then the new stocktake's reference will end in ''/3''
-  - Type **Tab** to move the focus to the text entry field +    if the **Reference** value of the stocktake ends in ''/3'' then inventory adjustments are created to make the stock of the lines with discrepancies match what was counted in the stocktake. Note: any lines that only have discrepancy in the batch or expiry date will not appear in an inventory adjustment but the changes will be made and logged. 
-  - Type ''M01.01'' +  
-  - Type **Ctrl**+**A** to select all text +If there are no differences between the batch, expiry date or number of packs that were entered for all lines and the actual batch, expiry date or number of packs of the matching stock lines in mSupply then nothing further is done and the user is shown an alert message to say that the count for this aisle/level combination is complete.
-  - Type **Ctrl**+**C** to copy the selection to the clipboard +
-  - Type **Enter** (same as clicking **OK** button).\\  The **Stock take sheet...** window appears+
-  Type **Tab** to highlight all text in the **Description** field +
-  - Type **End** to move the cursor to the end of the existing text (If you are on laptop where the **End** key is hard to find, the Right arrow (**→**) key will also work here) +
-  - Type '' '' (spacebar) +
-  - Type **Ctrl**+**V** (Pastes the clipboard) +
-  - Type **Enter** (same as clicking **OK & Next** button).\\ The **Stocktake list...** window appears.+
  
-Repeat the above steps for //each// stocktake. +<WRAP info center round 90%
- +Note that a line that has had nothing entered for it in the stocktake is counted as having discrepancy and will appear in a further stocktake or an inventory adjustment after a stocktake has been finalised.
-==== Example for fast moving items using a master list ==== +
- +
-It is often useful to regularly do a stocktake of fast moving items.  A convenient way to do this is to create a [[items:master_lists|master list]] of fast moving items called, say, ''Fast movers''+
- +
-To create a stocktake containing just the items on this ''Fast movers'' master list: +
- +
-  - [[items:stocktakes#confirm_customer_invoices|Confirm any outstanding CIs]] with status = **sg** +
-  - Item Stocktakes > New stock take +
-  - Select the Fast movers option from the **is on Master List** pull-down +
-  - Click **OK** +
- +
-{{ :items:pasted:20200902-010822.png?400 |}} +
- +
-==== Print sheets to do the stocktake ==== +
-Before printing you need to ensure that the order in which items are displayed is appropriate. By default the list is alphabetical, but for stocktaking purposes, it may be more appropriate to sort the list by location and then by item name; this is achieved by clicking on the **Order by** button and choosing ** Sort by location then item name**  +
- +
-{{ :items:order_by.png?300 }} +
- +
-If you want another sort order, click a column heading for a simple sort, or choose the **Custom sort** option from the Order by button. +
- +
-You can filter a stock list by entering the item name - or the first few characters of the name - or the item code in the box **Item name/code** in the top right area of the window, then clicking the **Find** button +
- +
-Clicking on the **Print** icon displays the available options: +
- +
-{{ :items:print_options.jpeg? | }} +
- +
-  * **General:** contains several options. Click on it and you are presented with a further window: {{ :items:stocktake_general_print_options.png?400 |}} The Form to use drop down list contains these options: +
-    * //Stock take line// - prints out all the lines on the stocktake, including their quantity, with a space to write the actual counted quantity. It looks like this: {{ :items:StocktakeSheet.jpeg?600 | }} +
-    * //Stock take line discovered items// - prints out a sheet with all the headers but containing only blank rows. Perfect for writing down the details of new batches you discover during the stocktake. Looks like this: {{ :items:stocktake_sheet_blank.png?600 |}} +
-    * //Stock take line with space// - is the same as the //Stock take line// printout but with no quantity and 5 lines of space under each line. Useful if you know there'lot of stock in the warehouse that isn't in mSupply. +
-    * //Stock take line wt quantity// - is the same as //Stock take line// but with no quantity. This is the one we recommend you normally use to give to the people carrying out the physical count.  This helps to ensure that the quantity of stock on the shelves is actually counted and not just guessed! +
-    * //Stock take line wt quantity big font// - is the same as the one above but printed in landscape with bigger font.  This is particularly helpful in warehouses with poor lighting (powercuts, etc. :-( ) +
-    * //Stock take lines with signature// - same as //Stock take line wt quantity// but the stocktake signature entered in the [[preferences:printing#edit_messages_on_printed_forms|printing preferences]] is printed at the end. +
-    * //Stock variance// - this shows the items that were adjusted after the stocktake was finalised. Similar to the //Inventory adjustments// option below but slightly different format. +
-  * **Inventory adjustments:** prints information about all the items that had their quantities adjusted because of the stocktake after the stocktake has been finalised (see finalise section below). +
-  * **Inventory adjustments-all items:** prints information about inventory adjustments made after finalisation but includes all items, not just those which have had their quantities adjusted. +
- +
-There is, of course, a further option - you may provide the staff performing the stocktake with blank sheets, requiring them to list the items, batches, expiry dates, locations, pack sizes and quantities manually. We don't recommend you use this option unless your printer is broken ;-) +
- +
-==== Perform the stocktake ==== +
- +
-Allocate staff to perform the stocktake, instruct them in the process you wish to follow, and issue the sheets to them. +
- +
-<WRAP center round tip 60%> +
-For a stocktake involving several staff, it is recommended to require the staff members to write their name and date on each stocktake sheet.  This is especially helpful when trying to interpret difficult handwriting :-)+
 </WRAP> </WRAP>
  
  
-==== Enter quantities into the system ==== +==== Add a new line to the stocktake ==== 
-Once the physical stocktake has been completed, you are ready to make entries to record any differences in stock levels into the system. Remember that any item which mSupply calculates as having zero stock will not appear on the stocktake sheet. +To add a new line to the stocktake (for stock that you find during the stocktake that is not in mSupply already), click on the **New line** button. This window will open:
- +
-=== Filtering the list by item name or code === +
-To help quickly find any item you want to make any adjustments to, you can enter the first few characters of its name or its code in the **Search by item name and code** field. The displayed list of items will be changed each time you enter a character to show only the items whose name or code matches what you have entered so far. To return to the full list just delete everything in this field. +
- +
-=== Making adjustments === +
-If there are no differences between what was physically seen in the warehouse and what is shown in the stocktake for a particular line then you can leave it alone - no changes are necessary. +
- +
-If the only difference between what is in mSupply and what was physically seen in the warehouse is the number of packs (the figure in //Enter Quantity// column) then click on the figure in the //Enter Quantity// column and edit it to match what was physically counted in the warehouse. +
- +
-<WRAP center round tip 60%> +
-You can press the //Tab// key on the keyboard to quickly move through the editable fields on one row and then then to the next row to edit (//Shift+Tab// to go to the previous editable field). +
-</WRAP> +
- +
- +
-If there is more of a discrepancy between what mSupply says you have in stock and what was phisically seen in the warehouse then double-click on the line. The line edit window will open: +
- +
-{{ :items:stk_take_line_edit.png?450 }} +
- +
-You can now edit more details: +
-  * **Stock take qty**: the number of packs you counted in the warehouse +
-  * **Batch**: the batch or lot number of the stock +
-  * **Expiry date**: the date the stock will expire +
-  * **Location**: where the stock is located in the warehouse (type the first few letters of the location's code and press the //Tab// key on the keyboard to select the right location from a matching list) +
-  * **Cost price**: the price one pack of this line of stock cost you. Check the **12 month average** checkbox if you want mSupply to calculate a weighted average pack price based on the supplies of this item you have received in the last 12 months  +
-  * **Sell price**: the price you sell a pack of this line of stock for +
-  * **Comment**: anything you want to remember that was notable about this line during the stocktake +
-  * **Donor**: the donor of this line of stock (type the first few letters of the donor's code and press the //Tab// key on the keyboard to select the right location from a matching list). Will only be available if the **Allow tracking of received stock by donor** preference is turned on (see the [[preferences:invoices#invoices_1_tab|Invoice preferences]] page for details)  +
- +
-Notice that you cannot change the **Pack size** value. If you want to do that then you must set the Stock take qty for this line to 0 and add a new line with the correct pack size (see the Adding items not in the stocktake list section below for details). +
- +
-=== Adding items not in the stocktake list === +
-In the event of an item being physically present in the warehouse, but not on the list then it needs to be added to the stocktake in mSupply: +
-  - Click the **New line** button and this window will appear: {{ :items:stocktake_add_line.png?550 |}} +
-  - If you want to add a line of stock that already exists in mSupply then, in the //Existing stock lines// table at the top, check the checkbox for the line you want to add and then click on the //Add selected// button. You can add more than one line if you wish - just check all the lines you want to add. If you check the checkbox in the header of the checkbox column this will check all the boxes for you (and uncheck them again if you uncheck it). +
-  - If you want to add a new line of stock that doesn't exist in mSupply then enter its details in the //New stock line// section at the bottom and click on the //Add new// button to add it. +
-    * Stock take qty: the number of packs you found in the warehouse. +
-    * Pack size: the number of items in each pack that you found in the warehouse. +
-    * Batch: the batch number of the item you found. +
-    * Expiry date: the expiry date of the item you found (click on the calendar icon to select it or enter it manually). +
-    * Location: the shelf location in the warehouse where you found the item (if you don't know the exact location then type the first few characters of the location label, press the Tab key on the keyboard and select the location from the list that appears). +
-    * Cost price: if you know it, enter it in the currency you are using in your datafile. If you don't know it, you could check the //12 month average// checkbox and mSupply will enter a weighted average price of all the stock of this item you received over the last 12 months. +
-    * Sell price: if you know it, enter it in the currency you are using in your datafile. +
-    * //Use details of line selected above// button: this is a shortcut to save typing values in all the fields in this section. If the details are similar to a stock line that is shown in the //Existing stock lines// table above then click on the line in the table to select it then click on this button. mSupply will copy the details of thew line into the fields in this section and you can then edit the ones that aren't quite right. +
-  - You can also select a colour for the line in the stock take using the colour picker in the top right hand corner (set to black by default, as shown in the screenshot). +
- +
-After clicking on the //Add new// button you are returned to the **Stocktake sheet** window, where the new line entered will now appear in the colour selected; note that the new line(s) appear at the bottom of the stocktake and they have a value of zero in the //Snapshot// column. +
- +
-<WRAP center round info 60%> +
-  * If you add a new line to the stocktake that has the same details (pack size, batch, expiry, location, cost and sell price) as one already on the stocktake, you will be asked to confirm if you really want to add the line. +
-  * All details of a new line added may be edited, but only the ** quantity** or the ** location** of existing lines on the sheet may be edited; this is performed by double clicking on the row you wish to edit. +
-  * The //Delete item// button will only work to delete lines which you have added yourself (i.e. lines with a snapshot quantity of zero)+
-</WRAP> +
- +
- +
-=== Adjustment reasons === +
-If you have created at least one Positive inventory adjustment reason and one Negative inventory adjustment reason in the system (see the [[preferences:options|]] section for details) and at least one of each type is activethen an additional //Adjustment reason// column will be displayed in the stocktake window: +
- +
-{{ :items:stocktake_with_reasons.png?600 |}} +
- +
-The column is read only but, if you edit the number in the //Enter Quantity// column then the line edit window will be opened and you must select an Adjustment reason (one of those you set up in the preferences - a Positive adjustment reason if you have increased the quantity compared to the //snapshot// value, a Negative adjustment reason if you have reduced the value): +
- +
-{{ :items:stocktake_line_with_reason.png?500 |}} +
- +
-When you finalise the stocktake and create the inventory adjustments (see below), the individual lines of the inventory adjustments will be given the same adjustment reasons you set for them in the stocktake. +
-==== Create inventory adjustments ==== +
-When all necessary adjustments have been entered, you are ready to create the inventory adjustments. +
- +
-<WRAP center round alert 60%> +
-Creating inventory adjustments (finalising the stocktake) is not reversible, so you have to be quite certain you've finished making all the changes you want to the stocktake before you do it. +
-</WRAP> +
- +
-=== Inventory adjustment categories === +
- +
-After you click on the **Create inventory adjustments** button, the following window will appear to ask you to confirm this is what you want to do: +
- +
-{{ :items:stocktake_finalise_confirm.png?400 |}} +
- +
-Before you click on the **OK** button to confirm, you can select a transaction category to give to the inventory adjustments when they are created by clicking on the drop down list (these can be useful when it comes to reporting later). This drop down list is populated with all the transaction categories in your datafile that have a type of //inventory adjustment// (see section [[other_stuff:transaction_categories|22.07. Transaction categories]] for information on creating transaction categories). +
- +
-=== What if there is insufficient stock to adjust? === +
- +
-If an item has limited stock and that stock is allocated to an invoice during stocktake, when you try to adjust the stock the following window will display giving you two options to choose from: +
- +
-{{ :items:stocktakeerroroptions.png?direct |}} +
- +
-For the excel option a spreadsheet will open allowing you to analyse the invoices to which the stock is allocated.  The highest invoice number is likely to be the one entered during stocktake. +
- +
-{{ :items:stocktakeerrorexcel.jpg }} +
- +
-Of course, closing off transactions until a stocktake is complete and avoiding these kinds of issues is by far the best practice. +
- +
-<WRAP center round info 60%> +
-If you have the //Can edit stocktake dates// permission (see [[admin:managing_users#the_permissions_tabs|Managing users]]) then you will be able to edit the confirmation dates of the inventory adjustments to match the stock take date. +
-</WRAP> +
- +
-<WRAP tip center round 90%> +
-Any changes to lines in a stocktake that don't include a change in quantity (e.g. a change in batch, expiry date or sell price only) will also result in stock in the system being updated when you click on the **Create inventory adjustments** button but it will not result in any lines being added to an inventory adjustment. You can see the changes in the system by viewing the details of the individual stock lines and all such changes are logged, on the stocktake (see the //log// tab when viewing the stocktake or [[admin:the_log|]]) and the stock line's log itself (see [[items:item_basics:tab_stock#editing_a_stock_line_or_viewing_more_stock_line_details|Stock line details window]]). +
-</WRAP> +
- +
-==== Viewing inventory adjustments ==== +
- +
-Once inventory adjustments have been created, the status of the stocktake changes from suggested (**sg**), to finalised (**fn**). You will now observe a change in the buttons appearing on the Stocktake sheet:  +
-    * in the upper area, only the **Print** button is present +
-    * while at the bottom two new buttons are present; **Show added adjustments** and **Show reduced adjustments**. +
-{{ :items:inv_ads_prnt_opts.png?200 }} +
-    *  Click on either button to display the related inventory adjustment transaction. +
- +
-=== If the inventory adjustment quantities look wrong === +
- +
-It is possible for the stock reduction inventory adjustments created by your stocktake to have smaller quantities on them that you expect. They may even be zero like the example in this screenshot (and you know there should definitely be a reduction in stock because the counted quantity was less than the snapshot value in the stocktake): +
- +
-{{ :items:inventory_adjusment_fails.png?600 |}} +
- +
-The quantity might not be zero but still less than the snapshot minus the counted quantity specified in the stocktake. +
- +
-This scenario is because stock was found on new or suggested status customer invoices. This stock is reserved for customers by mSupply but not removed form your total stock (see [[issuing_goods:issuing_goods_customer_invoice|]]) and must be included in your count - if you don't include it in your count, then mSupply will try to remove it from your stock again when you finalise the stocktake. And if there's not enough stock, mSupply has to reduce the quantity on the reduction inventory adjustment. Which is the discrepancy you see when you look at the stock reduction inventory adjustment created by mSupply when you finalise the stocktake.+
  
-To avoid this scenario follow the golden stocktake rule:+{{ :items:pasted:20231213-162436.png?600 }}
  
-**Review and CONFIRM all //Suggested (sg)// or //New (nw)// status invoices before creating your stocktake.**+Enter the first few characters of the item the stock is for in the **Item** text box and press the //Tab// key on the keyboard to select the right item from a list of items beginning with what you typed (if there is only one item that matched it will be selected for you and entered in the **Item** text box).
  
-If you must leave some customer invoices unconfirmed before finalising the stocktake then **include the stock on them in your stocktake count**. If you confirm the invoices after creating the stocktake but before finalising it you must reduce the count on your stocktake by the total amount of that stock line on the invoices you confirmedAs you can see, it can be complicated so it's much better to follow the golden rule. Trust us!+Now enter the details of the stock in the //New stock line// section: 
 +  * **Counted number of packs**: The number of packs counted on the shelf 
 +  * **Pack size**: The number of units that are in a pack 
 +  * **Batch**: The batch of the stock 
 +  * **Expiry date**: The expiry date of the stock. Enter is manually or select it by clicking on the calendar button 
 +  * **Location**: The location the stock was found inType the first few characters of the location and press the //Tab// key to select the location from a list of locations that begin with what you typed (if there is only one that matches then it will be selected and filled in for you) 
 +  * **Donor**: The donor of this stock (only shown if the option to track donor is turned on - see the [[preferences:invoices#allow_tracking_of_received_stock_by_donor|16.03. Invoice preferences]] page for details). Type the first few characters of the donor's name and press the //Tab// key to select the location from a list of locations that begin with what you typed (if there is only one that matches then it will be selected and filled in for you) 
 +  * **Cost price**: The cost price of one pack 
 +  * **12 month average checkbox**: Check this to replace the cost price with an average of the cost prices for stock of the same item received in the last 12 months 
 +  * **Sell price**: The sell price of one pack
  
-To understand further see the [[faq:how_to_remove_stock_lines_that_have_0_available|]] page.+When you've added all the details click on the **Add new** button to add the line to the stocktake. It will appear at the bottom of the table of stocktake lines.
  
  
-==== Print the report ==== +==== Delete a line from the stocktake ==== 
-Clicking on the ** Print** button and clicking on **Inventory adjustments** will print this information:+To delete one or more lines from the stocktake, select them in the table and click on the **Delete line(s)** button. After confirmation the selected lines will be deleted.
  
-{{ :items:inventoryadjustment.jpg |}}+Please note, you can only delete lines from the stocktake that you manually added to it uysing the **New line** button.
  
-In this example, three adjustments have been made: 
  
-  * Magnesium carbonate: present at the physical check but not on the sheet, has been added +===== After finalising a stocktake ===== 
-  Peppermint oil has had its stock increased +After finalising a stocktake the stocktake becomes read-only but you can now print out an //In progress stock count sheet// from the **Print** button. This is what it looks like:
-  Sodium bicarbonate has been reduced in stock+
  
-Items that weren't changed don't show in the report - if you want to see all items, including those that weren't changed then click on the **Print** button and select the **Inventory adjustments all item** option.+{{ :items:pasted:20231213-173601.png?600 }}
  
-== Some points to note: ==+When you finalise the last stocktake with the same **Count reference** (as entered in the options window when creating the phased stocktake) then you will be asked if you want to print out the //Stock comparison report//, which will show you all the discrepancies recorded in all the stocktakes with the same count reference.
  
-  * When you have created the stocktake sheet, it's like `taking a snapshot'; the physical stock at that location should not be removed until the stocktake has been performed; nor should stock be added. 
-  * New transactions can however, be entered into the system. 
-  * the Log tab on the ** Stocktake sheet** will list any anomalies. An anomaly may occur if a transaction has been entered after the stocktake that issued more stock than you physically counted. Obviously someone has made a mistake in such a situation. 
-  * There is on the stocktake window (lower left corner) a checkbox ** Locked** , which, if checked, will allow neither deletion of the stocktake nor any changes to be made to it. 
  
-{{ :items:lwr_lft_crnr.png?200 }} 
-<WRAP clear/> 
-  * **Ok and Next** -  if you have no more stocktakes to add, click the 'OK' button, to add only the stocktake just completed. To add a further stocktake, click the 'OK & Next' button and proceed to add your next stocktake. 
-<WRAP clear/> 
-{{ :items:okandnext.png |}} 
 \\ \\
 \\ \\
-|  //  Previous:  **[[items:splitting_a_stock_line]]** | | Next: **[[items:inventory_adjustments]]** //  |+|  //  Previous:  **[[items:stocktakes]]** | | Next: **[[items:inventory_adjustments]]** //  |
 ---- struct data ---- ---- struct data ----
 pagestatus.status    :  pagestatus.status    : 
 ---- ----
  
  • Last modified: 2023/12/12 15:35
  • by Gary Willetts