* -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
* 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
In version
```
Installed Apps
ERPNext: v11.0.3-beta.20 () (staging)
Frappe Framework: v11.0.3-beta.25 () (staging)
```
When creating a new Sales invoice without healthcare active we have this error
```
Not permitted
Insufficient Permission for Patient
```
Console log
```
Traceback (most recent call last):
File "/home/frappe/auroraone-v11/apps/frappe/frappe/app.py", line 61, in application
response = frappe.handler.handle()
File "/home/frappe/auroraone-v11/apps/frappe/frappe/handler.py", line 21, in handle
data = execute_cmd(cmd)
File "/home/frappe/auroraone-v11/apps/frappe/frappe/handler.py", line 56, in execute_cmd
return frappe.call(method, **frappe.form_dict)
File "/home/frappe/auroraone-v11/apps/frappe/frappe/__init__.py", line 1007, in call
return fn(*args, **newargs)
File "/home/frappe/auroraone-v11/apps/frappe/frappe/desk/search.py", line 53, in search_link
search_widget(doctype, txt, query, searchfield=searchfield, page_length=page_length, filters=filters, ignore_user_permissions=ignore_user_permissions)
File "/home/frappe/auroraone-v11/apps/frappe/frappe/desk/search.py", line 149, in search_widget
as_list=not as_dict)
File "/home/frappe/auroraone-v11/apps/frappe/frappe/__init__.py", line 1235, in get_list
return frappe.model.db_query.DatabaseQuery(doctype).execute(None, *args, **kwargs)
File "/home/frappe/auroraone-v11/apps/frappe/frappe/model/db_query.py", line 40, in execute
raise frappe.PermissionError(self.doctype)
PermissionError: Patient
```
* fix(perpetual inventory): Get warehouse account map only if perpetual inventory enabled
* fix(perpetual inventory): Get warehouse account map only if perpetual inventory enabled
* Minor fix for the problem that Net Total, Net Rate, Net Amount field would not be shown when default taxes were fetched
* Prevent net_rate from becoming NaN
* -Fixed problem that party_account_currency was not set in mapped document
-Fixed problem that discount amount was not recalculated (in mapped document)
-Fixed problem that set_dynamic_fields would work only on certain condition that led to showing Total (Company Currency) field even when using company currency
* Update accounts_receivable.html
In the print format and PDF the total was showing as 0 (Zero) , when I made these changes it fixed the issue
* Update accounts_receivable.html
* file-api: major refactor
migrate from file_manager.py to file.py
Signed-off-by: Chinmay Pai <chinmaydpai@gmail.com>
* file-api: migrate to file-api
remove file_manager stuff and migrate to file-api
Signed-off-by: Chinmay Pai <chinmaydpai@gmail.com>
* 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)
* [Refactored] Asset Depreciation Ledger report is based on GL entries
* Provision to make manual JV from the asset if Calculate Depreciation is disabled
* 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
* Remove quotes from sql to make it compatible with postgres as well
* Fix queries
- Replace mysql specifc queries with standard ones
* Make repo URL chages to test pg-poc
* Add root passowrd to test site config
* Fix quotes issue
* Remove debug flag from a pricing rule query
* Remove python 3.6 version from travis.yml
* Fix improper query issue
* Fix incorrect query
* Fix a query
- This fix need to be changed when we will start supporting postgres
since date_format is not supported by postgres
* Get price list map as dict
* Convert price_list_currency_map to dict
* 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
The new code for cost center checking in payment_entry.py crashes if `voucher_type` is `None`, which is an explicit possibility if party type is Employee. This commit adds a simple check to make sure that voucher_type is not None before running `get_doc`.
-Get PDC date from posting_date instead of reference date since posting_date is the date at which the post dated cheque can be cleared
-Get PDC data from submitted documents only
* tds computation report added
* tds computation logic added
* minor changes to commonify code
* tds payable monthly report added
* initial logic for monthly tds calculation added
* added field for supplier type and pan
* changes related to pan and entity type
* date filter fix and cleanup
* adding cashier closing feature
cashier closing feature has been added as now the cashier can make a
closure to record every thing from his pos as the expenses which has
been paid and the custody which he had at the starting and the amount
which is in his save and the system will record the date and time and
the user and the total net amount automatically which supposed be equal
to all of his sales invoices totals
* add cashier closing link at pos menu
* add cashier closing link to accounts config file
adding cashier closing link at accounts config file to show it at the
accounts module page
* adding more features to cashier closing
adding from time to the cashier closing in case the cashier working more
than one shift also giving him the ability to add the type of payments
to his cashier closure ,
also adding validation to be sure the from time is less than to time.
* Update cashier_closing.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
* update modified date to load field display_items_in_stock
* stop dialog from popping up if no loyalty program found
* warehouse not used for not is_pos type invoice
* fix for payments field names in sales invoice return
* add verification for payment amount at sales invoice return
adding verification to be sure the payment amount is negative at sales
invoice return
* correction for precision field name
* Patch to create Property Setter for existing naming series
* Update existing naming series options with new
* Add patch link to patches.txt
* Update patch
* Fix codacy
* Fix as per suggestions
* Remove old patch for property setter
* Improve as per suggested
- Modified the naming
- Also refactored naming for doctypes having autoname with series
- Added a patch to make property setter for autoname
* Fix Travis
* Rebase with develop
* add filter for Cost Center, make CC & Project multiselect field
* update queries according to project/cost_center multiselect
* add multiselect filter for cost_center and project
* update query according to multiselect
* adding supplier type filter to payable accounts and payable accounts summary reports
adding supplier type filter to payable accounts and payable accounts
summary reports as customer group at receivable accounts and summary
reports as its important and easier to put this filter
* fix trial balance opening and closing values
the removed mathematical operations was causing showing incorrect values
at opening and closing columns where the total row was correct so the
operation deleted to view the correct values to be equal to the total
row and to stop confusing the user due to different values between the
total row and the the values in front of each account
* fix for supplier type filter field on payable accounts reports
rename the supplier type filter field to supplier group in payable
accounts and summary reports
* fix for paid amount in returned sales invoice
the current paid amount not change from source value if you deleted any
item if the invoice contain for example 3 items and you only need to
return on item the current steps is to open the original invoice and
press on make return then you delete the unwanted items but in this case
the paid amount will not change and you will get an alert from the
system until you change it manually but with this modification it works
very well.
* fixing trial balance values and totals
fixing trial balance opening and closing ( DR - CR ) values and totals
* Made Purchase Invoice Items' Batch No and Serial No fields non copyable.
* Added appropriate currency field options to Purchase...Items DocFields:
-Landed Cost Voucher Amount
-Billed Amt
* -Group by Voucher requires ordering the query not grouping the query
-Summing fields is not necessary since grouping by 'name' is the same as getting individual entries
* Group by Voucher show groups with totals at the end of group
* Add discount_amount and base_discount_amount in Sales Invoice Item
* Add patch for existing documents
* Discount amount field in all child tables of Purchase and Selling
* Remove console statements
* [optimize]: bin updates
* [optimise]: use frappe.get_cached_value instead of get_value for item
* [fix]: change db.get_cached_value to get_cached_value
* Update point_of_sale.py
* Update point_of_sale.py
Add custom field(Display Items In Stock) to POS Profile Doctype of type Check.
* New field " Display Items in Stock" added
* Update point_of_sale.py
* Update point_of_sale.py
ORM used instead of SQL
used Bin to find actual quantity balances.
* Update point_of_sale.py
* Update point_of_sale.py
* Update point_of_sale.py
* Update point_of_sale.py
* Update point_of_sale.py
* add single, cumulative threshold, remove checkboxes
* remove tds child table from supplier & add tds link field
* add description field in tax withholding category
* add tax withholding data for indian setup, some fixes
* add a checkbox for tax withholding in purchase invoice
* remove supplier's child table for tds
* enable tds field if supplier has tds set inits master
* move rates data to child table - adding fiscal year support
* change bootstrap data according to child table config of tds
* show category name in list view
* loyalty program fixes
* moved tax calculation to tax_withholding.py
- calculation for tds amount for cumulative threshold from gl entry
* add fiscal year dependency in company test
* minor loyalty program fix
* minor tier calculation fix
* minor handling duplicate exception
* toggle apply_tds according to supplier, code rectify
* minor fixes for loyalty program
* test case for single and cumulative threshold
* codacy fix
* Disable renaming for Account Master
* Update account name along with account number
* Fix as per suggestions
* Update account.js
* Fix typo
* Remove after_rename and before_rename methods
* Modify test case
* Modify field placement
* Remove unused method
* QueryReport
- Only print visible columns in report
- Use get_columns_for_print method instead of directly
accessing report.columns
* Query Report
- Replace frappe.query_report_filters_by_name with new API
* Add Defaults table in Item Group
* Fetch defaults from Item group if not found in Item
* Add patch
* Remove default fields from Item Group
* Set query for defaults
* Fix Codacy
* Modify test records
* Modify budget.py and sales_order.py
* Remove join from query
* Else condition to avoid error if no defaults found
* refrain from making item test records before item_group
* default cost center fetch correction
* Remove tab item group from query
* remove console statements
* set account & cost center for redemption
* add test case for single/multi tier & is_return scenario
* reset tier when changing loyalty program
* make loyalty fields non copy type
* fix test case - delete si after every test to avoid interference
* Add dashboard on subscriber screen
* Add Subscription and Subscription Plan to Account Dashboard
* Fetch customer name while creating subscriber
* [fix] add section for Subscription Period
* minor fixes
* optimization
* fix checking of customer_group & territory of customer in loyalty program
* fetch and set applicable loyalty program
- in customer.py if found 1 program, set it or show a message to set it manually
- in sales invoice, if found 1 program for selected customer with no program set, set it else open a dialog with applicable options
* removed disabled field, added from_date & to_date
* loyalty program section made collapsible, added redeem check in it
* setting loyalty program improvised, manual selection if multiple found
* get_query added, amount calculation updated
* args passed rectified for expiry_date
* get loyalty_points logic improv, redemption_details logic added
* improv based on from/to date and other rectification
* code rectified based on different scenarios
- is_return, cancel, make loyalty points entry improv
* cost center number field when creating new
added field in the tree's dialog, necessary changes in the autoname function
* rename function's name appropriately
* First Cut for the Loyalty Program
* finished the collection part
* redmeption for the loyalty point
update the loyalty point entry in the FIFO style
make the accounting entry knocking the debtors account against the expense account selected in the loyalty program
update the outstanding balance in the client side
* completed for the desk viewe
* wrap up for the desk and shopping cart
* pos
* fix and test the travis
* Add configurable frequency in Selling Settings for update of project and company
* remove redundant code
* remove redundant code, only trigger calculation if order/invoice is present
* removed dangling commas as per common convention in hooks
* fix:handling multiple documents
* Update selling_settings.json
* enable selection of coa for user
Give user option to select coa that's been verified along with standard and standard with numbers. Also added a button that opens a dialog and renders the selected chart
* read chart from file and make a tree render-able dict of it
* tree method to return node data for coa setup wizard
* To fixed if if no schedule and disposal is NOT within the period, then opening accumulated depreciation not included.
If no schedule, and disposal is within period, accumulated dep is the amount eliminated.
* Update asset_depreciations_and_balances.py
* fix in query incase list is empty
* periodicity not found error
when called from consolidated financial statements and custom cash flow is activated
* unset currency filter to apply default currency or so
* python 2 - 3 fix
* Fetch withheld percentage
* Set query for accounts on the basis of company
* Fix bank guarantee error on submit
* Remove errors caused by fields which are removed
* utility function added for treeview
function to distinguish defaults from user permission and return appropriate data
* make use of utility function for treeview
* Payroll Entry - Accrual entry - exclude only tax impact - and separate JE for Flexi in Bank Entry
* Journal Entry - validate cheque info on submit
* Payroll Entry - Make Bamk Entry - Separate JE for benefit component
* location tree fixes
validate if child present while deleting, filter lists down only group enabled node
* department tree fixes
Adding child fix if added from rootnode with company filter applied. Rename consistency added. Validation added in on_trash
* Company tree fix
Check if child exist while deleting a node validation added.
* Supplier Group tree fixes
on_trash validation added if child node present
* Cost Center tree fixes
Adding child to root node throws error because parent_cost_center picks up root name
* Fix Purchase Receipt tests
* Fix Item test
* Fix daily work summary test
* Modify currency exchange test cases
* Fix Leave Application test
* Update working hours when making salary slip from timesheet
* Replace fixer.io with exchangeratesapi
* Fix codacy
* Add new gst field in Taxes and Charges template - is_inter_state
* Add a patch
* Add a regional function to fetch taxes on the basis of GSTin
* Add regional function to hooks.py
* Fetch taxes for Purchase Invoice on the basis of Supplier GSTIN
* Fixes in the setup.py for India region
* Set is_inter_state field
For the existing Taxes and Charges templates, if an account_head with igst account (which is set in GST Settings) is found, set the checkbox and also check if it doesn't have a cgst account.
* Fix as per review comment
* add doctypes allowed to group items, average the rate
* add check field to group items during print
* call common before_print in delivery note
* fix precision issue while calculating average
* fix iteritems() takes exactly 1 argument (2 given)
* adds new helper functions
* use new functions to make POS invoices filterable on warehouse and cost center
* more PEP8 fixes
* Replace frappe.db.sql to frappe.get_list to apply permissions (#14037)
* Replace frappe.db.sql to frappe.get_list to apply permission
- All get_children method had frappe.db.sql in them which
had no permission check, now its replaced with frappe.get_list
which will check permission based on the user.
* Fix codacy
- Remove trailing whitespace
* Add parent filter
* Add ifnull checks
* set All Department as default parent_department
* add department field in employee_transfer
* copied data from options to fetch_from
* add department field wherever employee's link field present
* empty options field where fetch_from is added
* Project Budget does not filter per Project
Project Budget does not filter per Project and always return actual expense amount of all entries tagged to a project.
* Update budget.py
* add new fields to Supplier Master:
- on_hold: To signal the Customer is blocked from completing certain transactions
- hold_type: 3 options - All, invoices and payments
* sanitize `on_hold` field input
* show hold status in list view
* add `release_date` field to Supplier Master:
- specifies the date when transaction restraint will be removed
* reset release date if supplier is not on hold
* add validation to stop transactions when Supplier is blocked
* add test cases
* return empty list for outstanding references if supplier is blocked
* block make button:payment if supplier is blocked
* adjust test cases
* PEP 8 clean up
* more tests
* adds new fields to Purchase Invoice:
- release_date: once set, invoice will be on hold until set date
- hold_comment: so user can add comment pertaining to why invoice is on hold
* implement individual purchase invoice on hold logic
* allow user to change release date
* update manual
* final cleanup including more validation and tests
* update supplier manual
* make default for release_date argument todays date
* remove Auto Repeat added by mistake
* add on_hold_field to purchase invoice
* add 'On Hold' or 'Temporarily on Hold' status for purchase invoice in list view
* implement explicit payment hold in purchase invoice
* update manual
* add dialog for saving comment
* bug fix, refactor, clean up
* more test cases
* Replace frappe.db.sql to frappe.get_list to apply permission
- All get_children method had frappe.db.sql in them which
had no permission check, now its replaced with frappe.get_list
which will check permission based on the user.
* Fix codacy
- Remove trailing whitespace
* Update standard_chart_of_accounts.py
adding account for employee advances
* Update standard_chart_of_accounts_with_account_number.py
adding account for employee advances
* Update company.py
adding accounts for default fields in company doctypes
* Update company.py
Missing some default accounts for fields in company doctype
* rebase with enterprise_sprint
* Add Inter company account checkbox in Account master
* Add Inter Company Journal Entry Voucher Type in Journal Entry
* Make Inter Company Journal Entry button
* Dialog to select company for Inter Company Journal Entry
* Map relevant fields in the Inter Company Journal Entry and reference links
* Rebase
* Add Documentation
* Renamed - Employee Loan Application to Loan Application, Employee Loan to Loan and field Employee Loan Account to Loan Account
* Patch added
* Dynamic link fields 'applicant' and 'applicant_type'
* Member link visible only if domain non profit is active
* Modified loan_dashboard
* Make Repayment Entry button
* Common file loan_common.js for loan and loan_application
* repayment schedule rows selection in dialog
* validation if repayment amount > total paid amount
* repayment only if disbursement is done, make repayment by selecting the installment which falls in the current month
* fetch nowdate if disbursement date not found
* Rebased with develop
* updated non-profit module page
* updated patch for renamed fields
* dialog to select repayment entries
* hidden field to store reschedule paid status
* update paid check in loan on journal entry updation
* calculate total paid
* updated docs
* codacy fix
* child table employee expense approver
* set query in department
* mandatory approver check in hr settings
* triggers on leave and expense approver
* fetch all parent approvers from department hierarchy
* fixes
* patch to move employee approvers from employee to department
* removed hard coding of roles
* modify approvers list query
* commonified functions
* patch
* renamed standard reply occurrences
* removed leave approvers table from Employee master
* email templates for leave application notification
* set default email templates for leave in hr settings
* notify by email template
* approval status in expense claim
* render template in patch
* removed unused code
* Single child table department approver
* read instead of render template
* error fix if party_type = student or shareholder
* clear party filter when party_type changes to avoid error throw
* dict with values of party_name in utils.js
* fetch party_name from erpnext.utils.get_party_name
* Update general_ledger.py
* Added 'Paid Amount' and 'Change Amount' in GST POS Invoice and POS Invoice print formats
* Update gst_pos_invoice.json
Updated its 'disabled' property.
* Update pos_invoice.json
Updated its 'disabled' property.
* Shows change amount only if it exists
* Updated disable property of print formats
* [fix] #8427
* review comments changes
* Validation for reserved warhouse
* code improvements
* alignment
* test case
* message changes
* default warehouse / remove validation / change sql
* fix
* patch
* Fixed merge conflict
* Fixes and cleanups of reserve qty for subcontracting
* set from_warehouse only if purchase_order and purpose found (#12398)
* [HotFix] Validation issue for subcontract stock entry (#12127)
* [Fix] Validation issue for subcontract stock entry
* Update stock_entry.py
* Fixes and cleanups of reserve qty for subcontracting
* patch fixed
* Reload bin in patch
* [fix] set source warehouse in stock entry for manufacture
* [fix] #8540
* code alignment
* code alignment
* Move target warehouse validation to submit
* validation code improvement
* code changes for single stock entry
* validation fix
* call make_rm_stock_entry
* remove old stock entry method/rewrite test case
* Don't set bom_no against raw materials while trasferring items for sub-contracting
* minor fix
* add mode of payment field to Payment Term
* add mode of payment field to Payment Terms Template Detail
* add mode of payment field to Payment Schedule
* add mode of payment in `get_payment_term_details`
* editable unallocated amount in payment entry to handle multi currency
* set unallocated amount on server side
* some minor fixes
* Fixes in territory patch
* removed print
* minor fixes
* GoCardless integration
* Addition of a method for determining if the email should be sent or not
* Correction for Tests
* Codacy fix
* Documents moved to ERPNext
* Codacy fix
* Codacy fixes
* Remove method where not necessary and replace with hasattr
- Plan is to be linked to a Product
- Plan will be used to create Invoice items
- Subscriber can have multiple plans
- Contains billing cycle information
* add child doctype - Cash Flow Mapping Account
* adds new doctype - Cash Flow Mapping
* adds new doctype - Cash Flow Mapper
* adds new doctype Cash Flow Mapping Template
* adds new doctype Cash Flow Mapping Template
* adds adjustments to Cash Flow Mapper:
- remove fields from Cash Flow Mapping Template Details
- update in Cash FLow Mapper
* get cash_flow_accouts from Cash Flow Mapping
* change `tmp` to `mappers` and make sure `mappers` is sorted by its `position` field
* changes description from 'Net Profit/Loss' to 'Profit for the year'
* set `net_profit_loss` `parent_account` properly
* modify `get_account_type_based_data`:
- changed signature such that `account_type` parameter is now `account_name`
- where clause in query is now based on `name`
* remove zero rows
* de-duplicates row, summing similar accounts in the process
* makes gl sum calculation use `parent_account` as a condition
* add the `section_leader` immediately after adding net profit, sorts `accounts` by `is_working_capital` field
* adds `is_working_capital` to "account_types" so that we can use this to determine when to add "Changes in working capital" for operating activities
* add "Movement in working capital" subheader
* refactor code for readability
* adds new fields to `Cash Flow Mapping`:
- `is_interest_paid` to allow me recognise accounts for 'Interest Paid'
- `is_income_tax_paid` to allow me recognise accounts for 'Income Taxes Paid'
* allow `Cash Flow Mapping` to be renamable
* adds new field - `section_subtotal` useful for only Operating Activities
* changes `Cash Flow Mapping` doctype fields:
- remove `is_income_tax`_field
- add `is_income_tax_liability` field to identify tax payable accounts
- add `is_income_tax_expense` field to identify tax expense accounts in P or L
* calculates and shows tax paid adjustment in cash flow statement
* renames `is_interest_paid` to `is_finance_cost`
* - adds finance costs calculation
- correctly sets opening balance dates
* prevents users from selecting extra options in Cash Flow Mapping
* adds validation to prevent selecting multiple options
* adds new fields to Cash Flow Mapping
* calculate non cash p or l items (2nd pass)
* separates default cash flow generation from custom
* adds new setting to Accounts Settings:
- allow user elect to use customised cash flow report
* clean up
* removes mandatory constraint from accounts field
* allow rename, disallow create and delete
* adds patch to add default Cash Flow Mappers
* refactors custom_cashflow
* add article to explain configuration
* refactor
* further refactor
* final clean up (hopefully)
* clean up for codacy
* more codacy fixes
* more codacy fixes
* fix broken patch
* rename article to .md
* create default mappers after install
* PEP 8
* create the tables in `after_install` call
* added currency filter
* modified files
* pull margin only if currency matches
* Renamed price to rate in pricing rule
* fetch rate only if currency matches
* rebase with develop
* rebase with develop
* patch to set currency in existing docs
* currency field mandatory in pricing rule
* modified test cases
* rebase with develop
* fixed test case
* patch for custom workflow
* deleted field approval_status
* replaced approval_status with workflow_state
* updated test cases
* validation to check expense approver
* check if workflow_state_name already exists
* fixes
* modified notifications.py
* removed field exp_approval and modified test cases
* [fix] Validate Party in not present in Party Type
* [fix] Minor Changes
* [fix] Valid Customer and Supplier fetch
* [WIP] Allow and prevent for creating party
* [fix] minor changes
* [fix] Requested Changes
* [fix] Codacy issue
* Update opening_invoice_creation_tool.py
* pass bill_date as parameter and calculate due_date on that basis
* calculate payment_schedule on the basis of bill_date if present else posting_date
* add bill_date as an argument to get_party_details
* pass bill_date on supplier trigger in purchase invoice
* Add new Select to filters
* get the currencies from database rather than hardcoded
* label report columns:
- If presentation currency is available in filters, use it or
- If company is available in filters, use it or
- use default company currency
* add new function - get_currency
* tweak new function `get_currency`
* add new function `convert` to convert a value to another currency
* add new function `convert_to_presentation_currency`
* clean up `get_currency` first pass
* memoise the exchange rates
* limit fetched GL entries to to_date
* check if account type is p&l or not and use appropriate exchange rate based on that
* change EXCHANGE RATE to a dict, use for memoisation
* rename EXCHANGE_RATE
* cache exchange rates and use them as needed
* add docstrings
* add presentation currency logic to financial statement reports
* move new functions from `general_ledger.py` to new module
* clean up
* PEP 8 clean up
* move function to util.py
* PEP 8 clean up
* remove presentation currency option from cashflow
* adjust currency as needed
* allow users to save presentation currency in Accounts Settings
* add new function `get_presentation_currency_list`
* refactor query_report modules with no promises
* Revert "allow users to save presentation currency in Accounts Settings"
This reverts commit 3b58a6296cf3f7b4d80ac55b03f9d5d4887b796b.
* show print page in correct currency
* Update utils.py
* Added doctypes related to shares
- Shareholder doctype, the entity who does the transaction
- Share doctype, a child table to kepp list of all shares
- Share Transfer doctype, Logs of all made transactions
* Added logic for share transfer
- update shareholder automatically on share transfer/issue/purchase
- purchase and transfer have method remove_share which doesn't get executed because of some bug
* Added report view for share ledger
* Removed share number tracking
- removed share number tracking from Share Ledger child table for Shareholder doctype
- new doctype Share Type created
* Share Balance report added
- math behind Share Balance report needs fixing
* Changes in shareholder
- Share numbers are not tracked in Shareholder
- Share Ledger doctype deleted
- Share Balance Report bug fixed
* Shareholder
- fixed report for share balance
- remove bug from share transfer by making share type mandatory
- added buttons to shareholder for direct link to report
* Added tests for Share Transfer
* minor codacy fixes
* Added Shareholder to Party Type
* rate in share ledger & balance report is currency
* First attempt at modelling shares after Item
* Share Manager changes
- on creation of shareholder party it should check if the same combo exists
- in shareholder party make report button visible iff folio no exists
- create folio no on creation of share transfer iff it doesnt already exist
- move reports from shareholder to shareholder party
* Shareholder chages
- delete share child table doctype
- autoname added to folio no
- modify tests for share transfer
* minor changes
* removed share_no child doctype
* Restructured Share Transfer Logic (not tested)
- Everything revolves around Share Balance child table in Shareholder Party
- is_company flag still to be utilized
* Tested Share Tranfer
* minor fixes
* started new shareholder structure
* modified shareholder
* renamed Shareholder Party to Shareholder
* Shareholder rewrite complete
* new tests for shareholder written
* codacy fixes
* Added documentation