Version History

mSupply v4.09 (2020-03-02)

New Features

For Côte d’Ivoire

  • Add a column to show Program on the Requisitions and Internal Order lists [5550]
  • Add indicators to customer requisitions [5551]
  • Cash receipt: Côte d’Ivoire need a custom receipt printout [5381]
  • HIV indicators should appear on printed internal order [5537]
  • Requested indicator structure changes [5513]
  • Customer credit: history button window needs batch column [5395]
  • eSIGL export to migrate to using new indicators [5334]
  • Apply a standard official header to SRP reports [5220]
  • Supplier invoice printout: Côte d’Ivoire require a satisfaction rate column [5383]
  • Return from supplier invoice requires reason field [5392]


  • Extend Tupaia DHIS2 push for UNFPA [5225]

For all clients

  • Add server version to the users body/header in auth response [5680]
  • Add currency table to mobile upgrade code for mobileV4.0.0 [5636]
  • Create getStorePreferences method to get a list of available Store Preferences [5479]
  • Sync payment types [5346]
  • Sync dispensary data for mobile [5003]
  • Changes made through record browser aren’t logged [2199]
  • V409 dispensary/patient sync finale [5578]
  • Cash register should be refactored to use payment table [5364]
  • Update all payment type ddls to use the paymentType table [5352]
  • Users should not be able to overpay for a prescription [5314]
  • Sync dispensary related records for mobile [5288]
  • Location sorting when choosing location from items or supplier invoice lines or good receipt window must be sorted by location.code by default. [3187]
  • Internal transfer warning is annoying and redundant [2799]

Bug fixes

For Côte d’Ivoire

  • Translation missing for the insurance policy default values [5615]
  • PPI report – price and unit columns [5553]
  • PPI Report fixes for the Unite and PU (Unit Price) columns [5549]
  • The automatic comment created when creating Inventory adjustments is still in English [5469]
  • Cash register: balance should not go negative [5465]
  • Prescription payment receipt: total amount not calculated correctly for Côte d’Ivoire [5393]
  • PPI report: needs fixing for Côte d’Ivoire [5385]
  • Supplier invoice custom form: Côte d’Ivoire needs header name, unit col, & other changes [5382]
  • Customer invoice printout: needs a units column and programme name for Côte d’Ivoire [5380]
  • Requisitions: the suggested quantity doesn’t match when you create a requisition for a facility at the district and the facility’s own store [5379]
  • Requisition printout: expected and received report numbers fix (CdI) [5377]
  • Stocktake “Inventory adjustments” report needs location column (CdI only) [5374]
  • Master List v407 upgrade bug on CdI cloud datafile [5357]
  • Stocktake: no longer able to add a line with identical details (CdI only) [5344]
  • In supplier invoice window the tooltip of the button to add lines from a requisition is not translated. [5330]
  • Alert warning for invisible items when finalising customer invoice is not translated [5313]
  • Requisitions: AMC and suggested quantity calculation values are not rounded up [5311]
  • Patient search by insurance number missing starting wildcard [5673]
  • Cote d’Ivoire: Custom supplier and customer invoices, some parts still in English [5536]
  • Cote d’Ivoire: Custom cash receipt report, title still in English [5535]
  • Cote d’Ivoire: Custom inventory adjustment report, some parts still in English [5534]
  • French interface: Standard Supp Inv report, some parts still in English [5533]
  • Facture Bordereau de Transactions: customer/supplier details back-to-front [5510]
  • Inventory adjustments: new printout required for Côte d’Ivoire [5384]
  • IC DOS calculation to work correctly over sync in response requisition [5127]
  • Indicator values are not syncing [5174]
  • Duplicate regimen rows on indicator migration [5281]

For all clients

  • Date filters not working on Cash Transaction listbox. [5694]
  • Runtime error when deleting a line from a confirmed prescription [5667]
  • Prescription payment window text is cut-off [5663]
  • Mobile upgrade code commented out [5592]
  • Discrepancy between the request requisition (mobile) and the response requisition [5563]
  • Pricing for customer credits created from supplier credits [5557]
  • Patient search by insurance number is broken [5531]
  • Prescription ‘Amount paid by patient’ field should be autofilled [5526]
  • Cancelling a prescription: the negative amount invoice has the wrong amount outstanding [5508]
  • The Select Location window needs some more translation [5471]
  • Runtime error when changing focus from the ‘Stock Take Qty’ field [5411]
  • Customer credit: adding items using the history button sometimes adds them with the wrong codes [5394]
  • Aggregator’s dataElement stockHistory don’t give accurate stock on date [5390]
  • Customer invoice: Option to distribute over multiple batches is missing sometimes [5378]
  • Requisition printout shows different values to the requisition display [5376]
  • Running Laos ledger report generate runtime Error [5365]
  • Stock take : Adjustment reason not refreshing to blank when stock count and snapshot quantity matches [5355]
  • PNG PO > new changes done merge it into one form [5340]
  • Viewing response requisition created using internal order request – Throws runtime error [5339]
  • Myanmar custom internal order form > failing to show Expiry date on compiled [5326]
  • Stocktake reports: don’t have programme in the header [5294]
  • Summary stocktake report has some information missing [5293]
  • Inline update of entered quantity in Stocktake shows runtime error [5291]
  • Newly added “supply quantity” button still enabled when requisition is supposed to be read only [5272]
  • Supplier invoice > Add items from requisition button clickable [5270]
  • Update code for v407 will fail to run [5253]
  • Cash register should only deal with finalised invoices [5092]
  • should be after insurance discount, not before [5085]
  • `record_display` has an error handler that silences everything throughout mSupply [5078]
  • Overpayment RCs have no trans_lines [4607]
  • Viewing requisition detail via record browser having custom_data values – throws error. [4006]
  • dashboardSyncSiteStatistics throwing array range error [3860]
  • Opening a copy of the same data file on the same machine can mess up sync [3827]
  • Fix the ‘Supply qualities…’ store preference [3723]
  • In customer stock history window, the suggested quantity does not change when the adjusted quantity changes [3692]
  • Location > Input – can choose a parent Location from another store- must restrict DDL to current store [2326]
  • Insurance status button is not correctly enabled/disabled [5554]
  • Customer outstanding balance should show on a customer invoice [5532]
  • Insurance provider form does not correctly resize [5512]
  • Stock take lines quantities shows wrong number [5413]
  • Adding regimen data to master list > program setting > Column Default isn’t typecast [5254]
  • Master List: Reformat columns displayed [5149]
  • Changes to dashboardSyncSiteStatistics for mobile users [5045]
  • Customer requisitions need to show AMC and MOS correctly [4937]

Read more »

mSupply v4.08 (2020-01-24)

New Features

For Côte d’Ivoire

  • Navigate to response requisition when row in usage list box is clicked [5170]
  • Localise requisitionSetStockDetailFields [5128]
  • Existing regimen rows do not correctly update [5094]
  • Add payment type to Payments and Receipts [5083]
  • Receiving messages for mobile site version [5038]
  • Record payment type for customer receipts [4984]
  • Display customer outstanding balance [4980]
  • Dashboard emailing in schedular > If something goes wrong on Excel – error popped out and no proper logging [4979]
  • Payment cancellation report [4963]
  • Enhancements to the entry of customer requisitions at district store [4956]
  • Cancelling a payment cancels an invoice [4955]
  • DOS calculation for Ivory Coast CMM [4954]
  • Ivory Coast CMM calculation for high level stores [4953]
  • Add version update code for is_emergency migration [4950]
  • Goods received confirmation localisation [4940]
  • Customer requisitions need to show AMC and MOS [4937]
  • Alert needed if hierarchical level 2 is chosen for item on category field [4923]
  • Format IC Net inventory adjustments Quick report’s header bold and center [4895]
  • IC Days out of stock column needs to be added to internal order form [4878]
  • Revert to custom data tab for displaying pre-existing regimen values [4847]
  • Add patch records to sync queue [4787]
  • Display goods received confirmation record on customer invoice record [4640]
  • Upgrade mSupply Server (and single user?) installer, particularly to include FireDaemonZero [4620]
  • Apply a standard official header to reports [4561]
  • Goods receipt report: to measure lines received vs ordered [4558]

Program Indicators are now in separate tables ( Côte d’Ivoire et al)

  • Add indicator tables to tableSetupLookupData [5074]
  • Dynamically resize indicator boxes [5112]
  • Fix HIV indicator row, column data type, default values [5108]
  • Add new indicator tables to tableSetupLookupData [5061]
  • Regimen migration is not migrating row indices [5099]
  • Add indicator tables to sync_create_records [5033]
  • Rename regimen, indicator tables [5016]
  • Migrate existing regimen indicator values [5015]
  • Migrate [indicatorValue]value from object to string [5014]
  • Add messages for indicator migration/sync [4972]
  • Update indicators migration to handle partially migrated data [4961]
  • Add more fine grained logging to indicator migration [4944]
  • Merge develop into feature/hiv-indicators [4925]
  • Fix indicators regimen data migration [4845]
  • Update indicator field collection constants [4791]
  • Indicators should enforce data types [4754]
  • Sync indicator values for response requisitions [4753]
  • Implement soft deletion to persist deleted indicators [4720]
  • Add sync functionality for indicator tables [4707]
  • Disable indicators for emergency requisitions [4705]
  • Update indicators feature branch to develop HEAD [4697]
  • Make requested changes for current indicators feature [4696]
  • Add migration from regimens to indicators [4659]
  • Implement HIV indicator values [4646]
  • Add HIV indicators to program requisitions [4641]
  • Add program code for HIV indicators [4632]
  • Implement the custom HIV program indicators for Côte d’Ivoire [4427]
  • Add missing indicator constants, xliffs [4749]
  • Update HIV column descriptions, codes [5031]

For the Supplier Hub

  • mSupply should be able to integrate records from the supplier hub [4732]
  • mSupply should be able to receive supplier hub records from API [4731]
  • Display extra fields for a UNFPA supplier hub customer requisition [4725]
  • Format GR Note for posting to the supplier hub [4579]
  • Format customer invoice for posting to the supplier hub [4578]
  • Supplier Hub Masterlists should be able to be updated from supplier hub records [4521]
  • Use hub ID as the site identifier when creating and integrating ASN records [4625]
  • Supplier Hub Integration schedulers [4596]
  • mSupply should be able to post records to the supplier hub [4733]
  • Standardise supplier hub methods to work with supplier hub API [4784]
  • Post UAT indicator tidy up [4924]
  • Add scheduler and skeleton for supplier hub integration [4765]
  • Add purchase order records to supplier hub sync queue when finalised [4764]
  • Should only be able to add items from a local list to a GR note for a supplier hub supplier [4676]
  • Should only be able to add items from the supplier hub local list to a Supplier Hub Customer Invoice [4675]
  • Should only be able to finalise a supplier hub Purchase Order if all items have Universal Codes [4674]
  • Changes in the masterlist for a remote supplier hub customer should be added to supplier hub sync queue on change [4643]
  • Get correct behaviour when registering a name for the supplier hub [4642]
  • Add way to identify + reference a hub site in mSupply [4595]
  • Improve object formatting for supplier hub order formatting method [4594]
  • Integrate goods received confirmations sent from Supplier Hub into existing customer invoice at the supplier site [4582]
  • Integrate advanced shipping notification sent from supplier hub as a GRN at the customer site [4581]
  • Integrate order sent from Supplier Hub as a Customer Requisition at the supplier site [4580]
  • Supplier hub customer invoice ‘actual arrival date’ should be the date that the GR was finalised, not created [5071]
  • Customer invoices should be sent to the supplier hub when finalised, not confirmed [5067]
  • Supplier hub work should use translation strings [4942]
  • Supplier Invoice created from supplier hub GRN should show cost price [4941]
  • mSupply should only integrate the most recent catalog record sent from the supplier hub [4838]
  • Records pulled from the supplier hub should be processed in order of creation [4830]
  • Store supplier hub Url as a user-defined server pref [4802]
  • Supplier hub customer requisition should show suggested quantity from purchase order [4938]
  • SupplierHub radio buttons should just be checkbox [4914]
  • Format purchase orders for a remote hub supplier to be posted to API [4554]
  • Update the local lists for a remote supplier hub supplier before creating a Purchase Order [4639]
  • Use a lookback period when caculating extra fields for UNFPA supplier hub purchase orders [4849]
  • Should be able to register a site with the supplier hub server [5037]

Other stuff

  • Laos: add EXP180_ DHIS2 push [4677]
  • Fix regimen value, comment column codes [5106]
  • Need a generic method to validate the object keys [4999]
  • Regressions on the IC internal order printout [5186]
  • Use nested structure for hub record payload [4635]
  • Integrating a supplier hub ASN should update the Expected Delivery date on the PO [4650]
  • Add indicator xliffs [4711]
  • Supplier hub record lines should be stored un-stringified [4687]
  • GRCs should be stored as single objects not collections [4694]
  • Back-end logic for mobile dashboard sync [2179]
  • Kit Customer Invoice report needs signatory changed [4882]

Bug fixes

  • Insurance type bug on duplicate policy number [5004]
  • Response requisition supply quantities all initially zero [4009]
  • Can add non-masterlist items to a PO made for a hub supplier [4544]
  • Suggested quantity column not showing up for UNFPA customer requisitions [5249]
  • Header Columns to be renamed for Customer requisition window [5236]
  • When printing a new internal order on client server, no data is showing [5235]
  • Prescription payment from credit creates an extra 0 line in cash receipt [5231]
  • Still update qty when pressing cancel in the stock take line edit form [5224]
  • Runtime error when manually issuing stock for a customer invoice created from a customer requisition with reasons [5217]
  • Requisition (request/response) order throws runtime error on non programme based system [5214]
  • Viewing the customer invoice lines created from response requisition throws runtime Error [5212]
  • Sync_process_sync_record: Error while importing xml to create new datafile [5209]
  • Tupaia DHIS2 push fix [5207]
  • Customer requisition extra fields text doesn’t update if selected line has no data [5205]
  • Update indicator migration logging [5200]
  • Finalised customer receipts and supplier payments: hide Total outstanding [5197]
  • Returning Quantity back using supplier credit functionality creates ledger problems [5196]
  • Invalid indicator sync records created in early v408 upgrade [5195]
  • Stock take line edit: When we enter the quantity less that snapshot quantity it will accept positive reason [5194]
  • Stock take line edit window doesn’t show entered quantity. [5184]
  • IC high level store CMM calculation bug [5181]
  • Response requisition extra fields text box is not being populated [5176]
  • More translation in cash register window [5169]
  • Runtime error when clicking on the item-name column of line in Response requisition [5167]
  • Runtime error when creating a customer requisition for a new customer [5155]
  • Inconsistent results in Transactions list (Credits) [5154]
  • Wrong quantities visible on lines of Stocktake when using “OK & Next” button [5152]
  • Runtime error when creating a customer requisition for a new customer [5148]
  • Default value column of a program Regimen attributes are not updated when Clicking OK [5146]
  • Runtime error when trying to save a program without a store tag [5145]
  • Runtime error when trying to save a a new HIV program [5142]
  • Some more french translations and fixing a bad translation [5139]
  • Fix PNG PO report printout to display store name [5137]
  • Runtime creating a patient [5131]
  • Translation for PR #5102 and some more translations [5124]
  • Cash Receipt : Not able to enter a new one on remote active site. [5121]
  • Patient insurance : not able to add one on remote active site. [5120]
  • Program regimen row default value does not display [5119]
  • Editing stock take lines throws an error. [5117]
  • Stocktake is_edited is not being correctly updated [5110]
  • Fix HIV indicator row, column data type, default values [5108]
  • Fix regimen value, comment column codes [5106]
  • Runtime error on paying a prescription [5105]
  • Runtime error when clicking Cancel during the printing of an internal order [5104]
  • Regimen migration is not migrating row indices [5099]
  • Runtime error [store] input OK button [5097]
  • Existing regimen rows do not correctly update [5094]
  • The title of the Build window has a typo [5088]
  • Mobile dashboard report sync out queue issue [5075]
  • Add indicator tables to tableSetupLookupData [5074]
  • Runtime error when clicking on an internal order OK button [5073]
  • The wrong Reason list is displayed when entering a new stock take line for an item that have already stocktake lines [5065]
  • Snapshot quantity is displayed rather than blank on reopening a stocktake when stocktake line editing has been cancelled [5064]
  • Runtime error when opening a stocktake line to edit a previously entered quantity [5062]
  • Runtime error while making payment for a prescription in V4.08 [5053]
  • View Goods Receipt Confirmation button should be invisible if not supplier hub customer [5047]
  • Price related fields in item_receive form don’t display properly when using french number format [5046]
  • French translation needs to be done in the name note and item note windows [5043]
  • Runtime error when opening a stocktake line in New Blank Stock Take [5042]
  • Errors in dashboard export [5035]
  • Should be able to remove items from a supplier hub catalog [5034]
  • On mSupply v4-08-rc08, v408 upgrade is repeated twice. [5028]
  • Can delete name eventhough it had the related requisition created [5026]
  • Field [stock_take_line]is_edited to be set to True by default for non IC data file. [5023]
  • Quick report>Onto Excel : should use Localisation strings if exist [5022]
  • Fix compilation error on develop [5018]
  • Insurance type bug on duplicate policy number [5004]
  • Outstanding Purchase order lines [Excel] report: Give funny date when no valid date is found [5000]
  • Viewing a customer invoice throws an runtime error [4997]
  • Custom field’s value is not updated for blank/null [4995]
  • Link 219 from Purchase Order Lines to Purchase order is changed on v408 [4994]
  • The customer invoice “View received goods…” button label has not been translated and is cut off [4990]
  • Runtime error at startup when json file for the scheduler supplier hub is absent [4988]
  • Invoice numbers in customer receipts include all outstanding invoices, not just those paid [4967]
  • Occasional error when printing a Côte d’Ivoire request requisition [4966]
  • Arrival date of Goods Received note created by supplier hub is incorrect [4939]
  • Supplier Hub Preferences tab creating run-time errors [4934]
  • Transaction report shows different results when displaying multiple items vs single item [4929]
  • Placeholder issue for bugs in UNFPA Scheduler methods [4928]
  • Transaction Report: Net inventory adjustment report’s ‘category’ not showing as expected [4899]
  • Supplier and Customer credits in payments [4880]
  • Fixing a non-GS1 barcode by creating a system GS1 barcode doesn’t remove the GS1 non-compliance alert [4874]
  • Adjustment reason column doesn’t get updated on editing a line on stocktake [4844]
  • Use store id not to site for requisition number for store [4829]
  • Link gr with customer invoice [4828]
  • Pass data correctly to patch [4827]
  • Adjust url in push and pull records [4826]
  • Report > Transaction > “Dispensing with patient name and prescriber” should default to patients for reporting [4825]
  • Use url field to unregister supplier hub sites rather than clearing all passwords [4823]
  • Supplier hub records were being set with incorrect types [4820]
  • PO formatted for supplier hub was using uncalculated value [4818]
  • Indicator values can be edited on finalised requisitions [4798]
  • Regimen indicator rows duplicating [4777]
  • Non-indicator program requisitions throw error [4775]
  • Existing requisition values are not filtered by program [4772]
  • When there is no expiry date for am inventory adjustments, the PPI report displays a wild date [4760]
  • You can save inventory adjustments without specifying a reason [4757]
  • Fix bug in indicator saving [4747]
  • Fix buggy indicator response requisitions [4737]
  • HIV indicator soft deletion is buggy [4735]
  • NSI – Adhoc workflow improvement December 2019 [4734]
  • Crown agents waybill & Picklist updates [4723]
  • Incorrect indicator values object key [4716]
  • Cash receipts with no lines when using insurance and credit [4608]
  • On a requisition, you can enter a reason for an item with a requested quantity of 0 [4598]
  • The title of the Goods receipt window has a typo [4585]
  • The shortcut for the client is not copied on the desktop during installation [4584]
  • Opening an existing internal order always resets the user requested quantity [4175]
  • Need to check that sync records for store data have been assigned the right store [3828]
  • The policy type is not displayed when choosing a insurance policy in the payment tab of a prescription [3575]
  • SuperReports: should use translated strings [3104]
  • Old picture formats no longer supported in 4D v16 [2374]

Read more »

mSupply v4.07 (2019-12-06)

New Features

  1. Dashboard module
    1. Auto create fields added in postgres #4653 #4637
    2. Dashboard – now able to export last sync details #4577 #4583 
  2. Sync module
    1. API now sends admin preference in login body #4530 
    2. Return “IsAdmin” field #4531 #4530
  3. Transaction module
    1. Supplier credits now able to be stock transfers #4517 #2840
  4. Translations
    1. Outstanding summary window translated to French #4335 #4739 
    2. User Activity Totals reports translated #3561 #4693 
    3. Replaced hardcoded “try again” by xliff when searching for/adding items #4549 #4546
  5. Other general items
    1. A newly created store now automatically adopts the store that it was created in as it’s supplying store, and these two stores are be made visible to each other #4381 
    2. Ability to create Purchase Order from supplier hub local list #4543 #4533
    3. SRP Report Plugin now creates xps file for Preview on win7, win8 #4712 #4593
    4. Set up supplier hub #4532 #4520

Côte d’Ivoire specific features

  1. Returning goods via supplier invoice
    1. Now able to return goods to a supplier by selecting them on the supplier invoice and clicking a button #4616 #4437 
  2. Dispensing module
    1. Disallowed editing of patient code when auto generate prefs are set #4592 #4380
    2. Prescribed quantity now on prescriptions as well as dispensed quantity #4609 #4556
  3. Display HIV Regimen Indicators
    1. Add indicator constants xliffs #4749 #4752 
    2. Added indicators sync #4714 #4707
    3. Added program HIV indicators #4634 #4632
    4. Added regimen to indicator migration #4692 #4659
    5. Added requisition HIV indicators #4644 #4641
    6. Disabled emergency indicators #4706 #4705
    7. Enforced indicator types #4754 #4755 
    8. Implemented HIV indicator values #4658 #4646
    9. Implemented indicators deletion #4724 #4720
    10. Indicators added xliffs #4713 #4711
    11. Updated indicators branch #4698 #4697
  4. Requisitions module
    1. Now ability for unlimited emergency requisitions but only a configurable (5 initially) maximum amount of lines on each one #4645 #4557 
  5. Reports module
    1. Transaction report: Net inventory adjustments – updated format to include logo and correct heading style #4691 #4560 
    2. Updated template for quick reports : adds custom Côte d’Ivoire header #4730 #4708
  6. Transactions module
    1. Receiving patients’ payments and receipts module preferences tied #4311 #4065
  7. Inventory Adjustments
    1. Reason copied from stocktake line when creating inventory adjustment line #4743 #4750 
    2. Reasons in inventory adjustments now show as dropdown list and match reasons in stocktake #4630 #4541
  8. Other general items – Côte d’Ivoire
    1. Regimen data included in requisition created in eLMIS #4638 #4654 
    2. Indicator changes as requested #4704 #4696

UNFPA specific features

  1. Supplier Hub module – UNFPA
    1. Allow users to set up access details for supplier hub through mSupply #4520 
    2. Create Purchase Order from supplier masterlist #4533 
    3. Extra fields displayed for a UNFPA supplier hub customer requisition #4726 #4725
    4. Goods received confirmation displayed #4701 #4640
    5. Formatted GR Note for posting to the supplier hub #4627 #4579
    6. Formatted order for supplier hub #4574 #4554
    7. Corrected behaviour when registering a name for the supplier hub #4655 #4642
    8. GRCs now stored as single objects not collections #4695 #4694
    9. Integrated catalogue into mSupply #4700 
    10. Integrated GR confirmation into mSupply #4651 #4582
    11. Integrated order sent from Supplier Hub as a Customer Requisition at the supplier site #4590 #4580
    12. Integrated a supplier hub ASN should update the Expected Delivery date on the PO #4652 #4650
    13. Send catalogue changes to sync queue #4686 #4643
    14. Now using nested record structure #4636 
    15. Record lines stored as a collection, not stringified #4690 #4687
    16. Supplier hub improvements #4688 #4594
    17. Hub ID now site identifier when creating and integrating ASN records #4626 #4625

Laos specific features

  1. Reports module – Laos
    1. Existing customisation report and template improved #4669 #4681

Cambodia specific features

  1. Reports module – Cambodia
    1. Fonts while previewing report revised #4593 

Bug Fixes

  1. Custom data tab added to item input form #4263 #4230
  2. Adjusted Local Cost defaults to sell price when Foreign Currency cost is set to Zero #4617 
  3. Customer must be assigned to ad-hoc items in PO #4682 #4671
  4. Dates in improved Outstanding PO lines report now recognised as dates by Excel #4565 
  5. Log tab was missing from item_line (item stock line details) #4660 
  6. Records display process error message corrected #4526 #4523
  7. Item ledger report runtime error fixed #4656 #4629
  8. Store preference spelling correction #4547 #4529
  9. Use patients’ credit preference tied to the ‘ Activate customer receipts module’ pref #4065 
  10. Fixed supplier invoice from being created multiple times from a Goods receipt #4545 #4470

Côte d’Ivoire specific fixes

  1. Stocktake current quantity checkbox bug fixed#4488 
  2. Customer invoice exporting to Excel smooth #4509 #4507
  3. Fixed French text truncated on navigator #4727 
  4. Internal order shortkeys fixed to update DDL #4586 #3276
  5. When the system-wide prefs “Auto-generate patient code” & “Prefix code w” are set, could still edit code #4380 
  6. Only show custom data tab on client invoice window when there is one new #4648 #4497

Read more »