Adds three different barcodes and barcodes types to a test item and
checks that they are added correctly.
Adds a barcode that already exists, and checks a DuplicateEntryError
is raised.
Adds an invalid EAN barcode and checks InvalidBarcode (a subclass of
ValidationError) is raised.
Currently, it is difficult to add new custom barcode types for two reasons, both of which relate to validate_barcode in item.py:
- There is a bug where barcode types with a space in, such as Code 128, are split in two (so barcode_type is checked against 'Code' and '128' rather than 'Code 128'). This is fixed by splitting the Options field against a newline, instead of spaces.
- All barcodes are validated against the stdnum.ean library. This only handles EAN-8, EAN-13 and UPC-12 barcodes and any other barcode will fail. Barcodes with no type will continue to not be checked. Barcodes with the default barcode_types of EAN, UPC will continue to be checked. The non-default barcode_types of EAN-13 and EAN-8 will also be checked. The barcode_type is cast to upper case before this check is made so ean, upc, ean-13 and ean-8 will also be validated.
This allows people to add their own barcode types, such as Code 128 and QR codes. Users can add custom validation of these barcodes using the usual hooks, but they cannot remove the standard validation.
* -Added field def_warehouse that sets warehouse of all items
-Grouped warehouse fields together and put raw materies supplied before items table, it will only show if there are any items supplied
* Set def_warehouse in test_sales_order.py
* Changed from def_warehouse to set_warehouse
* Rest of def_warehouse to set_warehouse
* feat(delivery_trip_status): Update Delivery Trip status based on visited stops
* feat(delivery_trip_status): Fix tests
* feat(delivery_trip_status): Fix allow on submit for status
* feat(delivery_trip_status): Change status mapping
* feat(delivery_trip_status): Fix patch
* Update update_delivery_trip_status.py
* Update transaction.js
* setup barcode scan
stock entry controller not inherited from transaction.js, need to call setup barcode scan from transaction.js
* fix bug of item_code change always reset qty to 0
when calling frappe.model.set_value(dt,dn,'item_code',xxx), even qty is set, system always reset qty to 0.
* Update transaction.js
* Update transaction.js
* Update transaction.js
* Update transaction.js
* Update transaction.js
* Update transaction.js
* clean up barcode logic for transactions
* call scan_barcode method for stock entry
* separate out logic for searching serial, batch or barcode number
* added scan barcode field in transactions doctype
* search barcode-serial-batch sequence, code rectify
* hide all barcode related field if disabled from settings
* remove print statement
* Update stock_entry.py
* Minor improvements
* [Feature] Route optimization for Delivery Trip stops
* Process and optimize the entire route, with or without locks
* Form sets of routes for optimization based on applied lock positions
* Re-arrange stops based on the optimized routes and lock positions
* Set delay times between stops - offset estimation times by delays cumulatively
* Fix codacy errors
* Fix travis
* feat(route_optimization): Set estimated route distance from Google Maps
* feat(route_optimization): Add tests for route lists
* feat(route_optimization): Fix tests
* fix(perpetual inventory): Get warehouse account map only if perpetual inventory enabled
* fix(perpetual inventory): Get warehouse account map only if perpetual inventory enabled
* Added Include UOM field for Stock Balane, Stock Ledger and Stock Projected Qty
* Add columns in result list-of-lists instead of converting reports to list-of-dicts
* For requested changes
-Merged conversion factor query with item detail queries
-Ensuring snail_case
-Made columns consistently list-of-dicts
- create is_transporter checkbox in supplier doctype
- new field transporter (supplier with is_transporter checked)
- created fields driver and driver_name
- removed GST India fields from core doctype
- removed readonly & allow_on_submit from fields (delivery trip applicable only for in-house delivery)
- read_only transporter_name field (kept for backwards compatibility)
- made necessary changes in delivery_trip implementation
- hidden section's fields from print (preserving v10 convention)
- added transporter field to 'Driver' doctype
- added queries for transporter and driver fields
- GST India fields in regional module
- Fix e-waybill report
* Enhanced Budget Variance report and added filters and columns in other reports
* Update budget_variance_report.js
* Changes in budget variance report
* Spacing in column names
* fix(payroll): multiple minor fixes related to salary structure
* Added GSTR-1 and GSTR-2 report in Accounts module page
* delete asset movement records on cancellation of Purchase Receipt
* Update consolidated_financial_statement.py
* minor fix
* minor fix
* add filters on item prices report (#15495)
* added section for deferred expense in item master
* added default expense account field in Company master
* added deferred expense section in purchase invoice item
* validation and getter code added
* scheduler event to book expense every month
* codacy, import fix and other minor fixes
* rectify debit credit logic for expense
* commonify js code for deferred expense and revenue
* remove deferred calculation and validation
* common file to calculate deferred revenue and expense
* codacy fixes
* expense account root_type - Asset, specific method naming
The patch move_item_defaults_to_child_table_for_multicompany used to
fail since the doctypes Item and Item Defaults weren't reloaded properly
Signed-off-by: Ameya Shenoy <shenoy.ameya@gmail.com>
* fix(translations): Replace translations by keyword with indexed version
Keywords in the translation also gets translated which
results in an error because python cannot find the key
* Update buying_controller.py
* [Enhance] Added job card against the work order
* removed work order from timesheet
* Fixed codacy
* Added patch to make job card from the timesheet
* Timer in job card
* Dates validation in job card
* Added button to make job card from work order
* Added sub-assembly operation in the work order
* Remove make subscription button on delivery note if it is of type returns
* Added 'issue_credit_note' checkbox on delivery note to pass a Sales Inv of type return if checked while creating a return delivery note
* Added logic to auto-create Return Sales Invoice/ Credit Note if issue_credit_note checkbox is checked while return delivey note is submited
* Update delivery_note.py
* Allow Cost Center In Entry of Balance Sheet Account
* Add parent cost center in get payment entry
* Add Tests for Allow Cost Center In Entry of Balance Sheet Account
* Add tests for cost center wise account and party balance
* set parent cost center in taxes
* 1. Remove copy parent cost_center to child
2. Improve update party and account balance functionality on cost_center change
3. Add cost_center filter to get_outstanding_documents
* fix Codacy and Travis issue
Currently, a valuation rate of 0 gets treated the same as an omitted
valuation rate, and gets overwritten during validation. This hotfix
allows a Stock Reconciliation Item's valuation rate to be set to 0.