Compare commits

...

2735 Commits

Author SHA1 Message Date
Rohit Waghchaure
bc960ab35f Merge branch 'v12-pre-release' into version-12 2021-09-20 16:33:16 +05:30
Rohit Waghchaure
f9e9c5f637 bumped to version 12.25.0 2021-09-20 16:53:16 +05:50
rohitwaghchaure
fbc8fb36dd Merge pull request #27599 from rohitwaghchaure/added-change-log-v12-25-0
chore: change log for v12.25.0
2021-09-20 16:31:22 +05:30
Rohit Waghchaure
6359e69503 chore: change log for v12.25.0 2021-09-20 16:28:15 +05:30
rohitwaghchaure
1d68d12b7a Merge pull request #27590 from rohitwaghchaure/merge-v12-hotfix-pre-release-for-v12-24-0
chore: merge version-12-hotfix into version-12-pre-release
2021-09-20 13:26:44 +05:30
Rohit Waghchaure
b7a74aa578 Merge branch 'version-12-hotfix' into merge-v12-hotfix-pre-release-for-v12-24-0 2021-09-20 12:23:03 +05:30
Frappe PR Bot
efddcbe42e fix: no validation on item defaults (#27548)
* fix: no validation on item defaults (#27393)

* fix: no validation on item defaults

* fix: cache value while validating

* test: item default company relation

* fix: reorder validations

* refactor: add guard conditions on update_defaults

* test: add default warehouse for item group

* fix: validate item defaults for item groups

Co-authored-by: Ankush Menat <ankush@iwebnotes.com>
(cherry picked from commit 5eba1ccd51)

# Conflicts:
#	erpnext/stock/doctype/item/item.py

* fix: resolve conflict and remove typehints for py2

Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
Co-authored-by: Ankush Menat <ankush@iwebnotes.com>
2021-09-16 19:55:43 +05:30
Rucha Mahabal
6f6e390863 fix: link to navigate to item template from variant (#27440) 2021-09-11 22:01:22 +05:30
Frappe PR Bot
7843c3d51a fix: set production plan to completed even on over production (#27027) (#27434)
(cherry picked from commit 09f34e558e)

Co-authored-by: Alan <2.alan.tom@gmail.com>
2021-09-11 13:21:46 +05:30
Frappe PR Bot
8871bd4bfb fix: document naming rule not working for subscription invoices (#27394) 2021-09-08 19:11:29 +05:30
Marica
d0a7141e35 Merge pull request #27333 from marination/subcontr-serial-no
fix: Prematurely referenced variable in buying controller for subcontracting
2021-09-03 20:56:02 +05:30
marination
6fe28e83e2 fix: Prematurely referenced variable in buying controller for subcontracting 2021-09-03 20:11:40 +05:30
Frappe PR Bot
abf353a286 Revert "fix: add child item groups into the filters (#26997)" (#27266) (#27267)
This reverts commit c60d5523bc.

(cherry picked from commit 763450dcf8)

Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com>
2021-08-31 19:13:25 +05:30
Dany Robert
cef6a8434a fix: remove unwanted serial numbers from fifo_queue (bp #27228)
fifo_queue.remove(serial_no) causes shift in index of the list and thereby not looping through every object in the list.
2021-08-31 10:51:43 +05:30
Frappe PR Bot
dc76094a9f fix: fetch from more than one sales order in Maintenance Visit (#27186)
* fix: fetch from more than one sales order in Maintenance Visit (#26924)

* [fix] #26336

* fix(ux): make customer field reqd for fetching SO

# Conflicts:
#	erpnext/maintenance/doctype/maintenance_visit/maintenance_visit.js

* fix: resolve conflicts

Co-authored-by: Pawan Mehta <mehtapawan007@gmail.com>
Co-authored-by: Ankush Menat <ankush@iwebnotes.com>

(cherry picked from commit db69d1dc00)
2021-08-26 23:05:45 +05:30
Frappe PR Bot
1e428f9531 fix: don't allow BOM's item code at any level of child items (#27175)
* fix: don't allow BOM's item code at any level of child items (#27157)

* refactor: bom recursion checking

* fix: dont allow bom recursion

if same item_code is added in child items at any level, it shouldn't be allowed.

* test: add test for bom recursion

* test: fix broken prodplan test using recursive bom

* test: fix recursive bom in tests

(cherry picked from commit c07dce940e)

# Conflicts:
#	erpnext/manufacturing/doctype/bom/test_bom.py
#	erpnext/manufacturing/doctype/production_plan/test_production_plan.py
#	erpnext/manufacturing/doctype/work_order/test_work_order.py

* fix: resolve conflicts

[skip ci]

* fix: conflicts

[skip ci]

* fix: resolve conflicts

Co-authored-by: Ankush Menat <ankush@iwebnotes.com>
2021-08-26 19:28:12 +05:30
Raffael Meyer
710c1c1786 feat: add total_billing_hours to Sales Invoice (#26652)
* feat: add `total_billing_hours` to Sales Invoice

* refactor: sider fixes

* style: use double quotes
2021-08-26 12:34:09 +05:30
Nabin Hait
aa358b021e Merge pull request #24844 from dj12djdjs/fix-margin-calculation
fix: multiple price rules margin.
2021-08-24 21:15:28 +05:30
Frappe PR Bot
8bc37da20d fix: calculation of gross profit percentage in Gross Profit Report (#27045) (#27107)
(cherry picked from commit ad06fb2179)

Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com>
2021-08-24 20:07:06 +05:30
Frappe PR Bot
914709099f fix: discard empty rows from update items (#27021) (#27094)
(cherry picked from commit 6de7b8ea93)

Co-authored-by: Ankush Menat <ankush@iwebnotes.com>
2021-08-24 12:21:18 +05:30
rohitwaghchaure
87dddbe868 Merge branch 'version-12-hotfix' into fix-margin-calculation 2021-08-24 11:08:04 +05:30
Srikant Kedia
ca42b16d3a fix: Price list rate not fetched for return sales invoice fixed (#26593) 2021-08-23 15:38:08 +05:30
Rohit Waghchaure
73666982c7 Merge branch 'v12-pre-release' into version-12 2021-08-19 20:20:08 +05:30
Rohit Waghchaure
48bd1965e4 bumped to version 12.24.0 2021-08-19 20:40:07 +05:50
rohitwaghchaure
ab84579b0e Merge pull request #27041 from rohitwaghchaure/change-log-v12-24
chore: change log for v12.24.0
2021-08-19 20:18:05 +05:30
Rohit Waghchaure
8064792b8c chore: change log for v12.24.0 2021-08-19 18:46:16 +05:30
rohitwaghchaure
fe6c96cab9 Merge pull request #27037 from rohitwaghchaure/merge-v12-hotfix-to-pre-release
chore: merge v12 hotfix to v12 pre-release
2021-08-19 17:44:46 +05:30
Frappe PR Bot
d5e89d98c2 fix: add child item groups into the filters (#26997) (#27034)
* fix: add child item groups into the filters

* fix: appending values to proper variable

* fix: refactor the loop

(cherry picked from commit c60d5523bc)

Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com>
2021-08-19 17:09:21 +05:30
Frappe PR Bot
f8fa3860d9 fix: equality check instead of assignment (#27029)
* Merge pull request #27026 from ankush/eq_assign

fix: equality check instead of assignment

[skip ci]

(cherry picked from commit 993b0532f8)

* fix: equality check instead of assignment in cart

port of https://github.com/frappe/erpnext/pull/25372

Co-authored-by: Ankush Menat <ankush@iwebnotes.com>
2021-08-19 15:48:51 +05:30
Türker Tunalı
d8a7abcd02 fix: date_unchanged calculation in "Update Items" (#26992)
Branch corrected https://github.com/frappe/erpnext/pull/26058

  ERPNext generates "Cannot set quantity less than delivered quantity" error even the delivered qty is zero when user clicks "Update Items".
  "date_unchanged" variable gets false value because of new_date is string. 
  
  "getdate(new_date)" corrects the date comparison.
  
  ![ERPNext_PR](https://user-images.githubusercontent.com/710051/121928377-c0263180-cd48-11eb-8cd9-eda7dace09d6.gif)
2021-08-18 17:43:58 +05:30
Ankush Menat
5bb9de8614 ci: backport action on v12 (#27009)
[skip ci]
2021-08-18 17:00:07 +05:30
Ankush Menat
0fd50e0426 fix(deps): pin plaid-python to 7.2.x (#26996)
* fix(deps): pin plaid-python to 7.2.x

Old requirement.txt was allowing next major version which has breaking
changes and causes failure in installation.

* fix(deps): remove frappe from requirements.txt
2021-08-18 08:02:22 +00:00
HENRY Florian
bdfc300896 fix: item name is missing into job card (#26956) 2021-08-17 15:33:26 +05:30
Sagar Vora
14292456cf Merge pull request #26978 from frappe-pr-bot/backport/version-12-hotfix/26976
fix: Incorrect `modified` time in documents that inherit from `StatusUpdater`
2021-08-17 13:21:16 +05:30
Sagar Vora
24d67c35b7 Merge pull request #26976 from resilient-tech/fix-incorrect-modified
fix: Incorrect `modified` time in documents that inherit from `StatusUpdater`
(cherry picked from commit d932cba38a)
2021-08-17 07:48:25 +00:00
Frappe PR Bot
8d71fcb948 fix: fix Payment references from disappearing on adding Cost Center in Payment Entry (#26939)
* fix: payment references from disappearing on selecting cost center (#24831)

Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com>
(cherry picked from commit 9bf1083d9e)

# Conflicts:
#	erpnext/accounts/doctype/payment_entry/payment_entry.js

* fix: conflicts

* fix: conflicts

Co-authored-by: Anuja Pawar <60467153+Anuja-pawar@users.noreply.github.com>
Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com>
2021-08-13 17:45:16 +05:30
Frappe PR Bot
2945e604aa fix: remove limit from stock balance report (bp #26773)
(cherry picked from commit b3740e9afc)

Co-authored-by: Ankush <ankush@iwebnotes.com>
2021-08-13 15:44:13 +05:30
Deepesh Garg
ea085b3a76 Merge pull request #26674 from deepeshgarg007/gl_entry_deadlock
fix: Deadlock while doing payment reconciliation
2021-08-12 11:29:34 +05:30
Saqib
611966c139 fix(e-invoicing): cannot cancel invoice if IRN cancelled on portal (#26880) 2021-08-10 17:19:24 +05:30
Raffael Meyer
d650b55f52 Merge branch 'version-12-hotfix' into fix-margin-calculation 2021-08-09 13:21:40 +02:00
Ahmad
8eca908365 perf: speed up validate_account_for_perpetual_inventory (#26730) 2021-08-09 12:17:11 +05:30
Anupam Kumar
09d5ddc42b fix: bank remittance report issue (#26398) (#26767) 2021-08-04 14:03:01 +05:30
Nabin Hait
abd53b114c Merge pull request #25722 from rtdany10/patch-3
feat: Increase number of supported currency exchanges
2021-07-31 11:33:49 +05:30
Ankush
b1e932a6f8 fix: remove incorrect condition in GLE comparison (#26713) 2021-07-29 19:56:36 +05:30
Dany Robert
e6a3e6beb7 Merge branch 'version-12-hotfix' into patch-3 2021-07-29 16:48:12 +05:30
Dany Robert
239974c73e fix issue with cache.setex 2021-07-29 16:00:35 +05:30
Deepesh Garg
27ecb54b8c fix: Deadlock while doing payment reconciliation 2021-07-27 17:49:48 +05:30
Deepesh Garg
6b4b80a4a4 Merge pull request #26629 from deepeshgarg007/exchange_rate_reval_fixes_v12
fix: Exchange rate revaluation posting date and precision fixes
2021-07-27 16:40:11 +05:30
Jannat Patel
68225bbcad Merge pull request #25995 from hasnain2808/fix-issue-priorirty
fix: do not translate issue priority
2021-07-26 10:56:22 +05:30
Deepesh Garg
b549287b94 fix: Convert null values to empty string on grouping 2021-07-25 21:28:40 +05:30
Deepesh Garg
12c3e5dfd6 fix: Remove unintended changes 2021-07-25 21:27:56 +05:30
Deepesh Garg
c908add82e fix: Exchange rate revaluation posting date and precision fixes 2021-07-25 20:03:12 +05:30
Jannat Patel
c74f0f3530 Merge branch 'version-12-hotfix' into fix-issue-priorirty 2021-07-24 18:28:02 +05:30
pateljannat
2e5a358e96 fix: salary component account filter 2021-07-23 13:06:57 +05:30
Subin Tom
01f8833bd1 fix: Fixed clearing issue of payment references on setting cost center (#26548)
Co-authored-by: Subin Tom <subin-home@Subins-MacBook-Air.local>
Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com>
2021-07-20 21:04:10 +05:30
Nabin Hait
5e37949411 Merge branch 'v12-pre-release' into version-12 2021-07-16 16:10:30 +05:30
Nabin Hait
c5a0c22352 Merge branch 'version-12' into version-12-hotfix 2021-07-16 16:10:30 +05:30
Nabin Hait
fc0459fba9 bumped to version 12.23.0 2021-07-16 16:30:30 +05:50
Nabin Hait
9a1caddacc chore: added change log for v12.23.0 2021-07-16 16:08:40 +05:30
Noah Jacob
b22cbb3122 fix: validation check when no conversion_factor (#26528) 2021-07-16 15:01:14 +05:30
rohitwaghchaure
f4a9e52cbe Merge pull request #26501 from rohitwaghchaure/fixed-taxes-not-working
fix: taxes not set correctly when items pulled from PO to PI
2021-07-16 11:40:56 +05:30
Rohit Waghchaure
24e1786e49 fix: taxes not set correctly when items pulled from PO to PI 2021-07-14 22:52:40 +05:30
Jannat Patel
5399891b25 fix: task status loop (#26007) 2021-07-14 14:43:59 +05:30
Jannat Patel
1b8670b263 fix: Removed company filter for Loan Type (#26463) 2021-07-13 15:29:58 +05:30
Jannat Patel
23db6a8e3a fix: added company filter while fetching loans (#26296)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2021-07-12 13:17:27 +05:30
Saqib
4c58fb40a8 fix: omit item discount amount for e-invoicing (#26408) 2021-07-12 11:05:37 +05:30
rohitwaghchaure
df045a61ed Merge pull request #26423 from rohitwaghchaure/fixed-serial-no-in-purchase-receipt
fix: serial no issue in subcontract purchase receipt
2021-07-11 10:25:51 +05:30
Rohit Waghchaure
6f7410073f fix: serial no issue in purchase receipt 2021-07-10 22:54:15 +05:30
Saqib
0ecf8f5d66 fix(e-invoicing): allow export invoice even if no taxes applied (#26406) 2021-07-09 15:33:40 +05:30
Jannat Patel
dfc68950c1 fix: lms progress issue (#26254)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2021-07-02 13:08:38 +05:30
Mohammed Yusuf Shaikh
ee7de6b107 fix: half day to be accounted in its leave type (#26267) 2021-07-02 12:31:59 +05:30
Mohammed Yusuf Shaikh
b2a090f073 fix: Added Permissions for employee to book an appointment (#26246)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2021-07-02 12:28:43 +05:30
Saqib
704f7b57b8 fix(plaid): cannot reset plaid link for a bank account (#26282) 2021-07-02 11:18:55 +05:30
meike289
8070d76450 feat: add check field for subscription invoice (#25560)
Co-authored-by: Meike Nedwidek <nedwidek@kk-software.de>
2021-06-28 18:35:03 +05:30
Noah Jacob
266563a99a fix: fixed rounding off ordered percent to 100 in condition (#26153) 2021-06-24 21:21:22 +05:30
Saqib
7270b89133 fix: invoices can alter profit and loss of a closed year (#26161) 2021-06-23 19:00:10 +05:30
Jannat Patel
57a68c317e fix: Staffing plan vacancies data type issue (#25940)
* fix: staffing plan vacancies data type issue

* fix: translation issue

* fix: removed greater than 0 condition

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2021-06-23 14:38:18 +05:30
Jannat Patel
fc44712976 fix: job applicant link issue (#25935)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2021-06-23 12:30:30 +05:30
Saqib
a80d9d81c8 fix(e-invoicing): service item check (#26141) 2021-06-22 14:25:53 +05:30
rohitwaghchaure
6a30025209 Merge pull request #26117 from rohitwaghchaure/fixed-linking-between-mr-and-sq-v12
fix: material request and supplier quotation not linked if supplier quotation created from supplier portal
2021-06-20 19:43:13 +05:30
Rohit Waghchaure
b9fb2349d6 fix: material request and supplier quotation not linked if sq created from supplier portal against rfq 2021-06-20 15:18:35 +05:30
Nabin Hait
2c30ad9465 Merge pull request #26089 from pateljannat/material-request-status-issue-backport
fix: material request status issue
2021-06-18 17:19:41 +05:30
Nabin Hait
67f80216fa Merge branch 'v12-pre-release' into version-12 2021-06-17 19:00:32 +05:30
Nabin Hait
2a8b3841bf Merge branch 'version-12' into version-12-hotfix 2021-06-17 19:00:32 +05:30
Nabin Hait
83b6746cd1 bumped to version 12.22.0 2021-06-17 19:20:32 +05:50
Nabin Hait
94f0aae625 chore: Added change log for v12.22.0 2021-06-17 18:56:13 +05:30
Deepesh Garg
0c4f67b884 Merge pull request #26091 from deepeshgarg007/cash_flow_position
fix: Update positions in default cashflow mappers
2021-06-17 17:17:22 +05:30
Deepesh Garg
fe1d985432 fix: Update positions in default cashflow mappers 2021-06-17 17:15:05 +05:30
pateljannat
57832fc9f8 fix: material request status issue 2021-06-17 10:53:45 +05:30
gavin
56a21343f4 Merge pull request #26001 from frappe/gavindsouza-patch-1
ci: Use only compatible version of bench CLI
2021-06-10 13:33:29 +05:30
gavin
bda432303c ci: Use only compatible version of bench CLI
bench CLI has dropped support for < PY3.6
2021-06-10 13:25:44 +05:30
hasnain2808
371d124a0e fix: do not translate issue priority 2021-06-09 18:40:15 +05:30
Anuja Pawar
3c5b33c241 fix: update cost center in SI (#25972) 2021-06-07 21:15:27 +05:30
Rucha Mahabal
85dca013ee fix: update employee field on renaming employee (#25958) 2021-06-07 15:02:49 +05:30
Saqib
d789dd3897 fix: wrong round off gl entry posted in case of purchase invoice (#25952) 2021-06-06 10:56:01 +05:30
Rucha Mahabal
a1a3f674a2 fix: invalid 'depends_on' expression in opportunity (#25954) 2021-06-04 11:15:55 +05:30
Saqib
7bb95f0a80 feat: cost-center wise period closing entry (#25930) 2021-06-03 17:33:00 +05:30
Ankush Menat
5c450cd13f fix: sync shopify customer addresses (#25937) 2021-06-03 16:48:08 +05:30
Ankush Menat
1c3c2b3006 fix: update shopify api version (#25939) 2021-06-03 16:46:30 +05:30
Deepesh Garg
688a5ac048 Merge pull request #25913 from deepeshgarg007/gst_freight_taxable_value
fix: Backward compatibility for GSTR-1 report
2021-06-02 11:30:57 +05:30
Deepesh Garg
21c15b89ab fix: Add taxable value in Purchase Invoice Item 2021-06-01 21:03:33 +05:30
Deepesh Garg
6a1ccf94a2 fix: Taxable value in GSTR-1 report 2021-06-01 21:02:50 +05:30
Dany Robert
3302ed4658 Merge branch 'version-12-hotfix' into patch-3 2021-05-26 15:51:43 +05:30
Anupam Kumar
fa3ca02557 fix: student invalid password reset link (#25827) 2021-05-26 12:16:25 +05:30
Deepesh Garg
1853f5da80 Merge pull request #25739 from deepeshgarg007/cash_flow_mapper_fix
fix: Cashlfow mapper not showing data
2021-05-24 20:39:59 +05:30
Deepesh Garg
dd82bbf78d Merge branch 'version-12-hotfix' into cash_flow_mapper_fix 2021-05-24 19:56:08 +05:30
Dany Robert
5271ce36de fix: Update test values 2021-05-22 11:22:02 +05:30
Dany Robert
88bab1e3ad fix: update test suite 2021-05-21 23:02:55 +05:30
Dany Robert
6ec804d77f fix: Update hard coded exchange rate values for testing 2021-05-21 18:16:21 +05:30
Nabin Hait
7fa3132a66 Merge branch 'v12-pre-release' into version-12 2021-05-20 18:51:42 +05:30
Nabin Hait
3d3ee778ed Merge branch 'version-12' into version-12-hotfix 2021-05-20 18:51:42 +05:30
Nabin Hait
65b7b57c70 bumped to version 12.21.0 2021-05-20 19:11:42 +05:50
Nabin Hait
4d9c9db295 chore: Added change log for v12.21.0 2021-05-20 18:49:42 +05:30
Deepesh Garg
13927e35cf Merge pull request #25662 from CaseSolvedUK/plaid-24675-v12
fix: plaid NoneType error
2021-05-20 17:03:02 +05:30
Deepesh Garg
18913756eb Merge pull request #25715 from deepeshgarg007/ignore_rouding_diff
fix: Ignore rounding diff while importing JV using data import
2021-05-19 18:26:11 +05:30
Nabin Hait
ccbdf25d44 Merge branch 'version-12-hotfix' into v12-pre-release 2021-05-18 20:30:46 +05:30
Deepesh Garg
ad1f1e000b fix: Cashlfow mapper not showing data 2021-05-18 08:38:49 +05:30
Dany Robert
5cced71ce4 fix: Get the exchange rate based on date. 2021-05-16 12:43:57 +05:30
Dany Robert
aea8773503 feat: Increase number of supported currency exchanges
Switch from frankfurter.app to exchangerate.host to accomodate more currency usage.
Closes #25603
2021-05-15 12:23:05 +05:30
Deepesh Garg
df51aa3087 fix: Ignore rounding diff while importig JV using data import 2021-05-14 21:31:22 +05:30
rohitwaghchaure
2ded94c338 Merge pull request #25693 from rohitwaghchaure/fixed-warehouse-tree-time-out-error
fix: timeout error while loading warehouse tree
2021-05-13 17:21:41 +05:30
Rohit Waghchaure
0b45d5e1ec fix: timeout error while loading warehouse tree 2021-05-13 15:51:39 +05:30
casesolved-co-uk
5946c2f28e fix: plaid NoneType error #24675 2021-05-11 12:36:07 +00:00
rohitwaghchaure
cb2f2d9e73 Merge pull request #25589 from 18alantom/backport-fix-check-schedule-date
fix: check for None in item.schedule_date before setting
2021-05-09 16:57:39 +05:30
Anuja Pawar
39bbc7a245 fix: update item level cost center from POS profile (#25612) 2021-05-08 14:11:06 +05:30
18alantom
062520f1b9 fix: check for None in item.schedule_date before setting 2021-05-05 12:07:18 +05:30
Rucha Mahabal
f644f6feba fix: Employee Separation (#25504)
* fix: Employee Separation

- add ignore_mandatory flag for project creation

- form clean-up

* fix: Employee Separation test
2021-05-03 18:37:13 +05:30
rohitwaghchaure
9de5fe2105 Merge pull request #25552 from rohitwaghchaure/fixed-total-stock-summary-report-12-hotfix
fix: total stock summary report not working
2021-05-03 10:24:34 +05:30
Rohit Waghchaure
e163cb89bf fix: total stock summary report not working 2021-05-02 18:03:29 +05:30
Deepesh Garg
9d38a0eede Merge pull request #25422 from finbyz/patch-2
fix: state code for Other Territory
2021-04-30 11:11:50 +05:30
rohitwaghchaure
c0b66b8203 Merge pull request #25443 from rohitwaghchaure/fixed-incorrect-qty-calculated-for-sub-contracted-raw-materials
fix: incorrect qty calculated for sub-contracted raw materials in purchase receipt
2021-04-27 15:14:03 +05:30
Saqib
96c099c609 fix: remove invalid changes added due to merge conflicts (#25404)
* fix: merge conflicts

* fix: merge conflict

* fix: recover lost method
2021-04-26 15:40:29 +05:30
Jannat Patel
b5be828f3a fix: issue in project custom status (#25453) 2021-04-26 15:36:01 +05:30
Saqib
059b8b567e feat(italy): add document type field for e-invoicing (#25420) 2021-04-26 13:09:04 +05:30
Deepesh Garg
cfdaf7c4aa Merge pull request #25419 from deepeshgarg007/composition_v12_hotfix
fix: Purchase from registered composition dealer
2021-04-24 17:24:18 +05:30
Rohit Waghchaure
5b80679ede fix: incorrect qty calculated for sub-contracted raw materials in purchase receipt 2021-04-22 17:03:02 +05:30
Saqib
a0783de232 fix: remove invalid changes added due to merge conflict (#25405)
* fix: merge conflict

* fix: recover lost method
2021-04-22 14:31:46 +05:30
Saqib
98d90f4e36 fix: remove invalid changes added due to merge conflict (#25437)
* fix: merge conflicts

* fix: recover lost method
2021-04-22 14:14:48 +05:30
Alan
c843da04a4 fix: filter using purpose, make requested changes (#25388)
backported from https://github.com/frappe/erpnext/pull/25352
2021-04-21 21:40:39 +05:30
Alan
34f1d3a88e fix: change subcontracted item display (#25426) 2021-04-21 21:04:28 +05:30
FinByz Tech Pvt. Ltd
bd4461b8cb Update __init__.py
Other Territory state code should be 97.

It's already corrected in version-13 but missed in version-12
2021-04-21 15:46:58 +05:30
Deepesh Garg
06063f7aa6 fix: Test case for GSTR 3b report 2021-04-21 14:14:55 +05:30
Deepesh Garg
472c9e534a fix: Purchase from registered composition dealer 2021-04-21 14:14:45 +05:30
Deepesh Garg
54c9704fe2 Merge pull request #25410 from deepeshgarg007/rcm_rounding_precision
fix: RCM rounding precision
2021-04-20 18:51:24 +05:30
Deepesh Garg
673dcb855d fix: RCM rounding precision 2021-04-20 18:48:50 +05:30
Alan
e3ebe4b33b fix: can't multiply sequence by non-int of type 'float' (#25385)
Co-authored-by: Rohit Waghchaure <rohitw1991@gmail.com>
2021-04-19 15:30:34 +05:30
Saqib
baefc6fd26 fix(e-invoicing): variable scoping (#25368) 2021-04-16 16:22:40 +05:30
Nabin Hait
b95b4e8064 fix: merge conflict 2021-04-16 12:55:46 +05:30
Nabin Hait
08399f9015 bumped to version 12.20.0 2021-04-16 13:11:07 +05:50
Nabin Hait
4481d4e965 chore: added change log 2021-04-16 12:48:27 +05:30
Nabin Hait
3f459c500f Merge branch 'version-12-hotfix' into v12-pre-release 2021-04-16 12:42:36 +05:30
Saqib
e787d05f66 fix(e-invoicing): validations & tax calculation fixes (#25315)
* fix: GST on freight charge in e-invoicing

* fix: cannot fetch e invoice settings

* fix: address validations & cancel eway bill dialog

* fix: except einvoice loading error seperately

* fix: sider

* fix: import format_date

* fix: imports

* fix: test

* fix: test

* fix: test

* fix: validate total condition

* feat: add company link to e-invoice settings

* fix: remove extra condition

* fix: test

Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2021-04-15 18:57:08 +05:30
Deepesh Garg
4eab67347f Merge pull request #25318 from deepeshgarg007/zero_ref_doc_billing_v12
fix: Zero amount completed delivery notes being shown in Sales Invoice get items
2021-04-14 15:28:49 +05:30
Deepesh Garg
cfe20cf610 Merge pull request #25226 from deepeshgarg007/rcm_total_calculation_fix_v12
fix: RCM tax calculation
2021-04-13 20:07:35 +05:30
Ankush Menat
73a7bb88fb fix: remove gst name validation for purch Invoice (#25236)
Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2021-04-13 19:00:38 +05:30
Ankush Menat
d2d025b586 fix: round total quantity in job card (#25246)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2021-04-13 18:58:42 +05:30
Ankush Menat
061c82a5cf fix: patch fixes for property setter (#25313)
partial backport of #25220
2021-04-13 18:58:19 +05:30
Ankush Menat
e6eab3b5f8 fix: incorrect status creating PR from PO after creating PI (#25203)
* test: add tests for PO->PI, PO->PR workflow

Add failing test cases for PR status and PR percent billed.

* fix: update PR status in database

* fix: do not copy percent billed from PO to PR

* fix: patch for purchase receipt status

* fix: remove logging in patch for v12 compatibility
2021-04-13 18:57:03 +05:30
Deepesh Garg
16c3a76c49 fix: Applly single transaction threshold on net_total instead of supplier credit amount (#25208) 2021-04-13 18:54:42 +05:30
Shariq Ansari
dd78ffb176 fix: Assignment Rule Unassign Condition doesn't work (#24890) 2021-04-13 18:52:37 +05:30
Shariq Ansari
583a8bf580 fix: Added parent task expected end date validation (#24889) 2021-04-13 18:51:46 +05:30
Jannat Patel
2c63f833b6 fix: serial no refresh issue (#25130)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2021-04-13 18:51:05 +05:30
Deepesh Garg
d5d7ef7349 fix: Zero amount completed delivery notes being shown in Sales Invocie get items 2021-04-13 18:45:40 +05:30
Deepesh Garg
ad2d74576b Merge pull request #25165 from KaviyaPeriyasamy/version-12-hotfix-error-log-issue
fix: object referencing same memory address issue
2021-04-13 15:41:15 +05:30
Deepesh Garg
4ced989169 Merge pull request #25204 from ankush/invoice-name-12
fix(India): create property setters for shorter naming series (#25134)
2021-04-13 15:40:14 +05:30
Mohammad Hasnain Mohsin Rajan
a59523970b chore: add sider config (#24892)
Co-authored-by: Sagar Vora <sagar@resilient.tech>
2021-04-13 11:06:01 +05:30
Deepesh Garg
9f2b5ba565 Merge branch 'version-12-hotfix' into rcm_total_calculation_fix_v12 2021-04-12 18:59:30 +05:30
Anupam Kumar
878b10eff5 fix: don't delete mode of payment account details while deleting company transactions (#25218) 2021-04-12 10:37:12 +05:30
Deepesh Garg
83df26197b fix: Rounding adjustment for RCM 2021-04-11 18:45:22 +05:30
Rucha Mahabal
fb87ed3f62 Merge pull request #25216 from anupamvs/hr-compensatory-leave-request-err-msg-v12
fix: error message compensatory leave request
2021-04-08 09:52:24 +05:30
Deepesh Garg
2541ab178a fix: RCM tax calculation 2021-04-06 23:40:46 +05:30
Anupam
ac58e05bbb fix: error message compensatory leave request 2021-04-06 11:40:21 +05:30
Abdullah Abouzekry
34b6f9389c fix: sales order not saving due type mismatch in promo scheme (#24748) (#25056)
Co-authored-by: Ankush Menat <ankush@iwebnotes.com>
2021-04-06 10:14:51 +05:30
Sagar Vora
6678450ba0 fix(India): create property setters for shorter naming series (#25134) 2021-04-05 16:09:41 +05:30
Saqib
fa98c4b8d7 fix(e-invoice): mandatory pincode field not set in e-invoice (#25201) 2021-04-05 14:45:21 +05:30
Saqib
79c7be770c fix(india): critical e-invoicing fixes (#25166)
Co-authored-by: bhavesh95863 <34086262+bhavesh95863@users.noreply.github.com>
2021-04-05 11:01:46 +05:30
rohitwaghchaure
8acc3fbbf4 Merge pull request #25169 from rohitwaghchaure/fixed-incorrect-batch-selected-in-purchase-rceipt
fix: incorrect batch picked in subcontracted purchase receipt
2021-04-03 14:25:10 +05:30
Rohit Waghchaure
2e04026fd6 fix: incorrect batch picked in subcontracted purchase receipt 2021-04-03 14:20:30 +05:30
Kaviya Periyasamy
3707b004c4 fix: object referencing same memory address issue 2021-04-03 12:18:19 +05:30
Saqib
f8dcd06dad fix: santize_for_json is not defined (#25157) 2021-04-02 16:47:50 +05:30
bhavesh95863
15af590482 fix(regional): remove shipping address GSTIN validation for e-invoice (#25133)
Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2021-04-02 15:05:07 +05:30
Marica
9cc129c400 Merge pull request #25110 from ankush/mr_stopped_validation_v12
fix: do not fetch stopped MR in production plan
2021-04-02 13:16:13 +05:30
Marica
35c4a7a05d Merge branch 'version-12-hotfix' into mr_stopped_validation_v12 2021-04-02 13:15:11 +05:30
Saqib
883598890d fix: place of supply of e-invoicing (#25149) 2021-04-02 12:16:09 +05:30
Afshan
2479e070c4 fix: validation msg for TransDocNo e-invoicing (#25120) 2021-04-01 19:27:41 +05:30
Ankush Menat
8d31d21b88 fix: do not fetch stopped MR in production plan
- Ignore stopped MR while using fetch button
- Add filter on field inside child table.

Related issue: ISS-20-21-10757
2021-03-31 21:21:13 +05:30
Rohan
53a32fecdb fix: commit individual SLE rename for large datasets (#25085) 2021-03-31 15:23:04 +05:30
Sagar Vora
b904304268 fix: revert removed field; not standard in v12 2021-03-29 21:26:53 +05:30
Sagar Vora
bd742d7ad9 fix(Italy): setup, validations, optimisations 2021-03-29 21:21:19 +05:30
Marica
2a1365a278 Merge pull request #24986 from ankush/allow_zero_valuation_SR_v12
fix: Allow zero valuation in stock reconciliation
2021-03-26 12:52:52 +05:30
Deepesh Garg
56531908aa Merge pull request #24974 from deepeshgarg007/tds_check_fix_v12
fix: TDS check getting checked after reload
2021-03-26 12:37:06 +05:30
Marica
f2bede6275 Merge branch 'version-12-hotfix' into allow_zero_valuation_SR_v12 2021-03-25 20:06:51 +05:30
Jannat Patel
a52ea48a21 fix: serial no trim issue (#24950)
* fix: serial no trim issue

* fix: valid serial nos
2021-03-25 15:23:19 +05:30
Anupam Kumar
5bd58ef85c fix: opportunity-quotation mapping order status (#25002) 2021-03-25 11:46:20 +05:30
Devin Slauenwhite
a0cfe449df fix sider errors. 2021-03-23 16:28:54 -04:00
Ankush Menat
19193e8f1c fix: set valuation rate for customer items to zero
- In stock reconciliation always set valuation rate of customer provided
items to zero during validation.
- Let user know the valuation has been changed.
2021-03-23 14:29:12 +05:30
Ankush Menat
ebd230e748 test: customer item in stock reconciliation 2021-03-23 14:26:41 +05:30
Ankush Menat
bf91ee9b99 fix: Allow zero valuation in stock reconciliation
Stock reconciliation can not be done for customer provided item as they
have zero valuation. This change adds a checkbox in item table to allow
such items.

Related issue: ISS-20-21-10248
2021-03-23 14:24:54 +05:30
Deepesh Garg
bb3c44dbb3 fix: TDS check getting checked after reload 2021-03-22 19:42:02 +05:30
Marica
7a61696a25 Merge pull request #24935 from ankush/alt_tags_item_image_v12
feat: allow Item image alt
2021-03-22 11:43:46 +05:30
Marica
28432128be Merge branch 'version-12-hotfix' into alt_tags_item_image_v12 2021-03-22 11:28:50 +05:30
Raffael Meyer
b135569ca6 Merge branch 'version-12-hotfix' into fix-margin-calculation 2021-03-19 16:31:29 +01:00
Saurabh
ce3a680324 Merge branch 'v12-pre-release' into version-12 2021-03-19 19:24:51 +05:30
Saurabh
786d78bce2 bumped to version 12.19.0 2021-03-19 19:44:51 +05:50
rohitwaghchaure
9e3e09f701 Merge pull request #24955 from rohitwaghchaure/revert-stock-balance-value-calculation-pre
fix: revert stock balance value calculation
2021-03-19 16:22:35 +05:30
Rohit Waghchaure
c2e2cf4933 fix: revert stock balance value calculation 2021-03-19 16:07:48 +05:30
rohitwaghchaure
ea50ab8696 Merge pull request #24868 from rohitwaghchaure/revert-stock-balance-value-calculation
fix: revert stock balance value calculation
2021-03-19 16:06:48 +05:30
Deepesh Garg
c22785877d Merge pull request #24952 from nextchamp-saqib/e-invoice-valdiation-fix
fix: NoneType object has no attribute len()
2021-03-19 12:55:30 +05:30
Saqib Ansari
14eeee5592 fix: NoneType object has no attribute len() 2021-03-19 12:51:15 +05:30
Deepesh Garg
4f4f60942c Merge pull request #24919 from deepeshgarg007/nil_exempt_gstr_3b_v12
fix(India): Incorrect Nil Exempt and Non GST amount in GSTR3B report
2021-03-18 21:02:12 +05:30
Shivam Mishra
437c771701 refactor: update confusing label 2021-03-18 12:39:42 +05:30
Shivam Mishra
f29cdb39a1 feat: add alt value in product page 2021-03-18 12:39:00 +05:30
Shivam Mishra
063ab520d3 feat: add image alt argument for product_image macros 2021-03-18 12:38:38 +05:30
Shivam Mishra
b2ae422ed7 feat: add image alt field in items 2021-03-18 12:37:59 +05:30
Deepesh Garg
6da7f65848 fix: Remove print statement 2021-03-17 18:15:24 +05:30
Deepesh Garg
4c6d068a73 fix: Group nil exempted and non gst items separately 2021-03-17 18:15:15 +05:30
Deepesh Garg
ef09599a9f fix(India): Incorrect Nil Exempt and Non GST amount in GSTR3B report 2021-03-17 16:16:33 +05:30
Marica
a1104f040d Merge pull request #24887 from shariquerik/item-attribute-fix-backport
fix: item attributes not editable until refresh
2021-03-16 15:39:36 +05:30
Anurag Mishra
c6a1e3b450 Merge pull request #24228 from YogendrasinhChavda/erpnext_fix_v12
[IMP][version-12] Improved code by adding operator to check condition.
2021-03-16 13:28:31 +05:30
Nabin Hait
238df8b3ec Merge branch 'version-12-hotfix' into v12-pre-release 2021-03-16 11:03:25 +05:30
shariquerik
4db8d13900 fix: item attributes not editable until refresh 2021-03-15 19:10:43 +05:30
Deepesh Garg
6cf37d58f1 fix: Unequal debit and credit issue on RCM Invoice (#24839)
* fix: Unequal debit and credit issue on RCM Invoice

* fix: Travis
2021-03-15 18:04:22 +05:30
Prssanna Desai
386b7fd2c3 fix: use method name as title in error log (#24880) 2021-03-15 18:03:03 +05:30
Ankush
f9f10ed743 fix: Add warning for invalid GST invoice numbers (#24837)
* fix: Add warning for invalid GST invoice numbers

GST Invoice numbers should be 16 characters alphanumeric with dash(/) or
slash(-) only. Add check for doc.name before saving and warn about
naming series.

* refactor: move regex patterns to global variables

Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2021-03-15 17:58:17 +05:30
Devin Slauenwhite
2e2f3f9578 fix: stock move dialog duplicate submit actions (#24859)
* fix: duplicate submit actions

* fix sider errors.
2021-03-15 17:57:37 +05:30
HENRY Florian
55d45532b4 fix: UOM length unit in global setup list is empty (#24853)
* When ERPNext is installed in localized language the category of UOM Conversion Factor is tranlasted into installed languaes. Filter must be locallized

* fix

* fix
2021-03-15 17:54:50 +05:30
Deepesh Garg
07e7f73488 Merge pull request #24874 from GangaManoj/filter-bank-reconciliation-v12
fix(Bank Reconciliation): Filter Bank Account drop-down list
2021-03-15 10:20:05 +05:30
Ganga Manoj
017d168b03 fix(Bank Reconciliation): Filter Bank Account drop-down list 2021-03-13 23:38:30 +05:30
Rohit Waghchaure
a9d48e5fbf fix: revert stock balance value calculation 2021-03-13 12:48:14 +05:30
Ankush Menat
5ae40871d8 fix: do not update PE title during data import (#24835)
* fix: do not update PE title during data import

Related issue: ISS-20-21-10132

* fix: make title field read only
2021-03-11 16:08:40 +05:30
Ankush Menat
86a163fce5 fix: use account_name only in consolidated report (#24834)
Don't use account_number and only rely on account_name for preparing
consolidated financial statement.

Related issue: ISS-20-21-10217
2021-03-11 16:07:35 +05:30
Devin Slauenwhite
266f24bb74 fix: multiple price rules margin. 2021-03-10 18:46:18 -05:00
Rohan
aa90dc6aa3 fix: do not send emails to disabled users from Employee Onboarding (#24796) 2021-03-09 21:02:57 +05:30
HENRY Florian
5eb8eb8aa7 fix: Add french chart accounts with account number (#24763)
* add new franch account chart with numbers

* add new franch account chart with numbers

* add chart of account with code

* change name chart of accounte

* fix json unicode

* account format

* feat: add french accounting chart with account number

* remove debug
2021-03-09 20:32:30 +05:30
Marica
a69b8aa18d Merge pull request #24790 from ankush/track_settings_v12
fix: track setting changes
2021-03-09 13:30:28 +05:30
Marica
4450a075bd Merge branch 'version-12-hotfix' into track_settings_v12 2021-03-09 11:56:06 +05:30
rohitwaghchaure
3aede7da61 Merge pull request #24709 from rohitwaghchaure/fixed-stock-reco-incorrect-serial-no-issue
fix: incorrect serial no issue in the stock reco
2021-03-07 14:29:02 +05:30
Ankush Menat
2e8b06cf9f fix: track setting changes 2021-03-02 18:20:47 +05:30
Saqib
27f120bc7c fix(india): inflated item tax rate for e-invoicing (#24766)
* fix(india): inflated item tax rate for e-invoicing

* fix: credit note discount on net total
2021-03-01 10:46:17 +05:30
Ankush Menat
5feb20d94b feat: track changes to HR settings (#24740)
related issue: FR-ISS-259927
2021-02-25 19:05:25 +05:30
Afshan
27fbfbf34e fix: reference variable in pricing rule (#24714) 2021-02-25 19:01:58 +05:30
Ankush Menat
d389261230 fix(india): escape for special characters in JSON (bp #24695) (#24705) 2021-02-25 18:04:58 +05:30
Deepesh Garg
e9f8e5814a Merge pull request #24736 from ankush/opening_round_gl12
fix: make round off GLE always non-opening (bp #24723)
2021-02-25 15:17:55 +05:30
Ankush Menat
16193a614e fix: make round off GLE always non-opening
Opening GL entries can not be for profit and loss accounts. Round off
accounts are by default P&L account. Hence when making opening entry,
make round off entries as non-opening.

Related issue: ISS-20-21-09677
2021-02-25 10:22:49 +05:30
Afshan
2b2e205b74 fix: check if customer provided item while setting opening stock (#24633) 2021-02-24 19:05:29 +05:30
Afshan
9272ea838f fix: show custom button for saved projects (#24732)
* fix: show custom button for saved projects

* fix: slider
2021-02-24 18:13:29 +05:30
Afshan
80d9576bb9 fix: currency symbol in update items (#24727) 2021-02-24 16:51:35 +05:30
Afshan
c18a8c58dd fix: column names (#24713) 2021-02-24 14:39:00 +05:30
Rucha Mahabal
473fb55724 Merge pull request #24717 from pateljannat/issue-custom-button-v12
fix: custom buttons in issue
2021-02-24 11:48:06 +05:30
pateljannat
05a3c5a6bc fix: custom buttons in issue 2021-02-23 18:15:50 +05:30
Rohit Waghchaure
c39e206fc7 fix: incorrect serial no issue in the stock reco 2021-02-23 14:26:55 +05:30
Afshan
33539d49f1 fix: error message when making reverse journal entry (#24666) 2021-02-22 19:26:02 +05:30
Deepesh Garg
91a929df84 Merge pull request #24668 from pateljannat/gstr-1-unidentified-accounts-issue-v12
fix: excluding unidentified accounts from gstr-1
2021-02-20 17:28:13 +05:30
Saurabh
19a27d3f46 Merge branch 'v12-pre-release' into version-12 2021-02-19 12:44:24 +05:30
Saurabh
d5fa3a2b8f bumped to version 12.18.0 2021-02-19 13:04:23 +05:50
Deepesh Garg
e34f73c60b Merge pull request #24670 from deepeshgarg007/transaction_delete_fix_v12
fix: Do not delete GST Accounts from GST Settings on clearing transactions from Company Master
2021-02-19 10:58:13 +05:30
Deepesh Garg
a49ea67f16 fix: Do not delete GST Accounts from GST Settings on clearing transactions from Company Master 2021-02-19 10:56:54 +05:30
Nabin Hait
d7bf38842b core: Added change log 2021-02-18 20:14:31 +05:30
pateljannat
4f0c5e2cc7 fix: excluding unidentified accounts from gstr-1 2021-02-18 19:31:11 +05:30
Deepesh Garg
be65ae7c86 fix: Prorata factor fixes in subscription (#24638)
* fix: Prorata factor fixes in subscription

* fix: Test Case
2021-02-16 07:50:05 +05:30
Deepesh Garg
b0e53230bd fix: Prorata factor fixes in subscription (#24637)
* fix: Prorata factor fixes in subscription

* fix: Test Case
2021-02-16 07:49:59 +05:30
Deepesh Garg
f452ab56c6 Merge pull request #24635 from ankush/ladakh_gst_addition-v12pr
fix(India): Add GST state code for Ladakh
2021-02-15 21:12:39 +05:30
Deepesh Garg
1eb3d16667 Merge pull request #24634 from ankush/ladakh_gst_addition-v12hf
fix(India): Add GST state code for Ladakh
2021-02-15 21:12:14 +05:30
Ankush Menat
c1c8bb6d98 fix(India): Add GST state code for Ladakh 2021-02-15 15:35:32 +05:30
Ankush Menat
211a4cb833 fix(India): Add GST state code for Ladakh 2021-02-15 15:30:20 +05:30
rohitwaghchaure
472bad352d Merge pull request #24620 from rohitwaghchaure/fixed-incorrect-incoming-rate-for-sales-return-pre
fix: incorrect incoming rate for the sales return
2021-02-12 14:22:37 +05:30
Rohit Waghchaure
eea1ec42f4 fix: incorrect incoming rate for the sales return 2021-02-12 14:21:51 +05:30
rohitwaghchaure
b96c7e0a0f Merge pull request #24618 from rohitwaghchaure/fixed-incorrect-incoming-rate-for-sales-return
fix: incorrect incoming rate for the sales return
2021-02-12 14:20:02 +05:30
Rohit Waghchaure
37604c8d99 fix: incorrect incoming rate for the sales return 2021-02-12 13:17:10 +05:30
Afshan
edfbb5d3be fix: NoneType object has no attribute len() (#24617) 2021-02-12 12:40:52 +05:30
Nabin Hait
ddd85334a3 Removed debug flag 2021-02-12 09:54:04 +05:30
Nabin Hait
81ae1f363c Removed debug flag 2021-02-12 09:53:30 +05:30
Nabin Hait
2f20ef0f4c Merge branch 'version-12-hotfix' into v12-pre-release 2021-02-11 21:59:04 +05:30
Jannat Patel
e8935457a0 Item group on update items v12 (#24535)
* fix: item_group on update items

* fix: code cleanup

* Update accounts_controller.py

* Update accounts_controller.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2021-02-11 21:56:48 +05:30
Nabin Hait
64ec1728ab fix: merge conflict 2021-02-11 21:48:49 +05:30
Tropicalrambler (Alain Berger)
dbb6721412 fix: remove max 5 file attachment limit in task (#24056)
Co-authored-by: alain <fogliasana@gmail.com>
2021-02-11 20:14:14 +05:30
Afshan
afbbdcb802 fix: calculate discount amount (#24511) 2021-02-11 20:11:30 +05:30
Jannat Patel
37adbe5a85 fix: Dynamic Links for reports (#24461)
* fix: dynamic links in reports

* fix: reverting changes for payment period report

* fix: link fields
2021-02-11 20:09:49 +05:30
Rucha Mahabal
d7a5853587 fix: Issues with packing items (#24606) 2021-02-11 20:08:22 +05:30
Saqib
6b799dbef0 fix: validate cancellation only if irn generated (#24609) 2021-02-11 17:51:41 +05:30
Marica
be8ecdf3d6 Merge pull request #24486 from frappe/rfq-contact-email-set-v12
fix: Rfq contact email set v12
2021-02-11 13:50:06 +05:30
Wolfram Schmidt
85f1561e5e Update question.json (#24487)
according to: https://github.com/frappe/erpnext/pull/23402
2021-02-11 13:39:23 +05:30
Richard Case
2bf8610698 fix: plaid client version to support latest API (#24532) 2021-02-11 13:29:59 +05:30
Marica
23364b374e Merge pull request #24546 from pateljannat/validation-for-disabled-warehouse-v12
Validation for disabled warehouse v12
2021-02-11 13:09:29 +05:30
Marica
82c162dfe7 Merge branch 'version-12-hotfix' into validation-for-disabled-warehouse-v12 2021-02-11 13:04:49 +05:30
Saqib
7fea8a95e6 fix: NoneType has no len() (#24604) 2021-02-11 11:57:05 +05:30
rohitwaghchaure
85a2d27736 fix: Consolidated Financial Statement report not works if child company account not present in parent company (#24580) 2021-02-11 11:07:59 +05:30
Ankush Menat
106e0f885a fix: Update total in words after updating items (#24592)
* fix: Update total in words after Updating items

Update total in words after Updating items in sales/purchase orders.

Closes ISS-20-21-09425

* test: Add test for total & words after update item

Add test for total & words after updating items in sales order.
2021-02-11 11:05:08 +05:30
Anuja Pawar
c37ce8b8d3 fix: fix filters for IRS 1099 report (#24597) 2021-02-11 11:02:13 +05:30
pateljannat
5ac5d86d84 fix: vadd validation in stock ledger entry 2021-02-10 18:44:38 +05:30
Marica
a180d2baa8 Merge pull request #24400 from pateljannat/item-wise-purchase-register-item-name-error-v-12
fix: Item wise purchase register item name error v12
2021-02-10 12:04:40 +05:30
pateljannat
14717eeac6 fix: better function name 2021-02-09 14:12:20 +05:30
Deepesh Garg
179d82615f Merge pull request #24579 from marination/acc-dimension-update-hotfix
fix: Avoid changing Ref. Doctype in Accounting Dimension after creation
2021-02-09 06:52:45 +05:30
Saqib
1618c92142 fix: fetching of standalone cr/dr notes for reconciliation (#24576) 2021-02-08 20:19:18 +05:30
marination
1118949867 fix: frm.doc instead of doc 2021-02-08 17:55:26 +05:30
marination
31cd9dcee1 fix: Avoid changing Ref. Doctype in Accounting Dimension after creation 2021-02-08 17:37:14 +05:30
Saqib
e42e75178a fix(e-invoice): skip e-invoice generation for non-taxable invoices (#24568) (#24569) 2021-02-08 11:43:29 +05:30
Saqib
078e154966 fix(e-invoice): do not validate gstin for exports (#24564) 2021-02-07 18:58:25 +05:30
Anuja Pawar
3365f01963 fix: fixing item_code not found error (#24484) 2021-02-05 23:35:42 +05:30
pateljannat
469827da85 fix: validation for disabled warehouse 2021-02-03 15:34:57 +05:30
pateljannat
d3240f9510 Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into version-12-hotfix 2021-02-03 12:05:12 +05:30
Rohan
2341f47631 fix: use supplied year for IRS 1099 forms (#24425)
* fix: use supplied year for IRS 1099 forms

* fix: don't use f-strings

Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com>
2021-02-01 11:55:40 +05:30
Saqib
b57a523dfe fix: discount amount calculation on net total (#24498) 2021-01-29 14:24:18 +05:30
pateljannat
8d101d362d fix: rfq contact email set 2021-01-28 15:01:25 +05:30
pateljannat
a9cfe1cfa4 Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into version-12-hotfix 2021-01-28 14:49:19 +05:30
Afshan
dccd2ca69f fix: validate tax template for tax category (#24403)
* fix: validate tax template for tax category

* Update erpnext/accounts/doctype/sales_taxes_and_charges_template/sales_taxes_and_charges_template.py

Co-authored-by: Marica <maricadsouza221197@gmail.com>

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2021-01-28 12:23:08 +05:30
Anuja Pawar
314e151f1d fix: adding UOM in update items (#24479)
* fix: adding UOM in update items

* fix: sider fixes
2021-01-28 12:19:03 +05:30
Kaviya Periyasamy
c002465903 fix(einvoice): QRCode generation and eway bill live url (#24459) 2021-01-27 19:43:41 +05:30
Saqib
859a5f4dbe fix: e_invoice print format not showing other charges (#24473) 2021-01-27 12:33:59 +05:30
Saurabh
58d7fb5c94 Merge branch 'v12-pre-release' into version-12 2021-01-27 09:42:08 +05:30
Saurabh
744a7b1bad bumped to version 12.17.0 2021-01-27 10:02:08 +05:50
Saqib
d9719fe41d fix: einvoice test (#24463) 2021-01-26 19:19:51 +05:30
Saqib
50c1d24ee9 fix: einvoice test (#24435) 2021-01-25 17:59:52 +05:30
Suraj Shetty
ea221f7e63 chore: Add release notes for v12.17.0 (#24450)
* chore: Add release notes for v12.17.0

* Chore: Fix formatting

* chore: Fix links
2021-01-25 15:36:43 +05:30
David Angulo
3799c1a662 feat: Make patient age translateable (#24416)
* feat: Make patient age translateable

* Make patient age translatable in patient encounter

* Translate all occurrences of age calculation

* Comply to uniform translation syntax
2021-01-22 08:29:16 +05:30
rohitwaghchaure
56a8b90598 Merge pull request #24438 from AfshanKhan/fix-stock-ageing-v12
fix: stock ageing should not take cancelled stock entries.
2021-01-21 23:10:50 +05:30
Afshan
044ad91481 fix: stock ageing should not take cancelled stock entries. 2021-01-21 18:29:43 +05:30
Anuja Pawar
39a5e5abd1 fix: missing asset id in the Fixed Asset Register (#24429) 2021-01-21 15:14:24 +05:30
Saqib
407b351d55 fix: (e-invoicing) qrcode image generation (#24422) 2021-01-20 13:24:49 +05:30
Saqib
6f64ec3574 fix: (e-invoicing) qrcode image generation (#24421) 2021-01-20 13:22:58 +05:30
Prssanna Desai
e17ad9e620 Merge pull request #24419 from prssanna/chart-imports-v12
fix: function imports in accounts dashboard
2021-01-20 11:21:38 +05:30
Prssanna Desai
505b69f6b2 Merge pull request #24380 from prssanna/chart-imports
fix: function imports in accounts dashboard
2021-01-20 11:18:31 +05:30
prssanna
485ef74c58 fix: function imports in accounts dashboard 2021-01-20 11:18:10 +05:30
Anuja Pawar
5cf9fbc27b fix: missing asset id in the report (#24391) 2021-01-18 17:05:01 +05:30
Saqib
4ef49eab66 fix: add check for allowing access to european region (#24393) 2021-01-18 16:40:28 +05:30
Saqib
f6d61f2dec fix: add check for allowing access to european region (#24394) 2021-01-18 16:40:10 +05:30
pateljannat
7aaf3a71e8 fix: item wise purchase register item_name error 2021-01-18 16:15:01 +05:30
Jannat Patel
c51ac1c68b Merge pull request #5 from frappe/version-12-hotfix
Version 12 hotfix
2021-01-18 15:58:26 +05:30
rohitwaghchaure
04b106a515 Merge pull request #24384 from rohitwaghchaure/donot-check-previous-qty-for-batch-pre-release
fix: stock ledger entry was not created against stock reco
2021-01-16 15:03:08 +05:30
Rohit Waghchaure
e79f3e67ed fix: stock ledger entry was not created against stock reco 2021-01-16 15:01:14 +05:30
rohitwaghchaure
f8d24b803c Merge pull request #24382 from rohitwaghchaure/donot-check-previous-qty-for-batch
fix: stock ledger entry was not created against stock reco
2021-01-15 21:25:00 +05:30
Rohit Waghchaure
c516fc7ca4 fix: stock ledger entry was not created against stock reco 2021-01-15 18:18:17 +05:30
prssanna
c9b8423007 fix: function imports in accounts dashboard 2021-01-15 18:05:19 +05:30
Nabin Hait
42675929fa fix:merge conflict 2021-01-15 17:09:43 +05:30
Anuja Pawar
a8de2321a5 fix: Payment Period based on invoice date report fix/refactor (#24377)
* fix: Payment Period based on invoice date report fix/refactor

* fix: minor
2021-01-14 21:21:12 +05:30
Saqib
748f8145b6 feat: show transporter address in sales invoice (#23731)
* feat: show transporter address in sales invoice

* feat: multiple transporter address

* fix: update all eway-bill fields

* fix: travis

* fix: travis

* fix: travis

* fix: travis

* fix: travis

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2021-01-14 19:53:51 +05:30
Jannat Patel
7a40a2b2e2 fix: subscription prepaid date validation (#24373) 2021-01-14 19:46:19 +05:30
Deepesh Garg
35c2d2324d fix: Ignore group cost center validation for period closing voucher (#24374) 2021-01-14 19:45:13 +05:30
Anuja Pawar
f2b5f3a842 fix: for not having fiscal year while creating new company (#24161)
* fix: Fiscal year fix while creating new company

* minor fix

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2021-01-14 19:25:40 +05:30
Mohammad Hasnain Mohsin Rajan
d2442da6f2 fix: last purchase rate not updating when voucher cancelled if only one voucher is present - v12 (#24323)
* fix: update last purchase rate

* chore: use orm for update

Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com>
2021-01-14 19:22:47 +05:30
Anuja Pawar
32bdb691df fix: bom stock report UoM correction (#24363) 2021-01-14 19:21:27 +05:30
rohitwaghchaure
5050541401 Merge pull request #24188 from iRaySpace/loyalty-program-fix
fix: loyalty program
2021-01-14 17:11:20 +05:30
rohitwaghchaure
87f0ed6477 Merge pull request #24364 from rohitwaghchaure/fixed-extra-trasnferred_qty_issue
fix: extra transferred qty has not consumed against work order
2021-01-14 16:36:24 +05:30
Marica
6df18856db Merge pull request #24295 from marination/mr-se-warehouse-validation-hotfix
fix: Dont validate warehouse values between MR to Stock Entry
2021-01-14 16:34:26 +05:30
Marica
288b384ab5 Merge pull request #24368 from marination/qc-back-update-se-hotfix
fix: Back Update from QC based on Batch No
2021-01-14 15:14:06 +05:30
Marica
cffcbf7c47 Merge pull request #24367 from marination/bom-rm-rate-company-based-hotfix
fix: Company Wise Valuation Rate for RM in BOM
2021-01-14 15:13:35 +05:30
Marica
c69fda4440 Merge branch 'version-12-hotfix' into mr-se-warehouse-validation-hotfix 2021-01-14 15:10:01 +05:30
Anurag Mishra
507ec2184c fix: calculation of remaining_sub_periods if relieving date before month start date
fix: calculation of remaining_sub_periods if relieving date before the month start date
2021-01-14 14:51:13 +05:30
Afshan
75cfbe132b fix: calculation of remaining_sub_periods if relieving date before month start date 2021-01-14 13:51:01 +05:30
marination
f88e908598 fix: Remove QI link on cancel wherever same QI name exists 2021-01-14 13:05:40 +05:30
marination
8791d11359 fix: Back Update from QC based on Batch No 2021-01-14 13:03:32 +05:30
marination
bbec5ccc83 fix: Company Wise Valuation Rate for RM in BOM 2021-01-14 12:53:57 +05:30
Saqib
8862166223 fix(e-invoicing): minor ux fixes (#24366) 2021-01-14 12:22:23 +05:30
marination
2eea0f003f fix: test for raising MR-SE mismatch error
- Make test add mismatched item code instead of warehouse, since warehouse can be different.
2021-01-14 12:20:39 +05:30
Rohit Waghchaure
a250d415aa fix: extra transferred qty has not consumed against work order 2021-01-14 11:47:57 +05:30
Jannat Patel
4d83564188 fix: check for tax_rate (#24348) 2021-01-13 20:57:15 +05:30
rohitwaghchaure
7e01cacf8c Merge pull request #24353 from rohitwaghchaure/fixed-incorrect-key-in-subcontract
fix: incorrect serial no in the subcontracted purchase receipt
2021-01-13 09:21:57 +05:30
Rohit Waghchaure
830626d86a fix: incorrect key 2021-01-13 00:05:29 +05:30
Marica
78e413aaaa Merge branch 'version-12-hotfix' into mr-se-warehouse-validation-hotfix 2021-01-12 20:17:41 +05:30
rohitwaghchaure
f9da40e9af Merge pull request #24331 from rohitwaghchaure/fixed-payment-entry-multi-currency-issue
fix: payment entry multi-currency issue
2021-01-11 12:32:30 +05:30
Rucha Mahabal
e6a8e1a23b Merge pull request #24333 from ruchamahabal/fix-item-details-in-reports-v12
feat(reports): get item details from Item document instead of the Transactions
2021-01-08 15:25:02 +05:30
Rucha Mahabal
e0e5783b3e fix: import statement 2021-01-08 14:37:23 +05:30
Rucha Mahabal
0abed806a3 feat(reports): get item details from Item doctype instead of the Transaction 2021-01-08 14:37:07 +05:30
Rohit Waghchaure
79e3700499 fix: payment entry multi-currency issue 2021-01-08 12:36:51 +05:30
Saqib
e898ce1f20 refactor: fetch & validate address from erpnext rather than gst portal (#24305) 2021-01-06 10:49:50 +05:30
Saqib
3ddebae3fb refactor: fetch & validate address from erpnext rather than gst portal (#24299) 2021-01-06 10:49:27 +05:30
Nabin Hait
d5abab4208 fix: tax calculation on salary slip for the first month (#24272) (#24309)
* fix: tax calculation on salary slip for the first month

* fix: net pay precision issue

* fix: net pay precision issue

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2021-01-06 09:34:44 +05:30
Nabin Hait
00a40c95ea Merge branch 'version-12-hotfix' into mr-se-warehouse-validation-hotfix 2021-01-06 09:33:56 +05:30
rohitwaghchaure
750da2f946 Merge pull request #24302 from rohitwaghchaure/allow-to-set-basic-rate-manually-for-manufacture-entry
fix: 'Set Basic Rate Manually' field is now available for Manufacture type stock entry
2021-01-05 17:01:27 +05:30
Rohit Waghchaure
ff524e676f fix: 'Set Basic Rate Manually' field is now available for Manufacure type stock entry 2021-01-05 15:09:54 +05:30
rohitwaghchaure
d8fc6ec471 Merge pull request #24301 from rohitwaghchaure/fixed-allow-to-override-basic-rate-for-fg
fix: allow to override the basic rate for the finished good
2021-01-05 14:55:42 +05:30
Rohit Waghchaure
4e12c70897 fix: allow to override the basic rate for the finished good 2021-01-05 14:54:52 +05:30
Saqib
7e97138beb fix(e-invoicing): minor calculation fixes (#24284) 2021-01-05 13:32:56 +05:30
Saqib
00865b9af3 fix(e-invoicing): minor calculation fixes (#24283) 2021-01-05 13:32:46 +05:30
Deepesh Garg
7d1a431d9c Merge pull request #23963 from vorasmit/remarks-fix-v12
fix: add remarks to sales invoice
2021-01-05 09:57:58 +05:30
Deepesh Garg
fe9e2ec008 Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into remarks-fix-v12 2021-01-05 09:56:58 +05:30
Nabin Hait
ca4c12b44e Merge branch 'version-12-hotfix' into mr-se-warehouse-validation-hotfix 2021-01-05 09:30:09 +05:30
Nabin Hait
cdd950dee5 fix: Ignore customer and supplier while deleting company transactions (#24280) 2021-01-05 09:25:50 +05:30
rohitwaghchaure
21b17cf407 Merge pull request #24289 from rohitwaghchaure/fixed-source-warehouse-if-material-transfer-is-skip
fix: incorrect source warehouse in stock entry
2021-01-05 09:01:39 +05:30
rohitwaghchaure
6324cc238e Merge pull request #24288 from rohitwaghchaure/fixed-pricing-rule-not-working-in-offline-pos
fix: pricing rule not working for offline POS
2021-01-05 09:01:05 +05:30
marination
cdc0b8e435 fix: Dont validate warehouse values between MR to Stock Entry
- Remove validation that checks if warehouse in Stock Entry is the same as MR that it was pulled from
2021-01-04 18:59:48 +05:30
Prssanna Desai
7049cca855 Merge pull request #24290 from frappe/revert-24097-chart-imports
Revert "fix: function imports in account_balance_timeline.py"
2021-01-04 17:16:48 +05:30
Prssanna Desai
ba95d32876 Revert "fix: function imports in account_balance_timeline.py" 2021-01-04 17:14:50 +05:30
Rohit Waghchaure
bf1e0139e2 fix: incorrect source warehouse in stock entry 2021-01-04 16:23:14 +05:30
Rohit Waghchaure
bf490c3a27 fix: pricing rule not working for offline POS 2021-01-04 15:32:13 +05:30
Saqib
40b37f09fd fix: cannot save asset category withouut depr posting date 2021-01-04 11:48:45 +05:30
vorasmit
04e0b35154 Update patches.txt 2021-01-01 17:14:14 +05:30
vorasmit
82b4749166 Update patches.txt 2021-01-01 10:49:48 +05:30
vorasmit
ef06f3288f Delete update_sales_invoice_remarks.py 2021-01-01 10:48:44 +05:30
Saqib
945c0e86de fix: cannot submit e-invoice if legal name not found 2020-12-31 13:17:59 +05:30
Saqib
2cae3d7b38 fix: cannot submit e-invoice if legal name not found 2020-12-31 13:16:59 +05:30
Saurabh
03933f8461 Merge branch 'v12-pre-release' into version-12 2020-12-31 11:20:28 +05:30
Saurabh
ba398bc779 bumped to version 12.16.2 2020-12-31 11:40:28 +05:50
Saqib
022a46fdcd fix: item value & invoice value calculations (#24241) 2020-12-31 11:17:27 +05:30
Deepesh Garg
d092b6c25a Merge pull request #24244 from deepeshgarg007/template_company_filter
fix: Add company filter in tax template query
2020-12-31 11:06:25 +05:30
Karthikeyan S
5add3ea210 fix(GST E Invoice): update live URLs for adaequare GSP (#24249) 2020-12-30 19:21:40 +05:30
Deepesh Garg
909346f222 fix: Add company filter in tax template query 2020-12-30 18:05:52 +05:30
Saurabh
d9a0e0c708 Merge branch 'v12-pre-release' into version-12 2020-12-30 17:45:38 +05:30
Saurabh
839edaf613 bumped to version 12.16.1 2020-12-30 18:05:38 +05:50
Deepesh Garg
11f2da72b1 fix: Error on submitting sales invoice (#24243)
* fix: Error on submitting sales invoice

* fix: remove return_taxes
2020-12-30 17:44:23 +05:30
Saurabh
61298c3489 Merge branch 'v12-pre-release' into version-12 2020-12-30 13:12:30 +05:30
Saurabh
2cf2697e74 bumped to version 12.16.0 2020-12-30 13:32:29 +05:50
rohitwaghchaure
1b0870a440 Merge pull request #24240 from saurabh6790/v12_16_change_log
feat: change log for version 12.16.0
2020-12-30 13:09:39 +05:30
Saurabh
5c107b99bd feat: change log for version 12.16.0 2020-12-30 13:07:05 +05:30
Saqib Ansari
edec82bb9e fix: unit rate & gross amount calculation 2020-12-30 11:57:16 +05:30
Saqib Ansari
45dbfaa7f9 fix: invoice value set to zero if rounded total disabled 2020-12-30 11:57:16 +05:30
Rohit Waghchaure
7d666ccfb4 fix: do not override the manually added valuation rate in stock entry 2020-12-30 11:57:16 +05:30
Saqib Ansari
246ef881a0 fix: e invoice request log permissions 2020-12-30 11:57:16 +05:30
Saqib Ansari
5f3635fbaf fix: travis 2020-12-30 11:57:16 +05:30
Rohit Waghchaure
ec59c6cebc fix: do not manufacture same serial no multiple times 2020-12-30 11:57:16 +05:30
Saqib Ansari
be58194678 fix: sider issues 2020-12-30 11:57:16 +05:30
Saqib Ansari
00306d8fd0 chore: code cleanup 2020-12-30 11:57:16 +05:30
Saqib Ansari
da83ec0f0d fix: cannot cancel irn without submitting sales invoice 2020-12-30 11:57:16 +05:30
Saqib Ansari
709d50ad21 fix: remove test pincode 2020-12-30 11:57:16 +05:30
Saqib Ansari
7f69820f04 fix: uncomment test condition 2020-12-30 11:57:16 +05:30
Saqib Ansari
a0c8106342 feat: multiple gstins for e invoicing 2020-12-30 11:57:16 +05:30
Saqib Ansari
8c8ab4140e fix: remove test supplier pincode 2020-12-30 11:57:16 +05:30
pateljannat
2274162107 fix: modified 2020-12-30 11:57:16 +05:30
Shivam Mishra
6f2a34f6d4 fix: replace pin code with postal code 2020-12-30 11:57:16 +05:30
pateljannat
e512118320 fix: indentation 2020-12-30 11:57:16 +05:30
pateljannat
aa2a7abe4e fix: linter issue for translation syntax 2020-12-30 11:57:16 +05:30
pateljannat
79ff4d0e8f fix: reversing previous commits and adding condition in regional controller 2020-12-30 11:56:50 +05:30
pateljannat
37a64b6485 fix: place of supply change on address change 2020-12-30 11:56:50 +05:30
Deepesh Garg
9f848fe65c fix: Tax template update on supplier 2020-12-30 11:56:50 +05:30
Marica
65680ada87 Revert "fix: po_not retaining on save" 2020-12-30 11:56:09 +05:30
Mohammad Hasnain
a8cda3f013 fix: po_no not cleaned up on save 2020-12-30 11:56:09 +05:30
Mohammad Hasnain
c51b4d0416 fix: po_no getting removed on save 2020-12-30 11:56:09 +05:30
Rucha Mahabal
67cfb6c370 fix(Asset): set current asset value before calculating difference amount (#24119) 2020-12-30 11:56:09 +05:30
Saqib Ansari
54e9063215 feat: add docs link to e invoice settings 2020-12-30 11:56:09 +05:30
Saqib Ansari
554ce04e0d fix: error handling 2020-12-30 11:56:09 +05:30
Saqib Ansari
08f082089e fix: dialog is undefined 2020-12-30 11:56:09 +05:30
Saqib Ansari
d22279ba38 fix: minor ux issues 2020-12-30 11:56:09 +05:30
Saqib Ansari
d01cae95d9 feat: show e-invoice preview before IRN generation 2020-12-30 11:56:09 +05:30
Saqib Ansari
b510d20805 fix: adjust qr code image size 2020-12-30 11:56:09 +05:30
Saqib Ansari
b1054a3ddc fix: sider issues 2020-12-30 11:56:09 +05:30
Saqib Ansari
f454ab4ce2 chore: add ack date and ack no field for print formats 2020-12-30 11:56:09 +05:30
Saqib Ansari
5c68fe4d86 feat: log e-invocing requests 2020-12-30 11:56:09 +05:30
Saqib Ansari
68e476c7fe fix: returning condition 2020-12-30 11:56:08 +05:30
Saqib Ansari
8f5425d99b chore: add tests 2020-12-30 11:56:08 +05:30
Saqib Ansari
6af53a645a fix: ewaybill mandatory conditions 2020-12-30 11:56:08 +05:30
Saqib Ansari
b9cbdeaa95 fix: eway bill test 2020-12-30 11:56:08 +05:30
Saqib Ansari
0ce03cc36d fix: exclude intra company transactions 2020-12-30 11:56:08 +05:30
pateljannat
4ee433a51c fix: indentation 2020-12-30 11:56:08 +05:30
Anuja P
e33179d130 fix: Added TDS account number and an error message 2020-12-30 11:56:08 +05:30
barredterra
53bcf704b3 feat: separate equity tree in CoA SKR04 2020-12-30 11:56:08 +05:30
pateljannat
f4f05dd5ad fix: enabling track changes for stock settings 2020-12-30 11:56:08 +05:30
pateljannat
5b554a5e20 fix: enabling track changes for stock settings 2020-12-30 11:56:08 +05:30
pateljannat
79ac9dc486 fix: enabling track changes for stock settings 2020-12-30 11:56:08 +05:30
pateljannat
f0d591351b fix: enabling track changes for stock settings 2020-12-30 11:56:08 +05:30
Saqib Ansari
c6143c4542 fix: qrcode image size 2020-12-30 11:56:08 +05:30
Saqib Ansari
5a56b63eed feat: update timeline on einvoice actions 2020-12-30 11:56:08 +05:30
Saqib Ansari
5d92e2481d fix: ewaybill could be modified after ewaybill generation 2020-12-30 11:56:08 +05:30
Saqib Ansari
ac603a895d fix: error handling 2020-12-30 11:56:08 +05:30
Saqib Ansari
9f0d567ea5 fix: imports 2020-12-30 11:56:08 +05:30
Saqib Ansari
4ea03c23a4 fix: import format_date 2020-12-30 11:56:08 +05:30
Saqib Ansari
209aa447f7 chore: remove fetch token from e invocie settings 2020-12-30 11:56:08 +05:30
Saqib Ansari
eabaa16f13 feat: cess non advolem on einvoice item 2020-12-30 11:56:08 +05:30
Saqib Ansari
27b68be854 fix: patch 2020-12-30 11:56:08 +05:30
Saqib Ansari
85cc1d68f0 fix: invalid syntax 2020-12-30 11:56:08 +05:30
Saqib Ansari
61e6760a6b fix: invalid syntax 2020-12-30 11:56:08 +05:30
Saqib Ansari
16e879bc1a chore: remove test pincode 2020-12-30 11:56:08 +05:30
Saqib Ansari
8866801932 feat: header & footer in GST E Invoice 2020-12-30 11:56:08 +05:30
Saqib Ansari
4965af2321 chore: error logging 2020-12-30 11:56:08 +05:30
Saqib Ansari
fb65644026 chore: remove unwanted imports 2020-12-30 11:56:08 +05:30
Saqib Ansari
2e1f56e117 feat: generate eway bill from IRN 2020-12-30 11:56:08 +05:30
Saqib Ansari
3b62e05a5c fix: valiations 2020-12-30 11:56:08 +05:30
Saqib Ansari
988fd97625 fix: show/hide eway bill fields 2020-12-30 11:56:08 +05:30
Saqib Ansari
628dcb1ff9 fix: generate & cancel IRN 2020-12-30 11:56:08 +05:30
Saqib Ansari
e6cd9ccea0 fix: attach qrcode on irn generation 2020-12-30 11:56:08 +05:30
Saqib Ansari
ac2fc8470b chore: clean up einvoice actions 2020-12-30 11:56:08 +05:30
Saqib Ansari
6dcf334199 chore: remove unwanted fuctions 2020-12-30 11:56:08 +05:30
Saqib Ansari
5822cfb454 feat: cancel eway bill 2020-12-30 11:56:08 +05:30
Saqib Ansari
a15c02ec71 feat: generate & cancel IRN 2020-12-30 11:56:08 +05:30
Saqib Ansari
0938db8730 feat: fetch and cache GSTIN details 2020-12-30 11:56:08 +05:30
Saqib Ansari
537a236dc9 fix: qr code generation 2020-12-30 11:56:08 +05:30
Saqib Ansari
68d2a1f02b chore: remove unwanted fields 2020-12-30 11:56:08 +05:30
Saqib Ansari
4dad6742e1 feat: initialize GSP connector 2020-12-30 11:56:08 +05:30
Saqib Ansari
44877d5a60 fix: qr code image string 2020-12-30 11:56:08 +05:30
Saqib Ansari
05589e9651 chore: improve document name validation message 2020-12-30 11:56:08 +05:30
Saqib Ansari
9958639a9a fix: other charges calculation 2020-12-30 11:56:08 +05:30
Saqib Ansari
df1686611b fix: invoice totals calculation 2020-12-30 11:56:07 +05:30
Saqib Ansari
1041aef097 fix: patch 2020-12-30 11:56:07 +05:30
Saqib Ansari
0e00bff182 fix: einvoice field validation 2020-12-30 11:56:07 +05:30
Saqib Ansari
160585321d fix: rename e_invoice_utils.py 2020-12-30 11:56:07 +05:30
Saqib Ansari
965bc9bb80 fix: add missing package 2020-12-30 11:56:07 +05:30
Saqib Ansari
bfb68e4e80 fix: e_invoice module not found 2020-12-30 11:56:07 +05:30
Saqib Ansari
3d7f833899 fix: error logging 2020-12-30 11:56:07 +05:30
Saqib Ansari
1866965508 fix: validations 2020-12-30 11:56:07 +05:30
Saqib Ansari
a874587156 fix: credit note einvoice 2020-12-30 11:56:07 +05:30
Saqib Ansari
e7ea94ae6f fix: return date 2020-12-30 11:56:07 +05:30
Saqib Ansari
7015609f7f fix: validate document name 2020-12-30 11:56:07 +05:30
Saqib Ansari
53b05c2850 feat: add patch 2020-12-30 11:56:07 +05:30
Saqib Ansari
e14bb5e978 fix: add permissions on regional setup 2020-12-30 11:56:07 +05:30
Saqib Ansari
4db3ff1673 fix: validations 2020-12-30 11:56:07 +05:30
Saqib Ansari
03cd4135d2 fix: print format 2020-12-30 11:56:07 +05:30
Saqib Ansari
e984632221 fix: download & upload e-invoice 2020-12-30 11:56:07 +05:30
Saqib Ansari
65289334e3 chore: clean up e invoice actions 2020-12-30 11:56:07 +05:30
Saqib Ansari
2e38f73732 chore: code cleanup 2020-12-30 11:56:07 +05:30
Saqib Ansari
52b983eb8f fix: invalid syntax 2020-12-30 11:56:07 +05:30
Saqib Ansari
2e16dcc8fa fix: bug 2020-12-30 11:56:07 +05:30
Saqib Ansari
4e12466bef feat: QRCode Image and E-Invoice Print Format 2020-12-30 11:56:07 +05:30
Saqib Ansari
e0ea4265a8 chore: move einvoicing stuff to seperate folder 2020-12-30 11:56:07 +05:30
Saqib Ansari
233cad9e02 fix: fetch token if not valid 2020-12-30 11:56:07 +05:30
Saqib Ansari
718e517144 chore: save signed invoice and qrcode after uplaoding irn 2020-12-30 11:56:07 +05:30
Saqib Ansari
4f3f935a7a fix: fn name 2020-12-30 11:56:07 +05:30
Saqib Ansari
94db0bba44 chore: group e-invoicing actions 2020-12-30 11:56:07 +05:30
Saqib Ansari
acc79f739b feat: manual download / upload json 2020-12-30 11:56:07 +05:30
Saqib Ansari
bdf4bfe98f feat: cancel e-way bill before cancelling IRN 2020-12-30 11:56:07 +05:30
Saqib Ansari
9e5388ac53 chore: no copy on e invoice custom fields 2020-12-30 11:56:07 +05:30
Saqib Ansari
a6666dbf97 fix: save e-way bill no on irn generation 2020-12-30 11:56:07 +05:30
Saqib Ansari
4b969a5b9b feat: e-way bill details in e-invoice 2020-12-30 11:56:07 +05:30
Saqib Ansari
b6faadab8d chore: show irn field for proper gst_category 2020-12-30 11:56:07 +05:30
Saqib Ansari
38f06a1a26 fix: update irn_cancelled after cancelling irn 2020-12-30 11:56:07 +05:30
Saqib Ansari
b54df979c4 fix: do not show generate irn for invalid supply type 2020-12-30 11:56:07 +05:30
Saqib Ansari
1b969ff140 fix: validation if e invoicing is disabled 2020-12-30 11:56:07 +05:30
Saqib Ansari
bf2b4bc6f7 fix: cannot find attached key file 2020-12-30 11:56:07 +05:30
Saqib Ansari
9d805272be fix: public key is required on validate 2020-12-30 11:56:07 +05:30
Saqib Ansari
d4255d77f4 fix: hide cancel irn dialog on error 2020-12-30 11:56:07 +05:30
Saqib Ansari
13467e42f3 chore: show irn cancelled check after cancellation 2020-12-30 11:56:07 +05:30
Saqib Ansari
1679b0adbb fix: item discount 2020-12-30 11:56:07 +05:30
Saqib Ansari
e7a129dde8 chore: minor fixes 2020-12-30 11:56:07 +05:30
Saqib Ansari
b12d08a85b feat: Generate & Cancel IRN from Sales Invoice 2020-12-30 11:56:07 +05:30
Saqib Ansari
fe054511c8 feat: make IRN field on regional setup 2020-12-30 11:56:07 +05:30
Saqib Ansari
c3e0ff93d7 chore: rename schema to template & js cleanup 2020-12-30 11:56:07 +05:30
Saqib Ansari
4d15506791 chore: split einvoice settings and operations 2020-12-30 11:56:07 +05:30
Saqib Ansari
a367cc5c99 chore: move e-invoice settings to regional 2020-12-30 11:56:07 +05:30
Saqib Ansari
9599420878 feat: complete e-invoice schema 2020-12-30 11:56:07 +05:30
Saqib Ansari
c9b6db27cf feat: cancel IRN 2020-12-30 11:56:06 +05:30
Saqib Ansari
d72d2367ab chore: validations 2020-12-30 11:56:06 +05:30
Saqib Ansari
d9e4ebc00c feat: decode signed json and QR code 2020-12-30 11:56:06 +05:30
Saqib Ansari
a4bd8ba6f9 feat: generate IRN 2020-12-30 11:56:06 +05:30
Saqib Ansari
6f5a9c8049 feat: make e invoice from erpnext sales invoice 2020-12-30 11:56:06 +05:30
Saqib Ansari
48449e6d0a feat: decrypt json data with SEK 2020-12-30 11:56:06 +05:30
Saqib Ansari
31596228ff feat: AES decryption of SEK with appkey 2020-12-30 11:56:06 +05:30
Saqib Ansari
017543d59d chore: handle error response 2020-12-30 11:56:06 +05:30
Saqib Ansari
cca0eaaa29 feat: save token and sek from auth request 2020-12-30 11:56:06 +05:30
Saqib Ansari
b52a9283bb feat: rsa encryption with public key 2020-12-30 11:56:06 +05:30
Saqib Ansari
39dabe7381 feat: read public key file 2020-12-30 11:56:06 +05:30
Saqib Ansari
1c213a3dbb feat: init e-invoice settings 2020-12-30 11:56:06 +05:30
rohitwaghchaure
e7eb9d4e20 Merge pull request #24184 from nextchamp-saqib/e-invoicing-version-12
feat: GST E-Invoicing
2020-12-30 11:15:37 +05:30
Saqib Ansari
d94a97b6ad fix: unit rate & gross amount calculation 2020-12-29 17:56:14 +05:30
Saqib Ansari
d819330443 fix: invoice value set to zero if rounded total disabled 2020-12-29 17:56:08 +05:30
Yogendrasinh Chavda
eb88b63ddd [IMP][version-12] Improved code by adding operator to check condition. 2020-12-28 17:40:52 +05:30
rohitwaghchaure
86bbb3e9a0 Merge pull request #24221 from rohitwaghchaure/donot-override-valuation-rate
fix: do not override the manually added valuation rate in stock entry
2020-12-28 16:43:49 +05:30
Rohit Waghchaure
b9d62d7f8e fix: do not override the manually added valuation rate in stock entry 2020-12-28 15:20:23 +05:30
rohitwaghchaure
44dd9f6fe5 Merge pull request #24163 from rohitwaghchaure/do-not-manufacture-same-serial-no-two
fix: do not manufacture same serial no multiple times
2020-12-24 22:54:30 +05:30
Saqib Ansari
a683b14c64 fix: e invoice request log permissions 2020-12-24 21:12:13 +05:30
Saqib Ansari
becae59af0 fix: travis 2020-12-24 21:12:06 +05:30
Rohit Waghchaure
e6d300e35c fix: do not manufacture same serial no multiple times 2020-12-24 17:47:48 +05:30
Saqib Ansari
c2a41371d2 fix: sider issues 2020-12-24 10:39:41 +05:30
Saqib Ansari
6d3fc0d020 chore: code cleanup 2020-12-23 15:43:51 +05:30
Saqib Ansari
81cbd0dc50 fix: cannot cancel irn without submitting sales invoice 2020-12-23 15:43:31 +05:30
Saqib Ansari
1bbda81c9f fix: remove test pincode 2020-12-23 15:19:51 +05:30
Saqib Ansari
21461823f1 fix: uncomment test condition 2020-12-23 14:36:40 +05:30
Rohit Waghchaure
e9b580aba6 fix: pos not working 2020-12-22 19:03:39 +08:00
Sun Howwrongbum
7f794e5bb6 fix(pos): loyalty details not rendering in cart area 2020-12-22 19:02:08 +08:00
Saqib Ansari
6db07c0278 feat: multiple gstins for e invoicing 2020-12-22 15:56:18 +05:30
Saqib Ansari
c28379075a fix: remove test supplier pincode 2020-12-21 18:41:40 +05:30
Saurabh
95c3258ee4 Merge branch 'v12-pre-release' into version-12 2020-12-21 16:14:01 +05:30
Saurabh
00e095278d bumped to version 12.15.0 2020-12-21 16:25:38 +05:50
Nabin Hait
53d98ff635 chore: Added change log 2020-12-21 14:31:56 +05:30
Marica
64f4f86948 Merge pull request #23983 from pateljannat/track-changes-for-stock-settings-v12
fix: enabling track changes for stock settings
2020-12-19 16:25:54 +05:30
pateljannat
983df4463a fix: modified 2020-12-18 20:18:17 +05:30
Shivam Mishra
b9c71e59e0 Merge pull request #24180 from scmmishra/chore-rename-pin-code 2020-12-18 13:32:34 +05:30
Shivam Mishra
8427dd2ca8 fix: replace pin code with postal code 2020-12-18 13:30:25 +05:30
Deepesh Garg
8b43faa203 Merge pull request #24175 from deepeshgarg007/tax_category_typo_v12_pre
fix: Validation for duplicate Tax Category
2020-12-17 19:09:13 +05:30
Nabin Hait
5ee6417228 fix: Translation issue 2020-12-17 19:07:37 +05:30
Deepesh Garg
71349d5a49 fix: Validation for duplicate Tax Category 2020-12-17 19:06:31 +05:30
Deepesh Garg
105a9fdff1 Merge pull request #24174 from deepeshgarg007/tax_category_typo_v12
fix: Typo in tax category doctype query
2020-12-17 19:01:01 +05:30
Deepesh Garg
bd0cb9d2ed Typo in tax category doctype query 2020-12-17 18:59:42 +05:30
pateljannat
ffbb767072 Merge branch 'track-changes-for-stock-settings-v12' of https://github.com/pateljannat/erpnext into track-changes-for-stock-settings-v12 2020-12-17 13:26:21 +05:30
pateljannat
723e4f2a22 fix: indentation 2020-12-17 13:26:11 +05:30
Deepesh Garg
a738e8ca87 Merge pull request #24128 from ruchamahabal/fix-asset-value-adjustment-v12
fix(Asset): set current asset value before calculating difference amount
2020-12-17 12:36:35 +05:30
Deepesh Garg
b0b36d2caa Merge pull request #24094 from frappe/skr04_equity
feat: separate equity tree in CoA SKR04
2020-12-17 09:15:11 +05:30
Deepesh Garg
98d8718979 Merge pull request #24162 from deepeshgarg007/template_update_v12_pre
fix(India): Taxation fixes
2020-12-17 09:11:38 +05:30
Deepesh Garg
0de091a749 Merge pull request #24159 from deepeshgarg007/template_update_v12
fix(India): Taxation fixes
2020-12-17 09:11:20 +05:30
Deepesh Garg
2a92d1b94a fix: Tax template update on customer address change 2020-12-16 22:03:41 +05:30
pateljannat
af60e85400 fix: removing return_taxes condition 2020-12-16 22:03:31 +05:30
pateljannat
45d8204e1e fix: company filter added again 2020-12-16 22:03:15 +05:30
pateljannat
56d5b68046 fix: linter issue for translation syntax 2020-12-16 22:02:52 +05:30
pateljannat
dafbb80ec5 fix: reversing previous commits and adding condition in regional controller 2020-12-16 22:02:00 +05:30
pateljannat
f226927b6a fix: place of supply change on address change 2020-12-16 22:01:35 +05:30
pateljannat
8cfde675ac fix: place of supply change when address changes 2020-12-16 22:01:27 +05:30
Deepesh Garg
599d7a686e fix: Tax template update on supplier 2020-12-16 22:01:15 +05:30
Deepesh Garg
2d073016ee Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into template_update_v12 2020-12-16 20:43:11 +05:30
Deepesh Garg
12f95c41b9 fix: Tax template update on customer address change 2020-12-16 20:38:54 +05:30
pateljannat
7fb22fd652 fix: removing return_taxes condition 2020-12-16 20:13:22 +05:30
pateljannat
284a19c99d fix: company filter added again 2020-12-16 20:12:38 +05:30
pateljannat
1a401b1427 fix: linter issue for translation syntax 2020-12-16 20:12:24 +05:30
pateljannat
b2db8031d5 fix: reversing previous commits and adding condition in regional controller 2020-12-16 20:12:04 +05:30
pateljannat
58fae20ff9 fix: place of supply change on address change 2020-12-16 20:10:16 +05:30
pateljannat
2cf9cc02e1 fix: place of supply change when address changes 2020-12-16 20:10:06 +05:30
Deepesh Garg
9b893643c0 fix: Tax template update on supplier 2020-12-16 20:09:39 +05:30
Marica
126de4d0e5 Merge pull request #24156 from frappe/revert-24131-version-12-hotfix
fix: Revert "fix: po_not retaining on save"
2020-12-16 18:13:16 +05:30
Marica
18635e4dd1 Revert "fix: po_not retaining on save" 2020-12-16 17:02:41 +05:30
Marica
4b75d528c9 Merge pull request #24131 from hasnain2808/version-12-hotfix
fix: po_not retaining on save
2020-12-16 16:42:57 +05:30
Mohammad Hasnain Mohsin Rajan
5220e9201b Merge branch 'version-12-hotfix' into version-12-hotfix 2020-12-16 15:29:53 +05:30
Anurag Mishra
ee7bcc0350 fix: Added TDS Payable account number and an error message
fix: Added TDS Payable account number and an error message
2020-12-16 13:49:41 +05:30
Mohammad Hasnain
1f2ec25493 fix: po_no not cleaned up on save 2020-12-15 14:48:44 +05:30
Mohammad Hasnain
e46a72b101 fix: po_no getting removed on save 2020-12-15 14:41:35 +05:30
Rucha Mahabal
b4dfba54b6 fix(Asset): set current asset value before calculating difference amount (#24119) 2020-12-15 12:50:15 +05:30
Saqib Ansari
9daf4418ea feat: add docs link to e invoice settings 2020-12-14 19:14:43 +05:30
Saqib Ansari
695e551972 fix: error handling 2020-12-14 18:59:01 +05:30
Saqib Ansari
e6a07d5508 fix: dialog is undefined 2020-12-14 17:31:31 +05:30
Saqib Ansari
d67affdfae fix: minor ux issues 2020-12-14 17:15:36 +05:30
Saqib Ansari
cde452add7 feat: show e-invoice preview before IRN generation 2020-12-14 16:51:25 +05:30
Saqib Ansari
5c74cdd0d2 fix: adjust qr code image size 2020-12-14 16:40:23 +05:30
Marica
58b1e3b866 Merge branch 'version-12-hotfix' into track-changes-for-stock-settings-v12 2020-12-14 13:14:05 +05:30
Anurag Mishra
b16d625b4f Merge pull request #24118 from deepeshgarg007/unique_tax_category_v12
fix: Validation for duplicate Tax Category
2020-12-14 12:39:08 +05:30
Saqib Ansari
96f0b0e30a Merge branch 'version-12-hotfix' into e-invoicing-version-12 2020-12-14 12:25:00 +05:30
Saqib Ansari
390cac2160 fix: sider issues 2020-12-14 12:19:30 +05:30
Saqib Ansari
64e9275c4a chore: add ack date and ack no field for print formats 2020-12-14 12:19:24 +05:30
Saqib Ansari
42b028a3ba feat: log e-invocing requests 2020-12-14 12:19:19 +05:30
Saqib Ansari
5327637b37 fix: returning condition 2020-12-14 12:19:12 +05:30
Saqib Ansari
5d6849ac7f chore: add tests 2020-12-14 12:19:06 +05:30
Saqib Ansari
57e6759088 fix: ewaybill mandatory conditions 2020-12-14 12:18:54 +05:30
Saqib Ansari
9760eb9d57 fix: eway bill test 2020-12-14 12:15:04 +05:30
Saqib Ansari
ee0b08ae9c fix: exclude intra company transactions 2020-12-14 12:14:55 +05:30
Nabin Hait
22e770353f fix: Translation issue 2020-12-14 11:00:59 +05:30
Deepesh Garg
bbce16e00c fix: Validation for duplicate Tax Category 2020-12-14 10:57:29 +05:30
Nabin Hait
2bd620fac8 fix: Fixed merge conflict 2020-12-11 22:34:34 +05:30
pateljannat
3dbf88ba6f fix: indentation 2020-12-11 10:25:08 +05:30
Anuja P
1cd57a324c fix: Added TDS account number and an error message 2020-12-10 22:05:09 +05:30
Marica
fe56b800a6 Merge pull request #24081 from pateljannat/sales-invoice-from-sales-order-v12
fix: sales invoice add button on sales order dashboard
2020-12-10 20:09:20 +05:30
Marica
ccdfbd4f40 Merge pull request #24103 from marination/hotfix-debit-credit-opening-invoice-tool
fix: Handle Account and Item None not found in Opening Invoice Creation Tool
2020-12-10 20:06:13 +05:30
Marica
f7f809aae8 Merge branch 'version-12-hotfix' into hotfix-debit-credit-opening-invoice-tool 2020-12-10 20:04:54 +05:30
Mohammad Hasnain Mohsin Rajan
3f399ee806 fix(acc recv report): columns mismatch (#24085) 2020-12-10 19:15:53 +05:30
Marica
7bbe383232 Merge branch 'version-12-hotfix' into hotfix-debit-credit-opening-invoice-tool 2020-12-10 18:58:31 +05:30
marination
1fcd1e4dc0 fix: add assertRaises for error 2020-12-10 17:34:30 +05:30
Anurag Mishra
800a9ae7c3 Merge pull request #24097 from prssanna/chart-imports
fix: function imports in account_balance_timeline.py
2020-12-10 16:32:59 +05:30
marination
a63b5c1a9e fix: Make new Customers for account missing test and set company 2020-12-10 16:31:23 +05:30
marination
74bcb2977f chore: Add Test for missing debit account 2020-12-10 16:30:39 +05:30
marination
96946fa4a0 fix: Handle missing Account and Item in Opening Invoice Creation Tool 2020-12-10 16:30:13 +05:30
Deepesh Garg
e2fb0c567d Merge pull request #24036 from nextchamp-saqib/abs-value-in-pf-v12
fix: get formatted value in 'taxes' print template
2020-12-10 15:35:15 +05:30
Raffael Meyer
e8f4eb02be Merge branch 'version-12-hotfix' into skr04_equity 2020-12-10 10:52:26 +01:00
Mohammad Hasnain Mohsin Rajan
5a1d912e6d Merge branch 'version-12-hotfix' into sales-invoice-from-sales-order-v12 2020-12-10 14:07:07 +05:30
Prssanna Desai
e152f9a89a Merge pull request #24099 from prssanna/shopping-cart-fix
fix: get value of allow_items_in_stock even if not an exact match
2020-12-10 12:44:48 +05:30
prssanna
6a718a3fc6 fix: get value of allow_items_in_stock even if not an exact match 2020-12-10 12:39:53 +05:30
Saqib
5062b78718 fix: asset with value zero doesn't show up in fixed asset register (#24098) 2020-12-10 12:33:43 +05:30
prssanna
eed12444e1 fix: function imports in account_balance_timeline.py 2020-12-10 12:20:18 +05:30
rohitwaghchaure
326fccfa00 Merge pull request #24001 from rohitwaghchaure/fixed-stock-entry-multi-consumption
fix: incorrect stock quantity if 'Allow Multiple Material Consumption…
2020-12-10 02:11:20 +05:30
Rohit Waghchaure
e7476914cd fix: incorrect stock quantity if 'Allow Multiple Material Consumption' has enabled 2020-12-10 01:27:54 +05:30
rohitwaghchaure
b1507fdaae Merge pull request #24009 from rohitwaghchaure/shipping-charges-not-added-in-invoice
fix: shipping charges not sync from shopify
2020-12-10 01:06:18 +05:30
barredterra
f76b0dea44 feat: separate equity tree in CoA SKR04 2020-12-09 17:45:00 +01:00
Prssanna Desai
ede082657f Merge pull request #24093 from prssanna/item-configurator-fix-version-12
fix: allow add to cart for any item if allow_items_not_in_stock is enabled
2020-12-09 17:54:46 +05:30
prssanna
d0303b3fb1 fix: allow add to cart for any item if allow_items_not_in_stock is enabled 2020-12-09 17:32:16 +05:30
Shivam Mishra
91a3ab8e32 Merge pull request #24084 from prssanna/item-configurator-fix
fix(Shopping Cart): allow add to cart for any item if allow_items_not_in_stock is enabled
2020-12-09 16:45:22 +05:30
prssanna
cfb6e3aa30 fix: allow add to cart for any item if allow_items_not_in_stock is enabled 2020-12-08 16:44:38 +05:30
pateljannat
4fe48a30c4 fix: sales invoice add button on sales order dashboard 2020-12-08 12:04:56 +05:30
Jannat Patel
af29bde0e8 Merge pull request #2 from frappe/version-12-hotfix
Version 12 hotfix
2020-12-08 11:39:32 +05:30
Afshan
b83e131b1f fix: throw an error when no pos profile exist (#24026)
* fix: throw an error when no pos profile exist

* fix: tests

* fix: tests

* fix:test
2020-12-08 09:45:14 +05:30
Rucha Mahabal
51015178da fix(POS): do not fetch items until POS Profile is set (#24076) 2020-12-08 09:34:22 +05:30
Afshan
e39dd079c4 fix: double exception in payroll (#24080) 2020-12-08 09:32:08 +05:30
Afshan
7459dc4105 fix: po orverride (#24023)
* fix: po orverride

* fix: po

* fix: spelling error

* fix: refactor condition

* fix: condition
2020-12-08 09:28:01 +05:30
Deepesh Garg
0796d6b5d0 Merge pull request #24071 from deepeshgarg007/gstr_3b_report_ims_v12
fix: Show tax amount in base currencies
2020-12-07 09:14:29 +05:30
Deepesh Garg
5b08241dc6 fix: Show tax amount in base currencies 2020-12-07 09:12:58 +05:30
rohitwaghchaure
5318a159a9 Merge pull request #24068 from rohitwaghchaure/delete-receive-at-warehouse-entry
fix: delete Receive at Warehouse entry on cancellation of Send to War…
2020-12-06 20:57:31 +05:30
Rohit Waghchaure
26723d10af fix: delete Receive at Warehouse entry on cancellation of Send to Warehouse entry 2020-12-06 17:21:30 +05:30
rohitwaghchaure
3ec6bc1838 Merge pull request #24064 from rohitwaghchaure/additional-product-incorrect-rate-v12
fix: pricing rule with transaction not working for additional product
2020-12-06 13:20:39 +05:30
Rohit Waghchaure
29f92e0405 fix: pricing rule with transaction not working for additional product 2020-12-05 19:30:17 +05:30
rohitwaghchaure
2c9f33a916 Merge pull request #24034 from rohitwaghchaure/fixed-job-card-cacncel-flow
fix: don't cancel job card if manufacturing entry has made
2020-12-04 14:15:19 +05:30
Rohit Waghchaure
b09da9bcfc fix: don't cancel job card if manufacturing entry has made 2020-12-04 11:37:50 +05:30
rohitwaghchaure
771a7276c9 Merge pull request #24037 from rohitwaghchaure/fixed-calculate-depreciation-table-issue
fix: Depreciation Posting Date is mandatory even if Calculate Depreci…
2020-12-03 18:24:51 +05:30
Anurag Mishra
2c6c1aa97a fix: payroll attendance error
fix: payroll attendance error
2020-12-03 16:13:07 +05:30
Afshan
482996f8d1 fix: using ORM 2020-12-03 15:14:30 +05:30
Afshan
785579e67b fix: payroll attendance error 2020-12-03 15:11:34 +05:30
Deepesh Garg
74224d90bf Merge pull request #23966 from deepeshgarg007/unpaid_subscription_fix
fix: Invoice generation for Unpaid subscriptions
2020-12-02 20:03:42 +05:30
Rohit Waghchaure
e5d4b4c1ed fix: Depreciation Posting Date is mandatory even if Calculate Depreciation has disabled 2020-11-30 17:20:51 +05:30
Saqib Ansari
39fa5e3266 fix: get formatted value in 'taxes' print template 2020-11-30 15:56:44 +05:30
Deepesh Garg
f940a3494f Merge pull request #24020 from deepeshgarg007/gstr-1-b2c_large
fix: Opening invoices in GSTR-1 report
2020-11-30 10:57:49 +05:30
Deepesh Garg
f08c2a5cef Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into unpaid_subscription_fix 2020-11-29 22:48:46 +05:30
Deepesh Garg
d8b4044ee1 fix: Add check to generate new invoices 2020-11-29 22:48:05 +05:30
rohitwaghchaure
78e737de5a Merge pull request #24013 from rohitwaghchaure/fixed-incoming-rate-for-finished-good
fix: incoming rate for finished good
2020-11-28 19:37:21 +05:30
Deepesh Garg
02feab9f3c fix: Opening invoices in GSTR-1 report 2020-11-27 21:55:02 +05:30
Rohit Waghchaure
3ef60dbfdb fix: incoming rate for finished good 2020-11-27 17:21:05 +05:30
Rohit Waghchaure
75a54361d7 fix: shipping chanrges not sync in erpnext from shopify 2020-11-26 12:55:27 +05:30
Jannat Patel
42b24cc9eb fix: job card error handling for operations field (#23996)
Co-authored-by: pateljannat <jannatpatel@MacBook-Air.local>
2020-11-25 09:07:57 +05:30
rohitwaghchaure
ca05945e92 fix: incorrect balance value in stock balance report (#23997) 2020-11-25 08:58:58 +05:30
rohitwaghchaure
a69b9f95cc Merge pull request #23993 from rohitwaghchaure/bom-stock-project-item-color
fix: bom stock report color showing always red
2020-11-24 17:00:49 +05:30
Rohit Waghchaure
f9e62b74d0 fix: bom stock report color showing always red 2020-11-24 16:56:20 +05:30
Afshan
2b3a20ed5b fix: clear error message when approval not availab (#23972)
le
2020-11-24 08:01:43 +05:30
pateljannat
3252d9d943 fix: enabling track changes for stock settings 2020-11-23 16:41:51 +05:30
pateljannat
9655edabd9 fix: enabling track changes for stock settings 2020-11-23 16:37:00 +05:30
pateljannat
2704327029 fix: enabling track changes for stock settings 2020-11-23 16:34:40 +05:30
Jannat Patel
3d84d324d7 fix: purchase receipt to purchase invoice bill date mapping (#23968)
Co-authored-by: pateljannat <jannatpatel@MacBook-Air.local>
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-11-23 16:29:42 +05:30
pateljannat
3e526b8ca8 fix: enabling track changes for stock settings 2020-11-23 16:19:50 +05:30
Anurag Mishra
47bdbf1e78 Merge pull request #23979 from rohitwaghchaure/color-not-showing-in-bom-stock-report
fix: bom stock report color issue
2020-11-23 16:14:01 +05:30
Rohit Waghchaure
0cb6ce3a89 fix: bom stock report color issue 2020-11-23 14:11:24 +05:30
rohitwaghchaure
5597737dca Merge pull request #23958 from rohitwaghchaure/incorrect-delink-serial-no-and-batch-v12-hotfix
fix: incorrect delink serial no and batch
2020-11-20 13:45:32 +05:30
Rohit Waghchaure
77b9fa0d06 fix: incorrect delink serial no and batch 2020-11-20 00:26:36 +05:30
Deepesh Garg
224006aebd fix: Invoice generation for Unpaid subscriptions 2020-11-19 19:39:08 +05:30
Smit Vora
c630be6781 fix: remove unused imports 2020-11-19 19:13:06 +05:30
Smit Vora
51a153d8c2 fix: removed unused code 2020-11-19 19:03:22 +05:30
Smit Vora
707b630851 fix: add remarks to sales invoice 2020-11-19 18:42:39 +05:30
Saurabh
fdacb5643b Merge branch 'v12-pre-release' into version-12 2020-11-19 15:39:04 +05:30
Saurabh
ec89a65859 bumped to version 12.14.0 2020-11-19 15:59:04 +05:50
rohitwaghchaure
1e4a6e845b Merge pull request #23956 from rohitwaghchaure/split-mysql-query-to_update-quantity-hotfix
fix: Table 'tabStock Entry Detail' is specified twice
2020-11-19 14:06:09 +05:30
Rohit Waghchaure
0433fa58f3 fix: Table 'tabStock Entry Detail' is specified twice 2020-11-19 12:52:17 +05:30
rohitwaghchaure
5c72ad2498 fix: Table 'tabStock Entry Detail' is specified twice (#23952) 2020-11-19 12:45:40 +05:30
rohitwaghchaure
c976d080ea fix: stock ledger entries for stock reco (#23955) 2020-11-19 08:15:41 +05:30
Deepesh Garg
fac940042b Merge pull request #23954 from vorasmit/fix-sez-v12
fix(regional): set proper state code in ewaybill JSON when GST category is SEZ
2020-11-18 21:51:12 +05:30
Smit Vora
3e36d774d2 fix(regional): set proper state code in ewaybill JSON when GST category is SEZ 2020-11-18 21:03:45 +05:30
Marica
507c46d9a4 chore: Revert "fix: Received/Delivered Items to Billed Logic" (#23950)
This reverts commit 4f008f59fc.
2020-11-18 20:54:43 +05:30
Marica
36706b7cb0 chore: Revert "fix: Received/Delivered Items to Billed Logic" (#23948)
This reverts commit 4f008f59fc.
2020-11-18 20:54:33 +05:30
Nabin Hait
18471131cc chore: added change log for v12.14.0 (#23951) 2020-11-18 19:27:00 +05:30
rohitwaghchaure
d920f9da59 Merge pull request #23938 from rohitwaghchaure/duplicate-stock-transactions-created
fix: incorrect stock ledger entries for stock reco
2020-11-18 18:16:58 +05:30
Rohit Waghchaure
f041af53db fix: stock ledger entries for stock reco 2020-11-18 17:15:57 +05:30
Marica
5111882162 Merge pull request #23927 from marination/employee-relieving-fix
fix: Hide Ex-Employees from Employee Tree and minor message UX
2020-11-17 15:15:45 +05:30
Marica
e37604baeb Merge branch 'version-12-hotfix' into employee-relieving-fix 2020-11-17 15:15:08 +05:30
Marica
0e91805719 Merge pull request #23931 from marination/item-link-formatter-hotfix
fix: Item Link Formatter Behaviour
2020-11-17 13:28:52 +05:30
Marica
3377e74fd0 Merge branch 'version-12-hotfix' into item-link-formatter-hotfix 2020-11-17 13:27:58 +05:30
Marica
d87094ebb2 Merge pull request #23928 from marination/bank-reconciliation-hotfix
fix: Sequence Matcher shouldn't get None input
2020-11-17 13:26:58 +05:30
Marica
c7d68a7f41 Merge pull request #23930 from marination/payment-reco-mandatory-check-hotfix
fix: Payment Reconciliation client side validations
2020-11-17 13:24:11 +05:30
marination
3bbed22f04 fix: Item Link Formatter Behaviour 2020-11-17 13:19:53 +05:30
Marica
aab91990e5 Merge pull request #23929 from marination/payment-entry-list-view-hotfix
fix: Check if list view standard filter exists in Payment Entry
2020-11-17 13:14:06 +05:30
marination
2e23050338 fix: Missing semicolon 2020-11-17 13:11:18 +05:30
marination
5ea276d29d fix: Payment Reconciliation client side validations 2020-11-17 13:11:09 +05:30
marination
7e18df31bf fix: Check if list view standard filter exists in Payment Entry 2020-11-17 13:08:33 +05:30
Marica
2c29933118 fix: Sequence Matcher shouldn't get None input (#23539)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-11-17 13:05:31 +05:30
Marica
9525bffcd9 fix: Hide Ex-Employees from Employee Tree and minor message UX
* fix: Hide Ex-Employees from Employee Tree and minor message UX

* fix: translation syntax
2020-11-17 12:58:31 +05:30
Nabin Hait
6ba0b69469 Merge branch 'version-12-hotfix' into v12-pre-release 2020-11-17 12:18:55 +05:30
rohitwaghchaure
9f93a4069a Merge pull request #23926 from rohitwaghchaure/fixed-stock-ageing-report-not-working-pre-release
fix: stock ageing report not working
2020-11-17 12:18:14 +05:30
Rohit Waghchaure
a73c662a38 fix: stock ageing report not working 2020-11-17 12:16:17 +05:30
rohitwaghchaure
d3074c32fd fix: stock ageing report not working (#23924) 2020-11-17 12:10:05 +05:30
Suraj Shetty
fe56015cbf fix: Handle the "no leave_allocation found" case (#23920) 2020-11-17 12:07:53 +05:30
Saqib
789f1007b9 fix: asset finance book posting date fix (#23780)
* fix: asset finance book posting date fix

* fix: cannot save asset

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-11-17 11:53:37 +05:30
Suraj Shetty
f202a49d80 Revert "feat: e invoicing with JSON files" (#23925) 2020-11-17 11:44:55 +05:30
Saqib
8b7d4a3f2e feat: re-linking bank accounts with plaid (#23913) 2020-11-17 11:27:11 +05:30
Marica
b9efb4577a fix: Don't overrule Item Price via Pricing Rule Rate if 0 (#23915)
* fix: Dont overrule Item Price via Pricing Rule Rate if 0

* chore: Pricing Rule with Item Price Test
2020-11-17 11:17:05 +05:30
Marica
b5217ee9d7 fix: Don't copy terms, discount and required by from SO to PO (#23904)
* fix: Dont copy terms, discount and required by from SO to PO

* fix: Let delivery date and required by date get mapped
2020-11-17 11:14:33 +05:30
rohitwaghchaure
e8610014de fix: donot add same packing item multiple time in product bundle (#23898) 2020-11-17 11:11:23 +05:30
Suraj Shetty
780982dcc7 fix: Handle the "no leave_allocation found" case (#23921) 2020-11-17 11:02:15 +05:30
Suraj Shetty
26b802d44a fix: Typo (Enchashment > Encashment) (#23918) 2020-11-17 10:43:55 +05:30
Suraj Shetty
519f5b5411 fix: Typo (Enchashment > Encashment) (#23917) 2020-11-17 10:42:23 +05:30
Suraj Shetty
aebeb573e4 Merge branch 'version-12-hotfix' of github.com:frappe/erpnext into v12-pre-release 2020-11-17 10:15:52 +05:30
Shivam Mishra
e1b96d70db refactor: show form buttons only if permissions exist (#23889)
* refactor: show form buttons only if permissions exist

* fix: missing semicolon

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-11-15 16:42:55 +05:30
Marica
31e2c80e33 Merge pull request #23895 from marination/po-to-so-hotfix
fix:  SO to PO flow improvement
2020-11-13 11:26:14 +05:30
marination
09e1b5314b fix: Make sure row object has doctype so that read only property is applied to rows 2020-11-12 12:27:26 +05:30
marination
40ba013636 fix: SO to PO Mapping Issue
- removed type: GET , which made the URL longer
- Added only relevant fields from Items table to Dialog table to reduce args load
- Made separate method to set table data in dialog
- Added freeze message
2020-11-12 12:27:06 +05:30
Marica
16427c5cc8 fix: SO to PO flow improvement (#23357)
* fix: SO to PO flow improvement

* fix: Dont map shipping_address

- shipping_address is a text field in SO and link field in PO
- Drop shipping case handles its mapping
- normal case doesnt need to map

* fix: Hide/Add rows depending on Against Default Supplier

* fix: Removed Default Supplier Select field from popup

- removed Default Supplier Select field from popup
- only loop through suppliers of selected items if via default supplier
- only check for items in selected items

* fix: Sales Order Drop Shipping Test

* fix: (translation)Multi line to single line strings

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-11-12 12:23:27 +05:30
Deepesh Garg
7365566894 Merge pull request #23863 from rohitwaghchaure/incorrect-outstanding-amount-in-reverse-charge
fix: incorrect outstanding amount for multicurrency with Reverse Charge
2020-11-11 18:32:50 +05:30
Rohit Waghchaure
6b86586eb1 fix: incorrect outstanding amount for multicurrency with Reverse Charge 2020-11-11 17:32:42 +05:30
Marica
1ff8ae494d Merge pull request #23730 from AfshanKhan/fix-po-no-fetching-v12
fix: copying po no when mapping doc
2020-11-11 17:17:58 +05:30
Marica
02f856e968 Merge branch 'version-12-hotfix' into fix-po-no-fetching-v12 2020-11-11 12:20:05 +05:30
Afshan
38e681e8b2 fix: refactor 2020-11-11 11:47:23 +05:30
rohitwaghchaure
ecffa80216 Merge pull request #23878 from rohitwaghchaure/fix-stock-entry-consumption-issue-v12-hotfix
fix: incorrect backflush qty in manufacture entry
2020-11-10 23:23:33 +05:30
Rohit Waghchaure
cee0706a1f fix: incorrect backflush qty in manufacture entry 2020-11-10 15:55:01 +05:30
Anurag Mishra
bd49da45e3 feat: added column cost_center to receivable reports (#23837)
* feat: added column cost_center to receivable reports

* Update accounts_receivable.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-11-09 20:21:25 +05:30
Marica
04458e7413 Merge pull request #23866 from marination/purchase-invoice-payment-terms-fix
fix: Payment Terms not fetched in Purchase Invoice from Purchase Receipt
2020-11-09 18:44:40 +05:30
marination
f5e4f75fd0 chore: Test case for Payment Terms in PI from PR 2020-11-09 16:15:56 +05:30
marination
80f5734305 fix: Payment Terms not fetched in Purchase Invoice from Purchase Receipt 2020-11-09 16:15:46 +05:30
Marica
c5096e0441 Merge pull request #23804 from marination/delievered-received-items-to-bill-report-fix
fix: Received/Delivered Items to Be Billed Logic
2020-11-09 14:50:50 +05:30
Marica
20b5b30e34 Merge branch 'version-12-hotfix' into delievered-received-items-to-bill-report-fix 2020-11-09 10:34:05 +05:30
Deepesh Garg
d196f14e85 Merge pull request #23859 from deepeshgarg007/india_tax_template_fetch_v12
fix: Auto State-wise gst tax template
2020-11-08 17:49:08 +05:30
Deepesh Garg
6beee63d06 fix: Auto State-wise gst tax template 2020-11-08 17:47:32 +05:30
Saqib Ansari
c82c955bc2 fix: qrcode image size 2020-11-08 13:03:00 +05:30
Saqib Ansari
dc4b0921f6 feat: update timeline on einvoice actions 2020-11-07 21:15:19 +05:30
Saqib Ansari
72ed0fbbb4 fix: ewaybill could be modified after ewaybill generation 2020-11-07 21:00:38 +05:30
Saqib Ansari
020e6e980a fix: error handling 2020-11-07 19:44:37 +05:30
Saqib Ansari
70e0711893 fix: imports 2020-11-07 19:43:47 +05:30
Saqib Ansari
8693ac81a2 fix: import format_date 2020-11-07 17:53:22 +05:30
Saqib Ansari
56116f28af Merge branch 'version-12-hotfix' into e-invoicing-version-12 2020-11-07 17:49:44 +05:30
Saqib Ansari
eeb99d1b98 chore: remove fetch token from e invocie settings 2020-11-07 17:47:34 +05:30
Saqib Ansari
5d23c0ce8e feat: cess non advolem on einvoice item 2020-11-07 17:47:28 +05:30
rohitwaghchaure
fb6534cb65 Merge pull request #23816 from rohitwaghchaure/default-cost-center-set-in-item-not-showing
fix: default cost center in item master not set in stock entry
2020-11-06 17:46:11 +05:30
Marica
9876fa8360 Merge branch 'version-12-hotfix' into delievered-received-items-to-bill-report-fix 2020-11-06 12:23:18 +05:30
rohitwaghchaure
20bd91f0d9 Merge pull request #23830 from rohitwaghchaure/incorrect-assign-to-in-asset-maintenance
fix: incorrect assign to in Maintenance Schedule
2020-11-05 18:43:39 +05:30
Rohit Waghchaure
06b6027674 fix: not able to select assign to 2020-11-05 15:35:48 +05:30
Saqib Ansari
91580258d7 fix: patch 2020-11-05 13:56:04 +05:30
Saqib Ansari
51ddf376da fix: invalid syntax 2020-11-05 13:51:11 +05:30
Saqib Ansari
db4fec0314 fix: invalid syntax 2020-11-05 13:48:12 +05:30
Saqib Ansari
6d63a1e90a chore: remove test pincode 2020-11-05 13:18:26 +05:30
Saqib Ansari
589a49a38a feat: header & footer in GST E Invoice 2020-11-05 13:18:25 +05:30
Saqib Ansari
464fc1f087 chore: error logging 2020-11-05 13:18:25 +05:30
Saqib Ansari
e3c2f0a221 chore: remove unwanted imports 2020-11-05 13:18:25 +05:30
Saqib Ansari
77b8ced4a4 feat: generate eway bill from IRN 2020-11-05 13:18:24 +05:30
Saqib Ansari
fb9dde38f6 fix: valiations 2020-11-05 13:18:24 +05:30
Saqib Ansari
ca944316b4 fix: show/hide eway bill fields 2020-11-05 13:18:20 +05:30
Saqib Ansari
6d5a8aea9a fix: generate & cancel IRN 2020-11-05 13:17:59 +05:30
Saqib Ansari
eb9f216b40 fix: attach qrcode on irn generation 2020-11-05 13:17:59 +05:30
Saqib Ansari
63bfa30bc1 chore: clean up einvoice actions 2020-11-05 13:17:59 +05:30
Saqib Ansari
778141c569 chore: remove unwanted fuctions 2020-11-05 13:17:58 +05:30
Saqib Ansari
b7ee2a44a0 feat: cancel eway bill 2020-11-05 13:17:58 +05:30
Saqib Ansari
3f9390c077 feat: generate & cancel IRN 2020-11-05 13:17:58 +05:30
Saqib Ansari
495ac7ba6b feat: fetch and cache GSTIN details 2020-11-05 13:17:57 +05:30
Saqib Ansari
ad19268b4c fix: qr code generation 2020-11-05 13:17:57 +05:30
Saqib Ansari
54405a4b64 chore: remove unwanted fields 2020-11-05 13:17:57 +05:30
Saqib Ansari
86f87e9b53 feat: initialize GSP connector 2020-11-05 13:17:57 +05:30
Saqib Ansari
049836dff8 fix: qr code image string 2020-11-05 13:17:56 +05:30
Saqib Ansari
c313f05a8e chore: improve document name validation message 2020-11-05 13:17:56 +05:30
Saqib Ansari
b77375c72b fix: other charges calculation 2020-11-05 13:17:56 +05:30
Saqib Ansari
6c064a1f95 fix: invoice totals calculation 2020-11-05 13:17:55 +05:30
Saqib Ansari
9182c2e09d fix: patch 2020-11-05 13:17:55 +05:30
Saqib Ansari
271f35fef5 fix: einvoice field validation 2020-11-05 13:17:55 +05:30
Saqib Ansari
37e4c91ec2 fix: rename e_invoice_utils.py 2020-11-05 13:17:54 +05:30
Saqib Ansari
12d9bc3787 fix: add missing package 2020-11-05 13:17:54 +05:30
Saqib Ansari
5eb430fe51 fix: e_invoice module not found 2020-11-05 13:17:54 +05:30
Saqib Ansari
31ee8b4011 fix: error logging 2020-11-05 13:17:53 +05:30
Saqib Ansari
9363725342 fix: validations 2020-11-05 13:17:53 +05:30
Saqib Ansari
e1e3dbcae2 fix: credit note einvoice 2020-11-05 13:17:53 +05:30
Saqib Ansari
8616684c24 fix: return date 2020-11-05 13:17:52 +05:30
Saqib Ansari
90a57c1f8c fix: validate document name 2020-11-05 13:17:52 +05:30
Saqib Ansari
ba1cd74189 feat: add patch 2020-11-05 13:17:46 +05:30
Saqib Ansari
c3719b46b2 fix: add permissions on regional setup 2020-11-05 13:17:14 +05:30
Saqib Ansari
e50804fb9d fix: validations 2020-11-05 13:17:14 +05:30
Saqib Ansari
cc704044bd fix: print format 2020-11-05 13:17:14 +05:30
Saqib Ansari
e6646efef3 fix: download & upload e-invoice 2020-11-05 13:17:13 +05:30
Saqib Ansari
57dd4689e0 chore: clean up e invoice actions 2020-11-05 13:17:13 +05:30
Saqib Ansari
08b4736ee0 chore: code cleanup 2020-11-05 13:17:13 +05:30
Saqib Ansari
662a0fcfe9 fix: invalid syntax 2020-11-05 13:17:12 +05:30
Saqib Ansari
d6f3be0fc1 fix: bug 2020-11-05 13:17:12 +05:30
Saqib Ansari
154c433a86 feat: QRCode Image and E-Invoice Print Format 2020-11-05 13:17:12 +05:30
Saqib Ansari
d3a6b9ed81 chore: move einvoicing stuff to seperate folder 2020-11-05 13:17:12 +05:30
Saqib Ansari
9c00b22703 fix: fetch token if not valid 2020-11-05 13:17:11 +05:30
Saqib Ansari
b3e0f482ac chore: save signed invoice and qrcode after uplaoding irn 2020-11-05 13:17:11 +05:30
Saqib Ansari
61824d3735 fix: fn name 2020-11-05 13:17:11 +05:30
Saqib Ansari
ada41295bb chore: group e-invoicing actions 2020-11-05 13:17:11 +05:30
Saqib Ansari
08e89b88f4 feat: manual download / upload json 2020-11-05 13:17:10 +05:30
Saqib Ansari
cc43805f25 feat: cancel e-way bill before cancelling IRN 2020-11-05 13:17:10 +05:30
Saqib Ansari
ec28262988 chore: no copy on e invoice custom fields 2020-11-05 13:17:10 +05:30
Saqib Ansari
22754a9c58 fix: save e-way bill no on irn generation 2020-11-05 13:17:10 +05:30
Saqib Ansari
6a9af076e5 feat: e-way bill details in e-invoice 2020-11-05 13:17:10 +05:30
Saqib Ansari
816235e99c chore: show irn field for proper gst_category 2020-11-05 13:17:09 +05:30
Saqib Ansari
dfbdd0b2ee fix: update irn_cancelled after cancelling irn 2020-11-05 13:17:09 +05:30
Saqib Ansari
59a757b3e3 fix: do not show generate irn for invalid supply type 2020-11-05 13:17:09 +05:30
Saqib Ansari
389610fb45 fix: validation if e invoicing is disabled 2020-11-05 13:17:09 +05:30
Saqib Ansari
175b26e6e8 fix: cannot find attached key file 2020-11-05 13:17:08 +05:30
Saqib Ansari
cea1a15dcd fix: public key is required on validate 2020-11-05 13:17:08 +05:30
Saqib Ansari
7a40ad340f fix: hide cancel irn dialog on error 2020-11-05 13:17:08 +05:30
Saqib Ansari
db13eb56c4 chore: show irn cancelled check after cancellation 2020-11-05 13:17:08 +05:30
Saqib Ansari
cf2ebc0d6f fix: item discount 2020-11-05 13:17:07 +05:30
Saqib Ansari
9003718481 chore: minor fixes 2020-11-05 13:17:07 +05:30
Saqib Ansari
18666b6a74 feat: Generate & Cancel IRN from Sales Invoice 2020-11-05 13:17:07 +05:30
Saqib Ansari
395ecf2392 feat: make IRN field on regional setup 2020-11-05 13:17:07 +05:30
Saqib Ansari
221e5993a8 chore: rename schema to template & js cleanup 2020-11-05 13:17:06 +05:30
Saqib Ansari
8eda5aca09 chore: split einvoice settings and operations 2020-11-05 13:17:06 +05:30
Saqib Ansari
bdfd30760a chore: move e-invoice settings to regional 2020-11-05 13:17:06 +05:30
Saqib Ansari
418818f0ec feat: complete e-invoice schema 2020-11-05 13:17:05 +05:30
Saqib Ansari
d971917ecf feat: cancel IRN 2020-11-05 13:17:05 +05:30
Saqib Ansari
dda44bb1f5 chore: validations 2020-11-05 13:17:05 +05:30
Saqib Ansari
448ab6e3df feat: decode signed json and QR code 2020-11-05 13:17:04 +05:30
Saqib Ansari
cc3e0bf806 feat: generate IRN 2020-11-05 13:17:04 +05:30
Saqib Ansari
93b3c2ce06 feat: make e invoice from erpnext sales invoice 2020-11-05 13:17:04 +05:30
Saqib Ansari
7c427aa890 feat: decrypt json data with SEK 2020-11-05 13:17:03 +05:30
Saqib Ansari
b6509ead64 feat: AES decryption of SEK with appkey 2020-11-05 13:17:03 +05:30
Saqib Ansari
f8346ce62f chore: handle error response 2020-11-05 13:17:03 +05:30
Saqib Ansari
e73a9deb42 feat: save token and sek from auth request 2020-11-05 13:17:02 +05:30
Saqib Ansari
5669a5f618 feat: rsa encryption with public key 2020-11-05 13:17:02 +05:30
Saqib Ansari
18afbc0617 feat: read public key file 2020-11-05 13:17:02 +05:30
Saqib Ansari
f396b35622 feat: init e-invoice settings 2020-11-05 13:17:02 +05:30
Marica
3960c49fc6 Merge branch 'version-12-hotfix' into delievered-received-items-to-bill-report-fix 2020-11-05 12:31:59 +05:30
Afshan
7e6c79819a fix: refactor and test 2020-11-05 11:59:45 +05:30
rohitwaghchaure
533954cd12 Merge pull request #23815 from Anurag810/stock_ledger_report_v12
fix:  list index out of range on incilding uom
2020-11-05 11:49:37 +05:30
Rohit Waghchaure
7ee2b0ed3a fix: default cost center in item master not set in stock entry 2020-11-05 11:47:22 +05:30
Anurag Mishra
8e37316832 fix: list index out of range on incilding uom 2020-11-04 15:27:17 +05:30
Afshan
2860f62772 Fix leave ledger patch (#23806)
* fix: leave ledger patch

* fix: modified patch date
2020-11-04 14:15:26 +05:30
marination
4f008f59fc fix: Received/Delivered Items to Billed Logic 2020-11-03 23:12:53 +05:30
Deepesh Garg
1f10da4d66 Merge pull request #23786 from deepeshgarg007/pos_v12_hotfix
fix: Place of Supply fix in Sales Invoices
2020-11-02 11:23:47 +05:30
Deepesh Garg
7036635007 fix: fieldname 2020-10-30 22:15:23 +05:30
Deepesh Garg
c1719ef54b fix: Place of Supply fix in Sales Invoices 2020-10-30 22:15:23 +05:30
Afshan
c8201eba33 fix: leave ledger entries (#23782) 2020-10-30 18:47:52 +05:30
rohitwaghchaure
b2bd8ef144 Merge pull request #23773 from rohitwaghchaure/fixed-set-po-details-in-subcontract-stock-entry
fix: po_detail field has no value for subcontracted stock entry
2020-10-30 14:19:55 +05:30
Rohit Waghchaure
e523cfbb02 fix: po_detail field has no value for subcontracted stock entry 2020-10-30 03:04:39 +05:30
Marica
d8705240a0 chore: (Production Plan) Simplify and fix translation in message popup (#23754) 2020-10-29 18:54:06 +05:30
Deepesh Garg
ab1415c0cc Merge pull request #23762 from rohitwaghchaure/fixed-subscription-test-case
fix: subscription test case
2020-10-29 17:04:12 +05:30
Rohit Waghchaure
2f12eed44d fix: subscription test case 2020-10-29 15:52:33 +05:30
rohitwaghchaure
c9e93fd9b1 Merge pull request #23740 from prssanna/job-card-gantt
fix: override field_map for job card gantt
2020-10-29 14:50:19 +05:30
Rucha Mahabal
82db751a52 fix: LMS sign-up link (#23752) 2020-10-29 11:19:34 +05:30
Marica
2d936fe5ca Merge pull request #23748 from marination/leave-type-filter
fix(HR) : Filter Leave Type based on allocation for a particular employee (#22050)
2020-10-28 17:23:45 +05:30
Abhishek Balam
d0541d77b3 Merge branch 'version-12-hotfix' into leave-type-filter 2020-10-28 16:29:06 +05:30
Anurag Mishra
5f148d3d3a fix: set_query in leave application (#22197) 2020-10-28 16:25:57 +05:30
Abhishek Balam
6c894f8f41 fix(HR) : Filter Leave Type based on allocation for a particular employee (#22050)
* table was showing empty with just headers when no leaves allocated, fixed template code

* added filters on Leave Type based on leave allocation for a particular employee and to/from dates
2020-10-28 16:12:57 +05:30
Marica
5effbeef49 Merge pull request #23733 from AfshanKhan/prod-order-reference-in-item-v12
fix: Remove Production Order reference from Item Validation
2020-10-28 16:09:52 +05:30
prssanna
1fa8dcb15b fix: override field_map for job card gantt 2020-10-28 11:02:02 +05:30
Saqib
acd5929ac3 feat: e invoicing
* feat: e-invoice

* fix: validations

* fix: add permissions on regional setup

* feat: add patch

* fix: validate document name

* fix: return date

* fix: credit note einvoice

* fix: validations

* chore: remove extras

* fix: error logging

* fix: e_invoice module not found

* fix: add missing package

* fix: travis
2020-10-27 20:37:20 +05:30
Afshan
0c511b31fd fix: Remove Production Order reference from Item Validation 2020-10-26 20:34:48 +05:30
Afshan
17a8874c50 fix: copying po no when mapping doc 2020-10-26 17:07:40 +05:30
Nabin Hait
439c4e11bf fix: Show accounts in financial statements upto level 20 (#23719) 2020-10-24 22:00:17 +05:30
Aditya Duggal
a76b1c530d fix: None type error if the Pricing Rule applicable_for is None (#23664)
* fix: None type error if the Pricing Rule applicable_for is None
* fix: sider

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2020-10-24 11:20:24 +05:30
rohitwaghchaure
aef8010bc1 Merge pull request #23712 from marination/cashier-closing-type-issue-fix
fix: Cashier Closing, Type Issue
2020-10-23 16:12:41 +05:30
marination
e9b7b69435 fix: Cashier Closing Type Issue 2020-10-23 14:46:44 +05:30
Saurabh
f7f8f5c305 Merge branch 'v12-pre-release' into version-12 2020-10-22 18:28:33 +05:30
Saurabh
acf22c475e bumped to version 12.13.0 2020-10-22 18:48:33 +05:50
Nabin Hait
f74aa28752 chore: Added change log (#23707) 2020-10-22 17:52:16 +05:30
Marica
c1ffe0990b Update items add taxes v12 pre release (#23706)
* fix: Add Taxes if missing via Update Items

* chore: PO Test for adding tax row via Update Items

* chore: SO Test for adding tax row via Update Items
2020-10-22 17:04:38 +05:30
Saqib
eb6fb6fffa fix: cannot auto unlink payments for credit/debit notes (#23690) 2020-10-22 16:31:55 +05:30
Marica
ab5d596959 fix: Add Taxes if missing via Update Items (#23705)
* fix: Add Taxes if missing via Update Items

* chore: PO Test for adding tax row via Update Items

* chore: SO Test for adding tax row via Update Items
2020-10-22 16:28:41 +05:30
Afshan
203fc2b940 fix: removed extra space from label "Rate" (#23685) 2020-10-20 10:56:38 +05:30
Saqib
8e7a755aeb feat: show only available items in point of sale (#23667)
* feat: show available items in pos

* feat: show selected pos profile on pos screen

* fix: codacy

* fix: codacy
2020-10-19 11:37:22 +05:30
Sun Howwrongbum
334c282f7b fix: consider rounded_total in returns (#23631)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-19 11:30:48 +05:30
Saqib
3ae9bbc0a7 fix: fuel expense amount of vehicle log (#23634)
* fix: fuel expense amount of vehicle log

* fix: undefined var employee_id in test

* fix: test
2020-10-16 11:54:36 +05:30
rohitwaghchaure
8b8457c5d3 Merge pull request #23647 from rohitwaghchaure/fixed-overproduction-against-work-order
fix: overproduction, not allowed to transfer extra materials
2020-10-16 10:31:58 +05:30
rohitwaghchaure
9ba0e991d9 Merge pull request #23658 from rohitwaghchaure/fixed-overproduction-against-work-order-pre-release
fix: overproduction, not allowed to transfer extra materials
2020-10-16 10:31:38 +05:30
Rohit Waghchaure
3df4f226d5 fix: overproduction, not allowed to transfer extra materials 2020-10-15 22:28:05 +05:30
rohitwaghchaure
8701156d28 Merge pull request #23657 from rohitwaghchaure/donot-set-serial-nos-if-manually-set-pre
fix: manually set serial nos override with current available serial nos
2020-10-15 22:05:01 +05:30
Rohit Waghchaure
a2ab227240 fix: manually set serial nos override with current available serial nos 2020-10-15 22:03:42 +05:30
rohitwaghchaure
eabe1af280 Merge pull request #23651 from rohitwaghchaure/donot-set-serial-nos-if-manually-set
fix: manually set serial nos override with current available serial nos
2020-10-15 22:01:32 +05:30
rohitwaghchaure
8ba4201c7b Merge pull request #23656 from rohitwaghchaure/removed-repetative-code-v12-pre
fix: remove repetative code
2020-10-15 22:00:57 +05:30
Rohit Waghchaure
7a079d73dc fix: remove repetative code 2020-10-15 21:58:44 +05:30
rohitwaghchaure
7bbdbaa2fa Merge pull request #23655 from rohitwaghchaure/removed-repetative-code
fix: remove repetative code
2020-10-15 21:57:33 +05:30
Rohit Waghchaure
28a5169646 fix: remove repetative code 2020-10-15 21:54:53 +05:30
Rohit Waghchaure
c7ec475429 fix: manually set serial nos override with current available serial nos 2020-10-15 19:00:02 +05:30
Rohit Waghchaure
433faa705e fix: overproduction, not allowed to transfer extra materials 2020-10-15 18:53:50 +05:30
rohitwaghchaure
d445e38e6b Merge pull request #23648 from rohitwaghchaure/set-current-serial-no-in-serial-no-field-v12-pre-release
fix: serial no field is blank in stock reconciliation
2020-10-15 15:54:55 +05:30
Rohit Waghchaure
940c5f2d4b fix: serial no field is blank in stock reconciliation 2020-10-15 15:53:37 +05:30
rohitwaghchaure
2b4da0d518 Merge pull request #23646 from rohitwaghchaure/set-current-serial-no-in-serial-no-field
fix: serial no field is blank in stock reconciliation
2020-10-15 15:45:37 +05:30
Rohit Waghchaure
8d7e26c7dd fix: serial no field is blank in stock reconciliation 2020-10-15 14:29:57 +05:30
rohitwaghchaure
6ff846f9b0 Merge pull request #23645 from rohitwaghchaure/receive-at-warehouse-not-validate-for-extra-transfer-qty
fix: extra material received against send to warehouse entry
2020-10-15 13:59:45 +05:30
Rohit Waghchaure
f956a2cf72 fix: extra material received against send to warehouse entry 2020-10-15 12:59:10 +05:30
rohitwaghchaure
5cacaec52b Merge pull request #23638 from anupamvs/item-group-filter-portal-v12-pre-release
fix: added filter show in website for filtering product
2020-10-14 16:29:02 +05:30
rohitwaghchaure
1fb3a29cf9 Merge pull request #23637 from anupamvs/item-group-filter-portal-v12
fix: added filter show in website for filtering product
2020-10-14 16:28:39 +05:30
Afshan
4b8d4a1cbe fix: setting user precision instead of 2 (#23630)
* fix: setting user precision instead of default

* fix: removing unused imports
2020-10-14 15:50:26 +05:30
Anupam
3f5c4932b4 fix: added filter show in website for filtering product 2020-10-14 15:37:09 +05:30
Anupam
90eb489392 fix: added filter show in website for filtering product 2020-10-14 15:26:34 +05:30
Nabin Hait
f145a4ce58 fix: resolved conflict 2020-10-14 09:59:55 +05:30
rohitwaghchaure
bd4896b1b2 Merge pull request #23619 from rohitwaghchaure/incorrect-supplied-qty-issue
fix: incorrect supplied qty error
2020-10-14 00:24:04 +05:30
rohitwaghchaure
98b7f0a0f0 Merge pull request #23497 from frappe/fix_fiscal_year
fix: fiscal year can be shorter than 12 months
2020-10-13 23:26:41 +05:30
Rohit Waghchaure
4def9ed1c6 fix: incorrect supplied qty error 2020-10-13 22:43:18 +05:30
rohitwaghchaure
0ae4527ff8 Merge pull request #23618 from aakvatech/patch-5
feat: Add company and correct filter in bank statement reconciliation report filters
2020-10-13 16:59:42 +05:30
Raffael Meyer
e2b7ac2b0e fix: make account number length configurable (#23496)
* fix: make account number length configurable

* Update datev.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-13 15:09:18 +05:30
Deepesh Garg
63bbce708d Merge pull request #23552 from deepeshgarg007/gst3b_taxable_value
fix: Taxable value in GSTR 3B report
2020-10-13 14:03:44 +05:30
aakvatech
8f60d25064 feat: Add company and correct filter in bank statement reconciliation…
… report filters

If you have multi company scenario and many bank accounts that are no longer active, then it becomes difficult in bank statement reconciliation report to filter the account to reconcile and it also shows disabled accounts so futher confusion is created.

https://github.com/frappe/erpnext/issues/23613
2020-10-13 10:26:33 +03:00
rohitwaghchaure
39988c9319 fix: subscription test case (#23617) 2020-10-13 12:36:48 +05:30
rohitwaghchaure
0c1aaa440d Merge pull request #23495 from frappe/check_fiscal_year
fix: check fiscal year
2020-10-13 12:12:00 +05:30
Marica
890c5b063c Merge pull request #23608 from marination/holiday-list-fix
fix: Convert dates to datetime.date before comparing in Holiday List
2020-10-13 02:47:51 +05:30
marination
007069d495 fix: Convert dates to datetime.date before comparing in Holiday List 2020-10-13 02:42:14 +05:30
Deepesh Garg
820c77a375 Merge pull request #23477 from anupamvs/subscription-invoice-v12
fix: Payment Schedule not fetching
2020-10-12 20:35:07 +05:30
Anupam Kumar
e6adf20037 Merge branch 'version-12-hotfix' into subscription-invoice-v12 2020-10-12 19:41:49 +05:30
rohitwaghchaure
72dbabf0d2 Merge pull request #23395 from anupamvs/quality-procedure
fix: quality procedure parent
2020-10-12 18:50:43 +05:30
Anupam
984fdde692 fix: review fixes 2020-10-12 18:06:58 +05:30
rohitwaghchaure
3cdbe7c586 Merge pull request #23440 from legendleap/version-12-hotfox-itemcode
fix: include item_code in items result to allow adding product info in custom templates
2020-10-12 17:30:45 +05:30
Marica
848d78b373 Merge pull request #23591 from anupamvs/item-attribute
feat: validate if removed item attributes exist in variants
2020-10-12 17:22:29 +05:30
Marica
e1047af4bf Merge branch 'version-12-hotfix' into item-attribute 2020-10-12 17:22:01 +05:30
Saqib
79d069cbbb fix: last purchase rate in item prices report (#23507)
* fix: last purchase rate in item prices report

* fix: last purchase rate in item prices report

* fix: last purchase rate in item prices report

* chore: fetch last purchase rate from update stock purchase invoices
2020-10-12 17:09:29 +05:30
rohitwaghchaure
29c2f399e3 Merge pull request #22328 from pipech/v12-hotfix-get_pricing_rule
fix(pricing_rules): pricing rule selector is wrong
2020-10-12 15:33:13 +05:30
rohitwaghchaure
4fa06ad6a6 Merge pull request #23594 from anupamvs/item-price-v12
fix: can't save item price after adding child table
2020-10-12 15:17:34 +05:30
Rushabh Mehta
122fea8043 Merge pull request #23551 from anupamvs/procurement-tracke-v12
fix: project value is missing from procurement-tracker
2020-10-12 15:13:46 +05:30
rohitwaghchaure
660a811483 Merge pull request #23564 from rohitwaghchaure/fixed-batch-wise-stock-reco
fix: negative stock error while submitting stock reco for batch item
2020-10-12 15:11:41 +05:30
rohitwaghchaure
c351e2a03c Merge pull request #23522 from rohitwaghchaure/extra-filters-in-batchwise-balance-report
feat: added new filters in the Batch-wise balance history report
2020-10-12 15:11:21 +05:30
rohitwaghchaure
0cbe0c0b21 Merge pull request #23520 from rohitwaghchaure/feat-added-balance-serial-no-column
feat: balance serial nos in stock leder report
2020-10-12 15:09:42 +05:30
rohitwaghchaure
3ed333831d Merge pull request #23599 from deepeshgarg007/pos_return_amount
fix: Mode of payment getting overwritten by defautl mode of payment for retruns
2020-10-12 15:09:16 +05:30
rohitwaghchaure
a0ed196005 Merge pull request #23600 from rohitwaghchaure/fixed-overproduction-issue
fix: not able to do overproduction
2020-10-12 14:59:41 +05:30
Saqib
f41fe79528 fix(asset): cannot create asset if cwip disabled and account not set (#23584)
* fix: asset purchase with purchase invoice

* chore: allow enable cwip accounting only if cwip account is set

* fix: cannot create asset if cwip disabled and account not set
2020-10-12 14:56:08 +05:30
Marica
72ca041fd2 Merge pull request #23480 from rohitwaghchaure/fixed-incorrect-operation-time-calculation
fix: incorrect operation time calculation for batch size
2020-10-12 14:55:01 +05:30
Rohit Waghchaure
1270c53dea fix: not able to do overproduction 2020-10-12 14:54:54 +05:30
Marica
cedbaa5ac9 Merge branch 'version-12-hotfix' into fixed-incorrect-operation-time-calculation 2020-10-12 14:54:44 +05:30
Marica
b3f0488dca Merge branch 'version-12-hotfix' into item-attribute 2020-10-12 14:51:18 +05:30
Deepesh Garg
772ccde33f fix: Mode of payment getting overwritten by defautl mode of payment for returns 2020-10-12 13:32:49 +05:30
Deepesh Garg
3ca57e493a fix: Do not consider opening entries for TDS calculation (#23598) 2020-10-12 13:03:25 +05:30
Anupam
dc68b44596 fix: can't save item price after adding child table 2020-10-12 11:53:19 +05:30
Anupam
a784e13ac3 fix: Payment Schedule not fetching 2020-10-12 11:51:51 +05:30
Anupam
6297778a6a feat: validate if removed item attributes exist in variants 2020-10-12 11:00:28 +05:30
rohitwaghchaure
6825d5442f Merge pull request #23544 from tundebabzy/version-12-hotfix
fix: pass self.flags.ignore_permissions to the ignore_permissions argument of Address and Contact
2020-10-10 11:11:28 +05:30
rohitwaghchaure
5bbb793803 Merge pull request #23571 from nextchamp-saqib/si-dashboard-fix-v12
fix: (revert) Add Delivery Note Count in Sales Invoice Dashboard
2020-10-10 11:08:55 +05:30
Saqib
5d7c9d2f61 fix: update items after submission ignores precision (#23492)
* fix: update items after submission ignores precision

* chore: add test
2020-10-09 21:19:40 +05:30
Saqib Ansari
a7293407bd fix: (revert) Add Delivery Note Count in Sales Invoice Dashboard 2020-10-09 21:01:31 +05:30
Rohit Waghchaure
4968f162bd fix: negative stock error while submitting stock reco for batch item 2020-10-09 18:34:13 +05:30
Marica
a8f9e2ab37 Merge pull request #23565 from marination/v12-fix-financial-statement-print-format
fix: Show total row in print format of financial statement
2020-10-09 14:50:29 +05:30
Anupam
15717490fd fix: project value is missing from procurement-tracker 2020-10-09 14:18:42 +05:30
Suraj Shetty
eef5c5dad4 fix: Show total row in print format of financial statement 2020-10-09 13:52:34 +05:30
Tunde Akinyanmi
65a716dd08 Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into version-12-hotfix 2020-10-09 07:24:23 +01:00
Deepesh Garg
0e6e7e95ba fix: Taxable value in GSTR 3B report 2020-10-08 15:30:40 +05:30
Marica
9039e29a8c Merge branch 'version-12-hotfix' into fixed-incorrect-operation-time-calculation 2020-10-08 14:06:13 +05:30
Saqib
7c760f62c3 fix: 'stock_rbnb_currency' referenced before assignment (#23528) 2020-10-08 13:49:07 +05:30
rohitwaghchaure
f64adc8acf Merge pull request #23547 from frappe/account_settings_v12
fix: Typo in Accounts Settings
2020-10-08 11:25:32 +05:30
rohitwaghchaure
5da98cce86 Update test_work_order.py 2020-10-08 11:19:41 +05:30
michellealva
5f3e5c8a7c fix: Typo in Accounts Settings 2020-10-08 09:41:44 +05:30
Tunde Akinyanmi
78a98030ef fix: pass self.flags.ignore_permissions to the ignore_permissions
argument of Address and Contact controller
2020-10-08 02:19:02 +01:00
rohitwaghchaure
41b88eafe0 Merge pull request #23536 from rohitwaghchaure/fixed-cogs-error-in-pr
fix: COGS validation in the purchase receipt
2020-10-07 19:08:49 +05:30
Rohit Waghchaure
3f505b711d fixed: COGS validation in the purchase receipt 2020-10-07 19:06:15 +05:30
Raffael Meyer
65ff74778d Merge branch 'version-12-hotfix' into v12-hotfix-get_pricing_rule 2020-10-07 09:47:53 +02:00
Deepesh Garg
81b47821b7 Merge pull request #23354 from deepeshgarg007/tax_fetch_quote_v12
fix: Taxes not getting fetched from Opportunity to Quotation
2020-10-06 19:55:38 +05:30
Raffael Meyer
b2d1ae2cb8 Merge branch 'version-12-hotfix' into fix_fiscal_year 2020-10-06 10:56:13 +02:00
Rohit Waghchaure
f0108b42fd refactor: added new filters in the Batch-wise balance history report 2020-10-06 13:47:03 +05:30
Rohit Waghchaure
20262e00df feat: balance serial nos in stock leder report 2020-10-06 12:50:21 +05:30
rohitwaghchaure
448af6a893 Merge pull request #23484 from marination/item-attr-fix
fix: Handle Blank from/to range in Numeric Item Attribute
2020-10-06 12:00:36 +05:30
Rohit Waghchaure
1c826afa01 fix: incorrect operation time calculation for batch size 2020-10-05 16:57:21 +05:30
Deepesh Garg
ad4b421251 Merge pull request #23463 from rohitwaghchaure/skip-non-apply-tds-invoices
fix: tds calculation, skip invoices with "Apply Tax Withholding Amount" has disabled
2020-10-05 14:21:48 +05:30
rohitwaghchaure
748585c9a9 Merge pull request #23512 from marination/sales-order-project-fix
fix: Show Project under Create button in SO
2020-10-05 13:17:57 +05:30
marination
6e1d818c3e fix: Show Project under Create button in SO 2020-10-05 12:36:55 +05:30
Faris Ansari
a246b1db20 Merge pull request #23508 from rohitwaghchaure/item-configure-performace-issue
fix: performance issue while adding template item in the cart
2020-10-05 11:45:49 +05:30
Rohit Waghchaure
5056fbcb9d fix: performance issue while adding template item in the cart 2020-10-04 20:14:53 +05:30
Saqib
8aad02f822 fix: naming series - cannot reset current value to zero (#23505) 2020-10-04 18:13:58 +05:30
barredterra
e1f1d5a67d fix: fiscal year can be shorter than 12 months 2020-10-03 18:28:43 +02:00
barredterra
b4c2816343 fix: check fiscal year 2020-10-03 17:25:26 +02:00
Rohit Waghchaure
feade95a26 fix: tds calculation, skip invoices with "Apply Tax Withholding Amount" has disabled 2020-10-03 16:16:24 +05:30
marination
fe0ce60d75 fix: Handle Blank from/to range in Numeric Item Attribute 2020-10-02 12:28:41 +05:30
Saurabh
3e0f488083 Merge branch 'v12-pre-release' into version-12 2020-10-01 12:54:23 +05:30
Saurabh
db4178b1e8 bumped to version 12.12.1 2020-10-01 13:14:23 +05:50
rohitwaghchaure
58598c6070 Merge pull request #23433 from rohitwaghchaure/fixed-stock-ageing-report-data
fix: stock ageing report
2020-09-30 23:37:40 +05:30
Saurabh
080ef5a2bc fix: validate theme_scss attribute (#23466) 2020-09-30 18:11:37 +05:30
Deepesh Garg
e4df9dde6b Merge pull request #23442 from prssanna/company-replace-abbr
fix: longer timeout for company replace abbreviation
2020-09-30 14:07:05 +05:30
Deepesh Garg
b217075f6b fix: Remove any taxes fetched due to unknown rules 2020-09-30 13:00:18 +05:30
Marica
7c0056be9d Merge pull request #23461 from marination/cost-center-validation-pre-release
fix: Avoid validation of group cost center on repost
2020-09-30 12:58:13 +05:30
Marica
146575b176 Merge pull request #23459 from marination/update-items-perm-v12-pre-release
fix: Check only Read and Write Permission in Update Items
2020-09-30 12:55:48 +05:30
Marica
3d254a3fe5 Merge pull request #23458 from marination/update-items-perm-fix
fix: Check only Read and Write Permission in Update Items
2020-09-30 12:55:18 +05:30
Marica
95e50b3f21 Merge branch 'version-12-hotfix' into update-items-perm-fix 2020-09-30 12:29:06 +05:30
Deepesh Garg
80379ef921 fix: Remove any taxes fetched due to unknown rules 2020-09-30 10:28:38 +05:30
marination
374fa69c54 fix: Only validate group cost center if not from repost 2020-09-29 20:48:47 +05:30
Deepesh Garg
b6ce2de666 Merge pull request #23460 from marination/cost-center-validation
fix: Avoid validation of group cost center on repost
2020-09-29 20:26:51 +05:30
marination
91e552ef3a fix: Only validate group cost center if not from repost 2020-09-29 19:33:00 +05:30
Deepesh Garg
096da540e3 fix: Add test 2020-09-29 19:06:21 +05:30
Deepesh Garg
54c993fb75 Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into tax_fetch_quote_v12 2020-09-29 18:47:01 +05:30
marination
2949d1c355 fix: Check only Read and Write Permission in Update Items 2020-09-29 18:29:00 +05:30
marination
3fdabe75d3 fix: Check only Read and Write Permission in Update Items 2020-09-29 18:26:40 +05:30
rohitwaghchaure
103866a367 Merge pull request #23451 from rohitwaghchaure/display-item-name-instead-of-code
fix: display item name instead of item code in offline POS
2020-09-29 13:01:37 +05:30
Rohit Waghchaure
8ba98a52a0 fix: display item name instead of item code in POS 2020-09-29 13:00:00 +05:30
rohitwaghchaure
c7ef8000ac Update stock_ageing.py 2020-09-28 16:00:48 +05:30
prssanna
031502e64c fix: longer timeout for company replace abbreviation 2020-09-28 13:34:24 +05:30
Oliver Liu
572ee8b152 include item_code in query result 2020-09-28 02:24:31 +02:00
Saurabh
24e5a6172a Merge branch 'v12-pre-release' into version-12 2020-09-25 11:47:15 +05:30
Saurabh
c7689d8796 bumped to version 12.12.0 2020-09-25 12:07:15 +05:50
Nabin Hait
5e7bfa37ef chore: Added change log for v12.12.0 (#23435) 2020-09-25 10:07:07 +05:30
Rohit Waghchaure
560f513d69 fix: stock ageing report 2020-09-25 01:12:31 +05:30
rohitwaghchaure
968cb60010 Merge pull request #23430 from prssanna/mr-stock-uom
fix: set stock UOM in item while creating material request from stock entry
2020-09-24 20:05:20 +05:30
prssanna
92c1f38c33 fix: set stock uom in tem while creating material request from stock entry 2020-09-24 17:08:22 +05:30
Anurag Mishra
257927a18b fix:dash board for pre-release test (#23428) 2020-09-24 16:32:39 +05:30
Anurag Mishra
1caab44c29 fix:dash board for pre-release test (#23426) 2020-09-24 15:43:18 +05:30
Saqib
0847f257e6 chore: make asset movement transaction date match with purchase date & time (#23425) 2020-09-24 15:09:48 +05:30
Saqib
b61361f942 chore: make asset movement transaction date match with purchase date & time (#23424) 2020-09-24 15:08:52 +05:30
Marica
e45aeab291 fix: Check Company in Payment Entry before selecting values (#23421) 2020-09-24 12:07:49 +05:30
Marica
abd4b04cd9 fix: Check Company in Payment Entry before selecting values (#23420) 2020-09-24 12:07:43 +05:30
rohitwaghchaure
d7bce62c60 Merge pull request #23414 from rohitwaghchaure/book-loss-amount-in-cogs-pre-release
refactor: book loss amount in the COGS instead of stock received but not billed
2020-09-23 20:32:27 +05:30
Rohit Waghchaure
4220f1e759 refactor: book loss amount in the COGS instead of stock received but not billed 2020-09-23 20:30:26 +05:30
rohitwaghchaure
8699e82290 Merge pull request #23411 from anupamvs/leave-application-status-v12-hotfix
fix: leave application status fix
2020-09-23 20:28:40 +05:30
rohitwaghchaure
5100410e10 Merge pull request #23412 from rohitwaghchaure/book-loss-amount-in-cogs
refactor: book loss amount in the COGS instead of stock received but not billed
2020-09-23 20:28:21 +05:30
Rohit Waghchaure
9e3764ab62 refactor: book loss amount in the COGS instead of stock received but not billed 2020-09-23 19:35:49 +05:30
Anupam
f31e358df9 fix: leave application status fix 2020-09-23 19:14:31 +05:30
rohitwaghchaure
76fdc9faaa Merge pull request #23391 from anupamvs/leave-application-status-fix
fix: leave application status fix
2020-09-23 19:06:17 +05:30
Anupam
960229793b fix: conflict resolved 2020-09-23 18:58:38 +05:30
Anupam
ecfc4b3fd4 fix: review changes 2020-09-23 18:53:40 +05:30
Prssanna Desai
2984f42e2b fix: ignore permission while creating supplier scorecard period in supplier scorecard (#23405) 2020-09-23 17:16:59 +05:30
Saqib
7d9dd8601a fix: failed workflow condition error message in update items (#23394) 2020-09-23 13:01:58 +05:30
Saqib
aad4bea366 fix: failed workflow condition error message in update items (#23392) 2020-09-23 13:01:30 +05:30
rohitwaghchaure
4a154098cc Merge pull request #23404 from rohitwaghchaure/download-required-materials-not-working-pre
fix: Download Required Materials not working for production plan
2020-09-23 01:32:42 +05:30
Rohit Waghchaure
0d4fb93d71 fix: Download Required Materials not working for production plan 2020-09-23 01:31:03 +05:30
rohitwaghchaure
07b1737351 Merge pull request #23396 from anupamvs/batch-wise-filter-v12
fix: adding filters validation Batch-Wise Balance History
2020-09-23 00:58:11 +05:30
rohitwaghchaure
6dc1b423bd Merge pull request #23399 from prssanna/supplier-scorecard-perm
fix: ignore permission while creating Supplier Scorecard Period in Supplier Scorecard
2020-09-23 00:57:52 +05:30
rohitwaghchaure
5a34e2db97 Merge pull request #23403 from rohitwaghchaure/download-required-materials-not-working
fix: Download Required Materials not working for production plan
2020-09-23 00:56:58 +05:30
Anupam Kumar
134b0fd18b Merge branch 'version-12-hotfix' into quality-procedure 2020-09-23 00:38:58 +05:30
Rohit Waghchaure
b948cf204c fix: Download Required Materials not working for production plan 2020-09-22 19:47:33 +05:30
Afshan
38000aacc5 fix: warehouse address filtered based on warehouse (#23381)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-09-22 16:51:58 +05:30
prssanna
a78cd20e31 fix: ignore permission while creating supplier scorecard period in supplier scorecard 2020-09-22 15:04:03 +05:30
Anupam
9a7e433a9d fix: quality procedure parent 2020-09-22 14:34:48 +05:30
Anupam
ba271317c7 fix: adding filters validation Batch-Wise Balance History 2020-09-22 13:45:15 +05:30
rohitwaghchaure
d12c99fda9 Merge pull request #23389 from rohitwaghchaure/fixed-subcontract-issue-for-bacthed-raw-material
fix: incorrect consumed qty if raw material with batch
2020-09-22 11:54:46 +05:30
Anupam
d5a33f4604 fix: leave application status fix 2020-09-22 11:29:17 +05:30
rohitwaghchaure
14175a2f47 Merge pull request #23390 from rohitwaghchaure/fixed-subcontract-issue-for-bacthed-raw-material-pre
fix: incorrect consumed qty if raw material with batch
2020-09-22 10:51:46 +05:30
Rohit Waghchaure
be97f1fe7c fix: incorrect consumed qty if raw material with batch 2020-09-22 10:50:23 +05:30
Rohit Waghchaure
b53a84b07f fix: incorrect consumed qty if raw material with batch 2020-09-22 10:36:52 +05:30
rohitwaghchaure
8a776fdad4 Merge pull request #23378 from rohitwaghchaure/online-pos-print-not-working-pre
fix: online pos print not working
2020-09-22 10:30:53 +05:30
rohitwaghchaure
59a4150428 Merge pull request #23377 from rohitwaghchaure/online-pos-print-not-working
fix: online pos print not working
2020-09-22 10:29:12 +05:30
Rohit Waghchaure
3bebc58357 fix: online pos print not working 2020-09-21 18:32:08 +05:30
Rohit Waghchaure
088e1e66ac fix: online pos print not working 2020-09-21 18:26:52 +05:30
Mangesh-Khairnar
19365d6d07 fix(plaid): do not send null list in account ids (#23375) 2020-09-21 18:04:34 +05:30
Rohan
af585aae28 fix: use Plaid's new API (v12) (#23317)
* fix: use Plaid's new API

* fix: requested changes
2020-09-21 16:08:55 +05:30
Saurabh
3599024c3e Merge pull request #23372 from abhishekbalam/version-12
fix(activation): Added New DocTypes in get_level()
2020-09-21 15:38:02 +05:30
Abhishek Balam
ad5721cbf4 fix: add doctypes to activation 2020-09-21 15:28:13 +05:30
rohitwaghchaure
2ea0263221 Merge pull request #23371 from rohitwaghchaure/enabled-no-copy-for-bill-date-pre
refactor: enabled no copy property for Supplier Invoice Date to avoid…
2020-09-21 14:25:19 +05:30
Rohit Waghchaure
70fc3de817 refactor: enabled no copy property for Supplier Invoice Date to avoid due date validation 2020-09-21 14:23:46 +05:30
rohitwaghchaure
d07579a142 Merge pull request #23367 from rohitwaghchaure/enabled-no-copy-for-bill-date
refactor: enabled no copy property for Supplier Invoice Date to avoid due date validation
2020-09-21 13:46:49 +05:30
rohitwaghchaure
06ecf99609 Merge pull request #23368 from rohitwaghchaure/fix-stock-reco-with-serial-nos-pre-release
fix: stock reconciliation, incorrect serial nos fetched in the current serial no field
2020-09-21 12:55:33 +05:30
Rohit Waghchaure
b07cfd2aec fix: stock reconciliation, incorrect serial nos fetched in the current serial no field 2020-09-21 12:50:47 +05:30
rohitwaghchaure
1b8006be5c Merge pull request #23366 from rohitwaghchaure/fix-stock-reco-with-serial-nos
fix: stock reconciliation, incorrect serial nos fetched in the current serial no field
2020-09-21 12:49:31 +05:30
Rohit Waghchaure
e71e4cf8b5 refactor: enabled no copy property for Supplier Invoice Date to avoid due date validation 2020-09-21 12:26:35 +05:30
Rohit Waghchaure
f5fd2cd4a2 fix: stock reconciliation, incorrect serial nos fetched in the current serial no field 2020-09-21 01:20:00 +05:30
Deepesh Garg
a621c52ebb Merge pull request #23356 from Anurag810/accounts_recievable_v12
fix: Cost Center filter in accounts receivable and payable report
2020-09-20 19:35:26 +05:30
Saqib
3748cbb32c fix: depreciation start date ux fixes (#23340) 2020-09-20 19:31:46 +05:30
Anurag Mishra
d57a94e2f2 fix: No handlefor Cost centers in Accounts Receivable 2020-09-18 13:36:07 +05:30
Deepesh Garg
31a887f045 fix: Taxes not getting fetched from Opportunity to Quotation 2020-09-18 11:32:57 +05:30
Marica
4b2e4026c4 Merge pull request #23338 from marination/item-tax-update-items-fix
fix: Item Tax Updating via `Update Items` in SO/PO
2020-09-16 11:56:29 +05:30
marination
526814c041 fix: Fetch and set Item Tax Template via Update Items 2020-09-16 10:28:33 +05:30
Saqib
1ee7ea6ade fix: update items with workflow travis fix (#23335) 2020-09-15 21:58:36 +05:30
Nabin Hait
c9b5d78993 Merge branch 'version-12-hotfix' into v12-pre-release 2020-09-15 19:43:21 +05:30
rohitwaghchaure
783a4c7f48 fix: set_taxes() missing 1 required positional argument: 'company' (#23329) 2020-09-15 19:42:56 +05:30
Nabin Hait
5750f317c5 Merge branch 'version-12-hotfix' into v12-pre-release 2020-09-15 19:42:05 +05:30
rohitwaghchaure
bea5e5b1bc fix: consumed qty logic for subcontracted raw materials (#23314)
* fix: consumed qty logic for subcontracted raw materials

* added test case

* fix: sales order workflow test case
2020-09-15 19:40:37 +05:30
Saqib
812033b782 fix: purchase order updates are not tracked (#23325) 2020-09-15 11:21:16 +05:30
rohitwaghchaure
bb905ca4b0 fix: incorrect calculation for consumed qty for subcontract item (#23257)
* fix: incorrect calculation for consumed qty for subcontract item

* added test case
2020-09-14 21:12:16 +05:30
Rucha Mahabal
a951a59094 fix: get_transaction_entries function arguments in Bank Statement Transaction Entry (#23052) 2020-09-14 21:05:54 +05:30
rohitwaghchaure
444f657d25 fix: production plan incorrect work order qty (#23264)
* fix: production plan incorrect work order qty

* added test case

* Update test_production_plan.py
2020-09-14 20:51:20 +05:30
Saqib
1e981b50d5 Update items with workflow v12 (#23324)
* feat: validate workflow before so/po update items

* fix: incorrect workflow validation on so/po update items
2020-09-14 19:53:52 +05:30
rohitwaghchaure
279ccc56ee Merge pull request #23320 from marination/quality-inspection-fields-fix
fix: Make Reference fields mandatory in Quality Inspection
2020-09-14 14:11:35 +05:30
Marica
b67996ec42 Merge branch 'version-12-hotfix' into quality-inspection-fields-fix 2020-09-14 12:01:26 +05:30
Marica
fbee0804c3 Merge pull request #23321 from marination/pr-dn-get-items-fix
fix: Make sure Supplier/Customer is selected before fetching Items.
2020-09-14 11:37:25 +05:30
marination
a34a490e0c fix: Make sure Supplier/Customer is selected before fetching Items. 2020-09-14 11:11:39 +05:30
marination
815416adc5 fix: Make Reference fields mandatory in Quality Inspection 2020-09-14 11:07:26 +05:30
Saqib
d409f91469 fix: asset movement date for backdated asset entry (#23300) 2020-09-09 10:53:48 +05:30
rohitwaghchaure
dad5bbdaa2 Merge pull request #23131 from Anurag810/leave_application_form_dashboard_fixes
fix: Form dashboard showing wrong balance
2020-09-08 16:58:11 +05:30
Anurag Mishra
e5fbebf946 fix: update filters 2020-09-08 15:55:07 +05:30
Marica
245cd21c31 Merge pull request #23295 from AfshanKhan/reverse-je-ignore-flag-v12
fix: removed ignore permission flag
2020-09-08 14:52:19 +05:30
Marica
4d9b511bb4 Merge branch 'version-12-hotfix' into reverse-je-ignore-flag-v12 2020-09-08 13:52:54 +05:30
Afshan
f1471ecbd4 fix: removed ignore permission flag 2020-09-08 13:50:54 +05:30
Marica
00a8e2226a Merge pull request #23292 from AfshanKhan/irs-v12
fix: returned empty list if non US based company
2020-09-08 13:45:44 +05:30
Afshan
d44052441b fix: returned empty list if non US based company 2020-09-08 13:03:37 +05:30
rohitwaghchaure
8e21738238 Merge pull request #23192 from marination/batch-source-reference
fix: Unlink and delete batch created from stock reco on cancel
2020-09-08 12:12:30 +05:30
Rucha Mahabal
5096639591 fix: Lock row in subquery while setting delivered qty (#23101) 2020-09-08 11:58:07 +05:30
rohitwaghchaure
810c4250b8 Merge pull request #23286 from rohitwaghchaure/fixed-payment-entry-status-issue
fix: incorrect payment entry status
2020-09-08 10:35:52 +05:30
Deepesh Garg
47c535399c fix: Check if subscription is already created for current invoicing period (#23143)
* fix: Check if subscription is already created for current invoicing period

* fix: Test for duplicate subscription

* fix: invoice generation at the begining of period fix

* fix: invoice generation at the begining of period fix

* fix: Remove unwanted file

* fix: Generate new invoices even though current invoices are unpaid

* fix: Make invoices table read-only

* fix: Update test cases
2020-09-08 10:30:02 +05:30
rohitwaghchaure
b06c618585 Merge pull request #23247 from Anurag810/attendance_calendar_map_v12
fix: Attendance calendar map fix
2020-09-08 10:15:01 +05:30
Rohit Waghchaure
785b7b3359 fix: incorrect payment entry status 2020-09-07 21:54:57 +05:30
Marica
32179293ee Merge branch 'version-12-hotfix' into batch-source-reference 2020-09-07 19:30:36 +05:30
rohitwaghchaure
8dd72018c2 Merge pull request #23262 from rohitwaghchaure/not-able-to-make-material-request-from-so
fix: not able to make material request from SO
2020-09-06 20:49:03 +05:30
rohitwaghchaure
b2bf54cc33 Merge pull request #23260 from anupamvs/se-quantity-v12
fix: SE quantity data type issue
2020-09-04 16:07:32 +05:30
Rohit Waghchaure
4f3eb3fceb fix: not able to make material request from SO 2020-09-04 15:24:56 +05:30
Anupam K
9260cf11b6 fix: SE quantity data type issue 2020-09-04 15:10:50 +05:30
Deepesh Garg
84077676f7 Merge pull request #23254 from anupamvs/profit-loss-fix
fix: profit and loss report not working
2020-09-04 13:23:57 +05:30
Anupam K
5519824414 fix: profit and loss report not working 2020-09-04 11:09:26 +05:30
Deepesh Garg
cce13aaa65 Merge pull request #23252 from deepeshgarg007/hsn_wise_summary
fix: Stock qty in HSN wise outward summary
2020-09-03 21:29:58 +05:30
Deepesh Garg
b78d35ae1d fix: Stock qty in HSN wise outward summary 2020-09-03 21:16:31 +05:30
Marica
7c963a03cb Merge branch 'version-12-hotfix' into batch-source-reference 2020-09-03 18:01:09 +05:30
Marica
4a67da2b0b Merge pull request #23246 from marination/item-tax-query-fix
fix: Misleading filters on Item tax Template Link field
2020-09-03 17:51:42 +05:30
Anurag Mishra
053fdd91da fix: data was not properly maped 2020-09-03 17:11:59 +05:30
marination
c407bb2385 fix: Misleading filters on Item tax Template Link field 2020-09-03 16:54:43 +05:30
Marica
271c550e96 Merge pull request #23244 from marination/purchase-over-receipt-subcontracted-hotfix
fix: Raise Error on over receipt/consumption for sub-contracted PR
2020-09-03 16:45:13 +05:30
marination
8781e77132 fix: Test for Over Receipt via PRs on a PO 2020-09-03 15:48:18 +05:30
marination
5c1f11e561 fix: Raise Error on over receipt/consumption for sub-contrcated PR 2020-09-03 15:47:38 +05:30
Marica
203f78cf97 Merge branch 'version-12-hotfix' into batch-source-reference 2020-09-03 15:39:44 +05:30
rohitwaghchaure
e212537a5f Merge pull request #23186 from rohitwaghchaure/incorrect-stock-balance-issue-for-batched-item
fix: Incorrect stock balance issue for batched item
2020-09-03 15:02:38 +05:30
marination
e33b9628d3 Merge branch 'batch-source-reference' of https://github.com/marination/erpnext into batch-source-reference 2020-09-03 14:42:05 +05:30
marination
44717e3b4a fix: Item Alternative Test 2020-09-03 14:41:05 +05:30
Marica
1dbffa6ccc Merge branch 'version-12-hotfix' into batch-source-reference 2020-09-02 20:24:07 +05:30
marination
9b6326f5d4 chore: Tests for Stock Reconciliation 2020-09-02 19:21:16 +05:30
rohitwaghchaure
bd70dd02c1 Merge pull request #23236 from rohitwaghchaure/fix-pos-special-char-escape-issue
fix: pos item name special character issue
2020-09-02 17:20:43 +05:30
Rohit Waghchaure
f30181527f fix: pos item name special character issue 2020-09-02 17:08:28 +05:30
marination
6b785cf522 chore: Tests for Stock Entry 2020-09-02 15:45:02 +05:30
rohitwaghchaure
ba867d48f7 Merge pull request #23020 from prssanna/gross-profit-total-v12
feat: enable total row in Gross Profit Report
2020-09-02 12:17:33 +05:30
rohitwaghchaure
a0099a3c63 Merge pull request #23124 from ruchamahabal/fix-pos-return
fix: Update paid amount for pos return (#20543)
2020-09-02 12:16:25 +05:30
Marica
3992ddedd0 fix: General Ledger filter validation (#23230) 2020-09-02 11:10:46 +05:30
Shivam Mishra
457a909784 fix: events not deleted on cancelling maintenance schedule (#23219)
* feat: add participant to event_participant child table

* feat: add tests

* chore: update function name

Co-authored-by: Marica <maricadsouza221197@gmail.com>

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-09-01 16:30:34 +05:30
Marica
96882f599e Merge pull request #23206 from marination/party-details-hotfix
fix: Check for Company before trying to fetch party details
2020-09-01 16:29:43 +05:30
Marica
c50b296f2d Merge branch 'version-12-hotfix' into party-details-hotfix 2020-09-01 15:36:26 +05:30
Marica
05a90baddd fix: Don't overwrite doctype while setting attributes in child row (#23228) 2020-09-01 15:29:27 +05:30
rohitwaghchaure
14ea8928f5 Merge pull request #23226 from rohitwaghchaure/fixed-job-card-time-log-issue
fix: incorrect job card timer issue
2020-09-01 14:08:29 +05:30
Rohit Waghchaure
ee4e725b37 fix: incorrect job card timer issue 2020-09-01 14:02:34 +05:30
Afshan
ab6f761753 fix:reverse journal entry (#23224) 2020-08-31 22:01:54 +05:30
Rucha Mahabal
b574353c00 fix(Payroll Entry): Set cost center for payroll payable account (#23223) 2020-08-31 20:09:48 +05:30
Deepesh Garg
3bf5820236 Merge pull request #23081 from deepeshgarg007/hsn_wise_json_v12_hotfix
feat: JSON download for HSN wise outward summary
2020-08-31 17:15:45 +05:30
Marica
0ff376fa4a fix: Better error feedback on creating SO from Quotation (#23214) 2020-08-31 13:54:10 +05:30
rohitwaghchaure
dc8de013c9 Merge pull request #23215 from rohitwaghchaure/fixed-different-workstation-not-update-qty
fix: incorrect completed qty against operation in work order if workstation is different in job card
2020-08-31 13:29:44 +05:30
Rohit Waghchaure
b73879056f fix: incorrect completed qty against operation in work order if workstation is different in job card 2020-08-31 12:27:49 +05:30
rohitwaghchaure
a2c4cc1252 Merge pull request #23126 from rohitwaghchaure/multi-operation-job-card-issue
fix: user created manual job card not linking job card operation with work order operation
2020-08-31 11:52:20 +05:30
marination
17a3af47d9 fix: Check for Company before trying to fetch party details 2020-08-29 19:28:51 +05:30
Rohit Waghchaure
e352706330 fix: user created manual job card not linking job card operations with work order operations 2020-08-28 12:29:27 +05:30
rohitwaghchaure
8dc7a43cc9 Merge pull request #23169 from ruchamahabal/fix-appointment-duration-v12
fix: don't overwrite patient appointment duration if already specified
2020-08-28 10:39:59 +05:30
rohitwaghchaure
aa795efe15 Merge pull request #23171 from anupamvs/product-contact-us
feat: Added phone field in product Inquiry
2020-08-28 10:38:07 +05:30
rohitwaghchaure
89d1990d79 Merge pull request #23179 from marination/pricing-rule-missing-fix-version-12-hotfix
fix: Pricing rule encoding missing line
2020-08-28 10:36:24 +05:30
rohitwaghchaure
c8f695c0da Merge pull request #23191 from ruchamahabal/fix-bom-update-v12
fix: BOM Update Tool failing due to Too Many Writes error
2020-08-28 10:35:47 +05:30
marination
eab2d25c6a fix: Unlink and delete batch created from stock reco on cancel 2020-08-27 20:34:51 +05:30
Rucha Mahabal
00dbbc9f5c fix: BOM Update Tool failing due to Too Many Writes error 2020-08-27 19:00:07 +05:30
Rohit Waghchaure
09cb0f33b2 added test cases 2020-08-27 14:57:37 +05:30
Rohit Waghchaure
dcd80a3f48 fix: incorrect stock balance issue 2020-08-27 13:24:33 +05:30
Saurabh
8bd9bf2be6 Merge branch 'v12-pre-release' into version-12 2020-08-27 10:04:32 +05:30
Saurabh
fc7121e38f bumped to version 12.11.2 2020-08-27 10:24:32 +05:50
rohitwaghchaure
03488f8285 Merge pull request #23177 from marination/pricing-rule-missing-fix-v12-pre-release
fix: Pricing Rule encoding missing line
2020-08-27 10:00:48 +05:30
marination
4cce4a7712 fix: get_applied_pricing_rule in taxes_and_totals 2020-08-26 20:18:37 +05:30
marination
4e3bbb8e74 fix: get_applied_pricing_rule in taxes_and_totals 2020-08-26 20:09:11 +05:30
Rucha Mahabal
a3907e1329 fix: don't overwrite appointment duration if already specified 2020-08-26 15:15:05 +05:30
Anupam K
759282651b feat: Added phone field in product Inquiry 2020-08-26 14:23:56 +05:30
rohitwaghchaure
3bae6328c5 Merge pull request #23153 from ruchamahabal/fix-conversion-factor-v12
fix: conversion factor for BOM exploded item rate
2020-08-26 13:02:48 +05:30
Deepesh Garg
45d615887a fix: Codacy fixes 2020-08-26 12:12:06 +05:30
Rucha Mahabal
ed6cbc1239 Merge pull request #23164 from frappe/michellealva-sales_invoice_dashboard
fix: Add Delivery Note link in Sales Invoice Dashboard
2020-08-25 21:09:50 +05:30
Michelle Alva
deb741bea5 fix:Add Delivery Note link in Sales Invoice Dashboard 2020-08-25 21:00:41 +05:30
Saurabh
271f8b5cfd Merge branch 'v12-pre-release' into version-12 2020-08-25 20:01:54 +05:30
Saurabh
f26e66b2b5 bumped to version 12.11.1 2020-08-25 20:21:54 +05:50
Saurabh
020534046c Merge pull request #23162 from rohitwaghchaure/pricing-rule-not-working-js-side-v12-pre-release
fix: mixed condition pricing rule not working on js side
2020-08-25 20:01:02 +05:30
Rohit Waghchaure
0407a435d7 fix: mixed condition pricing rule not working on js side 2020-08-25 19:59:17 +05:30
Saurabh
1c19050aa4 Merge pull request #23160 from rohitwaghchaure/pricing-rule-not-working-js-side
fix: mixed condition pricing rule not working on js side
2020-08-25 19:40:54 +05:30
Rohit Waghchaure
62876c708b fix: mixed condition pricing rule not working on js side 2020-08-25 18:32:46 +05:30
Rucha Mahabal
3fc00a5bfe fix: conversion factor for BOM exploded item rate 2020-08-25 18:09:14 +05:30
Saurabh
8245640ca2 Merge pull request #23149 from rohitwaghchaure/pricing-rule-encoding-pre-release-v12
fix(hot): Pricing Rule encoding fixed
2020-08-25 17:24:56 +05:30
Rohit Waghchaure
29d24cddcf fix(hot): Pricing Rule encoding fixed 2020-08-25 17:22:20 +05:30
Saurabh
9aa230c1b8 Merge pull request #23146 from rohitwaghchaure/pricing-rule-encoding-hotfix
fix(hot): Pricing Rule encoding fixed
2020-08-25 17:19:17 +05:30
Rohit Waghchaure
d223d4b829 fix(hot): Pricing Rule encoding fixed 2020-08-25 16:18:44 +05:30
Anurag Mishra
69bb85d1d0 fix: Form dashboard showing wrong balance 2020-08-25 06:55:02 +05:30
rohitwaghchaure
51c29cafee Merge pull request #23082 from ruchamahabal/fix-pos-print-v12
fix: Print Language for Customer not set for POS Invoice
2020-08-24 16:11:26 +05:30
rohitwaghchaure
6594d127cb Merge pull request #23113 from wojosc/patch-12
refactor: allow to rename lead
2020-08-24 16:09:14 +05:30
rohitwaghchaure
65d16d1ef6 Merge pull request #23117 from nabinhait/subcontracted-pr-gle-v12
fix: GLE for subcontracted PR is fg item rate is zero
2020-08-24 16:06:59 +05:30
Deepesh Garg
9b4cc0b6e9 fix: Update paid amount for pos return (#20543)
* fix: Paid amount updation for pos return

* fix: Remove console

* fix: Styling

* fix: get  default mode of payment from POS profile

* fix: Add test cases

* fix: Codacy
2020-08-24 15:01:57 +05:30
Saurabh
f843d6aa53 Merge branch 'v12-pre-release' into version-12 2020-08-24 10:11:45 +05:30
Saurabh
c6ed332903 bumped to version 12.11.0 2020-08-24 10:25:29 +05:50
Nabin Hait
ad07abeb3f chore: Added change log 2020-08-23 11:27:05 +05:30
Nabin Hait
a82d9d3182 test: Test case for GLE in subcontracted PR if FG item rate is zero 2020-08-22 20:07:19 +05:30
Nabin Hait
98fda4b8c3 fix: GLE for subcontracted PR is fg item rate is zero 2020-08-22 20:07:05 +05:30
Wolfram Schmidt
572d150925 Update lead_source.json
as requested in https://github.com/frappe/erpnext/pull/22872
2020-08-21 20:02:29 +02:00
Saqib
6c6175200c fix: cannot search items in offline pos (#23083) 2020-08-21 15:40:29 +05:30
rohitwaghchaure
6bb2038323 Merge pull request #23084 from nextchamp-saqib/pos-search-fix-pre-release
fix: cannot search items in offline pos
2020-08-21 13:13:50 +05:30
Nabin Hait
3d1df94ad2 fix:Validate Job offer against vacancies (#23108) 2020-08-20 19:39:03 +05:30
Nabin Hait
fa36a06188 fix:Validate Job offer against vacancies (#23107) 2020-08-20 19:38:55 +05:30
Deepesh Garg
c3c06c36a5 Merge pull request #23103 from deepeshgarg007/rcm_submit
fix: Unable to submit reverse charge invoice
2020-08-20 19:36:02 +05:30
Deepesh Garg
53aee98103 Merge pull request #23104 from deepeshgarg007/rcm_submit_v12
fix: Unable to submit reverse charge invoice
2020-08-20 19:35:48 +05:30
Marica
e52bd5c699 fix: Create Opoortunity without Default Company from Email (#23099)
* fix: Create Opoortunity without Default Company from Email

* fix: Add Prompt to Select Company

* Update communication.js

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-08-20 19:11:59 +05:30
Marica
685ca83b5e fix: Create Opoortunity without Default Company from Email (#23098)
* fix: Create Opoortunity without Default Company from Email

* fix: Add Prompt to Select Company

* Update communication.js

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-08-20 19:11:40 +05:30
Deepesh Garg
e1f9148351 Merge branch 'v12-pre-release' of https://github.com/frappe/erpnext into rcm_submit_v12 2020-08-20 16:49:43 +05:30
Deepesh Garg
093fb84377 fix: Unable to submit reverse charge invoice 2020-08-20 16:44:08 +05:30
Deepesh Garg
8c5bc5631a fix: Unable to submit reverse charge invoice 2020-08-20 16:31:38 +05:30
Rucha Mahabal
46456fdc19 Merge pull request #23095 from nextchamp-saqib/sr-no-selector-fix-hotfix
fix: val is not defined
2020-08-20 15:01:58 +05:30
Rucha Mahabal
737d305f45 Merge pull request #23094 from nextchamp-saqib/sr-no-selector-fix-pre-release
fix: val is not defined
2020-08-20 15:01:28 +05:30
Deepesh Garg
2aa23f91b1 Merge pull request #23092 from rohitwaghchaure/not-able-to-submit-dn-hotfix
fix: not able to submit delivery note
2020-08-20 13:35:40 +05:30
Saqib Ansari
2cc0ad51f5 fix: val is not defined 2020-08-20 12:54:36 +05:30
Saqib Ansari
193222a336 fix: val is not defined 2020-08-20 12:53:43 +05:30
rohitwaghchaure
46bea91469 Merge pull request #23093 from rohitwaghchaure/not-able-to-submit-dn
fix: not able to submit delivery note
2020-08-20 12:28:35 +05:30
Rohit Waghchaure
5e32ee8457 fix: not able to submit delivery note 2020-08-20 12:21:09 +05:30
Rohit Waghchaure
f09d472fcd fix: not able to submit delivery note 2020-08-20 12:20:23 +05:30
Suraj Shetty
4ff1a4361d refactor: Format and sanitise user inputs to search queries. (#23091)
* refactor: Sanitize whitelisted method inputs

Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

* refactor: Format and sanitize tax_account_query inputs

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

* refactor: Validate and sanitize search inputs via decorator

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

* style: Minor formatting fix

* refactor: Validate and sanitize search inputs using decorator

* fix: Typo

* fix: Remove unwanted import statement

* refactor: Repalce validate_and_sanitize_search_inputs() with validate_and_sanitize_search_inputs

Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-08-20 11:27:19 +05:30
Suraj Shetty
bf7adb8b38 refactor: Format and sanitise user inputs to search queries. (#23064)
* refactor: Sanitize whitelisted method inputs

Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

* refactor: Format and sanitize tax_account_query inputs

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

* refactor: Validate and sanitize search inputs via decorator

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

* style: Minor formatting fix

* refactor: Validate and sanitize search inputs using decorator

* fix: Typo

* fix: Remove unwanted import statement

* refactor: Repalce validate_and_sanitize_search_inputs() with validate_and_sanitize_search_inputs

Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

Co-authored-by: Prssanna Desai <prssud@gmail.com>
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-08-20 11:17:30 +05:30
Deepesh Garg
c7c72b76c6 Merge pull request #23087 from deepeshgarg007/rcm_deduction_hotfix
fix: Do not update total for RCM invvoices if net taxes are zero
2020-08-19 18:39:09 +05:30
Deepesh Garg
6aa3191cad fix: Do not update total for RCM invvoices if net taxes are zero 2020-08-19 18:36:43 +05:30
Deepesh Garg
848288ed36 Merge pull request #23086 from deepeshgarg007/rcm_deduction
fix: Do not update total for RCM invvoices if net taxes are zero
2020-08-19 18:34:27 +05:30
Deepesh Garg
1c29da32fc fix: Do not update total for RCM invvoices if net taxes are zero 2020-08-19 18:30:18 +05:30
Saqib Ansari
1fdfcc00d6 fix: cannot search items in offline pos 2020-08-19 17:26:38 +05:30
Rucha Mahabal
f61a8bc889 fix: Print Language for Customer not set for POS Invoice 2020-08-19 16:18:06 +05:30
Deepesh Garg
1bf9de1527 feat: JSON download for HSN wise outward summary 2020-08-19 15:46:15 +05:30
Deepesh Garg
dae1fad1a6 fix: Total calculations for multicurrency RCM invoices (#23070) 2020-08-18 19:32:38 +05:30
Deepesh Garg
af45eceeb2 fix: Total calculations for multicurrency RCM invoices (#23071) 2020-08-18 19:32:00 +05:30
Anupam Kumar
09b6628e53 fix: Leave application status (#23043)
* fix: leave application status update fix

* fix:adding patch
2020-08-18 14:43:34 +05:30
Deepesh Garg
693bf1309a Merge pull request #23021 from prssanna/expense-claim-list-currency-v12
fix: add company in list fields to fetch for Expense Claim
2020-08-17 23:08:27 +05:30
Afshan
df42df5246 fix: handled condition if staffing isn't created (#23057)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-17 13:48:07 +05:30
Afshan
4b6d5ef6aa fix: the JSON object must be str, bytes or bytearray, not "list" (#23053) 2020-08-17 12:25:34 +05:30
Rucha Mahabal
5e51a1fe9b Merge pull request #23037 from aakvatech/patch-5
fix: AttributeError: 'ProgramFee' object has no attribute 'course'
2020-08-14 13:21:45 +05:30
aakvatech
2cdc0c3f2d fix: AttributeError: 'ProgramFee' object has no attribute 'course'
Error occurs while program enrollment on new student.

This happens on version 12 and not on version 13.

Version 12 uses
course_list = [course.course for course in program.get_all_children()]

where as version 13 uses
course_list = [course.course for course in program.courses]

erpnext/erpnext/education/doctype/program_enrollment/program_enrollment.py
2020-08-14 10:26:54 +03:00
Rucha Mahabal
7234330db9 Merge pull request #23032 from frappe/revert-23031-patch-4
Revert "fix: AttributeError: 'ProgramFee' object has no attribute 'course'"
2020-08-14 11:21:49 +05:30
Rucha Mahabal
2fa9b3a713 Revert "fix: AttributeError: 'ProgramFee' object has no attribute 'course'" 2020-08-14 11:21:23 +05:30
Rucha Mahabal
1aec8f57f2 Merge pull request #23031 from aakvatech/patch-4
fix: AttributeError: 'ProgramFee' object has no attribute 'course'
2020-08-14 11:21:18 +05:30
aakvatech
24f350a1a8 fix: AttributeError: 'ProgramFee' object has no attribute 'course'
Error occurs while program enrollment on new student.

This happens on version 12 and not on version 13.

Version 12 uses
course_list = [course.course for course in program.get_all_children()]

where as version 13 uses
course_list = [course.course for course in program.courses]

erpnext/erpnext/education/doctype/program_enrollment/program_enrollment.py
2020-08-14 06:59:44 +03:00
prssanna
c28e37781a fix: add company in list fields to fetch for Expense Claim 2020-08-13 11:56:30 +05:30
prssanna
4d8340d7b9 feat: enable total row in Gross Profit Report 2020-08-13 11:40:56 +05:30
Nabin Hait
387e0878b6 Merge branch 'version-12-hotfix' into v12-pre-release 2020-08-13 09:28:27 +05:30
Saqib
6c536bb6e0 fix: cannot change customer fields if credit exhausted (#22838)
* fix: cannot change customer fields if credit exhausted

* fix: order based on company

* fix: sort current limits w.r.t company before compare

* fix: CustomerCreditLimit Object is not subscriptable
2020-08-13 09:27:50 +05:30
Nabin Hait
0a061d4082 Merge branch 'version-12-hotfix' into v12-pre-release 2020-08-13 09:23:22 +05:30
Nabin Hait
af9d653fb4 Inclusive tax based on item quantity v12 (#23015)
* fix: Calculate taxes if tax is based on item quantity and inclusive on item price

* git commit -m "fix: Add missing semicolon"

* fix: Calculate taxes if tax is based on item quantity

Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2020-08-13 09:22:05 +05:30
Anupam Kumar
8969e19594 fix: Opportunity/Quotation Lost Reason Fix (#23016) 2020-08-13 09:19:53 +05:30
Deepesh Garg
a979fcc25b fix: Project link not set in accounts other than profit and loss accounts (#22049)
* fix: project link not set in accounts other than profilt and loss accounts

* fix: cannot find get_allow_cost_center_in_entry_of_bs_account

* fix: remove enable_allow_cost_center_in_entry_of_bs_account

* chore: add tests and remove test based on allow_cost_center_for_bs_accounts

* fix: travis

* fix: Test Cases

* fix: Patch to remove Property Setter

* fix: Test Cases

* fix: Remove v13 patch

* fix: Procurement Tracker test case

* fix: Proccurement tracker report test

* fix: Codacy

* fix: Remove duplicate project field

Co-authored-by: Saqib Ansari <nextchamp.saqib@gmail.com>
Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com>
2020-08-12 21:06:25 +05:30
Rucha Mahabal
9bd041c14c fix: don't set asset maintenance log status as Overdue when Completed or Cancelled (#23012)
* fix: don't set maintenance log status as Overdue when Completed or Cancelled

* fix: set draft indicators for Asset Maintenance Log listview
2020-08-12 19:34:54 +05:30
Deepesh Garg
1bb6ef3356 fix: Update state code and union territory for Daman and Diu (#22989)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-12 19:34:23 +05:30
Deepesh Garg
5cc5bc246a fix: Cancellation of accounting transactions within closed accounting period (#22986) 2020-08-12 17:56:57 +05:30
Rucha Mahabal
2a0ed798aa fix: TypeError while setting transfer_qty in Stock Entry (#22931)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-12 14:32:23 +05:30
Marica
033d98cd68 Merge pull request #23002 from AfshanKhan/fix-duplicate-dropdown-PO-v12
fix: moved custom_make_buttons to PurchaseOrderController to avoid duplication of dropdown options
2020-08-11 20:57:11 +05:30
Afshan
ec3dc95e6e fix: moved custom_make_buttons to PurchaseOrderController to avoid duplication of dropdown options 2020-08-11 20:42:16 +05:30
Deepesh Garg
57d86a3bc1 Merge pull request #22973 from marination/opportunity-from-email-fix
fix: Creating opportunity from email
2020-08-10 16:12:00 +05:30
marination
265916543d fix: Creating opportunity from email 2020-08-10 14:42:30 +05:30
Deepesh Garg
f63182df5a Merge pull request #22968 from deepeshgarg007/gst_export_wopay_v12
fix: GSTR 1 report for exports without payment of Tax
2020-08-10 11:29:56 +05:30
Deepesh Garg
9d455cf4a6 fix: GSTR 1 report for exports without payment of Tax 2020-08-10 09:57:28 +05:30
Deepesh Garg
ff9c40fde6 Merge pull request #22730 from deepeshgarg007/gstr3b_cess_v12_hotfix
fix: Multiple GST fixes
2020-08-08 22:15:25 +05:30
Deepesh Garg
f0f20bb434 fix: RCM taxable value in GSTR3b report 2020-08-08 20:58:01 +05:30
Deepesh Garg
bbfd5a4cc8 fix: Test Cases 2020-08-08 19:46:09 +05:30
Deepesh Garg
3ae4a83504 fix: Add print for debug 2020-08-08 17:52:45 +05:30
Deepesh Garg
1da33f4129 fix: Test case 2020-08-07 22:51:33 +05:30
Deepesh Garg
b8eff8d141 fix: Test case 2020-08-07 22:02:14 +05:30
Deepesh Garg
67e07b69dd fix: More print statements for debugging 2020-08-07 15:59:03 +05:30
Deepesh Garg
7d262d1a08 Merge pull request #22928 from deepeshgarg007/paymemnt_reco_multi_v12
fix: Multi currency payment reconciliation
2020-08-07 15:36:37 +05:30
Deepesh Garg
5f8e8a3c29 fix: Add debug print statement 2020-08-07 10:05:22 +05:30
Deepesh Garg
2169bb7640 fix: Add print 2020-08-06 23:16:33 +05:30
Deepesh Garg
33754b9dc8 fix: add print for debug 2020-08-06 22:17:37 +05:30
Deepesh Garg
bb451360ba Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into gstr3b_cess_v12_hotfix 2020-08-06 21:50:27 +05:30
Afshan
2cf4168009 fix: show or hide section or attributes depending on other attributes… (#22933)
* fix: show or hide section or attributes depending on other attributes for better UI

* fix:depends on: batch_no for retain sample

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-06 19:04:35 +05:30
Shivam Mishra
80c016a1ad Merge pull request #22935 from scmmishra/fix-product-configurator
fix: handle product_info null in item_configure
2020-08-06 11:39:32 +00:00
Shivam Mishra
3619628e60 fix: handle product_info null 2020-08-06 17:08:14 +05:30
Marica
e2e9633ee1 Merge pull request #22927 from deepeshgarg007/price_rule_fix_v12
fix: Error due to comma in Pricing rule name
2020-08-06 16:57:18 +05:30
Shivam Mishra
abd111331e Merge pull request #22934 from scmmishra/fix-product-configurator
fix: unbound error in product configurator 61b9727
2020-08-06 11:22:39 +00:00
Shivam Mishra
61b9727fa2 fix: unbound error in product configurator 2020-08-06 16:47:43 +05:30
Marica
74643c804d Merge branch 'version-12-hotfix' into price_rule_fix_v12 2020-08-06 14:38:59 +05:30
Marica
e7162a86c6 Merge pull request #22930 from deepeshgarg007/payment_reco_cost_center_fix_v12
fix: Add default cost center in payment reconciliation JV
2020-08-06 14:31:52 +05:30
Deepesh Garg
b3cdd91d65 fix: Tests 2020-08-06 13:18:42 +05:30
Deepesh Garg
dd64cd1512 fix: Add default cost center in payment reconciliation JV 2020-08-06 11:46:25 +05:30
Deepesh Garg
024c78f522 fix: Hide currency link fields 2020-08-06 11:31:00 +05:30
Deepesh Garg
e6ec549c81 fix: Multi currency payment reconciliation 2020-08-06 11:30:46 +05:30
Deepesh Garg
579167d1de fix: Remove print statement 2020-08-06 11:27:27 +05:30
Deepesh Garg
10604664d4 fix: Error due to commma in Pricing rule name 2020-08-06 11:27:18 +05:30
Marica
97e96cec51 fix: get_regional_address_details missing positional arg 'company' (#22920) 2020-08-05 17:10:50 +05:30
Anurag Mishra
d2593f0af5 fix: set half day date None if half day is unchecked (#22905) 2020-08-04 19:29:56 +05:30
Rucha Mahabal
02fcf569e6 fix: SQL query in accounts receivable, payable reports (#22891) 2020-08-03 20:41:37 +05:30
Marica
9afebd311f fix: Reposition description in Warehouse (#22896) 2020-08-03 20:39:41 +05:30
Rucha Mahabal
4f6a25539a fix: TypeError while concatenating account number and name in COA (#22886) 2020-08-03 15:51:39 +05:30
Nabin Hait
ec46b8c73b fix: Bank Clearance of POS purchase invoice (#22884) 2020-08-03 15:39:29 +05:30
Marica
a9cfe0c95c fix: Misleading description in Warehouse (#22879) 2020-08-03 14:56:46 +05:30
Rucha Mahabal
3d2fa59e6d fix(Education): course wise assessment report labels (#22805)
* fix: add labels to chart datasets in course wise assessment

* fix: change label for final grade

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-30 13:27:47 +05:30
Rucha Mahabal
b2eddedfb1 fix: change owner fieldtype to Link in Lead Owner Efficiency Report (#22840) 2020-07-29 17:19:11 +05:30
Marica
b7efef79dc fix: Exploded Item Rate (#22816) 2020-07-27 14:54:59 +05:30
bhavesh95863
ca6ec72ade fix: Add missing translation function for freeze message (#22812)
* fix[missing translation function]

missing translation function

* fix[missing translation function for message]

missing translation function for message

* fix[add missing translation function]

add missing translation function

* Update payroll_entry.js

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-07-26 14:03:03 +05:30
Deepesh Garg
680f2600be Merge pull request #22303 from P-Froggy/fix-payment-entry-wrong-bank-account-fetch-v12
fix: Set Value of wrong Bank Account Field in Payment Entry
2020-07-24 19:04:51 +05:30
Mangesh-Khairnar
af9e44f059 fix(payment-request): do not set guest as administrator (#22803) 2020-07-24 18:18:49 +05:30
Deepesh Garg
dde92e0fdb Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into gstr3b_cess_v12_hotfix 2020-07-24 14:09:02 +05:30
Deepesh Garg
d9aa115aaf fix: Remove print and add Cess account 2020-07-24 14:08:05 +05:30
rohitwaghchaure
6a48988c76 fix: incorrect stock value in return case (#22528)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-07-24 10:46:55 +05:30
Nabin Hait
e62da1455c fix: Other charges on income tax (#22798) 2020-07-24 09:20:41 +05:30
Anupam Kumar
45a3580c20 Unable to change link from new lead to existing customer (#22795) 2020-07-24 08:53:24 +05:30
Rucha Mahabal
9abb8e309e fix(Education): descriptions not copied while creating fees from fee structure (#22793) 2020-07-24 08:52:53 +05:30
Rucha Mahabal
c5b6ba7556 Merge pull request #22794 from Mangesh-Khairnar/maintainance-visit-fixes
fix(maintenance-visit): change fieldtype of status to select
2020-07-24 00:10:09 +05:30
Mangesh-Khairnar
cf902a1e2d fix(maintenance-visit): change fieldtype of status to select 2020-07-23 23:55:58 +05:30
Sun Howwrongbum
4e3df334db fix: [v12] incorrect available_qty being set (#22541)
* fix: incorrect available_qty being set

* style: descriptive variables
2020-07-23 20:06:15 +05:30
Deepesh Garg
9067adf141 fix: Add print for debug 2020-07-23 19:48:18 +05:30
Deepesh Garg
d18eb0e63e Merge pull request #22702 from pipech/v12-hotfix-transaction_pricing_rule
fix(pricing): transaction pricing rule
2020-07-23 19:19:55 +05:30
aakvatech
3adeab45ce Update transaction.js (#22788)
Added frappe.flags.hide_serial_batch_dialog = true that was missing in version-12
2020-07-23 12:14:36 +05:30
Marica
0fee76f409 fix: Dont merge items if both exist in stock reco (#22784)
* fix: incorrect stock after merging items

* fix: Readability fix

Co-authored-by: Rohit Waghchaure <rohitw1991@gmail.com>
2020-07-22 18:53:40 +05:30
Marica
74963e9711 fix: Serial No Rename does not affect Stock Ledger Entry (#22780) 2020-07-22 18:17:25 +05:30
Deepesh Garg
7d8887916e Merge pull request #22755 from deepeshgarg007/hsn_code_report_v12
fix: Tax amounts in HSN Wise Outward summary
2020-07-22 16:26:38 +05:30
Deepesh Garg
e077c0a270 fix: Randomly failing test (#22773)
* fix(travis): Item Tax tempate template test

* fix: Update tests

* fix: Test

* fix: Do not use random customers

* fix: Remove every bit of randomness from this test
2020-07-22 16:12:12 +05:30
Afshan
517108d10a fix: added set query for filters in MR (#22770)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-22 15:51:48 +05:30
Afshan
a7094641d4 style: moved parent warehouse to top section also added a section break for better look (#22772)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-22 15:45:37 +05:30
Deepesh Garg
ad94f7516b Merge pull request #22763 from DeeMysterio/fs-hotfix
fix(report): fix alignment in script report that extends financial_statements.js
2020-07-22 14:46:08 +05:30
Diksha Jadhav
1943d413a4 fix(report): fix alignment in script report that extends financial_statements.js 2020-07-21 17:59:12 +05:30
Deepesh Garg
82fbef4163 fix: Remove print statements 2020-07-21 14:54:21 +05:30
Deepesh Garg
83ad6df229 fix: Tax amounts in HSN Wise Outward summary 2020-07-21 14:25:51 +05:30
Deepesh Garg
b9ba63b0d8 fix: Test Case 2020-07-20 18:08:56 +05:30
Marica
bc248bfaed Merge pull request #22646 from rohitwaghchaure/incorrect-qty-after-transaction-stock-reco
fix: incorrect qty after transaction in stock ledger entry
2020-07-20 15:51:37 +05:30
Deepesh Garg
0b31d6f630 fix: Test Case 2020-07-20 13:34:46 +05:30
Marica
7e461ce860 Merge branch 'version-12-hotfix' into incorrect-qty-after-transaction-stock-reco 2020-07-20 11:34:29 +05:30
Deepesh Garg
6946796047 fix: Tests 2020-07-19 22:23:13 +05:30
Deepesh Garg
6d39066d86 fix: Multiple fixes in GST 2020-07-17 22:20:04 +05:30
Deepesh Garg
b6da70efec fix: Cess amount in GSTR 3B report 2020-07-17 22:19:34 +05:30
rohitwaghchaure
3068fe43c6 Merge branch 'version-12-hotfix' into v12-hotfix-transaction_pricing_rule 2020-07-17 14:46:45 +05:30
rohitwaghchaure
7709c640b5 Merge pull request #22720 from rohitwaghchaure/fixed-incorrect-currency-symbol-in-stock-balance-report
fix: currency symbol not showing as per company currency in stock bal…
2020-07-17 14:35:13 +05:30
rohitwaghchaure
8558e26648 Merge pull request #22716 from rohitwaghchaure/fixed-actual-qty-showing-as-zero
Fix: Stock Reconciliation Invalid Quantity for Batched Item
2020-07-17 12:07:45 +05:30
Rohit Waghchaure
34a91bd7e6 fix: currency symbol not showing as per company currency in stock balance 2020-07-17 11:24:40 +05:30
rohitwaghchaure
785462b513 Update stock_reconciliation.js 2020-07-17 10:55:05 +05:30
Rohit Waghchaure
0d5f8c5050 fix: for past dated stock reco, batched item showing the current available qty instead of quantity as per posting date 2020-07-17 08:57:31 +05:30
Deepesh Garg
13088173eb Merge pull request #22703 from deepeshgarg007/rcm_ountry_fix
fix: Update RCM only for indian countries
2020-07-15 23:58:16 +05:30
Deepesh Garg
c10dd29282 fix: Update RCM only for indian countries 2020-07-15 23:57:03 +05:30
Deepesh Garg
95da4157a9 Merge pull request #22699 from rohitwaghchaure/fixed-not-able-to-submit-si-hotfix
fix: not able to submit sales invoice
2020-07-15 21:50:45 +05:30
Poranut Chollavorn
1411d002f6 fix(pricing): transaction pricing rule
add tranasction type to transaction pricing rule selector
2020-07-15 14:55:20 +00:00
rohitwaghchaure
0f2601a6a6 Merge pull request #22649 from rohitwaghchaure/fixed-incorrect-balance-qty-in-stock-ledger
fix: incorrect balance qty in stock ledger report
2020-07-15 17:20:04 +05:30
Rohit Waghchaure
c785ff9874 fix: not able to submit sales invoice 2020-07-15 17:17:23 +05:30
rohitwaghchaure
ab9cbc1e2c Merge pull request #22690 from marination/pr-project-stock-ledger-fix
fix: Added Project Field in Purchase Receipt for Stock Ledger Tagging
2020-07-15 15:42:58 +05:30
rohitwaghchaure
237dc4250a Merge pull request #22667 from ruchamahabal/fix-healthcare-setup-v12
fix(Healthcare): set company in Healthcare Service Unit setup
2020-07-15 14:33:42 +05:30
marination
71fa045ba4 fix: Added Project Field in Purchase Receipt for Stock Ledger Tagging 2020-07-15 12:54:19 +05:30
rohitwaghchaure
5e5e82a9f6 Merge pull request #22684 from nabinhait/company-abbr-replace
fix: Replace company abbr
2020-07-15 12:31:19 +05:30
Deepesh Garg
898dafe748 fix: Period list fixes in financial statements (#22679) 2020-07-15 12:17:23 +05:30
Deepesh Garg
1f7e941d68 fix(GST): Do not add tax amount in grand total for reverse charge invoices (#22686)
* fix(GST): Do not add tax amount in grand total for reverse charge invoices

* fix: Code cleanup

* fix: Remove print statements
2020-07-14 22:05:45 +05:30
Nabin Hait
395f44c8b7 fix: Replace company abbr 2020-07-14 20:46:25 +05:30
Rucha Mahabal
ea1662c15b Merge pull request #22659 from bhavesh95863/patch-3
fix: Quotation list view blank if quotation_to field not set as a standard filter
2020-07-13 19:55:54 +05:30
bhavesh95863
fd8c856af2 fix:whitespace missing
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-07-13 18:48:47 +05:30
Rucha Mahabal
672497ba63 Merge branch 'version-12-hotfix' into fix-healthcare-setup-v12 2020-07-13 16:39:05 +05:30
Rucha Mahabal
9c410d8a27 fix(Healthcare): set company in Healthcare Service Unit setup 2020-07-13 16:27:59 +05:30
Deepesh Garg
8317ff8bb2 Merge branch 'version-12-hotfix' into fixed-incorrect-balance-qty-in-stock-ledger 2020-07-12 17:21:25 +05:30
bhavesh95863
70eb94280e fix: Quotation list view blank if quotation_to field not set as a standard filter
fix: Quotation list view  blank if quotation_to field not set as a standard filter
2020-07-12 02:59:00 +05:30
Deepesh Garg
fef3a79bf5 Merge pull request #22656 from sagarvora/fix-ewaybill-json
fix: ewaybill json had json dump of json dump, and other related fixes
2020-07-11 21:41:44 +05:30
Sagar Vora
9bcf4eb5bc fix: ewaybill json had json dump of json dump, and other related fixes 2020-07-11 17:44:20 +05:30
Marica
1696a8982c fix: Pricing Rule breaks if no item_code (#22653) 2020-07-10 22:51:32 +05:30
rohitwaghchaure
65cc0e5200 Merge branch 'version-12-hotfix' into v12-hotfix-get_pricing_rule 2020-07-10 21:46:13 +05:30
Rohit Waghchaure
671fc7b919 fix: incorrect balance qty in stock ledger report 2020-07-10 18:11:04 +05:30
Rohit Waghchaure
335815a75d fix: incorrect qty after transaction in stock ledger entry 2020-07-10 14:23:12 +05:30
rohitwaghchaure
b856548d47 fix: incorrect delivered qty in Supplier-Wise Sales Analytics (#22642)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-10 13:19:57 +05:30
rohitwaghchaure
1c26bf5b07 fix: Due to decimal issue make purchase receipt button not showing from PO (#22643)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-10 13:17:22 +05:30
Anurag Mishra
b3041ea7cd fix: fix: not working without from_amount and percentage_deduction (#22399) 2020-07-10 13:09:21 +05:30
Marica
ea7625556c fix: General Message in previous doc validation for buying and selling (#22639) 2020-07-10 12:36:47 +05:30
Marica
8e887f39a2 fix: Skip Progress and Completed by fields on Task Duplication (#22640) 2020-07-10 12:31:08 +05:30
Marica
8f038aa832 fix: Error message in Product Bundle (#22638) 2020-07-10 12:13:14 +05:30
Rohan
fda2633e40 fix: fetch project-related info in Timesheet (#22422)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-09 11:38:20 +05:30
Rohan
817040b986 fix: setup status indicators for Job Offer and Job Applicant (#22444)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-08 15:59:44 +05:30
rohitwaghchaure
45624cae77 Merge pull request #22599 from frappe/shopping-cart-issue
refactor: shopping cart
2020-07-08 13:09:59 +05:30
Anupam K
8c48a6a865 upating shopping_cart.js 2020-07-08 12:22:45 +05:30
Deepesh Garg
adb7c16349 Merge pull request #22604 from frappe/mergify/bp/version-12-hotfix/pr-22601
fix: Payment reco error in multi-company setup (bp #22601)
2020-07-07 18:41:44 +05:30
Marica
aafd674c07 Merge pull request #22606 from Thunderbottom/whitelist-query-v12
fix: whitelist all query functions for search widget
2020-07-07 16:51:45 +05:30
Chinmay D. Pai
75c2e28788 fix: whitelist all query functions for search widget
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-07-07 16:46:04 +05:30
Anupam K
321aba642d shopping cart issue fixes 2020-07-07 15:46:44 +05:30
Deepesh Garg
402b273d9b fix: Pass company
(cherry picked from commit ca351e3549)
2020-07-07 10:06:49 +00:00
Deepesh Garg
e0a9ae612e fix: Payment reco error in multicompany setup
(cherry picked from commit e2fdff5777)
2020-07-07 10:06:49 +00:00
bhavesh95863
b9e4df557b fix: Message field mandtory even after unchecking collect progress checkbox (#22594)
Message field mandtory even after unchecking collect progress checkbox
2020-07-06 18:29:37 +05:30
rohitwaghchaure
632bd3b310 Merge pull request #22587 from frappe/mergify/bp/version-12-hotfix/pr-22577
fix: Consider company fiscal year for getting balance (bp #22577)
2020-07-06 13:20:54 +05:30
Deepesh Garg
735d7f732d fix: Consider company fiscal for getting balalnce
(cherry picked from commit 96d40ec9da)
2020-07-06 07:09:00 +00:00
Deepesh Garg
455c1dda7a Merge pull request #22575 from deepeshgarg007/uae_item_tax_fix_v12
fix: Update item tax only if item code available
2020-07-03 21:33:35 +05:30
Deepesh Garg
1b18bf0388 fix: Update item tax only if item code available 2020-07-03 21:28:40 +05:30
Faris Ansari
336ca33a98 fix: Set label if domains is set (#22523) 2020-07-02 14:58:20 +05:30
Afshan
3c0f38fa02 fix: made "Subscription Section", "Auto Repeat" and Hub Publishing" collapsible by default (#22535) 2020-07-02 14:52:50 +05:30
Sahil Khan
fd30b8f422 Merge branch 'v12-pre-release' into version-12 2020-07-02 13:06:22 +05:30
Sahil Khan
30e33bef9e bumped to version 12.10.1 2020-07-02 13:26:22 +05:50
sahil28297
67e64dbc01 Merge pull request #22552 from frappe/mergify/bp/v12-pre-release/pr-22347
Revert "fix: update remark on submitting payment entry" (bp #22347)
2020-07-02 12:00:44 +05:30
Deepesh Garg
bae83679c0 Revert "fix: update remark on submitting payment entry"
(cherry picked from commit 7d035fac36)
2020-07-02 06:29:15 +00:00
Marica
0c12c7339c Merge pull request #22538 from frappe/mergify/bp/version-12-hotfix/pr-22496
fix: take parent cost center for child if no cost center at child (bp #22496)
2020-07-01 17:00:22 +05:30
Anurag Mishra
bf8a26c31e fix: take parent cost center for child if no cost center at child (#22496)
(cherry picked from commit ba5f571b0d)
2020-07-01 11:07:57 +00:00
Marica
fb36d01dd2 Merge pull request #22534 from frappe/mergify/bp/version-12-hotfix/pr-22512
feat: Autofill Supplier pop-up when only 1 Supplier in RFQ (bp #22512)
2020-07-01 12:09:46 +05:30
Afshan
c8d6e8f19d feat: Autofill Supplier pop-up when only 1 Supplier in RFQ
(cherry picked from commit 06f11aba0b)
2020-07-01 06:32:19 +00:00
mergify[bot]
4e17c40589 fix: Refactor dashboard links in leave policy (bp #22519) (#22529)
* fix: Refactor dashboard links in leave policy (#22519)

* fix: refactor dashboard links in leave policy

* fx: code fix

* fix: add labels to links

* fix: code change

(cherry picked from commit ec84afa86d)

* fix: remove extra lines

Co-authored-by: Michelle Alva <50285544+michellealva@users.noreply.github.com>
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-06-30 18:12:47 +05:30
Marica
5d5cb0ac28 fix: Set Root as Parent if no parent in new tree view node (#22507) 2020-06-30 08:21:07 +05:30
mergify[bot]
a20957d355 fix: handle nonetype issue for packed items (#22493) (#22494)
(cherry picked from commit 73edba0e10)

Co-authored-by: Mangesh-Khairnar <mkhairnar10@gmail.com>
2020-06-29 17:36:43 +05:30
rohitwaghchaure
f8efa0508a Merge pull request #22490 from frappe/mergify/bp/version-12-hotfix/pr-22488
fix: letter head not found in opening invoice creation tool (bp #22488)
2020-06-28 21:22:04 +05:30
Rohit Waghchaure
6aa7c404f8 fix: letter head not found in opening invoice creation tool
(cherry picked from commit 04cf2e029f)
2020-06-28 14:36:56 +00:00
rohitwaghchaure
105a44e0d2 Merge pull request #22484 from frappe/mergify/bp/version-12-hotfix/pr-22450
fix: Disable Renaming in Serial No (bp #22450)
2020-06-28 16:29:45 +05:30
rohitwaghchaure
7919ced975 Merge pull request #22372 from rohitwaghchaure/fixed-completed-qty-not-updated-in-wo
fix: completed qty not updated in work order
2020-06-28 15:22:56 +05:30
rohitwaghchaure
848e7c2e0e Merge pull request #22485 from frappe/mergify/bp/version-12-hotfix/pr-22478
fix: apply filters in all transactions (bp #22478)
2020-06-28 15:17:59 +05:30
rohitwaghchaure
104b317929 fix: indentation
(cherry picked from commit d5736711ce)
2020-06-28 09:45:01 +00:00
michellealva
ad0aca2fc6 fix: apply filters in all transactions
(cherry picked from commit 08f842d12e)
2020-06-28 09:45:01 +00:00
marination
584a8f52a5 fix: Disable Renaming in Serial No
(cherry picked from commit f311f52f6e)
2020-06-28 05:48:56 +00:00
rohitwaghchaure
48e2baa903 Merge pull request #22475 from frappe/mergify/bp/version-12-hotfix/pr-22468
fix: enable show_configure_button when shopping cart is enabled (bp #22468)
2020-06-28 11:13:34 +05:30
rohitwaghchaure
43d539f321 Merge pull request #22460 from britlog/version-12-hotfix
fix: product_info
2020-06-28 11:05:55 +05:30
britlog
0e7ab9526c fix: product_info 2020-06-26 15:24:23 +02:00
rohitwaghchaure
8a542bc9df Update shopping_cart_settings.js
(cherry picked from commit 13e8c32172)
2020-06-26 11:54:16 +00:00
Anupam K
e73dec158b enable show_configure_button when shopping cart is enabled
(cherry picked from commit 27d27c924d)
2020-06-26 11:54:16 +00:00
Deepesh Garg
2155916001 Merge pull request #22457 from frappe/clarkejj-patch-2
fix: stock_ageing.py report convert string numeric to flt value
2020-06-26 17:03:56 +05:30
rohitwaghchaure
78383c3133 Merge pull request #22469 from marination/production-plan-ux-hotfix
fix: Handling Empty tables in Production Plan
2020-06-26 15:06:14 +05:30
marination
cfc47bc011 fix: Sales Order to MR test failing
- Items to Manufacture can come as doc.items from Sales Order
2020-06-26 14:06:04 +05:30
marination
6bd8c048b6 fix: Handling Empty tables in Production Plan 2020-06-26 12:53:05 +05:30
mergify[bot]
6089023df7 fix: grammatical fix on error message (#22464)
Before:

Fiscal Year: 2020 does not exists

After:

Fiscal Year 2020 Does Not Exist

(cherry picked from commit 978722621f)

Co-authored-by: Michelle Alva <50285544+michellealva@users.noreply.github.com>
2020-06-26 09:23:36 +05:30
John Clarke
3cb8173034 fix: stock_ageing.py report convert string numeric to flt value
This PR combines these two PRs below applied to develop, to be applied to version-12-hotfix

(The mergifyio process failed for some reason.)

https://github.com/frappe/erpnext/pull/22430

https://github.com/frappe/erpnext/pull/22206
2020-06-25 07:30:10 -06:00
mergify[bot]
d9e7b480eb fix: cannot cancel assets with repair pending (#22440) (#22453)
* fix: cannot cancel assets with repair pending

* fix: message

* Update asset.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
(cherry picked from commit 40847aeac3)

Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2020-06-25 17:11:36 +05:30
Marica
7691937e59 Merge pull request #22437 from sunhoww/patch-2
fix: [v12] UnboundLocalError when setting product_info
2020-06-25 14:23:13 +05:30
Sun Howwrongbum
99a9f98688 fix: UnboundLocalError when setting product_info 2020-06-25 10:05:00 +05:30
Deepesh Garg
7b23cb27ce Merge pull request #22435 from frappe/mergify/bp/version-12-hotfix/pr-22434
fix: change error messages in RFQ (bp #22434)
2020-06-25 09:29:10 +05:30
Michelle Alva
c28adea2d0 fix: change error messages in RFQ
Before:
1. Row {0}: For supplier {0} Email Address is required to send email
2. Email sent to supplier
3. Request for Quotation is disabled to access from portal, for more check portal settings.
4. Supplier Quotation created.


After:
1. Row {0}: For Supplier {0} Email Address is Required to Send Email
2. Email sent to Supplier
3. The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.
4. Supplier Quotation Created.

(cherry picked from commit da0385cd39)
2020-06-25 03:52:13 +00:00
Marica
57804e9d87 Merge pull request #22427 from frappe/mergify/bp/version-12-hotfix/pr-22410
fix: add error prompt for wrong date range (bp #22410)
2020-06-24 21:32:18 +05:30
Kenneth Sequeira
bf81b42219 fix: add error prompt for wrong date range
(cherry picked from commit f5b7bd9dcb)
2020-06-24 14:06:59 +00:00
gavin
1a3fd763ac Merge pull request #22409 from revant/release-action-on-v12
ci: github release action for v12
2020-06-23 21:33:56 +05:30
Revant Nandgaonkar
0a6b5bc83f ci: github release action for v12 2020-06-23 20:11:35 +05:30
Marica
fb18f78b77 fix: Update Packed Items via Update Items in SO (#22404)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-23 19:19:08 +05:30
mergify[bot]
835b1b4f0d fix: Insert Supplier Group via List View (#22403) (#22407)
(cherry picked from commit 7af7bb8311)

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-23 19:18:18 +05:30
mergify[bot]
3c18669057 fix: staffing Plan validation (#22379) (#22396)
(cherry picked from commit 36560c8406)

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-23 10:49:48 +05:30
mergify[bot]
57a0fa5e87 fix: resetting lost reason in opportunity and quotation (#22378) (#22381)
(cherry picked from commit 71da90034d)

Co-authored-by: Anupam Kumar <anupamvns0099@gmail.com>
2020-06-23 10:45:08 +05:30
rohitwaghchaure
578bdff141 fix: offline pos not working for special character item (#22391) 2020-06-23 10:34:52 +05:30
rohitwaghchaure
c20b962842 Merge pull request #22389 from kennethsequeira/purchase_inv_due_12
fix: status error in purchase invoice
2020-06-22 23:47:32 +05:30
Deepesh Garg
5c4b738833 Merge pull request #22387 from AfshanKhan/V12_ISS_20_21_02455
fix: Set default reference Id for "On Previous Row Amount" and "On Previous Row Total"
2020-06-22 23:09:44 +05:30
Kenneth Sequeira
8a1f2ed65a fix:status error in purchase invoice 2020-06-22 22:40:04 +05:30
Afshan
def13f14a3 style: formate according to Codacy/PR Quality Review 2020-06-22 21:58:27 +05:30
Afshan
7e04dcae0a style: formate according to Codacy/PR Quality Review 2020-06-22 21:58:04 +05:30
Afshan
21a75eb2ba fix: set row_id by default as previous row for On Previous Row Amount and On Previous Row Total 2020-06-22 21:57:34 +05:30
rohitwaghchaure
290dbf470a Merge pull request #22384 from rohitwaghchaure/fixed-subcontract-item-for-alternative-item
fix: alternative item not working for subcontract
2020-06-22 21:52:26 +05:30
Rohit Waghchaure
171699537c fix: alternative item not working for subcontract 2020-06-22 20:48:28 +05:30
Deepesh Garg
91346d5e9e Merge pull request #22340 from frappe/mergify/bp/version-12-hotfix/pr-22312
fix: Email digest html view fix (bp #22312)
2020-06-22 19:08:56 +05:30
Marica
06ca3b5112 Purchase receipt to invoice hotfix (#22146)
* fix: Handle rows with same item code from Purchase Receipt to Invoice.

* fix: Handle rows with same item code from Purchase Receipt to Invoice.

* fix: Added patch, fixed tests, fixed delivery note behaviour

* chore: Added comments amd fixed typo

* fix: Added patch to patches.txt

* fix: Patch fix and simplification, json timestamp updation.

* fix: Set Purchase Receipt and Delivery Note detail patch (#21607)

* fix: Set Purchase Receipt and Delievry Note detail patch

* fix: Reload purchase receipt item

* fix(set_purchase_receipt_delivery_note_detail): commit after every 100 sql updates (#22016)

Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
Co-authored-by: sahil28297 <37302950+sahil28297@users.noreply.github.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-22 18:04:48 +05:30
Kenneth Sequeira
e220be5415 fix: Batch No label in Purchase Receipt (#22360) 2020-06-22 17:33:04 +05:30
mergify[bot]
413c2b229a fix: 'Last Purchase Rate' taking wrong on BOM (#20689) (#22370)
* fix: 'Last Purchase Rate' taking wrong on BOM. #20228

* fix: Added condition for None purchase order and purchase receipt (#20689)

* fix: fetch last purchase rate

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
(cherry picked from commit 2866617c82)

Co-authored-by: Lokesh Waingankar <59611773+lokesh-indictrans@users.noreply.github.com>
2020-06-22 17:26:42 +05:30
Anurag Mishra
1039079e37 fix: set cost center in child table (#22373) 2020-06-22 17:25:53 +05:30
Poranut Chollavorn
303639db76 fix: use name instead of title 2020-06-22 10:24:40 +00:00
rohitwaghchaure
60cb5ac419 Merge pull request #22330 from pipech/v12-hotfix-clear_pricing_rule_value
fix(pricing_rule): apply_on logic dont get cleanup
2020-06-22 14:47:29 +05:30
Rohit Waghchaure
ebbbc85fc0 added validation and clear fields for Apply Rule On Other 2020-06-22 13:44:11 +05:30
rohitwaghchaure
7f6d36cdc9 Merge pull request #22369 from frappe/mergify/bp/version-12-hotfix/pr-22241
fix: Minor fixes in cost center (bp #22241)
2020-06-22 13:00:19 +05:30
Poranut Chollavorn
850c0ff121 fix(pricing_rule): key error on apply_internal_priority
apply_internal_priority never check if pricing rule have field
2020-06-22 07:24:33 +00:00
Marica
4a9de4dc07 Merge branch 'version-12-hotfix' into v12-hotfix-clear_pricing_rule_value 2020-06-22 12:48:55 +05:30
Marica
cb555ae825 Merge pull request #22368 from frappe/mergify/bp/version-12-hotfix/pr-21582
feat: Enabled translation on html files in LMS [Proposal] (bp #21582)
2020-06-22 12:45:18 +05:30
Rohit Waghchaure
e5ffe3fea4 fix: completed qty not updated in work order 2020-06-22 12:36:23 +05:30
Marica
7fcf958d08 Merge branch 'version-12-hotfix' into mergify/bp/version-12-hotfix/pr-21582 2020-06-22 12:07:39 +05:30
Deepesh Garg
cfe9ed0dfa fix: Test
(cherry picked from commit bef80b7981)
2020-06-22 05:54:53 +00:00
Deepesh Garg
f2fe8053dc fix: Validation for group cost center
(cherry picked from commit 0d880079b1)
2020-06-22 05:54:53 +00:00
Deepesh Garg
aa22cca67a fix: Minor fixes in cost center
(cherry picked from commit 817cbc4b48)
2020-06-22 05:54:52 +00:00
rohitwaghchaure
c4893df048 Merge pull request #22088 from deepeshgarg007/rcm_version-12-hotfix
fix(India): Reverse charge mechanism for GST
2020-06-22 11:20:38 +05:30
Alvaro
b16b24fd10 feat: Enabled translation on html files in LMS [Proposal] (#21582)
* :fix:  translation fix for html files in LMS

* fix: typo in translation

* Update content.html

* Update content.html

* Update profile.html

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
Co-authored-by: Marica <maricadsouza221197@gmail.com>
(cherry picked from commit 43be163b32)
2020-06-22 05:39:42 +00:00
Deepesh Garg
2f2385b354 Merge pull request #22365 from frappe/mergify/bp/version-12-hotfix/pr-22350
fix: Skipping total row for tree-view reports (bp #22350)
2020-06-21 22:11:32 +05:30
Afshan
8a2a32820a fix: adding json for checked add total row
(cherry picked from commit 84c6973742)
2020-06-21 13:59:25 +00:00
Afshan
41462f3c36 fix: test case
(cherry picked from commit 3fbe6e9e4b)
2020-06-21 13:59:25 +00:00
Afshan
a9ff40db67 fix: Skipping*
(cherry picked from commit 65f00cea15)
2020-06-21 13:59:24 +00:00
Afshan
0d95f56474 Skiping total row for tree-view reports
(cherry picked from commit fbd66574ad)
2020-06-21 13:59:24 +00:00
rohitwaghchaure
da65ddc68a Merge pull request #22362 from rohitwaghchaure/fixed-popup-is-coming-for-non-serialized-items
fix: Serial no / batch no Popup is coming for the non serialized items
2020-06-20 20:54:55 +05:30
Rohit Waghchaure
368f5e29d2 fix: Serial no / batch no Popup is coming for the non serialized items 2020-06-20 20:48:28 +05:30
Deepesh Garg
92f97b6a68 Merge pull request #22347 from frappe/revert-21743-payment-remark-fix-v12
Revert "fix: update remark on submitting payment entry"
2020-06-19 17:29:20 +05:30
Deepesh Garg
7d035fac36 Revert "fix: update remark on submitting payment entry" 2020-06-19 17:28:58 +05:30
Marica
6c1a5e8a44 Merge branch 'version-12-hotfix' into v12-hotfix-clear_pricing_rule_value 2020-06-19 14:28:06 +05:30
rohitwaghchaure
995bdd3c48 Merge pull request #22250 from marination/rfq-multi-uom-hotfix
feat: Multi UOM support in Request for Quotation
2020-06-19 13:17:36 +05:30
mergify[bot]
5acc06dfe6 fix: Student Admission (#22280)
* Student Admission fix

* adding check for application

* adding check for application

* updating error message

* added date_diff for date comparision

(cherry picked from commit c6592c880a)

Co-authored-by: Anupam Kumar <anupamvns0099@gmail.com>
Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-19 11:58:51 +05:30
Anupam K
168d070d73 email digest html fix
(cherry picked from commit bd449c8d07)
2020-06-19 06:09:49 +00:00
mergify[bot]
6f3e5e1891 refactor: show service instead of services (#22339)
(cherry picked from commit 25702a1c55)

Co-authored-by: Shivam Mishra <scm.mymail@gmail.com>
2020-06-19 11:10:42 +05:30
rohitwaghchaure
d48e33dbd7 Merge pull request #22327 from frappe/mergify/bp/v12-pre-release/pr-22287
fix: Quality procedure fixes (bp #22287)
2020-06-19 11:01:41 +05:30
rohitwaghchaure
7af8ca1bd1 Merge pull request #22338 from frappe/mergify/bp/v12-pre-release/pr-22334
fix: Customer Group label in Item-wise Sales History report (bp #22334)
2020-06-19 11:00:31 +05:30
rohitwaghchaure
a3e92489c2 Merge pull request #22337 from frappe/mergify/bp/version-12-hotfix/pr-22334
fix: Customer Group label in Item-wise Sales History report (bp #22334)
2020-06-19 11:00:17 +05:30
Kenneth Sequeira
4793e9c24c fix: Customer Group label in Itemwise Sales report
(cherry picked from commit 766f978858)
2020-06-19 05:29:07 +00:00
rohitwaghchaure
dd8dcd29c3 Merge pull request #22332 from marination/item-edit-hotfix
fix: Unabled to create batched item
2020-06-19 10:57:25 +05:30
Kenneth Sequeira
10624f3fa6 fix: Customer Group label in Itemwise Sales report
(cherry picked from commit 766f978858)
2020-06-19 05:26:23 +00:00
Marica
a0aa16c68c Merge branch 'version-12-hotfix' into item-edit-hotfix 2020-06-18 22:02:32 +05:30
marination
67361bef73 fix: Unabled to create batched item 2020-06-18 21:47:36 +05:30
Poranut Chollavorn
acf399c4e0 fix(pricing_rule): apply_on logic dont get cleanup 2020-06-18 14:41:26 +00:00
Sahil Khan
66a33bf7d9 Merge branch 'v12-pre-release' into version-12 2020-06-18 20:06:18 +05:30
Sahil Khan
aa27a0e85c bumped to version 12.10.0 2020-06-18 20:26:18 +05:50
sahil28297
a9dbff0eae chore: correct version in release note 2020-06-18 20:03:00 +05:30
Marica
a9ed42f93d fix: Quality procedure fixes (#22287)
* fix: Quality Procedure Fixes

- Dont prompt error message if parent is the same in child
- filter child procedure field
- Disable New button in tree view
- Editable grid for Quality Procedure Proces table.

* chore: Remove unnecessary get_doc

* fix: Codacy

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
(cherry picked from commit cce1116b4e)
2020-06-18 13:48:34 +00:00
Marica
cce1116b4e fix: Quality procedure fixes (#22287)
* fix: Quality Procedure Fixes

- Dont prompt error message if parent is the same in child
- filter child procedure field
- Disable New button in tree view
- Editable grid for Quality Procedure Proces table.

* chore: Remove unnecessary get_doc

* fix: Codacy

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-18 19:15:49 +05:30
Poranut Chollavorn
66806ff1b0 fix(pricing_rules): rule won't got use across [item_code, item_group, brands] 2020-06-18 13:43:15 +00:00
Deepesh Garg
fc488a2b46 fix: Do not copy Item Tax template from SO to PO (#22326) 2020-06-18 18:19:49 +05:30
Nabin Hait
f53ee9026b chore: Added Change log 2020-06-18 18:13:51 +05:30
mergify[bot]
5bd479e8ee refactor: handle exceptions when updating addresses (#22307) (#22316)
* refactor: handle exceptions when updating addresses

* refactor: fold common statements in a loop

(cherry picked from commit 34d2bfbb3e)

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-06-18 17:04:45 +05:30
mergify[bot]
531ef15e30 refactor: handle exceptions when updating addresses (#22307) (#22315)
* refactor: handle exceptions when updating addresses

* refactor: fold common statements in a loop

(cherry picked from commit 34d2bfbb3e)

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-06-18 17:04:36 +05:30
Deepesh Garg
6dc6da1ce2 Merge pull request #22324 from deepeshgarg007/item_tax_map_v12
fix: Do not copy Item Tax template from SO to PO
2020-06-18 17:02:56 +05:30
Deepesh Garg
f9dbcef5c9 fix: Do not copy Item Tax template from SO to PO 2020-06-18 17:01:32 +05:30
mergify[bot]
1ca4370033 fix: asset maintenance fixes (#21277) (#22294)
* fix: asset maintenance fixes

* fix: tests

(cherry picked from commit 9c494d3e72)

Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2020-06-18 15:39:13 +05:30
mergify[bot]
62882ea65b fix: asset maintenance fixes (#21277) (#22300)
* fix: asset maintenance fixes

* fix: tests

(cherry picked from commit 9c494d3e72)

Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2020-06-18 15:30:04 +05:30
mergify[bot]
0c08324fab chore: add standard queries hooks to whitelist (#21939) (#22305)
standard queries are used within the search widget, and now require to
be whitelisted before they can be executed through the search widget.

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>

Co-authored-by: sahil28297 <37302950+sahil28297@users.noreply.github.com>
(cherry picked from commit 96100e9507)

Co-authored-by: Chinmay Pai <chinmaydpai@gmail.com>
2020-06-18 15:29:46 +05:30
mergify[bot]
2417d9492f fix(HR): typo in error message in Employee Balance Report (#22306) (#22313)
* fix: typo in date error message

* fix: error message cleanup in Leave Balance report

(cherry picked from commit af6a0f3a9d)

Co-authored-by: Kenneth Sequeira <33246109+kennethsequeira@users.noreply.github.com>
2020-06-18 15:28:39 +05:30
Marica
c6886e28f2 Merge branch 'version-12-hotfix' into rfq-multi-uom-hotfix 2020-06-18 14:42:27 +05:30
marination
b865d58b81 fix: Patch simplification
- Also, apply patch to all docs
2020-06-18 14:43:31 +05:30
Kenneth Sequeira
af6a0f3a9d fix(HR): typo in error message in Employee Balance Report (#22306)
* fix: typo in date error message

* fix: error message cleanup in Leave Balance report
2020-06-18 14:34:11 +05:30
rohitwaghchaure
130d254b5a Merge pull request #22310 from rohitwaghchaure/fixed-incorrect-variable-used-pre-release
fix: incorrect variable used while adding items in the submitted sale…
2020-06-18 14:18:22 +05:30
Rohit Waghchaure
82abcc94fa fix: incorrect variable used while adding items in the submitted sales order 2020-06-18 14:17:16 +05:30
rohitwaghchaure
f635a1739e Merge pull request #22308 from rohitwaghchaure/fixed-incorrect-variable-used
fix: incorrect variable used while adding new item in the submitted Sales Order
2020-06-18 14:00:51 +05:30
Rohit Waghchaure
c75236579f fix: incorrect variable used while adding items in the submitted sales order 2020-06-18 13:59:23 +05:30
Mangesh-Khairnar
6a0bd556d7 fix: update shopify api version (#22297) 2020-06-18 12:48:52 +05:30
mergify[bot]
5d042ad496 fix: update shopify api version (#22284) (#22299)
Co-authored-by: Saurabh <saurabh@erpnext.com>
(cherry picked from commit 53b601523b)

Co-authored-by: Mangesh-Khairnar <mkhairnar10@gmail.com>
2020-06-18 09:47:15 +05:30
mergify[bot]
59938a46eb fix: typo for language in Terms description (#22270) (#22272)
(cherry picked from commit c159556c24)

Co-authored-by: Kenneth Sequeira <33246109+kennethsequeira@users.noreply.github.com>
2020-06-18 09:46:03 +05:30
P-Froggy
1284b9b17d fix: Set Value of wrong Bank Account Field in Payment Entry
Company bank account was wrongly inserted into the field "Party Bank Account" in payment entry, instead of "Bank Account".
Adds filters for "Party Bank Account" based on selected Party (I forgot to create a PR for version-12 back in February, see commit #393a626).
Also changes the label of "Default Bank Account" to "Default Company Bank Account", like suggested in PR #20632

#### Please Note
This is kind of a revert of PR #19390. However, it seems like the function "get_party_bank_account" in Bank Account doctype changed how it worked since it is clearly pulling the default company bank account.
2020-06-18 02:11:15 +02:00
Marica
c5c179490b Merge pull request #22293 from marination/variant-error-msg-pre-release
fix: Typo in Item Variant Error Message
2020-06-17 19:24:11 +05:30
Marica
1345bc2f82 Merge pull request #22291 from marination/variant-error-msg-hotfix
fix: Typo in Item Variant error message
2020-06-17 19:23:42 +05:30
marination
e256a7439e fix: Typo 2020-06-17 19:20:56 +05:30
marination
e67195b0b9 fix: Typo 2020-06-17 19:06:56 +05:30
Deepesh Garg
e4eb353065 Merge branch 'version-12-hotfix' into rcm_version-12-hotfix 2020-06-17 15:33:45 +05:30
Marica
b665da7cb4 Merge pull request #22282 from frappe/mergify/bp/v12-pre-release/pr-22281
fix: Message Formatting for missing Expense Account (bp #22281)
2020-06-17 13:55:25 +05:30
marination
7be4ba9351 fix: Message Formatting
(cherry picked from commit 17ec1d6b28)
2020-06-17 08:24:16 +00:00
Marica
41dadba990 Merge pull request #22281 from marination/expense-account-message
fix: Message Formatting for missing Expense Account
2020-06-17 13:51:09 +05:30
marination
17ec1d6b28 fix: Message Formatting 2020-06-17 13:46:21 +05:30
rohitwaghchaure
d4c2c4e170 Merge pull request #22276 from frappe/mergify/bp/v12-pre-release/pr-22268
fix: pos, serial no popup coming two times (bp #22268)
2020-06-17 12:27:20 +05:30
rohitwaghchaure
23a2d789ec Merge pull request #22277 from frappe/mergify/bp/v12-pre-release/pr-22248
fix: v12 travis (bp #22248)
2020-06-17 12:27:07 +05:30
Rohit Waghchaure
5e68fdbaee fix: travis
(cherry picked from commit e4834d2a37)
2020-06-17 05:40:14 +00:00
rohitwaghchaure
9c55efa8c6 fix: pos, serial no popup comin two times (#22268)
(cherry picked from commit 03f688acd9)
2020-06-17 05:35:50 +00:00
rohitwaghchaure
256b6950f5 Merge pull request #22273 from frappe/mergify/bp/v12-pre-release/pr-22267
refactor: hide company currency fields in the routing (bp #22267)
2020-06-17 10:59:58 +05:30
rohitwaghchaure
956368e457 refactor: hide company currency fields in the routing (#22267)
(cherry picked from commit fd3ff6be18)
2020-06-17 04:13:12 +00:00
rohitwaghchaure
fd3ff6be18 refactor: hide company currency fields in the routing (#22267) 2020-06-17 09:37:41 +05:30
rohitwaghchaure
03f688acd9 fix: pos, serial no popup comin two times (#22268) 2020-06-17 09:36:23 +05:30
rohitwaghchaure
fd5c577b40 Merge pull request #22248 from rohitwaghchaure/fixed-version-12-hotfix-travis
fix: v12 travis
2020-06-16 09:55:26 +05:30
Rohit Waghchaure
e4834d2a37 fix: travis 2020-06-15 22:24:56 +05:30
marination
1e76bdcc3c feat: Multi UOM support in Request for Quotation 2020-06-15 17:53:47 +05:30
Sahil Khan
b6c6406206 Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into v12-pre-release 2020-06-15 16:58:22 +05:30
rohitwaghchaure
253a698708 Merge pull request #22247 from marination/backflush-rm-rate-hotfix
fix: Wrong key sent to get_valuation_rate
2020-06-15 14:50:02 +05:30
marination
b819d8cdb6 fix: Wrong key sent to gte_valuation_rate 2020-06-15 14:47:37 +05:30
P-Froggy
84f44588d8 fix: Validation of Purchase Order against Material Request missing (#22224)
Validation of Purchase Order and Purchase Order Item against the linked Material Request Item was missing.
This way, it was possible to exchange items while making a purchase order and still fulfill the material request, even though the items did not match.

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-15 13:40:54 +05:30
rohitwaghchaure
14961e55c8 Merge pull request #22196 from marination/add-to-cart-stock-hotfix
fix: Handle unavailable Variants in Website
2020-06-15 13:11:18 +05:30
rohitwaghchaure
db48fc2559 Merge pull request #22218 from marination/update-items-permission-fix-hotfix
fix: submitted sales order can be updated with no permission
2020-06-15 13:10:15 +05:30
marination
713cbcea44 fix: Travis 2020-06-15 12:09:04 +05:30
marination
0a31e2ea92 fix: Fetch cart setting from argument 2020-06-15 12:02:28 +05:30
rohitwaghchaure
087278baba Merge pull request #22209 from frappe/michellealva-expense-claim
fix: add filter for cost center in expense table
2020-06-15 10:36:31 +05:30
rohitwaghchaure
faff772619 Merge pull request #22220 from Anurag810/quality_procedure_fix_v12
fix: Child is shown in Parent process if added from tree view
2020-06-15 10:34:09 +05:30
Deepesh Garg
fa1af6d74e Merge pull request #22200 from marination/qi-on-return-hotfix
fix: Don't prompt for Quality Inspection on Return Documents.
2020-06-14 17:10:13 +05:30
rohitwaghchaure
01d2548235 Merge pull request #22238 from rohitwaghchaure/item-none-not-found-opening-creation-tool
fix: item none not found while making sales invoice using opening inv…
2020-06-14 15:09:08 +05:30
Rohit Waghchaure
5b11d18d86 fix: item none not found while making sales invoice using opening invoice creation tool 2020-06-14 14:06:12 +05:30
Deepesh Garg
e4cd23746b fix: Consider Overseas category in RCM 2020-06-14 13:20:09 +05:30
Deepesh Garg
d2ed36f167 Merge pull request #22229 from deepeshgarg007/financial_statement_to_date
fix: Data not appearing properly for some fiscal_year in financial statements
2020-06-13 19:19:55 +05:30
Deepesh Garg
1222fb074f fix: Data not appearing properly for some fiscal_year in financial statemets 2020-06-13 19:16:37 +05:30
Abhishek Balam
486be1049c fix(HR): Rename due_advance_amount field in Employee Advance for v12 (#22216)
* added patch for moving data

* changed fieldname and references for easier debugging

* style: Added EOF

* reload doc for patch
2020-06-13 01:18:29 +05:30
Anurag Mishra
9319153ab3 fix: Child is shown in Parent process if added from tree view 2020-06-12 17:04:25 +05:30
rohitwaghchaure
9ea539d335 Merge pull request #22158 from pipech/v12-hotfix-pricing_rule-missing_income_account
fix(pricing_rule): missing income account when getting free product
2020-06-12 17:00:13 +05:30
marination
f6054a2de8 fix: Added PO test and conversion factor fix
- Don't change conversion factor if stock uom and uom is the same
- Added PO test
- Added Accounts User basic role in PO
- Minor fixes, wrong variables
2020-06-12 16:28:44 +05:30
Saqib Ansari
6a9f368292 fix: unexpected removal of print hide field 2020-06-12 16:25:57 +05:30
Saqib Ansari
9ee4841520 fix: cannot update delivery date 2020-06-12 16:25:38 +05:30
Saqib Ansari
39e125b8a2 fix: label 2020-06-12 16:25:28 +05:30
Saqib Ansari
37b614af0e fix: submitted sales order can be updated with no permission 2020-06-12 16:25:07 +05:30
Marica
1dc3c40b00 Merge branch 'version-12-hotfix' into qi-on-return-hotfix 2020-06-12 12:32:27 +05:30
Marica
8ce5e04777 Update stock_controller.py 2020-06-12 12:32:12 +05:30
Michelle Alva
d6cdc3378a fix: add filter for cost center in expense table
Added filter for cost center in expense table (company and group_node filter)
2020-06-12 10:30:32 +05:30
Deepesh Garg
18ccd6b253 Merge pull request #22204 from marination/account-tree-hotfix
fix: Check for Company before rendering tree in Account Tree
2020-06-12 10:03:21 +05:30
marination
5ee33bdbe9 fix: Check for Company before rendering tree in Account Tree 2020-06-11 20:31:08 +05:30
marination
a965773c97 fix: Don't prompt for Quality Inspection on Return Documents. 2020-06-11 16:45:36 +05:30
marination
821606f001 fix: Handle unavailable Variants in Website 2020-06-11 13:32:58 +05:30
Deepesh Garg
95695f0628 Merge pull request #22189 from frappe/mergify/bp/version-12-hotfix/pr-22188
fix: Update payment schedule based on payment terms (bp #22188)
2020-06-10 22:31:28 +05:30
Deepesh Garg
755b8490e7 fix: Update payment schedule based on payment terms
(cherry picked from commit a0fd97f2ac)
2020-06-10 16:52:58 +00:00
Rohan
8a2c719359 fix: only auto-set serial nos and batches if allowed in Stock Settings (v12) (#21779)
* fix: only auto-set serial nos and batches if allowed in Stock Settings

* fix: bug with setting disabled batch no in Pick List

* Remove auto_set_batch_no

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-10 19:11:20 +05:30
rohitwaghchaure
eaa6218003 Merge pull request #22183 from marination/website-price-list-hotfix
fix: Prioritize Default Customer Price List in Portal
2020-06-10 19:07:00 +05:30
marination
8710866886 fix: Prioritize Default Customer Price List in Portal 2020-06-10 18:28:14 +05:30
rohitwaghchaure
f09db536af Merge pull request #22178 from rohitwaghchaure/code-cleanup-for-handling-batch-case-in-SI
fix: Cannot read property 'has_batch_no' of undefined
2020-06-10 17:07:05 +05:30
Rohit Waghchaure
c848b97757 fix: Cannot read property 'has_batch_no' of undefined 2020-06-10 17:04:40 +05:30
rohitwaghchaure
8fcd86cb9e Merge pull request #22062 from marination/procurement-tracker
fix: Procurement Tracker Data Consistency
2020-06-10 14:13:19 +05:30
rohitwaghchaure
8c69991c12 Merge pull request #22097 from marination/valuation-rate-hotfix
fix: '>=' not supported between instances of 'str' and 'int'
2020-06-10 14:12:03 +05:30
rohitwaghchaure
6b07ae89c0 Merge pull request #22168 from pipech/v12-hotfix-loyalty_program
fix(loyalty): loyalty point entry use wrong tier
2020-06-10 12:53:12 +05:30
mergify[bot]
703cee6abf fix: update program course (#22166) (#22173)
(cherry picked from commit 934e30ecac)

Co-authored-by: Anupam Kumar <anupamvns0099@gmail.com>
2020-06-10 12:51:29 +05:30
Poranut Chollavorn
5a5361815f docs(loyalty): fix wrong comment 2020-06-09 15:16:28 +00:00
Poranut Chollavorn
9831c5beca fix(loyalty): loyalty point entry use wrong tier 2020-06-09 15:06:44 +00:00
rohitwaghchaure
139627b331 Merge pull request #22148 from marination/finished-good-valuation-hotfix
fix: Finished Product Valuation at Repack
2020-06-09 17:41:58 +05:30
Poranut Chollavorn
dfd410ded2 fix(pricing_rule): missing income account 2020-06-09 03:16:49 +00:00
Deepesh Garg
02e3fc141a Merge pull request #22150 from deepeshgarg007/tdss_desscription_default
fix(accounting): Tax Withholding Category Description default
2020-06-08 14:05:54 +05:30
Deepesh Garg
65fb3f2c48 fix: Remove strip 2020-06-08 14:00:27 +05:30
Kevin Chan
5befddca39 fix: Tax Withholding Category Description default
This commit fixes a bug that happens when a Purchase Invoice uses a
Tax Withholding Category without a category_name. The category_name is
used as the tax description which is a required field. The bug was
fixed by using the Tax Withholding Category's name as the description
if the category_name is empty.
2020-06-08 14:00:17 +05:30
marination
189663f576 fix: Finished Product Valuation at Repack 2020-06-08 13:12:00 +05:30
rohitwaghchaure
b56156296b Merge pull request #22093 from marination/shippinng-address-hotfix
fix: Apply shipping rule without address too
2020-06-08 10:36:30 +05:30
mergify[bot]
6732c9ab14 fix: fetch tax lines within the shipping lines (#22138) (#22139)
(cherry picked from commit 3031128167)

Co-authored-by: Mangesh-Khairnar <mkhairnar10@gmail.com>
2020-06-07 18:59:06 +05:30
Deepesh Garg
38546cae33 Merge pull request #22068 from marination/item-attribute-hotfix
fix: Misleading Error message for Item Attribute.
2020-06-05 11:21:33 +05:30
P-Froggy
efdb55a083 fix: Wrong Ordered-Status Indicator for Material Request Items (#22117)
The indicator displaying if a material request item has been ordered or not (green/orange) used the wrong quantity field for determining the status.
The qty field is not in stock uom while the ordered_qty field is. Now, the stock_qty field is used for correct comparison with ordered_qty.
2020-06-05 10:56:30 +05:30
Marica
a569fa36bd Merge branch 'version-12-hotfix' into valuation-rate-hotfix 2020-06-04 15:31:35 +05:30
rohitwaghchaure
237ee1a9c6 Merge pull request #22110 from rohitwaghchaure/routing-operations-not-in-a-sequence-hotfix
fix: routing operations not added sequentially in the BOM
2020-06-04 14:52:08 +05:30
Rohit Waghchaure
1ae2376a83 fix: routing operations not added sequentially in the BOM 2020-06-04 14:50:22 +05:30
rohitwaghchaure
d0d35f03d0 Merge pull request #22108 from rohitwaghchaure/fixed-import-supplier-invoice-not-worked-v12
fix: import supplier invoice not working
2020-06-04 14:35:10 +05:30
Rohit Waghchaure
58a43be4f5 fix: import supplier invoice not working 2020-06-04 14:32:57 +05:30
Deepesh Garg
869d0c37b8 Merge pull request #22099 from frappe/mergify/bp/version-12-hotfix/pr-22098
fix: Error when no data is present in AR/AP report (bp #22098)
2020-06-03 22:40:30 +05:30
Deepesh Garg
c84961be85 fix: Error when no data is present in AR/AP reeport
(cherry picked from commit 7135a75e5e)
2020-06-03 16:49:52 +00:00
marination
89dd0bad28 fix: '>=' not supported between instances of 'str' and 'int' 2020-06-03 17:22:56 +05:30
Sahil Khan
b293e4b110 Merge branch 'v12-pre-release' into version-12 2020-06-03 15:10:41 +05:30
Sahil Khan
be104e5dcf bumped to version 12.9.4 2020-06-03 15:30:41 +05:50
sahil28297
051ae36bec Merge pull request #22094 from nextchamp-saqib/asset-error-fix-pre
fix: cannot create existing assets
2020-06-03 14:50:21 +05:30
sahil28297
12ad34b44a Merge pull request #22091 from nextchamp-saqib/asset-error-fix
fix: cannot create existing assets
2020-06-03 14:50:16 +05:30
Saqib Ansari
fc975cfc3a fix: cannot create existing assets 2020-06-03 14:48:38 +05:30
marination
1a1ce9a743 fix: Apply shipping rule without address too 2020-06-03 14:42:46 +05:30
Saqib Ansari
4e3caa8ece fix: cannot create existing assets 2020-06-03 14:15:16 +05:30
Deepesh Garg
28c9f3103f Merge pull request #22087 from MyuddinKhatri/purchase-receipt-hotfix
fix(stock): create purchase invoice from purchase receipt dashboard
2020-06-03 13:37:36 +05:30
Deepesh Garg
c417cf079c fix(India): Reverse charge mechanism for GST 2020-06-03 11:31:26 +05:30
Myuddin khatri
99f5ece31c fix(stock): able to create purchase invoice from purchase receipt dashboard
able to create purchase invoice from purchase receipt dashboard
2020-06-03 11:27:18 +05:30
gavin
5448be6f34 Merge pull request #22079 from frappe/mergify/bp/version-12-hotfix/pr-21491
feat(Tally migration): Errored documents handling (bp #21491)
2020-06-03 01:41:07 +05:30
mergify[bot]
38ed43ca59 Merge branch 'version-12-hotfix' into mergify/bp/version-12-hotfix/pr-21491 2020-06-02 09:26:34 +00:00
Gavin D'souza
2e825a108f chore: verbose error message for coa recursion
(cherry picked from commit cb1376b036)
2020-06-02 08:24:58 +00:00
Gavin D'souza
43a19da27a fix: un-using buggy JS frappe.new_doc
(cherry picked from commit 0c353a64a4)
2020-06-02 08:24:58 +00:00
Gavin D'souza
8ea9b0a415 feat: maintain tally voucher numbers
feat: create seperate customer and supplier entries for same party if
case exists

(cherry picked from commit af612ddb6d)
2020-06-02 08:24:58 +00:00
Gavin D'souza
d50cceaafa feat: prompt that company and COA will be overwritten
(cherry picked from commit 51305a028b)
2020-06-02 08:24:58 +00:00
Gavin D'souza
0a7afd77e2 fix: toggle read only for accounts post daybook data processing
style: code comments and updates
(cherry picked from commit f4926a8205)
2020-06-02 08:24:58 +00:00
Gavin D'souza
adb864828a perf: reduce JS memory heap and maintain namespaces
(cherry picked from commit 6b850b7e71)
2020-06-02 08:24:57 +00:00
Gavin D'souza
18d432a843 fix: table cleanups, updated summary block
(cherry picked from commit 0d61b35b0b)
2020-06-02 08:24:57 +00:00
Gavin D'souza
d3d511d31a fix: run summary logger
style: indent fixes
(cherry picked from commit 27b7172fa4)
2020-06-02 08:24:57 +00:00
Gavin D'souza
6950c10c6f feat: handle resolve and unresolved errors
restructured and reused components

(cherry picked from commit 2e1b531f4f)
2020-06-02 08:24:57 +00:00
Gavin D'souza
28a6e1deec feat: maintain logs of errors successfully fixed
(cherry picked from commit 640636bbcd)
2020-06-02 08:24:57 +00:00
Gavin D'souza
2f5208b08d feat: order failed import log by creation, handle rollbacks and commits
(cherry picked from commit 1b5eea691c)
2020-06-02 08:24:56 +00:00
Gavin D'souza
7ee6e83605 perf: reduce failed_error_log size
(cherry picked from commit 0805307514)
2020-06-02 08:24:56 +00:00
Gavin D'souza
0a2bbfaf24 feat: error log handling
fix: toggle required accounts
(cherry picked from commit 82e7a9de28)
2020-06-02 08:24:56 +00:00
Gavin D'souza
2ab6c8fa60 fix: set default round off acount
(cherry picked from commit 38c677689d)
2020-06-02 08:24:56 +00:00
Gavin D'souza
61381963b7 feat: Error logging via doc
fix: Handle duplicate company and COA
feat: Error logging via doc
feat: fetch defaults for accounts
(cherry picked from commit 2de4a5a7c8)
2020-06-02 08:24:56 +00:00
Gavin D'souza
5c448de2ae feat: Add Failed error logs
fix: set defaults
(cherry picked from commit defeb73747)
2020-06-02 08:24:55 +00:00
marination
f42d656cd3 fix: Misleading Error message for Item Attribute. 2020-06-01 12:03:20 +05:30
marination
144facf203 fix: Procurement Tracker Data Consistency 2020-05-31 20:11:40 +05:30
Deepesh Garg
0cd8102e0e Merge pull request #22059 from frappe/mergify/bp/version-12-hotfix/pr-22057
fix(ewb): remove checksum validation for TRANSIN (bp #22057)
2020-05-30 20:22:51 +05:30
karthikeyan5
ffbc812271 fix(ewb): remove checksum validation for TRANSIN
(cherry picked from commit ca46bedfcb)
2020-05-30 14:25:39 +00:00
Deepesh Garg
056854fd9e Merge pull request #22056 from marination/qty-validation-in-stock-entry-hotfix
fix: '<' not supported between instances of 'str' and 'int'
2020-05-30 19:49:57 +05:30
Rohit Waghchaure
e7e3af1684 fix: '<' not supported between instances of 'str' and 'int' 2020-05-30 18:38:41 +05:30
rohitwaghchaure
f214789e4b fix: routing operations table is blank on pull of operations in BOM (#22040) 2020-05-29 21:27:31 +05:30
mergify[bot]
0407f018dd fix: cannot assign same task to other asset maintenance (#22024) (#22032)
(cherry picked from commit cd8b5d1e4c)

Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2020-05-29 21:26:40 +05:30
mergify[bot]
592965a4d9 fix: disposed asset creates inconsistencies in asset depr report (#22021) (#22030)
(cherry picked from commit 3c460364b5)

Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2020-05-29 21:26:29 +05:30
mergify[bot]
5b695d6e9f fix: transaction date not found in sales invoice (bp #22001) (#22029)
* fix: transaction date not found in sales invoice

(cherry picked from commit 603cc3d05e)

* chore: tests

(cherry picked from commit dd39ba0014)

Co-authored-by: Saqib Ansari <nextchamp.saqib@gmail.com>
2020-05-29 21:26:16 +05:30
Deepesh Garg
245b8be435 Merge pull request #22033 from frappe/mergify/bp/version-12-hotfix/pr-21597
fix: cannot make payment entry against shareholder (bp #21597)
2020-05-29 13:21:59 +05:30
Saqib
840225d47b fix: cannot make payment entry against shareholder (#21597)
(cherry picked from commit d46696fa03)
2020-05-29 05:57:59 +00:00
Mangesh-Khairnar
0fcb79f361 fix: make transaction date of the oldest transaction as the last integration date (#22017)
* fix: make transaction date of the oldest transaction as the last integration date

* fix: only save end date when transactions are returned
2020-05-29 10:17:18 +05:30
Rucha Mahabal
74ddc04031 Merge pull request #22002 from frappe/mergify/bp/version-12-hotfix/pr-21999
fix: change modified time (bp #21999)
2020-05-28 13:03:18 +05:30
Michelle Alva
d65000a361 fix: change modified time
changed modified time to sync the changes

(cherry picked from commit 8653419c4c)
2020-05-28 07:31:23 +00:00
Deepesh Garg
6f37035617 Merge pull request #21920 from marination/import-italian-invoice
chore: Added Italian Import Supplier Invoice to Menu
2020-05-28 12:33:12 +05:30
Marica
aa6280f5cd Merge branch 'version-12-hotfix' into import-italian-invoice 2020-05-28 12:20:35 +05:30
mergify[bot]
64078da47b fix: change description for field (#21995) (#21996)
grammatical fixes for description of Default Customer

(cherry picked from commit f7beeff2d8)

Co-authored-by: Michelle Alva <50285544+michellealva@users.noreply.github.com>
2020-05-28 11:10:32 +05:30
Deepesh Garg
d9013dc7c9 Merge pull request #21987 from deepeshgarg007/tds_computation_summary_v12
fix: TDS computation summary report
2020-05-27 22:56:36 +05:30
Deepesh Garg
a23f929005 fix: TDS computation summary report 2020-05-27 22:51:36 +05:30
Marica
4f75a3a29b Merge branch 'version-12-hotfix' into import-italian-invoice 2020-05-27 21:53:18 +05:30
marination
d9e6900e07 fix: Added permission via regional setup and patch 2020-05-27 21:53:01 +05:30
Deepesh Garg
b4a3e5f70b fix: Total for ageing column 121-Above (#21973) 2020-05-27 20:30:41 +05:30
Deepesh Garg
aee9a61e0d fix: Post Dated unallocated amount not considered in Advance Amount in AR/AP summary (#21838)
* fix: Post Dated unallocateed amount not considered in Advance Amount in AR/AP summary report

* fix: Add future payment filter in AR/AP summary

* fix: Show unallocated future payments only till current creation date

* fix: Remove extra query

* fix: Remove debug

* fix: Condition
2020-05-27 12:46:18 +05:30
Deepesh Garg
ccb8edd7a3 Merge pull request #21941 from deepeshgarg007/acc_dim_report_filter_v12
fix: Do not add filters in report on accounting dimension creation if it already exists
2020-05-26 19:41:06 +05:30
Deepesh Garg
bb2bcc8a30 fix: Remove console statement 2020-05-26 19:31:33 +05:30
Deepesh Garg
9720406086 fix: Do not add filters in report on accounting dimension creation if it already exists 2020-05-26 19:31:21 +05:30
mergify[bot]
3c0e22c98c fix: shopify error message on failure of sales order creation (#21924) (#21937)
(cherry picked from commit 7402451b96)

Co-authored-by: Mangesh-Khairnar <mkhairnar10@gmail.com>
2020-05-26 18:37:25 +05:30
mergify[bot]
f912d78023 fix: check for warehouse in the woocommerce settings (#21925) (#21936)
(cherry picked from commit ddc170521f)

Co-authored-by: Mangesh-Khairnar <mkhairnar10@gmail.com>
2020-05-26 18:21:31 +05:30
Rohan
61257d829e fix: throw error if no serial numbers are found in Pick List (#21914)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-26 18:11:39 +05:30
Andrew McLeod
c9014b1ba9 fix: website_list_for_contact, fix changed frappe.db.exist keyword argument (#21827) 2020-05-26 18:09:00 +05:30
Anurag Mishra
9ad46f7487 fix: Added column Expired Leave (#21859) 2020-05-26 18:08:08 +05:30
Deepesh Garg
b094178734 fix(UAE): Incorrect VAT rate display in Sales Invoice (#21883) 2020-05-26 18:02:08 +05:30
Anurag Mishra
a3ec869c58 fix: showing Wrong balance on allocation boundary dates (#21908) 2020-05-26 18:00:27 +05:30
mergify[bot]
7177514b0d fix: adding dashboard in course and assessment plan (#21889) (#21919)
* Adding dashboards

* adding dashboard in course and assessment plan

(cherry picked from commit 0a147d5c76)

Co-authored-by: Anupam Kumar <anupamvns0099@gmail.com>
2020-05-26 17:59:24 +05:30
marination
277f5273a4 chore: Add Import Supplier Invoice to Menu 2020-05-25 21:49:33 +05:30
Saqib
8ae7bb2bc4 fix: fetch depreciation amount only if depr entry is made (#21894) 2020-05-25 19:20:54 +05:30
Sahil Khan
7aa8eab228 Merge branch 'v12-pre-release' into version-12 2020-05-25 19:02:37 +05:30
Sahil Khan
70439c9cd8 bumped to version 12.9.3 2020-05-25 19:22:37 +05:50
Anurag Mishra
bbec37f713 fix: Validation for dates (#21887) 2020-05-25 18:39:26 +05:30
mergify[bot]
8ddf30201f fix: Item Price and Add to Cart not showing on Website (#21905) (#21916)
* fix: Item Price and Add to Cart not showing on Website

* fix: Use None as default argument

(cherry picked from commit 4e70ecb97d)

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-25 18:38:54 +05:30
Marica
4e70ecb97d fix: Item Price and Add to Cart not showing on Website (#21905)
* fix: Item Price and Add to Cart not showing on Website

* fix: Use None as default argument
2020-05-25 18:26:42 +05:30
rohitwaghchaure
666dd27d42 Merge pull request #21911 from rohitwaghchaure/fixed-comparison-operator
fix: comparison operator
2020-05-25 16:39:37 +05:30
Rohit Waghchaure
410196974e fix: comparison operator 2020-05-25 16:38:22 +05:30
Rohan
b9d5c71405 fix: filter batches based on item and warehouse in Pick List (#21778)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-25 15:25:42 +05:30
Vishal Dhayagude
18b3c4802b fix: pound, gram to Ounce converion factor added (#21710)
* fix: pound, grams to Ounce converion factor added

* fix: patch date updated for UOM Conversion Factor

* fix: grams move to gram

* fix: duplicate entry of uom converion factor and patch added

* fix: typo fix

* fix: minor changes

* Update patches.txt

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-25 15:13:09 +05:30
rohitwaghchaure
cbe476d455 Merge pull request #21900 from rohitwaghchaure/fixed-stock-and-account-value-comparison-report-hotfix
fix: local variable 'lft' referenced before assignment
2020-05-25 12:50:50 +05:30
Rohit Waghchaure
b4b6b694af fix: local variable 'lft' referenced before assignment 2020-05-25 12:49:27 +05:30
rohitwaghchaure
aa299d0faf Merge pull request #21868 from rohitwaghchaure/delivery-date-not-allowed-to-change-after-submit
fix: allow on submit for the delivery date field not working for sale…
2020-05-25 11:11:11 +05:30
sahil28297
1f6c5c295f fix(patch): rerun remove_duplicate_leave_ledger_entries (#21874) 2020-05-22 15:52:46 +05:30
sahil28297
5d8dafc2ec fix(patch): rerun remove_duplicate_leave_ledger_entries (#21875) 2020-05-22 14:18:08 +05:30
Saurabh
34eb306e39 Merge pull request #21873 from frappe/sahil28297-patch-3
fix(patch): rerun remove_duplicate_leave_ledger_entries
2020-05-22 13:48:53 +05:30
sahil28297
439af124f9 fix(patch): rerun remove_duplicate_leave_ledger_entries 2020-05-22 13:42:55 +05:30
Sahil Khan
8abcf42e20 Merge branch 'v12-pre-release' into version-12 2020-05-22 13:37:26 +05:30
Sahil Khan
485f6cd7a2 bumped to version 12.9.2 2020-05-22 13:57:25 +05:50
Nabin Hait
5447decd9e fix: Remove duplicate leave ledger entry (#21870)
* fix: Remove duplicate leave ledger entry

* fix: Remove duplicate leave ledger entry
2020-05-22 13:13:09 +05:30
Nabin Hait
1287f16acd fix: Remove duplicate leave ledger entry (#21867) 2020-05-22 13:13:04 +05:30
Rohit Waghchaure
589c5335d1 fix: allow on submit for the delivery date field not working for sales order 2020-05-22 12:41:07 +05:30
Deepesh Garg
5f82999397 fix: Item tax template not getting mapped from source to traget doc (#21863) 2020-05-22 12:29:19 +05:30
Nabin Hait
115cedb8e9 fix: Remove duplicate leave ledger entry (#21864) 2020-05-22 12:27:19 +05:30
mergify[bot]
d2491e403b fix: convert goals point to flt (#21840) (#21858)
(cherry picked from commit 4c779300fd)

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-05-22 11:43:14 +05:30
mergify[bot]
44d6ce49b5 fix: expense account error message in DN (#21851) (#21856)
Changed error message if expense account not set for item in Delivery Note.
Earlier: Expense or Difference account is mandatory for Item IT - 6 as it impacts overall stock value
After fix: Expense Account not set for Item IT - 6. Please set an Expense Account for the item in the Items table

(cherry picked from commit 1763d3e706)

Co-authored-by: Michelle Alva <50285544+michellealva@users.noreply.github.com>
2020-05-22 11:06:19 +05:30
sahil28297
7b795734e8 Merge pull request #21855 from frappe/mergify/bp/v12-pre-release/pr-21846
fix: set customer and supplier details using sql (bp #21846)
2020-05-22 11:05:40 +05:30
Chinmay Pai
b6bbd0efcf fix: set customer and supplier details using sql (#21846)
* fix: set customer and supplier details using sql

instead of slowing down the query with get_doc and save()
we can just use sql to update the required values for
customer and supplier

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>

* chore: remove extra quote

Co-authored-by: Himanshu <himanshuwarekar@yahoo.com>

* fix: update sql query to include tabPrice List

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>

Co-authored-by: Himanshu <himanshuwarekar@yahoo.com>
(cherry picked from commit baef43977b)
2020-05-22 05:29:49 +00:00
mergify[bot]
7522e598db fix: set customer and supplier details using sql (#21846) (#21854)
* fix: set customer and supplier details using sql

instead of slowing down the query with get_doc and save()
we can just use sql to update the required values for
customer and supplier

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>

* chore: remove extra quote

Co-authored-by: Himanshu <himanshuwarekar@yahoo.com>

* fix: update sql query to include tabPrice List

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>

Co-authored-by: Himanshu <himanshuwarekar@yahoo.com>
(cherry picked from commit baef43977b)

Co-authored-by: Chinmay Pai <chinmaydpai@gmail.com>
2020-05-22 10:59:16 +05:30
Marica
5ec0289d98 fix: Added Inactive serial no status (#21850) 2020-05-22 10:49:07 +05:30
Marica
576374a8a7 fix: Added Inactive serial no status (#21849) 2020-05-22 10:49:00 +05:30
mergify[bot]
030abc14a4 fix(patch): Handle single value in patch (#21823) (#21833)
(cherry picked from commit 5cef8db4db)

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>
2020-05-21 18:57:24 +05:30
Anurag Mishra
4c779300fd fix: convert goals point to flt (#21840) 2020-05-21 18:47:30 +05:30
sahil28297
c5921c605f fix(set_serial_no_status): auto commit on many writes (#21841) 2020-05-21 18:46:42 +05:30
sahil28297
da23bb6bf4 fix(set_serial_no_status): auto commit on many writes (#21843) 2020-05-21 18:46:38 +05:30
Sahil Khan
0c303c4f54 Merge branch 'v12-pre-release' into version-12 2020-05-21 15:26:42 +05:30
Sahil Khan
746e879187 bumped to version 12.9.1 2020-05-21 15:46:42 +05:50
Suraj Shetty
a24362a83f Merge pull request #21836 from frappe/surajshetty3416-patch-1 2020-05-21 15:25:18 +05:30
Suraj Shetty
69a5a7f11e fix(patch): Handle single value in patch 2020-05-21 15:23:06 +05:30
Sahil Khan
d062a4b6b5 Merge branch 'v12-pre-release' into version-12 2020-05-21 15:00:37 +05:30
Sahil Khan
ab79a9554b bumped to version 12.9.0 2020-05-21 15:20:37 +05:50
rohitwaghchaure
3e5a65e090 Merge pull request #21829 from marination/italian-invoice-import-hotfix
fix: Supplier Invoice No not fetched in Import Supplier Invoice
2020-05-21 14:23:20 +05:30
rohitwaghchaure
f5d8d6e4e6 Merge pull request #21830 from marination/italian-invoice-import-pre-release
fix: Supplier Invoice No not fetched in Import Supplier Invoice
2020-05-21 14:22:36 +05:30
rohitwaghchaure
fae4805d3f Merge pull request #21826 from marination/pick-list-dn-pre-release
fix: Fetch customer into Delivery Note from Pick List
2020-05-21 14:20:31 +05:30
rohitwaghchaure
bc55dafdae Merge pull request #21825 from marination/pick-list-dn-hotfix
fix: Fetch customer into Delivery Note from Pick List
2020-05-21 14:19:05 +05:30
marination
cb74ff870d fix: Supplier Invoice No not fetched in Import Supplier Invoice 2020-05-21 14:06:57 +05:30
marination
d1458c6c0a fix: Supplier Invoice No not fetched in Import Supplier Invoice 2020-05-21 14:06:14 +05:30
marination
3c84ef3b5e fix: Fetch customer into Delivery Note from Pick List 2020-05-21 13:18:06 +05:30
marination
a8b2f222ea fix: Fetch customer into Delivery Note from Pick List 2020-05-21 13:17:22 +05:30
Marica
2894640d56 fix: plc conversion rate set infinitely (#21822) 2020-05-21 12:08:15 +05:30
Marica
ee1c3831bc fix: plc conversion rate set infinitely (#21821) 2020-05-21 12:08:04 +05:30
rohitwaghchaure
fc5f5c8fd9 Merge pull request #21819 from rohitwaghchaure/tax-template-not-applied-if-valid-from-blank-hotfix
fix: item tax template not applied if valid from is blank
2020-05-21 10:24:33 +05:30
rohitwaghchaure
a45ff8e3ba Merge pull request #21818 from rohitwaghchaure/tax-template-not-applied-if-valid-from-blank
fix: item tax template not applied if valid from is blank
2020-05-21 10:22:37 +05:30
Rohit Waghchaure
2caac24071 fix: item tax template not applied if valid from is blank 2020-05-21 10:15:03 +05:30
Rohit Waghchaure
74dd64501c fix: item tax template not applied if valid from is blank 2020-05-21 10:09:42 +05:30
Deepesh Garg
bd8b94c9dd Merge pull request #21816 from deepeshgarg007/trial_balance_project_filter_pre
fix: Project filter in Trial Baalance Report
2020-05-20 22:28:53 +05:30
Deepesh Garg
928bc96d76 Merge pull request #21815 from deepeshgarg007/trial_balance_project_filter_v12
fix: Project filter in Trial Baalance Report
2020-05-20 22:28:35 +05:30
Deepesh Garg
d1569b9581 fix: Project filter in Trial Baalance Report 2020-05-20 22:20:23 +05:30
Deepesh Garg
67c9f00917 fix: Project filter in Trial Baalance Report 2020-05-20 22:18:30 +05:30
mergify[bot]
c75303b0ab feat: remove website settings from boot (#21801) (#21809)
(cherry picked from commit e091789332)

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-05-20 18:24:05 +05:30
Anupam Kumar
ee56de3091 enable Allow Rename in sales stage (#21800) 2020-05-20 16:15:16 +05:30
Anupam Kumar
938cde30e3 enable Allow Rename in sales stage (#21803) 2020-05-20 16:14:58 +05:30
Marica
d53d6cabb4 fix: Validate Payment Gateway only if it exists in Payment Request. (#21806) 2020-05-20 16:13:38 +05:30
Marica
0550b3537d fix: Validate Payment Gateway only if it exists in Payment Request. (#21807) 2020-05-20 16:13:34 +05:30
Deepesh Garg
ea6f08cb26 Merge pull request #21798 from deepeshgarg007/general_ledger_against_voucher_v12_pre
fix: Against voucher in General Ledger
2020-05-20 11:32:13 +05:30
Deepesh Garg
96a05f65aa fix: Against voucher in General Ledger 2020-05-20 11:26:14 +05:30
rohitwaghchaure
0e63f4ba08 Merge pull request #21794 from deepeshgarg007/general_ledger_against_voucher_v12
fix: Against voucher in General Ledger
2020-05-20 10:30:20 +05:30
Deepesh Garg
74b943392b Merge pull request #21786 from anupamvs/sales-order-tax-hotfix
fix: tax id is not fetched when creating sales order from quotation
2020-05-19 21:49:34 +05:30
Anupam K
9245133b99 tax id is not fetched in when creating sales order from quoation 2020-05-19 21:37:19 +05:30
Deepesh Garg
05aae4341e fix: Against voucher in General Ledger 2020-05-19 20:59:51 +05:30
rohitwaghchaure
e85c3a50cd refactor: changed the fieldtype from data to small text (#21789) 2020-05-19 20:30:11 +05:30
Deepesh Garg
dc04d44a20 Merge pull request #21791 from deepeshgarg007/gst_1_instate_v1
fix: Tax amount in GSTR-1 JSON
2020-05-19 20:01:18 +05:30
Deepesh Garg
e2e5ba345c fix: Tax amount in GSTR-1 JSON 2020-05-19 19:56:51 +05:30
rohitwaghchaure
07924d3c7c refactor: changed the fieldtype from data to small text (#21783) 2020-05-19 19:05:17 +05:30
Deepesh Garg
bd29244d66 Merge pull request #21787 from deepeshgarg007/gst_1_instate
fix: Instate Invoice not appearing in GSTR-1 report
2020-05-19 19:04:11 +05:30
Deepesh Garg
b384ed74cd fix: Instate Invoice not appearing in GSTR-1 report 2020-05-19 18:53:08 +05:30
Shivam Mishra
72892a40d6 refactor: use text editor in issue web form (#21772) 2020-05-19 16:36:25 +05:30
Himanshu
8209507a8f fix: add naming series (#21775) 2020-05-19 16:02:41 +05:30
Himanshu
ca5384343f Merge pull request #21773 from scmmishra/issue-form-pre-12
refactor: use text editor in issue web form
2020-05-19 15:23:46 +05:30
Shivam Mishra
a4e92cf577 refactor: use text editor in issue web form 2020-05-19 15:12:18 +05:30
mergify[bot]
113048347c feat: save shipping address and contact to woocommerece customer (bp #21654) (#21771) 2020-05-19 14:36:29 +05:30
Himanshu
8b144a38cc fix: add naming series (#21770) 2020-05-19 14:27:01 +05:30
Nabin Hait
632c65cd59 chore: Added change log 2020-05-18 19:54:52 +05:30
Nabin Hait
70ab59f473 fix: merge conflict 2020-05-18 17:10:36 +05:30
Deepesh Garg
c4d6cca9f1 Merge pull request #21762 from frappe/mergify/bp/version-12-hotfix/pr-21761
fix: Validate Filters in Sales Funnel. (bp #21761)
2020-05-18 16:45:20 +05:30
Marica
795d318fcc fix: Validate Filters in Sales Funnel. (#21761)
* fix: Validate Filters in Sales Funnel.

* fix: Style fixes

(cherry picked from commit c734db5d45)
2020-05-18 09:15:45 +00:00
Himanshu
6dbb02d293 fix: show searchfields result (#21760) 2020-05-18 14:26:43 +05:30
rohitwaghchaure
ea4c91f51c fix: bom incorrect price list rate for raw material if price list currency is different from company currency (#21586)
* fix: bom incorrect price list rate for raw material if price list currency is different from company currency

* fixed test cases

* fixed base_rate calculation and added plc_conversion_rate trigger
2020-05-18 14:22:42 +05:30
Marica
395da09dae fix: Patch to set status in old serial no data (#21721)
* fix: Patch to set status in old serial no data

* fix: Avoid get_doc in patch

* fix: fetch all values and check status in one query
2020-05-18 11:18:56 +05:30
Raffael Meyer
9b08258955 fix: remove guest access (#21692) 2020-05-17 20:57:51 +05:30
rohitwaghchaure
7f2aedb67c fix: incorrect stock valuation for repack entry (#21737) 2020-05-17 20:28:21 +05:30
Anurag Mishra
1045dc49f5 fix: Future date half day validation (#21719)
* fix: Future date half day validation

* fix: Allow half day attendance only via leave application

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-05-17 20:17:39 +05:30
Deepesh Garg
a569fed4da Merge pull request #21746 from frappe/mergify/bp/version-12-hotfix/pr-21712
fix: error log title for failing bank transactions (bp #21712)
2020-05-16 17:15:05 +05:30
rohitwaghchaure
9af9b438af Merge pull request #21748 from rohitwaghchaure/fix-supplier-schema-save-issue-hotfix
fix: promotional scheme not able to save
2020-05-16 11:34:33 +05:30
Rohit Waghchaure
3e321d5c24 fix: promotional scheme not able to savce 2020-05-16 05:01:30 +05:30
Mangesh-Khairnar
e2f53cdc83 fix: error log title for failing bank transactions
(cherry picked from commit 4a9fd9ef6d)
2020-05-15 18:16:22 +00:00
Deepesh Garg
f9834504c8 Merge pull request #21745 from deepeshgarg007/coa_ux_v12
fix: Excel support and UX fixes for chart of accounts importer
2020-05-15 20:08:54 +05:30
Deepesh Garg
ec19926a97 Move logic for download template to dialog 2020-05-15 19:45:47 +05:30
Deepesh Garg
39790f05e7 fix: Linting fixes 2020-05-15 19:44:45 +05:30
Deepesh Garg
317b53a8b6 fix: Description on template selection 2020-05-15 19:44:36 +05:30
Deepesh Garg
101612e599 fix: Added template types for download 2020-05-15 19:44:27 +05:30
Deepesh Garg
838ed77797 fix: Blank chart preview 2020-05-15 19:44:18 +05:30
Deepesh Garg
8ff718249e fix: Linting Errors 2020-05-15 19:44:07 +05:30
Deepesh Garg
88c2ba54ab fix: Excel support and UX fixes for chart of accounts importer 2020-05-15 19:43:56 +05:30
rohitwaghchaure
a52fe009cc fix: user not able to view product (#21697) 2020-05-15 19:35:35 +05:30
Deepesh Garg
79b691fe18 fix: Better validation message for group accounts (#21726) 2020-05-15 19:23:16 +05:30
Deepesh Garg
29f1a219d1 Merge pull request #21743 from nextchamp-saqib/payment-remark-fix-v12
fix: update remark on submitting payment entry
2020-05-15 17:49:11 +05:30
Deepesh Garg
73e3ba2c30 Merge pull request #21744 from frappe/mergify/bp/version-12-hotfix/pr-21729
fix: Submit perm for other income and removed caching while getting hra and basic from company (bp #21729)
2020-05-15 17:47:10 +05:30
Nabin Hait
78f69e448b fix: Added submit permission in employee other income
(cherry picked from commit 200f80c3d3)
2020-05-15 11:28:08 +00:00
Nabin Hait
52890341d5 fix: Get basic and hra component from db, not from cache
(cherry picked from commit 10df3d5081)
2020-05-15 11:28:08 +00:00
Saqib Ansari
725684a0c3 fix: update remark on submitting payment entry 2020-05-15 16:39:45 +05:30
Deepesh Garg
dc59831aa9 Merge pull request #21700 from nextchamp-saqib/pur-inv-status-fix-v12
fix: purchase inv shows overdue for fraction of outstanding
2020-05-15 15:45:36 +05:30
Saqib Ansari
2fa841821a fix: add tests for set_status 2020-05-15 14:31:19 +05:30
rohitwaghchaure
3b14810564 Merge pull request #21714 from nextchamp-saqib/off-pos-tax-template-v12
fix: item tax template fetching in offline pos
2020-05-15 13:47:01 +05:30
Deepesh Garg
8ed066ba1f fix: Add misssing dimensions in GL entries (#21691)
* fix: Add misssing dimensions in GL entries

* fix: expnese_taxes_and_charges.json

* fix: Add project filter in trial balance report

* fix: Use current dimensions instead of dimensions from asset
2020-05-15 12:58:19 +05:30
Rohan
f344369068 format: better error messages for invalid coupon codes (v12) (#21598)
* format: better error messages for invalid coupon codes

* fix: remove unnecessary docstatus check
2020-05-15 12:09:16 +05:30
Mangesh-Khairnar
71d9a52a07 fix: duplicate leave expiry creation (#21506)
* fix: validate existing ledger entries to avoid duplicates

* patch: remove duplicate ledger entries created

* fix: consider only submitted ledger entries

* fix: delete duplicate leaves from the ledger

* fix: check if duplicate ledger entry exists

* chore: formatting changes

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-05-15 11:55:36 +05:30
Saqib Ansari
0af125f6fe fix: test 2020-05-15 05:26:41 +05:30
Saqib
b432f3358e fix: item price not fetching when customer is unset in item price (#21489)
* fix: item price not fetching when customer is unset in item price

* fix: item price of selling type has hidden supplier value

* fix: remove test variable

* fix: test

* Update erpnext/stock/get_item_details.py

Co-authored-by: Marica <maricadsouza221197@gmail.com>

* patch: invalid customer/supplier based on item price type

* fix: remove patches from develop branch

* fix: patch

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-15 04:25:10 +05:30
Saqib
441bb760ee Merge branch 'version-12-hotfix' into off-pos-tax-template-v12 2020-05-14 14:28:11 +05:30
Saqib
f69da75e33 Merge branch 'version-12-hotfix' into pur-inv-status-fix-v12 2020-05-14 14:27:44 +05:30
Saqib Ansari
12739ec464 fix: invalid conditional statement 2020-05-13 22:03:20 +05:30
Marica
6a317a8e78 fix: Add total rows in Report Purchase Order Items to be Received or Billed (#21711) 2020-05-13 18:58:03 +05:30
Saqib Ansari
cb1cc96210 fix: item tax template fetching in offline pos 2020-05-13 16:30:47 +05:30
Saqib Ansari
b47f5830f4 fix: purchase inv shows overdue for fraction of outstanding 2020-05-12 14:13:16 +05:30
mergify[bot]
855373a253 fix: Message for missing valuation rate (#21686) (#21688)
(cherry picked from commit 97715f2877)

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-11 21:26:18 +05:30
mergify[bot]
c8ed6b1e79 fix: Run income-tax-slab patch only if slab already exists in payroll period (#21684) (#21687)
(cherry picked from commit 85a89812a4)

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-05-11 19:29:18 +05:30
sahil28297
00bbc76605 fix(patch): use translated string while setting notification template (#21678) 2020-05-11 19:28:49 +05:30
rohitwaghchaure
0df4f1738c Merge pull request #21602 from anupamvs/lead-customer-issue-hotfix
fix: adding Email and Phone in Contact child table
2020-05-11 13:02:41 +05:30
rohitwaghchaure
12a2da49ee Merge pull request #21662 from marination/barcode-update-fix
fix: Item Barcode stays the same after updation.
2020-05-11 11:01:13 +05:30
rohitwaghchaure
65d6efdaee Merge pull request #21666 from anupamvs/assessment-issue-hotfix
fix: Assessment Plan not getting created
2020-05-11 07:17:28 +05:30
rohitwaghchaure
f861a3e720 Merge pull request #21603 from rohitwaghchaure/fix-completed-qty-in-work-order-hotfix
fix: work order operation completed qty
2020-05-11 07:07:16 +05:30
Deepesh Garg
767d17ce2f Merge pull request #21672 from deepeshgarg007/budget_variance_report_v12
Budget variance report v12
2020-05-10 17:31:41 +05:30
Deepesh Garg
0f455060ab fix: Formatting fixes 2020-05-10 17:27:29 +05:30
Kevin Chan
861f2726a2 fix: Simplify get_dimension_account_month_map
This commit updates get_dimension_account_month_map to no longer show
the actual expense when there is no budget. This also removes the other
functions and queries related to it. Spaces are also converted to tabs.
2020-05-10 17:27:01 +05:30
Kevin Chan
55640be627 fix: Fix Budget Variance Report
This commit fixes a bug in Budget Variance Report where it combines the
actual expense amounts across different fiscal years. This was fixed by
updating the function and queries for computing the actual expense
amounts.
2020-05-10 17:26:29 +05:30
Kevin Chan
d837b6cedc style: Improve formatting
This commit improves indentations and makes sql queries more readable.
2020-05-10 17:26:16 +05:30
Anupam K
27b2988938 Assessment Plan not getting created 2020-05-09 16:44:36 +05:30
Anupam K
c739c2d355 Appending Email and Phone in Child Table 2020-05-08 17:38:14 +05:30
marination
231f65ff59 fix: Item Barcode stays the same after updation. 2020-05-08 16:43:02 +05:30
Sahil Khan
626585e9f3 Merge branch 'v12-pre-release' into version-12 2020-05-08 15:42:18 +05:30
Sahil Khan
5afcc9c185 bumped to version 12.8.0 2020-05-08 16:02:18 +05:50
sahil28297
41ff2cb4a7 chore: correct link to documentation 2020-05-08 15:40:03 +05:30
sahil28297
664f536e9b chore: correct version for release note 2020-05-08 15:24:23 +05:30
Nabin Hait
923fcc7738 chore: Change log 2020-05-08 15:14:39 +05:30
rohitwaghchaure
368afc551d Merge pull request #21640 from MyuddinKhatri/lead-update-fix-hotfix
fix(crm): fix lead while updating contact details (hotfix)
2020-05-08 10:37:28 +05:30
rohitwaghchaure
3a328b0413 Merge pull request #21645 from anupamvs/lms-label-hotfix
fix: renaming LMS to Learning Management System
2020-05-08 10:29:54 +05:30
rohitwaghchaure
970b21075e Merge pull request #21650 from anupamvs/payment-order-hotfix
fix: Payment Order not allowing to create Payment Entry
2020-05-08 10:26:55 +05:30
Deepesh Garg
d769a2036b Merge pull request #21648 from ruchamahabal/remove-old-analytics-v12
fix: delete old appointment analytics tree grid report
2020-05-08 10:23:46 +05:30
Anupam K
56a3b9abc4 Payment Order not allowing to create Payment Entry 2020-05-08 02:25:09 +05:30
Rucha Mahabal
6844dd75da fix: delete old appointment analytics tree grid report 2020-05-07 23:40:17 +05:30
Anupam K
0b6ef55e78 renaming LMS to Learning Management System 2020-05-07 19:51:46 +05:30
sahil28297
9fa952d10e fix(patch): Reload GSTR 3B report 2020-05-07 19:28:33 +05:30
sahil28297
6d4f451d0d fix(patch): reload Expense Claim doctype 2020-05-07 19:28:17 +05:30
sahil28297
1c03d154ce fix(item): patch to rename duplicate item_code values to name (#21619) 2020-05-07 19:27:30 +05:30
Nabin Hait
2d430ec077 feat: Income tax slab (#21631)
* feat: Income tax slab (#21406)

* Feat: Multiple tax as per new taxation rule

* patch:for multiple tax slab, fix: payroll and exemption validation

* Test: Fixture

* feat: income tax slab with other charges and tax exempted deduction components

* fix: added missing init file

* fix: Patch fixed

* fix: Patch fixed

* fix: test fixes

* fix: validate duplicate exemption declaration

* fix: payment entry test case

Co-authored-by: Anurag Mishra <mishranaman123@gmail.com>

* fix: Income tax slab patch (#21448)

* fix: reload income_tax_slab_other_charges in patch

* fix: reload lower_deduction_certificate in patch

* fix: Consider any kind of exemptions only if tax exemptions are allowed on tax slab (#21475)

* fix: Tax calcualtion based on slab (#21497)

* fix: Desk links for Income Tax Slab and Employee Other Income (#21511)

* fix: patch

Co-authored-by: Anurag Mishra <mishranaman123@gmail.com>
2020-05-07 18:57:01 +05:30
Myuddin khatri
cd0fcfd84c solved merge conflicts 2020-05-07 16:11:08 +05:30
rohitwaghchaure
43118e3551 Merge pull request #21635 from TurkerTunali/patch-3
fix: Job Card submitted qty
2020-05-07 16:08:21 +05:30
Türker Tunalı
9bd6d119c4 fix: Job Card submitted qty
Update Operation Status function in work order was throwing exception without checking the "Overproduction Percentage For Work Order" setting. To submit Job Card qty for more than the Work Order's "To Manufacture Qty" we need to apply this fix.
2020-05-07 12:38:37 +03:00
sahil28297
2aa045865f fix(item): patch to rename duplicate item_code values to name (#21619) 2020-05-07 12:11:23 +05:30
rohitwaghchaure
ec3a462acd fix: list index out of range (#21614) 2020-05-07 12:06:05 +05:30
Deepesh Garg
a6066009aa Merge pull request #21520 from nextchamp-saqib/sales-report-total-row-v12
chore: add total row in sales analytics report
2020-05-06 10:50:53 +05:30
Deepesh Garg
60b19fe935 Merge branch 'version-12-hotfix' into sales-report-total-row-v12 2020-05-06 10:48:38 +05:30
Deepesh Garg
70b52c37d5 Merge pull request #21606 from frappe/sahil28297-patch-1
fix(patch): reload Expense Claim doctype
2020-05-05 20:21:23 +05:30
sahil28297
178ad9b4d6 fix(patch): reload Expense Claim doctype 2020-05-05 20:07:48 +05:30
Rohit Waghchaure
b4311a41c5 fix: work order operation completed qty 2020-05-05 16:36:31 +05:30
Anupam K
c6e0dbb1c4 Appending Email and Phone in Child Table 2020-05-05 16:26:05 +05:30
rohitwaghchaure
d476eb79b4 fix: against voucher no not all records showing in case of Group By Voucher (consolidated) (#21591) 2020-05-05 16:17:03 +05:30
Saqib
10ea82001f chore: fix error message (#21594)
* chore: fix error message

* chore: add row idx
2020-05-05 16:14:12 +05:30
Saqib
794bb6ebdd fix: handle make_gl_entry in case of cwip enable after puchasing (#21530)
* fix: handle make_gl_entry in case of cwip enable after puchasing

* fix: invalid variable assignment

* fix: make gl entries if cwip has been booked even if cwip is disabled
* add tests

* fix: conditions

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-05-05 16:12:10 +05:30
Saqib Ansari
c3a9513978 fix: test 2020-05-04 20:24:30 +05:30
Deepesh Garg
a4a019f9d9 Merge pull request #21584 from frappe/sahil28297-patch-3
fix(patch): Reload GSTR 3B report
2020-05-04 19:26:46 +05:30
sahil28297
67ed21d443 fix(patch): Reload GSTR 3B report 2020-05-04 19:23:26 +05:30
rohitwaghchaure
c89d750e5c fix: heatmap not working for customer and supplier (#21579) 2020-05-04 18:53:26 +05:30
mergify[bot]
c253f0621d fix: fieldname update for 'Credit' and 'Debit' (#21405) (#21577)
* fix: fieldname update for 'Credit' and 'Debit'

'credit' updated to 'credit_in_account_currency'
'debit' updated to 'debit_in_account_currency'

* Update journal_entry.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
(cherry picked from commit f7a0b8b5b6)

Co-authored-by: Andy Zhu <andy007yan@gmail.com>
2020-05-04 12:40:39 +05:30
Deepesh Garg
3202b0a486 fix: Accounting Dimensions in Period Closing Voucher (#21565) 2020-05-04 11:12:19 +05:30
Rucha Mahabal
4a37ee8908 fix(Healthcare): remove hardcoded UOM during Item creation for templates (#21575) 2020-05-04 11:09:19 +05:30
Rucha Mahabal
bdbfd2ad0c fix: handle exception if sending Appointment Confirmation message fails (#21568) 2020-05-04 11:07:10 +05:30
Deepesh Garg
933d1262f2 Merge pull request #21376 from marination/commonify-warehouse-autofill-hotfix
chore: Commonify autofilling warehouses in child tables
2020-05-03 20:34:20 +05:30
rohitwaghchaure
c4752e36eb Merge pull request #21517 from marination/stock-balance-cleanup-hotfix
chore: Added company filter and minor cleanup in Stock Balance Report
2020-05-03 16:31:58 +05:30
Saqib Ansari
0da919c091 fix: test 2020-05-03 14:53:40 +05:30
Saqib
12b5d72e70 chore: add validation for gross purchase amount (#21535)
* chore: add validation for gross purchase amount

* fix: tests
2020-05-03 13:20:30 +05:30
Saqib Ansari
272d2bc0b3 fix: review fixes 2020-05-02 19:51:09 +05:30
Saqib Ansari
55b7904e2f fix: incorrect total in sales analytics for customer/item group 2020-05-02 19:39:42 +05:30
Marica
ed709b36b4 fix: variable referenced before assignment (#21561) 2020-05-02 17:55:47 +05:30
Saqib
bf1fc47564 fix: accounts payable shows advance amount of other company (#21549) 2020-05-01 18:15:20 +05:30
Deepesh Garg
db6953dc78 fix: Party Type filter in payment entry list view (#21542) 2020-05-01 15:01:04 +05:30
rohitwaghchaure
438e0f5d49 fix: 'NoneType' object is not iterable (#21538) 2020-05-01 10:50:02 +05:30
rohitwaghchaure
5a9476e0d4 Merge pull request #21502 from nextchamp-saqib/validate-paid-inv-msg-v12
chore: validate and warn payment against paid invoices
2020-05-01 10:37:32 +05:30
marination
f77a735469 fix: Make Company the first filter 2020-05-01 00:04:49 +05:30
Saqib Ansari
4451b7eda9 chore: calculate total row month-wise in sales analytics 2020-04-30 20:07:12 +05:30
mergify[bot]
426f0bc168 fix: only check for payment_account on bank entry (#21445) (#21518)
* fix: only check for payment_account on bank entry

Since all the fields (company, start and end date are mandatory before form submission, there is no need to check for them again after submission.

* fix: cur_frm to frm

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
(cherry picked from commit 95b186268c)

Co-authored-by: Michelle Alva <50285544+michellealva@users.noreply.github.com>
2020-04-30 19:53:59 +05:30
Saqib
a8b87ccce0 chore: asset accounts should have company currency (#21525) 2020-04-30 18:39:16 +05:30
Saqib Ansari
c31fc19f08 chore: add total row in sales analytics report 2020-04-30 16:29:21 +05:30
marination
5e817b2aee chore: Added company filter and minor cleanup in Stock Balance Report 2020-04-30 14:05:24 +05:30
Saqib Ansari
393857d7de chore: handle credit note validation 2020-04-30 13:24:51 +05:30
Saqib
0ffff47b64 feat: force cost center renaming from cost center form (#21504) 2020-04-30 11:29:03 +05:30
Saqib
6397590f07 fix: list index out of range error (#21468)
* fix: list index out of range error

* fix: condition
2020-04-30 11:04:51 +05:30
Nabin Hait
2620ac31f9 fix: Desk links for Income Tax Slab and Employee Other Income (#21511) 2020-04-30 11:03:57 +05:30
Nabin Hait
22c4f82fc6 fix: Tax calcualtion based on slab (#21497) 2020-04-30 11:03:01 +05:30
Nabin Hait
ae5414fced fix: Consider any kind of exemptions only if tax exemptions are allowed on tax slab (#21475) 2020-04-30 11:02:45 +05:30
Saqib
61584c8601 fix: print heading field shown in gst section for india region (#21500)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-04-30 10:58:01 +05:30
rohitwaghchaure
99dfe6c571 Merge pull request #21469 from Alchez/v12-update-lead-contact
fix: update lead if contact details are changed (v12)
2020-04-29 22:14:24 +05:30
Saqib Ansari
fd1ab37bc8 chore: validate and warn payment against paid invoices 2020-04-29 15:20:05 +05:30
Rohan Bansal
bd969477b1 fix: AttributeError 2020-04-29 13:09:16 +05:30
Deepesh Garg
a816788039 Merge pull request #21494 from deepeshgarg007/item_wise_sale_purchase_v12
fix: Group by filter fix in item wise sales and purchase register
2020-04-29 12:36:22 +05:30
Deepesh Garg
c099a410c8 fix: Group by filter fix in item wise sales and purchase register 2020-04-29 12:21:52 +05:30
Anurag Mishra
e33c44ae33 fix: Permission issue Employee Tax exemption (#21492) 2020-04-29 12:13:26 +05:30
Marica
4930233bbe Merge branch 'version-12-hotfix' into commonify-warehouse-autofill-hotfix 2020-04-29 11:36:48 +05:30
Deepesh Garg
e383727394 Merge pull request #21487 from rohitwaghchaure/not-able-to-make-payment-request-against-fees-hotfix
fix: payment request not able to make against fees
2020-04-29 09:36:55 +05:30
Rohit Waghchaure
3d2dcd8c59 fix: payment request not able to make against fees 2020-04-29 02:29:43 +05:30
Deepesh Garg
6647f45eb5 Merge pull request #21477 from deepeshgarg007/duplicate_code_v12
fix: Remove duplicate code from accounting dimension
2020-04-28 20:32:36 +05:30
Deepesh Garg
bd9625d150 fix: Remove duplicate code from accounting dimension 2020-04-28 20:26:56 +05:30
marination
c832291bd6 fix: Handle empty child table 2020-04-28 19:23:13 +05:30
Rohan Bansal
7c67c38bc5 fix: update lead if contact details are changed 2020-04-28 16:12:02 +05:30
Rucha Mahabal
8076deb080 Merge pull request #21465 from akurungadam/patch-3
fix: clinical procedure - set stock entry type
2020-04-28 15:37:30 +05:30
Anoop
dd8566ecde fix: clinical procedure - set stock entry type
clinical procedure - complete and consume - set stock entry type to "Material Issue"

report -
https://discuss.erpnext.com/t/cant-complete-and-consume/60927
2020-04-28 14:52:10 +05:30
Marica
fa7d496413 fix: Blanket Order in SO/PO child tables (#21444) 2020-04-28 13:00:51 +05:30
Deepesh Garg
3b8ad79445 Merge pull request #21458 from deepeshgarg007/gross_profit_width_v12
fix: Default column width in Gross profit report
2020-04-28 12:36:00 +05:30
Deepesh Garg
558c3284a0 fix: Default column width in Gross profit report 2020-04-28 12:03:05 +05:30
Nabin Hait
95f7807b78 fix: Income tax slab patch (#21448)
* fix: reload income_tax_slab_other_charges in patch

* fix: reload lower_deduction_certificate in patch
2020-04-28 11:15:57 +05:30
Deepesh Garg
6ece7fe265 Merge pull request #21438 from deepeshgarg007/ewb_bill_error_message_v12
fix: E-Way bill error message
2020-04-27 15:04:45 +05:30
Deepesh Garg
5aa2241439 fix: Test 2020-04-27 14:06:38 +05:30
Deepesh Garg
68d7b77314 fix: Utils messsage cleanup 2020-04-27 11:16:39 +05:30
Deepesh Garg
93e8b5d87e fix: E-way bill fix in List view 2020-04-27 11:15:23 +05:30
Deepesh Garg
6b082b5edb fix: E-way bill fix in sales invoice 2020-04-27 11:15:04 +05:30
Rucha Mahabal
093720b870 fix: add hook for sending appointment reminders in v12 (#21432) 2020-04-27 10:36:11 +05:30
Rucha Mahabal
e1697fd9cc Merge pull request #21429 from akurungadam/patch-2
fix: name 'patient' is not defined
2020-04-27 00:42:39 +05:30
Anoop
c2f952045c fix: name 'patient' is not defined
possible escape while refactoring, fixed in develop added here.

Reported via -
https://discuss.erpnext.com/t/healthcare-outpatient-sms-alert-error/60812
2020-04-27 00:33:26 +05:30
Nabin Hait
2b5bca4ce6 fix: Procurement tracker report (#21422)
* fix: procurement report data was not coming

* fix: leave allocation minor issue
2020-04-26 23:28:54 +05:30
Himanshu
de6f0f7a05 fix: add quality inspection template (#21424) 2020-04-26 23:27:29 +05:30
Anurag Mishra
1f3584b9a8 refactor: employee leave balance report v12 (#21282)
* fix: Employee Balance repor fixes

* refactor: Employee Leave Balance report For Version-12

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-04-26 21:05:09 +05:30
Deepesh Garg
5bfdf0af4d feat: Allow tax withholding category selection at invoice level (#20871)
* feat: Allow tax withholding category selection at invoice level

* fix: Linitng fixes

* feat: TDS calculation using common PAN

* fix: Add provision to deduct Lower TDS in purchase invoice

* fix: Consider only ref docs company while computing TDS

* fix: Default permission fixes

* fix: Add validation for dates in fiscal year

* fix: Undefined variable
2020-04-26 20:10:16 +05:30
rohitwaghchaure
14a50a9403 Merge pull request #21390 from marination/stock-entry-qty-hotfix
fix: Issues on qty trigger in Stock Entry Detail
2020-04-26 18:00:07 +05:30
marination
b724fec6c9 fix: Remove callback outside if condition 2020-04-26 17:18:41 +05:30
Nabin Hait
1d5ea4feee feat: Income tax slab (#21406)
* Feat: Multiple tax as per new taxation rule

* patch:for multiple tax slab, fix: payroll and exemption validation

* Test: Fixture

* feat: income tax slab with other charges and tax exempted deduction components

* fix: added missing init file

* fix: Patch fixed

* fix: Patch fixed

* fix: test fixes

* fix: validate duplicate exemption declaration

* fix: payment entry test case

Co-authored-by: Anurag Mishra <mishranaman123@gmail.com>
2020-04-26 12:37:52 +05:30
Saqib
7fedff260d fix: (ux) set jv voucher type depending on mode of payment (#21412) 2020-04-26 09:41:02 +05:30
rohitwaghchaure
9fc78e44ea Merge pull request #21402 from DeeMysterio/hotfix-si-actual-qty
feat(accounting): show actual qty for warehouse in sales invoice
2020-04-25 01:19:04 +05:30
Diksha Jadhav
be97087d32 feat(accounting): show actual qty for warehouse in sales invoice 2020-04-24 21:09:59 +05:30
Rucha Mahabal
b0f829e541 Merge pull request #21381 from anupamvs/email-camp-end-date-hotfix
fix: set end_date in Email Campaign
2020-04-24 20:44:18 +05:30
Rucha Mahabal
0455a96dcd Merge branch 'version-12-hotfix' into email-camp-end-date-hotfix 2020-04-24 20:04:55 +05:30
Deepesh Garg
d771ba2895 Merge pull request #21398 from nextchamp-saqib/tax-breakup-for-cn-v12
fix: show positive taxes in credit notes
2020-04-24 19:01:46 +05:30
rohitwaghchaure
c8e5b42dba Merge pull request #21395 from nextchamp-saqib/price-rule-fix
fix: rate gets overwritten when pricing rule is set
2020-04-24 16:46:47 +05:30
Saqib Ansari
424dbef139 fix: rate gets overwritten when pricing rule is set 2020-04-24 16:40:03 +05:30
Saqib Ansari
6256ca81b1 fix: show positive taxes in credit notes 2020-04-24 16:01:11 +05:30
marination
fda451f3e3 fix: Issues on qty trigger in Stock Entry Detail 2020-04-23 20:35:18 +05:30
Rucha Mahabal
2307385210 Merge branch 'version-12-hotfix' into email-camp-end-date-hotfix 2020-04-23 19:42:04 +05:30
Deepesh Garg
bd4b5da11b feat: Payment allocation based on payment terms (#20946)
* feat: Payment allocation based on payment terms

* fix: Add desccription for checkbox

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-04-23 16:09:08 +05:30
Sahil Khan
7ed7c3237a Merge branch 'v12-pre-release' into version-12 2020-04-23 13:55:06 +05:30
Sahil Khan
522cf08f67 bumped to version 12.7.1 2020-04-23 14:15:06 +05:50
Anupam K
ef7f9c6ecc Review changes 2020-04-23 13:45:19 +05:30
Anupam K
097c643a59 setting end date in email campaign 2020-04-23 12:29:00 +05:30
Deepesh Garg
dd560d676e fix: Budget against accounting dimensions (#21269)
* fix: Budget warning against custom accounting dimension

* fix: Codacy
2020-04-23 10:35:35 +05:30
rohitwaghchaure
794fd75ca1 fix: bom update cost is not working (#21348)
* fix: bom update cost is not working

* added test case for bom cost
2020-04-23 09:48:31 +05:30
rohitwaghchaure
015e1c123c fix: patch and validation message to fix target warehouse issue (#21370) 2020-04-23 09:46:12 +05:30
rohitwaghchaure
f49e66e721 fix: BOM stock report (#21377)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-04-23 09:45:26 +05:30
rohitwaghchaure
8fd1e08763 fix: incorrect out value in stock balance due to precision issue (#21378) 2020-04-23 09:44:54 +05:30
marination
c5d108c954 chore: Commonify autofilling warehouses in child tables 2020-04-23 00:38:19 +05:30
rohitwaghchaure
f2c43ca81e fix: patch and validation message to fix target warehouse issue (#21359) 2020-04-22 16:08:36 +05:30
Deepesh Garg
9d6ee99d99 Merge pull request #21368 from scmmishra/cal-report-12
fix: specify column width
2020-04-22 12:03:35 +05:30
Shivam Mishra
0578cf5a73 fix: specify column width 2020-04-22 11:53:18 +05:30
Michelle Alva
499f9198b9 fix: better error message due date (#21366) 2020-04-22 11:37:09 +05:30
Deepesh Garg
4daab871d5 Merge pull request #21354 from anupamvs/error-message-changes-hotfix
fix: Add better error message
2020-04-22 09:28:16 +05:30
Deepesh Garg
17585710b2 Merge pull request #21360 from rohitwaghchaure/fixed-unsupported-operand-type-issue
fix: unsupported operand type issue in pricing rule
2020-04-22 08:43:29 +05:30
Rohit Waghchaure
56e7887511 fix: unsupported operand type issue in pricing rule 2020-04-22 02:45:55 +05:30
Anupam K
08c782709a Better error message 2020-04-21 17:03:56 +05:30
Anupam Kumar
fb20982194 fix: on item change UOM not updated (#21254)
* fix: on item change UOM not updated

* removing uom from js
2020-04-21 12:57:08 +05:30
Marica
9453add3dd fix: Re-order Item Error Email format (#21343)
* fix: Re-order Item Error Email format

* fix: Translated strings
2020-04-21 12:53:17 +05:30
rohitwaghchaure
c62cf98d7e fix: scrap items order not showing correctly in stock entry (#21347) 2020-04-21 11:26:49 +05:30
rohitwaghchaure
ea8e302833 Merge pull request #21339 from scmmishra/issue-list-context-12
fix: filters as dictionary
2020-04-21 01:25:34 +05:30
rohitwaghchaure
5d3fd9dc43 Merge pull request #21344 from rohitwaghchaure/fixed_free_item_qty_hotfix
fix: free item quantity issue
2020-04-21 01:08:13 +05:30
rohitwaghchaure
c9ba147615 Merge pull request #21323 from marination/pick-list-enhance-hotfix
Pick list enhance hotfix
2020-04-21 01:07:50 +05:30
Rohit Waghchaure
7ef57533ec fix: free item quantity issue 2020-04-21 00:19:19 +05:30
gavin
712abe4cd2 Merge pull request #21338 from gavindsouza/tally-migration-fixes-v12
fix: Tally migration
2020-04-20 19:30:40 +05:30
Shivam Mishra
1a93977ef7 fix: filters as dictionary 2020-04-20 13:56:20 +05:30
Gavin D'souza
fc078c1d45 style: removed unused imports and updated formatting 2020-04-20 12:57:59 +05:30
Gavin D'souza
77532b96b8 fix: strip data fields of whitespaces 2020-04-20 12:57:48 +05:30
Gavin D'souza
4171c5ceeb fix(tally-migration): DocType improvement 2020-04-20 12:57:36 +05:30
Gavin D'souza
fa07e0fb9d fix: handle errors in enqueued methods and update status 2020-04-20 12:57:24 +05:30
Raffael Meyer
e80702b6c2 fix(regional): backport DATEV fix (#21281)
* fix: quote nonnumeric values

* fix(DATEV Settings): restrict max length of IDs

* fix: display Columns as Dynamic Link instead of as Data

* fix: add column "Belegfeld 1"

* fix: truncate column Buchungstext to 60 chars

* fix: make header compatible to current DATEV Format 7.00

* fix: column names and descriptions
2020-04-19 20:16:18 +05:30
Nabin Hait
7345b8494d fix: removed unwanted method call from scheduler 2020-04-19 19:29:47 +05:30
Nabin Hait
5817adbb64 fix: Valid warehouse in woocommerce syncing and other small fixes (#21332)
* fix: Valid warehouse in woocommerce syncing

* fix: dmall fixes in gross & net profit report

* fix: company is required for getting party details

* fix: None issue while getting raw material rate based on last purchase rate
2020-04-19 19:28:32 +05:30
Anoop
4de4cb055f fix: removed reference to method not in version-12 (#21335)
removed scheduler event incorrectly added in this version.

as reported on discuss -
https://discuss.erpnext.com/t/internal-server-error-and-healthcare-module-missing/60479/6?u=akurungadam
2020-04-19 19:26:31 +05:30
Deepesh Garg
19c841eb64 fix: Total amount field ordering in transactions (#21315) 2020-04-18 22:14:14 +05:30
Deepesh Garg
5f10e0ac26 Merge pull request #21329 from rohitwaghchaure/fixed-account-name-in-gl_print-hotfix
fix: account name not showing in the gl print
2020-04-18 20:41:03 +05:30
Rohit Waghchaure
64bb910015 fix: account name not showing in the gl print 2020-04-18 19:04:20 +05:30
marination
6b7848232c fix: Use reload_doc in patch 2020-04-17 21:49:25 +05:30
marination
b9df3793fb fix: Commonified code and added server side validation 2020-04-17 21:47:58 +05:30
marination
09f95858c0 fix: Added patch to patches.txt 2020-04-17 21:47:41 +05:30
marination
fcd7548220 fix: Pick List Enhancements 2020-04-17 21:45:58 +05:30
sahil28297
9989bfe2dc Merge pull request #21322 from Thunderbottom/gl-entry-fix
fix: add label to gl entry
2020-04-17 20:26:23 +05:30
Mangesh-Khairnar
4af9ab702f fix: add label to gl entry 2020-04-17 20:22:28 +05:30
Deepesh Garg
b882d7046b Merge pull request #21321 from Mangesh-Khairnar/gl-entry-label-fix
fix: add label to gl entry
2020-04-17 19:59:19 +05:30
Mangesh-Khairnar
b33f82d4e8 fix: add label to gl entry 2020-04-17 19:55:20 +05:30
rohitwaghchaure
e8bd7c0233 Merge pull request #21317 from sahil28297/fix_italy_einvoicing_v12_pre_release
fix(patch): reload 'Import Supplier Invoice' doc
2020-04-17 13:33:55 +05:30
rohitwaghchaure
cfb00fb887 Merge pull request #21314 from sahil28297/fix_italy_einvoicing_v12_hotfix
fix(patch): reload 'Import Supplier Invoice' doc
2020-04-17 13:29:12 +05:30
rohitwaghchaure
2128dc8d87 Merge pull request #21316 from sahil28297/fix_italy_einvoicing_v12
fix(patch): reload 'Import Supplier Invoice' doc
2020-04-17 13:28:22 +05:30
Sahil Khan
46ae415923 fix(patch): reload 'Import Supplier Invoice' doc 2020-04-17 13:24:28 +05:30
Sahil Khan
21b34b9607 fix(patch): reload 'Import Supplier Invoice' doc 2020-04-17 13:22:28 +05:30
Sahil Khan
44f0c077ff fix(patch): reload 'Import Supplier Invoice' doc 2020-04-17 13:15:15 +05:30
Sahil Khan
d959463cbc Merge branch 'v12-pre-release' into version-12 2020-04-17 11:27:54 +05:30
Sahil Khan
e6d02ecd7f bumped to version 12.7.0 2020-04-17 11:47:54 +05:50
Nabin Hait
3b2aa5ead3 fix: requested qty for customer provided item and rate for sales (#21300)
* fix: requested qty for customer provided item and rate for sales

* fix: requested qty for material transfer

* fix: customer provided item can be sales item

* fix: requested qty test cases
2020-04-17 10:52:23 +05:30
Nabin Hait
4770626bbd fix: requested qty for customer provided item and rate for sales (#21301)
* fix: requested qty for customer provided item and rate for sales

* fix: requested qty for material transfer

* fix: customer provided item can be sales item

* fix: requested qty test cases
2020-04-17 10:52:18 +05:30
rohitwaghchaure
df045e9f6d Merge pull request #21308 from rohitwaghchaure/fixed_job_card_time_issue_pre_release
fix: job card timer issue
2020-04-17 00:56:16 +05:30
rohitwaghchaure
2c045179a3 Merge pull request #21310 from rohitwaghchaure/fixed_timer_issue_version_12_hotfix
fix: job card timer issue
2020-04-17 00:55:50 +05:30
Rohit Waghchaure
da83af1213 fix: job card timer issue 2020-04-17 00:54:20 +05:30
Rohit Waghchaure
c10c920914 fix: job card time issue 2020-04-17 00:48:08 +05:30
rohitwaghchaure
61fc2d3263 fix: job card time issue (#21306) 2020-04-16 23:57:49 +05:30
rohitwaghchaure
a66be0f5c5 Merge pull request #21295 from nabinhait/b12-7-pre-release-fix1
fix: requested qty calculation and some other small fixes
2020-04-16 19:19:17 +05:30
rohitwaghchaure
fd99cc8494 Merge pull request #21294 from nabinhait/b12-7-pre-release-1
fix: requested qty calculation and some other small fixes
2020-04-16 19:18:54 +05:30
Nabin Hait
cf1f777ae2 Merge branch 'version-12-hotfix' into b12-7-pre-release-fix1 2020-04-16 19:08:35 +05:30
Nabin Hait
9ea9ed4256 Merge branch 'v12-pre-release' into b12-7-pre-release-1 2020-04-16 19:07:45 +05:30
Deepesh Garg
c7b5309dcd Merge pull request #21105 from nextchamp-saqib/asset-cat-validation-v12
fix: no server side validations for accounts in asset category
2020-04-16 16:25:37 +05:30
Saqib
65eea97e0c fix: serial and batch selection from delivery note bug fix (#21293) 2020-04-16 16:22:16 +05:30
Saqib
45d454b14d fix: serial and batch selection from delivery note bug fix (#21292) 2020-04-16 16:21:54 +05:30
Saqib Ansari
f390b8062c fix: incorrect transalation 2020-04-16 16:16:58 +05:30
Nabin Hait
90adf076f3 fix: Made received qty readonly and no-copy 2020-04-16 14:30:26 +05:30
Nabin Hait
2b6942d9ce fix: Made release date mandatory 2020-04-16 14:30:18 +05:30
Nabin Hait
4dca806737 fix: requested qty calculation fix for UOM 2020-04-16 14:28:22 +05:30
Nabin Hait
bd57cbda03 fix: requested qty calculation fix for UOM 2020-04-16 14:27:25 +05:30
Nabin Hait
31c8f8e795 chore: added change log v12.7.0 (#21289) 2020-04-16 12:46:42 +05:30
Nabin Hait
ccfc005932 fix: Made received qty readonly and no-copy 2020-04-16 11:25:15 +05:30
Nabin Hait
b4dfc8e1bf fix: Made release date mandatory 2020-04-16 11:24:43 +05:30
Deepesh Garg
3379cac956 Merge branch 'version-12-hotfix' into asset-cat-validation-v12 2020-04-16 11:23:21 +05:30
Deepesh Garg
ed48755a6f Merge pull request #21266 from vishdha/chart_account_hotfix
fix: Chart of account importer UX improved
2020-04-16 11:21:44 +05:30
vishdha
c43e759b87 fix: fix Transalation 2020-04-16 11:12:52 +05:30
rohitwaghchaure
05e9af60bd Merge pull request #21284 from marination/stock-entry-get-items-mr-hotfix
fix: Fetch Material Requests with type Issue as well in Stock Entry via Get Items from
2020-04-16 00:33:15 +05:30
Marica
3635b17f22 Merge pull request #21287 from nextchamp-saqib/warehouse-fix-pre-release
fix: warehouse unset when cannot find item warehouse
2020-04-15 23:56:39 +05:30
Marica
de9220568e Merge pull request #21286 from nextchamp-saqib/warehouse-fix
fix: warehouse unset when cannot find item warehouse
2020-04-15 23:55:52 +05:30
Saqib Ansari
5d3e211531 fix: warehouse unset when cannot find item warehouse
* cannot set delivery date when all items gets deleted and new are added
2020-04-15 22:10:00 +05:30
Saqib Ansari
bde676ef74 fix: pos not accessible without default customer 2020-04-15 22:09:50 +05:30
Saqib Ansari
4879858657 fix: warehouse unset when cannot find item warehouse
* cannot set delivery date when all items gets deleted and new are added
2020-04-15 22:08:12 +05:30
Saqib Ansari
773eb6ce68 fix: pos not accessible without default customer 2020-04-15 22:08:04 +05:30
marination
8e1201d31e fix: Fetch Material Requests with type Issue as well in Stock Entry via Get Items from 2020-04-15 21:25:12 +05:30
rohitwaghchaure
18a04a24b3 Merge pull request #21278 from marination/default-item-manufacturer-pre-release
feat: Provision to set Default Item Manufacturer
2020-04-15 16:47:47 +05:30
marination
64f053d583 feat: Provision to set Default Item Manufacturer
- Is Default checkbox added in Item Manufacturer
- Default Item Manufacturer and Part No fields added to Item Master
- Manufacturer Part No field editable in all child tables with validation
- Manufacturer and Part No auto fetched via get_item_details in child table
2020-04-15 16:43:41 +05:30
rohitwaghchaure
bf401290d1 Merge pull request #21218 from marination/default-item-manufacturer-hotfix
feat: Provision to set Default Item Manufacturer
2020-04-15 16:36:01 +05:30
Nabin Hait
1fc8de32f1 fix: merge conflict 2020-04-14 20:31:50 +05:30
rohitwaghchaure
09f6199b36 fix: pick list test (#21267) 2020-04-14 19:43:26 +05:30
Rohan
b0f000b1c8 fix: order_type validation restriction (#18096) (#21264)
Co-authored-by: Don-Leopardo <46027152+Don-Leopardo@users.noreply.github.com>
2020-04-14 19:42:21 +05:30
Nabin Hait
49b653b444 fix: merge conflict 2020-04-14 19:34:48 +05:30
Nabin Hait
107229de04 fix: Fixed expense claim payment status 2020-04-14 19:33:05 +05:30
vishdha
af33f71562 fix: message bold 2020-04-14 17:20:48 +05:30
vishdha
25c26b5904 fix: Chart of account importer UX improved 2020-04-14 17:20:48 +05:30
Deepesh Garg
1112bd0f23 Merge pull request #21260 from Alchez/v12-stock-available-order-desk
fix: [minor] show stock UOM in POS (v12)
2020-04-14 17:00:49 +05:30
rohitwaghchaure
8c931e4185 Merge pull request #21263 from rohitwaghchaure/fixed_stock_reco_test_case
fix: stock reco test case
2020-04-14 14:50:49 +05:30
Rohit Waghchaure
5771aabc49 fix: stock reco test case 2020-04-14 14:49:47 +05:30
Rohan Bansal
954c6540fd fix: show stock UOM in POS 2020-04-14 14:22:10 +05:30
rohitwaghchaure
4eea8bd2c0 fix: on changing qty free item not removed (#21250) 2020-04-14 12:49:38 +05:30
Marica
335d35a988 fix: Lead Contact with blank first name via Customer (#21248) 2020-04-14 11:53:00 +05:30
Faris Ansari
2833db559e fix: Set Price List in case of User Permissions (#21238)
Frontport of #18968
2020-04-14 11:50:54 +05:30
rohitwaghchaure
3d667bfe55 fix: minor issues (#21203) 2020-04-14 11:48:56 +05:30
Marica
7841653a03 fix: Project Update Email Error (#21209)
* fix: Project Update Email Error

* fix: Removed mandatory depends on

Co-authored-by: Himanshu <himanshuwarekar@yahoo.com>
2020-04-14 11:47:22 +05:30
Saqib
02a9b5a8a5 chore: hide redundant base received amount (#21229)
* fix: formatting

* chore: hide redundant base received amount
2020-04-14 11:45:56 +05:30
Vishal Dhayagude
4b1d0d19fb fix: str object not callable (#21228) 2020-04-14 11:42:22 +05:30
Mangesh-Khairnar
8b31e3ec2a fix: consider revereted expired leaves entry (#21256) 2020-04-14 09:33:53 +05:30
Marica
b2ba5dbd6a Merge pull request #21214 from vishdha/batch_message
fix(UX): batch error message improved
2020-04-13 15:38:59 +05:30
Marica
b2a9413c06 Merge branch 'version-12-hotfix' into batch_message 2020-04-13 13:20:43 +05:30
vishdha
1b15734bd8 fix: batch message ux improved 2020-04-13 12:36:54 +05:30
Deepesh Garg
725d6b235f Merge pull request #21241 from mujeerhashmi/v12_gstr_3b_report_fix
fix: GSTR 3B Report tax amount calculation
2020-04-13 11:05:24 +05:30
Syed Mujeer Hashmi
87c6b6d12f fix: GSTR 3B Report tax amount calculation
The tax amount after discount amount should be considered for tax
calculation.

Fixes #21231

Signed-off-by: Syed Mujeer Hashmi <mujeerhashmi@4csolutions.in>
(cherry picked from commit 58a16f1a3b)
2020-04-11 22:56:00 +05:30
Deepesh Garg
703e20df79 Merge pull request #21178 from nextchamp-saqib/purchase-register-filters-v12
feat: (minor) purchase register filters
2020-04-11 18:12:20 +05:30
Saqib Ansari
ae8a0940f5 fix: cannot iterate over dict_keys 2020-04-11 18:12:13 +05:30
Saqib Ansari
de423f8183 Merge branch 'asset-cat-validation-v12' of https://github.com/nextchamp-saqib/erpnext into asset-cat-validation-v12 2020-04-11 18:11:42 +05:30
Nabin Hait
c7bf050e8b Merge branch 'version-12-hotfix' into asset-cat-validation-v12 2020-04-11 10:21:17 +05:30
Deepesh Garg
9d0af22b88 Merge pull request #21202 from marination/serial-no-status-hotfix
fix: Added Status field in Serial No for filter and report builder
2020-04-10 20:48:45 +05:30
Deepesh Garg
073d1c4c13 fix: SQL ssyntax error 2020-04-10 20:33:03 +05:30
Deepesh Garg
c4115c19e4 Merge branch 'version-12-hotfix' of https://github.com/frappe/erpnext into purchase-register-filters-v12 2020-04-10 20:32:30 +05:30
Saqib Ansari
39b8e150bf fix: travis 2020-04-10 12:39:34 +05:30
marination
849ec84852 feat: Provision to set Default Item Manufacturer
- Is Default checkbox added in Item Manufacturer
- Default Item Manufacturer and Part No fields added to Item Master
- Manufacturer Part No field editable in all child tables with validation
- Manufacturer and Part No auto fetched via get_item_details in child table
2020-04-09 14:50:03 +05:30
rohitwaghchaure
38896efd6d Merge pull request #21157 from marination/mr-customer-provided-to-stock-entry-hotfix
fix: Mapping Customer Provided Material Request to Stock Entry
2020-04-09 13:19:41 +05:30
Marica
b225ffa003 fix: Error on any new doc from Shipping Rule. (#21207) 2020-04-09 12:01:29 +05:30
vishdha
c3bb5a97f8 fix: item_name added for message 2020-04-09 11:25:02 +05:30
marination
cdd589a58a fix: Status field in Serial No for filter and report builder 2020-04-08 16:08:09 +05:30
Mangesh-Khairnar
bf5c7fc4d3 fix(MWS): add new regions to marketplace (#21195)
* fix(MWS): add marketplace region for uae

* fix: rename the fields for mws integrations

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-04-08 12:56:22 +05:30
Saqib
27eba1fc61 fix: cannot find accounting module while rendering breadcrumb (#21191) 2020-04-08 11:49:34 +05:30
Nabin Hait
95b6e8afda fix: Replace newlines with spaces before evaluation of condition and formula (#21166) 2020-04-08 09:34:39 +05:30
Saqib
7c1f2ce4eb fix: [ux] enforce 'get references from' in payment order (#21176) 2020-04-08 09:20:41 +05:30
rohitwaghchaure
af64300c18 Merge pull request #21066 from marination/bin-requested-qty-hotfix
fix: Updated Bin Requested Qty logic
2020-04-07 18:06:07 +05:30
rohitwaghchaure
6668544b4c Merge pull request #21169 from rohitwaghchaure/get_serial_nos_based_on_posting_date_and_time
fix: get serial nos based on posting date and time
2020-04-07 18:02:34 +05:30
Deepesh Garg
5e841b40f3 Merge pull request #21189 from deepeshgarg007/dimension_filter_fix_v12
fix: Use separate condition for tree and normal doctype
2020-04-07 15:23:25 +05:30
Deepesh Garg
5e79f763b5 fix: Use separate condition for tree and normal doctype 2020-04-07 15:19:21 +05:30
Rohit Waghchaure
aebf0e47f3 fix: get serial nos based on posting date and time 2020-04-07 14:41:24 +05:30
rohitwaghchaure
645ef9db87 Merge pull request #21182 from marination/purchase-receipt-scan-barcode-hotfix
feat: Scan Barcode in Purchase Receipt
2020-04-07 14:37:17 +05:30
Marica
d76ecb960e fix: Validate Serial/Batch No naming series in Item itself (#21168)
* fix: Validate Serial/Batch No naming series in Item itself

* fix: Consider '#' too
2020-04-07 14:15:48 +05:30
Vishal Dhayagude
d2da8bd6e2 fix(shopping cart): UX Improvements (#21035)
* fix: nontype error for resolved and moved place order button at bottom left

* fix: removed inline style

* fix: Request for quotation move to lower right

* fix: move buttons

Co-authored-by: Naren <patilnarendra3@gmail.com>
Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2020-04-07 12:19:40 +05:30
Saqib
a5fb07e475 fix(shopping-cart): address is made mandatory to place order (#20922)
fix(shopping-cart): address is made mandatory to place order
2020-04-07 12:09:28 +05:30
rohitwaghchaure
bcf1897e60 Merge pull request #21173 from rohitwaghchaure/material_request_incorrect_filter_issue
fix: material request type manufacture shows items with Is Purchase I…
2020-04-07 12:06:04 +05:30
Vishal Dhayagude
044abbace8 fix: Make Sales Invoice paid when it create from shopping cart (#20878)
Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
2020-04-07 12:05:18 +05:30
Deepesh Garg
36a763bdc5 Merge pull request #21106 from nextchamp-saqib/payment-req-status-fix-v12
fix: payment request status fixes
2020-04-07 10:13:29 +05:30
marination
2dd488f878 feat: Scan Barcode in Purchase Receipt 2020-04-06 23:16:57 +05:30
Saqib Ansari
34288b0f38 feat: (minor) purchase register filters 2020-04-06 18:26:03 +05:30
Rohit Waghchaure
d7389b1920 fix: material request type manufacture shows items with Is Purchase Item enabled 2020-04-06 17:49:49 +05:30
Marica
42eddbf89b Merge branch 'version-12-hotfix' into bin-requested-qty-hotfix 2020-04-06 16:38:06 +05:30
Saqib
8e206f55be Merge branch 'version-12-hotfix' into cart-address-update-hotfix 2020-04-06 14:22:06 +05:30
Saqib Ansari
de9c73c5cd fix: tests 2020-04-06 12:41:51 +05:30
Saqib Ansari
4ea7df69b4 fix: change request status on payment entry cancel 2020-04-06 12:35:54 +05:30
Marica
da6ef63bc4 Merge pull request #20865 from deepeshgarg007/po_supplier_skip_v12
feat: Allow PI creation without PO
2020-04-06 12:16:02 +05:30
Nabin Hait
5da9663ae4 Merge branch 'version-12-hotfix' into expense-claim-fix-v12 2020-04-06 12:14:27 +05:30
Nabin Hait
322660c644 fix: Merge conflict 2020-04-06 11:16:31 +05:30
Nabin Hait
2378572e1b fix: update attendace from leave application (#21154) 2020-04-06 10:15:50 +05:30
Deepesh Garg
ab436d4147 Merge pull request #21164 from deepeshgarg007/gst_3b_user_perm_v12
fix: User permissions in GSTR 3B report
2020-04-04 21:48:31 +05:30
Deepesh Garg
18cd3a029d fix: User permissions in GSTR 3B report 2020-04-04 20:07:44 +05:30
Saqib
dba4bd6f26 fix: [ux] credit to & debit to error message (#21133)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-04-03 19:36:00 +05:30
Marica
7bc70758fb Merge branch 'version-12-hotfix' into po_supplier_skip_v12 2020-04-03 18:35:29 +05:30
Deepesh Garg
69e0700101 Merge pull request #21158 from scmmishra/coa_importer
fix: TypeError for _ in coa importer
2020-04-03 18:34:44 +05:30
marination
dfe4d36e8d fix: Test Cases and block expense on outward entry
- Throw error if rate present against Customer Provided Item in DN and SI
- Added test cases for Sales Invoice and Delivery Note
- Allow SI and DN with 0 rate in Test
2020-04-03 18:29:30 +05:30
Shivam Mishra
55ded1379e Merge branch 'version-12-hotfix' into coa_importer 2020-04-03 17:21:42 +05:30
Shivam Mishra
64ed25abfb fix: TypeError for _ 2020-04-03 17:17:04 +05:30
marination
7b70679bf0 fix: Mapping Customer Provided Material Request to Stock Entry
- Fixed inability to map Material Request to Stock Entry
- Commonified Customer Provided Item validation
2020-04-03 15:57:32 +05:30
Deepesh Garg
31fbafe16f Merge pull request #21151 from scmmishra/fix-patch-dashboard-12
fix (tests): module import error for Dashboard Chart Field
2020-04-03 11:05:11 +05:30
Shivam Mishra
878e4cb3ce fix: lms quiz type error (#21153) 2020-04-03 10:07:44 +05:30
Marica
73bc29c011 fix: Update Received Qty in Material Request as per Stock UOM (#21055)
* fix: Update Received Qty in Material Request as per Stock UOM

* fix: Process each PR only once

* fix: minor suggested changes

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-04-03 10:06:39 +05:30
Saqib
44dbd98d90 fix: cannot set warehouse on deleting all so items and updating them (#21079)
* fix: cannot set warehouse on deleting all so items and updating them

* fix: travis

* fix: travis

* fix: docname is editable in update items dialog

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-04-03 10:01:14 +05:30
Saqib Ansari
04201028d1 fix: tests 2020-04-02 22:18:12 +05:30
Marica
8b5693b77f Merge branch 'version-12-hotfix' into po_supplier_skip_v12 2020-04-02 21:14:19 +05:30
Deepesh Garg
76d2bd9633 Merge branch 'version-12-hotfix' into fix-patch-dashboard-12 2020-04-02 20:24:10 +05:30
Deepesh Garg
83c7561a84 Merge pull request #21149 from deepeshgarg007/travis_company_fixture_v12
fix: Travis(v12)
2020-04-02 20:22:53 +05:30
Shivam Mishra
f8cb81c9f9 fix (tests): reload doctype 2020-04-02 19:59:47 +05:30
marination
4a59b1d3b5 fix: Fixed Test Cases for Material Request
- Reduce quantity on Material Transfer/Issue
- No effect on Customer Provided Material Request
2020-04-02 19:38:38 +05:30
Deepesh Garg
763aab3301 fix: Travis 2020-04-02 19:12:36 +05:30
rohitwaghchaure
0bbc78cdbd Merge pull request #21145 from anupamvs/year-sum-hotfix
Sum of years not needed.
2020-04-02 12:00:55 +05:30
Anupam K
29fc063764 Sum of years not needed. 2020-04-02 11:34:42 +05:30
Anupam K
a66da0ddf4 Sum of years not needed. 2020-04-02 01:06:30 +05:30
Deepesh Garg
4fd447a31d Merge pull request #21136 from marination/stock-ledger-typo-hotfix
fix: Typo in stock level validation in Stock Ledger
2020-04-01 11:20:55 +05:30
marination
122049a9b4 fix: Typo in stock level validation in Stock Ledger 2020-04-01 11:07:46 +05:30
Marica
6a49ea5262 Merge pull request #21097 from rohitwaghchaure/item_code_showing_as_mandatory_issue_hotfix
fix: item code showing as mandatory even if the 'Item Naming By' is set as Naming Series in stock settings
2020-04-01 10:56:14 +05:30
Marica
9f709aa64c Merge branch 'version-12-hotfix' into item_code_showing_as_mandatory_issue_hotfix 2020-04-01 10:46:55 +05:30
Deepesh Garg
702e0ac29e Merge pull request #21117 from nextchamp-saqib/customer-group-price-list-in-pos-v12
fix: customer group price list not fetched in pos
2020-04-01 09:41:04 +05:30
Saqib Ansari
954276ff0e fix: check if selling price exists then set it 2020-03-31 18:49:28 +05:30
Saqib Ansari
0541b2ee27 fix: travis 2020-03-31 18:44:38 +05:30
Saqib Ansari
086e5c4dac fix: no server side validations for accounts in asset category 2020-03-31 18:21:08 +05:30
Marica
dc6a3ae99c Merge pull request #21071 from pipech/v12_fix_pos-display-stock-item
fix(pos): fix pos not display only in-stock item
2020-03-31 18:13:44 +05:30
Marica
2512435a7b Merge branch 'version-12-hotfix' into v12_fix_pos-display-stock-item 2020-03-31 18:08:10 +05:30
Deepesh Garg
7d8d351668 Merge pull request #21064 from P-Froggy/fix-add-bank-account-reference-in-supplier-dashboard-hotfix
fix: Add missing bank accounts reference in supplier dashboard
2020-03-31 16:33:19 +05:30
Deepesh Garg
0126ef78c8 Merge pull request #21093 from scmmishra/multiple-option-fix-12
fix: use setup from Supplier Quotation Controller
2020-03-31 16:29:10 +05:30
rohitwaghchaure
489a5d203f Merge pull request #21016 from marination/so-mr-mapping-uom-hotfix
fix: UOM fixes in Sales Order,Material Request & Production Plan
2020-03-31 16:11:57 +05:30
Deepesh Garg
4716fc5eb8 Merge branch 'version-12-hotfix' into fix-add-bank-account-reference-in-supplier-dashboard-hotfix 2020-03-31 16:04:21 +05:30
rohitwaghchaure
437689371d Merge pull request #21002 from Alchez/v12-stock-entry-fg-validation
fix: allow target warehouses to be changed for work order stock entries (v12)
2020-03-31 15:43:28 +05:30
Saqib
798d532a11 fix: warehouse_account_map not getting reset for diff company transac… (#20997)
* fix: warehouse_account_map not getting reset for diff company transaction

* fix: potential key errors while fetching warehouse_account_map

* fix: travis

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-31 15:30:53 +05:30
rohitwaghchaure
c5a3bcca70 fix: make for quantity as non mandatory in job card (#21080) 2020-03-31 15:28:15 +05:30
rohitwaghchaure
e4cb523181 fix: serial no scan not adding the serial nos in stock entry (#21082) 2020-03-31 15:26:24 +05:30
Rucha Mahabal
b80213d65d fix: Healthcare Domain Issues (#21112)
* fix (Lab Test): None TypeError in Patient Medical Record

* fix: Lab Test Template data import failing in Lab Test Item creation

* fix: disabled Procedure Template shown as enabled in List View

* fix: change item_code from Link to Data to avoid item not found error

* fix: disabled patient shown as enabled

* fix: disabled practitioner schedule shown as enabled in list view

* fix: appointment reminders not working

* fix: Batch not getting fetched in Clinical Procedure Item
2020-03-31 10:52:51 +05:30
Anupam Kumar
d13e7d00b0 fix: email_to, party_type and party are not set in payment request (#21085)
* fix: email_to, party_type and party are not set in payment request when order made from portal

* fix: email_to, party_type and party are not set in payment request when order made from portal

Co-authored-by: Anupam K <anupam@Anupams-MacBook-Air.local>
2020-03-31 10:50:53 +05:30
Saqib
f492ba1e2d fix: auto created asset message (#21109)
* fix: auto created asset message

* Update erpnext/controllers/buying_controller.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-31 10:48:57 +05:30
Deepesh Garg
83111a4a2a fix: Expense account currency validation in Landed Cost voucher (#21074)
* fix: Expense account currency validation in Landed Cost voucher

* fix: Remove unused imports
2020-03-31 10:45:37 +05:30
Deepesh Garg
5a482a6685 Merge pull request #21068 from Alchez/v12-add-issue-status-filter
feat: add status filter in issue web form (v12)
2020-03-30 12:24:34 +05:30
Deepesh Garg
bda11e628b Merge pull request #21118 from rohitwaghchaure/fixed_parent_account_error_while_adding_equity_account
fix: not able to add equity account in the chart of accounts
2020-03-30 12:14:32 +05:30
Deepesh Garg
b8be73caea Merge pull request #21111 from nextchamp-saqib/cancel-error-hyperlink-v12
chore: hyperlinks in cannot cancel message
2020-03-29 21:54:09 +05:30
Deepesh Garg
df151ad6fa Merge pull request #21116 from nextchamp-saqib/course-report-perm-fix-v12
fix: cannot view report for course doctype - permission problem
2020-03-29 21:52:02 +05:30
Rohit Waghchaure
7e7787c298 fix: not able to add equity account in the chart of accounts 2020-03-29 16:33:30 +05:30
Saqib Ansari
1dd0c8f54c fix: customer group price list not fetched in pos 2020-03-29 12:58:30 +05:30
Saqib Ansari
dc04cbf9a9 fix: cannot view report for course doctype - permission problem 2020-03-29 12:52:43 +05:30
Deepesh Garg
77673f33db Merge pull request #21090 from scmmishra/print-format-fix-12
fix: total currency formatting in Acc Receivable and Payable
2020-03-28 21:28:20 +05:30
Deepesh Garg
f4e7de3cef Merge pull request #21104 from nextchamp-saqib/stock-ledger-warehouse-filter-v12
chore: [ux] filter warehouse based on company
2020-03-28 21:10:01 +05:30
Deepesh Garg
9b4ef1059c Merge pull request #21107 from nextchamp-saqib/gl-entry-currency-fix-v12
fix: currency formatting in gl entry dr cr field
2020-03-28 21:09:29 +05:30
Saqib Ansari
8ba661b8ed chore: hyperlinks in cannot cancel message 2020-03-28 20:11:59 +05:30
Saqib Ansari
1125ed8830 fix: currency formatting in gl entry dr cr field 2020-03-28 19:32:27 +05:30
Saqib Ansari
58351de797 fix: payment request status fixes 2020-03-28 19:30:03 +05:30
Saqib Ansari
9578ead7f9 fix: no server side validations for accounts in asset category 2020-03-28 19:27:37 +05:30
Saqib Ansari
f9ce7c2e18 chore: [ux] filter warehouse based on company 2020-03-28 19:16:00 +05:30
rohitwaghchaure
221189ab6e Merge pull request #21095 from anupamvs/item-wise-sales-history-billed-amount-bug-hotfix
bug: Item-wise Sales History - Billed amount
2020-03-28 15:00:46 +05:30
Rohit Waghchaure
8f854c7d93 fix: item code showing as mandatory even if the 'Item Naming By' is set as Naming Series in stock settings 2020-03-28 14:56:45 +05:30
Anupam K
728edacfd4 bug: Item-wise Sales History - Billed amount 2020-03-28 13:48:42 +05:30
Deepesh Garg
9aa8cabf93 Merge pull request #21088 from nabinhait/item_defaults_fix
fix: Add item defaults based on global settings only if default company and warehouse is mentioned
2020-03-27 21:50:19 +05:30
Shivam Mishra
cf2ab9b129 fix: use setup from Supplier Quotation Controller 2020-03-27 21:21:38 +05:30
Shivam Mishra
2313d2d80a fix: total currency formatting 2020-03-27 19:37:26 +05:30
Nabin Hait
b03d1327a5 fix: Add item defaults based on global settings only if default company and warehouse is mentioned 2020-03-27 19:24:17 +05:30
rohitwaghchaure
8110edbc62 Merge pull request #21076 from rohitwaghchaure/default_item_is_not_coming_while_making_new_bom
fix: item not showing in popup while making batch
2020-03-27 13:49:07 +05:30
Rohit Waghchaure
d90f658163 fix: item not showing in popup while making batch 2020-03-27 12:54:01 +05:30
Poranut Chollavorn
0b8191d566 fix(pos): fix pos display item instock 2020-03-26 13:46:36 +00:00
Rohan Bansal
27f0d13bdd feat: add status filter in issue web form 2020-03-26 16:06:07 +05:30
marination
c944676bb5 fix: Updated Bin Requested Qty logic 2020-03-26 15:44:52 +05:30
Nabin Hait
ff49a2f0b6 fix: Ignored user permission for parent_company and existing_company field in Company (#21010) 2020-03-26 13:36:21 +05:30
Deepesh Garg
8a5587749b fix: Added hidden GL column in general ledger (#21022)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-26 13:29:36 +05:30
Marica
3c378aaac7 fix: Make shelf life mandatory in Batched Item if it has expiry date (#21045) 2020-03-26 13:28:42 +05:30
Raffael Meyer
72430e91b2 fix: account groups (#21046) 2020-03-26 13:25:14 +05:30
Marica
6b038bda0d fix: Project field in Stock Entry Detail should be editable (#21000) 2020-03-26 13:23:54 +05:30
Saqib
01f80b239d fix: wrong calculation of depreciation eliminated for a period (#21032) 2020-03-26 13:23:06 +05:30
Saqib
b9f81d913b fix: currency not fetched on quotation creation (#20998) 2020-03-26 13:20:27 +05:30
Saqib
750985dc23 feat: auto set batch no on serial no selection (#20758)
* feat: auto set batch no on serial no selection

* fix: dialog not shown if set warehouse selected

* fix: typo

* fix: merge conflict

* fix: callback no getting called after serial no selected

* fix: callback no getting called after serial no selected

* fix: available batch qty not fetched without set_warehouse selected

* fix: item batch not synced with dialog batch table
2020-03-26 13:18:36 +05:30
P-Froggy
bcb9c28597 Fix: Add missing bank accounts reference in supplier dashboard 2020-03-26 02:35:09 +01:00
Deepesh Garg
23891a918d Merge pull request #21058 from deepeshgarg007/gstr_1_pos_validation_v12
fix: Place of supply validation in GSTR-1 report
2020-03-25 17:02:19 +05:30
Deepesh Garg
4f1a3876ec fix: Remove debug 2020-03-25 16:56:09 +05:30
Deepesh Garg
43806f3e68 fix: Place of supply validation in GSTR-1 report 2020-03-25 16:55:59 +05:30
Deepesh Garg
f4405246ed Merge pull request #21012 from Thunderbottom/log_error-fix-v12
chore: pass traceback and error message as kwargs
2020-03-24 20:19:42 +05:30
rohitwaghchaure
8cc507af53 Merge pull request #21039 from rohitwaghchaure/manufacturing_ux_fixes_hotfix
fix: Manufacturing UX, added calendar view for job card
2020-03-24 16:33:34 +05:30
rohitwaghchaure
6c8bbf9a1c Merge pull request #21029 from rohitwaghchaure/import_supplier_invoices
feat: import supplier invoices
2020-03-24 16:33:00 +05:30
rohitwaghchaure
ea470609fd Merge pull request #21036 from rohitwaghchaure/fixed_batch_selector_popup
fix: batch selection popup not coming for stock entry
2020-03-24 16:31:56 +05:30
Deepesh Garg
ad44f52a26 Merge pull request #21042 from deepeshgarg007/default_dimension_clean_up_v12
fix: Default dimension set code cleanup
2020-03-24 15:48:01 +05:30
Deepesh Garg
1e7cba9dd3 fix: Default dimension set code cleanup 2020-03-24 15:45:22 +05:30
Rohit Waghchaure
87b3dbb214 fix: Manufacturing UX, added calendar view for job card 2020-03-24 14:06:56 +05:30
Rohit Waghchaure
243283eec8 fix: batch selection popup not coming for stock entry 2020-03-24 11:34:44 +05:30
Rohit Waghchaure
b05922026d feat: import supplier invoices 2020-03-23 16:31:39 +05:30
Rohan
ed8e44b467 Merge branch 'version-12-hotfix' into v12-stock-entry-fg-validation 2020-03-23 14:49:59 +05:30
Deepesh Garg
76e163a889 Merge pull request #21026 from deepeshgarg007/dimension_perm_v12
fix: Remove quick entry from accounting dimensions
2020-03-22 21:56:47 +05:30
Deepesh Garg
20ab2c1e20 fix: Remove quick entry from accouting dimensions 2020-03-22 21:53:50 +05:30
Deepesh Garg
3f7ea072c3 Merge pull request #21004 from rohitwaghchaure/qty_must_be_positive_for_stock_entry
fix: stock entry qty must be positive
2020-03-21 20:45:50 +05:30
Deepesh Garg
601db77801 Merge pull request #21014 from surajshetty3416/fix-opportunity-listview-version-12-hotfix
fix: Add currency in options of Opportunity Amount
2020-03-20 20:22:46 +05:30
marination
93e72fdd21 fix: UOM fixes in Sales Order,Material Request & Production Plan 2020-03-20 18:06:25 +05:30
Suraj Shetty
e2bb2593db fix: Add currency in options of Opportunity Amount - To show currect symbol in list view 2020-03-20 15:13:07 +05:30
Chinmay D. Pai
e53e96f01b chore: pass traceback and error message as kwargs
fixes issue where the system tries to generate an error log but fails
with the following error:

Traceback (most recent call last):
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/setup/doctype/company/company.py", line 421, in install_country_fixtures
    frappe.get_attr(module_name)(company_doc, False)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/regional/india/setup.py", line 17, in setup
    make_fixtures(company)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/regional/india/setup.py", line 523, in make_fixtures
    set_tax_withholding_category(company)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/regional/india/setup.py", line 543, in set_tax_withholding_category
    fiscal_year = get_fiscal_year(today(), company=company)[0]
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/accounts/utils.py", line 24, in get_fiscal_year
    return get_fiscal_years(date, fiscal_year, label, verbose, company, as_dict=as_dict)[0]
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/accounts/utils.py", line 80, in get_fiscal_years
    raise FiscalYearError(error_msg)
erpnext.accounts.utils.FiscalYearError: Date 20-03-2020 not in any active Fiscal Year.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/app.py", line 62, in application
    response = frappe.api.handle()
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/api.py", line 55, in handle
    return frappe.handler.handle()
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/handler.py", line 22, in handle
    data = execute_cmd(cmd)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/handler.py", line 61, in execute_cmd
    return frappe.call(method, **frappe.form_dict)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/__init__.py", line 1054, in call
    return fn(*args, **newargs)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/desk/form/save.py", line 22, in savedocs
    doc.save()
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 273, in save
    return self._save(*args, **kwargs)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 296, in _save
    self.insert()
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 260, in insert
    self.run_post_save_methods()
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 926, in run_post_save_methods
    self.run_method("on_update")
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 794, in run_method
    out = Document.hook(fn)(self, *args, **kwargs)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 1065, in composer
    return composed(self, method, *args, **kwargs)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 1048, in runner
    add_to_return_value(self, fn(self, *args, **kwargs))
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 788, in <lambda>
    fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/setup/doctype/company/company.py", line 107, in on_update
    install_country_fixtures(self.name)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/setup/doctype/company/company.py", line 423, in install_country_fixtures
    frappe.log_error(str(e), frappe.get_traceback())
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/__init__.py", line 1524, in log_error
    method=title)).insert(ignore_permissions=True)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 231, in insert
    self._validate()
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/document.py", line 463, in _validate
    self._validate_length()
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/base_document.py", line 583, in _validate_length
    self.throw_length_exceeded_error(df, max_length, value)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/model/base_document.py", line 599, in throw_length_exceeded_error
    .format(reference, _(df.label), max_length, value), frappe.CharacterLengthExceededError, title=_('Value too big'))
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/__init__.py", line 377, in throw
    msgprint(msg, raise_exception=exc, title=title, indicator='red', is_minimizable=is_minimizable)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/__init__.py", line 356, in msgprint
    _raise_exception()
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/frappe/frappe/__init__.py", line 316, in _raise_exception
    raise raise_exception(msg)
frappe.exceptions.CharacterLengthExceededError: Error Log f2cbb8c0f2: 'Title' (Traceback (most recent call last):
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/setup/doctype/company/company.py", line 421, in install_country_fixtures
    frappe.get_attr(module_name)(company_doc, False)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/regional/india/setup.py", line 17, in setup
    make_fixtures(company)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/regional/india/setup.py", line 523, in make_fixtures
    set_tax_withholding_category(company)
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/regional/india/setup.py", line 543, in set_tax_withholding_category
    fiscal_year = get_fiscal_year(today(), company=company)[0]
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/accounts/utils.py", line 24, in get_fiscal_year
    return get_fiscal_years(date, fiscal_year, label, verbose, company, as_dict=as_dict)[0]
  File "/home/frappe/benches/bench-version-12-2020-03-19/apps/erpnext/erpnext/accounts/utils.py", line 80, in get_fiscal_years
    raise FiscalYearError(error_msg)
erpnext.accounts.utils.FiscalYearError: Date 20-03-2020 not in any active Fiscal Year.
) will get truncated, as max characters allowed is 140

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-03-20 13:57:30 +05:30
Rohit Waghchaure
794064db9f fix: stock entry qty must be positive 2020-03-19 14:44:16 +05:30
Rohan
4c4a1aa56d fix: allow target warehouses to be changed for work order stock entries 2020-03-19 13:19:08 +05:30
Sahil Khan
84a5e34319 Merge branch 'v12-pre-release' into version-12 2020-03-19 12:44:10 +05:30
Sahil Khan
d1bbda6d71 bumped to version 12.6.0 2020-03-19 13:04:10 +05:50
Deepesh Garg
8c56f8595e fix: Unable to submit landed cost voucher (#20978) 2020-03-19 11:03:14 +05:30
Deepesh Garg
c2f6782658 fix: Unable to submit landed cost voucher (#20979) 2020-03-19 11:02:34 +05:30
Deepesh Garg
7c0398c8e3 fix: Update is_tree field in Tree doctypes (#20983) 2020-03-19 11:01:40 +05:30
Deepesh Garg
71e9f23d77 fix: Update is_tree field in Tree doctypes (#20982) 2020-03-19 11:00:55 +05:30
Nabin Hait
7b45ae1f2d fix: Multiple fixes during pre-release testing (#20985) 2020-03-19 10:58:41 +05:30
Nabin Hait
bf0f9c5cb4 fix: Multiple fixes during pre-release testing (#20986) 2020-03-19 10:58:07 +05:30
Deepesh Garg
3f1682a4f3 Merge pull request #20993 from rohitwaghchaure/fixed_bom_comparision_issue_pre_release
fix: bom comparison issue
2020-03-19 10:54:51 +05:30
Deepesh Garg
4dd8f390e2 Merge pull request #20992 from rohitwaghchaure/fixed_bom_comparision_issue_hotfix
fix: bom comparison issue
2020-03-19 10:54:29 +05:30
Rohit Waghchaure
82661aa042 fix: bom comparison issue 2020-03-19 10:06:55 +05:30
Rohit Waghchaure
210a718a04 fix: bom comparison issue 2020-03-19 10:03:06 +05:30
Deepesh Garg
1d94f6c848 Merge pull request #20989 from rohitwaghchaure/fixed_shortage_qty_in_stock_projected_qty_report_pre_release
fix: shortage qty in stock projected qty report
2020-03-19 09:32:50 +05:30
Rohit Waghchaure
d21a9fa917 fix: shortage qty in stock projected qty report 2020-03-19 09:25:15 +05:30
Deepesh Garg
51cbfa6aa6 Merge pull request #20972 from rohitwaghchaure/fixed_shortage_qty_in_stock_projected_qty_report
fix: shortage qty in stock projected qty report
2020-03-19 09:04:30 +05:30
Rohit Waghchaure
1ed5993ff6 fix: shortage qty in stock projected qty report 2020-03-18 13:33:55 +05:30
Marica
e655648b18 fix: Missing if condition in Customer Default Bank Account Validation. (#20971) 2020-03-18 11:35:43 +05:30
Marica
da7c6b0d99 fix: Missing if condition in Customer Default Bank Account Validation. (#20970) 2020-03-18 11:29:02 +05:30
Nabin Hait
a5b836d3d4 core: Added change log 2020-03-17 21:02:22 +05:30
Nabin Hait
8a7ecebc03 fix: merge conflict 2020-03-17 19:49:25 +05:30
Anurag Mishra
7cf245895e refactor: Report BOM Sock Calculated (#19431) 2020-03-17 19:45:33 +05:30
Priyanka Gangar
738517c6e8 Label changes in account settings hotfix (#20964)
* fix: Account setting words switches to US Terminology

* created united_states.js

* Remove Unwanted Spaces

* Remove all changes

* Add spaces between arguments

Co-authored-by: PriyankaGangar <pinka0925@gmail.com>
2020-03-17 19:39:06 +05:30
rohitwaghchaure
a6cd666b10 fix: reserved qty for production issue for partial completion of work order (#20900) 2020-03-17 17:00:41 +05:30
Saqib
bc8a881e64 fix: purchase return are allowed even when assets are not cancelled (#20798)
* fix: purchase return are allowed even when assets are not cancelled

* chore: test case

* fix: error message

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-17 17:00:24 +05:30
Deepesh Garg
224059e7ba fix: Party Name not visible in statement of accounts (#20914)
* fix: Party name in Statement Of Accounts

* Update general_ledger.html

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-17 16:59:09 +05:30
Sun Howwrongbum
6f454dce20 fix: null fields being set in Integration Request (#20894)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-17 12:13:01 +05:30
Deepesh Garg
3528149329 fix: Add check to skip PR in supplier master 2020-03-17 11:48:11 +05:30
Deepesh Garg
6c148ef314 fix: Add check to skip SO and DN in customer master 2020-03-17 11:47:23 +05:30
Anurag Mishra
7f58f6af39 fix: leave based on multiple holiday list (#20849)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-17 10:58:17 +05:30
Marica
3ddcc2e5c7 fix: Item alternative must have similar fields as orignal item (#20799)
* fix: Item alternative must have similar fields as orignal item

* fix: Using db.get_values and meta instead of get_value and get_doc

* fix: Made code more DRY

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-17 10:56:13 +05:30
Deepesh Garg
756f47af04 feat: Nested set filtering for accounting dimension (#20866)
* feat: Nested set filtering for accounting dimension

* fix: Remove print statement
2020-03-17 10:52:56 +05:30
Anurag Mishra
b9e1d9ad7d Deduction based on earnins/gross pay (#20935)
* fix: deductions calculation based on gross pay

* test: salary structure deduction based on gross pay

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-16 22:44:17 +05:30
Deepesh Garg
169ba6f9b2 Merge pull request #20959 from deepeshgarg007/mode_of_payment_fix_v12
fix: Mode of payment not fetcched in Item wise purchase register
2020-03-16 22:43:24 +05:30
nmimsnikhil
7c0e89d785 fix: added a Reason for Rejection field for each items (#20828)
* fix: added a Reason for Rejection field for each items

* Update delivery_note_item.json

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-16 22:41:23 +05:30
Deepesh Garg
dd8059a3aa fix: Mode of payment not fetcched in Item wise purchase register 2020-03-16 22:39:32 +05:30
Don-Leopardo
0dcd5a0f34 fix: sql injection (#20817) 2020-03-16 22:35:01 +05:30
rohitwaghchaure
d2a2837034 fix: bom replace tool issue (#20841)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-16 21:42:51 +05:30
Anurag Mishra
22a069d4b0 fix: Wrong status 2020-03-16 19:15:33 +05:30
Rohan
281a9fdf07 fix: handle error handling (#20814) 2020-03-16 17:57:15 +05:30
Saqib
e7a6a4b009 fix: is_pos gets reset on making s_inv from s_ord (#20887)
* s_inv has is_pos default set as 1
2020-03-16 17:48:21 +05:30
Nabin Hait
5c760175d1 fix: deletion of auto-created batch (#20953) 2020-03-16 17:26:02 +05:30
Deepesh Garg
11fb93d022 fix: Add bank transaction in module view (#20823) 2020-03-16 16:54:34 +05:30
Saqib
43a0011987 fix: serial_no_selector showing for non serialized batched item (#20852) 2020-03-16 16:28:54 +05:30
Vishal Dhayagude
37886a72ef fix(HR): Leave application company field made read-only and filter in Monthly attendance sheet (#20911)
* fix(HR): Leave application company field made Readonly

* fix: in monthly report attandance employee filter based on company

* fix: minor typo
2020-03-16 15:57:42 +05:30
Deepesh Garg
98573fb868 Merge pull request #20921 from deepeshgarg007/c_from_fix_v12
fix: Get invoice details only if invoice is selected
2020-03-16 15:56:19 +05:30
Deepesh Garg
4d954f1a5f Merge pull request #20836 from Thunderbottom/welcome-email-fix-v12
fix: use ERPNext in welcome email when default company is not set
2020-03-16 15:54:09 +05:30
Prssanna Desai
46053f6c8f fix: fix options of currency fieldtype in Expense Taxes and Charges (#20910) 2020-03-16 15:52:00 +05:30
Chinmay Pai
6f3941c9cc fix: remove make_purchase_invoice from demo script (#20906)
currently demo fails with the following error:

frappe@bf54a9834cfe:/workspace/development/frappe-bench$ bench --site test1.localhost execute erpnext.demo.demo.make
Traceback (most recent call last):
  File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/workspace/development/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 97, in <module>
    main()
  File "/workspace/development/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 18, in main
    click.Group(commands=commands)(prog_name='bench')
  File "/workspace/development/frappe-bench/env/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/workspace/development/frappe-bench/env/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/workspace/development/frappe-bench/env/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/workspace/development/frappe-bench/env/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/workspace/development/frappe-bench/env/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/workspace/development/frappe-bench/env/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/workspace/development/frappe-bench/env/lib/python3.7/site-packages/click/decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/workspace/development/frappe-bench/apps/frappe/frappe/commands/__init__.py", line 25, in _func
    ret = f(frappe._dict(ctx.obj), *args, **kwargs)
  File "/workspace/development/frappe-bench/apps/frappe/frappe/commands/utils.py", line 145, in execute
    ret = frappe.get_attr(method)(*args, **kwargs)
  File "/workspace/development/frappe-bench/apps/frappe/frappe/__init__.py", line 1042, in get_attr
    return getattr(get_module(modulename), methodname)
  File "/workspace/development/frappe-bench/apps/frappe/frappe/__init__.py", line 823, in get_module
    return importlib.import_module(modulename)
  File "/workspace/development/frappe-bench/env/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/workspace/development/frappe-bench/apps/erpnext/erpnext/demo/demo.py", line 6, in <module>
    from erpnext.demo.user import hr, sales, purchase, manufacturing, stock, accounts, projects, fixed_asset
  File "/workspace/development/frappe-bench/apps/erpnext/erpnext/demo/user/fixed_asset.py", line 9, in <module>
    from erpnext.assets.doctype.asset.asset import make_purchase_invoice, make_sales_invoice
ImportError: cannot import name 'make_purchase_invoice' from 'erpnext.assets.doctype.asset.asset' (/workspace/development/frappe-bench/apps/erpnext/erpnext/assets/doctype/asset/asset.py)

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-03-16 15:49:50 +05:30
Raffael Meyer
cd71114c15 fix(accounts): add account_type and tax_rate to some VAT accounts (#20941)
* Add account_type and tax rate to some VAT accounts

* fix indentation
2020-03-16 15:44:32 +05:30
Nabin Hait
e2a31f221a fix: Multiple fixes for travis (#20950) 2020-03-16 15:36:10 +05:30
Anurag Mishra
97dfe2ac32 fix: local variable 'benefit_amount' referenced before assignment (#20948) 2020-03-16 13:47:47 +05:30
Myuddin khatri
9c63b1d2c9 fix(shopping-cart): setting billing and shipping address
setting billing and shipping address
2020-03-12 16:15:05 +05:30
Myuddin khatri
0f807bf7ee fix(shopping-cart): address is made mandatory to place order 2020-03-12 14:40:34 +05:30
Deepesh Garg
ee003495f6 fix: Get invoice details only if invoice is selected 2020-03-12 13:25:06 +05:30
Deepesh Garg
08f0e9d6f3 Merge pull request #20891 from deepeshgarg007/itemised_purchase_register_v12
fix: HSN code not visible in GST Itemised Purchase register
2020-03-10 10:05:21 +05:30
Deepesh Garg
4d6fb59bfb Merge pull request #20885 from deepeshgarg007/first_row_dimension_v12
fix: Acccounting Dimension disappearing in first row after refresh
2020-03-09 22:47:46 +05:30
Deepesh Garg
0317576434 fix: HSN code not visible in GST Itemised Purchase register 2020-03-09 22:42:21 +05:30
Saqib
b607963fba fix: [pos] customer group filter resets on syncing offline invoices (#20874) 2020-03-09 18:30:42 +05:30
Marica
d08cff9efc fix: Validate Serial No/Batch No against unserialized Item in Stock Reconciliation (#20859) 2020-03-09 18:13:38 +05:30
Marica
2f2cef6c5f fix: ModuleNotFoundError on Turkey Company setup (#20854) 2020-03-09 18:07:55 +05:30
Deepesh Garg
875e0f5fb2 fix: Acccounting Dimension disappearing in first row after refresh 2020-03-09 18:05:35 +05:30
Deepesh Garg
d9ab412032 feat: Allow PI creation without PO 2020-03-06 19:04:41 +05:30
Saqib
6c4cddccf6 fix: show uom in print formats instead of stock uom (#20844)
Co-authored-by: Saqib Ansari <saqibansari@Saqibs-MacBook-Pro.local>
2020-03-06 11:06:41 +05:30
Marica
69d3c4ff25 fix: update_child_qty_rate() missing argument (#20839) 2020-03-06 10:57:43 +05:30
Nabin Hait
1f80c8dffe perf: improve gl entry submission (#20802)
* perf: improve gl entry submission

* perf: add indexes

* fix: replace **kwargs with *args

* fix: syntax error

* fix: travis

* chore: remove purchase invoice from status updater

* fix: set_staus args

Co-Authored-By: Nabin Hait <nabinhait@gmail.com>

* fix: only update status for invoices & fees

* [bug][fix]: set status to object instead of variable (#20790)

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Saurabh <saurabh6790@gmail.com>
2020-03-05 13:04:53 +05:30
Chinmay D. Pai
12cdf0fb52 fix: use ERPNext in welcome email when default company is not set
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-03-05 10:11:55 +05:30
Deepesh Garg
b6a3a06c4b Merge pull request #20821 from deepeshgarg007/gst_itemised_v12
fix: HSN code no visible in GST itemised sales register
2020-03-04 10:41:55 +05:30
Deepesh Garg
2728590471 fix: HSN code no visible in GST itemised sales register 2020-03-04 10:26:25 +05:30
Priyanka Gangar
7766530afc fix: fetch sales person name (#20801)
* fix: fetch sales person name

* Update sales_person.js

Co-authored-by: pinka0925 <44537026+pinka0925@users.noreply.github.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-02 19:24:14 +05:30
Deepesh Garg
d7839eb8ac fix: Total amount not displayed in Journal Entry (#20795)
* fix: Total amount not displayed in Journal Entry

* fix: Update paid_to_received field

* fix: set total amount

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-03-02 18:09:24 +05:30
Prssanna Desai
6a734ecd34 fix: use get all instead of get list to fetch item attributes (#20793) 2020-03-02 18:06:21 +05:30
Mangesh-Khairnar
acd93b3bd1 fix: use system language to translate strings (#20792) 2020-03-02 18:05:59 +05:30
Marica
94200b1179 chore: Item Price and Product Bundle Form cleanup (#20773)
* chore: Item Price and Product Bundle Form cleanup

* fix: Trailing comma
2020-03-02 15:51:22 +05:30
Saqib
a6bf96322b chore: control reposting of future gl entries with flags (#20775) 2020-03-02 15:19:28 +05:30
Saqib
27163e60bb feat: link serial no to batch no (#20779)
* feat: link serial no to batch no

* fix: test cases
2020-03-02 15:03:18 +05:30
Saqib
1041516e8e fix: reconciled entries showing in bank reco (#20788) 2020-03-02 15:00:42 +05:30
Deepesh Garg
b7bbd827fd Merge pull request #20769 from marination/buying-dashboard-hotfix
chore: Rearranged Buying Module Dashboard
2020-02-29 17:34:35 +05:30
Sahil Khan
fda7cbeca4 Merge branch 'v12-pre-release' into version-12 2020-02-28 15:06:03 +05:30
Sahil Khan
2fc58b3327 bumped to version 12.5.2 2020-02-28 15:26:03 +05:50
marination
3fcd575f53 chore: Rearranged Buying Module Dashboard 2020-02-28 13:08:38 +05:30
Deepesh Garg
0cee807dfb Merge pull request #20766 from deepeshgarg007/bank_reco_release
fix: Journal Entry not being fetched in Bank Reconciliation
2020-02-28 12:35:06 +05:30
Deepesh Garg
a51c56c4b3 fix: Remove debug statement 2020-02-28 12:32:18 +05:30
Deepesh Garg
d2f26e57d2 fix: Journal Entry not being fetched in Bank Reconciliation 2020-02-28 12:32:05 +05:30
Deepesh Garg
b7790c0394 fix: Item Wise report query fix (#20765) 2020-02-28 12:30:29 +05:30
Deepesh Garg
d17e0b5aca fix: Item Wise report query fix (#20761) 2020-02-28 12:29:11 +05:30
Shivam Mishra
f08b5e4866 feat: ignore permission when deleting linked emails (#20753) 2020-02-27 19:07:39 +05:30
Deepesh Garg
78ae5e7721 Merge pull request #20749 from deepeshgarg007/bank_reco_jv_v12
fix: Journal Entry not being fetched in Bank Reconciliation
2020-02-27 16:19:01 +05:30
Deepesh Garg
5fb66a3953 fix: Remove debug statement 2020-02-27 16:15:43 +05:30
Deepesh Garg
d952e71d97 fix: Journal Entry not being fetched in Bank Reconciliation 2020-02-27 16:15:16 +05:30
rohitwaghchaure
fe337dfb66 fix: serial no material transfer performance issue (#20722) 2020-02-27 14:27:43 +05:30
Saqib
45329232b3 fix: only update items if rate or qty changed (#20743) 2020-02-27 12:51:23 +05:30
Rohan
30ad21b7d8 fix: sort Issues chronologically (#20740) 2020-02-26 18:53:48 +05:30
Marica
4e3ad9c3f2 fix: Lock stock ledger entries that are being reposted. (#20739)
- If stock ledger entries are being reposted, don't let any other transaction apply itself on the same.
2020-02-26 18:51:35 +05:30
Sahil Khan
2a1e9b542e Merge branch 'v12-pre-release' into version-12 2020-02-26 18:20:16 +05:30
Sahil Khan
8f458feafc bumped to version 12.5.1 2020-02-26 18:40:16 +05:50
Deepesh Garg
e116d8f819 Merge pull request #20738 from deepeshgarg007/bank_reco_fix_v12_pre
fix: Mandatory bank account error fix
2020-02-26 17:42:14 +05:30
Deepesh Garg
f3674ccc6c fix: SQL condition 2020-02-26 17:40:13 +05:30
Deepesh Garg
6f35a63f2d fix: Mandatory bank account error fix 2020-02-26 17:40:04 +05:30
Deepesh Garg
acbc4f648d fix: Mandatory bank account error fix (#20734)
* fix: Mandatory bank account error fix

* fix: SQL condition
2020-02-26 17:17:06 +05:30
Anurag Mishra
5475b5f562 fix: validated leave allocation (#20635)
* fix: validated leave allocation

* fix: changes requested

* Update erpnext/hr/doctype/leave_encashment/leave_encashment.py

Co-Authored-By: Nabin Hait <nabinhait@gmail.com>

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-02-26 14:50:52 +05:30
rohitwaghchaure
39861c270c fix: same free item not working for pricing rule (#20713) 2020-02-26 12:51:53 +05:30
RJPvT
6eaa542709 fix: smaller then instead of bigger then :-( dumb mistake v12 #20693 (#20701) 2020-02-26 11:59:06 +05:30
Saqib
2a8981929a perf: search for customer's return invoices then filter out gl_entries (#20710) 2020-02-26 11:36:38 +05:30
rohitwaghchaure
0aa7aa5996 fix: rate and amount in material request copying from sales order (#20718) 2020-02-26 11:27:49 +05:30
rohitwaghchaure
a20bd89c20 fix: reorder material request not created if doctype has custom mandatory field (#20720) 2020-02-26 11:25:30 +05:30
Deepesh Garg
aa7af30382 Merge pull request #20715 from rohitwaghchaure/account_dashboard_not_working_hotfix
fix: account dashboard not working
2020-02-26 10:18:27 +05:30
Rohit Waghchaure
9921d28ea7 fix: account dashboard not working 2020-02-25 12:17:25 +05:30
Sahil Khan
b26fd04843 Merge branch 'v12-pre-release' into version-12 2020-02-20 18:26:58 +05:30
Sahil Khan
1b78d20d3c bumped to version 12.5.0 2020-02-20 18:46:57 +05:50
sahil28297
b203406d4c fix: proper release note version 2020-02-20 18:20:33 +05:30
Mangesh-Khairnar
5a0017c61a Merge pull request #20686 from Anurag810/additional_salary_fixes
fix: Additional salary can be created only for active employee
2020-02-20 16:21:55 +05:30
Anurag Mishra
df15c758f6 fix: Additional salary can be created only for active employee 2020-02-20 15:29:09 +05:30
Mangesh-Khairnar
588a89f957 fix: return null for attribute (#20684) 2020-02-20 13:41:00 +05:30
Mangesh-Khairnar
c74343531f fix: skip earned leaves check for max leaves set to zero or less (#20536)
* fix: skip earned leaves check for max leaves set to zero or less

* test: earned leaves creation
2020-02-20 13:25:45 +05:30
Deepesh Garg
a257189c77 Merge pull request #20451 from Anurag810/fleet-management_v12
fix: odometer value was not syncing properly
2020-02-20 13:20:21 +05:30
Rohan
355051bf75 fix: apply url encoding to project names (#20641) 2020-02-20 12:59:21 +05:30
Anurag Mishra
ab8aa43ffb fix: changed field type which was affecting filters (#20670) 2020-02-20 12:52:37 +05:30
Mathieu Brunot
a6f56bbc3e chore(ci-coverage): Pin coverage 4.5.4 #20646 (#20648)
* chore(ci-coverage): Pin coveralls 4.5.4 #20646

Signed-off-by: mathieu.brunot <mathieu.brunot@monogramm.io>

* chore: Pin coverage

Signed-off-by: mathieu.brunot <mathieu.brunot@monogramm.io>
2020-02-20 12:50:09 +05:30
gavin
4e2b9395b9 chore: drop cypress requirement (#20675) 2020-02-20 12:48:32 +05:30
Saqib
ae9159fbd8 fix: mandatory on hold comment for purchase invoice (#20667) 2020-02-20 12:33:07 +05:30
Saqib
8e80c17602 chore: SINV set_status remove redundant function calls (#20661) 2020-02-20 12:32:09 +05:30
Saqib
8903258362 fix: mandatory on hold comment for purchase invoice (#20668)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-02-20 12:30:35 +05:30
Saqib
1beeb28908 fix: check for available stock in product bundle's website warehouse (#20680) 2020-02-20 12:22:33 +05:30
Saqib
2d2aa7d664 fix: check for available stock in product bundle's website warehouse (#20679)
* fix: check for available stock in product bundle's website warehouse

* test: earned leaves creation

* fix: minor change

Co-authored-by: Mangesh-Khairnar <mkhairnar10@gmail.com>
2020-02-20 12:22:01 +05:30
Nabin Hait
cd6b60df70 core: Added change log 2020-02-20 12:18:21 +05:30
Nabin Hait
b18790f5c2 Merge branch 'version-12-hotfix' into v12-pre-release 2020-02-19 19:19:36 +05:30
Mangesh-Khairnar
f6d7090f07 fix: earned leaves creation for zero maximum leaves (#20677) 2020-02-19 19:16:40 +05:30
Deepesh Garg
017d280877 Merge pull request #20664 from marination/stock-settings-query-v12-hotfix
fix: Set Query on warehouse fields in Stock Settings
2020-02-19 18:58:46 +05:30
Anurag Mishra
031d4092d0 test: syncing of odometer value 2020-02-19 16:49:13 +05:30
marination
0119d15adb fix: Server side validation for Warehouses 2020-02-19 11:21:55 +05:30
Deepesh Garg
df6cb3c43b Merge pull request #20633 from scmmishra/tree-fix-qms
fix: filters for quality_procedure tree
2020-02-19 09:40:52 +05:30
marination
1ed737cf64 fix: Set Query on warehouse fields in Stock Settings 2020-02-18 21:45:52 +05:30
Deepesh Garg
c64e46fe67 Merge pull request #20483 from racitup/plaid-20343-fix
fix: Plaid fixes and enhancements
2020-02-18 18:03:16 +05:30
Nabin Hait
f579b0e3de fix: merge conflict 2020-02-18 17:49:20 +05:30
Deepesh Garg
b63c041aa4 feat: Group by AR/AP report (#20574)
* feat: Group by AR/AP report

* fix: Do not consider total row in charts

* fix: Subtotal row for last party
2020-02-18 16:09:37 +05:30
rohitwaghchaure
22f9a5f09f Merge pull request #20639 from nextchamp-saqib/pos-mode-of-pay-fix-v12
fix: disabled mode of payments fetches in sales invoices
2020-02-18 12:38:14 +05:30
rohitwaghchaure
e47875340e Merge pull request #20655 from marination/precision-mr-item-hotfix
fix: Stock Quantity not calculated on client side in Material Request…
2020-02-18 12:34:27 +05:30
marination
6f28383531 fix: Stock Quantity not calculated on client side in Material Request Items. 2020-02-18 11:08:16 +05:30
Deepesh Garg
95050702f1 Merge branch veersion-12-hotfix into plaid-20343-fix 2020-02-17 22:11:14 +05:30
Deepesh Garg
ae8f717fe5 Merge pull request #20640 from gavindsouza/updated-requirements
chore(requirements): Pin requirements
2020-02-17 22:05:26 +05:30
Gavin D'souza
f95ac99baa fix(travis): add lib cups for updated frappe requirements 2020-02-17 16:52:27 +05:30
Shivam Mishra
660b4d1e2f feat: show numeric values in item configurator (#20430) 2020-02-17 15:58:31 +05:30
thefalconx33
5bfebaf1c0 fix: disabled mode of payments fetches in sales invoices 2020-02-17 14:16:49 +05:30
Deepesh Garg
980e54c5f4 Merge pull request #20570 from Er-Naren719/hotfix-user-table-columns-updated
feat: columns under user table updated
2020-02-17 11:19:23 +05:30
Shivam Mishra
efbfeb2d89 fix: filters for quality_procedure tree 2020-02-17 10:50:05 +05:30
rohitwaghchaure
0676ed08b1 Merge pull request #20540 from rohitwaghchaure/fixed_purchase_receipt_time_out_error
fix: time out error while submitting the purchase receipt
2020-02-11 19:55:04 +05:30
rohitwaghchaure
e9946672e0 Merge branch 'version-12-hotfix' into fixed_purchase_receipt_time_out_error 2020-02-11 19:54:54 +05:30
rohitwaghchaure
6124f83e6e Merge pull request #20556 from ashish-greycube/patch-3
fix: backflush raw material based on - Material Transferred for Manufacture
2020-02-11 19:50:09 +05:30
Deepesh Garg
2b83debc72 Merge pull request #20564 from govindsmenokee/patch-4
fix: get_students not respecting the program
2020-02-11 17:03:24 +05:30
Er-Naren719
fc4cc9ab42 feat: column width increased for view attachments field (#314) 2020-02-11 10:17:34 +00:00
Deepesh Garg
cd19974d7a Merge pull request #20566 from vishdha/filter_serial_based_on_batch_v12
fix: filter serial no based on batch no
2020-02-11 13:44:54 +05:30
vishal
cde48a44cf fix: filter serial no based on batch no 2020-02-11 12:39:49 +05:30
Govind S Menokee
57d33f9ce6 fix: get_students not respecting the program
The get_students function is not taking into account the program for which the fee needs to be created. If a student is enrolled for multiple programs then the fee schedule pull up the wrong count of students.
2020-02-11 11:23:16 +05:30
Deepesh Garg
90a46acc0d Merge pull request #20557 from rohitwaghchaure/added_indexing_on_columns_to_fix_performance_issue
fix: added indexing on columns to fix performace issue
2020-02-11 10:13:24 +05:30
Deepesh Garg
60634cc829 Merge pull request #20252 from deepeshgarg007/group_by_sales_v12
feat: Group by item wise sales register
2020-02-10 22:20:21 +05:30
Rohit Waghchaure
a7c27596bb fix: added indexing on columns to fix performace issue 2020-02-10 15:30:22 +05:30
Deepesh Garg
b4e3146665 Merge pull request #20550 from nextchamp-saqib/so-update-items-warehouse-fix-v12
fix: mandatory warehouse wrror while updating items after submission
2020-02-10 12:09:38 +05:30
Ashish Shah
495ab6c7f2 fix: backflush raw material based on - Material Transferred for Manufacture
Hi @nabinhait ,
 
Issue : Manufacturing setting > Backflush Raw Material Based on “Material Transferred for Manufacture” doesn't fetch the actual raw material transferred qty. It fetches qty based on "BOM"

The issue is because @creamdory in PR #https://github.com/frappe/erpnext/pull/13384
commit : https://github.com/frappe/erpnext/pull/13384/files#diff-91f0ed661ef4b6e1f167fc7961b1a79b

```
changed from: if trans_qty and manufacturing_qty >= (produced_qty + flt(self.fg_completed_qty)):
to : if trans_qty and manufacturing_qty > (produced_qty + flt(self.fg_completed_qty)):
```
**'='** was added by her in the condition, which was not there before her commit.
Kindly except the fix for the issue.


https://github.com/frappe/erpnext/blob/develop/erpnext/stock/doctype/stock_entry/stock_entry.py#L1057

https://github.com/frappe/erpnext/pull/13384

https://github.com/frappe/erpnext/pull/13384/files#diff-91f0ed661ef4b6e1f167fc7961b1a79b

**before fix gif** :  Stock Entry = Manufacture shows raw material quantity as per BOM.

![FetchTransQtyError](https://user-images.githubusercontent.com/29812965/74123824-ffdd8600-4bf5-11ea-8873-95de24a7ef09.gif)

**after fix gi**f :  Stock Entry = "Manufacture" shows raw material quantity as per "Material Transfer for Manufacture".

![FetchTransQtyFix](https://user-images.githubusercontent.com/29812965/74123836-0c61de80-4bf6-11ea-86fb-d9619fd9b02b.gif)
2020-02-10 11:13:27 +05:30
Deepesh Garg
0e396a62b1 Merge pull request #20554 from ruchamahabal/fix_regional_data_v12
fix: patch for creating irs_1099 custom field (United States)
2020-02-10 09:08:55 +05:30
Rucha Mahabal
1343a4b755 fix: patch for creating irs_1099 custom field (United States) 2020-02-10 00:31:44 +05:30
rohitwaghchaure
ec45c096a0 fix: pricing rule not working on item groups (#20546) 2020-02-09 19:45:42 +05:30
thefalconx33
c7e523cee4 fix: mandatory warehouse wrror while updating items after submission 2020-02-09 12:21:01 +05:30
rohitwaghchaure
9e436336e2 Merge pull request #20542 from rohitwaghchaure/fixed_incorrect_material_request_warehouse_in_production_plan
fix: incorrect warehouse for material request in production plan
2020-02-07 17:43:32 +05:30
Rohit Waghchaure
a9205adfbd fix: test cases 2020-02-07 15:38:56 +05:30
Deepesh Garg
f5bff5f15d fix: Styling and minor fixes 2020-02-07 15:25:43 +05:30
Rohit Waghchaure
bbeacb9acf fix: incorrect warehouse for material request in production plan 2020-02-07 15:04:37 +05:30
Rohit Waghchaure
7027584391 fix: time out error while submitting the purchase receipt which has more than 100 serial nos 2020-02-07 14:41:00 +05:30
Deepesh Garg
372d4e2e05 Merge branch 'group_by_sales_v12' of github.com:deepeshgarg007/erpnext into group_by_sales_v12 2020-02-07 11:10:10 +05:30
Deepesh Garg
bdfa2ff33a fix: Do not calculate total for rate 2020-02-07 11:09:43 +05:30
Deepesh Garg
787b31674a Merge pull request #20534 from rohitwaghchaure/procurement_tracker_not_working_for_special_char_company_name_v12_hotfix
fix: Procurement Tracker report not working
2020-02-07 10:44:13 +05:30
Rohit Waghchaure
0eb9f7408e fix: Procurement Tracker report not working 2020-02-06 14:38:51 +05:30
Deepesh Garg
5c96415eb5 Merge pull request #20530 from nextchamp-saqib/mv-fix-v12
fix: typo; serial no doesn't have amc start date
2020-02-06 13:58:29 +05:30
thefalconx33
d9f8347fc8 fix: typo; serial no doesn't have amc start date 2020-02-06 12:58:48 +05:30
Deepesh Garg
2a48fe6ce6 Merge pull request #20524 from deepeshgarg007/bank_account_label__v12
Bank account label  v12
2020-02-05 18:04:12 +05:30
deepeshgarg007
3ed574532d fix: filter 2020-02-05 18:02:31 +05:30
deepeshgarg007
9f58e59a2c fix: Label and UX fixes while creating payment entry against customer 2020-02-05 18:02:19 +05:30
Deepesh Garg
23c6d6cf16 Merge pull request #20522 from rohitwaghchaure/picklist_nonetype_error
fix: unsupported operand type(s) for += 'int' and 'NoneType'
2020-02-05 17:44:46 +05:30
Rohit Waghchaure
8e0a9e8748 fix: unsupported operand type(s) for += 'int' and 'NoneType' 2020-02-05 16:17:16 +05:30
Deepesh Garg
67dbeee7b2 fix: Add total row 2020-02-05 15:34:08 +05:30
Parth J. Kharwar
b4a0c773ae fix: half day leave date value reset (#20488)
* fix: full day leaves not tagged as half day in attendance

* chore: code cleanup for half day date value set
2020-02-05 15:00:58 +05:30
Anurag Mishra
ce598530db fix: requested changes 2020-02-05 12:49:11 +05:30
Deepesh Garg
694f57fbb4 Merge pull request #20521 from deepeshgarg007/fixnancial_query_fix_v12
fix: SQL query in financial statements
2020-02-05 12:33:06 +05:30
Deepesh Garg
0f90b870fb fix: SQL query in financial statements 2020-02-05 12:30:15 +05:30
Nabin Hait
bd5b37dbb7 Merge branch 'v12-pre-release' into version-12 2020-02-03 19:00:36 +05:30
Nabin Hait
7e93e87244 bumped to version 12.4.3 2020-02-03 19:20:36 +05:50
Deepesh Garg
02f4aa6db6 fix: Unable to submit landed cost voucher (#20494)
* fix: Unable to submit landed cost voucher

* fix: Test case for multiple landed cost voucher against a Purchase receipt

* fix: Test Case
2020-02-03 18:56:43 +05:30
Deepesh Garg
ade2c36123 fix: Unable to submit landed cost voucher (#20494)
* fix: Unable to submit landed cost voucher

* fix: Test case for multiple landed cost voucher against a Purchase receipt

* fix: Test Case
2020-02-03 18:54:35 +05:30
Pranav Nachnekar
3ef80f2d2e fix: disallow quick entry for doctypes with tree view (#20453)
* fix: imporer escaping

* fix: disallow quick entry for doctypes with tree view
2020-02-03 17:05:30 +05:30
Himanshu
85c6480b41 fix(Report): Quality Review report sql fix (#20425)
* fix: report fix

* fix: add QM permission

* fix: add QM permission
2020-02-03 16:16:42 +05:30
Saqib
f3c94315c3 feat: add tax category in pos profile (#20414)
* feat: add tax category in pos profile

* fix: review fixes
2020-02-03 15:53:22 +05:30
Saqib
a4219f1cfe fix: gst permission for gst settings & hsn code (#20501)
* fix: gst permission for gst settings & hsn code

* Fix: Typo

Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2020-02-03 15:40:53 +05:30
Deepesh Garg
831a7ddd6f fix: Minor fixes 2020-02-01 23:15:21 +05:30
Parth J. Kharwar
43886ca016 fix: employee checkin doctype time permissions (#20473) 2020-01-31 14:37:56 +05:30
rohitwaghchaure
61b4244837 Merge pull request #20479 from deepeshgarg007/finance-book-filter-new-v12
fix: Do not show any finance book record if no finance book filter is applied
2020-01-31 13:19:49 +05:30
Deepesh Garg
6871979acc Merge pull request #20470 from alyf-de/version-12-hotfix
fix(regional): byte strings in DATEV Report
2020-01-31 11:20:51 +05:30
Deepesh Garg
bb7cf81d52 fix: Cash flow filter fix 2020-01-31 11:18:26 +05:30
Deepesh Garg
9826291c52 fix: Filtering fixes in financial statement 2020-01-31 11:18:13 +05:30
racitup
08661250d2 Ignore codacy SQL injection warning (internal code only) and add copyright notice 2020-01-30 15:22:34 +00:00
racitup
814001a90f fix: attempt at pymysql InternalError 1054 about clearance_date in field list when removing payments from bank transactions 2020-01-30 15:22:34 +00:00
racitup
eef73a0d92 manually added patch for bank reconciliation fields since develop branch was in a different place #20380 2020-01-30 15:22:34 +00:00
racitup
a1e3202054 fix: Bank Reconciliation Bank Account and Bank Account No field names 2020-01-30 15:22:34 +00:00
racitup
bee017e17c fix: Plaid transaction import order, transaction_id duplicate check, added transaction category tags 2020-01-30 15:22:34 +00:00
racitup
a054508211 fix: Plaid automatic_synchronization TypeError on filter & add info log message #20343 2020-01-30 15:22:34 +00:00
racitup
feaa82a8ea fix: KeyError about bank_account_no due to non-existent field: #20343 2020-01-30 15:22:34 +00:00
racitup
a175e06149 fix: pymysql.err.InternalError about t2.bank_account_no due to removal of field from Journal Entry Account table: #20343 2020-01-30 15:22:34 +00:00
Deepesh Garg
ba4d9469ff fix: Do not show any finance book record if no finance book filter is applied 2020-01-30 15:41:44 +05:30
Deepesh Garg
54c6f91dde Merge pull request #20474 from ParthKharwar/hotfix-brand-breadcrumb
fix: rename breadcrumb for Brand DocType from Selling to Stock
2020-01-30 13:14:21 +05:30
Parth Kharwar
e552e958de fix: rename breadcrumb for Brand DocType from Selling to Stock 2020-01-30 12:35:02 +05:30
Raffael Meyer
7524ecbc59 fix #20469 2020-01-30 00:08:25 +01:00
Deepesh Garg
be2ca5f8cc Merge pull request #20460 from 0Pranav/fix-supplier-quotation-button-v12
fix: missing plus button in request for quotaion for supplier quotation
2020-01-29 10:45:32 +05:30
0Pranav
d4d641a07e fix: missing plus button in request for quotaion for supplier quotation 2020-01-29 09:36:48 +05:30
rohitwaghchaure
8e5b812a97 fix: incorrect work order qty for sub assembly items (#20448) 2020-01-28 14:34:54 +05:30
Nabin Hait
df94f0565e fix: cannot complete task if dependent task are not completed / cancelled (#20434) 2020-01-28 14:08:48 +05:30
Anurag Mishra
637915f295 fix: odometer value was not syncing properly 2020-01-28 13:15:26 +05:30
Pranav Nachnekar
f2838c4a13 fix: discounting not applied on sales invoice created by subscriptions (#20432)
* fix: imporer escaping

* fix: discounting not applied on sales invoice created by subscriptions
2020-01-28 12:52:42 +05:30
Marica
fe56c7ce39 fix: Column 'project' in where clause is ambiguous (#20439)
* fix: Column 'project' in where clause is ambiguous

* fix: Fixed alias in query
2020-01-28 12:44:03 +05:30
Deepesh Garg
29ecbde445 Merge pull request #20446 from Alchez/v12-driver-address-fetch
fix: only fetch driver address if not set (v12)
2020-01-28 09:20:53 +05:30
Deepesh Garg
611f212aa4 Merge pull request #20443 from fproldan/fix_sqlinjection_hotfix_v12
fix: SQL Injection in get_product_list_for_group method
2020-01-28 09:18:11 +05:30
Rohan Bansal
6fbafa1924 fix: only fetch driver address if not set 2020-01-27 18:04:33 +05:30
NahuelOperto
875bac8bb9 Fix sql injection 2020-01-27 08:58:01 -03:00
Saqib
b4b410f1d2 refac: filters and columns of fixed asset register report (#20420) 2020-01-27 16:06:15 +05:30
deepeshgarg007
eec0ee83e2 fix: Changes in total row display 2020-01-27 15:51:20 +05:30
Deepesh Garg
148951e6f3 fix: Finance book filtering in financial statements (#20411)
* fix: Finance book filtering in financial statements

* fix: Use IS NULL instead of ifnull
2020-01-27 15:18:45 +05:30
Saqib
612e3b77fd fix: incorrect status for fraction of outstanding amount (#20370) 2020-01-27 14:23:05 +05:30
Deepesh Garg
a60849f6ab Merge pull request #20415 from hrwX/customer_primary_addr_v12
fix(Customer): Change `primary_address` fieldtype to Text
2020-01-27 12:33:38 +05:30
deepeshgarg007
6f27e97980 fix: Add group by functionality to purchase register 2020-01-27 08:49:52 +05:30
deepeshgarg007
8d9145aaac fix: Code cleanup and commonification 2020-01-27 08:49:42 +05:30
Himanshu Warekar
25a7330db0 fix: change primary addr fieldtype to Text 2020-01-24 17:36:59 +05:30
Saqib
92c999afcb fix: wrong outstanding invoices fetched against employee (#20374) 2020-01-24 16:23:05 +05:30
Anurag Mishra
9e3dc25b1c fix: Duplicate Attendance Due Wrong Date format (#20389) 2020-01-24 16:14:38 +05:30
Rucha Mahabal
2a3cd7d601 fix(Healthcare): disabled Lab Test Template shown as Enabled in List View (#20379)
* fix (Healthcare): disabled Lab Test Template shown as enabled in List View

* fix: remove custom disabled button and unhide disabled field
2020-01-24 16:11:16 +05:30
Marica
3ca67ceebb fix: Product Page non-stock item status (#20384) 2020-01-24 15:52:12 +05:30
Rucha Mahabal
245fc49089 fix: healthcare settings registration fee NoneType error (#20396) 2020-01-24 15:50:40 +05:30
rohitwaghchaure
78199dbf0a Merge pull request #20399 from rohitwaghchaure/fixed_serial_no_button_not_working_v12_hotfix
fix: add serial no button not working
2020-01-24 13:49:25 +05:30
Deepesh Garg
2ac33c9ce9 Merge pull request #20402 from deepeshgarg007/general_ledger_sort_v12
fix: Order GL entries by creation time in General ledger
2020-01-24 13:19:56 +05:30
Deepesh Garg
34cd035d8c Merge pull request #20392 from rohitwaghchaure/unlink_reference_name_from_batch_on_cancel_of_stock_transactions
fix: unlink references from batch on cancellation of stock transactions
2020-01-23 22:41:21 +05:30
deepeshgarg007
ba4f565ca3 fix: Order GL entries by creation time in General ledger 2020-01-23 17:48:41 +05:30
Rohit Waghchaure
5860427bc5 delete the auto created batch 2020-01-23 17:43:30 +05:30
Rohit Waghchaure
89f42eef49 fix: add serial no button not working 2020-01-23 15:53:45 +05:30
Deepesh Garg
eacbfa15c0 Merge pull request #20385 from rohitwaghchaure/fixed_lead_date_comparision_issue
fix: lead date comparison issue
2020-01-23 15:23:28 +05:30
Deepesh Garg
5d45c2c184 Merge pull request #20387 from rohitwaghchaure/lead_showing_two_times_in_the_report
fix: lead details duplicate entries
2020-01-23 15:21:11 +05:30
Deepesh Garg
b24b0378ea Merge pull request #20382 from nextchamp-saqib/small-fix-asset-v12
fix: tuple index out of range error
2020-01-23 15:02:29 +05:30
Rohit Waghchaure
144012a5de fix: unlink references from batch on cacnellation of stock transactions 2020-01-23 12:42:42 +05:30
rohitwaghchaure
5fb4027375 Merge pull request #20376 from rohitwaghchaure/zero_division_qty_error_while_completing_fg_entry_v12_pre_release
fix: Zero division error while making finished good entry against the…
2020-01-22 17:01:21 +05:30
rohitwaghchaure
3fa65f1363 Merge pull request #20375 from rohitwaghchaure/zero_division_qty_error_while_completing_fg_entry
fix: Zero division error while making finished good entry against the…
2020-01-22 17:00:44 +05:30
Rohit Waghchaure
79f630661a fix: lead details duplicate entries 2020-01-22 16:53:30 +05:30
Rohit Waghchaure
61b9fe6a81 fix: lead date comparison issue 2020-01-22 14:43:37 +05:30
thefalconx33
f38d9d8f0d fix: tuple index out of range error 2020-01-22 12:24:03 +05:30
Rohit Waghchaure
3a67daa1fd fix: Zero division error while making finished good entry against the work order 2020-01-21 19:25:27 +05:30
Rohit Waghchaure
813726b415 fix: Zero division error while making finished good entry against the work order 2020-01-21 19:22:27 +05:30
rohitwaghchaure
87fe2143be fix: not able to import chart of account if parent account is missing (#20367) 2020-01-21 15:32:12 +05:30
Saqib
c759b06f16 fix: account not added to child company (#20364)
* fix: account not added to child company

* fix: removed print

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-01-21 15:26:46 +05:30
Chinmay Pai
c32249a72f fix: Set Quotation expired if not Ordered or Lost (#20365)
Co-authored-by: Chinmay Pai <chinmaydpai@gmail.com>

Co-authored-by: KanchanChauhan <angel143.dr@gmail.com>
2020-01-21 14:12:49 +05:30
Nabin Hait
7cd6022a0b Merge branch 'v12-pre-release' into version-12 2020-01-21 13:07:27 +05:30
Nabin Hait
67274d01e8 bumped to version 12.4.2 2020-01-21 13:27:26 +05:50
Nabin Hait
19d7e43b90 fix: Don't fetch price list rate on change of qty (#20360) 2020-01-21 13:04:30 +05:30
Nabin Hait
05f4be69f4 fix: Don't fetch price list rate on change of qty (#20362) 2020-01-21 13:04:26 +05:30
Mangesh-Khairnar
541881162a fix: calculate remaining leave balance (#20342)
* fix: calculate remaining leave balance

* fix: nonetype issue in the total leaves calculation
2020-01-20 19:42:49 +05:30
Sahil Khan
c8884257b9 Merge branch 'v12-pre-release' into version-12 2020-01-20 18:02:31 +05:30
Sahil Khan
4674fec320 bumped to version 12.4.1 2020-01-20 18:22:31 +05:50
rohitwaghchaure
c7f0ab8ed6 fix: incorrect number of gl entries issue (#20351) 2020-01-20 17:53:44 +05:30
rohitwaghchaure
19c5e031a9 fix: incorrect number of gl entries issue (#20350) 2020-01-20 17:52:53 +05:30
Marica
8b943af911 fix: 'get_additonal_costs' is not defined (#20349)
* fix: 'get_additonal_costs' is not defined

* fix: Re-added get_items on Work order change.
2020-01-20 15:47:47 +05:30
Marica
863eb86a1d fix: 'get_additonal_costs' is not defined (#20345)
* fix: 'get_additonal_costs' is not defined

* fix: Re-added get_items on Work order change.
2020-01-20 15:46:50 +05:30
Nabin Hait
e5fbebe126 fix: deprecated fetching item price based on min_qty (#20348) 2020-01-20 15:45:09 +05:30
Nabin Hait
45be9fe416 fix: deprecated fetching item price based on min_qty (#20346) 2020-01-20 15:44:48 +05:30
Nabin Hait
1596352585 fix: close_opportunity_after_days field is in selling settings (#20334) 2020-01-17 15:59:02 +05:30
Nabin Hait
4b893b1d51 fix: Plaid TypeError in add_bank_accounts (#20336) 2020-01-17 15:57:43 +05:30
Parth J. Kharwar
d85e144944 chore: changed employee contact field name (#20227) 2020-01-17 11:47:49 +05:30
Rohan
4dfff5a271 fix: handle default value for batch size in BOM operation (#20327) 2020-01-17 11:46:00 +05:30
Pranav Nachnekar
c2b9598966 fix: imporer escaping (#20329) 2020-01-17 11:45:03 +05:30
Vishal Dhayagude
d16e7c096b fix: salary structure assignment filter employee based on company (#20319)
* fix: pick company from employee salary structure

* fix: Salary structure assignment fetch company from enmployee

* Revert "fix: Salary structure assignment fetch company from enmployee"

This reverts commit ab2da691c79646d6d095f347ea3e273f466ee34f.

* fix: Salary structure assignment fetch company from enmployee

* fix: filter on company for salary structure assignment

* fix: minor changes

* fix: minor changes

* fix: added company to salary strucutre assignment
2020-01-17 11:44:20 +05:30
sahil28297
d5676a87a8 Merge pull request #20331 from 0Pranav/version-12
fix: imporer escaping
2020-01-16 17:51:32 +05:30
0Pranav
73dff8993a fix: imporer escaping 2020-01-16 17:38:11 +05:30
Sahil Khan
0ef799dff8 Merge branch 'v12-pre-release' into version-12 2020-01-16 14:30:35 +05:30
Sahil Khan
e8476ef42a bumped to version 12.4.0 2020-01-16 14:50:35 +05:50
Himanshu
5511912251 fix: don't hide primary_address_and_contact_detail (#20321) 2020-01-16 13:39:03 +05:30
Saqib
514d3c37b9 fix: hide total amount field from journal entry PF (#20325) 2020-01-16 13:38:21 +05:30
Nabin Hait
9fef6e1b68 docs: Added change log for v12.4.0 (#20326) 2020-01-16 13:37:46 +05:30
Nabin Hait
37c51f5913 fix: Multiple fixes based on testing on pre-release branch (#20300)
* fix: Multiple fixes based on testing on pre-release branch

* fix: reload hr settings
2020-01-16 13:37:30 +05:30
Nabin Hait
7721954bbb fix: Multiple fixes based on testing on pre-release branch (#20303)
* fix: Multiple fixes based on testing on pre-release branch

* fix: reload hr settings
2020-01-16 13:37:20 +05:30
Nabin Hait
7e33d875e0 Revert "fix: incorrect required qty for subcontracting purchase receipt (#20288)" (#20323)
This reverts commit b65b525c44.
2020-01-16 13:02:40 +05:30
Marica
0a50088a0e fix: Applied query on PO Supplier popup field in Material Request. (#20232) 2020-01-15 19:24:10 +05:30
Marica
6ba6ba27bd fix: Missing argument in status updater (#20284) 2020-01-15 19:22:21 +05:30
Saqib
611e23c149 fix: make jv depreciations only if calculate depr is checked (#20283) 2020-01-15 19:05:42 +05:30
sahil28297
89affd8d09 fix(patch): reload tax category (#20307) 2020-01-15 18:58:09 +05:30
sahil28297
ab2e52ca07 fix(patch): reload tax category (#20309) 2020-01-15 18:57:40 +05:30
sahil28297
8dfd5535f1 fix(patch): do not append taxes to template if account name is not set (#20311) 2020-01-15 18:57:20 +05:30
sahil28297
dc0ea3fdb0 fix(patch): do not append taxes to template if account name is not set (#20310) 2020-01-15 18:57:08 +05:30
rohitwaghchaure
b65b525c44 fix: incorrect required qty for subcontracting purchase receipt (#20288) 2020-01-15 16:37:10 +05:30
Saqib
8c45ae73b3 fix: get existing payment req amount only from unpaid req (#20290) 2020-01-15 16:36:19 +05:30
rohitwaghchaure
4872417f86 fix: incorrect number of GL Entries error in stock entry (#20298) 2020-01-15 16:35:15 +05:30
rohitwaghchaure
fed9e2861c fix: incorrect number of GL Entries error in stock entry (#20297) 2020-01-15 16:35:02 +05:30
Pranav Nachnekar
c50f08a23a fix: remove debugger statement (#20294)
introduced in https://github.com/frappe/erpnext/pull/20222
2020-01-15 14:49:42 +05:30
Pranav Nachnekar
6e115638a1 fix: remove debugger statement (#20295)
backport of https://github.com/frappe/erpnext/pull/20294
2020-01-15 14:49:28 +05:30
Saqib
2d37bbedaa fix: auto cancel if movement exists (#20268)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-01-14 12:42:43 +05:30
rohitwaghchaure
00f6f114e7 Merge pull request #20278 from rohitwaghchaure/fixed_report_stock_and_account_value_comparison_v12_pre_release
fix: filter issue for the stock and account value comparision report
2020-01-14 12:19:04 +05:30
rohitwaghchaure
437be1162e Merge pull request #20277 from rohitwaghchaure/fixed_report_stock_and_account_value_comparison_v12_hotfix
fix: filter issue for the stock and account value comparision report
2020-01-14 12:18:50 +05:30
Rohit Waghchaure
ca4789c9f7 fix: filter issue for the stock and account value comparision report 2020-01-14 12:17:27 +05:30
Rohit Waghchaure
e3b6a14ab1 fix: filter issue for the stock and account value comparision report 2020-01-14 12:15:06 +05:30
Saqib
eb7893768b fix: payment entry can be created against on hold PI (#20271) 2020-01-14 12:07:30 +05:30
Saqib
6e1ef4f5c2 fix: gl not generated on manual asset creation (#20266) 2020-01-14 11:38:00 +05:30
Saqib
d56bc81daf fix: gl not generated on manual asset creation (#20267) 2020-01-14 11:36:47 +05:30
Deepesh Garg
7d7027f47c fix: Remove patch to set automatic tax fetching from item tax template (#20235)
* fix: Remove patch to set automatic tax fetching from item tax template

* fix: Remove duplicate patch
2020-01-13 15:09:21 +05:30
Deepesh Garg
a14f72590d fix: Remove patch to set automatic tax fetching from item tax template (#20236)
* fix: Remove patch to set automatic tax fetching from item tax template

* fix: Remove duplicate patch
2020-01-13 15:09:16 +05:30
Deepesh Garg
7086ecb3b0 Merge pull request #20246 from nextchamp-saqib/asset-cancel-fix-v12
fix: auto cancel if movement exists
2020-01-13 15:07:57 +05:30
Saqib
4b401f0573 Merge pull request #20263 from nextchamp-saqib/customer-jv-fix-v12-pre
fix: remove default customer as party type
2020-01-13 14:12:22 +05:30
thefalconx33
5beee8af58 fix: remove default customer as party type 2020-01-13 13:51:17 +05:30
Deepesh Garg
8508ace50e Merge pull request #20258 from nextchamp-saqib/revery-hv-v12
fix: remove default customer as party type
2020-01-13 13:49:20 +05:30
thefalconx33
c52ef56875 fix: remove default customer as party type 2020-01-13 12:45:08 +05:30
deepeshgarg007
4dfe8ab483 fix: Remove debug param 2020-01-12 22:15:25 +05:30
deepeshgarg007
ea5e0a9d5b fix: Grand total query fix 2020-01-12 21:56:31 +05:30
deepeshgarg007
30111e6403 fix: Remove group-by item 2020-01-12 21:56:22 +05:30
deepeshgarg007
e5a572a4a8 fix: Group by sales register report 2020-01-12 21:56:12 +05:30
thefalconx33
83ed7df8cd fix: auto cancel if movement exists 2020-01-11 14:20:18 +05:30
Deepesh Garg
97e93c6257 Merge pull request #20238 from deepeshgarg007/hsn_template_v12
fix: Item tax template fetching from HSN Code
2020-01-10 21:45:22 +05:30
Deepesh Garg
f7cd8c2702 Merge pull request #20239 from deepeshgarg007/hsn_template_v12
fix: Item tax template fetching from HSN Code
2020-01-10 21:43:26 +05:30
deepeshgarg007
f67b3f8a79 fix: Item tax template fetching from HSN Code 2020-01-10 15:04:34 +05:30
Nabin Hait
8356d214e1 Merge branch 'version-12-hotfix' into v12-pre-release 2020-01-09 15:09:20 +05:30
rohitwaghchaure
64f3577148 feat: report to show difference between stock and account value (#20226) 2020-01-09 15:05:26 +05:30
Marica
ff3ff9a3c2 fix: Employee name in Report trial balance for party (#20224)
* fix: Employee name in Report trial balance for party

* fix: Add account filter in trial balance for party report

Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2020-01-09 13:34:30 +05:30
Pranav Nachnekar
03c1396fc7 fix: Parent Item of Product Bundle should not appear in dialog (#20222)
* fix: add new delivery note button in Sales Order

* fix: parent item should not appear in raw material request dialog
2020-01-09 13:31:53 +05:30
Pranav Nachnekar
4479b93c1a fix: escape % in customer name (#20203)
* fix: add new delivery note button in Sales Order

* fix: escape % in customer name

* Update sales_order.js

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-01-09 12:22:11 +05:30
Anurag Mishra
da82edf711 fix: submit salary is not showing after creating slary slip in payroll (#20225) 2020-01-09 12:06:14 +05:30
Saqib
7b8bf4f4d4 Merge pull request #20213 from nextchamp-saqib/pay-entry-v12
fix: paid amount gets overwritten by get_outstanding_invoices
2020-01-07 13:33:16 +05:30
thefalconx33
07c915d00b fix: paid amount gets overwritten by get_outstanding_invoices 2020-01-07 13:14:01 +05:30
Marica
75b62cdd9f fix: Added description and title to supplier selection popup in Material Request. (#20180) 2020-01-07 13:06:13 +05:30
Don-Leopardo
54f2d53522 fix: get_item_price not working properly (#20206)
* fix: min_qty not working without party and valid_from not being used to order results

* fix: fetch price on item qty change
2020-01-07 11:35:56 +05:30
Deepesh Garg
55bdaae3ee feat: Validity for Item taxes (#20136)
* feat: Validity for Item taxes

* fix: Add HSN wise taxes

* fix: Sort taxes based on validity

* fix: Validation for item tax template and filters based on validity

* fix: Add missing semicolon

* fix: Validate tax template only if item code available

* fix: Do not validate or filter item tax template if no item taxes applied

* fix: Consider item group for validating taxes

* fix: Test cases for item tax  validation

* fix: Item tax template filtering fixes

* fix: Add missing semicolon

* fix: Remove unnecessary query
2020-01-07 11:31:19 +05:30
sahil28297
6bbfce13fe fix(item_tax_template): fetch parent account if not set (#20197) 2020-01-07 11:30:18 +05:30
Pranav Nachnekar
0980ebe93e fix: add new delivery note button in Sales Order (#20200)
* fix: add new delivery note button in Sales Order

* fix: removed debugger

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-01-07 11:29:45 +05:30
Rohan
ded5a255af fix: integer UOM check in transactions (#20177) 2020-01-07 11:24:02 +05:30
Anurag Mishra
13c29aeec4 fix: loan deduction during creation of bank entry in payroll (#20194) 2020-01-07 11:13:58 +05:30
rohitwaghchaure
cf261d0788 Merge pull request #20196 from rohitwaghchaure/fixed_party_type_in_payment_request_hotfix
fix: incorrect party type in payment request
2020-01-06 15:16:30 +05:30
Rohit Waghchaure
3074679d7e fix: party type in payment request 2020-01-06 15:09:09 +05:30
rohitwaghchaure
a037f9d55e Merge pull request #20171 from nabinhait/inter-company-serial-no-outgoing-rate-v12
fix: Get outgoing rate of serial no from SLE if serial no already transferred to another company
2020-01-06 12:06:08 +05:30
rohitwaghchaure
3530d0d7c9 fix: incorrect valuation rate for finished good entry (#20166) 2020-01-06 11:51:36 +05:30
Deepesh Garg
3da9967fa8 Merge pull request #20178 from Alchez/fix-v12-item-price-list-view
feat: show item name in Item Price list view (v12)
2020-01-06 08:06:07 +05:30
Himanshu
f276e8d6a1 fix(plaid): change json structure (#20190) 2020-01-06 01:01:37 +05:30
Rohan
9e0d9aa947 feat: show item name in Item Price list view (#20156) 2020-01-03 15:21:58 +05:30
Marica
df363d7dd6 Merge pull request #20173 from nextchamp-saqib/item-min-qty-v12
ux: add description for minimum purchase qty
2020-01-03 12:54:45 +05:30
thefalconx33
81e2f2a45f ux: add description for minimum purchase qty 2020-01-02 19:16:36 +05:30
Nabin Hait
255361ba92 fix: Get outgoing rate of serial no from SLE if serial no already transferred to another company 2020-01-02 19:01:48 +05:30
rohitwaghchaure
67bcfde3de Merge pull request #20168 from rohitwaghchaure/fix_pricing_rule_issue_for_ignore_pricing_rule
fix: ignore pricing rule for other item group
2020-01-02 17:32:43 +05:30
Rohit Waghchaure
b6351b4ca0 fix: ignore pricing rule for other item group 2020-01-02 17:29:50 +05:30
Deepesh Garg
c5a8d33374 Merge pull request #20162 from deepeshgarg007/general_ledger_print_v12
fix: Show closing row in general ledger print
2020-01-02 17:06:05 +05:30
deepeshgarg007
f4589da806 fix: Show closing row in general ledger print 2020-01-02 12:26:12 +05:30
Rucha Mahabal
c5cd7cd65d fix(Subscription): pass start_date while computing next_schedu… (#20160) 2019-12-31 19:15:48 +05:30
Anurag Mishra
a5e56dfb6f fix: set currency to company default currency (#20158) 2019-12-31 17:23:25 +05:30
Saqib
adb35d8703 fix: don't show transfer button if already items are supplied (#20155) 2019-12-31 17:20:07 +05:30
Deepesh Garg
db4f3d98ab Merge pull request #20150 from nextchamp-saqib/rounded-total-ss-v12
feat: added provision to disable rounded total for salary slips
2019-12-31 17:03:11 +05:30
thefalconx33
cd2899f429 feat: added provision to disable rounded total for salary slips 2019-12-31 15:29:36 +05:30
thefalconx33
8f6a6e8d2a feat: added provision to disable rounded total for salary slips 2019-12-31 14:35:03 +05:30
Anurag Mishra
fd68a682ca fix(refactor): loan in HRMS (#20023)
* fix: update laon on salary slip submission and Cancelation

* fix(refactor): Loan in HRMS

* fix: Changes requested

* Update loan.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2019-12-31 14:01:22 +05:30
Saqib
25fd2743a8 fix: party account currency not fetched from account for SO (#20147) 2019-12-31 13:55:34 +05:30
Saqib
826989afda fix: none type object updates AR report row (#20148) 2019-12-31 13:46:39 +05:30
Marica
10622aee7f fix: Field 'other_charges_calculation' column type changed. (#20142) 2019-12-30 22:20:27 +05:30
Anurag Mishra
26e86e7576 fix: added extra condition (#20139) 2019-12-30 16:17:10 +05:30
Rucha Mahabal
efa7d5c831 fix: format currency field in bank and cash payment voucher print format (#20138) 2019-12-30 15:18:02 +05:30
rohitwaghchaure
55cf2477cd fix: incorrect batch fetched for the serialized items (#20118) 2019-12-30 13:27:10 +05:30
ci2014
5c144c992e Skip validate_duplicate_apply_on if not necessary (#20128)
Skip the validation of duplicate fields if the type is transaction, for example.
2019-12-30 11:50:43 +05:30
rohitwaghchaure
2fcc51dece fix: service item's cost showing incorrect amount in stock entry (#20105) 2019-12-30 11:42:01 +05:30
Deepesh Garg
e76670562c Merge pull request #20124 from nextchamp-saqib/so-update-items-hfix
fix: don't allow deletion of items which has work order assigned to it
2019-12-28 21:01:47 +05:30
Deepesh Garg
e1aa48968e Merge pull request #20126 from marination/stock-module-desk-hotfix
chore: Added Reports to Stock Module Desk
2019-12-28 17:45:31 +05:30
marination
2faa8f92be chore: Added Reports to Stock Module Desk 2019-12-27 17:21:08 +05:30
thefalconx33
82c5a2bf45 fix: don't allow deletion of items which has work order assigned to it 2019-12-27 17:08:57 +05:30
Marica
ed386376dc fix: Removed unneccesary Duplicate Entry Error. (#20121) 2019-12-27 16:53:09 +05:30
Marica
65353e5590 fix: Show both warehouse columns in Stock Entry Grid view. (#20114) 2019-12-27 15:30:47 +05:30
Saqib
aab1fb0d6a fix: unpaid invoices are created even if current invoice is paid (#20082) 2019-12-27 13:02:33 +05:30
Deepesh Garg
2dec923740 fix: Patch incorrect GST category in invoices (#20085)
* fix: Patch to set GST category for unregistered invoice

* fix: Move patch up in line

* fix: Remove unwanted patch statements
2019-12-27 12:58:38 +05:30
Saqib
6ea509f7f4 feat: allow adding and deleting of items in submitted SO & PO (#19912)
* feat: allow adding of items after quotation submission

* feat: allow deletion of items from submitted SO & PO

* fix: case when items are added and deleted at once

* fix: add test cases
* For deletion of items while Updating Items after submitting PO & SO
2019-12-27 12:56:17 +05:30
Sammish Thundiyil
dfdd684fbf modified: erpnext/hr/doctype/repayment_schedule/repayment_schedule.json (#20112) 2019-12-27 12:52:40 +05:30
rohitwaghchaure
b299026280 fix: incorrect reorder level in stock balance report (#20110) 2019-12-27 12:36:14 +05:30
Rohan
3d2e61eef3 fix: Add Serial No button prompt (#20098) 2019-12-27 12:34:43 +05:30
rohitwaghchaure
47eda0fa6d fix: incorrect validation for scrap items (#20108) 2019-12-27 12:21:10 +05:30
Mangesh-Khairnar
8ec1d8d5da fix: fetch opening accumulated depreciation (#20096) 2019-12-27 12:14:27 +05:30
rohitwaghchaure
6adf617a72 Merge pull request #20078 from nabinhait/rounding-adjustment-v12
fix: rounding adjustment while both inclusive tax and discount amount present
2019-12-27 11:52:10 +05:30
Deepesh Garg
7c7291ed4f Merge pull request #20088 from nextchamp-saqib/pay-reco-hfix
fix: undefined dr_or_cr_notes in case of party type Employee
2019-12-27 08:12:33 +05:30
rohitwaghchaure
a169292f6e Merge pull request #20103 from deepeshgarg007/travis-fix-v12
fix: Travis(v12)
2019-12-26 22:51:13 +05:30
thefalconx33
5869757860 fix: travis failing for leave application test 2019-12-26 21:52:54 +05:30
Deepesh Garg
6fefdb5b18 Merge pull request #20092 from nextchamp-saqib/account-period-hfix
fix: only show doctypes which impact accounting in accounting period
2019-12-26 15:23:54 +05:30
Saqib
8c08db33d7 Merge pull request #20094 from prssanna/grid-fix-v12
fix: wrong items in table being deleted
2019-12-26 14:54:16 +05:30
prssanna
bc15ea68b8 fix: wrong items in table being deleted 2019-12-26 14:44:47 +05:30
thefalconx33
ee28663836 fix: undefined dr_or_cr_notes in case of party type Employee 2019-12-26 14:43:03 +05:30
thefalconx33
c522df8f9d fix: only show doctypes which impact accounting in accounting period 2019-12-26 13:56:36 +05:30
Himanshu
d0e39e6fac fix: remove quote (#20077) 2019-12-25 15:16:35 +05:30
Nabin Hait
4c4da06a71 fix: rounding adjustment while both inclusive tax and discount amount present 2019-12-25 14:00:51 +05:30
rohitwaghchaure
827ac91e7f fix: supplier email id field not showing in the notification for purchase cycle doctypes (#20070) 2019-12-24 13:03:41 +05:30
Deepesh Garg
379b6df361 Merge pull request #20008 from deepeshgarg007/budget_variance_dimension_v12
feat: Dynamic filters for dimensions in budget variance report
2019-12-24 12:58:22 +05:30
Deepesh Garg
2e461551d6 fix: Allow creation of multiple landed cost voucher against a Purchase Document (#20059) 2019-12-24 12:55:18 +05:30
Himanshu
2d30dc583c fix: resolve ambigious error (#20067) 2019-12-24 12:31:34 +05:30
Sun Howwrongbum
9de6083dbf feat: consider expiry_date during Batch queries (#20064) 2019-12-24 12:29:05 +05:30
RJPvT
9512e55704 Update supplier_scorecard.py (#20060) 2019-12-24 12:25:05 +05:30
rohitwaghchaure
9635df4f26 Merge pull request #20066 from rohitwaghchaure/job_card_operation_id_showing_blank
fix: Map custom job card create button with dashboard
2019-12-24 12:11:16 +05:30
Rohit Waghchaure
7bbeb31015 fix: Map custom job card create button with dashboard 2019-12-24 12:08:58 +05:30
Deepesh Garg
1f4b251f53 Merge pull request #20045 from deepeshgarg007/employee_advance_return_v12
feat: Capture return amount against Employee Advance via Journal Entry
2019-12-24 11:55:24 +05:30
Deepesh Garg
34dabc715b fix: Update return amount label 2019-12-24 11:54:04 +05:30
DeeMysterio
3881ce94ef fix(employee onboarding): stop showing irrelevant job offer links for a job applicant (#20054) 2019-12-23 19:02:44 +05:30
Marica
065bbc9cb3 enhancement: Added Set Reserve Warehouse field in Purchase Order. (#19992) 2019-12-23 18:24:28 +05:30
Pranav Nachnekar
139bb92df9 fix: wrap scheduled_time with getdate (#20046) 2019-12-23 18:19:52 +05:30
Deepesh Garg
15c8caac57 fix: Do not validate accounting dimensions if from repost (#20043)
* fix: Do not check for accounting dimensions in case of repost

* fix: Do not validate accounting dimensions if from repost
2019-12-23 17:58:44 +05:30
Saqib
7b926f228f fix: bad condition while checking last asset movement entry (#20048) 2019-12-23 16:08:40 +05:30
Saqib
dab963aac0 fix: remove mandatory purchase reference for existing asset (#19981) 2019-12-23 15:56:50 +05:30
Saqib
170c9d0ab8 fix: remove mandatory purchase reference for existing asset (#19980) 2019-12-23 15:56:44 +05:30
Saqib
f27a6528db fix: exchange rate not fetching correctly (#19985) 2019-12-23 15:52:59 +05:30
Anurag Mishra
b139f2fc0f feat: fixed party and party type in Accrual journal entry (#20022) 2019-12-23 15:50:20 +05:30
Mangesh-Khairnar
498ebfba9d fix(expense-claim): update status (#20032)
* fix(expense-claim): update status

* fix(expense-claim): compare using grandtotal precision
2019-12-23 15:48:18 +05:30
Deepesh Garg
2ebafb39ac Merge pull request #20011 from nextchamp-saqib/pi-payable-filter-hotfix
fix: bad credit to filter query in purchase invoice
2019-12-23 14:51:50 +05:30
thefalconx33
adc1b9dc0a fix: bad query for debit_to field in sales invoice 2019-12-23 13:08:46 +05:30
deepeshgarg007
b7012a47a2 fix: Remove trailing whitespace and add semicolon 2019-12-23 11:13:53 +05:30
deepeshgarg007
f1036c6985 feat: Custom button to create return entry from Employee Advance 2019-12-23 11:13:44 +05:30
deepeshgarg007
8f6e989f57 feat: Capture return amount against Employee advance via Journal Entry 2019-12-23 11:13:34 +05:30
deepeshgarg007
9609cce7b7 fix: Dashboard for employee advance doctype 2019-12-23 11:13:24 +05:30
Deepesh Garg
e14961a6c6 Merge pull request #20013 from nextchamp-saqib/share-transf-perm
fix: no role has cancelling permission for share transfer doctype
2019-12-21 17:22:15 +05:30
Deepesh Garg
f47afecc42 Merge pull request #20035 from rohitwaghchaure/fixed_patch_for_add_export_type_field_in_party_master_v12_hotfix
fix: patch
2019-12-21 17:20:28 +05:30
Sahil Khan
782f45ae5f Merge branch 'v12-pre-release' into version-12 2019-12-20 17:11:52 +05:30
Sahil Khan
f9ac8f63cf bumped to version 12.3.1 2019-12-20 17:31:52 +05:50
sahil28297
411b8e86b3 Merge pull request #20036 from rohitwaghchaure/fixed_patch_for_add_export_type_field_in_party_master_v12_pre_release
fix: patch
2019-12-20 17:09:09 +05:30
Rohit Waghchaure
2b14669b58 fix: patch 2019-12-20 17:06:57 +05:30
Rohit Waghchaure
14f624f587 fix: patch 2019-12-20 17:06:00 +05:30
Sahil Khan
98ddbf05b1 Merge branch 'v12-pre-release' into version-12 2019-12-20 15:55:12 +05:30
Sahil Khan
67d25028b2 bumped to version 12.3.0 2019-12-20 16:15:12 +05:50
Mangesh-Khairnar
328d5920bd fix(expense-claim): update status (#20033)
* fix(expense-claim): update status

* fix(expense-claim): compare using grandtotal precision
2019-12-20 15:26:49 +05:30
rohitwaghchaure
81d614b6bd Merge pull request #20007 from 0Pranav/appointment-schedulling-v12
fix: multiple issues with appointment schedulling
2019-12-20 15:17:41 +05:30
rohitwaghchaure
fdb7cec244 Merge pull request #20006 from 0Pranav/appointment-schedulling-v12
fix: multiple issues with appointment schedulling
2019-12-20 15:17:23 +05:30
thefalconx33
3aabeb88b4 fix: account manager doesn't have cancel submit perm for share transfer 2019-12-20 14:49:18 +05:30
rohitwaghchaure
b7fd9a652d Merge pull request #19929 from 0Pranav/delete-company-txn-query-v12
fix: replace sql with orm query for deleting company communications
2019-12-20 13:48:23 +05:30
rohitwaghchaure
63bc8f2d90 Merge pull request #20026 from rohitwaghchaure/subcontracting_issue_for_partial_purchase_receipt
fix: incorrect consumed qty for partial purchase receipt in subcontra…
2019-12-20 13:36:06 +05:30
rohitwaghchaure
b6d7fba936 Merge pull request #20025 from deepeshgarg007/gstr-2-fix-v12
fix: Tax amount not visible for some invoices
2019-12-20 13:35:41 +05:30
rohitwaghchaure
38540e85e8 Merge pull request #20029 from deepeshgarg007/gstr-2-fix-v12
fix: Tax amount not visible for some invoices
2019-12-20 13:35:14 +05:30
rohitwaghchaure
b3d97a560f Merge pull request #20027 from rohitwaghchaure/subcontracting_issue_for_partial_purchase_receipt_pre_release
fix: incorrect consumed qty for partial purchase receipt in subcontra…
2019-12-20 13:05:19 +05:30
Rohit Waghchaure
39436c6d38 fix: incorrect consumed qty for partial purchase receipt in subcontracting 2019-12-20 12:59:56 +05:30
Rohit Waghchaure
59cecb29a0 fix: incorrect consumed qty for partial purchase receipt in subcontracting 2019-12-20 12:56:01 +05:30
deepeshgarg007
55bf951ff5 fix: Tax amount not visible for some invoices 2019-12-20 12:43:55 +05:30
Deepesh Garg
4f543ce42a Merge pull request #20015 from marination/valuation_rate_company_hotfix
fix: Company None not found in get_valuation_rate
2019-12-20 11:56:58 +05:30
Deepesh Garg
8931b3d602 Merge pull request #19989 from deepeshgarg007/sales_register_upgrade_v12
fix: Update sales register report
2019-12-19 13:53:35 +05:30
marination
b13eebe657 fix: Company None not found in get_valuation_rate 2019-12-19 13:39:41 +05:30
thefalconx33
fcb296aafb fix: no role has cancelling permission for share transfer doctype 2019-12-19 13:19:50 +05:30
thefalconx33
5109b36689 fix: bad filter query 2019-12-19 13:12:37 +05:30
deepeshgarg007
2149d7ca4f feat: Dynamic filters for dimensions in budget variance report 2019-12-19 13:05:52 +05:30
0Pranav
220a208f4e fix: default timezone selection 2019-12-19 12:28:12 +05:30
0Pranav
0c8e46fdea fix: remove timezones in js 2019-12-19 12:25:29 +05:30
Deepesh Garg
ee4901f4a0 Merge pull request #19990 from 0Pranav/mapped-doc-for-customer-quotation-v12
fix: use open_mapped_doc instead of create_new_doc
2019-12-19 12:00:53 +05:30
Deepesh Garg
a0c847920f Merge pull request #19984 from 0Pranav/mapped-doc-for-customer-quotation-v12
fix: use open_mapped_doc instead of create_new_doc
2019-12-19 12:00:23 +05:30
rohitwaghchaure
86e5ff3cf9 Merge pull request #19997 from rohitwaghchaure/fixed_pricing_rule_issue_for_product_discount_v12_hotfix
fix: Pricing Rule Discount for Product
2019-12-19 11:12:15 +05:30
rohitwaghchaure
5dd7503516 Merge pull request #19995 from rohitwaghchaure/fixed_pricing_rule_issue_for_product_discount_pre_relesae
fix: Pricing Rule Discount for Product
2019-12-19 11:11:37 +05:30
deepeshgarg007
5cc0e08a41 fix: Use get_value instead of get_doc and formatting 2019-12-19 11:07:43 +05:30
Rohit Waghchaure
6b00d60b46 fix: Pricing Rule Discount for Product 2019-12-18 17:54:28 +05:30
Rohit Waghchaure
fecf5a9a15 fix: Pricing Rule Discount for Product 2019-12-18 17:48:39 +05:30
0Pranav
5b4050a4ff add link to appointment booking in sidebar 2019-12-18 16:30:54 +05:30
0Pranav
4d7862ef4c fix: defualt timezone not getting selected 2019-12-18 16:27:16 +05:30
0Pranav
6e41475612 fix : only set price list if it exists for customer 2019-12-18 16:05:59 +05:30
sahil28297
803e0ec27c Merge pull request #19988 from rohitwaghchaure/change_log_for_v12_3_0
feat: v12_3_0 change log
2019-12-18 15:54:37 +05:30
Rohit Waghchaure
b3addff99e v12_3_0 change log 2019-12-18 15:49:32 +05:30
deepeshgarg007
c6e098881f fix: Update sales register report 2019-12-18 15:43:14 +05:30
0Pranav
200ceb5352 use open_mapped_doc instead of create_new_doc 2019-12-18 12:34:19 +05:30
rohitwaghchaure
8c50f5c23f Merge pull request #19977 from Mangesh-Khairnar/fix-compensatory-off-pre
fix: compensatory off leave creation
2019-12-18 11:29:18 +05:30
rohitwaghchaure
6351a9395c Merge pull request #19975 from rohitwaghchaure/not_able_to_make_work_order_from_bom_v12_hotfix
fix: not able to make work order from BOM
2019-12-18 11:12:45 +05:30
Rushabh Mehta
fb2153c0eb Merge pull request #19966 from alyf-de/version-12-hotfix
fix(regional): Py3 compatibility for DATEV Export
2019-12-18 08:48:50 +05:30
Mangesh-Khairnar
86600ac8b9 fix: allow creation of additional leave ledger entry 2019-12-17 18:37:15 +05:30
Mangesh-Khairnar
b76a04b470 fix: compensatory leave request creation 2019-12-17 18:37:09 +05:30
Rohit Waghchaure
bb42fc615e fix: not able to make work order from BOM 2019-12-17 18:18:17 +05:30
rohitwaghchaure
80913994da Merge pull request #19974 from rohitwaghchaure/not_able_to_make_work_order_from_bom
fix: not able to make work order from BOM
2019-12-17 18:15:37 +05:30
Rohit Waghchaure
92ecdbe0c8 fix: not able to make work order from BOM 2019-12-17 18:13:54 +05:30
rohitwaghchaure
089dcaed70 Merge pull request #19969 from rohitwaghchaure/fixed_incorrect_outstanding_amount_showing_in_the_ap_ar_report
fix: incorrect outstanding amount showing in the AP/AR report
2019-12-17 17:15:28 +05:30
Mangesh-Khairnar
03a427a9e7 Merge pull request #19961 from Mangesh-Khairnar/compensatory-off-fix
fix: compensatory leave request creation
2019-12-17 13:32:05 +05:30
Rohit Waghchaure
764c2c7f17 fix: incorrect outstanding amount shwoing in the AP/AR report 2019-12-17 12:44:19 +05:30
Mangesh-Khairnar
b4d9b80fed fix: allow creation of additional leave ledger entry 2019-12-17 12:25:25 +05:30
Raffael Meyer
215274719e fix(regional): PY3 compatibility 2019-12-16 17:33:44 +01:00
rohitwaghchaure
c920efc156 Merge pull request #19963 from rohitwaghchaure/allow_overproduction_against_work_order_version_12_hotfix
fix: not allow to over production against work order
2019-12-16 18:04:27 +05:30
rohitwaghchaure
3b9fe1ae6f Merge pull request #19959 from rohitwaghchaure/fixed_incorrect_child_bom_fecthed
fix: incorrect child boms fetched
2019-12-16 17:00:08 +05:30
Rohit Waghchaure
c76c5e699b fix: now allow to over production against work order 2019-12-16 16:59:01 +05:30
Mangesh-Khairnar
ce6923ecb6 fix: compensatory leave request creation 2019-12-16 16:56:57 +05:30
0Pranav
03db85f3e7 fix: replace sql query by orm in delete_communications and added tests 2019-12-16 16:54:03 +05:30
Rohit Waghchaure
666fba94e2 fix: incorrect children boms fetched 2019-12-16 16:18:33 +05:30
rohitwaghchaure
48a8a40703 Merge pull request #19944 from nextchamp-saqib/gl-precision-hotfix
fix: gl entries doesn't filter based on debit precision
2019-12-16 15:29:04 +05:30
rohitwaghchaure
5646816282 Merge pull request #19870 from nextchamp-saqib/website-hotfix
fix: website showing disabled items in product list
2019-12-16 15:25:07 +05:30
thefalconx33
f8df3c7af2 fix: review changes 2019-12-16 15:03:27 +05:30
rohitwaghchaure
62d4dfa883 Merge pull request #19956 from nextchamp-saqib/pos-serial-no
fix: display serial no selection on adding items to cart
2019-12-16 14:54:23 +05:30
thefalconx33
b8f9fd023b fix: display serial no selection on adding items to cart 2019-12-16 14:49:59 +05:30
rohitwaghchaure
0df3c93737 Merge pull request #19936 from benknowles/patch-3
fix: task validation error when adding tasks to projects
2019-12-16 14:01:20 +05:30
rohitwaghchaure
e0e7dcd2f6 Merge pull request #19914 from nextchamp-saqib/cart-address-hotfix
fix: enable adding of address without enabling checkout feature
2019-12-16 13:52:48 +05:30
rohitwaghchaure
d5b1baed39 Merge pull request #19907 from 0Pranav/appointment-schedulling-v12
fix: change book-appointment route
2019-12-16 13:50:47 +05:30
rohitwaghchaure
800545ff5b Merge pull request #19947 from rohitwaghchaure/pricing_rule_not_working_for_product_discount_v12_hotfix
fix: pricing rule not working for product discount
2019-12-16 13:37:45 +05:30
rohitwaghchaure
388a177f75 Merge pull request #19939 from marination/item_manufacturer_table
fix(ui): Removed 'manufacturers' table from Item Master
2019-12-16 13:36:56 +05:30
Rohit Waghchaure
821166c628 fix: schedule date 2019-12-16 12:29:39 +05:30
marination
2b8df06f8e fix: Removed validation from non existent manufacturers table 2019-12-16 12:18:24 +05:30
Rohit Waghchaure
4e8e466a98 fix: pricing rule not working for production discount 2019-12-16 11:16:36 +05:30
Deepesh Garg
31d4482336 Merge pull request #19953 from surajshetty3416/fix-profit-and-loss-statement-version-12-hotfix
fix: Profit and Lost (financial statement) report
2019-12-15 20:23:05 +05:30
Suraj Shetty
5cd8c7c722 fix: Financial statement report
- Hidden column should note be considered in the report
- Remove hardcoded currency formatting
- Remove duplicate letterhead in the report
(print_template already adds one)
- Remove extra quotes from Total Amount text
2019-12-14 23:33:14 +05:30
Deepesh Garg
e14d9b5476 Merge pull request #19951 from deepeshgarg007/patch-and-address-fix-v12
fix: Add missing import
2019-12-14 23:03:27 +05:30
deepeshgarg007
6a8ff1bebe fix: Add missing import 2019-12-14 21:31:11 +05:30
rohitwaghchaure
a41d464198 Merge pull request #19942 from deepeshgarg007/pricing_rule_fix_v12
fix: Price rule filtering fix
2019-12-13 16:01:35 +05:30
thefalconx33
980793bde0 fix: gl entries doesn't filter based on debit precision 2019-12-13 15:42:34 +05:30
deepeshgarg007
b7329eac19 fix: Price rule filtering fix 2019-12-13 13:49:12 +05:30
marination
9ec5cb2570 fix: Removed 'manufacturers' table from Item Master 2019-12-13 13:12:10 +05:30
Deepesh Garg
44296a392d Merge pull request #19735 from marination/zero-division-v12-hotfix
fix: Division by zero error in Stock Entry
2019-12-13 09:24:31 +05:30
Ben Knowles
9097c7e11c fix: task validation error when adding tasks to projects
Related to PR #19919
2019-12-12 11:30:17 -06:00
Deepesh Garg
0256d7549c Merge pull request #19931 from deepeshgarg007/regional_address_fix_v12
fix: Get regional address details
2019-12-12 16:54:34 +05:30
marination
94d8b99ef9 fix: Distribute charges based on quantity if Total Basic Amount is Zero. 2019-12-12 16:51:11 +05:30
Deepesh Garg
3fe1335f7b Merge pull request #19926 from prssanna/file-upload-fix-v12
fix: Bank statement not getting attached in Bank Reconciliation
2019-12-12 15:19:36 +05:30
Deepesh Garg
dc7a4ac8af Merge pull request #19925 from rohitwaghchaure/not_able_to_submit_the_landed_cost_voucher_version_12
fix: not able to submit the landed cost voucher
2019-12-12 15:17:05 +05:30
Deepesh Garg
c0ff769214 Merge pull request #19924 from rohitwaghchaure/not_able_to_submit_the_landed_cost_voucher_version_12_hotfix
fix: not able to submit the landed cost voucher
2019-12-12 15:16:31 +05:30
deepeshgarg007
0a527b9f9a fix: Get regional address details fix 2019-12-12 15:13:30 +05:30
prssanna
e03871f9de fix: empty fname and fcontent of uploaded file 2019-12-12 12:22:03 +05:30
Rohit Waghchaure
c0286780bd fix: not able to submit the landed cost voucher 2019-12-12 12:14:26 +05:30
Rohit Waghchaure
9cc484650b fix: not able to submit the landed cost voucher 2019-12-12 12:13:40 +05:30
rohitwaghchaure
319f126258 Merge pull request #19901 from rohitwaghchaure/not_able_to_cancel_landed_cost_voucher_v12
fix: not able to cancel the landed cost voucher
2019-12-12 12:11:02 +05:30
0Pranav
234de12836 fix: add init files for book-appointments 2019-12-12 11:20:31 +05:30
rohitwaghchaure
4c19000ed9 Merge pull request #19918 from rohitwaghchaure/fixed_pricing_rule_working_on_other_items_v12_cherry_pick
fix: pricing rule not working
2019-12-12 10:20:05 +05:30
Deepesh Garg
a1651ca5f2 Merge pull request #19898 from hrwX/qms-int-fix-v12
fix: rename labels
2019-12-12 08:45:20 +05:30
Rohit Waghchaure
4d042cd81a Merge branch 'version-12' into fixed_pricing_rule_working_on_other_items_v12_cherry_pick 2019-12-11 22:53:27 +05:30
rohitwaghchaure
d72fae670a Merge pull request #19916 from rohitwaghchaure/fixed_pricing_rule_working_on_other_items
fix: pricing rule working on non pricing rule items
2019-12-11 22:18:07 +05:30
Rohit Waghchaure
d458e25dc5 fix: pricing rule working on non pricing rule items 2019-12-11 21:55:28 +05:30
Deepesh Garg
43474a3afa Merge pull request #19896 from hrwX/project-fix_v12
fix: Set project in child table via dashboard
2019-12-11 18:43:29 +05:30
Deepesh Garg
7daa2a2085 Merge pull request #19894 from marination/rounded_total_v12_hotfix
fix: Disable Rounded Total always showing field default value
2019-12-11 18:41:25 +05:30
Deepesh Garg
45075d8915 Merge pull request #19900 from rohitwaghchaure/not_able_to_cancel_landed_cost_voucher_v12_hotfix
fix: not able to cancel the landed cost voucher
2019-12-11 18:37:34 +05:30
thefalconx33
1de3040ecb fix: additional notes from Quotations not saved in SO 2019-12-11 18:11:48 +05:30
thefalconx33
af10f659d9 fix: enable address without checkout feature
* fix add address form country link field
2019-12-11 17:44:08 +05:30
thefalconx33
6f36691c64 fix: handle scenario with no condition 2019-12-11 16:10:56 +05:30
0Pranav
dfe629aff7 fix: change book-appointment route 2019-12-11 15:18:59 +05:30
Rohit Waghchaure
23bf2a6647 fix: not able to cancel the landed cost voucher 2019-12-11 13:52:47 +05:30
Rohit Waghchaure
b69cb8080c fix: not able to cancel the landed cost voucher 2019-12-11 13:52:18 +05:30
Himanshu Warekar
f23b5ed23b fix: rename labels 2019-12-11 13:10:31 +05:30
Himanshu Warekar
0a28387c70 fix: set project 2019-12-11 12:49:43 +05:30
marination
caae8c57bc fix: Disable Rounded Total always showing field default value 2019-12-11 12:18:51 +05:30
Nabin Hait
44ae135c36 Merge branch 'version-12' into version-12-hotfix 2019-12-11 09:12:10 +05:30
Deepesh Garg
47e786ef62 fix: Rounding Adjustment GL entry fix (#19839)
* fix: Rounding Adjustment GL entry fix

* fix: Spacing in tab

* fix: Comment fix
2019-12-11 09:06:37 +05:30
Deepesh Garg
f10be395c1 fix: NoneType' object has no attribute '__getitem_'_ (#19860) 2019-12-11 09:06:25 +05:30
rohitwaghchaure
ac967d09ec fix: Item-wise Sales History report not working (#19890) 2019-12-10 21:34:20 +05:30
Saqib
d1e8e8652f fix: incorrect account mapping for child companies (#19888)
* fix: incorrect account mapping for child companies on adding account to parent company

* Update account.py
2019-12-10 21:32:57 +05:30
Deepesh Garg
72649c207f feat(regional): Auto state wise taxation for GST India (#19877)
* feat(regional): Auto state wise taxation for GST India

* fix: Update gst category on addition of GSTIN

* fix: Codacy and travis fixes

* fix: Travis

* fix(test): Update GST category only if GSTIN field available

* fix: Test Cases

* fix: Do not skip accounts if place of supply is not present

* fix: Auto GST taxation for SEZ Party types

* fix: Automatic taxation for multi state

* fix: Codacy and travis fixes

* fix: Auto GST template selection in Sales Order

* fix: Move inter state check and source state to tax category

* fix: Remove unique check from tax template

* fix: Remove unique check from tax template

* fix: Address fetching logic in Sales

* fix: fecth tax template on company address change

* fix: fetch company gstin on address change

* fix: company_gstin set value fix

* fix: Mutiple fixes and code refactor

* fix: Add missing semicolon

* fix: Company address fetching in sales invoice

* fix: Remove print statement

* fix: Import functools

* fix: Naming fixes and code cleanup

* fix: Update patches

* fix: Remove changes in patches.txt

* fix: Iteritems compatibility for python 3
2019-12-10 15:54:29 +05:30
Deepesh Garg
d06b685fdf fix: Append expense account only if expense account exists (#19881) 2019-12-10 12:15:06 +05:30
marination
6411a56cdc fix: Changed check condition and added test 2019-12-09 21:36:02 +05:30
Saqib
34b3b04fb0 fix: error message displays asset category as None (#19874)
* fix: error message displays asset category as None

* fix: asset gl_entries doesn't considers asset category's cwip account
2019-12-09 19:06:14 +05:30
Deepesh Garg
b1a2a16f43 Merge pull request #19868 from nextchamp-saqib/report-col-hotfix
fix: column data not visible after manual selection of columns
2019-12-09 17:57:41 +05:30
thefalconx33
f092e68a58 fix: website showing disabled items in product list 2019-12-09 17:03:32 +05:30
thefalconx33
6d497ccb4c fix: column data not visible after manual selection of columns 2019-12-09 15:24:39 +05:30
Deepesh Garg
a7b97f7bac Merge pull request #19867 from nextchamp-saqib/cart-fix-hotfix
fix: Error while placing order of cart items added yesterday
2019-12-09 15:23:04 +05:30
thefalconx33
f40d3bd10f fix: due date before posting date for items added to cart yesterday 2019-12-09 14:07:25 +05:30
Deepesh Garg
1e2be32860 fix: Consistency in button positions in Sales Order and Purchase Order (#19834) 2019-12-09 13:04:58 +05:30
Deepesh Garg
6aec9e32d4 fix: Rounding Adjustment GL entry fix (#19839)
* fix: Rounding Adjustment GL entry fix

* fix: Spacing in tab

* fix: Comment fix
2019-12-09 13:03:02 +05:30
Deepesh Garg
59cc0e5029 fix: NoneType' object has no attribute '__getitem_'_ (#19860) 2019-12-09 11:28:35 +05:30
Deepesh Garg
851f39cee1 Merge pull request #19837 from deepeshgarg007/gst_1_validation_msg_v12
fix: Validation msg fix in GSTR-1 report
2019-12-07 19:53:03 +05:30
rohitwaghchaure
6822a30f8c Merge pull request #19850 from rohitwaghchaure/fixed_timsheet_overlap_issue_v12_hotfix
fix: timesheet overlap error
2019-12-07 14:10:54 +05:30
Rohit Waghchaure
495ba1618b fix: timsheet overlap error 2019-12-07 13:22:08 +05:30
deepeshgarg007
778d7595aa fix: Add missing semicolon 2019-12-06 20:00:56 +05:30
deepeshgarg007
a40dbd0384 fix: Validation msg fix in GSTR-1 report 2019-12-06 19:46:32 +05:30
Deepesh Garg
80dfb9f834 Merge pull request #19835 from deepeshgarg007/accounts_payable_terms_v12
feat: Accounts Payable report based on payment terms
2019-12-06 19:41:27 +05:30
deepeshgarg007
dabb303358 feat: Accounts Payable report based on payment terms 2019-12-06 17:52:48 +05:30
Pranav Nachnekar
d16ef54665 fix: query for finding lost quotation (#19801)
* fix:query for finding lost quotation

* Update opportunity.py
2019-12-04 15:31:25 +05:30
Nabin Hait
dc248b9458 optimize: Optimization of Receivable report filtered based on sales person (#19797) 2019-12-04 15:30:39 +05:30
Nabin Hait
bf0f26b4a4 fix: Service start and end date validation for deferred accounting (#19806) 2019-12-04 15:29:54 +05:30
Mangesh-Khairnar
929fd4ce47 enhancement(fixed-asset-register): add date filter (#19804)
* feat: add date filter in the fixed asset register

* fix: remove function from keyword argument
2019-12-04 14:10:41 +05:30
Deepesh Garg
81c895b21e Merge pull request #19793 from nabinhait/ar-summary-based-on-terms-v12
feat: Receivable / payable summary based on payment terms
2019-12-04 11:23:31 +05:30
Shivam Mishra
27a21f80d7 feat: allow searching from meta fields (#19725)
* feat: allow searching from meta fields

* feat: remove description in query based on number of items
2019-12-03 17:26:50 +05:30
sahil28297
aa7085e11c fix(patch): set proper tax_type based on company and set proper account if not already present (#19788) 2019-12-03 17:07:26 +05:30
Nabin Hait
6e5363ba48 feat: Receivable / payable summary based on payment terms 2019-12-03 16:58:02 +05:30
Deepesh Garg
53746636c3 fix: Party name field in trial balacne for party report (#19790) 2019-12-03 16:30:09 +05:30
Deepesh Garg
485d48c101 fix: Unable to see parties with negative balance in AR/AP Summary (#19777) 2019-12-03 15:12:28 +05:30
Marica
0e1ef35968 fix: Item qty cannot be zero in Purchase Receipt (#19780) 2019-12-03 12:59:15 +05:30
gavin
35effe9be0 fix: AttributeError on new Student creation (#19787) 2019-12-03 12:54:18 +05:30
Shivam Mishra
648d6e46f3 fix: query for item group listing (#19785) 2019-12-03 12:52:58 +05:30
Nabin Hait
d6d9a3ddd7 Update employee.py 2019-12-03 12:52:12 +05:30
Deepesh Garg
18f05db19a Merge pull request #19763 from Mangesh-Khairnar/fix-pr-creation-so
fix(sales-order): allow payment request creation for so that are not billed
2019-12-03 10:42:53 +05:30
Rucha Mahabal
586fecfe73 fix: render_template for subject in Email Campaign (#19771) 2019-12-02 16:25:29 +05:30
sahil28297
14018b3dea bumped to version 12.2.2 2019-12-02 13:05:27 +05:30
Deepesh Garg
1c196f958f Merge pull request #19768 from deepeshgarg007/avaiable_stock_for_v12
fix: Available stock for packing item report
2019-12-02 11:57:45 +05:30
rohitwaghchaure
91f2cfb999 Merge pull request #19769 from rohitwaghchaure/sales_invoice_none_type_error_serial_no_validation
fix: Serial no validation against sales invoice
2019-12-02 09:46:23 +05:30
deepeshgarg007
c0a0331570 fix: Validation msg 2019-12-02 09:43:11 +05:30
deepeshgarg007
4ceba43e43 fix: Serial no validation against sales invoice 2019-12-02 09:43:04 +05:30
deepeshgarg007
9b64e2e24c fix: Available stock for packing item report 2019-12-01 22:20:18 +05:30
Deepesh Garg
da5e227ad6 fix: Post GL entry fix for asset (#19752) 2019-12-01 10:06:31 +05:30
Mangesh-Khairnar
4f95e5d092 fix: show create payment request for so that are not billed 2019-11-30 20:31:18 +05:30
Deepesh Garg
6a8fd0102f fix: Serial no validation against sales invoice (#19749)
* fix: Serial no validation against sales invoice

* fix: Validation msg
2019-11-29 18:48:30 +05:30
Suraj Shetty
2b172ec4b4 fix: valuation of "finished good" item in purchase receipt (#19745)
* fix: Remove redundant purchase orders and unwanted condition

* fix: [WIP] Purchase receipt value

* fix: Add raw material cost based on transfered raw material

* fix: get_qty_to_be_received

* fix: Remove debugger statement

* fix: Reset rm_supp_cost before setting subcontracted raw_materials

* test: Fix and modify tests for backflush_based_on_stock_entry

* fix: Add non stock items to Purchase Receipt from Purchase Order

* fix: Ignore valuation rate check for non stock raw material

* fix: Rename check all rows

* fix: Remove amount from test

* test: Fix item rate error

* fix: handling of serial nos in backflush

* fix: Add serial no. of raw materials

* fix: [WIP] Handle Batch nos for purchase reciept backflushed raw material

* fix: Raw material batch number selection in purchase receipt

* Update test_purchase_order.py
2019-11-29 16:59:21 +05:30
Marica
5d2ad7fc38 fix: UOM was not fetching in purchase invoice (#19732) (#19737)
* fix: UOM was not fetching in purchase invoice

* fix: Changes requested

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2019-11-28 20:00:51 +05:30
rohitwaghchaure
3347473aa1 fix: removed stock value and account balance out of sync validation (#19728) 2019-11-28 20:00:41 +05:30
Rohit Waghchaure
7f951b5595 fix: revert value out of sync feature 2019-11-28 20:00:33 +05:30
Marica
208c69f196 fix: Permission issue in Stock Entry (#19739) 2019-11-28 19:39:55 +05:30
Marica
32b69bf122 fix: UOM was not fetching in purchase invoice (#19732) (#19737)
* fix: UOM was not fetching in purchase invoice

* fix: Changes requested

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2019-11-28 19:03:14 +05:30
Marica
b1fac1817c fix: Validation for Suppliers in SO to PO (#19700)
- Check if there is a Supplier against atleast one item in Sales Order
- Validation message earlier was vague
2019-11-28 18:23:11 +05:30
Marica
6516358a71 fix: Changed type of column 'serial_no' in Stock Ledger Entry (#19704) 2019-11-28 18:20:53 +05:30
marination
c6e2087673 fix: Division by zero error in Stock Entry 2019-11-28 16:54:58 +05:30
Shivam Mishra
d8469a7bfa fix: handle None case for get_shipping_amount_from_rules (#19724) 2019-11-28 16:47:14 +05:30
Marica
cf645aceae chore: Added Quick Stock Balance to Stock Module (#19727)
- Also 'Stock Balance Report' button no longer primary button
2019-11-28 16:44:56 +05:30
rohitwaghchaure
3dd72e238f fix: removed stock value and account balance out of sync validation (#19728) 2019-11-28 16:44:05 +05:30
Deepesh Garg
b74ce74ec9 Merge pull request #19718 from deepeshgarg007/status_fix_v12
fix: Path for quotation expiry method in hooks
2019-11-28 12:24:20 +05:30
deepeshgarg007
074aaa6005 fix: Path for quotation expiry method in hooks 2019-11-28 10:31:11 +05:30
Marica
9d5f43f4f0 fix: get_batch_qty_and_serial_no() requires argument 'stock_qty' (#19694) 2019-11-27 15:50:45 +05:30
rohitwaghchaure
7522aadc6e Merge pull request #19697 from rohitwaghchaure/dont_stop_submitting_entry_due_to_mismatch_issue
fix: revert value out of sync feature
2019-11-27 12:32:04 +05:30
rohitwaghchaure
326fdcb454 Merge pull request #19687 from deepeshgarg007/sales_invoice_fix_develop
fix: Serial no validation against sales invoice
2019-11-27 11:36:10 +05:30
Rohit Waghchaure
c41addec96 fix: revert value out of sync feature 2019-11-27 08:49:08 +05:30
deepeshgarg007
defed15528 fix: Validation msg 2019-11-26 16:12:29 +05:30
deepeshgarg007
cbc29989fe fix: Serial no validation against sales invoice 2019-11-26 15:13:23 +05:30
Gavin D'souza
73089470b1 chore: pinned backwards compatible dependencies 2019-11-15 17:38:32 +05:30
Gavin D'souza
3798f8bd25 style(requirements): alphabetically sorted requirements 2019-11-15 13:59:15 +05:30
Gavin D'souza
f805a76e79 chore: pinned requirements 2019-11-13 17:27:16 +05:30
863 changed files with 39878 additions and 47444 deletions

32
.flake8 Normal file
View File

@@ -0,0 +1,32 @@
[flake8]
ignore =
E121,
E126,
E127,
E128,
E203,
E225,
E226,
E231,
E241,
E251,
E261,
E265,
E302,
E303,
E305,
E402,
E501,
E741,
W291,
W292,
W293,
W391,
W503,
W504,
F403,
B007,
B950,
W191,
max-line-length = 200

26
.github/workflows/backport.yml vendored Normal file
View File

@@ -0,0 +1,26 @@
name: Backport
on:
pull_request_target:
types:
- closed
- labeled
jobs:
main:
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- name: Checkout Actions
uses: actions/checkout@v2
with:
repository: "frappe/backport"
path: ./actions
ref: develop
- name: Install Actions
run: npm install --production --prefix ./actions
- name: Run backport
uses: ./actions/backport
with:
token: ${{secrets.BACKPORT_BOT_TOKEN}}
labelsToAdd: "backport"
title: "{{originalTitle}}"

14
.github/workflows/docker-release.yml vendored Normal file
View File

@@ -0,0 +1,14 @@
name: Trigger Docker build on release
on:
release:
types: [released]
jobs:
curl:
runs-on: ubuntu-latest
container:
image: alpine:latest
steps:
- name: curl
run: |
apk add curl bash
curl -s -X POST -H "Content-Type: application/json" -H "Accept: application/json" -H "Travis-API-Version: 3" -H "Authorization: token ${{ secrets.TRAVIS_CI_TOKEN }}" -d '{"request":{"branch":"master"}}' https://api.travis-ci.com/repo/frappe%2Ffrappe_docker/requests

View File

@@ -40,8 +40,7 @@ install:
- cd ~
- nvm install 10
- git clone https://github.com/frappe/bench --depth 1
- pip install -e ./bench
- pip install -U frappe-bench --only-binary='all'
- git clone https://github.com/frappe/frappe --branch $TRAVIS_BRANCH --depth 1
- bench init --skip-assets --frappe-path ~/frappe --python $(which python) frappe-bench
@@ -63,6 +62,7 @@ install:
- tar -xf /tmp/wkhtmltox.tar.xz -C /tmp
- sudo mv /tmp/wkhtmltox/bin/wkhtmltopdf /usr/local/bin/wkhtmltopdf
- sudo chmod o+x /usr/local/bin/wkhtmltopdf
- sudo apt-get install libcups2-dev
- cd ~/frappe-bench
@@ -76,5 +76,6 @@ install:
- bench --site test_site reinstall --yes
after_script:
- pip install coverage==4.5.4
- pip install python-coveralls
- coveralls -b apps/erpnext -d ../../sites/.coverage

0
FETCH_HEAD Normal file
View File

View File

@@ -1,3 +0,0 @@
{
"baseUrl": "http://test_site_ui:8000"
}

View File

@@ -1,5 +0,0 @@
{
"name": "Using fixtures to represent data",
"email": "hello@cypress.io",
"body": "Fixtures are a great way to mock data for responses to routes"
}

View File

@@ -1,31 +0,0 @@
context('Form', () => {
before(() => {
cy.login('Administrator', 'qwe');
cy.visit('/desk');
});
it('create a new opportunity', () => {
cy.visit('/desk#Form/Opportunity/New Opportunity 1');
cy.get('.page-title').should('contain', 'Not Saved');
cy.fill_field('opportunity_from', 'Customer', 'Select');
cy.fill_field('party_name', 'Test Customer', 'Link').blur();
cy.get('.primary-action').click();
cy.get('.page-title').should('contain', 'Open');
cy.get('.form-inner-toolbar button:contains("Lost")').click({ force: true });
cy.get('.modal input[data-fieldname="lost_reason"]').as('input');
cy.get('@input').focus().type('Higher', { delay: 200 });
cy.get('.modal .awesomplete ul')
.should('be.visible')
.get('li:contains("Higher Price")')
.click({ force: true });
cy.get('@input').focus().type('No Followup', { delay: 200 });
cy.get('.modal .awesomplete ul')
.should('be.visible')
.get('li:contains("No Followup")')
.click();
cy.fill_field('detailed_reason', 'Test Detailed Reason', 'Text');
cy.get('.modal button:contains("Declare Lost")').click({ force: true });
cy.get('.page-title').should('contain', 'Lost');
});
});

View File

@@ -1,17 +0,0 @@
// ***********************************************************
// This example plugins/index.js can be used to load plugins
//
// You can change the location of this file or turn off loading
// the plugins file with the 'pluginsFile' configuration option.
//
// You can read more here:
// https://on.cypress.io/plugins-guide
// ***********************************************************
// This function is called when a project is opened or re-opened (e.g. due to
// the project's config changing)
// module.exports = (on, config) => {
// `on` is used to hook into various events Cypress emits
// `config` is the resolved Cypress config
// }

View File

@@ -1,25 +0,0 @@
// ***********************************************
// This example commands.js shows you how to
// create various custom commands and overwrite
// existing commands.
//
// For more comprehensive examples of custom
// commands please read more here:
// https://on.cypress.io/custom-commands
// ***********************************************
//
//
// -- This is a parent command --
// Cypress.Commands.add("login", (email, password) => { ... })
//
//
// -- This is a child command --
// Cypress.Commands.add("drag", { prevSubject: 'element'}, (subject, options) => { ... })
//
//
// -- This is a dual command --
// Cypress.Commands.add("dismiss", { prevSubject: 'optional'}, (subject, options) => { ... })
//
//
// -- This is will overwrite an existing command --
// Cypress.Commands.overwrite("visit", (originalFn, url, options) => { ... })

View File

@@ -1,22 +0,0 @@
// ***********************************************************
// This example support/index.js is processed and
// loaded automatically before your test files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.
//
// You can change the location of this file or turn off
// automatically serving support files with the
// 'supportFile' configuration option.
//
// You can read more here:
// https://on.cypress.io/configuration
// ***********************************************************
// import frappe commands
import '../../../frappe/cypress/support/index';
// Import commands.js using ES2015 syntax:
import './commands';
// Alternatively you can use CommonJS syntax:
// require('./commands')

View File

@@ -5,7 +5,7 @@ import frappe
from erpnext.hooks import regional_overrides
from frappe.utils import getdate
__version__ = '12.2.0'
__version__ = '12.25.0'
def get_default_company(user=None):
'''Get default company for user'''

View File

@@ -4,10 +4,10 @@
from __future__ import unicode_literals
import frappe, json
from frappe import _
from frappe.utils import add_to_date, date_diff, getdate, nowdate, get_last_day, formatdate
from frappe.utils import add_to_date, date_diff, getdate, nowdate, get_last_day, formatdate, get_link_to_form
from erpnext.accounts.report.general_ledger.general_ledger import execute
from frappe.core.page.dashboard.dashboard import cache_source, get_from_date_from_timespan
from frappe.desk.doctype.dashboard_chart.dashboard_chart import get_period_ending
from frappe.core.page.dashboard.dashboard import cache_source
from frappe.utils.dateutils import get_from_date_from_timespan, get_period_ending
from frappe.utils.nestedset import get_descendants_of
@@ -30,8 +30,13 @@ def get(chart_name = None, chart = None, no_cache = None, from_date = None, to_d
account = filters.get("account")
company = filters.get("company")
if not account and chart:
frappe.throw(_("Account is not set for the dashboard chart {0}").format(chart))
if not account and chart_name:
frappe.throw(_("Account is not set for the dashboard chart {0}")
.format(get_link_to_form("Dashboard Chart", chart_name)))
if not frappe.db.exists("Account", account) and chart_name:
frappe.throw(_("Account {0} does not exists in the dashboard chart {1}")
.format(account, get_link_to_form("Dashboard Chart", chart_name)))
if not to_date:
to_date = nowdate()

View File

@@ -159,7 +159,7 @@ def book_deferred_income_or_expense(doc, posting_date=None):
total_days, total_booking_days, account_currency)
make_gl_entries(doc, credit_account, debit_account, against,
amount, base_amount, end_date, project, account_currency, item.cost_center, item.name)
amount, base_amount, end_date, project, account_currency, item.cost_center, item)
if getdate(end_date) < getdate(posting_date) and not last_gl_entry:
_book_deferred_revenue_or_expense(item)
@@ -170,7 +170,7 @@ def book_deferred_income_or_expense(doc, posting_date=None):
_book_deferred_revenue_or_expense(item)
def make_gl_entries(doc, credit_account, debit_account, against,
amount, base_amount, posting_date, project, account_currency, cost_center, voucher_detail_no):
amount, base_amount, posting_date, project, account_currency, cost_center, item):
# GL Entry for crediting the amount in the deferred expense
from erpnext.accounts.general_ledger import make_gl_entries
@@ -184,10 +184,10 @@ def make_gl_entries(doc, credit_account, debit_account, against,
"credit": base_amount,
"credit_in_account_currency": amount,
"cost_center": cost_center,
"voucher_detail_no": voucher_detail_no,
"voucher_detail_no": item.name,
'posting_date': posting_date,
'project': project
}, account_currency)
}, account_currency, item=item)
)
# GL Entry to debit the amount from the expense
gl_entries.append(
@@ -197,10 +197,10 @@ def make_gl_entries(doc, credit_account, debit_account, against,
"debit": base_amount,
"debit_in_account_currency": amount,
"cost_center": cost_center,
"voucher_detail_no": voucher_detail_no,
"voucher_detail_no": item.name,
'posting_date': posting_date,
'project': project
}, account_currency)
}, account_currency, item=item)
)
if gl_entries:

View File

@@ -1,4 +1,5 @@
{
"actions": [],
"allow_copy": 1,
"allow_import": 1,
"creation": "2013-01-30 12:49:46",
@@ -196,10 +197,13 @@
],
"icon": "fa fa-money",
"idx": 1,
"modified": "2019-10-10 19:10:02.967554",
"is_tree": 1,
"links": [],
"modified": "2020-03-18 18:26:03.992861",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Account",
"nsm_parent_field": "parent_account",
"owner": "Administrator",
"permissions": [
{

View File

@@ -89,34 +89,35 @@ class Account(NestedSet):
throw(_("Root cannot be edited."), RootNotEditable)
if not self.parent_account and not self.is_group:
frappe.throw(_("Root Account must be a group"))
frappe.throw(_("The root account {0} must be a group").format(frappe.bold(self.name)))
def validate_root_company_and_sync_account_to_children(self):
# ignore validation while creating new compnay or while syncing to child companies
if frappe.local.flags.ignore_root_company_validation or self.flags.ignore_root_company_validation:
return
ancestors = get_root_company(self.company)
if ancestors:
if frappe.get_value("Company", self.company, "allow_account_creation_against_child_company"):
return
if not frappe.db.get_value("Account",
{'account_name': self.account_name, 'company': ancestors[0]}, 'name'):
frappe.throw(_("Please add the account to root level Company - %s" % ancestors[0]))
else:
elif self.parent_account:
descendants = get_descendants_of('Company', self.company)
if not descendants: return
parent_acc_name_map = {}
parent_acc_name = frappe.db.get_value('Account', self.parent_account, "account_name")
for d in frappe.db.get_values('Account',
{"company": ["in", descendants], "account_name": parent_acc_name},
["company", "name"], as_dict=True):
parent_acc_name, parent_acc_number = frappe.db.get_value('Account', self.parent_account, \
["account_name", "account_number"])
filters = {
"company": ["in", descendants],
"account_name": parent_acc_name,
}
if parent_acc_number:
filters["account_number"] = parent_acc_number
for d in frappe.db.get_values('Account', filters=filters, fieldname=["company", "name"], as_dict=True):
parent_acc_name_map[d["company"]] = d["name"]
if not parent_acc_name_map: return
self.create_account_for_child_company(parent_acc_name_map, descendants, parent_acc_name)
def validate_group_or_ledger(self):
@@ -174,7 +175,6 @@ class Account(NestedSet):
filters["account_number"] = self.account_number
child_account = frappe.db.get_value("Account", filters, 'name')
if not child_account:
doc = frappe.copy_doc(self)
doc.flags.ignore_root_company_validation = True
@@ -244,6 +244,8 @@ class Account(NestedSet):
super(Account, self).on_trash(True)
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs
def get_parent_account(doctype, txt, searchfield, start, page_len, filters):
return frappe.db.sql("""select name from tabAccount
where is_group = 1 and docstatus != 2 and company = %s

View File

@@ -1,7 +1,7 @@
frappe.provide("frappe.treeview_settings")
frappe.treeview_settings["Account"] = {
breadcrumbs: "Accounts",
breadcrumb: "Accounts",
title: __("Chart Of Accounts"),
get_tree_root: false,
filters: [
@@ -14,6 +14,9 @@ frappe.treeview_settings["Account"] = {
on_change: function() {
var me = frappe.treeview_settings['Account'].treeview;
var company = me.page.fields_dict.company.get_value();
if (!company) {
frappe.throw(__("Please set a Company"));
}
frappe.call({
method: "erpnext.accounts.doctype.account.account.get_root_company",
args: {

View File

@@ -225,7 +225,7 @@ def build_tree_from_json(chart_template, chart_data=None):
account['parent_account'] = parent
account['expandable'] = True if identify_is_group(child) else False
account['value'] = (child.get('account_number') + ' - ' + account_name) \
account['value'] = (cstr(child.get('account_number')).strip() + ' - ' + account_name) \
if child.get('account_number') else account_name
accounts.append(account)
_import_accounts(child, account['value'])

View File

@@ -406,11 +406,11 @@
"is_group": 1,
"Bewertungskorrektur zu Forderungen aus Lieferungen und Leistungen": {
"account_number": "9960"
},
"Debitoren": {
"is_group": 1,
"account_number": "10000"
},
},
"Debitoren": {
"is_group": 1,
"account_number": "10000"
},
"Forderungen aus Lieferungen und Leistungen": {
"account_number": "1200",
"account_type": "Receivable"
@@ -663,16 +663,22 @@
"account_number": "1400"
},
"Abziehbare Vorsteuer 7 %": {
"account_number": "1401"
"account_number": "1401",
"account_type": "Tax",
"tax_rate": 7.0
},
"Abziehbare Vorsteuer aus innergem. Erwerb": {
"account_number": "1402"
},
"Abziehbare Vorsteuer aus innergem. Erwerb 19%": {
"account_number": "1404"
"account_number": "1404",
"account_type": "Tax",
"tax_rate": 19.0
},
"Abziehbare Vorsteuer 19 %": {
"account_number": "1406"
"account_number": "1406",
"account_type": "Tax",
"tax_rate": 19.0
},
"Abziehbare Vorsteuer nach \u00a7 13b UStG 19 %": {
"account_number": "1407"
@@ -904,75 +910,8 @@
},
"is_group": 1
},
"Passiva": {
"Passiva - Verbindlichkeiten": {
"root_type": "Liability",
"A - Eigenkapital": {
"account_type": "Equity",
"is_group": 1,
"I - Gezeichnetes Kapital": {
"account_type": "Equity",
"is_group": 1
},
"II - Kapitalr\u00fccklage": {
"account_type": "Equity",
"is_group": 1
},
"III - Gewinnr\u00fccklagen": {
"account_type": "Equity",
"1 - gesetzliche R\u00fccklage": {
"account_type": "Equity",
"is_group": 1
},
"2 - R\u00fccklage f. Anteile an einem herrschenden oder mehrheitlich beteiligten Unternehmen": {
"account_type": "Equity",
"is_group": 1
},
"3 - satzungsm\u00e4\u00dfige R\u00fccklagen": {
"account_type": "Equity",
"is_group": 1
},
"4 - andere Gewinnr\u00fccklagen": {
"account_type": "Equity",
"is_group": 1,
"Gewinnr\u00fccklagen aus den \u00dcbergangsvorschriften BilMoG": {
"is_group": 1,
"Gewinnr\u00fccklagen (BilMoG)": {
"account_number": "2963"
},
"Gewinnr\u00fccklagen aus Zuschreibung Sachanlageverm\u00f6gen (BilMoG)": {
"account_number": "2964"
},
"Gewinnr\u00fccklagen aus Zuschreibung Finanzanlageverm\u00f6gen (BilMoG)": {
"account_number": "2965"
},
"Gewinnr\u00fccklagen aus Aufl\u00f6sung der Sonderposten mit R\u00fccklageanteil (BilMoG)": {
"account_number": "2966"
}
},
"Latente Steuern (Gewinnr\u00fccklage Haben) aus erfolgsneutralen Verrechnungen": {
"account_number": "2967"
},
"Latente Steuern (Gewinnr\u00fccklage Soll) aus erfolgsneutralen Verrechnungen": {
"account_number": "2968"
},
"Rechnungsabgrenzungsposten (Gewinnr\u00fccklage Soll) aus erfolgsneutralen Verrechnungen": {
"account_number": "2969"
}
},
"is_group": 1
},
"IV - Gewinnvortrag/Verlustvortrag": {
"account_type": "Equity",
"is_group": 1
},
"V - Jahres\u00fcberschu\u00df/Jahresfehlbetrag": {
"account_type": "Equity",
"is_group": 1
},
"Einlagen stiller Gesellschafter": {
"account_number": "9295"
}
},
"B - R\u00fcckstellungen": {
"is_group": 1,
"1 - R\u00fcckstellungen f. Pensionen und \u00e4hnliche Verplicht.": {
@@ -1197,15 +1136,15 @@
"is_group": 1,
"Bewertungskorrektur zu Verb. aus Lieferungen und Leistungen": {
"account_number": "9964"
},
"Kreditoren": {
"account_number": "70000",
"is_group": 1,
"Wareneingangs-­Verrechnungskonto" : {
"account_number": "70001",
"account_type": "Stock Received But Not Billed"
}
},
},
"Kreditoren": {
"account_number": "70000",
"is_group": 1,
"Wareneingangs-­Verrechnungskonto" : {
"account_number": "70001",
"account_type": "Stock Received But Not Billed"
}
},
"Verb. aus Lieferungen und Leistungen": {
"account_number": "3300",
"account_type": "Payable"
@@ -1488,17 +1427,21 @@
},
"Umsatzsteuer 7 %": {
"account_number": "3801",
"account_type": "Tax"
"account_type": "Tax",
"tax_rate": 7.0
},
"Umsatzsteuer aus innergem. Erwerb": {
"account_number": "3802"
},
"Umsatzsteuer aus innergem. Erwerb 19 %": {
"account_number": "3804"
"account_number": "3804",
"account_type": "Tax",
"tax_rate": 19.0
},
"Umsatzsteuer 19 %": {
"account_number": "3806",
"account_type": "Tax"
"account_type": "Tax",
"tax_rate": 19.0
},
"Umsatzsteuer aus im Inland steuerpfl. EU-Lieferungen": {
"account_number": "3807"
@@ -1585,6 +1528,143 @@
},
"is_group": 1
},
"Passiva - Eigenkapital": {
"root_type": "Equity",
"A - Eigenkapital": {
"account_type": "Equity",
"is_group": 1,
"I - Gezeichnetes Kapital": {
"account_type": "Equity",
"is_group": 1,
"Gezeichnetes Kapital": {
"account_number": "2900",
"account_type": "Equity"
},
"Gesch\u00e4ftsguthaben der verbleibenden Mitglieder": {
"account_number": "2901"
},
"Gesch\u00e4ftsguthaben der ausscheidenden Mitglieder": {
"account_number": "2902"
},
"Gesch\u00e4ftsguthaben aus gek\u00fcndigten Gesch\u00e4ftsanteilen": {
"account_number": "2903"
},
"R\u00fcckst\u00e4ndige f\u00e4llige Einzahlungen auf Gesch\u00e4ftsanteile, vermerkt": {
"account_number": "2906"
},
"Gegenkonto R\u00fcckst\u00e4ndige f\u00e4llige Einzahlungen auf Gesch\u00e4ftsanteile, vermerkt": {
"account_number": "2907"
},
"Kapitalerh\u00f6hung aus Gesellschaftsmitteln": {
"account_number": "2908"
},
"Ausstehende Einlagen auf das gezeichnete Kapital, nicht eingefordert": {
"account_number": "2910"
}
},
"II - Kapitalr\u00fccklage": {
"account_type": "Equity",
"is_group": 1,
"Kapitalr\u00fccklage": {
"account_number": "2920"
},
"Kapitalr\u00fccklage durch Ausgabe von Anteilen \u00fcber Nennbetrag": {
"account_number": "2925"
},
"Kapitalr\u00fccklage durch Ausgabe von Schuldverschreibungen": {
"account_number": "2926"
},
"Kapitalr\u00fccklage durch Zuzahlungen gegen Gew\u00e4hrung eines Vorzugs": {
"account_number": "2927"
},
"Kapitalr\u00fccklage durch Zuzahlungen in das Eigenkapital": {
"account_number": "2928"
},
"Nachschusskapital (Gegenkonto 1299)": {
"account_number": "2929"
}
},
"III - Gewinnr\u00fccklagen": {
"account_type": "Equity",
"1 - gesetzliche R\u00fccklage": {
"account_type": "Equity",
"is_group": 1,
"Gesetzliche R\u00fccklage": {
"account_number": "2930"
}
},
"2 - R\u00fccklage f. Anteile an einem herrschenden oder mehrheitlich beteiligten Unternehmen": {
"account_type": "Equity",
"is_group": 1,
"R\u00fccklage f. Anteile an einem herrschenden oder mehrheitlich beteiligten Unternehmen": {
"account_number": "2935"
}
},
"3 - satzungsm\u00e4\u00dfige R\u00fccklagen": {
"account_type": "Equity",
"is_group": 1,
"Satzungsm\u00e4\u00dfige R\u00fccklagen": {
"account_number": "2950"
}
},
"4 - andere Gewinnr\u00fccklagen": {
"account_type": "Equity",
"is_group": 1,
"Andere Gewinnr\u00fccklagen": {
"account_number": "2960"
},
"Andere Gewinnr\u00fccklagen aus dem Erwerb eigener Anteile": {
"account_number": "2961"
},
"Eigenkapitalanteil von Wertaufholungen": {
"account_number": "2962"
},
"Gewinnr\u00fccklagen aus den \u00dcbergangsvorschriften BilMoG": {
"is_group": 1,
"Gewinnr\u00fccklagen (BilMoG)": {
"account_number": "2963"
},
"Gewinnr\u00fccklagen aus Zuschreibung Sachanlageverm\u00f6gen (BilMoG)": {
"account_number": "2964"
},
"Gewinnr\u00fccklagen aus Zuschreibung Finanzanlageverm\u00f6gen (BilMoG)": {
"account_number": "2965"
},
"Gewinnr\u00fccklagen aus Aufl\u00f6sung der Sonderposten mit R\u00fccklageanteil (BilMoG)": {
"account_number": "2966"
}
},
"Latente Steuern (Gewinnr\u00fccklage Haben) aus erfolgsneutralen Verrechnungen": {
"account_number": "2967"
},
"Latente Steuern (Gewinnr\u00fccklage Soll) aus erfolgsneutralen Verrechnungen": {
"account_number": "2968"
},
"Rechnungsabgrenzungsposten (Gewinnr\u00fccklage Soll) aus erfolgsneutralen Verrechnungen": {
"account_number": "2969"
}
},
"is_group": 1
},
"IV - Gewinnvortrag/Verlustvortrag": {
"account_type": "Equity",
"is_group": 1,
"Gewinnvortrag vor Verwendung": {
"account_number": "2970"
},
"Verlustvortrag vor Verwendung": {
"account_number": "2978"
}
},
"V - Jahres\u00fcberschu\u00df/Jahresfehlbetrag": {
"account_type": "Equity",
"is_group": 1
},
"Einlagen stiller Gesellschafter": {
"account_number": "9295"
}
}
},
"1 - Umsatzerl\u00f6se": {
"root_type": "Income",
"is_group": 1,
@@ -2295,49 +2375,49 @@
},
"6 - sonstige betriebliche Ertr\u00e4ge": {
"root_type": "Income",
"is_group": 1,
"Erhaltene Boni (Gruppe)": {
"is_group": 1,
"Erhaltene Boni 7 % Vorsteuer": {
"account_number": "5750"
},
"Erhaltene Boni aus Einkauf Roh-, Hilfs- und Betriebsstoffe": {
"account_number": "5753"
},
"Erhaltene Boni aus Einkauf Roh-, Hilfs- und Betriebsstoffe 7% Vorsteuer": {
"account_number": "5754"
},
"Erhaltene Boni aus Einkauf Roh-, Hilfs- und Betriebsstoffe 19% Vorsteuer": {
"account_number": "5755"
},
"Erhaltene Boni 19 % Vorsteuer": {
"account_number": "5760"
},
"Erhaltene Boni": {
"account_number": "5769"
}
},
"Erhaltene Rabatte (Gruppe)": {
"is_group": 1,
"Erhaltene Rabatte": {
"account_number": "5770"
},
"Erhaltene Rabatte 7 % Vorsteuer": {
"account_number": "5780"
},
"Erhaltene Rabatte aus Einkauf Roh-, Hilfs- und Betriebsstoffe": {
"account_number": "5783"
},
"Erhaltene Rabatte aus Einkauf Roh-, Hilfs- und Betriebsstoffe 7% Vorsteuer": {
"account_number": "5784"
},
"Erhaltene Rabatte aus Einkauf Roh-, Hilfs- und Betriebsstoffe 19% Vorsteuer": {
"account_number": "5785"
},
"Erhaltene Rabatte 19 % Vorsteuer": {
"account_number": "5790"
}
},
"is_group": 1,
"Erhaltene Boni (Gruppe)": {
"is_group": 1,
"Erhaltene Boni 7 % Vorsteuer": {
"account_number": "5750"
},
"Erhaltene Boni aus Einkauf Roh-, Hilfs- und Betriebsstoffe": {
"account_number": "5753"
},
"Erhaltene Boni aus Einkauf Roh-, Hilfs- und Betriebsstoffe 7% Vorsteuer": {
"account_number": "5754"
},
"Erhaltene Boni aus Einkauf Roh-, Hilfs- und Betriebsstoffe 19% Vorsteuer": {
"account_number": "5755"
},
"Erhaltene Boni 19 % Vorsteuer": {
"account_number": "5760"
},
"Erhaltene Boni": {
"account_number": "5769"
}
},
"Erhaltene Rabatte (Gruppe)": {
"is_group": 1,
"Erhaltene Rabatte": {
"account_number": "5770"
},
"Erhaltene Rabatte 7 % Vorsteuer": {
"account_number": "5780"
},
"Erhaltene Rabatte aus Einkauf Roh-, Hilfs- und Betriebsstoffe": {
"account_number": "5783"
},
"Erhaltene Rabatte aus Einkauf Roh-, Hilfs- und Betriebsstoffe 7% Vorsteuer": {
"account_number": "5784"
},
"Erhaltene Rabatte aus Einkauf Roh-, Hilfs- und Betriebsstoffe 19% Vorsteuer": {
"account_number": "5785"
},
"Erhaltene Rabatte 19 % Vorsteuer": {
"account_number": "5790"
}
},
"Andere aktivierte Eigenleistungen": {
"account_number": "4820"
},
@@ -2407,29 +2487,26 @@
"Erl\u00f6se aus Verk\u00e4ufen Sachanlageverm\u00f6gen (bei Buchgewinn)": {
"account_number": "4849"
},
"Erl\u00f6se aus Verk\u00e4ufen immaterieller VG (bei Buchgewinn) (Gruppe)": {
"is_group": 1,
"Erl\u00f6se aus Verk\u00e4ufen immaterieller VG (bei Buchgewinn)": {
"account_number": "4850"
},
"Erl\u00f6se aus Verk\u00e4ufen Finanzanlagen (bei Buchgewinn)": {
"account_number": "4851"
},
"Erl\u00f6se aus Verk\u00e4ufen Finanzanlagen (inl\u00e4ndische Kap.Ges., bei Buchgewinn)": {
"account_number": "4852"
},
"Anlagenabg\u00e4nge Sachanlagen (Restbuchwert bei Buchvergewinn)": {
"account_number": "4855"
},
"Anlagenabg\u00e4nge immaterielle VG (Restbuchwert bei Buchgewinn)": {
"account_number": "4856"
},
"Anlagenabg\u00e4nge Finanzanlagen (Restbuchwert bei Buchgewinn)": {
"account_number": "4857"
},
"Anlagenabg\u00e4nge Finanzanlagen (inl\u00e4ndische Kap.Ges., Restbuchwert bei Buchgewinn)": {
"account_number": "4858"
}
"Erl\u00f6se aus Verk\u00e4ufen immaterieller VG (bei Buchgewinn)": {
"account_number": "4850"
},
"Erl\u00f6se aus Verk\u00e4ufen Finanzanlagen (bei Buchgewinn)": {
"account_number": "4851"
},
"Erl\u00f6se aus Verk\u00e4ufen Finanzanlagen (inl\u00e4ndische Kap.Ges., bei Buchgewinn)": {
"account_number": "4852"
},
"Anlagenabg\u00e4nge Sachanlagen (Restbuchwert bei Buchvergewinn)": {
"account_number": "4855"
},
"Anlagenabg\u00e4nge immaterielle VG (Restbuchwert bei Buchgewinn)": {
"account_number": "4856"
},
"Anlagenabg\u00e4nge Finanzanlagen (Restbuchwert bei Buchgewinn)": {
"account_number": "4857"
},
"Anlagenabg\u00e4nge Finanzanlagen (inl\u00e4ndische Kap.Ges., Restbuchwert bei Buchgewinn)": {
"account_number": "4858"
},
"Ertr\u00e4ge aus Zuschreibungen des Sachanlageverm\u00f6gens": {
"account_number": "4910",
@@ -2552,20 +2629,17 @@
"Entnahme von Gegenst\u00e4nden ohne USt": {
"account_number": "4605"
},
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternehmens 7 % USt (Gruppe)": {
"is_group": 1,
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternehmens 7 % USt": {
"account_number": "4630"
},
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternehmens ohne USt": {
"account_number": "4637"
},
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternnehmens ohne USt (Telefon-Nutzung)": {
"account_number": "4638"
},
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternehmens ohne USt (Kfz-Nutzung)": {
"account_number": "4639"
}
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternehmens 7 % USt": {
"account_number": "4630"
},
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternehmens ohne USt": {
"account_number": "4637"
},
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternnehmens ohne USt (Telefon-Nutzung)": {
"account_number": "4638"
},
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternehmens ohne USt (Kfz-Nutzung)": {
"account_number": "4639"
},
"Verwendung von Gegenst\u00e4nden f. Zwecke au\u00dferhalb des Unternehmens 19 % USt (Gruppe)": {
"is_group": 1,
@@ -2603,14 +2677,11 @@
"Unentgeltliche Zuwendung von Gegenst\u00e4nden ohne USt": {
"account_number": "4689"
},
"Nicht steuerbare Ums\u00e4tze (Innenums\u00e4tze) (Gruppe)": {
"is_group": 1,
"Nicht steuerbare Ums\u00e4tze (Innenums\u00e4tze)": {
"account_number": "4690"
},
"Umsatzsteuerverg\u00fctungen, z.B. nach \u00a7 24 UStG": {
"account_number": "4695"
}
"Nicht steuerbare Ums\u00e4tze (Innenums\u00e4tze)": {
"account_number": "4690"
},
"Umsatzsteuerverg\u00fctungen, z.B. nach \u00a7 24 UStG": {
"account_number": "4695"
},
"Au\u00dferordentliche Ertr\u00e4ge (Gruppe)": {
"is_group": 1,
@@ -2620,48 +2691,42 @@
"Au\u00dferordentliche Ertr\u00e4ge finanzwirksam": {
"account_number": "7401"
},
"Au\u00dferordentliche Ertr\u00e4ge nicht finanzwirksam (Gruppe)": {
"is_group": 1,
"Au\u00dferordentliche Ertr\u00e4ge nicht finanzwirksam": {
"account_number": "7450"
},
"Ertr\u00e4ge durch Verschmelzung und Umwandlung": {
"account_number": "7451"
},
"Ertr\u00e4ge durch den Verkauf von bedeutenden Beteiligungen": {
"account_number": "7452"
},
"Ert\u00e4ge durch den Verkauf von bedeutenden Grundst\u00fccken": {
"account_number": "7453"
},
"Gewinn aus der Ver\u00e4u\u00dferung oder der Aufgabe von Gesch\u00e4ftsaktivit\u00e4ten nach Steuern": {
"account_number": "7454"
}
"Au\u00dferordentliche Ertr\u00e4ge nicht finanzwirksam": {
"account_number": "7450"
},
"Au\u00dferordentliche Ertr\u00e4ge aus der Anwendung von \u00dcbergangsvorschriften (Gruppe)": {
"is_group": 1,
"Au\u00dferordentliche Ertr\u00e4ge aus der Anwendung von \u00dcbergangsvorschriften": {
"account_number": "7460"
},
"Au\u00dferordentliche Ertr\u00e4ge: Zuschreibung f. Sachanlageverm\u00f6gen": {
"account_number": "7461"
},
"Au\u00dferordentliche Ertr\u00e4ge: Zuschreibung f. Finanzanlageverm\u00f6gen": {
"account_number": "7462"
},
"Au\u00dferordentliche Ertr\u00e4ge: Wertpapiere im Umlaufverm\u00f6gen": {
"account_number": "7463"
},
"Au\u00dferordentliche Ertr\u00e4ge: latente Steuern": {
"account_number": "7464"
}
"Ertr\u00e4ge durch Verschmelzung und Umwandlung": {
"account_number": "7451"
},
"Ertr\u00e4ge durch den Verkauf von bedeutenden Beteiligungen": {
"account_number": "7452"
},
"Ert\u00e4ge durch den Verkauf von bedeutenden Grundst\u00fccken": {
"account_number": "7453"
},
"Gewinn aus der Ver\u00e4u\u00dferung oder der Aufgabe von Gesch\u00e4ftsaktivit\u00e4ten nach Steuern": {
"account_number": "7454"
},
"Au\u00dferordentliche Ertr\u00e4ge aus der Anwendung von \u00dcbergangsvorschriften": {
"account_number": "7460"
},
"Au\u00dferordentliche Ertr\u00e4ge: Zuschreibung f. Sachanlageverm\u00f6gen": {
"account_number": "7461"
},
"Au\u00dferordentliche Ertr\u00e4ge: Zuschreibung f. Finanzanlageverm\u00f6gen": {
"account_number": "7462"
},
"Au\u00dferordentliche Ertr\u00e4ge: Wertpapiere im Umlaufverm\u00f6gen": {
"account_number": "7463"
},
"Au\u00dferordentliche Ertr\u00e4ge: latente Steuern": {
"account_number": "7464"
}
}
},
"7 - sonstige betriebliche Aufwendungen": {
"root_type": "Expense",
"is_group": 1,
"Erl\u00f6sschm\u00e4lerungen (Gruppe)": {
"is_group": 1,
"Erl\u00f6sschm\u00e4lerungen (Gruppe)": {
"is_group": 1,
"Erl\u00f6sschm\u00e4lerungen": {
"account_number": "4700"
@@ -2692,40 +2757,43 @@
},
"Erl\u00f6sschm\u00e4lerungen aus im Inland steuerpfl. EU-Lieferungen 16 % USt": {
"account_number": "4729"
}
},
"Gew\u00e4hrte Skonti (Gruppe)": {
"is_group": 1,
"Gew. Skonti": {
"account_number": "4730"
},
"Gew\u00e4hrte Skonti (Gruppe)": {
"is_group": 1,
"Gew. Skonti": {
"account_number": "4730"
},
"Gew. Skonti 7 % USt": {
"account_number": "4731"
},
"Gew. Skonti 19 % USt": {
"account_number": "4736"
},
"Gew. Skonti aus Lieferungen von Mobilfunkger./Schaltkr., f. die der Leistungsempf. die Ust. schuldet": {
"account_number": "4738"
},
"Gew. Skonti aus Leistungen, f. die der Leistungsempf. die Umsatzsteuer nach \u00a7 13b UStG schuldet": {
"account_number": "4741"
},
"Gew. Skonti aus Erl\u00f6sen aus im anderen EU-Land steuerpfl. Leistungen, f. die der Leistungsempf. die Ust. schuldet": {
"account_number": "4742"
},
"Gew. Skonti aus steuerfreien innergem. Lieferungen \u00a7 4 Nr. 1b UStG": {
"account_number": "4743"
},
"Gew. Skonti aus im Inland steuerpfl. EU-Lieferungen": {
"account_number": "4745"
},
"Gew. Skonti aus im Inland steuerpfl. EU-Lieferungen 7% USt": {
"account_number": "4746"
},
"Gew. Skonti aus im Inland steuerpfl. EU-Lieferungen 19% USt": {
"account_number": "4748"
}
"Gew. Skonti 7 % USt": {
"account_number": "4731"
},
"Gew. Skonti 19 % USt": {
"account_number": "4736"
},
"Gew. Skonti aus Lieferungen von Mobilfunkger./Schaltkr., f. die der Leistungsempf. die Ust. schuldet": {
"account_number": "4738"
},
"Gew. Skonti aus Leistungen, f. die der Leistungsempf. die Umsatzsteuer nach \u00a7 13b UStG schuldet": {
"account_number": "4741"
},
"Gew. Skonti aus Erl\u00f6sen aus im anderen EU-Land steuerpfl. Leistungen, f. die der Leistungsempf. die Ust. schuldet": {
"account_number": "4742"
},
"Gew. Skonti aus steuerfreien innergem. Lieferungen \u00a7 4 Nr. 1b UStG": {
"account_number": "4743"
},
"Gew. Skonti aus im Inland steuerpfl. EU-Lieferungen": {
"account_number": "4745"
},
"Gew. Skonti aus im Inland steuerpfl. EU-Lieferungen 7% USt": {
"account_number": "4746"
},
"Gew. Skonti aus im Inland steuerpfl. EU-Lieferungen 19% USt": {
"account_number": "4748"
}
},
"Gew\u00e4hrte Boni (Gruppe)": {
"is_group": 1,
"Gew\u00e4hrte Boni 7 % USt": {
"account_number": "4750"
},
@@ -2744,7 +2812,7 @@
"Gew\u00e4hrte Rabatte 19 % USt": {
"account_number": "4790"
}
},
},
"Sonstige betriebliche Aufwendungen": {
"account_number": "6300"
},
@@ -2838,103 +2906,79 @@
"account_number": "6398"
}
},
"Versicherungen (Gruppe)": {
"is_group": 1,
"Versicherungen": {
"account_number": "6400"
},
"Versicherungen f. Geb\u00e4ude, die zum Betriebsverm\u00f6gen geh\u00f6ren": {
"account_number": "6405"
},
"Netto-Pr\u00e4mie f. R\u00fcckdeckung k\u00fcnftiger Versorgungsleistungen": {
"account_number": "6410"
},
"Beitr\u00e4ge": {
"account_number": "6420"
},
"Sonstige Abgaben": {
"account_number": "6430"
},
"Steuerlich abzugsf\u00e4hige Versp\u00e4tungszuschl\u00e4ge und Zwangsgelder": {
"account_number": "6436"
},
"Steuerlich nicht abzugsf\u00e4hige Versp\u00e4tungszuschl\u00e4ge und Zwangsgelder": {
"account_number": "6437"
},
"Ausgleichsabgabe i. S. d. Schwerbehindertengesetzes": {
"account_number": "6440"
},
"Reparaturen und Instandhaltung von Bauten": {
"account_number": "6450"
},
"Reparaturen und Instandhaltung von technischenAnlagen und Maschinen": {
"account_number": "6460"
},
"Reparaturen und Instandhaltung von anderen Anlagen und Betriebs- und Gesch\u00e4ftsausstattung": {
"account_number": "6470"
},
"Zuf\u00fchrung zu Aufwandsr\u00fcckstellungen": {
"account_number": "6475"
},
"Reparaturen und Instandhaltung von anderen Anlagen": {
"account_number": "6485"
},
"Sonstige Reparaturen und Instandhaltungen": {
"account_number": "6490"
},
"Wartungskosten f. Hard- und Software": {
"account_number": "6495"
},
"Mietleasing (bewegliche Wirtschaftsg\u00fcter)": {
"account_number": "6498"
}
"Versicherungen": {
"account_number": "6400"
},
"Versicherungen f. Geb\u00e4ude, die zum Betriebsverm\u00f6gen geh\u00f6ren": {
"account_number": "6405"
},
"Netto-Pr\u00e4mie f. R\u00fcckdeckung k\u00fcnftiger Versorgungsleistungen": {
"account_number": "6410"
},
"Beitr\u00e4ge": {
"account_number": "6420"
},
"Sonstige Abgaben": {
"account_number": "6430"
},
"Steuerlich abzugsf\u00e4hige Versp\u00e4tungszuschl\u00e4ge und Zwangsgelder": {
"account_number": "6436"
},
"Steuerlich nicht abzugsf\u00e4hige Versp\u00e4tungszuschl\u00e4ge und Zwangsgelder": {
"account_number": "6437"
},
"Ausgleichsabgabe i. S. d. Schwerbehindertengesetzes": {
"account_number": "6440"
},
"Reparaturen und Instandhaltung von Bauten": {
"account_number": "6450"
},
"Reparaturen und Instandhaltung von technischenAnlagen und Maschinen": {
"account_number": "6460"
},
"Reparaturen und Instandhaltung von anderen Anlagen und Betriebs- und Gesch\u00e4ftsausstattung": {
"account_number": "6470"
},
"Zuf\u00fchrung zu Aufwandsr\u00fcckstellungen": {
"account_number": "6475"
},
"Reparaturen und Instandhaltung von anderen Anlagen": {
"account_number": "6485"
},
"Sonstige Reparaturen und Instandhaltungen": {
"account_number": "6490"
},
"Wartungskosten f. Hard- und Software": {
"account_number": "6495"
},
"Mietleasing (bewegliche Wirtschaftsg\u00fcter)": {
"account_number": "6498"
},
"Fahrzeugkosten (Gruppe)": {
"is_group": 1,
"Fahrzeugkosten": {
"account_number": "6500"
},
"Kfz-Versicherungen (Gruppe)": {
"is_group": 1,
"Kfz-Versicherungen": {
"account_number": "6520"
}
"Kfz-Versicherungen": {
"account_number": "6520"
},
"Laufende Kfz-Betriebskosten (Gruppe)": {
"is_group": 1,
"Laufende Kfz-Betriebskosten": {
"account_number": "6530"
}
"Laufende Kfz-Betriebskosten": {
"account_number": "6530"
},
"Kfz-Reparaturen (Gruppe)": {
"is_group": 1,
"Kfz-Reparaturen": {
"account_number": "6540"
}
"Kfz-Reparaturen": {
"account_number": "6540"
},
"Garagenmiete (Gruppe)": {
"is_group": 1,
"Garagenmiete": {
"account_number": "6550"
}
"Garagenmiete": {
"account_number": "6550"
},
"Mietleasing Kfz (Gruppe)": {
"is_group": 1,
"Mietleasing Kfz": {
"account_number": "6560"
}
"Mietleasing Kfz": {
"account_number": "6560"
},
"Sonstige Kfz-Kosten (Gruppe)": {
"is_group": 1,
"Sonstige Kfz-Kosten": {
"account_number": "6570"
}
"Sonstige Kfz-Kosten": {
"account_number": "6570"
},
"Mautgeb\u00fchren (Gruppe)": {
"is_group": 1,
"Mautgeb\u00fchren": {
"account_number": "6580"
}
"Mautgeb\u00fchren": {
"account_number": "6580"
},
"Kfz-Kosten f. betrieblich genutzte zum Privatverm\u00f6gen geh\u00f6rende Kraftfahrzeuge": {
"account_number": "6590"
@@ -2996,20 +3040,23 @@
"Nicht abzugsf\u00e4hige Betriebsausgaben aus Werbe- und Repr\u00e4sentationskosten": {
"account_number": "6645"
},
"Reisekosten Arbeitnehmer": {
"account_number": "6650"
},
"Reisekosten Arbeitnehmer \u00dcbernachtungsaufwand": {
"account_number": "6660"
},
"Reisekosten Arbeitnehmer Fahrtkosten": {
"account_number": "6663"
},
"Reisekosten Arbeitnehmer Verpflegungsmehraufwand": {
"account_number": "6664"
},
"Kilometergelderstattung Arbeitnehmer": {
"account_number": "6668"
"Reisekosten Arbeitnehmer (Gruppe)": {
"is_group": 1,
"Reisekosten Arbeitnehmer": {
"account_number": "6650"
},
"Reisekosten Arbeitnehmer \u00dcbernachtungsaufwand": {
"account_number": "6660"
},
"Reisekosten Arbeitnehmer Fahrtkosten": {
"account_number": "6663"
},
"Reisekosten Arbeitnehmer Verpflegungsmehraufwand": {
"account_number": "6664"
},
"Kilometergelderstattung Arbeitnehmer": {
"account_number": "6668"
}
},
"Reisekosten Unternehmer (Gruppe)": {
"is_group": 1,

View File

@@ -72,16 +72,14 @@
"138-Autres subventions d'investissement (m\u00eame ventilation que celle du compte 131)": {},
"139-Subventions d'investissement inscrites au compte de r\u00e9sultat": {
"1391-Subventions d'\u00e9quipement": {
"13911-Subventions d'\u00e9quipement": {
"13911-Etat": {},
"13912-R\u00e9gions": {},
"13913-D\u00e9partements": {},
"13914-Communes": {},
"13915-Collectivit\u00e9s publiques": {},
"13916-Entreprises publiques": {},
"13917-Entreprises et organismes priv\u00e9s": {},
"13918-Autres": {}
}
"13911-Etat": {},
"13912-R\u00e9gions": {},
"13913-D\u00e9partements": {},
"13914-Communes": {},
"13915-Collectivit\u00e9s publiques": {},
"13916-Entreprises publiques": {},
"13917-Entreprises et organismes priv\u00e9s": {},
"13918-Autres": {}
},
"1398-Autres subventions d'investissement (m\u00eame ventilation que celle du compte 1391)": {}
}
@@ -536,8 +534,8 @@
"3312-Produits en cours P2": {}
},
"335-Travaux en cours": {
"Travaux en cours T1": {},
"Travaux en cours T2": {}
"3351-Travaux en cours T1": {},
"3352-Travaux en cours T2": {}
}
},
"34-En-cours de production de services": {
@@ -595,7 +593,9 @@
"371-Marchandises (ou groupe) A": {},
"372-Marchandises (ou groupe) B": {}
},
"38-Stocks en voie d'acheminement, mis en d\u00e9p\u00f4t ou donn\u00e9s en consignation (en cas d'inventaire permanent en comptabilit\u00e9 g\u00e9n\u00e9rale)": {},
"38-Stocks en voie d'acheminement, mis en d\u00e9p\u00f4t ou donn\u00e9s en consignation (en cas d'inventaire permanent en comptabilit\u00e9 g\u00e9n\u00e9rale)": {
"account_type": "Stock"
},
"39-D\u00e9pr\u00e9ciations des stocks et en-cours": {
"391-D\u00e9pr\u00e9ciations des mati\u00e8res premi\u00e8res (et fournitures)": {
"3911-Mati\u00e8res (ou groupe) A": {},

View File

@@ -245,6 +245,9 @@ def get():
"account_number": "2200"
},
_("Duties and Taxes"): {
_("TDS Payable"): {
"account_number": "2310"
},
"account_type": "Tax",
"is_group": 1,
"account_number": "2300"

View File

@@ -69,6 +69,7 @@ class TestAccount(unittest.TestCase):
acc.account_name = "Accumulated Depreciation"
acc.parent_account = "Fixed Assets - _TC"
acc.company = "_Test Company"
acc.account_type = "Accumulated Depreciation"
acc.insert()
doc = frappe.get_doc("Account", "Securities and Deposits - _TC")
@@ -149,7 +150,7 @@ def _make_test_records(verbose):
# fixed asset depreciation
["_Test Fixed Asset", "Current Assets", 0, "Fixed Asset", None],
["_Test Accumulated Depreciations", "Current Assets", 0, None, None],
["_Test Accumulated Depreciations", "Current Assets", 0, "Accumulated Depreciation", None],
["_Test Depreciations", "Expenses", 0, None, None],
["_Test Gain/Loss on Asset Disposal", "Expenses", 0, None, None],

View File

@@ -41,6 +41,8 @@ frappe.ui.form.on('Accounting Dimension', {
});
});
}
frm.toggle_enable('document_type', frm.doc.__islocal);
},
document_type: function(frm) {
@@ -48,12 +50,6 @@ frappe.ui.form.on('Accounting Dimension', {
frm.set_value('label', frm.doc.document_type);
frm.set_value('fieldname', frappe.model.scrub(frm.doc.document_type));
if (frm.is_new()){
let row = frappe.model.add_child(frm.doc, "Accounting Dimension Detail", "dimension_defaults");
row.reference_document = frm.doc.document_type;
frm.refresh_fields("dimension_defaults");
}
frappe.db.get_value('Accounting Dimension', {'document_type': frm.doc.document_type}, 'document_type', (r) => {
if (r && r.document_type) {
frm.set_df_property('document_type', 'description', "Document type is already set as dimension");

View File

@@ -1,4 +1,5 @@
{
"actions": [],
"autoname": "field:label",
"creation": "2019-05-04 18:13:37.002352",
"doctype": "DocType",
@@ -46,7 +47,8 @@
"options": "Accounting Dimension Detail"
}
],
"modified": "2019-07-17 16:49:31.134385",
"links": [],
"modified": "2020-03-22 20:34:39.805728",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounting Dimension",
@@ -63,9 +65,20 @@
"role": "System Manager",
"share": 1,
"write": 1
},
{
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager",
"share": 1,
"write": 1
}
],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "ASC",
"track_changes": 1

View File

@@ -29,6 +29,16 @@ class AccountingDimension(Document):
if exists and self.is_new():
frappe.throw("Document Type already used as a dimension")
if not self.is_new():
self.validate_document_type_change()
def validate_document_type_change(self):
doctype_before_save = frappe.db.get_value("Accounting Dimension", self.name, "document_type")
if doctype_before_save != self.document_type:
message = _("Cannot change Reference Document Type.")
message += _("Please create a new Accounting Dimension if required.")
frappe.throw(message)
def after_insert(self):
if frappe.flags.in_test:
make_dimension_in_accounting_doctypes(doc=self)
@@ -162,9 +172,9 @@ def toggle_disabling(doc):
def get_doctypes_with_dimensions():
doclist = ["GL Entry", "Sales Invoice", "Purchase Invoice", "Payment Entry", "Asset",
"Expense Claim", "Stock Entry", "Budget", "Payroll Entry", "Delivery Note", "Sales Invoice Item", "Purchase Invoice Item",
"Purchase Order Item", "Journal Entry Account", "Material Request Item", "Delivery Note Item", "Purchase Receipt Item",
"Stock Entry Detail", "Payment Entry Deduction", "Sales Taxes and Charges", "Purchase Taxes and Charges", "Shipping Rule",
"Expense Claim", "Expense Claim Detail", "Expense Taxes and Charges", "Stock Entry", "Budget", "Payroll Entry", "Delivery Note",
"Sales Invoice Item", "Purchase Invoice Item", "Purchase Order Item", "Journal Entry Account", "Material Request Item", "Delivery Note Item",
"Purchase Receipt Item", "Stock Entry Detail", "Payment Entry Deduction", "Sales Taxes and Charges", "Purchase Taxes and Charges", "Shipping Rule",
"Landed Cost Item", "Asset Value Adjustment", "Loyalty Program", "Fee Schedule", "Fee Structure", "Stock Reconciliation",
"Travel Request", "Fees", "POS Profile", "Opening Invoice Creation Tool", "Opening Invoice Creation Tool Item", "Subscription",
"Subscription Plan"]
@@ -172,7 +182,7 @@ def get_doctypes_with_dimensions():
return doclist
def get_accounting_dimensions(as_list=True):
accounting_dimensions = frappe.get_all("Accounting Dimension", fields=["label", "fieldname", "disabled"])
accounting_dimensions = frappe.get_all("Accounting Dimension", fields=["label", "fieldname", "disabled", "document_type"])
if as_list:
return [d.fieldname for d in accounting_dimensions]
@@ -186,6 +196,18 @@ def get_checks_for_pl_and_bs_accounts():
return dimensions
def get_dimension_with_children(doctype, dimension):
if isinstance(dimension, list):
dimension = dimension[0]
all_dimensions = []
lft, rgt = frappe.db.get_value(doctype, dimension, ["lft", "rgt"])
children = frappe.get_all(doctype, filters={"lft": [">=", lft], "rgt": ["<=", rgt]}, order_by="lft")
all_dimensions += [c.name for c in children]
return all_dimensions
@frappe.whitelist()
def get_dimension_filters():
dimension_filters = frappe.db.sql("""
@@ -194,12 +216,13 @@ def get_dimension_filters():
WHERE disabled = 0
""", as_dict=1)
default_dimensions = frappe.db.sql("""SELECT parent, company, default_dimension
FROM `tabAccounting Dimension Detail`""", as_dict=1)
default_dimensions = frappe.db.sql("""SELECT p.fieldname, c.company, c.default_dimension
FROM `tabAccounting Dimension Detail` c, `tabAccounting Dimension` p
WHERE c.parent = p.name""", as_dict=1)
default_dimensions_map = {}
for dimension in default_dimensions:
default_dimensions_map.setdefault(dimension['company'], {})
default_dimensions_map[dimension['company']][dimension['parent']] = dimension['default_dimension']
default_dimensions_map.setdefault(dimension.company, {})
default_dimensions_map[dimension.company][dimension.fieldname] = dimension.default_dimension
return dimension_filters, default_dimensions_map

View File

@@ -41,8 +41,8 @@ class AccountingPeriod(Document):
def get_doctypes_for_closing(self):
docs_for_closing = []
doctypes = ["Sales Invoice", "Purchase Invoice", "Journal Entry", "Payroll Entry", "Bank Reconciliation",
"Asset", "Purchase Order", "Sales Order", "Leave Application", "Leave Allocation", "Stock Entry"]
doctypes = ["Sales Invoice", "Purchase Invoice", "Journal Entry", "Payroll Entry", \
"Bank Reconciliation", "Asset", "Stock Entry"]
closed_doctypes = [{"document_type": doctype, "closed": 1} for doctype in doctypes]
for closed_doctype in closed_doctypes:
docs_for_closing.append(closed_doctype)

View File

@@ -1,210 +1,210 @@
{
"creation": "2013-06-24 15:49:57",
"description": "Settings for Accounts",
"doctype": "DocType",
"document_type": "Other",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"auto_accounting_for_stock",
"acc_frozen_upto",
"frozen_accounts_modifier",
"determine_address_tax_category_from",
"over_billing_allowance",
"column_break_4",
"credit_controller",
"check_supplier_invoice_uniqueness",
"make_payment_via_journal_entry",
"unlink_payment_on_cancellation_of_invoice",
"unlink_advance_payment_on_cancelation_of_order",
"book_asset_depreciation_entry_automatically",
"allow_cost_center_in_entry_of_bs_account",
"add_taxes_from_item_tax_template",
"automatically_fetch_payment_terms",
"print_settings",
"show_inclusive_tax_in_print",
"column_break_12",
"show_payment_schedule_in_print",
"currency_exchange_section",
"allow_stale",
"stale_days",
"report_settings_sb",
"use_custom_cash_flow"
],
"fields": [
{
"default": "1",
"description": "If enabled, the system will post accounting entries for inventory automatically.",
"fieldname": "auto_accounting_for_stock",
"fieldtype": "Check",
"hidden": 1,
"in_list_view": 1,
"label": "Make Accounting Entry For Every Stock Movement"
},
{
"description": "Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.",
"fieldname": "acc_frozen_upto",
"fieldtype": "Date",
"in_list_view": 1,
"label": "Accounts Frozen Upto"
},
{
"description": "Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts",
"fieldname": "frozen_accounts_modifier",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Role Allowed to Set Frozen Accounts & Edit Frozen Entries",
"options": "Role"
},
{
"default": "Billing Address",
"description": "Address used to determine Tax Category in transactions.",
"fieldname": "determine_address_tax_category_from",
"fieldtype": "Select",
"label": "Determine Address Tax Category From",
"options": "Billing Address\nShipping Address"
},
{
"fieldname": "column_break_4",
"fieldtype": "Column Break"
},
{
"description": "Role that is allowed to submit transactions that exceed credit limits set.",
"fieldname": "credit_controller",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Credit Controller",
"options": "Role"
},
{
"fieldname": "check_supplier_invoice_uniqueness",
"fieldtype": "Check",
"label": "Check Supplier Invoice Number Uniqueness"
},
{
"fieldname": "make_payment_via_journal_entry",
"fieldtype": "Check",
"label": "Make Payment via Journal Entry"
},
{
"default": "1",
"fieldname": "unlink_payment_on_cancellation_of_invoice",
"fieldtype": "Check",
"label": "Unlink Payment on Cancellation of Invoice"
},
{
"default": "1",
"fieldname": "unlink_advance_payment_on_cancelation_of_order",
"fieldtype": "Check",
"label": "Unlink Advance Payment on Cancelation of Order"
},
{
"default": "1",
"fieldname": "book_asset_depreciation_entry_automatically",
"fieldtype": "Check",
"label": "Book Asset Depreciation Entry Automatically"
},
{
"fieldname": "allow_cost_center_in_entry_of_bs_account",
"fieldtype": "Check",
"label": "Allow Cost Center In Entry of Balance Sheet Account"
},
{
"default": "1",
"fieldname": "add_taxes_from_item_tax_template",
"fieldtype": "Check",
"label": "Automatically Add Taxes and Charges from Item Tax Template"
},
{
"fieldname": "print_settings",
"fieldtype": "Section Break",
"label": "Print Settings"
},
{
"fieldname": "show_inclusive_tax_in_print",
"fieldtype": "Check",
"label": "Show Inclusive Tax In Print"
},
{
"fieldname": "column_break_12",
"fieldtype": "Column Break"
},
{
"fieldname": "show_payment_schedule_in_print",
"fieldtype": "Check",
"label": "Show Payment Schedule in Print"
},
{
"fieldname": "currency_exchange_section",
"fieldtype": "Section Break",
"label": "Currency Exchange Settings"
},
{
"default": "1",
"fieldname": "allow_stale",
"fieldtype": "Check",
"in_list_view": 1,
"label": "Allow Stale Exchange Rates"
},
{
"default": "1",
"depends_on": "eval:doc.allow_stale==0",
"fieldname": "stale_days",
"fieldtype": "Int",
"label": "Stale Days"
},
{
"fieldname": "report_settings_sb",
"fieldtype": "Section Break",
"label": "Report Settings"
},
{
"default": "0",
"description": "Only select if you have setup Cash Flow Mapper documents",
"fieldname": "use_custom_cash_flow",
"fieldtype": "Check",
"label": "Use Custom Cash Flow Format"
},
{
"fieldname": "automatically_fetch_payment_terms",
"fieldtype": "Check",
"label": "Automatically Fetch Payment Terms"
},
{
"description": "Percentage you are allowed to bill more against the amount ordered. For example: If the order value is $100 for an item and tolerance is set as 10% then you are allowed to bill for $110.",
"fieldname": "over_billing_allowance",
"fieldtype": "Currency",
"label": "Over Billing Allowance (%)"
}
],
"icon": "icon-cog",
"idx": 1,
"issingle": 1,
"modified": "2019-07-04 18:20:55.789946",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounts Settings",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"email": 1,
"print": 1,
"read": 1,
"role": "Accounts Manager",
"share": 1,
"write": 1
},
{
"read": 1,
"role": "Sales User"
},
{
"read": 1,
"role": "Purchase User"
}
],
"quick_entry": 1,
"sort_order": "ASC",
"track_changes": 1
"creation": "2013-06-24 15:49:57",
"description": "Settings for Accounts",
"doctype": "DocType",
"document_type": "Other",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"auto_accounting_for_stock",
"acc_frozen_upto",
"frozen_accounts_modifier",
"determine_address_tax_category_from",
"over_billing_allowance",
"column_break_4",
"credit_controller",
"check_supplier_invoice_uniqueness",
"make_payment_via_journal_entry",
"unlink_payment_on_cancellation_of_invoice",
"unlink_advance_payment_on_cancelation_of_order",
"book_asset_depreciation_entry_automatically",
"add_taxes_from_item_tax_template",
"automatically_fetch_payment_terms",
"print_settings",
"show_inclusive_tax_in_print",
"column_break_12",
"show_payment_schedule_in_print",
"currency_exchange_section",
"allow_stale",
"stale_days",
"report_settings_sb",
"use_custom_cash_flow"
],
"fields": [
{
"default": "1",
"description": "If enabled, the system will post accounting entries for inventory automatically.",
"fieldname": "auto_accounting_for_stock",
"fieldtype": "Check",
"hidden": 1,
"in_list_view": 1,
"label": "Make Accounting Entry For Every Stock Movement"
},
{
"description": "Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.",
"fieldname": "acc_frozen_upto",
"fieldtype": "Date",
"in_list_view": 1,
"label": "Accounts Frozen Upto"
},
{
"description": "Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts",
"fieldname": "frozen_accounts_modifier",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Role Allowed to Set Frozen Accounts & Edit Frozen Entries",
"options": "Role"
},
{
"default": "Billing Address",
"description": "Address used to determine Tax Category in transactions.",
"fieldname": "determine_address_tax_category_from",
"fieldtype": "Select",
"label": "Determine Address Tax Category From",
"options": "Billing Address\nShipping Address"
},
{
"fieldname": "column_break_4",
"fieldtype": "Column Break"
},
{
"description": "Role that is allowed to submit transactions that exceed credit limits set.",
"fieldname": "credit_controller",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Credit Controller",
"options": "Role"
},
{
"default": "0",
"fieldname": "check_supplier_invoice_uniqueness",
"fieldtype": "Check",
"label": "Check Supplier Invoice Number Uniqueness"
},
{
"default": "0",
"fieldname": "make_payment_via_journal_entry",
"fieldtype": "Check",
"label": "Make Payment via Journal Entry"
},
{
"default": "1",
"fieldname": "unlink_payment_on_cancellation_of_invoice",
"fieldtype": "Check",
"label": "Unlink Payment on Cancellation of Invoice"
},
{
"default": "1",
"fieldname": "unlink_advance_payment_on_cancelation_of_order",
"fieldtype": "Check",
"label": "Unlink Advance Payment on Cancellation of Order"
},
{
"default": "1",
"fieldname": "book_asset_depreciation_entry_automatically",
"fieldtype": "Check",
"label": "Book Asset Depreciation Entry Automatically"
},
{
"default": "1",
"fieldname": "add_taxes_from_item_tax_template",
"fieldtype": "Check",
"label": "Automatically Add Taxes and Charges from Item Tax Template"
},
{
"fieldname": "print_settings",
"fieldtype": "Section Break",
"label": "Print Settings"
},
{
"default": "0",
"fieldname": "show_inclusive_tax_in_print",
"fieldtype": "Check",
"label": "Show Inclusive Tax In Print"
},
{
"fieldname": "column_break_12",
"fieldtype": "Column Break"
},
{
"default": "0",
"fieldname": "show_payment_schedule_in_print",
"fieldtype": "Check",
"label": "Show Payment Schedule in Print"
},
{
"fieldname": "currency_exchange_section",
"fieldtype": "Section Break",
"label": "Currency Exchange Settings"
},
{
"default": "1",
"fieldname": "allow_stale",
"fieldtype": "Check",
"in_list_view": 1,
"label": "Allow Stale Exchange Rates"
},
{
"default": "1",
"depends_on": "eval:doc.allow_stale==0",
"fieldname": "stale_days",
"fieldtype": "Int",
"label": "Stale Days"
},
{
"fieldname": "report_settings_sb",
"fieldtype": "Section Break",
"label": "Report Settings"
},
{
"default": "0",
"description": "Only select if you have setup Cash Flow Mapper documents",
"fieldname": "use_custom_cash_flow",
"fieldtype": "Check",
"label": "Use Custom Cash Flow Format"
},
{
"default": "0",
"fieldname": "automatically_fetch_payment_terms",
"fieldtype": "Check",
"label": "Automatically Fetch Payment Terms"
},
{
"description": "Percentage you are allowed to bill more against the amount ordered. For example: If the order value is $100 for an item and tolerance is set as 10% then you are allowed to bill for $110.",
"fieldname": "over_billing_allowance",
"fieldtype": "Currency",
"label": "Over Billing Allowance (%)"
}
],
"icon": "icon-cog",
"idx": 1,
"issingle": 1,
"modified": "2020-10-08 09:40:12.121145",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounts Settings",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"email": 1,
"print": 1,
"read": 1,
"role": "Accounts Manager",
"share": 1,
"write": 1
},
{
"read": 1,
"role": "Sales User"
},
{
"read": 1,
"role": "Purchase User"
}
],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "ASC",
"track_changes": 1
}

View File

@@ -20,7 +20,6 @@ class AccountsSettings(Document):
self.validate_stale_days()
self.enable_payment_schedule_in_print()
self.enable_fields_for_cost_center_settings()
def validate_stale_days(self):
if not self.allow_stale and cint(self.stale_days) <= 0:
@@ -33,8 +32,3 @@ class AccountsSettings(Document):
for doctype in ("Sales Order", "Sales Invoice", "Purchase Order", "Purchase Invoice"):
make_property_setter(doctype, "due_date", "print_hide", show_in_print, "Check")
make_property_setter(doctype, "payment_schedule", "print_hide", 0 if show_in_print else 1, "Check")
def enable_fields_for_cost_center_settings(self):
show_field = 0 if cint(self.allow_cost_center_in_entry_of_bs_account) else 1
for doctype in ("Sales Invoice", "Purchase Invoice", "Payment Entry"):
make_property_setter(doctype, "cost_center", "hidden", show_field, "Check")

View File

@@ -0,0 +1,8 @@
frappe.ui.form.on('Accounts Settings', {
refresh: function(frm) {
frm.set_df_property("acc_frozen_upto", "label", "Books Closed Through");
frm.set_df_property("frozen_accounts_modifier", "label", "Role Allowed to Close Books & Make Changes to Closed Periods");
frm.set_df_property("credit_controller", "label", "Credit Manager");
}
});

View File

@@ -1,5 +1,6 @@
// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
frappe.provide('erpnext.integrations');
frappe.ui.form.on('Bank', {
onload: function(frm) {
@@ -7,6 +8,12 @@ frappe.ui.form.on('Bank', {
},
refresh: function(frm) {
add_fields_to_mapping_table(frm);
if (frm.doc.plaid_access_token) {
frm.add_custom_button(__('Refresh Plaid Link'), () => {
new erpnext.integrations.refreshPlaidLink(frm.doc.plaid_access_token);
});
}
}
});
@@ -27,4 +34,79 @@ let add_fields_to_mapping_table = function (frm) {
frm.doc.name).options = options;
frm.fields_dict.bank_transaction_mapping.grid.refresh();
};
erpnext.integrations.refreshPlaidLink = class refreshPlaidLink {
constructor(access_token) {
this.access_token = access_token;
this.plaidUrl = 'https://cdn.plaid.com/link/v2/stable/link-initialize.js';
this.init_config();
}
async init_config() {
this.plaid_env = await frappe.db.get_single_value('Plaid Settings', 'plaid_env');
this.token = await this.get_link_token_for_update();
this.init_plaid();
}
async get_link_token_for_update() {
const token = frappe.xcall(
'erpnext.erpnext_integrations.doctype.plaid_settings.plaid_settings.get_link_token_for_update',
{ access_token: this.access_token }
)
if (!token) {
frappe.throw(__('Cannot retrieve link token for update. Check Error Log for more information'));
}
return token;
}
init_plaid() {
const me = this;
me.loadScript(me.plaidUrl)
.then(() => {
me.onScriptLoaded(me);
})
.then(() => {
if (me.linkHandler) {
me.linkHandler.open();
}
})
.catch((error) => {
me.onScriptError(error);
});
}
loadScript(src) {
return new Promise(function (resolve, reject) {
if (document.querySelector("script[src='" + src + "']")) {
resolve();
return;
}
const el = document.createElement('script');
el.type = 'text/javascript';
el.async = true;
el.src = src;
el.addEventListener('load', resolve);
el.addEventListener('error', reject);
el.addEventListener('abort', reject);
document.head.appendChild(el);
});
}
onScriptLoaded(me) {
me.linkHandler = Plaid.create({
env: me.plaid_env,
token: me.token,
onSuccess: me.plaid_success
});
}
onScriptError(error) {
frappe.msgprint(__("There was an issue connecting to Plaid's authentication server. Check browser console for more information"));
console.log(error);
}
plaid_success(token, response) {
frappe.show_alert({ message: __('Plaid Link Updated'), indicator: 'green' });
}
};

View File

@@ -1,4 +1,5 @@
{
"actions": [],
"allow_import": 1,
"allow_rename": 1,
"creation": "2017-05-29 21:35:13.136357",
@@ -82,7 +83,7 @@
"default": "0",
"fieldname": "is_default",
"fieldtype": "Check",
"label": "Is the Default Account"
"label": "Is Default Account"
},
{
"default": "0",
@@ -211,7 +212,8 @@
"read_only": 1
}
],
"modified": "2019-10-02 01:34:12.417601",
"links": [],
"modified": "2020-01-29 20:42:26.458316",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Account",

View File

@@ -6,6 +6,7 @@ from __future__ import unicode_literals
import frappe, json
from frappe.model.document import Document
from frappe import _
from frappe.desk.search import sanitize_searchfield
class BankGuarantee(Document):
def validate(self):
@@ -22,5 +23,8 @@ class BankGuarantee(Document):
@frappe.whitelist()
def get_vouchar_detials(column_list, doctype, docname):
column_list = json.loads(column_list)
for col in column_list:
sanitize_searchfield(col)
return frappe.db.sql(''' select {columns} from `tab{doctype}` where name=%s'''
.format(columns=", ".join(json.loads(column_list)), doctype=doctype), docname, as_dict=1)[0]
.format(columns=", ".join(column_list), doctype=doctype), docname, as_dict=1)[0]

View File

@@ -3,16 +3,16 @@
frappe.ui.form.on("Bank Reconciliation", {
setup: function(frm) {
frm.add_fetch("bank_account", "account_currency", "account_currency");
frm.add_fetch("account", "account_currency", "account_currency");
},
onload: function(frm) {
let default_bank_account = frappe.defaults.get_user_default("Company")?
locals[":Company"][frappe.defaults.get_user_default("Company")]["default_bank_account"]: "";
frm.set_value("bank_account", default_bank_account);
frm.set_value("account", default_bank_account);
frm.set_query("bank_account", function() {
frm.set_query("account", function() {
return {
"filters": {
"account_type": ["in",["Bank","Cash"]],
@@ -21,6 +21,14 @@ frappe.ui.form.on("Bank Reconciliation", {
};
});
frm.set_query("bank_account", function() {
return {
"filters": {
"is_company_account": 1
}
};
});
frm.set_value("from_date", frappe.datetime.month_start());
frm.set_value("to_date", frappe.datetime.month_end());
},

View File

@@ -19,10 +19,9 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"description": "Select account head of the bank where cheque was deposited.",
"fetch_from": "bank_account_no.account",
"fetch_from": "bank_account.account",
"fetch_if_empty": 1,
"fieldname": "bank_account",
"fieldname": "account",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -31,7 +30,7 @@
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Bank Account",
"label": "Account",
"length": 0,
"no_copy": 0,
"options": "Account",
@@ -164,7 +163,6 @@
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
@@ -183,8 +181,9 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
"description": "Select the Bank Account to reconcile.",
"fetch_if_empty": 0,
"fieldname": "bank_account_no",
"fieldname": "bank_account",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
@@ -193,12 +192,11 @@
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Bank Account No",
"label": "Bank Account",
"length": 0,
"no_copy": 0,
"options": "Bank Account",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
@@ -450,7 +448,7 @@
"istable": 0,
"max_attachments": 0,
"menu_index": 0,
"modified": "2019-04-09 18:41:06.110453",
"modified": "2020-01-22 00:00:00.000000",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Reconciliation",
@@ -483,4 +481,4 @@
"track_changes": 0,
"track_seen": 0,
"track_views": 0
}
}

View File

@@ -13,17 +13,15 @@ form_grid_templates = {
class BankReconciliation(Document):
def get_payment_entries(self):
if not (self.bank_account and self.from_date and self.to_date):
msgprint(_("Bank Account, From Date and To Date are Mandatory"))
return
if not (self.from_date and self.to_date):
frappe.throw(_("From Date and To Date are Mandatory"))
if not self.account:
frappe.throw(_("Account is mandatory to get payment entries"))
condition = ""
if not self.include_reconciled_entries:
condition = " and (clearance_date is null or clearance_date='0000-00-00')"
account_cond = ""
if self.bank_account_no:
account_cond = " and t2.bank_account_no = {0}".format(frappe.db.escape(self.bank_account_no))
condition = "and (clearance_date IS NULL or clearance_date='0000-00-00')"
journal_entries = frappe.db.sql("""
select
@@ -34,15 +32,15 @@ class BankReconciliation(Document):
from
`tabJournal Entry` t1, `tabJournal Entry Account` t2
where
t2.parent = t1.name and t2.account = %s and t1.docstatus=1
and t1.posting_date >= %s and t1.posting_date <= %s
and ifnull(t1.is_opening, 'No') = 'No' {0} {1}
t2.parent = t1.name and t2.account = %(account)s and t1.docstatus=1
and t1.posting_date >= %(from)s and t1.posting_date <= %(to)s
and ifnull(t1.is_opening, 'No') = 'No' {condition}
group by t2.account, t1.name
order by t1.posting_date ASC, t1.name DESC
""".format(condition, account_cond), (self.bank_account, self.from_date, self.to_date), as_dict=1)
""".format(condition=condition), {"account": self.account, "from": self.from_date, "to": self.to_date}, as_dict=1)
if self.bank_account_no:
condition = " and bank_account = %(bank_account_no)s"
if self.bank_account:
condition += 'and bank_account = %(bank_account)s'
payment_entries = frappe.db.sql("""
select
@@ -55,30 +53,43 @@ class BankReconciliation(Document):
from `tabPayment Entry`
where
(paid_from=%(account)s or paid_to=%(account)s) and docstatus=1
and posting_date >= %(from)s and posting_date <= %(to)s {0}
and posting_date >= %(from)s and posting_date <= %(to)s
{condition}
order by
posting_date ASC, name DESC
""".format(condition),
{"account":self.bank_account, "from":self.from_date,
"to":self.to_date, "bank_account_no": self.bank_account_no}, as_dict=1)
""".format(condition=condition), {"account": self.account, "from":self.from_date,
"to": self.to_date, "bank_account": self.bank_account}, as_dict=1)
pos_entries = []
pos_sales_invoices, pos_purchase_invoices = [], []
if self.include_pos_transactions:
pos_entries = frappe.db.sql("""
pos_sales_invoices = frappe.db.sql("""
select
"Sales Invoice Payment" as payment_document, sip.name as payment_entry, sip.amount as debit,
si.posting_date, si.debit_to as against_account, sip.clearance_date,
si.posting_date, si.customer as against_account, sip.clearance_date,
account.account_currency, 0 as credit
from `tabSales Invoice Payment` sip, `tabSales Invoice` si, `tabAccount` account
where
sip.account=%(account)s and si.docstatus=1 and sip.parent = si.name
and account.name = sip.account and si.posting_date >= %(from)s and si.posting_date <= %(to)s {0}
and account.name = sip.account and si.posting_date >= %(from)s and si.posting_date <= %(to)s
order by
si.posting_date ASC, si.name DESC
""".format(condition),
{"account":self.bank_account, "from":self.from_date, "to":self.to_date}, as_dict=1)
""", {"account":self.account, "from":self.from_date, "to":self.to_date}, as_dict=1)
entries = sorted(list(payment_entries)+list(journal_entries+list(pos_entries)),
pos_purchase_invoices = frappe.db.sql("""
select
"Purchase Invoice" as payment_document, pi.name as payment_entry, pi.paid_amount as credit,
pi.posting_date, pi.supplier as against_account, pi.clearance_date,
account.account_currency, 0 as debit
from `tabPurchase Invoice` pi, `tabAccount` account
where
pi.cash_bank_account=%(account)s and pi.docstatus=1 and account.name = pi.cash_bank_account
and pi.posting_date >= %(from)s and pi.posting_date <= %(to)s
order by
pi.posting_date ASC, pi.name DESC
""", {"account": self.account, "from": self.from_date, "to": self.to_date}, as_dict=1)
entries = sorted(list(payment_entries) + list(journal_entries + list(pos_sales_invoices) + list(pos_purchase_invoices)),
key=lambda k: k['posting_date'] or getdate(nowdate()))
self.set('payment_entries', [])

View File

@@ -55,7 +55,7 @@ class BankStatementTransactionEntry(Document):
def populate_payment_entries(self):
if self.bank_statement is None: return
filename = self.bank_statement.split("/")[-1]
file_url = self.bank_statement
if (len(self.new_transaction_items + self.reconciled_transaction_items) > 0):
frappe.throw(_("Transactions already retreived from the statement"))
@@ -65,7 +65,7 @@ class BankStatementTransactionEntry(Document):
if self.bank_settings:
mapped_items = frappe.get_doc("Bank Statement Settings", self.bank_settings).mapped_items
statement_headers = self.get_statement_headers()
transactions = get_transaction_entries(filename, statement_headers)
transactions = get_transaction_entries(file_url, statement_headers)
for entry in transactions:
date = entry[statement_headers["Date"]].strip()
#print("Processing entry DESC:{0}-W:{1}-D:{2}-DT:{3}".format(entry["Particulars"], entry["Withdrawals"], entry["Deposits"], entry["Date"]))
@@ -398,20 +398,21 @@ def get_transaction_info(headers, header_index, row):
transaction[header] = ""
return transaction
def get_transaction_entries(filename, headers):
def get_transaction_entries(file_url, headers):
header_index = {}
rows, transactions = [], []
if (filename.lower().endswith("xlsx")):
if (file_url.lower().endswith("xlsx")):
from frappe.utils.xlsxutils import read_xlsx_file_from_attached_file
rows = read_xlsx_file_from_attached_file(file_id=filename)
elif (filename.lower().endswith("csv")):
rows = read_xlsx_file_from_attached_file(file_url=file_url)
elif (file_url.lower().endswith("csv")):
from frappe.utils.csvutils import read_csv_content
_file = frappe.get_doc("File", {"file_name": filename})
_file = frappe.get_doc("File", {"file_url": file_url})
filepath = _file.get_full_path()
with open(filepath,'rb') as csvfile:
rows = read_csv_content(csvfile.read())
elif (filename.lower().endswith("xls")):
elif (file_url.lower().endswith("xls")):
filename = file_url.split("/")[-1]
rows = get_rows_from_xls_file(filename)
else:
frappe.throw(_("Only .csv and .xlsx files are supported currently"))

View File

@@ -15,8 +15,8 @@ def upload_bank_statement():
with open(frappe.uploaded_file, "rb") as upfile:
fcontent = upfile.read()
else:
from frappe.utils.file_manager import get_uploaded_content
fname, fcontent = get_uploaded_content()
fcontent = frappe.local.uploaded_file
fname = frappe.local.uploaded_filename
if frappe.safe_encode(fname).lower().endswith("csv".encode('utf-8')):
from frappe.utils.csvutils import read_csv_content

View File

@@ -9,11 +9,13 @@ from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sal
from erpnext.accounts.doctype.purchase_invoice.test_purchase_invoice import make_purchase_invoice
from erpnext.accounts.doctype.payment_entry.test_payment_entry import get_payment_entry
from erpnext.accounts.page.bank_reconciliation.bank_reconciliation import reconcile, get_linked_payments
from erpnext.accounts.doctype.pos_profile.test_pos_profile import make_pos_profile
test_dependencies = ["Item", "Cost Center"]
class TestBankTransaction(unittest.TestCase):
def setUp(self):
make_pos_profile()
add_transactions()
add_payments()
@@ -27,6 +29,9 @@ class TestBankTransaction(unittest.TestCase):
frappe.db.sql("""delete from `tabPayment Entry Reference`""")
frappe.db.sql("""delete from `tabPayment Entry`""")
# Delete POS Profile
frappe.db.sql("delete from `tabPOS Profile`")
frappe.flags.test_bank_transactions_created = False
frappe.flags.test_payments_created = False

View File

@@ -110,6 +110,15 @@
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"depends_on": "eval:doc.docstatus==1",
"fieldname": "clearance_date",
"fieldtype": "Date",
"label": "Clearance Date",
"no_copy": 1,
"print_hide": 1,
"read_only": 1
}
],
"has_web_view": 0,
@@ -122,7 +131,7 @@
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2018-12-06 10:57:02.635141",
"modified": "2020-01-22 00:00:00.000000",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Transaction Payments",
@@ -138,4 +147,4 @@
"track_changes": 1,
"track_seen": 0,
"track_views": 0
}
}

View File

@@ -9,6 +9,7 @@ from frappe.utils import flt, getdate, add_months, get_last_day, fmt_money, nowd
from frappe.model.naming import make_autoname
from erpnext.accounts.utils import get_fiscal_year
from frappe.model.document import Document
from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import get_accounting_dimensions
class BudgetError(frappe.ValidationError): pass
class DuplicateBudgetError(frappe.ValidationError): pass
@@ -98,30 +99,32 @@ def validate_expense_against_budget(args):
if not (args.get('account') and args.get('cost_center')) and args.item_code:
args.cost_center, args.account = get_item_details(args)
if not (args.cost_center or args.project) and not args.account:
if not args.account:
return
for budget_against in ['project', 'cost_center']:
for budget_against in ['project', 'cost_center'] + get_accounting_dimensions():
if (args.get(budget_against) and args.account
and frappe.db.get_value("Account", {"name": args.account, "root_type": "Expense"})):
if args.project and budget_against == 'project':
condition = "and b.project=%s" % frappe.db.escape(args.project)
args.budget_against_field = "Project"
doctype = frappe.unscrub(budget_against)
elif args.cost_center and budget_against == 'cost_center':
cc_lft, cc_rgt = frappe.db.get_value("Cost Center", args.cost_center, ["lft", "rgt"])
condition = """and exists(select name from `tabCost Center`
where lft<=%s and rgt>=%s and name=b.cost_center)""" % (cc_lft, cc_rgt)
args.budget_against_field = "Cost Center"
if frappe.get_cached_value('DocType', doctype, 'is_tree'):
lft, rgt = frappe.db.get_value(doctype, args.get(budget_against), ["lft", "rgt"])
condition = """and exists(select name from `tab%s`
where lft<=%s and rgt>=%s and name=b.%s)""" % (doctype, lft, rgt, budget_against) #nosec
args.is_tree = True
else:
condition = "and b.%s=%s" % (budget_against, frappe.db.escape(args.get(budget_against)))
args.is_tree = False
args.budget_against = args.get(budget_against)
args.budget_against_field = budget_against
args.budget_against_doctype = doctype
budget_records = frappe.db.sql("""
select
b.{budget_against_field} as budget_against, ba.budget_amount, b.monthly_distribution,
ifnull(b.applicable_on_material_request, 0) as for_material_request,
ifnull(applicable_on_purchase_order,0) as for_purchase_order,
ifnull(applicable_on_purchase_order, 0) as for_purchase_order,
ifnull(applicable_on_booking_actual_expenses,0) as for_actual_expenses,
b.action_if_annual_budget_exceeded, b.action_if_accumulated_monthly_budget_exceeded,
b.action_if_annual_budget_exceeded_on_mr, b.action_if_accumulated_monthly_budget_exceeded_on_mr,
@@ -132,9 +135,7 @@ def validate_expense_against_budget(args):
b.name=ba.parent and b.fiscal_year=%s
and ba.account=%s and b.docstatus=1
{condition}
""".format(condition=condition,
budget_against_field=frappe.scrub(args.get("budget_against_field"))),
(args.fiscal_year, args.account), as_dict=True)
""".format(condition=condition, budget_against_field=budget_against), (args.fiscal_year, args.account), as_dict=True) #nosec
if budget_records:
validate_budget_records(args, budget_records)
@@ -210,10 +211,10 @@ def get_requested_amount(args, budget):
item_code = args.get('item_code')
condition = get_other_condition(args, budget, 'Material Request')
data = frappe.db.sql(""" select ifnull((sum(mri.stock_qty - mri.ordered_qty) * rate), 0) as amount
from `tabMaterial Request Item` mri, `tabMaterial Request` mr where mr.name = mri.parent and
mri.item_code = %s and mr.docstatus = 1 and mri.stock_qty > mri.ordered_qty and {0} and
mr.material_request_type = 'Purchase' and mr.status != 'Stopped'""".format(condition), item_code, as_list=1)
data = frappe.db.sql(""" select ifnull((sum(child.stock_qty - child.ordered_qty) * rate), 0) as amount
from `tabMaterial Request Item` child, `tabMaterial Request` parent where parent.name = child.parent and
child.item_code = %s and parent.docstatus = 1 and child.stock_qty > child.ordered_qty and {0} and
parent.material_request_type = 'Purchase' and parent.status != 'Stopped'""".format(condition), item_code, as_list=1)
return data[0][0] if data else 0
@@ -221,45 +222,55 @@ def get_ordered_amount(args, budget):
item_code = args.get('item_code')
condition = get_other_condition(args, budget, 'Purchase Order')
data = frappe.db.sql(""" select ifnull(sum(poi.amount - poi.billed_amt), 0) as amount
from `tabPurchase Order Item` poi, `tabPurchase Order` po where
po.name = poi.parent and poi.item_code = %s and po.docstatus = 1 and poi.amount > poi.billed_amt
and po.status != 'Closed' and {0}""".format(condition), item_code, as_list=1)
data = frappe.db.sql(""" select ifnull(sum(child.amount - child.billed_amt), 0) as amount
from `tabPurchase Order Item` child, `tabPurchase Order` parent where
parent.name = child.parent and child.item_code = %s and parent.docstatus = 1 and child.amount > child.billed_amt
and parent.status != 'Closed' and {0}""".format(condition), item_code, as_list=1)
return data[0][0] if data else 0
def get_other_condition(args, budget, for_doc):
condition = "expense_account = '%s'" % (args.expense_account)
budget_against_field = frappe.scrub(args.get("budget_against_field"))
budget_against_field = args.get("budget_against_field")
if budget_against_field and args.get(budget_against_field):
condition += " and %s = '%s'" %(budget_against_field, args.get(budget_against_field))
condition += " and child.%s = '%s'" % (budget_against_field, args.get(budget_against_field))
if args.get('fiscal_year'):
date_field = 'schedule_date' if for_doc == 'Material Request' else 'transaction_date'
start_date, end_date = frappe.db.get_value('Fiscal Year', args.get('fiscal_year'),
['year_start_date', 'year_end_date'])
alias = 'mr' if for_doc == 'Material Request' else 'po'
condition += """ and %s.%s
between '%s' and '%s' """ %(alias, date_field, start_date, end_date)
condition += """ and parent.%s
between '%s' and '%s' """ %(date_field, start_date, end_date)
return condition
def get_actual_expense(args):
if not args.budget_against_doctype:
args.budget_against_doctype = frappe.unscrub(args.budget_against_field)
budget_against_field = args.get('budget_against_field')
condition1 = " and gle.posting_date <= %(month_end_date)s" \
if args.get("month_end_date") else ""
if args.budget_against_field == "Cost Center":
lft_rgt = frappe.db.get_value(args.budget_against_field,
args.budget_against, ["lft", "rgt"], as_dict=1)
if args.is_tree:
lft_rgt = frappe.db.get_value(args.budget_against_doctype,
args.get(budget_against_field), ["lft", "rgt"], as_dict=1)
args.update(lft_rgt)
condition2 = """and exists(select name from `tabCost Center`
where lft>=%(lft)s and rgt<=%(rgt)s and name=gle.cost_center)"""
elif args.budget_against_field == "Project":
condition2 = "and exists(select name from `tabProject` where name=gle.project and gle.project = %(budget_against)s)"
condition2 = """and exists(select name from `tab{doctype}`
where lft>=%(lft)s and rgt<=%(rgt)s
and name=gle.{budget_against_field})""".format(doctype=args.budget_against_doctype, #nosec
budget_against_field=budget_against_field)
else:
condition2 = """and exists(select name from `tab{doctype}`
where name=gle.{budget_against} and
gle.{budget_against} = %({budget_against})s)""".format(doctype=args.budget_against_doctype,
budget_against = budget_against_field)
return flt(frappe.db.sql("""
amount = flt(frappe.db.sql("""
select sum(gle.debit) - sum(gle.credit)
from `tabGL Entry` gle
where gle.account=%(account)s
@@ -268,7 +279,9 @@ def get_actual_expense(args):
and gle.company=%(company)s
and gle.docstatus=1
{condition2}
""".format(condition1=condition1, condition2=condition2), (args))[0][0])
""".format(condition1=condition1, condition2=condition2), (args))[0][0]) #nosec
return amount
def get_accumulated_monthly_budget(monthly_distribution, posting_date, fiscal_year, annual_budget):
distribution = {}

View File

@@ -13,7 +13,7 @@ from erpnext.accounts.doctype.journal_entry.test_journal_entry import make_journ
class TestBudget(unittest.TestCase):
def test_monthly_budget_crossed_ignore(self):
set_total_expense_zero("2013-02-28", "Cost Center")
set_total_expense_zero("2013-02-28", "cost_center")
budget = make_budget(budget_against="Cost Center")
@@ -26,7 +26,7 @@ class TestBudget(unittest.TestCase):
budget.cancel()
def test_monthly_budget_crossed_stop1(self):
set_total_expense_zero("2013-02-28", "Cost Center")
set_total_expense_zero("2013-02-28", "cost_center")
budget = make_budget(budget_against="Cost Center")
@@ -41,7 +41,7 @@ class TestBudget(unittest.TestCase):
budget.cancel()
def test_exception_approver_role(self):
set_total_expense_zero("2013-02-28", "Cost Center")
set_total_expense_zero("2013-02-28", "cost_center")
budget = make_budget(budget_against="Cost Center")
@@ -114,7 +114,7 @@ class TestBudget(unittest.TestCase):
budget.cancel()
def test_monthly_budget_crossed_stop2(self):
set_total_expense_zero("2013-02-28", "Project")
set_total_expense_zero("2013-02-28", "project")
budget = make_budget(budget_against="Project")
@@ -129,7 +129,7 @@ class TestBudget(unittest.TestCase):
budget.cancel()
def test_yearly_budget_crossed_stop1(self):
set_total_expense_zero("2013-02-28", "Cost Center")
set_total_expense_zero("2013-02-28", "cost_center")
budget = make_budget(budget_against="Cost Center")
@@ -141,7 +141,7 @@ class TestBudget(unittest.TestCase):
budget.cancel()
def test_yearly_budget_crossed_stop2(self):
set_total_expense_zero("2013-02-28", "Project")
set_total_expense_zero("2013-02-28", "project")
budget = make_budget(budget_against="Project")
@@ -153,7 +153,7 @@ class TestBudget(unittest.TestCase):
budget.cancel()
def test_monthly_budget_on_cancellation1(self):
set_total_expense_zero("2013-02-28", "Cost Center")
set_total_expense_zero("2013-02-28", "cost_center")
budget = make_budget(budget_against="Cost Center")
@@ -177,7 +177,7 @@ class TestBudget(unittest.TestCase):
budget.cancel()
def test_monthly_budget_on_cancellation2(self):
set_total_expense_zero("2013-02-28", "Project")
set_total_expense_zero("2013-02-28", "project")
budget = make_budget(budget_against="Project")
@@ -201,8 +201,8 @@ class TestBudget(unittest.TestCase):
budget.cancel()
def test_monthly_budget_against_group_cost_center(self):
set_total_expense_zero("2013-02-28", "Cost Center")
set_total_expense_zero("2013-02-28", "Cost Center", "_Test Cost Center 2 - _TC")
set_total_expense_zero("2013-02-28", "cost_center")
set_total_expense_zero("2013-02-28", "cost_center", "_Test Cost Center 2 - _TC")
budget = make_budget(budget_against="Cost Center", cost_center="_Test Company - _TC")
frappe.db.set_value("Budget", budget.name, "action_if_accumulated_monthly_budget_exceeded", "Stop")
@@ -241,25 +241,30 @@ class TestBudget(unittest.TestCase):
def set_total_expense_zero(posting_date, budget_against_field=None, budget_against_CC=None):
if budget_against_field == "Project":
if budget_against_field == "project":
budget_against = "_Test Project"
else:
budget_against = budget_against_CC or "_Test Cost Center - _TC"
existing_expense = get_actual_expense(frappe._dict({
args = frappe._dict({
"account": "_Test Account Cost for Goods Sold - _TC",
"cost_center": "_Test Cost Center - _TC",
"monthly_end_date": posting_date,
"company": "_Test Company",
"fiscal_year": "_Test Fiscal Year 2013",
"budget_against_field": budget_against_field,
"budget_against": budget_against
}))
})
if not args.get(budget_against_field):
args[budget_against_field] = budget_against
existing_expense = get_actual_expense(args)
if existing_expense:
if budget_against_field == "Cost Center":
if budget_against_field == "cost_center":
make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", -existing_expense, "_Test Cost Center - _TC", posting_date="2013-02-28", submit=True)
elif budget_against_field == "Project":
elif budget_against_field == "project":
make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", -existing_expense, "_Test Cost Center - _TC", submit=True, project="_Test Project", posting_date="2013-02-28")

View File

@@ -32,10 +32,12 @@ frappe.ui.form.on('C-Form Invoice Detail', {
invoice_no(frm, cdt, cdn) {
let d = frappe.get_doc(cdt, cdn);
frm.call('get_invoice_details', {
invoice_no: d.invoice_no
}).then(r => {
frappe.model.set_value(cdt, cdn, r.message);
});
if (d.invoice_no) {
frm.call('get_invoice_details', {
invoice_no: d.invoice_no
}).then(r => {
frappe.model.set_value(cdt, cdn, r.message);
});
}
}
});

View File

@@ -7,19 +7,19 @@ DEFAULT_MAPPERS = [
'section_header': 'Cash flows from operating activities',
'section_leader': 'Adjustments for',
'section_name': 'Operating Activities',
'position': 0,
'position': 1,
'section_subtotal': 'Cash generated from operations',
},
{
'doctype': 'Cash Flow Mapper',
'position': 1,
'position': 2,
'section_footer': 'Net cash used in investing activities',
'section_header': 'Cash flows from investing activities',
'section_name': 'Investing Activities'
},
{
'doctype': 'Cash Flow Mapper',
'position': 2,
'position': 3,
'section_footer': 'Net cash used in financing activites',
'section_header': 'Cash flows from financing activities',
'section_name': 'Financing Activities',

View File

@@ -23,13 +23,13 @@ class CashierClosing(Document):
where posting_date=%s and posting_time>=%s and posting_time<=%s and owner=%s
""", (self.date, self.from_time, self.time, self.user))
self.outstanding_amount = flt(values[0][0] if values else 0)
def make_calculations(self):
total = 0.00
for i in self.payments:
total += flt(i.amount)
self.net_amount = total + self.outstanding_amount + self.expense - self.custody + self.returns
self.net_amount = total + self.outstanding_amount + flt(self.expense) - flt(self.custody) + flt(self.returns)
def validate_time(self):
if self.from_time >= self.time:

View File

@@ -17,17 +17,60 @@ frappe.ui.form.on('Chart of Accounts Importer', {
if (frm.page && frm.page.show_import_button) {
create_import_button(frm);
}
},
// show download template button when company is properly selected
if(frm.doc.company) {
// download the csv template file
frm.add_custom_button(__("Download template"), function () {
let get_template_url = 'erpnext.accounts.doctype.chart_of_accounts_importer.chart_of_accounts_importer.download_template';
open_url_post(frappe.request.url, { cmd: get_template_url, doctype: frm.doc.doctype });
});
} else {
frm.set_value("import_file", "");
}
download_template: function(frm) {
var d = new frappe.ui.Dialog({
title: __("Download Template"),
fields: [
{
label : "File Type",
fieldname: "file_type",
fieldtype: "Select",
reqd: 1,
options: ["Excel", "CSV"]
},
{
label: "Template Type",
fieldname: "template_type",
fieldtype: "Select",
reqd: 1,
options: ["Sample Template", "Blank Template"],
change: () => {
let template_type = d.get_value('template_type');
if (template_type === "Sample Template") {
d.set_df_property('template_type', 'description',
`The Sample Template contains all the required accounts pre filled in the template.
You can add more accounts or change existing accounts in the template as per your choice.`);
} else {
d.set_df_property('template_type', 'description',
`The Blank Template contains just the account type and root type required to build the Chart
of Accounts. Please enter the account names and add more rows as per your requirement.`);
}
}
}
],
primary_action: function() {
var data = d.get_values();
if (!data.template_type) {
frappe.throw(__('Please select <b>Template Type</b> to download template'));
}
open_url_post(
'/api/method/erpnext.accounts.doctype.chart_of_accounts_importer.chart_of_accounts_importer.download_template',
{
file_type: data.file_type,
template_type: data.template_type
}
);
d.hide();
},
primary_action_label: __('Download')
});
d.show();
},
import_file: function (frm) {
@@ -41,21 +84,24 @@ frappe.ui.form.on('Chart of Accounts Importer', {
},
company: function (frm) {
// validate that no Gl Entry record for the company exists.
frappe.call({
method: "erpnext.accounts.doctype.chart_of_accounts_importer.chart_of_accounts_importer.validate_company",
args: {
company: frm.doc.company
},
callback: function(r) {
if(r.message===false) {
frm.set_value("company", "");
frappe.throw(__("Transactions against the company already exist! "));
} else {
frm.trigger("refresh");
if (frm.doc.company) {
// validate that no Gl Entry record for the company exists.
frappe.call({
method: "erpnext.accounts.doctype.chart_of_accounts_importer.chart_of_accounts_importer.validate_company",
args: {
company: frm.doc.company
},
callback: function(r) {
if(r.message===false) {
frm.set_value("company", "");
frappe.throw(__(`Transactions against the company already exist!
Chart Of accounts can be imported for company with no transactions`));
} else {
frm.trigger("refresh");
}
}
}
});
});
}
}
});
@@ -77,7 +123,7 @@ var validate_csv_data = function(frm) {
};
var create_import_button = function(frm) {
frm.page.set_primary_action(__("Start Import"), function () {
frm.page.set_primary_action(__("Import"), function () {
frappe.call({
method: "erpnext.accounts.doctype.chart_of_accounts_importer.chart_of_accounts_importer.import_coa",
args: {
@@ -118,7 +164,8 @@ var generate_tree_preview = function(frm) {
args: {
file_name: frm.doc.import_file,
parent: parent,
doctype: 'Chart of Accounts Importer'
doctype: 'Chart of Accounts Importer',
file_type: frm.doc.file_type
},
onclick: function(node) {
parent = node.value;

View File

@@ -1,226 +1,71 @@
{
"allow_copy": 1,
"allow_events_in_timeline": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"creation": "2019-02-01 12:24:34.761380",
"custom": 0,
"actions": [],
"allow_copy": 1,
"creation": "2019-02-01 12:24:34.761380",
"description": "Import Chart of Accounts from a csv file",
"docstatus": 0,
"doctype": "DocType",
"document_type": "Other",
"editable_grid": 1,
"engine": "InnoDB",
"doctype": "DocType",
"document_type": "Other",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"company",
"download_template",
"import_file",
"chart_preview",
"chart_tree"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "company",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Company",
"length": 0,
"no_copy": 0,
"options": "Company",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "company",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Company",
"options": "Company"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "import_file_section",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "",
"depends_on": "company",
"fieldname": "import_file",
"fieldtype": "Attach",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Attach custom Chart of Accounts file",
"length": 0,
"no_copy": 0,
"options": "",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"label": "Attach custom Chart of Accounts file"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 1,
"columns": 0,
"fieldname": "chart_preview",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Chart Preview",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldtype": "Section Break",
"label": "Chart Preview"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "chart_tree",
"fieldtype": "HTML",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Chart Tree",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"label": "Chart Tree"
},
{
"depends_on": "company",
"fieldname": "download_template",
"fieldtype": "Button",
"label": "Download Template"
}
],
"has_web_view": 0,
"hide_heading": 1,
"hide_toolbar": 1,
"idx": 0,
"image_view": 0,
"in_create": 1,
"is_submittable": 0,
"issingle": 1,
"istable": 0,
"max_attachments": 0,
"modified": "2019-02-04 23:10:30.136807",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Chart of Accounts Importer",
"name_case": "",
"owner": "Administrator",
],
"hide_toolbar": 1,
"in_create": 1,
"issingle": 1,
"links": [],
"modified": "2020-02-28 08:49:11.422846",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Chart of Accounts Importer",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"cancel": 0,
"create": 1,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 0,
"read": 1,
"report": 0,
"role": "Accounts Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"create": 1,
"read": 1,
"role": "Accounts Manager",
"share": 1,
"write": 1
}
],
"quick_entry": 1,
"read_only": 1,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "",
"sort_order": "DESC",
"track_changes": 0,
"track_seen": 0,
"track_views": 0
],
"quick_entry": 1,
"read_only": 1,
"sort_field": "modified",
"sort_order": "DESC"
}

View File

@@ -4,18 +4,28 @@
from __future__ import unicode_literals
from functools import reduce
import frappe, csv
import frappe, csv, os
from frappe import _
from frappe.utils import cstr
from frappe.utils import cstr, cint
from frappe.model.document import Document
from frappe.utils.csvutils import UnicodeWriter
from erpnext.accounts.doctype.account.chart_of_accounts.chart_of_accounts import create_charts, build_tree_from_json
from frappe.utils.xlsxutils import read_xlsx_file_from_attached_file, read_xls_file_from_attached_file
class ChartofAccountsImporter(Document):
pass
@frappe.whitelist()
def validate_company(company):
parent_company, allow_account_creation_against_child_company = frappe.db.get_value('Company',
{'name': company}, ['parent_company',
'allow_account_creation_against_child_company'])
if parent_company and (not allow_account_creation_against_child_company):
frappe.throw(_("""{0} is a child company. Please import accounts against parent company
or enable {1} in company master""").format(frappe.bold(company),
frappe.bold('Allow Account Creation Against Child Company')), title='Wrong Company')
if frappe.db.get_all('GL Entry', {"company": company}, "name", limit=1):
return False
@@ -25,42 +35,85 @@ def import_coa(file_name, company):
unset_existing_data(company)
# create accounts
forest = build_forest(generate_data_from_csv(file_name))
file_doc, extension = get_file(file_name)
if extension == 'csv':
data = generate_data_from_csv(file_doc)
else:
data = generate_data_from_excel(file_doc, extension)
forest = build_forest(data)
create_charts(company, custom_chart=forest)
# trigger on_update for company to reset default accounts
set_default_accounts(company)
def generate_data_from_csv(file_name, as_dict=False):
''' read csv file and return the generated nested tree '''
if not file_name.endswith('.csv'):
frappe.throw("Only CSV files can be used to for importing data. Please check the file format you are trying to upload")
def get_file(file_name):
file_doc = frappe.get_doc("File", {"file_url": file_name})
parts = file_doc.get_extension()
extension = parts[1]
extension = extension.lstrip(".")
if extension not in ('csv', 'xlsx', 'xls'):
frappe.throw("Only CSV and Excel files can be used to for importing data. Please check the file format you are trying to upload")
return file_doc, extension
def generate_data_from_csv(file_doc, as_dict=False):
''' read csv file and return the generated nested tree '''
file_doc = frappe.get_doc('File', {"file_url": file_name})
file_path = file_doc.get_full_path()
data = []
with open(file_path, 'r') as in_file:
csv_reader = list(csv.reader(in_file))
headers = csv_reader[1][1:]
del csv_reader[0:2] # delete top row and headers row
headers = csv_reader[0]
del csv_reader[0] # delete top row and headers row
for row in csv_reader:
if as_dict:
data.append({frappe.scrub(header): row[index+1] for index, header in enumerate(headers)})
data.append({frappe.scrub(header): row[index] for index, header in enumerate(headers)})
else:
if not row[2]: row[2] = row[1]
data.append(row[1:])
if not row[1]: row[1] = row[0]
data.append(row)
# convert csv data
return data
def generate_data_from_excel(file_doc, extension, as_dict=False):
content = file_doc.get_content()
if extension == "xlsx":
rows = read_xlsx_file_from_attached_file(fcontent=content)
elif extension == "xls":
rows = read_xls_file_from_attached_file(content)
data = []
headers = rows[0]
del rows[0]
for row in rows:
if as_dict:
data.append({frappe.scrub(header): row[index] for index, header in enumerate(headers)})
else:
if not row[1]: row[1] = row[0]
data.append(row)
return data
@frappe.whitelist()
def get_coa(doctype, parent, is_root=False, file_name=None):
''' called by tree view (to fetch node's children) '''
file_doc, extension = get_file(file_name)
parent = None if parent==_('All Accounts') else parent
forest = build_forest(generate_data_from_csv(file_name))
if extension == 'csv':
data = generate_data_from_csv(file_doc)
else:
data = generate_data_from_excel(file_doc, extension)
forest = build_forest(data)
accounts = build_tree_from_json("", chart_data=forest) # returns alist of dict in a tree render-able form
# filter out to show data for the selected node only
@@ -91,12 +144,19 @@ def build_forest(data):
# returns the path of any node in list format
def return_parent(data, child):
from frappe import _
for row in data:
account_name, parent_account = row[0:2]
if parent_account == account_name == child:
return [parent_account]
elif account_name == child:
return [child] + return_parent(data, parent_account)
parent_account_list = return_parent(data, parent_account)
if not parent_account_list:
frappe.throw(_("The parent account {0} does not exists in the uploaded template").format(
frappe.bold(parent_account)))
return [child] + parent_account_list
charts_map, paths = {}, []
@@ -104,13 +164,13 @@ def build_forest(data):
error_messages = []
for i in data:
account_name, _, account_number, is_group, account_type, root_type = i
account_name, dummy, account_number, is_group, account_type, root_type = i
if not account_name:
error_messages.append("Row {0}: Please enter Account Name".format(line_no))
charts_map[account_name] = {}
if is_group == 1: charts_map[account_name]["is_group"] = is_group
if cint(is_group) == 1: charts_map[account_name]["is_group"] = is_group
if account_type: charts_map[account_name]["account_type"] = account_type
if root_type: charts_map[account_name]["root_type"] = root_type
if account_number: charts_map[account_name]["account_number"] = account_number
@@ -128,24 +188,94 @@ def build_forest(data):
return out
def build_response_as_excel(writer):
filename = frappe.generate_hash("", 10)
with open(filename, 'wb') as f:
f.write(cstr(writer.getvalue()).encode('utf-8'))
f = open(filename)
reader = csv.reader(f)
from frappe.utils.xlsxutils import make_xlsx
xlsx_file = make_xlsx(reader, "Chart Of Accounts Importer Template")
f.close()
os.remove(filename)
# write out response as a xlsx type
frappe.response['filename'] = 'coa_importer_template.xlsx'
frappe.response['filecontent'] = xlsx_file.getvalue()
frappe.response['type'] = 'binary'
@frappe.whitelist()
def download_template():
def download_template(file_type, template_type):
data = frappe._dict(frappe.local.form_dict)
writer = get_template(template_type)
if file_type == 'CSV':
# download csv file
frappe.response['result'] = cstr(writer.getvalue())
frappe.response['type'] = 'csv'
frappe.response['doctype'] = 'Chart of Accounts Importer'
else:
build_response_as_excel(writer)
def get_template(template_type):
fields = ["Account Name", "Parent Account", "Account Number", "Is Group", "Account Type", "Root Type"]
writer = UnicodeWriter()
writer.writerow(fields)
writer.writerow([_('Chart of Accounts Template')])
writer.writerow([_("Column Labels : ")] + fields)
writer.writerow([_("Start entering data from here : ")])
if template_type == 'Blank Template':
for root_type in get_root_types():
writer.writerow(['', '', '', 1, '', root_type])
for account in get_mandatory_group_accounts():
writer.writerow(['', '', '', 1, account, "Asset"])
for account_type in get_mandatory_account_types():
writer.writerow(['', '', '', 0, account_type.get('account_type'), account_type.get('root_type')])
else:
writer = get_sample_template(writer)
return writer
def get_sample_template(writer):
template = [
["Application Of Funds(Assets)", "", "", 1, "", "Asset"],
["Sources Of Funds(Liabilities)", "", "", 1, "", "Liability"],
["Equity", "", "", 1, "", "Equity"],
["Expenses", "", "", 1, "", "Expense"],
["Income", "", "", 1, "", "Income"],
["Bank Accounts", "Application Of Funds(Assets)", "", 1, "Bank", "Asset"],
["Cash In Hand", "Application Of Funds(Assets)", "", 1, "Cash", "Asset"],
["Stock Assets", "Application Of Funds(Assets)", "", 1, "Stock", "Asset"],
["Cost Of Goods Sold", "Expenses", "", 0, "Cost of Goods Sold", "Expense"],
["Asset Depreciation", "Expenses", "", 0, "Depreciation", "Expense"],
["Fixed Assets", "Application Of Funds(Assets)", "", 0, "Fixed Asset", "Asset"],
["Accounts Payable", "Sources Of Funds(Liabilities)", "", 0, "Payable", "Liability"],
["Accounts Receivable", "Application Of Funds(Assets)", "", 1, "Receivable", "Asset"],
["Stock Expenses", "Expenses", "", 0, "Stock Adjustment", "Expense"],
["Sample Bank", "Bank Accounts", "", 0, "Bank", "Asset"],
["Cash", "Cash In Hand", "", 0, "Cash", "Asset"],
["Stores", "Stock Assets", "", 0, "Stock", "Asset"],
]
for row in template:
writer.writerow(row)
return writer
# download csv file
frappe.response['result'] = cstr(writer.getvalue())
frappe.response['type'] = 'csv'
frappe.response['doctype'] = data.get('doctype')
@frappe.whitelist()
def validate_accounts(file_name):
accounts = generate_data_from_csv(file_name, as_dict=True)
file_doc, extension = get_file(file_name)
if extension == 'csv':
accounts = generate_data_from_csv(file_doc, as_dict=True)
else:
accounts = generate_data_from_excel(file_doc, extension, as_dict=True)
accounts_dict = {}
for account in accounts:
@@ -170,12 +300,38 @@ def validate_root(accounts):
for account in roots:
if not account.get("root_type") and account.get("account_name"):
error_messages.append("Please enter Root Type for account- {0}".format(account.get("account_name")))
elif account.get("root_type") not in ("Asset", "Liability", "Expense", "Income", "Equity") and account.get("account_name"):
elif account.get("root_type") not in get_root_types() and account.get("account_name"):
error_messages.append("Root Type for {0} must be one of the Asset, Liability, Income, Expense and Equity".format(account.get("account_name")))
if error_messages:
return "<br>".join(error_messages)
def get_root_types():
return ('Asset', 'Liability', 'Expense', 'Income', 'Equity')
def get_report_type(root_type):
if root_type in ('Asset', 'Liability', 'Equity'):
return 'Balance Sheet'
else:
return 'Profit and Loss'
def get_mandatory_group_accounts():
return ('Bank', 'Cash', 'Stock')
def get_mandatory_account_types():
return [
{'account_type': 'Cost of Goods Sold', 'root_type': 'Expense'},
{'account_type': 'Depreciation', 'root_type': 'Expense'},
{'account_type': 'Fixed Asset', 'root_type': 'Asset'},
{'account_type': 'Payable', 'root_type': 'Liability'},
{'account_type': 'Receivable', 'root_type': 'Asset'},
{'account_type': 'Stock Adjustment', 'root_type': 'Expense'},
{'account_type': 'Bank', 'root_type': 'Asset'},
{'account_type': 'Cash', 'root_type': 'Asset'},
{'account_type': 'Stock', 'root_type': 'Asset'}
]
def validate_account_types(accounts):
account_types_for_ledger = ["Cost of Goods Sold", "Depreciation", "Fixed Asset", "Payable", "Receivable", "Stock Adjustment"]
account_types = [accounts[d]["account_type"] for d in accounts if not accounts[d]['is_group'] == 1]

View File

@@ -18,7 +18,7 @@ frappe.ui.form.on('Cost Center', {
},
refresh: function(frm) {
if (!frm.is_new()) {
frm.add_custom_button(__('Update Cost Center Number'), function () {
frm.add_custom_button(__('Update Cost Center Name / Number'), function () {
frm.trigger("update_cost_center_number");
});
}
@@ -47,35 +47,51 @@ frappe.ui.form.on('Cost Center', {
},
update_cost_center_number: function(frm) {
var d = new frappe.ui.Dialog({
title: __('Update Cost Center Number'),
title: __('Update Cost Center Name / Number'),
fields: [
{
"label": 'Cost Center Number',
"label": "Cost Center Name",
"fieldname": "cost_center_name",
"fieldtype": "Data",
"reqd": 1,
"default": frm.doc.cost_center_name
},
{
"label": "Cost Center Number",
"fieldname": "cost_center_number",
"fieldtype": "Data",
"reqd": 1
"default": frm.doc.cost_center_number
},
{
"label": __("Merge with existing"),
"fieldname": "merge",
"fieldtype": "Check",
"default": 0
}
],
primary_action: function() {
var data = d.get_values();
if(data.cost_center_number === frm.doc.cost_center_number) {
if(data.cost_center_name === frm.doc.cost_center_name && data.cost_center_number === frm.doc.cost_center_number) {
d.hide();
return;
}
frappe.dom.freeze();
frappe.call({
method: "erpnext.accounts.utils.update_number_field",
method: "erpnext.accounts.utils.update_cost_center",
args: {
doctype_name: frm.doc.doctype,
name: frm.doc.name,
field_name: d.fields[0].fieldname,
number_value: data.cost_center_number,
company: frm.doc.company
docname: frm.doc.name,
cost_center_name: data.cost_center_name,
cost_center_number: cstr(data.cost_center_number),
company: frm.doc.company,
merge: data.merge
},
callback: function(r) {
frappe.dom.unfreeze();
if(!r.exc) {
if(r.message) {
frappe.set_route("Form", "Cost Center", r.message);
} else {
me.frm.set_value("cost_center_name", data.cost_center_name);
me.frm.set_value("cost_center_number", data.cost_center_number);
}
d.hide();

View File

@@ -1,7 +1,7 @@
{
"actions": [],
"allow_copy": 1,
"allow_import": 1,
"allow_rename": 1,
"creation": "2013-01-23 19:57:17",
"description": "Track separate Income and Expense for product verticals or divisions.",
"doctype": "DocType",
@@ -123,10 +123,13 @@
],
"icon": "fa fa-money",
"idx": 1,
"modified": "2019-09-16 14:44:17.103548",
"is_tree": 1,
"links": [],
"modified": "2020-06-12 16:09:30.025214",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Cost Center",
"nsm_parent_field": "parent_cost_center",
"owner": "Administrator",
"permissions": [
{
@@ -162,7 +165,6 @@
"role": "Purchase User"
}
],
"quick_entry": 1,
"search_fields": "parent_cost_center, is_group",
"show_name_in_global_search": 1,
"sort_field": "modified",

View File

@@ -1,5 +1,5 @@
frappe.treeview_settings["Cost Center"] = {
breadcrumbs: "Accounts",
breadcrumb: "Accounts",
get_tree_root: false,
filters: [{
fieldname: "company",

View File

@@ -18,7 +18,8 @@
"in_list_view": 1,
"label": "Invoice",
"options": "Sales Invoice",
"reqd": 1
"reqd": 1,
"search_index": 1
},
{
"fetch_from": "sales_invoice.customer",
@@ -60,7 +61,7 @@
}
],
"istable": 1,
"modified": "2019-09-26 11:05:36.016772",
"modified": "2020-02-20 16:16:20.724620",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Discounted Invoice",

View File

@@ -7,4 +7,4 @@ from __future__ import unicode_literals
from frappe.model.document import Document
class DiscountedInvoice(Document):
pass
pass

View File

@@ -81,10 +81,11 @@ class ExchangeRateRevaluation(Document):
sum(debit) - sum(credit) as balance
from `tabGL Entry`
where account in (%s)
group by account, party_type, party
and posting_date <= %s
group by account, NULLIF(party_type,''), NULLIF(party,'')
having sum(debit) != sum(credit)
order by account
""" % ', '.join(['%s']*len(accounts)), tuple(accounts), as_dict=1)
""" % (', '.join(['%s']*len(accounts)), '%s'), tuple(accounts + [self.posting_date]), as_dict=1)
return account_details
@@ -124,9 +125,9 @@ class ExchangeRateRevaluation(Document):
"party_type": d.get("party_type"),
"party": d.get("party"),
"account_currency": d.get("account_currency"),
"balance": d.get("balance_in_account_currency"),
dr_or_cr: abs(d.get("balance_in_account_currency")),
"exchange_rate":d.get("new_exchange_rate"),
"balance": flt(d.get("balance_in_account_currency"), d.precision("balance_in_account_currency")),
dr_or_cr: flt(abs(d.get("balance_in_account_currency")), d.precision("balance_in_account_currency")),
"exchange_rate": flt(d.get("new_exchange_rate"), d.precision("new_exchange_rate")),
"reference_type": "Exchange Rate Revaluation",
"reference_name": self.name,
})
@@ -135,9 +136,9 @@ class ExchangeRateRevaluation(Document):
"party_type": d.get("party_type"),
"party": d.get("party"),
"account_currency": d.get("account_currency"),
"balance": d.get("balance_in_account_currency"),
reverse_dr_or_cr: abs(d.get("balance_in_account_currency")),
"exchange_rate": d.get("current_exchange_rate"),
"balance": flt(d.get("balance_in_account_currency"), d.precision("balance_in_account_currency")),
reverse_dr_or_cr: flt(abs(d.get("balance_in_account_currency")), d.precision("balance_in_account_currency")),
"exchange_rate": flt(d.get("current_exchange_rate"), d.precision("current_exchange_rate")),
"reference_type": "Exchange Rate Revaluation",
"reference_name": self.name
})
@@ -166,9 +167,9 @@ def get_account_details(account, company, posting_date, party_type=None, party=N
account_details = {}
company_currency = erpnext.get_company_currency(company)
balance = get_balance_on(account, party_type=party_type, party=party, in_account_currency=False)
balance = get_balance_on(account, date=posting_date, party_type=party_type, party=party, in_account_currency=False)
if balance:
balance_in_account_currency = get_balance_on(account, party_type=party_type, party=party)
balance_in_account_currency = get_balance_on(account, date=posting_date, party_type=party_type, party=party)
current_exchange_rate = balance / balance_in_account_currency if balance_in_account_currency else 0
new_exchange_rate = get_exchange_rate(account_currency, company_currency, posting_date)
new_balance_in_base_currency = balance_in_account_currency * new_exchange_rate

View File

@@ -1,347 +1,122 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 1,
"allow_rename": 0,
"autoname": "field:year",
"beta": 0,
"creation": "2013-01-22 16:50:25",
"custom": 0,
"description": "**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.",
"docstatus": 0,
"doctype": "DocType",
"document_type": "Setup",
"editable_grid": 0,
"allow_import": 1,
"autoname": "field:year",
"creation": "2013-01-22 16:50:25",
"description": "**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.",
"doctype": "DocType",
"document_type": "Setup",
"engine": "InnoDB",
"field_order": [
"year",
"disabled",
"is_short_year",
"year_start_date",
"year_end_date",
"companies",
"auto_created"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"description": "For e.g. 2012, 2012-13",
"fieldname": "year",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Year Name",
"length": 0,
"no_copy": 0,
"oldfieldname": "year",
"oldfieldtype": "Data",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"description": "For e.g. 2012, 2012-13",
"fieldname": "year",
"fieldtype": "Data",
"in_list_view": 1,
"label": "Year Name",
"oldfieldname": "year",
"oldfieldtype": "Data",
"reqd": 1,
"unique": 1
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "disabled",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Disabled",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"default": "0",
"fieldname": "disabled",
"fieldtype": "Check",
"label": "Disabled"
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "year_start_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Year Start Date",
"length": 0,
"no_copy": 1,
"oldfieldname": "year_start_date",
"oldfieldtype": "Date",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "year_start_date",
"fieldtype": "Date",
"in_list_view": 1,
"label": "Year Start Date",
"no_copy": 1,
"oldfieldname": "year_start_date",
"oldfieldtype": "Date",
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "year_end_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Year End Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "year_end_date",
"fieldtype": "Date",
"in_list_view": 1,
"label": "Year End Date",
"no_copy": 1,
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "companies",
"fieldtype": "Table",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Companies",
"length": 0,
"no_copy": 0,
"options": "Fiscal Year Company",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "companies",
"fieldtype": "Table",
"label": "Companies",
"options": "Fiscal Year Company"
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "auto_created",
"fieldtype": "Check",
"hidden": 1,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Auto Created",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"default": "0",
"fieldname": "auto_created",
"fieldtype": "Check",
"hidden": 1,
"label": "Auto Created",
"no_copy": 1,
"print_hide": 1,
"read_only": 1
},
{
"default": "0",
"description": "Less than 12 months.",
"fieldname": "is_short_year",
"fieldtype": "Check",
"label": "Is Short Year",
"set_only_once": 1
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"icon": "fa fa-calendar",
"idx": 1,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-04-25 14:21:41.273354",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Fiscal Year",
"owner": "Administrator",
],
"icon": "fa fa-calendar",
"idx": 1,
"modified": "2020-10-03 18:22:04.161315",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Fiscal Year",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"create": 1,
"delete": 1,
"email": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"share": 1,
"write": 1
},
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 0,
"read": 1,
"report": 0,
"role": "Sales User",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
},
"read": 1,
"role": "Sales User"
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 0,
"read": 1,
"report": 0,
"role": "Purchase User",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
},
"read": 1,
"role": "Purchase User"
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 0,
"read": 1,
"report": 0,
"role": "Accounts User",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
},
"read": 1,
"role": "Accounts User"
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 0,
"read": 1,
"report": 0,
"role": "Stock User",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
},
"read": 1,
"role": "Stock User"
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 0,
"read": 1,
"report": 0,
"role": "Employee",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
"read": 1,
"role": "Employee"
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 1,
"sort_field": "name",
"sort_order": "DESC",
"track_changes": 0,
"track_seen": 0
],
"show_name_in_global_search": 1,
"sort_field": "name",
"sort_order": "DESC"
}

View File

@@ -36,6 +36,11 @@ class FiscalYear(Document):
frappe.throw(_("Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved."))
def validate_dates(self):
if self.is_short_year:
# Fiscal Year can be shorter than one year, in some jurisdictions
# under certain circumstances. For example, in the USA and Germany.
return
if getdate(self.year_start_date) > getdate(self.year_end_date):
frappe.throw(_("Fiscal Year Start Date should be one year earlier than Fiscal Year End Date"),
FiscalYearIncorrectDate)

View File

@@ -58,5 +58,12 @@
"year": "_Test Fiscal Year 2021",
"year_end_date": "2021-12-31",
"year_start_date": "2021-01-01"
},
{
"doctype": "Fiscal Year",
"year": "_Test Short Fiscal Year 2021",
"is_short_year": 1,
"year_end_date": "2021-12-31",
"year_start_date": "2021-04-01"
}
]

File diff suppressed because it is too large Load Diff

View File

@@ -4,7 +4,7 @@
from __future__ import unicode_literals
import frappe, erpnext
from frappe import _
from frappe.utils import flt, fmt_money, getdate, formatdate
from frappe.utils import flt, fmt_money, getdate, formatdate, cint
from frappe.model.document import Document
from frappe.model.naming import set_name_from_naming_options
from frappe.model.meta import get_field_precision
@@ -29,7 +29,6 @@ class GLEntry(Document):
self.validate_and_set_fiscal_year()
self.pl_must_have_cost_center()
self.validate_cost_center()
self.validate_dimensions_for_pl_and_bs()
if not self.flags.from_repost:
self.check_pl_account()
@@ -39,6 +38,7 @@ class GLEntry(Document):
def on_update_with_args(self, adv_adj, update_outstanding = 'Yes', from_repost=False):
if not from_repost:
self.validate_account_details(adv_adj)
self.validate_dimensions_for_pl_and_bs()
check_freezing_date(self.posting_date, adv_adj)
validate_frozen_account(self.account, adv_adj)
@@ -75,12 +75,6 @@ class GLEntry(Document):
if not self.cost_center and self.voucher_type != 'Period Closing Voucher':
frappe.throw(_("{0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.")
.format(self.voucher_type, self.voucher_no, self.account))
else:
from erpnext.accounts.utils import get_allow_cost_center_in_entry_of_bs_account
if not get_allow_cost_center_in_entry_of_bs_account() and self.cost_center:
self.cost_center = None
if self.project:
self.project = None
def validate_dimensions_for_pl_and_bs(self):
@@ -103,8 +97,7 @@ class GLEntry(Document):
def check_pl_account(self):
if self.is_opening=='Yes' and \
frappe.db.get_value("Account", self.account, "report_type")=="Profit and Loss" and \
self.voucher_type not in ['Purchase Invoice', 'Sales Invoice']:
frappe.db.get_value("Account", self.account, "report_type")=="Profit and Loss":
frappe.throw(_("{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry")
.format(self.voucher_type, self.voucher_no, self.account))
@@ -115,8 +108,8 @@ class GLEntry(Document):
from tabAccount where name=%s""", self.account, as_dict=1)[0]
if ret.is_group==1:
frappe.throw(_("{0} {1}: Account {2} cannot be a Group")
.format(self.voucher_type, self.voucher_no, self.account))
frappe.throw(_('''{0} {1}: Account {2} is a Group Account and group accounts cannot be used in
transactions''').format(self.voucher_type, self.voucher_no, self.account))
if ret.docstatus==2:
frappe.throw(_("{0} {1}: Account {2} is inactive")
@@ -137,10 +130,18 @@ class GLEntry(Document):
return self.cost_center_company[self.cost_center]
def _check_is_group():
return cint(frappe.get_cached_value('Cost Center', self.cost_center, 'is_group'))
if self.cost_center and _get_cost_center_company() != self.company:
frappe.throw(_("{0} {1}: Cost Center {2} does not belong to Company {3}")
.format(self.voucher_type, self.voucher_no, self.cost_center, self.company))
if not self.flags.from_repost and not self.voucher_type == 'Period Closing Voucher' \
and self.cost_center and _check_is_group():
frappe.throw(_("""{0} {1}: Cost Center {2} is a group cost center and group cost centers cannot
be used in transactions""").format(self.voucher_type, self.voucher_no, frappe.bold(self.cost_center)))
def validate_party(self):
validate_party_frozen_disabled(self.party_type, self.party)
@@ -232,10 +233,13 @@ def update_outstanding_amt(account, party_type, party, against_voucher_type, aga
if bal < 0 and not on_cancel:
frappe.throw(_("Outstanding for {0} cannot be less than zero ({1})").format(against_voucher, fmt_money(bal)))
# Update outstanding amt on against voucher
if against_voucher_type in ["Sales Invoice", "Purchase Invoice", "Fees"]:
ref_doc = frappe.get_doc(against_voucher_type, against_voucher)
ref_doc.db_set('outstanding_amount', bal)
# Didn't use db_set for optimisation purpose
ref_doc.outstanding_amount = bal
frappe.db.set_value(against_voucher_type, against_voucher, 'outstanding_amount', bal)
ref_doc.set_status(update=True)
def validate_frozen_account(account, adv_adj=None):
@@ -274,6 +278,9 @@ def update_against_account(voucher_type, voucher_no):
if d.against != new_against:
frappe.db.set_value("GL Entry", d.name, "against", new_against)
def on_doctype_update():
frappe.db.add_index("GL Entry", ["against_voucher_type", "against_voucher"])
frappe.db.add_index("GL Entry", ["voucher_type", "voucher_no"])
def rename_gle_sle_docs():
for doctype in ["GL Entry", "Stock Ledger Entry"]:
@@ -286,4 +293,8 @@ def rename_temporarily_named_docs(doctype):
oldname = doc.name
set_name_from_naming_options(frappe.get_meta(doctype).autoname, doc)
newname = doc.name
frappe.db.sql("""UPDATE `tab{}` SET name = %s, to_rename = 0 where name = %s""".format(doctype), (newname, oldname))
frappe.db.sql(
"UPDATE `tab{}` SET name = %s, to_rename = 0 where name = %s".format(doctype),
(newname, oldname),
auto_commit=True
)

View File

@@ -3,11 +3,12 @@
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe, json
import frappe, json, erpnext
from frappe import _
from frappe.utils import flt, getdate, nowdate, add_days
from erpnext.controllers.accounts_controller import AccountsController
from erpnext.accounts.general_ledger import make_gl_entries
from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import get_accounting_dimensions
class InvoiceDiscounting(AccountsController):
def validate(self):
@@ -81,10 +82,15 @@ class InvoiceDiscounting(AccountsController):
def make_gl_entries(self):
company_currency = frappe.get_cached_value('Company', self.company, "default_currency")
gl_entries = []
invoice_fields = ["debit_to", "party_account_currency", "conversion_rate", "cost_center"]
accounting_dimensions = get_accounting_dimensions()
invoice_fields.extend(accounting_dimensions)
for d in self.invoices:
inv = frappe.db.get_value("Sales Invoice", d.sales_invoice,
["debit_to", "party_account_currency", "conversion_rate", "cost_center"], as_dict=1)
inv = frappe.db.get_value("Sales Invoice", d.sales_invoice, invoice_fields, as_dict=1)
if d.outstanding_amount:
outstanding_in_company_currency = flt(d.outstanding_amount * inv.conversion_rate,
@@ -102,7 +108,7 @@ class InvoiceDiscounting(AccountsController):
"cost_center": inv.cost_center,
"against_voucher": d.sales_invoice,
"against_voucher_type": "Sales Invoice"
}, inv.party_account_currency))
}, inv.party_account_currency, item=inv))
gl_entries.append(self.get_gl_dict({
"account": self.accounts_receivable_credit,
@@ -115,7 +121,7 @@ class InvoiceDiscounting(AccountsController):
"cost_center": inv.cost_center,
"against_voucher": d.sales_invoice,
"against_voucher_type": "Sales Invoice"
}, ar_credit_account_currency))
}, ar_credit_account_currency, item=inv))
make_gl_entries(gl_entries, cancel=(self.docstatus == 2), update_outstanding='No')
@@ -128,16 +134,19 @@ class InvoiceDiscounting(AccountsController):
je.append("accounts", {
"account": self.bank_account,
"debit_in_account_currency": flt(self.total_amount) - flt(self.bank_charges),
"cost_center": erpnext.get_default_cost_center(self.company)
})
je.append("accounts", {
"account": self.bank_charges_account,
"debit_in_account_currency": flt(self.bank_charges)
"debit_in_account_currency": flt(self.bank_charges),
"cost_center": erpnext.get_default_cost_center(self.company)
})
je.append("accounts", {
"account": self.short_term_loan,
"credit_in_account_currency": flt(self.total_amount),
"cost_center": erpnext.get_default_cost_center(self.company),
"reference_type": "Invoice Discounting",
"reference_name": self.name
})
@@ -145,6 +154,7 @@ class InvoiceDiscounting(AccountsController):
je.append("accounts", {
"account": self.accounts_receivable_discounted,
"debit_in_account_currency": flt(d.outstanding_amount),
"cost_center": erpnext.get_default_cost_center(self.company),
"reference_type": "Invoice Discounting",
"reference_name": self.name,
"party_type": "Customer",
@@ -154,6 +164,7 @@ class InvoiceDiscounting(AccountsController):
je.append("accounts", {
"account": self.accounts_receivable_credit,
"credit_in_account_currency": flt(d.outstanding_amount),
"cost_center": erpnext.get_default_cost_center(self.company),
"reference_type": "Invoice Discounting",
"reference_name": self.name,
"party_type": "Customer",
@@ -171,13 +182,15 @@ class InvoiceDiscounting(AccountsController):
je.append("accounts", {
"account": self.short_term_loan,
"debit_in_account_currency": flt(self.total_amount),
"cost_center": erpnext.get_default_cost_center(self.company),
"reference_type": "Invoice Discounting",
"reference_name": self.name,
})
je.append("accounts", {
"account": self.bank_account,
"credit_in_account_currency": flt(self.total_amount)
"credit_in_account_currency": flt(self.total_amount),
"cost_center": erpnext.get_default_cost_center(self.company)
})
if getdate(self.loan_end_date) > getdate(nowdate()):
@@ -187,6 +200,7 @@ class InvoiceDiscounting(AccountsController):
je.append("accounts", {
"account": self.accounts_receivable_discounted,
"credit_in_account_currency": flt(outstanding_amount),
"cost_center": erpnext.get_default_cost_center(self.company),
"reference_type": "Invoice Discounting",
"reference_name": self.name,
"party_type": "Customer",
@@ -196,6 +210,7 @@ class InvoiceDiscounting(AccountsController):
je.append("accounts", {
"account": self.accounts_receivable_unpaid,
"debit_in_account_currency": flt(outstanding_amount),
"cost_center": erpnext.get_default_cost_center(self.company),
"reference_type": "Invoice Discounting",
"reference_name": self.name,
"party_type": "Customer",

View File

@@ -2,6 +2,7 @@
{
"doctype": "Item Tax Template",
"title": "_Test Account Excise Duty @ 10",
"company": "_Test Company",
"taxes": [
{
"doctype": "Item Tax Template Detail",
@@ -14,6 +15,7 @@
{
"doctype": "Item Tax Template",
"title": "_Test Account Excise Duty @ 12",
"company": "_Test Company",
"taxes": [
{
"doctype": "Item Tax Template Detail",
@@ -26,6 +28,7 @@
{
"doctype": "Item Tax Template",
"title": "_Test Account Excise Duty @ 15",
"company": "_Test Company",
"taxes": [
{
"doctype": "Item Tax Template Detail",
@@ -38,6 +41,7 @@
{
"doctype": "Item Tax Template",
"title": "_Test Account Excise Duty @ 20",
"company": "_Test Company",
"taxes": [
{
"doctype": "Item Tax Template Detail",
@@ -50,6 +54,7 @@
{
"doctype": "Item Tax Template",
"title": "_Test Item Tax Template 1",
"company": "_Test Company",
"taxes": [
{
"doctype": "Item Tax Template Detail",

View File

@@ -190,7 +190,6 @@ erpnext.accounts.JournalEntry = frappe.ui.form.Controller.extend({
if(jvd.reference_type==="Employee Advance") {
return {
filters: {
'status': ['=', 'Unpaid'],
'docstatus': 1
}
};
@@ -620,20 +619,12 @@ $.extend(erpnext.journal_entry, {
return { filters: filters };
},
reverse_journal_entry: function(frm) {
var me = frm.doc;
for(var i=0; i<me.accounts.length; i++) {
me.accounts[i].credit += me.accounts[i].debit;
me.accounts[i].debit = me.accounts[i].credit - me.accounts[i].debit;
me.accounts[i].credit -= me.accounts[i].debit;
me.accounts[i].credit_in_account_currency = me.accounts[i].credit;
me.accounts[i].debit_in_account_currency = me.accounts[i].debit;
me.accounts[i].reference_type = "Journal Entry";
me.accounts[i].reference_name = me.name
}
frm.copy_doc();
cur_frm.reload_doc();
}
reverse_journal_entry: function() {
frappe.model.open_mapped_doc({
method: "erpnext.accounts.doctype.journal_entry.journal_entry.make_reverse_journal_entry",
frm: cur_frm
})
},
});
$.extend(erpnext.journal_entry, {

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,6 @@ from erpnext.controllers.accounts_controller import AccountsController
from erpnext.accounts.utils import get_balance_on, get_account_currency
from erpnext.accounts.party import get_party_account
from erpnext.hr.doctype.expense_claim.expense_claim import update_reimbursed_amount
from erpnext.hr.doctype.loan.loan import update_disbursement_status, update_total_amount_paid
from erpnext.accounts.doctype.invoice_discounting.invoice_discounting import get_party_account_based_on_invoice_discounting
from six import string_types, iteritems
@@ -30,7 +29,11 @@ class JournalEntry(AccountsController):
self.validate_entries_for_advance()
self.validate_multi_currency()
self.set_amounts_in_company_currency()
self.validate_total_debit_and_credit()
# Do not validate while importing via data import
if not frappe.flags.in_import:
self.validate_total_debit_and_credit()
self.validate_against_jv()
self.validate_reference_doc()
self.set_against_account()
@@ -208,11 +211,11 @@ class JournalEntry(AccountsController):
if d.reference_type=="Journal Entry":
account_root_type = frappe.db.get_value("Account", d.account, "root_type")
if account_root_type == "Asset" and flt(d.debit) > 0:
frappe.throw(_("For {0}, only credit accounts can be linked against another debit entry")
.format(d.account))
frappe.throw(_("Row #{0}: For {1}, you can select reference document only if account gets credited")
.format(d.idx, d.account))
elif account_root_type == "Liability" and flt(d.credit) > 0:
frappe.throw(_("For {0}, only debit accounts can be linked against another credit entry")
.format(d.account))
frappe.throw(_("Row #{0}: For {1}, you can select reference document only if account gets debited")
.format(d.idx, d.account))
if d.reference_name == self.name:
frappe.throw(_("You can not enter current voucher in 'Against Journal Entry' column"))
@@ -457,11 +460,12 @@ class JournalEntry(AccountsController):
def set_print_format_fields(self):
bank_amount = party_amount = total_amount = 0.0
currency = bank_account_currency = party_account_currency = pay_to_recd_from= None
party_type = None
for d in self.get('accounts'):
if d.party_type in ['Customer', 'Supplier'] and d.party:
party_type = d.party_type
if not pay_to_recd_from:
pay_to_recd_from = frappe.db.get_value(d.party_type, d.party,
"customer_name" if d.party_type=="Customer" else "supplier_name")
pay_to_recd_from = d.party
if pay_to_recd_from and pay_to_recd_from == d.party:
party_amount += (d.debit_in_account_currency or d.credit_in_account_currency)
@@ -471,8 +475,9 @@ class JournalEntry(AccountsController):
bank_amount += (d.debit_in_account_currency or d.credit_in_account_currency)
bank_account_currency = d.account_currency
if pay_to_recd_from:
self.pay_to_recd_from = pay_to_recd_from
if party_type and pay_to_recd_from:
self.pay_to_recd_from = frappe.db.get_value(party_type, pay_to_recd_from,
"customer_name" if party_type=="Customer" else "supplier_name")
if bank_amount:
total_amount = bank_amount
currency = bank_account_currency
@@ -560,20 +565,20 @@ class JournalEntry(AccountsController):
if self.write_off_based_on == 'Accounts Receivable':
jd1.party_type = "Customer"
jd1.credit = flt(d.outstanding_amount, self.precision("credit", "accounts"))
jd1.credit_in_account_currency = flt(d.outstanding_amount, self.precision("credit", "accounts"))
jd1.reference_type = "Sales Invoice"
jd1.reference_name = cstr(d.name)
elif self.write_off_based_on == 'Accounts Payable':
jd1.party_type = "Supplier"
jd1.debit = flt(d.outstanding_amount, self.precision("debit", "accounts"))
jd1.debit_in_account_currency = flt(d.outstanding_amount, self.precision("debit", "accounts"))
jd1.reference_type = "Purchase Invoice"
jd1.reference_name = cstr(d.name)
jd2 = self.append('accounts', {})
if self.write_off_based_on == 'Accounts Receivable':
jd2.debit = total
jd2.debit_in_account_currency = total
elif self.write_off_based_on == 'Accounts Payable':
jd2.credit = total
jd2.credit_in_account_currency = total
self.validate_total_debit_and_credit()
@@ -606,8 +611,8 @@ class JournalEntry(AccountsController):
for d in self.accounts:
if d.reference_type=="Loan" and flt(d.debit) > 0:
doc = frappe.get_doc("Loan", d.reference_name)
update_disbursement_status(doc)
update_total_amount_paid(doc)
doc.update_total_amount_paid()
doc.set_status()
def validate_expense_claim(self):
for d in self.accounts:
@@ -835,13 +840,34 @@ def get_opening_accounts(company):
return [{"account": a, "balance": get_balance_on(a)} for a in accounts]
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs
def get_against_jv(doctype, txt, searchfield, start, page_len, filters):
return frappe.db.sql("""select jv.name, jv.posting_date, jv.user_remark
from `tabJournal Entry` jv, `tabJournal Entry Account` jv_detail
where jv_detail.parent = jv.name and jv_detail.account = %s and ifnull(jv_detail.party, '') = %s
and (jv_detail.reference_type is null or jv_detail.reference_type = '')
and jv.docstatus = 1 and jv.`{0}` like %s order by jv.name desc limit %s, %s""".format(searchfield),
(filters.get("account"), cstr(filters.get("party")), "%{0}%".format(txt), start, page_len))
if not frappe.db.has_column('Journal Entry', searchfield):
return []
return frappe.db.sql("""
SELECT jv.name, jv.posting_date, jv.user_remark
FROM `tabJournal Entry` jv, `tabJournal Entry Account` jv_detail
WHERE jv_detail.parent = jv.name
AND jv_detail.account = %(account)s
AND IFNULL(jv_detail.party, '') = %(party)s
AND (
jv_detail.reference_type IS NULL
OR jv_detail.reference_type = ''
)
AND jv.docstatus = 1
AND jv.`{0}` LIKE %(txt)s
ORDER BY jv.name DESC
LIMIT %(offset)s, %(limit)s
""".format(searchfield), dict(
account=filters.get("account"),
party=cstr(filters.get("party")),
txt="%{0}%".format(txt),
offset=start,
limit=page_len
)
)
@frappe.whitelist()
@@ -968,7 +994,7 @@ def get_exchange_rate(posting_date, account=None, account_currency=None, company
# The date used to retreive the exchange rate here is the date passed
# in as an argument to this function.
elif (not exchange_rate or exchange_rate==1) and account_currency and posting_date:
elif (not exchange_rate or flt(exchange_rate)==1) and account_currency and posting_date:
exchange_rate = get_exchange_rate(account_currency, company_currency, posting_date)
else:
exchange_rate = 1
@@ -995,3 +1021,34 @@ def make_inter_company_journal_entry(name, voucher_type, company):
journal_entry.posting_date = nowdate()
journal_entry.inter_company_journal_entry_reference = name
return journal_entry.as_dict()
@frappe.whitelist()
def make_reverse_journal_entry(source_name, target_doc=None):
from frappe.model.mapper import get_mapped_doc
def update_accounts(source, target, source_parent):
target.reference_type = "Journal Entry"
target.reference_name = source_parent.name
doclist = get_mapped_doc("Journal Entry", source_name, {
"Journal Entry": {
"doctype": "Journal Entry",
"validation": {
"docstatus": ["=", 1]
}
},
"Journal Entry Account": {
"doctype": "Journal Entry Account",
"field_map": {
"account_currency": "account_currency",
"exchange_rate": "exchange_rate",
"debit_in_account_currency": "credit_in_account_currency",
"debit": "credit",
"credit_in_account_currency": "debit_in_account_currency",
"credit": "debit",
},
"postprocess": update_accounts,
},
}, target_doc)
return doclist

View File

@@ -139,6 +139,49 @@ class TestJournalEntry(unittest.TestCase):
self.assertFalse(gle)
def test_reverse_journal_entry(self):
from erpnext.accounts.doctype.journal_entry.journal_entry import make_reverse_journal_entry
jv = make_journal_entry("_Test Bank USD - _TC",
"Sales - _TC", 100, exchange_rate=50, save=False)
jv.get("accounts")[1].credit_in_account_currency = 5000
jv.get("accounts")[1].exchange_rate = 1
jv.submit()
rjv = make_reverse_journal_entry(jv.name)
rjv.posting_date = nowdate()
rjv.submit()
gl_entries = frappe.db.sql("""select account, account_currency, debit, credit,
debit_in_account_currency, credit_in_account_currency
from `tabGL Entry` where voucher_type='Journal Entry' and voucher_no=%s
order by account asc""", rjv.name, as_dict=1)
self.assertTrue(gl_entries)
expected_values = {
"_Test Bank USD - _TC": {
"account_currency": "USD",
"debit": 0,
"debit_in_account_currency": 0,
"credit": 5000,
"credit_in_account_currency": 100,
},
"Sales - _TC": {
"account_currency": "INR",
"debit": 5000,
"debit_in_account_currency": 5000,
"credit": 0,
"credit_in_account_currency": 0,
}
}
for field in ("account_currency", "debit", "debit_in_account_currency", "credit", "credit_in_account_currency"):
for i, gle in enumerate(gl_entries):
self.assertEqual(expected_values[gle.account][field], gle[field])
def test_disallow_change_in_account_currency_for_a_party(self):
# create jv in USD
jv = make_journal_entry("_Test Bank USD - _TC",
@@ -204,11 +247,8 @@ class TestJournalEntry(unittest.TestCase):
self.assertEqual(jv.inter_company_journal_entry_reference, "")
self.assertEqual(jv1.inter_company_journal_entry_reference, "")
def test_jv_for_enable_allow_cost_center_in_entry_of_bs_account(self):
def test_jv_with_cost_centre(self):
from erpnext.accounts.doctype.cost_center.test_cost_center import create_cost_center
accounts_settings = frappe.get_doc('Accounts Settings', 'Accounts Settings')
accounts_settings.allow_cost_center_in_entry_of_bs_account = 1
accounts_settings.save()
cost_center = "_Test Cost Center for BS Account - _TC"
create_cost_center(cost_center_name="_Test Cost Center for BS Account", company="_Test Company")
jv = make_journal_entry("_Test Cash - _TC", "_Test Bank - _TC", 100, cost_center = cost_center, save=False)
@@ -237,15 +277,45 @@ class TestJournalEntry(unittest.TestCase):
for gle in gl_entries:
self.assertEqual(expected_values[gle.account]["cost_center"], gle.cost_center)
accounts_settings.allow_cost_center_in_entry_of_bs_account = 0
accounts_settings.save()
def test_jv_with_project(self):
from erpnext.projects.doctype.project.test_project import make_project
project = make_project({
'project_name': 'Journal Entry Project',
'project_template_name': 'Test Project Template',
'start_date': '2020-01-01'
})
def test_jv_account_and_party_balance_for_enable_allow_cost_center_in_entry_of_bs_account(self):
jv = make_journal_entry("_Test Cash - _TC", "_Test Bank - _TC", 100, save=False)
for d in jv.accounts:
d.project = project.project_name
jv.voucher_type = "Bank Entry"
jv.multi_currency = 0
jv.cheque_no = "112233"
jv.cheque_date = nowdate()
jv.insert()
jv.submit()
expected_values = {
"_Test Cash - _TC": {
"project": project.project_name
},
"_Test Bank - _TC": {
"project": project.project_name
}
}
gl_entries = frappe.db.sql("""select account, project, debit, credit
from `tabGL Entry` where voucher_type='Journal Entry' and voucher_no=%s
order by account asc""", jv.name, as_dict=1)
self.assertTrue(gl_entries)
for gle in gl_entries:
self.assertEqual(expected_values[gle.account]["project"], gle.project)
def test_jv_account_and_party_balance_with_cost_centre(self):
from erpnext.accounts.doctype.cost_center.test_cost_center import create_cost_center
from erpnext.accounts.utils import get_balance_on
accounts_settings = frappe.get_doc('Accounts Settings', 'Accounts Settings')
accounts_settings.allow_cost_center_in_entry_of_bs_account = 1
accounts_settings.save()
cost_center = "_Test Cost Center for BS Account - _TC"
create_cost_center(cost_center_name="_Test Cost Center for BS Account", company="_Test Company")
jv = make_journal_entry("_Test Cash - _TC", "_Test Bank - _TC", 100, cost_center = cost_center, save=False)
@@ -261,9 +331,6 @@ class TestJournalEntry(unittest.TestCase):
account_balance = get_balance_on(account="_Test Bank - _TC", cost_center=cost_center)
self.assertEqual(expected_account_balance, account_balance)
accounts_settings.allow_cost_center_in_entry_of_bs_account = 0
accounts_settings.save()
def make_journal_entry(account1, account2, amount, cost_center=None, posting_date=None, exchange_rate=1, save=True, submit=False, project=None):
if not cost_center:
cost_center = "_Test Cost Center - _TC"

View File

@@ -90,7 +90,6 @@
"fieldtype": "Column Break"
},
{
"default": "Customer",
"fieldname": "party_type",
"fieldtype": "Link",
"in_list_view": 1,
@@ -272,7 +271,7 @@
],
"idx": 1,
"istable": 1,
"modified": "2019-10-02 12:23:21.693443",
"modified": "2020-01-13 12:41:33.968025",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Journal Entry Account",

View File

@@ -38,13 +38,22 @@ def get_loyalty_details(customer, loyalty_program, expiry_date=None, company=Non
@frappe.whitelist()
def get_loyalty_program_details_with_points(customer, loyalty_program=None, expiry_date=None, company=None, silent=False, include_expired_entry=False, current_transaction_amount=0):
lp_details = get_loyalty_program_details(customer, loyalty_program, company=company, silent=silent)
loyalty_program = frappe.get_doc("Loyalty Program", loyalty_program)
loyalty_program_name = loyalty_program or lp_details.loyalty_program
if not loyalty_program_name: return
loyalty_program = frappe.get_doc("Loyalty Program", loyalty_program_name)
lp_details.update(get_loyalty_details(customer, loyalty_program.name, expiry_date, company, include_expired_entry))
tier_spent_level = sorted([d.as_dict() for d in loyalty_program.collection_rules],
key=lambda rule:rule.min_spent, reverse=True)
# sort collection rule, first item on list will be lowest min_spent
tier_spent_level = sorted(
[d.as_dict() for d in loyalty_program.collection_rules],
key=lambda rule: rule.min_spent, reverse=False,
)
# looping and apply tier from lowest min_spent
for i, d in enumerate(tier_spent_level):
if i==0 or (lp_details.total_spent+current_transaction_amount) <= d.min_spent:
# if cumulative spend more than min_spent then continue to next tier
if (lp_details.total_spent + current_transaction_amount) >= d.min_spent:
lp_details.tier_name = d.tier_name
lp_details.collection_factor = d.collection_factor
else:

View File

@@ -68,6 +68,7 @@ class TestLoyaltyProgram(unittest.TestCase):
lpe = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_original.name, 'customer': si_original.customer})
customer.load_from_db()
self.assertEqual(si_original.get('loyalty_program'), customer.loyalty_program)
self.assertEqual(lpe.get('loyalty_program_tier'), customer.loyalty_program_tier)
self.assertEqual(lpe.loyalty_points, earned_points)

View File

@@ -11,6 +11,7 @@ class ModeofPayment(Document):
def validate(self):
self.validate_accounts()
self.validate_repeating_companies()
self.validate_pos_mode_of_payment()
def validate_repeating_companies(self):
"""Error when Same Company is entered multiple times in accounts"""
@@ -27,3 +28,15 @@ class ModeofPayment(Document):
if frappe.db.get_value("Account", entry.default_account, "company") != entry.company:
frappe.throw(_("Account {0} does not match with Company {1} in Mode of Account: {2}")
.format(entry.default_account, entry.company, self.name))
def validate_pos_mode_of_payment(self):
if not self.enabled:
pos_profiles = frappe.db.sql("""SELECT sip.parent FROM `tabSales Invoice Payment` sip
WHERE sip.parenttype = 'POS Profile' and sip.mode_of_payment = %s""", (self.name))
pos_profiles = list(map(lambda x: x[0], pos_profiles))
if pos_profiles:
message = "POS Profile " + frappe.bold(", ".join(pos_profiles)) + " contains \
Mode of Payment " + frappe.bold(str(self.name)) + ". Please remove them to disable this mode."
frappe.throw(_(message), title="Not Allowed")

View File

@@ -68,6 +68,9 @@ class OpeningInvoiceCreationTool(Document):
if not self.company:
frappe.throw(_("Please select the Company"))
company_details = frappe.get_cached_value('Company', self.company,
["default_currency", "default_letter_head"], as_dict=1) or {}
for row in self.invoices:
if not row.qty:
row.qty = 1.0
@@ -99,6 +102,12 @@ class OpeningInvoiceCreationTool(Document):
if not args:
continue
if company_details:
args.update({
"currency": company_details.get("default_currency"),
"letter_head": company_details.get("default_letter_head")
})
doc = frappe.get_doc(args).insert()
doc.submit()
names.append(doc.name)
@@ -173,7 +182,7 @@ class OpeningInvoiceCreationTool(Document):
"posting_date": row.posting_date,
frappe.scrub(party_type): row.party,
"doctype": "Sales Invoice" if self.invoice_type == "Sales" else "Purchase Invoice",
"currency": frappe.get_cached_value('Company', self.company, "default_currency")
"update_stock": 0
})
accounting_dimension = get_accounting_dimensions()

View File

@@ -7,17 +7,25 @@ import frappe
import unittest
test_dependencies = ["Customer", "Supplier"]
from frappe.custom.doctype.property_setter.property_setter import make_property_setter
from erpnext.accounts.doctype.opening_invoice_creation_tool.opening_invoice_creation_tool import get_temporary_opening_account
from erpnext.controllers.accounts_controller import AccountMissingError
class TestOpeningInvoiceCreationTool(unittest.TestCase):
def make_invoices(self, invoice_type="Sales"):
def setUp(self):
if not frappe.db.exists("Company", "_Test Opening Invoice Company"):
make_company()
def make_invoices(self, invoice_type="Sales", company=None, party_1=None, party_2=None):
doc = frappe.get_single("Opening Invoice Creation Tool")
args = get_opening_invoice_creation_dict(invoice_type=invoice_type)
args = get_opening_invoice_creation_dict(invoice_type=invoice_type, company=company,
party_1=party_1, party_2=party_2)
doc.update(args)
return doc.make_invoices()
def test_opening_sales_invoice_creation(self):
invoices = self.make_invoices()
property_setter = make_property_setter("Sales Invoice", "update_stock", "default", 1, "Check")
invoices = self.make_invoices(company="_Test Opening Invoice Company")
self.assertEqual(len(invoices), 2)
expected_value = {
@@ -27,6 +35,13 @@ class TestOpeningInvoiceCreationTool(unittest.TestCase):
}
self.check_expected_values(invoices, expected_value)
si = frappe.get_doc("Sales Invoice", invoices[0])
# Check if update stock is not enabled
self.assertEqual(si.update_stock, 0)
property_setter.delete()
def check_expected_values(self, invoices, expected_value, invoice_type="Sales"):
doctype = "Sales Invoice" if invoice_type == "Sales" else "Purchase Invoice"
@@ -36,7 +51,7 @@ class TestOpeningInvoiceCreationTool(unittest.TestCase):
self.assertEqual(si.get(field, ""), expected_value[invoice_idx][field_idx])
def test_opening_purchase_invoice_creation(self):
invoices = self.make_invoices(invoice_type="Purchase")
invoices = self.make_invoices(invoice_type="Purchase", company="_Test Opening Invoice Company")
self.assertEqual(len(invoices), 2)
expected_value = {
@@ -46,6 +61,28 @@ class TestOpeningInvoiceCreationTool(unittest.TestCase):
}
self.check_expected_values(invoices, expected_value, invoice_type="Purchase", )
def test_opening_sales_invoice_creation_with_missing_debit_account(self):
company = "_Test Opening Invoice Company"
party_1, party_2 = make_customer("Customer A"), make_customer("Customer B")
old_default_receivable_account = frappe.db.get_value("Company", company, "default_receivable_account")
frappe.db.set_value("Company", company, "default_receivable_account", "")
if not frappe.db.exists("Cost Center", "_Test Opening Invoice Company - _TOIC"):
cc = frappe.get_doc({"doctype": "Cost Center", "cost_center_name": "_Test Opening Invoice Company",
"is_group": 1, "company": "_Test Opening Invoice Company"})
cc.insert(ignore_mandatory=True)
cc2 = frappe.get_doc({"doctype": "Cost Center", "cost_center_name": "Main", "is_group": 0,
"company": "_Test Opening Invoice Company", "parent_cost_center": cc.name})
cc2.insert()
frappe.db.set_value("Company", company, "cost_center", "Main - _TOIC")
self.assertRaises(AccountMissingError, self.make_invoices, company="_Test Opening Invoice Company", party_1=party_1, party_2=party_2)
# teardown
frappe.db.set_value("Company", company, "default_receivable_account", old_default_receivable_account)
def get_opening_invoice_creation_dict(**args):
party = "Customer" if args.get("invoice_type", "Sales") == "Sales" else "Supplier"
company = args.get("company", "_Test Company")
@@ -57,7 +94,7 @@ def get_opening_invoice_creation_dict(**args):
{
"qty": 1.0,
"outstanding_amount": 300,
"party": "_Test {0}".format(party),
"party": args.get("party_1") or "_Test {0}".format(party),
"item_name": "Opening Item",
"due_date": "2016-09-10",
"posting_date": "2016-09-05",
@@ -66,7 +103,7 @@ def get_opening_invoice_creation_dict(**args):
{
"qty": 2.0,
"outstanding_amount": 250,
"party": "_Test {0} 1".format(party),
"party": args.get("party_2") or "_Test {0} 1".format(party),
"item_name": "Opening Item",
"due_date": "2016-09-10",
"posting_date": "2016-09-05",
@@ -76,4 +113,31 @@ def get_opening_invoice_creation_dict(**args):
})
invoice_dict.update(args)
return invoice_dict
return invoice_dict
def make_company():
if frappe.db.exists("Company", "_Test Opening Invoice Company"):
return frappe.get_doc("Company", "_Test Opening Invoice Company")
company = frappe.new_doc("Company")
company.company_name = "_Test Opening Invoice Company"
company.abbr = "_TOIC"
company.default_currency = "INR"
company.country = "India"
company.insert()
return company
def make_customer(customer=None):
customer_name = customer or "Opening Customer"
customer = frappe.get_doc({
"doctype": "Customer",
"customer_name": customer_name,
"customer_group": "All Customer Groups",
"customer_type": "Company",
"territory": "All Territories"
})
if not frappe.db.exists("Customer", customer_name):
customer.insert(ignore_permissions=True)
return customer.name
else:
return frappe.db.exists("Customer", customer_name)

View File

@@ -12,9 +12,10 @@ frappe.ui.form.on('Payment Entry', {
setup: function(frm) {
frm.set_query("paid_from", function() {
frm.events.validate_company(frm);
var account_types = in_list(["Pay", "Internal Transfer"], frm.doc.payment_type) ?
["Bank", "Cash"] : [frappe.boot.party_account_types[frm.doc.party_type]];
return {
filters: {
"account_type": ["in", account_types],
@@ -23,27 +24,34 @@ frappe.ui.form.on('Payment Entry', {
}
}
});
frm.set_query("party_type", function() {
frm.events.validate_company(frm);
return{
"filters": {
filters: {
"name": ["in", Object.keys(frappe.boot.party_account_types)],
}
}
});
frm.set_query("party_bank_account", function() {
return {
filters: {
"is_company_account":0
is_company_account: 0,
party_type: frm.doc.party_type,
party: frm.doc.party
}
}
});
frm.set_query("bank_account", function() {
return {
filters: {
"is_company_account":1
is_company_account: 1
}
}
});
frm.set_query("contact_person", function() {
if (frm.doc.party) {
return {
@@ -55,10 +63,12 @@ frappe.ui.form.on('Payment Entry', {
};
}
});
frm.set_query("paid_to", function() {
frm.events.validate_company(frm);
var account_types = in_list(["Receive", "Internal Transfer"], frm.doc.payment_type) ?
["Bank", "Cash"] : [frappe.boot.party_account_types[frm.doc.party_type]];
return {
filters: {
"account_type": ["in", account_types],
@@ -104,6 +114,21 @@ frappe.ui.form.on('Payment Entry', {
};
});
frm.set_query('payment_term', 'references', function(frm, cdt, cdn) {
const child = locals[cdt][cdn];
if (in_list(['Purchase Invoice', 'Sales Invoice'], child.reference_doctype) && child.reference_name) {
let payment_term_list = frappe.get_list('Payment Schedule', {'parent': child.reference_name});
payment_term_list = payment_term_list.map(pt => pt.payment_term);
return {
filters: {
'name': ['in', payment_term_list]
}
}
}
});
frm.set_query("reference_name", "references", function(doc, cdt, cdn) {
const child = locals[cdt][cdn];
const filters = {"docstatus": 1, "company": doc.company};
@@ -132,6 +157,12 @@ frappe.ui.form.on('Payment Entry', {
frm.events.show_general_ledger(frm);
},
validate_company: (frm) => {
if (!frm.doc.company){
frappe.throw({message:__("Please select a Company first."), title: __("Mandatory")});
}
},
company: function(frm) {
frm.events.hide_unhide_fields(frm);
frm.events.set_dynamic_labels(frm);
@@ -154,8 +185,11 @@ frappe.ui.form.on('Payment Entry', {
frm.toggle_display("base_paid_amount", frm.doc.paid_from_account_currency != company_currency);
frm.toggle_display("base_received_amount", (frm.doc.paid_to_account_currency != company_currency &&
frm.doc.paid_from_account_currency != frm.doc.paid_to_account_currency));
frm.toggle_display("base_received_amount", (
frm.doc.paid_to_account_currency != company_currency &&
frm.doc.paid_from_account_currency != frm.doc.paid_to_account_currency
&& frm.doc.base_paid_amount != frm.doc.base_received_amount
));
frm.toggle_display("received_amount", (frm.doc.payment_type=="Internal Transfer" ||
frm.doc.paid_from_account_currency != frm.doc.paid_to_account_currency))
@@ -269,7 +303,7 @@ frappe.ui.form.on('Payment Entry', {
frm.set_value("contact_email", "");
frm.set_value("contact_person", "");
}
if(frm.doc.payment_type && frm.doc.party_type && frm.doc.party) {
if(frm.doc.payment_type && frm.doc.party_type && frm.doc.party && frm.doc.company) {
if(!frm.doc.posting_date) {
frappe.msgprint(__("Please select Posting Date before selecting Party"))
frm.set_value("party", "");
@@ -308,7 +342,7 @@ frappe.ui.form.on('Payment Entry', {
() => {
frm.set_party_account_based_on_party = false;
if (r.message.bank_account) {
frm.set_value("party_bank_account", r.message.bank_account);
frm.set_value("bank_account", r.message.bank_account);
}
}
]);
@@ -352,6 +386,8 @@ frappe.ui.form.on('Payment Entry', {
set_account_currency_and_balance: function(frm, account, currency_field,
balance_field, callback_function) {
var company_currency = frappe.get_doc(":Company", frm.doc.company).default_currency;
if (frm.doc.posting_date && account) {
frappe.call({
method: "erpnext.accounts.doctype.payment_entry.payment_entry.get_account_details",
@@ -378,6 +414,14 @@ frappe.ui.form.on('Payment Entry', {
if(!frm.doc.paid_amount && frm.doc.received_amount)
frm.events.received_amount(frm);
if (frm.doc.paid_from_account_currency == frm.doc.paid_to_account_currency
&& frm.doc.paid_amount != frm.doc.received_amount) {
if (company_currency != frm.doc.paid_from_account_currency &&
frm.doc.payment_type == "Pay") {
frm.doc.paid_amount = frm.doc.received_amount;
}
}
}
},
() => {
@@ -486,6 +530,7 @@ frappe.ui.form.on('Payment Entry', {
paid_amount: function(frm) {
frm.set_value("base_paid_amount", flt(frm.doc.paid_amount) * flt(frm.doc.source_exchange_rate));
frm.trigger("reset_received_amount");
frm.events.hide_unhide_fields(frm);
},
received_amount: function(frm) {
@@ -509,6 +554,7 @@ frappe.ui.form.on('Payment Entry', {
frm.events.set_unallocated_amount(frm);
frm.set_paid_amount_based_on_received_amount = false;
frm.events.hide_unhide_fields(frm);
},
reset_received_amount: function(frm) {
@@ -547,12 +593,22 @@ frappe.ui.form.on('Payment Entry', {
{fieldtype:"Column Break"},
{fieldtype:"Float", label: __("Less Than Amount"), fieldname:"outstanding_amt_less_than"},
{fieldtype:"Section Break"},
{fieldtype:"Link", label:__("Cost Center"), fieldname:"cost_center", options:"Cost Center",
"get_query": function() {
return {
"filters": {"company": frm.doc.company}
}
}
},
{fieldtype:"Column Break"},
{fieldtype:"Section Break"},
{fieldtype:"Check", label: __("Allocate Payment Amount"), fieldname:"allocate_payment_amount", default:1},
];
frappe.prompt(fields, function(filters){
frappe.flags.allocate_payment_amount = true;
frm.events.validate_filters_data(frm, filters);
frm.doc.cost_center = filters.cost_center;
frm.events.get_outstanding_documents(frm, filters);
}, __("Filters"), __("Get Outstanding Documents"));
},
@@ -652,14 +708,16 @@ frappe.ui.form.on('Payment Entry', {
(frm.doc.payment_type=="Receive" && frm.doc.party_type=="Student")
) {
if(total_positive_outstanding > total_negative_outstanding)
frm.set_value("paid_amount",
total_positive_outstanding - total_negative_outstanding);
if (!frm.doc.paid_amount)
frm.set_value("paid_amount",
total_positive_outstanding - total_negative_outstanding);
} else if (
total_negative_outstanding &&
total_positive_outstanding < total_negative_outstanding
) {
frm.set_value("received_amount",
total_negative_outstanding - total_positive_outstanding);
if (!frm.doc.received_amount)
frm.set_value("received_amount",
total_negative_outstanding - total_positive_outstanding);
}
}
@@ -993,22 +1051,14 @@ frappe.ui.form.on('Payment Entry', {
},
callback: function(r, rt) {
if(r.message) {
frappe.run_serially([
() => {
frm.set_value("paid_from_account_balance", r.message.paid_from_account_balance);
frm.set_value("paid_to_account_balance", r.message.paid_to_account_balance);
frm.set_value("party_balance", r.message.party_balance);
},
() => {
if(frm.doc.payment_type != "Internal") {
frm.clear_table("references");
}
}
]);
}
}
});
}
},
})
})

View File

@@ -531,7 +531,8 @@
"fieldtype": "Data",
"hidden": 1,
"label": "Title",
"print_hide": 1
"print_hide": 1,
"read_only": 1
},
{
"depends_on": "party",
@@ -575,7 +576,7 @@
}
],
"is_submittable": 1,
"modified": "2019-11-06 12:59:43.151721",
"modified": "2021-03-10 13:05:16.958866",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Entry",
@@ -619,4 +620,4 @@
"sort_order": "DESC",
"title_field": "title",
"track_changes": 1
}
}

View File

@@ -6,7 +6,7 @@ from __future__ import unicode_literals
import frappe, erpnext, json
from frappe import _, scrub, ValidationError
from frappe.utils import flt, comma_or, nowdate, getdate
from erpnext.accounts.utils import get_outstanding_invoices, get_account_currency, get_balance_on, get_allow_cost_center_in_entry_of_bs_account
from erpnext.accounts.utils import get_outstanding_invoices, get_account_currency, get_balance_on
from erpnext.accounts.party import get_party_account
from erpnext.accounts.doctype.journal_entry.journal_entry import get_default_bank_cash_account
from erpnext.setup.utils import get_exchange_rate
@@ -60,6 +60,7 @@ class PaymentEntry(AccountsController):
self.set_remarks()
self.validate_duplicate_entry()
self.validate_allocated_amount()
self.validate_paid_invoices()
self.ensure_supplier_is_not_blocked()
self.set_status()
@@ -71,9 +72,9 @@ class PaymentEntry(AccountsController):
self.update_outstanding_amounts()
self.update_advance_paid()
self.update_expense_claim()
self.update_payment_schedule()
self.set_status()
def on_cancel(self):
self.setup_party_account_field()
self.make_gl_entries(cancel=1)
@@ -81,7 +82,13 @@ class PaymentEntry(AccountsController):
self.update_advance_paid()
self.update_expense_claim()
self.delink_advance_entry_references()
self.set_status()
self.update_payment_schedule(cancel=1)
self.set_payment_req_status()
self.set_status(update=True)
def set_payment_req_status(self):
from erpnext.accounts.doctype.payment_request.payment_request import update_payment_req_status
update_payment_req_status(self, None)
def update_outstanding_amounts(self):
self.set_missing_ref_details(force=True)
@@ -89,10 +96,10 @@ class PaymentEntry(AccountsController):
def validate_duplicate_entry(self):
reference_names = []
for d in self.get("references"):
if (d.reference_doctype, d.reference_name) in reference_names:
if (d.reference_doctype, d.reference_name, d.payment_term) in reference_names:
frappe.throw(_("Row #{0}: Duplicate entry in References {1} {2}")
.format(d.idx, d.reference_doctype, d.reference_name))
reference_names.append((d.reference_doctype, d.reference_name))
reference_names.append((d.reference_doctype, d.reference_name, d.payment_term))
def set_bank_account_data(self):
if self.bank_account:
@@ -102,7 +109,9 @@ class PaymentEntry(AccountsController):
self.bank = bank_data.bank
self.bank_account_no = bank_data.bank_account_no
self.set(field, bank_data.account)
if not self.get(field):
self.set(field, bank_data.account)
def validate_allocated_amount(self):
for d in self.get("references"):
@@ -218,6 +227,8 @@ class PaymentEntry(AccountsController):
valid_reference_doctypes = ("Purchase Order", "Purchase Invoice", "Journal Entry")
elif self.party_type == "Employee":
valid_reference_doctypes = ("Expense Claim", "Journal Entry", "Employee Advance")
elif self.party_type == "Shareholder":
valid_reference_doctypes = ("Journal Entry")
for d in self.get("references"):
if not d.allocated_amount:
@@ -257,6 +268,25 @@ class PaymentEntry(AccountsController):
frappe.throw(_("{0} {1} must be submitted")
.format(d.reference_doctype, d.reference_name))
def validate_paid_invoices(self):
no_oustanding_refs = {}
for d in self.get("references"):
if not d.allocated_amount:
continue
if d.reference_doctype in ("Sales Invoice", "Purchase Invoice", "Fees"):
outstanding_amount, is_return = frappe.get_cached_value(d.reference_doctype, d.reference_name, ["outstanding_amount", "is_return"])
if outstanding_amount <= 0 and not is_return:
no_oustanding_refs.setdefault(d.reference_doctype, []).append(d)
for k, v in no_oustanding_refs.items():
frappe.msgprint(_("{} - {} now have {} as they had no outstanding amount left before submitting the Payment Entry.<br><br>\
If this is undesirable please cancel the corresponding Payment Entry.")
.format(k, frappe.bold(", ".join([d.reference_name for d in v])), frappe.bold("negative outstanding amount")),
title=_("Warning"), indicator="orange")
def validate_journal_entry(self):
for d in self.get("references"):
if d.allocated_amount and d.reference_doctype == "Journal Entry":
@@ -278,7 +308,39 @@ class PaymentEntry(AccountsController):
frappe.throw(_("Against Journal Entry {0} does not have any unmatched {1} entry")
.format(d.reference_name, dr_or_cr))
def set_status(self):
def update_payment_schedule(self, cancel=0):
invoice_payment_amount_map = {}
invoice_paid_amount_map = {}
for reference in self.get('references'):
if reference.payment_term and reference.reference_name:
key = (reference.payment_term, reference.reference_name)
invoice_payment_amount_map.setdefault(key, 0.0)
invoice_payment_amount_map[key] += reference.allocated_amount
if not invoice_paid_amount_map.get(key):
payment_schedule = frappe.get_all('Payment Schedule', filters={'parent': reference.reference_name},
fields=['paid_amount', 'payment_amount', 'payment_term'])
for term in payment_schedule:
invoice_key = (term.payment_term, reference.reference_name)
invoice_paid_amount_map.setdefault(invoice_key, {})
invoice_paid_amount_map[invoice_key]['outstanding'] = term.payment_amount - term.paid_amount
for key, amount in iteritems(invoice_payment_amount_map):
if cancel:
frappe.db.sql(""" UPDATE `tabPayment Schedule` SET paid_amount = `paid_amount` - %s
WHERE parent = %s and payment_term = %s""", (amount, key[1], key[0]))
else:
outstanding = flt(invoice_paid_amount_map.get(key, {}).get('outstanding'))
if amount > outstanding:
frappe.throw(_('Cannot allocate more than {0} against payment term {1}').format(outstanding, key[0]))
if amount and outstanding:
frappe.db.sql(""" UPDATE `tabPayment Schedule` SET paid_amount = `paid_amount` + %s
WHERE parent = %s and payment_term = %s""", (amount, key[1], key[0]))
def set_status(self, update=False):
if self.docstatus == 2:
self.status = 'Cancelled'
elif self.docstatus == 1:
@@ -286,6 +348,9 @@ class PaymentEntry(AccountsController):
else:
self.status = 'Draft'
if update:
self.db_set('status', self.status)
def set_amounts(self):
self.set_amounts_in_company_currency()
self.set_total_allocated_amount()
@@ -376,6 +441,10 @@ class PaymentEntry(AccountsController):
.format(total_negative_outstanding), InvalidPaymentEntry)
def set_title(self):
if frappe.flags.in_import and self.title:
# do not set title dynamically if title exists during data import.
return
if self.payment_type in ("Receive", "Pay"):
self.title = self.party
else:
@@ -445,7 +514,7 @@ class PaymentEntry(AccountsController):
"against": against_account,
"account_currency": self.party_account_currency,
"cost_center": self.cost_center
})
}, item=self)
dr_or_cr = "credit" if erpnext.get_party_account_type(self.party_type) == 'Receivable' else "debit"
@@ -489,7 +558,7 @@ class PaymentEntry(AccountsController):
"credit_in_account_currency": self.paid_amount,
"credit": self.base_paid_amount,
"cost_center": self.cost_center
})
}, item=self)
)
if self.payment_type in ("Receive", "Internal Transfer"):
gl_entries.append(
@@ -500,7 +569,7 @@ class PaymentEntry(AccountsController):
"debit_in_account_currency": self.received_amount,
"debit": self.base_received_amount,
"cost_center": self.cost_center
})
}, item=self)
)
def add_deductions_gl_entries(self, gl_entries):
@@ -595,7 +664,7 @@ def get_outstanding_reference_documents(args):
.format(frappe.db.escape(args["voucher_type"]), frappe.db.escape(args["voucher_no"]))
# Add cost center condition
if args.get("cost_center") and get_allow_cost_center_in_entry_of_bs_account():
if args.get("cost_center"):
condition += " and cost_center='%s'" % args.get("cost_center")
date_fields_dict = {
@@ -911,7 +980,10 @@ def get_payment_entry(dt, dn, party_amount=None, bank_account=None, bank_amount=
else:
party_account = get_party_account(party_type, doc.get(party_type.lower()), doc.company)
party_account_currency = doc.get("party_account_currency") or get_account_currency(party_account)
if dt not in ("Sales Invoice", "Purchase Invoice"):
party_account_currency = get_account_currency(party_account)
else:
party_account_currency = doc.get("party_account_currency") or get_account_currency(party_account)
# payment type
if (dt == "Sales Order" or (dt in ("Sales Invoice", "Fees") and doc.outstanding_amount > 0)) \
@@ -1002,15 +1074,22 @@ def get_payment_entry(dt, dn, party_amount=None, bank_account=None, bank_amount=
if doc.doctype == "Purchase Invoice" and doc.invoice_is_blocked():
frappe.msgprint(_('{0} is on hold till {1}'.format(doc.name, doc.release_date)))
else:
pe.append("references", {
'reference_doctype': dt,
'reference_name': dn,
"bill_no": doc.get("bill_no"),
"due_date": doc.get("due_date"),
'total_amount': grand_total,
'outstanding_amount': outstanding_amount,
'allocated_amount': outstanding_amount
})
if (doc.doctype in ('Sales Invoice', 'Purchase Invoice')
and frappe.get_value('Payment Terms Template',
{'name': doc.payment_terms_template}, 'allocate_payment_based_on_payment_terms')):
for reference in get_reference_as_per_payment_terms(doc.payment_schedule, dt, dn, doc, grand_total, outstanding_amount):
pe.append('references', reference)
else:
pe.append("references", {
'reference_doctype': dt,
'reference_name': dn,
"bill_no": doc.get("bill_no"),
"due_date": doc.get("due_date"),
'total_amount': grand_total,
'outstanding_amount': outstanding_amount,
'allocated_amount': outstanding_amount
})
pe.setup_party_account_field()
pe.set_missing_values()
@@ -1019,6 +1098,25 @@ def get_payment_entry(dt, dn, party_amount=None, bank_account=None, bank_amount=
pe.set_amounts()
return pe
def get_reference_as_per_payment_terms(payment_schedule, dt, dn, doc, grand_total, outstanding_amount):
references = []
for payment_term in payment_schedule:
payment_term_outstanding = flt(payment_term.payment_amount - payment_term.paid_amount,
payment_term.precision('payment_amount'))
if payment_term_outstanding:
references.append({
'reference_doctype': dt,
'reference_name': dn,
'bill_no': doc.get('bill_no'),
'due_date': doc.get('due_date'),
'total_amount': grand_total,
'outstanding_amount': outstanding_amount,
'payment_term': payment_term.payment_term,
'allocated_amount': payment_term_outstanding
})
return references
def get_paid_amount(dt, dn, party_type, party, account, due_date):
if party_type=="Customer":

View File

@@ -0,0 +1,14 @@
frappe.listview_settings['Payment Entry'] = {
onload: function(listview) {
if (listview.page.fields_dict.party_type) {
listview.page.fields_dict.party_type.get_query = function() {
return {
"filters": {
"name": ["in", Object.keys(frappe.boot.party_account_types)],
}
};
};
}
}
};

View File

@@ -149,6 +149,73 @@ class TestPaymentEntry(unittest.TestCase):
outstanding_amount = flt(frappe.db.get_value("Sales Invoice", pi.name, "outstanding_amount"))
self.assertEqual(outstanding_amount, 0)
def test_payment_entry_against_payment_terms(self):
si = create_sales_invoice(do_not_save=1, qty=1, rate=200)
create_payment_terms_template()
si.payment_terms_template = 'Test Receivable Template'
si.append('taxes', {
"charge_type": "On Net Total",
"account_head": "_Test Account Service Tax - _TC",
"cost_center": "_Test Cost Center - _TC",
"description": "Service Tax",
"rate": 18
})
si.save()
si.submit()
pe = get_payment_entry("Sales Invoice", si.name, bank_account="_Test Cash - _TC")
pe.submit()
si.load_from_db()
self.assertEqual(pe.references[0].payment_term, 'Basic Amount Receivable')
self.assertEqual(pe.references[1].payment_term, 'Tax Receivable')
self.assertEqual(si.payment_schedule[0].paid_amount, 200.0)
self.assertEqual(si.payment_schedule[1].paid_amount, 36.0)
def test_payment_against_sales_invoice_to_check_status(self):
si = create_sales_invoice(customer="_Test Customer USD", debit_to="_Test Receivable USD - _TC",
currency="USD", conversion_rate=50)
pe = get_payment_entry("Sales Invoice", si.name, bank_account="_Test Bank USD - _TC")
pe.reference_no = "1"
pe.reference_date = "2016-01-01"
pe.target_exchange_rate = 50
pe.insert()
pe.submit()
outstanding_amount, status = frappe.db.get_value("Sales Invoice", si.name, ["outstanding_amount", "status"])
self.assertEqual(flt(outstanding_amount), 0)
self.assertEqual(status, 'Paid')
pe.cancel()
outstanding_amount, status = frappe.db.get_value("Sales Invoice", si.name, ["outstanding_amount", "status"])
self.assertEqual(flt(outstanding_amount), 100)
self.assertEqual(status, 'Unpaid')
def test_payment_against_purchase_invoice_to_check_status(self):
pi = make_purchase_invoice(supplier="_Test Supplier USD", debit_to="_Test Payable USD - _TC",
currency="USD", conversion_rate=50)
pe = get_payment_entry("Purchase Invoice", pi.name, bank_account="_Test Bank USD - _TC")
pe.reference_no = "1"
pe.reference_date = "2016-01-01"
pe.source_exchange_rate = 50
pe.insert()
pe.submit()
outstanding_amount, status = frappe.db.get_value("Purchase Invoice", pi.name, ["outstanding_amount", "status"])
self.assertEqual(flt(outstanding_amount), 0)
self.assertEqual(status, 'Paid')
pe.cancel()
outstanding_amount, status = frappe.db.get_value("Purchase Invoice", pi.name, ["outstanding_amount", "status"])
self.assertEqual(flt(outstanding_amount), 250)
self.assertEqual(status, 'Unpaid')
def test_payment_entry_against_ec(self):
payable = frappe.get_cached_value('Company', "_Test Company", 'default_payable_account')
@@ -395,11 +462,8 @@ class TestPaymentEntry(unittest.TestCase):
outstanding_amount = flt(frappe.db.get_value("Sales Invoice", si.name, "outstanding_amount"))
self.assertEqual(outstanding_amount, 0)
def test_payment_entry_against_sales_invoice_for_enable_allow_cost_center_in_entry_of_bs_account(self):
def test_payment_entry_against_sales_invoice_with_cost_centre(self):
from erpnext.accounts.doctype.cost_center.test_cost_center import create_cost_center
accounts_settings = frappe.get_doc('Accounts Settings', 'Accounts Settings')
accounts_settings.allow_cost_center_in_entry_of_bs_account = 1
accounts_settings.save()
cost_center = "_Test Cost Center for BS Account - _TC"
create_cost_center(cost_center_name="_Test Cost Center for BS Account", company="_Test Company")
@@ -434,39 +498,8 @@ class TestPaymentEntry(unittest.TestCase):
for gle in gl_entries:
self.assertEqual(expected_values[gle.account]["cost_center"], gle.cost_center)
accounts_settings.allow_cost_center_in_entry_of_bs_account = 0
accounts_settings.save()
def test_payment_entry_against_sales_invoice_for_disable_allow_cost_center_in_entry_of_bs_account(self):
accounts_settings = frappe.get_doc('Accounts Settings', 'Accounts Settings')
accounts_settings.allow_cost_center_in_entry_of_bs_account = 0
accounts_settings.save()
si = create_sales_invoice(debit_to="Debtors - _TC")
pe = get_payment_entry("Sales Invoice", si.name, bank_account="_Test Bank - _TC")
pe.reference_no = "112211-2"
pe.reference_date = nowdate()
pe.paid_to = "_Test Bank - _TC"
pe.paid_amount = si.grand_total
pe.insert()
pe.submit()
gl_entries = frappe.db.sql("""select account, cost_center, account_currency, debit, credit,
debit_in_account_currency, credit_in_account_currency
from `tabGL Entry` where voucher_type='Payment Entry' and voucher_no=%s
order by account asc""", pe.name, as_dict=1)
self.assertTrue(gl_entries)
for gle in gl_entries:
self.assertEqual(gle.cost_center, None)
def test_payment_entry_against_purchase_invoice_for_enable_allow_cost_center_in_entry_of_bs_account(self):
def test_payment_entry_against_purchase_invoice_with_cost_center(self):
from erpnext.accounts.doctype.cost_center.test_cost_center import create_cost_center
accounts_settings = frappe.get_doc('Accounts Settings', 'Accounts Settings')
accounts_settings.allow_cost_center_in_entry_of_bs_account = 1
accounts_settings.save()
cost_center = "_Test Cost Center for BS Account - _TC"
create_cost_center(cost_center_name="_Test Cost Center for BS Account", company="_Test Company")
@@ -501,40 +534,9 @@ class TestPaymentEntry(unittest.TestCase):
for gle in gl_entries:
self.assertEqual(expected_values[gle.account]["cost_center"], gle.cost_center)
accounts_settings.allow_cost_center_in_entry_of_bs_account = 0
accounts_settings.save()
def test_payment_entry_against_purchase_invoice_for_disable_allow_cost_center_in_entry_of_bs_account(self):
accounts_settings = frappe.get_doc('Accounts Settings', 'Accounts Settings')
accounts_settings.allow_cost_center_in_entry_of_bs_account = 0
accounts_settings.save()
pi = make_purchase_invoice(credit_to="Creditors - _TC")
pe = get_payment_entry("Purchase Invoice", pi.name, bank_account="_Test Bank - _TC")
pe.reference_no = "112222-2"
pe.reference_date = nowdate()
pe.paid_from = "_Test Bank - _TC"
pe.paid_amount = pi.grand_total
pe.insert()
pe.submit()
gl_entries = frappe.db.sql("""select account, cost_center, account_currency, debit, credit,
debit_in_account_currency, credit_in_account_currency
from `tabGL Entry` where voucher_type='Payment Entry' and voucher_no=%s
order by account asc""", pe.name, as_dict=1)
self.assertTrue(gl_entries)
for gle in gl_entries:
self.assertEqual(gle.cost_center, None)
def test_payment_entry_account_and_party_balance_for_enable_allow_cost_center_in_entry_of_bs_account(self):
def test_payment_entry_account_and_party_balance_with_cost_center(self):
from erpnext.accounts.doctype.cost_center.test_cost_center import create_cost_center
from erpnext.accounts.utils import get_balance_on
accounts_settings = frappe.get_doc('Accounts Settings', 'Accounts Settings')
accounts_settings.allow_cost_center_in_entry_of_bs_account = 1
accounts_settings.save()
cost_center = "_Test Cost Center for BS Account - _TC"
create_cost_center(cost_center_name="_Test Cost Center for BS Account", company="_Test Company")
@@ -565,5 +567,36 @@ class TestPaymentEntry(unittest.TestCase):
self.assertEqual(expected_party_balance, party_balance)
self.assertEqual(expected_party_account_balance, party_account_balance)
accounts_settings.allow_cost_center_in_entry_of_bs_account = 0
accounts_settings.save()
def create_payment_terms_template():
create_payment_term('Basic Amount Receivable')
create_payment_term('Tax Receivable')
if not frappe.db.exists('Payment Terms Template', 'Test Receivable Template'):
payment_term_template = frappe.get_doc({
'doctype': 'Payment Terms Template',
'template_name': 'Test Receivable Template',
'allocate_payment_based_on_payment_terms': 1,
'terms': [{
'doctype': 'Payment Terms Template Detail',
'payment_term': 'Basic Amount Receivable',
'invoice_portion': 84.746,
'credit_days_based_on': 'Day(s) after invoice date',
'credit_days': 1
},
{
'doctype': 'Payment Terms Template Detail',
'payment_term': 'Tax Receivable',
'invoice_portion': 15.254,
'credit_days_based_on': 'Day(s) after invoice date',
'credit_days': 2
}]
}).insert()
def create_payment_term(name):
if not frappe.db.exists('Payment Term', name):
frappe.get_doc({
'doctype': 'Payment Term',
'payment_term_name': name
}).insert()

View File

@@ -1,343 +1,107 @@
{
"allow_copy": 0,
"allow_events_in_timeline": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"actions": [],
"creation": "2016-06-01 16:55:32.196722",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"reference_doctype",
"reference_name",
"due_date",
"bill_no",
"payment_term",
"column_break_4",
"total_amount",
"outstanding_amount",
"allocated_amount",
"exchange_rate"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fetch_if_empty": 0,
"fieldname": "reference_doctype",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Type",
"length": 0,
"no_copy": 0,
"options": "DocType",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fetch_if_empty": 0,
"fieldname": "reference_name",
"fieldtype": "Dynamic Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 1,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Name",
"length": 0,
"no_copy": 0,
"options": "reference_doctype",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "due_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Due Date",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"read_only": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "",
"fetch_if_empty": 0,
"fieldname": "bill_no",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Supplier Invoice No",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"read_only": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fetch_if_empty": 0,
"fieldname": "column_break_4",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"fieldtype": "Column Break"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fetch_if_empty": 0,
"fieldname": "total_amount",
"fieldtype": "Float",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Total Amount",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"read_only": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fetch_if_empty": 0,
"fieldname": "outstanding_amount",
"fieldtype": "Float",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Outstanding",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"read_only": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fetch_if_empty": 0,
"fieldname": "allocated_amount",
"fieldtype": "Float",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Allocated",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"label": "Allocated"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "eval:(doc.reference_doctype=='Purchase Invoice')",
"fetch_if_empty": 0,
"fieldname": "exchange_rate",
"fieldtype": "Float",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Exchange Rate",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"read_only": 1
},
{
"fieldname": "payment_term",
"fieldtype": "Link",
"label": "Payment Term",
"options": "Payment Term"
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2019-05-01 13:24:56.586677",
"links": [],
"modified": "2020-03-13 12:07:19.362539",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Entry Reference",
"name_case": "",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0,
"track_views": 0
"track_changes": 1
}

View File

@@ -15,11 +15,11 @@ frappe.ui.form.on('Payment Order', {
if (frm.doc.docstatus == 0) {
frm.add_custom_button(__('Payment Request'), function() {
frm.trigger("get_from_payment_request");
}, __("Get from"));
}, __("Get Payments from"));
frm.add_custom_button(__('Payment Entry'), function() {
frm.trigger("get_from_payment_entry");
}, __("Get from"));
}, __("Get Payments from"));
frm.trigger('remove_button');
}

View File

@@ -59,7 +59,6 @@
"fieldtype": "Section Break"
},
{
"allow_bulk_edit": 1,
"fieldname": "references",
"fieldtype": "Table",
"label": "Payment Order Reference",
@@ -108,7 +107,7 @@
}
],
"is_submittable": 1,
"modified": "2019-05-14 17:12:24.912666",
"modified": "2020-04-06 18:00:56.022642",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Order",

View File

@@ -26,6 +26,8 @@ class PaymentOrder(Document):
for d in self.references:
frappe.db.set_value(self.payment_order_type, d.get(frappe.scrub(self.payment_order_type)), ref_field, status)
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs
def get_mop_query(doctype, txt, searchfield, start, page_len, filters):
return frappe.db.sql(""" select mode_of_payment from `tabPayment Order Reference`
where parent = %(parent)s and mode_of_payment like %(txt)s
@@ -36,6 +38,8 @@ def get_mop_query(doctype, txt, searchfield, start, page_len, filters):
'txt': "%%%s%%" % txt
})
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs
def get_supplier_query(doctype, txt, searchfield, start, page_len, filters):
return frappe.db.sql(""" select supplier from `tabPayment Order Reference`
where parent = %(parent)s and supplier like %(txt)s and
@@ -80,10 +84,10 @@ def make_journal_entry(doc, supplier, mode_of_payment=None):
paid_amt += d.amount
je.append('accounts', {
'account': doc.references[0].account,
'account': doc.account,
'credit_in_account_currency': paid_amt
})
je.flags.ignore_mandatory = True
je.save()
frappe.msgprint(_("{0} {1} created").format(je.doctype, je.name))
frappe.msgprint(_("{0} {1} created").format(je.doctype, je.name))

View File

@@ -37,6 +37,11 @@ frappe.ui.form.on("Payment Reconciliation Payment", {
erpnext.accounts.PaymentReconciliationController = frappe.ui.form.Controller.extend({
onload: function() {
var me = this;
this.frm.set_query("party", function() {
check_mandatory(me.frm);
});
this.frm.set_query("party_type", function() {
return {
"filters": {
@@ -46,33 +51,39 @@ erpnext.accounts.PaymentReconciliationController = frappe.ui.form.Controller.ext
});
this.frm.set_query('receivable_payable_account', function() {
if(!me.frm.doc.company || !me.frm.doc.party_type) {
frappe.msgprint(__("Please select Company and Party Type first"));
} else {
return{
filters: {
"company": me.frm.doc.company,
"is_group": 0,
"account_type": frappe.boot.party_account_types[me.frm.doc.party_type]
}
};
}
check_mandatory(me.frm);
return {
filters: {
"company": me.frm.doc.company,
"is_group": 0,
"account_type": frappe.boot.party_account_types[me.frm.doc.party_type]
}
};
});
this.frm.set_query('bank_cash_account', function() {
if(!me.frm.doc.company) {
frappe.msgprint(__("Please select Company first"));
} else {
return{
filters:[
['Account', 'company', '=', me.frm.doc.company],
['Account', 'is_group', '=', 0],
['Account', 'account_type', 'in', ['Bank', 'Cash']]
]
};
}
check_mandatory(me.frm, true);
return {
filters:[
['Account', 'company', '=', me.frm.doc.company],
['Account', 'is_group', '=', 0],
['Account', 'account_type', 'in', ['Bank', 'Cash']]
]
};
});
this.frm.set_value('party_type', '');
this.frm.set_value('party', '');
this.frm.set_value('receivable_payable_account', '');
var check_mandatory = (frm, only_company=false) => {
var title = __("Mandatory");
if (only_company && !frm.doc.company) {
frappe.throw({message: __("Please Select a Company First"), title: title});
} else if (!frm.doc.company || !frm.doc.party_type) {
frappe.throw({message: __("Please Select Both Company and Party Type First"), title: title});
}
};
},
refresh: function() {
@@ -86,7 +97,7 @@ erpnext.accounts.PaymentReconciliationController = frappe.ui.form.Controller.ext
party: function() {
var me = this
if(!me.frm.doc.receivable_payable_account && me.frm.doc.party_type && me.frm.doc.party) {
if (!me.frm.doc.receivable_payable_account && me.frm.doc.party_type && me.frm.doc.party) {
return frappe.call({
method: "erpnext.accounts.party.get_party_account",
args: {
@@ -95,7 +106,7 @@ erpnext.accounts.PaymentReconciliationController = frappe.ui.form.Controller.ext
party: me.frm.doc.party
},
callback: function(r) {
if(!r.exc && r.message) {
if (!r.exc && r.message) {
me.frm.set_value("receivable_payable_account", r.message);
}
}

View File

@@ -23,6 +23,8 @@ class PaymentReconciliation(Document):
if self.party_type in ["Customer", "Supplier"]:
dr_or_cr_notes = self.get_dr_or_cr_notes()
else:
dr_or_cr_notes = []
self.add_payment_entries(payment_entries + journal_entries + dr_or_cr_notes)
@@ -46,7 +48,8 @@ class PaymentReconciliation(Document):
select
"Journal Entry" as reference_type, t1.name as reference_name,
t1.posting_date, t1.remark as remarks, t2.name as reference_row,
{dr_or_cr} as amount, t2.is_advance
{dr_or_cr} as amount, t2.is_advance,
t2.account_currency as currency
from
`tabJournal Entry` t1, `tabJournal Entry Account` t2
where
@@ -85,24 +88,31 @@ class PaymentReconciliation(Document):
voucher_type = ('Sales Invoice'
if self.party_type == 'Customer' else "Purchase Invoice")
return frappe.db.sql(""" SELECT `tab{doc}`.name as reference_name, %(voucher_type)s as reference_type,
(sum(`tabGL Entry`.{dr_or_cr}) - sum(`tabGL Entry`.{reconciled_dr_or_cr})) as amount
FROM `tab{doc}`, `tabGL Entry`
return frappe.db.sql(""" SELECT doc.name as reference_name, %(voucher_type)s as reference_type,
(sum(gl.{dr_or_cr}) - sum(gl.{reconciled_dr_or_cr})) as amount,
account_currency as currency
FROM `tab{doc}` doc, `tabGL Entry` gl
WHERE
(`tab{doc}`.name = `tabGL Entry`.against_voucher or `tab{doc}`.name = `tabGL Entry`.voucher_no)
and `tab{doc}`.is_return = 1 and `tab{doc}`.return_against IS NULL
and `tabGL Entry`.against_voucher_type = %(voucher_type)s
and `tab{doc}`.docstatus = 1 and `tabGL Entry`.party = %(party)s
and `tabGL Entry`.party_type = %(party_type)s and `tabGL Entry`.account = %(account)s
GROUP BY `tab{doc}`.name
(doc.name = gl.against_voucher or doc.name = gl.voucher_no)
and doc.{party_type_field} = %(party)s
and doc.is_return = 1 and ifnull(doc.return_against, "") = ""
and gl.against_voucher_type = %(voucher_type)s
and doc.docstatus = 1 and gl.party = %(party)s
and gl.party_type = %(party_type)s and gl.account = %(account)s
GROUP BY doc.name
Having
amount > 0
""".format(doc=voucher_type, dr_or_cr=dr_or_cr, reconciled_dr_or_cr=reconciled_dr_or_cr), {
'party': self.party,
'party_type': self.party_type,
'voucher_type': voucher_type,
'account': self.receivable_payable_account
}, as_dict=1)
""".format(
doc=voucher_type,
dr_or_cr=dr_or_cr,
reconciled_dr_or_cr=reconciled_dr_or_cr,
party_type_field=frappe.scrub(self.party_type)),
{
'party': self.party,
'party_type': self.party_type,
'voucher_type': voucher_type,
'account': self.receivable_payable_account
}, as_dict=1)
def add_payment_entries(self, entries):
self.set('payments', [])
@@ -133,6 +143,7 @@ class PaymentReconciliation(Document):
ent.invoice_number = e.get('voucher_no')
ent.invoice_date = e.get('posting_date')
ent.amount = flt(e.get('invoice_amount'))
ent.currency = e.get('currency')
ent.outstanding_amount = e.get('outstanding_amount')
def reconcile(self, args):
@@ -162,7 +173,7 @@ class PaymentReconciliation(Document):
reconcile_against_document(lst)
if dr_or_cr_notes:
reconcile_dr_cr_note(dr_or_cr_notes)
reconcile_dr_cr_note(dr_or_cr_notes, self.company)
msgprint(_("Successfully Reconciled"))
self.get_unreconciled_entries()
@@ -253,7 +264,7 @@ class PaymentReconciliation(Document):
return cond
def reconcile_dr_cr_note(dr_cr_notes):
def reconcile_dr_cr_note(dr_cr_notes, company):
for d in dr_cr_notes:
voucher_type = ('Credit Note'
if d.voucher_type == 'Sales Invoice' else 'Debit Note')
@@ -261,10 +272,14 @@ def reconcile_dr_cr_note(dr_cr_notes):
reconcile_dr_or_cr = ('debit_in_account_currency'
if d.dr_or_cr == 'credit_in_account_currency' else 'credit_in_account_currency')
company_currency = erpnext.get_company_currency(company)
jv = frappe.get_doc({
"doctype": "Journal Entry",
"voucher_type": voucher_type,
"posting_date": today(),
"company": company,
"multi_currency": 1 if d.currency != company_currency else 0,
"accounts": [
{
'account': d.account,
@@ -272,7 +287,8 @@ def reconcile_dr_cr_note(dr_cr_notes):
'party_type': d.party_type,
d.dr_or_cr: abs(d.allocated_amount),
'reference_type': d.against_voucher_type,
'reference_name': d.against_voucher
'reference_name': d.against_voucher,
'cost_center': erpnext.get_default_cost_center(company)
},
{
'account': d.account,
@@ -281,9 +297,10 @@ def reconcile_dr_cr_note(dr_cr_notes):
reconcile_dr_or_cr: (abs(d.allocated_amount)
if abs(d.unadjusted_amount) > abs(d.allocated_amount) else abs(d.unadjusted_amount)),
'reference_type': d.voucher_type,
'reference_name': d.voucher_no
'reference_name': d.voucher_no,
'cost_center': erpnext.get_default_cost_center(company)
}
]
})
jv.submit()
jv.submit()

View File

@@ -1,183 +1,80 @@
{
"allow_copy": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"creation": "2014-07-09 16:14:23.672922",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"actions": [],
"creation": "2014-07-09 16:14:23.672922",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"invoice_type",
"invoice_number",
"invoice_date",
"col_break1",
"amount",
"outstanding_amount",
"currency"
],
"fields": [
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "invoice_type",
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 1,
"label": "Invoice Type",
"length": 0,
"no_copy": 0,
"options": "Sales Invoice\nPurchase Invoice\nJournal Entry",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
"fieldname": "invoice_type",
"fieldtype": "Select",
"in_list_view": 1,
"label": "Invoice Type",
"options": "Sales Invoice\nPurchase Invoice\nJournal Entry",
"read_only": 1
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "invoice_number",
"fieldtype": "Dynamic Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 1,
"label": "Invoice Number",
"length": 0,
"no_copy": 0,
"options": "invoice_type",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
"fieldname": "invoice_number",
"fieldtype": "Dynamic Link",
"in_list_view": 1,
"label": "Invoice Number",
"options": "invoice_type",
"read_only": 1
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "invoice_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 1,
"label": "Invoice Date",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
"fieldname": "invoice_date",
"fieldtype": "Date",
"in_list_view": 1,
"label": "Invoice Date",
"read_only": 1
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "col_break1",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
"fieldname": "col_break1",
"fieldtype": "Column Break"
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "amount",
"fieldtype": "Currency",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 1,
"label": "Amount",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
"fieldname": "amount",
"fieldtype": "Currency",
"in_list_view": 1,
"label": "Amount",
"options": "currency",
"read_only": 1
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "outstanding_amount",
"fieldtype": "Currency",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 1,
"label": "Outstanding Amount",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
"fieldname": "outstanding_amount",
"fieldtype": "Currency",
"in_list_view": 1,
"label": "Outstanding Amount",
"options": "currency",
"read_only": 1
},
{
"fieldname": "currency",
"fieldtype": "Link",
"hidden": 1,
"label": "Currency",
"options": "Currency"
}
],
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2016-07-11 03:28:03.588476",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Reconciliation Invoice",
"name_case": "",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_seen": 0
],
"istable": 1,
"links": [],
"modified": "2020-07-19 18:12:27.964073",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Reconciliation Invoice",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -1,7 +1,9 @@
{
"actions": [],
"creation": "2014-07-09 16:13:35.452759",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"reference_type",
"reference_name",
@@ -16,7 +18,8 @@
"difference_account",
"difference_amount",
"sec_break1",
"remark"
"remark",
"currency"
],
"fields": [
{
@@ -73,6 +76,7 @@
"fieldtype": "Currency",
"in_list_view": 1,
"label": "Amount",
"options": "currency",
"read_only": 1
},
{
@@ -81,6 +85,7 @@
"fieldtype": "Currency",
"in_list_view": 1,
"label": "Allocated amount",
"options": "currency",
"reqd": 1
},
{
@@ -106,16 +111,25 @@
"fieldname": "difference_amount",
"fieldtype": "Currency",
"label": "Difference Amount",
"options": "currency",
"print_hide": 1,
"read_only": 1
},
{
"fieldname": "section_break_10",
"fieldtype": "Section Break"
},
{
"fieldname": "currency",
"fieldtype": "Link",
"hidden": 1,
"label": "Currency",
"options": "Currency"
}
],
"istable": 1,
"modified": "2019-06-24 00:08:11.150796",
"links": [],
"modified": "2020-07-19 18:12:41.682347",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Reconciliation Payment",

View File

@@ -2,6 +2,16 @@ cur_frm.add_fetch("payment_gateway_account", "payment_account", "payment_account
cur_frm.add_fetch("payment_gateway_account", "payment_gateway", "payment_gateway")
cur_frm.add_fetch("payment_gateway_account", "message", "message")
frappe.ui.form.on("Payment Request", {
setup: function(frm) {
frm.set_query("party_type", function() {
return {
query: "erpnext.setup.doctype.party_type.party_type.get_party_type",
};
});
}
})
frappe.ui.form.on("Payment Request", "onload", function(frm, dt, dn){
if (frm.doc.reference_doctype) {
frappe.call({

File diff suppressed because it is too large Load Diff

View File

@@ -66,8 +66,10 @@ class PaymentRequest(Document):
if self.payment_request_type == 'Outward':
self.db_set('status', 'Initiated')
return
elif self.payment_request_type == 'Inward':
self.db_set('status', 'Requested')
send_mail = self.payment_gateway_validation()
send_mail = self.payment_gateway_validation() if self.payment_gateway else None
ref_doc = frappe.get_doc(self.reference_doctype, self.reference_name)
if (hasattr(ref_doc, "order_type") and getattr(ref_doc, "order_type") == "Shopping Cart") \
@@ -88,6 +90,7 @@ class PaymentRequest(Document):
if (hasattr(ref_doc, "order_type") and getattr(ref_doc, "order_type") == "Shopping Cart"):
from erpnext.selling.doctype.sales_order.sales_order import make_sales_invoice
si = make_sales_invoice(self.reference_name, ignore_permissions=True)
si.allocate_advances_automatically = True
si = si.insert(ignore_permissions=True)
si.submit()
@@ -126,20 +129,17 @@ class PaymentRequest(Document):
return controller.get_payment_url(**{
"amount": flt(self.grand_total, self.precision("grand_total")),
"title": data.company.encode("utf-8"),
"description": self.subject.encode("utf-8"),
"title": frappe.as_unicode(data.company),
"description": frappe.as_unicode(self.subject),
"reference_doctype": "Payment Request",
"reference_docname": self.name,
"payer_email": self.email_to or frappe.session.user,
"payer_name": frappe.safe_encode(data.customer_name),
"payer_name": frappe.as_unicode(data.customer_name),
"order_id": self.name,
"currency": self.currency
})
def set_as_paid(self):
if frappe.session.user == "Guest":
frappe.set_user("Administrator")
payment_entry = self.create_payment_entry()
self.make_invoice()
@@ -251,7 +251,7 @@ class PaymentRequest(Document):
if status in ["Authorized", "Completed"]:
redirect_to = None
self.run_method("set_as_paid")
self.set_as_paid()
# if shopping cart enabled and in session
if (shopping_cart_settings.enabled and hasattr(frappe.local, "session")
@@ -317,13 +317,13 @@ def make_payment_request(**args):
"payment_request_type": args.get("payment_request_type"),
"currency": ref_doc.currency,
"grand_total": grand_total,
"email_to": args.recipient_id or "",
"email_to": args.recipient_id or ref_doc.owner,
"subject": _("Payment Request for {0}").format(args.dn),
"message": gateway_account.get("message") or get_dummy_message(ref_doc),
"reference_doctype": args.dt,
"reference_name": args.dn,
"party_type": args.get("party_type"),
"party": args.get("party"),
"party_type": args.get("party_type") or "Customer",
"party": args.get("party") or ref_doc.get("customer"),
"bank_account": bank_account
})
@@ -350,13 +350,13 @@ def get_amount(ref_doc):
if dt in ["Sales Order", "Purchase Order"]:
grand_total = flt(ref_doc.grand_total) - flt(ref_doc.advance_paid)
if dt in ["Sales Invoice", "Purchase Invoice"]:
elif dt in ["Sales Invoice", "Purchase Invoice"]:
if ref_doc.party_account_currency == ref_doc.currency:
grand_total = flt(ref_doc.outstanding_amount)
else:
grand_total = flt(ref_doc.outstanding_amount) / ref_doc.conversion_rate
if dt == "Fees":
elif dt == "Fees":
grand_total = ref_doc.outstanding_amount
if grand_total > 0 :
@@ -373,6 +373,7 @@ def get_existing_payment_request_amount(ref_dt, ref_dn):
reference_doctype = %s
and reference_name = %s
and docstatus = 1
and status != 'Paid'
""", (ref_dt, ref_dn))
return flt(existing_payment_request_amount[0][0]) if existing_payment_request_amount else 0
@@ -414,17 +415,31 @@ def make_payment_entry(docname):
doc = frappe.get_doc("Payment Request", docname)
return doc.create_payment_entry(submit=False).as_dict()
def make_status_as_paid(doc, method):
def update_payment_req_status(doc, method):
from erpnext.accounts.doctype.payment_entry.payment_entry import get_reference_details
for ref in doc.references:
payment_request_name = frappe.db.get_value("Payment Request",
{"reference_doctype": ref.reference_doctype, "reference_name": ref.reference_name,
"docstatus": 1})
if payment_request_name:
doc = frappe.get_doc("Payment Request", payment_request_name)
if doc.status != "Paid":
doc.db_set('status', 'Paid')
frappe.db.commit()
ref_details = get_reference_details(ref.reference_doctype, ref.reference_name, doc.party_account_currency)
pay_req_doc = frappe.get_doc('Payment Request', payment_request_name)
status = pay_req_doc.status
if status != "Paid" and not ref_details.outstanding_amount:
status = 'Paid'
elif status != "Partially Paid" and ref_details.outstanding_amount != ref_details.total_amount:
status = 'Partially Paid'
elif ref_details.outstanding_amount == ref_details.total_amount:
if pay_req_doc.payment_request_type == 'Outward':
status = 'Initiated'
elif pay_req_doc.payment_request_type == 'Inward':
status = 'Requested'
pay_req_doc.db_set('status', status)
frappe.db.commit()
def get_dummy_message(doc):
return frappe.render_template("""{% if doc.contact_person -%}
@@ -474,4 +489,4 @@ def make_payment_order(source_name, target_doc=None):
}
}, target_doc, set_missing_values)
return doclist
return doclist

View File

@@ -4,14 +4,20 @@ frappe.listview_settings['Payment Request'] = {
if(doc.status == "Draft") {
return [__("Draft"), "darkgrey", "status,=,Draft"];
}
if(doc.status == "Requested") {
return [__("Requested"), "green", "status,=,Requested"];
}
else if(doc.status == "Initiated") {
return [__("Initiated"), "green", "status,=,Initiated"];
}
else if(doc.status == "Partially Paid") {
return [__("Partially Paid"), "orange", "status,=,Partially Paid"];
}
else if(doc.status == "Paid") {
return [__("Paid"), "blue", "status,=,Paid"];
}
else if(doc.status == "Cancelled") {
return [__("Cancelled"), "orange", "status,=,Cancelled"];
return [__("Cancelled"), "red", "status,=,Cancelled"];
}
}
}

View File

@@ -101,6 +101,23 @@ class TestPaymentRequest(unittest.TestCase):
self.assertEqual(expected_gle[gle.account][2], gle.credit)
self.assertEqual(expected_gle[gle.account][3], gle.against_voucher)
def test_status(self):
si_usd = create_sales_invoice(customer="_Test Customer USD", debit_to="_Test Receivable USD - _TC",
currency="USD", conversion_rate=50)
pr = make_payment_request(dt="Sales Invoice", dn=si_usd.name, recipient_id="saurabh@erpnext.com",
mute_email=1, payment_gateway="_Test Gateway - USD", submit_doc=1, return_doc=1)
pe = pr.create_payment_entry()
pr.load_from_db()
self.assertEqual(pr.status, 'Paid')
pe.cancel()
pr.load_from_db()
self.assertEqual(pr.status, 'Requested')
def test_multiple_payment_entries_against_sales_order(self):
# Make Sales Order, grand_total = 1000
so = make_sales_order()

View File

@@ -1,243 +1,82 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "",
"beta": 0,
"creation": "2017-08-10 15:38:00.080575",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"actions": [],
"creation": "2017-08-10 15:38:00.080575",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"payment_term",
"description",
"due_date",
"invoice_portion",
"payment_amount",
"mode_of_payment",
"paid_amount"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fieldname": "payment_term",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Payment Term",
"length": 0,
"no_copy": 0,
"options": "Payment Term",
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"columns": 2,
"fieldname": "payment_term",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Payment Term",
"options": "Payment Term",
"print_hide": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fetch_from": "",
"fieldname": "description",
"fieldtype": "Small Text",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Description",
"length": 0,
"no_copy": 0,
"options": "",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"columns": 2,
"fieldname": "description",
"fieldtype": "Small Text",
"in_list_view": 1,
"label": "Description"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fieldname": "due_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Due Date",
"length": 0,
"no_copy": 0,
"options": "",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"columns": 2,
"fieldname": "due_date",
"fieldtype": "Date",
"in_list_view": 1,
"label": "Due Date",
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fetch_from": "",
"fieldname": "invoice_portion",
"fieldtype": "Percent",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Invoice Portion",
"length": 0,
"no_copy": 0,
"options": "",
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"columns": 2,
"fieldname": "invoice_portion",
"fieldtype": "Percent",
"in_list_view": 1,
"label": "Invoice Portion",
"print_hide": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fieldname": "payment_amount",
"fieldtype": "Currency",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Payment Amount",
"length": 0,
"no_copy": 0,
"options": "currency",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"columns": 2,
"fieldname": "payment_amount",
"fieldtype": "Currency",
"in_list_view": 1,
"label": "Payment Amount",
"options": "currency",
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "mode_of_payment",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Mode of Payment",
"length": 0,
"no_copy": 0,
"options": "Mode of Payment",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"fieldname": "mode_of_payment",
"fieldtype": "Link",
"label": "Mode of Payment",
"options": "Mode of Payment"
},
{
"fieldname": "paid_amount",
"fieldtype": "Currency",
"label": "Paid Amount"
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2018-09-06 17:35:44.580209",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Schedule",
"name_case": "",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0,
"track_views": 0
],
"istable": 1,
"links": [],
"modified": "2020-03-13 17:58:24.729526",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Schedule",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -1,164 +1,84 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 1,
"allow_rename": 1,
"autoname": "field:template_name",
"beta": 0,
"creation": "2017-08-10 15:34:28.058054",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"actions": [],
"allow_import": 1,
"allow_rename": 1,
"autoname": "field:template_name",
"creation": "2017-08-10 15:34:28.058054",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"template_name",
"allocate_payment_based_on_payment_terms",
"terms"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "template_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Template Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
"fieldname": "template_name",
"fieldtype": "Data",
"label": "Template Name",
"unique": 1
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "terms",
"fieldtype": "Table",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Payment Terms",
"length": 0,
"no_copy": 0,
"options": "Payment Terms Template Detail",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
"fieldname": "terms",
"fieldtype": "Table",
"label": "Payment Terms",
"options": "Payment Terms Template Detail",
"reqd": 1
},
{
"default": "0",
"description": "If this checkbox is checked, paid amount will be splitted and allocated as per the amounts in payment schedule against each payment term",
"fieldname": "allocate_payment_based_on_payment_terms",
"fieldtype": "Check",
"label": "Allocate Payment Based On Payment Terms"
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-01-24 11:13:31.158613",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Terms Template",
"name_case": "",
"owner": "Administrator",
],
"links": [],
"modified": "2020-04-01 15:35:18.112619",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Terms Template",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"share": 1,
"write": 1
},
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts User",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts User",
"share": 1,
"write": 1
},
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager",
"share": 1,
"write": 1
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
],
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -1,283 +1,95 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "ACC-PCV-.YYYY.-.#####",
"beta": 0,
"creation": "2013-01-10 16:34:07",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"editable_grid": 0,
"engine": "InnoDB",
"actions": [],
"autoname": "ACC-PCV-.YYYY.-.#####",
"creation": "2013-01-10 16:34:07",
"doctype": "DocType",
"engine": "InnoDB",
"field_order": [
"transaction_date",
"posting_date",
"fiscal_year",
"amended_from",
"company",
"cost_center_wise_pnl",
"column_break1",
"closing_account_head",
"remarks"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "transaction_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Transaction Date",
"length": 0,
"no_copy": 0,
"oldfieldname": "transaction_date",
"oldfieldtype": "Date",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "transaction_date",
"fieldtype": "Date",
"label": "Transaction Date",
"oldfieldname": "transaction_date",
"oldfieldtype": "Date"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "posting_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Posting Date",
"length": 0,
"no_copy": 0,
"oldfieldname": "posting_date",
"oldfieldtype": "Date",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "posting_date",
"fieldtype": "Date",
"label": "Posting Date",
"oldfieldname": "posting_date",
"oldfieldtype": "Date",
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "fiscal_year",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Closing Fiscal Year",
"length": 0,
"no_copy": 0,
"oldfieldname": "fiscal_year",
"oldfieldtype": "Select",
"options": "Fiscal Year",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "fiscal_year",
"fieldtype": "Link",
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Closing Fiscal Year",
"oldfieldname": "fiscal_year",
"oldfieldtype": "Select",
"options": "Fiscal Year",
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "amended_from",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 1,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Amended From",
"length": 0,
"no_copy": 1,
"oldfieldname": "amended_from",
"oldfieldtype": "Data",
"options": "Period Closing Voucher",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "amended_from",
"fieldtype": "Link",
"ignore_user_permissions": 1,
"label": "Amended From",
"no_copy": 1,
"oldfieldname": "amended_from",
"oldfieldtype": "Data",
"options": "Period Closing Voucher",
"read_only": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "company",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Company",
"length": 0,
"no_copy": 0,
"oldfieldname": "company",
"oldfieldtype": "Select",
"options": "Company",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "company",
"fieldtype": "Link",
"label": "Company",
"oldfieldname": "company",
"oldfieldtype": "Select",
"options": "Company",
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break1",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"oldfieldtype": "Column Break",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"fieldname": "column_break1",
"fieldtype": "Column Break",
"oldfieldtype": "Column Break"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"description": "The account head under Liability or Equity, in which Profit/Loss will be booked",
"fieldname": "closing_account_head",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Closing Account Head",
"length": 0,
"no_copy": 0,
"oldfieldname": "closing_account_head",
"oldfieldtype": "Link",
"options": "Account",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
"description": "The account head under Liability or Equity, in which Profit/Loss will be booked",
"fieldname": "closing_account_head",
"fieldtype": "Link",
"label": "Closing Account Head",
"oldfieldname": "closing_account_head",
"oldfieldtype": "Link",
"options": "Account",
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "remarks",
"fieldtype": "Small Text",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Remarks",
"length": 0,
"no_copy": 0,
"oldfieldname": "remarks",
"oldfieldtype": "Small Text",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"fieldname": "remarks",
"fieldtype": "Small Text",
"label": "Remarks",
"oldfieldname": "remarks",
"oldfieldtype": "Small Text",
"reqd": 1
},
{
"default": "0",
"fieldname": "cost_center_wise_pnl",
"fieldtype": "Check",
"label": "Book Cost Center-Wise Profit/Loss"
}
],
"has_web_view": 0,
@@ -291,60 +103,43 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-08-21 16:15:49.089450",
"modified": "2021-05-20 15:27:37.210458",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Period Closing Voucher",
"owner": "jai@webnotestech.com",
"permissions": [
{
"amend": 1,
"cancel": 1,
"create": 1,
"delete": 1,
"email": 1,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 1,
"amend": 1,
"cancel": 1,
"create": 1,
"delete": 1,
"email": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"share": 1,
"submit": 1,
"write": 1
},
},
{
"amend": 1,
"cancel": 1,
"create": 1,
"delete": 1,
"email": 1,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 1,
"amend": 1,
"cancel": 1,
"create": 1,
"delete": 1,
"email": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager",
"share": 1,
"submit": 1,
"write": 1
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"search_fields": "posting_date, fiscal_year",
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"title_field": "closing_account_head",
"track_changes": 0,
"track_seen": 0,
"track_views": 0
],
"search_fields": "posting_date, fiscal_year",
"sort_field": "modified",
"sort_order": "DESC",
"title_field": "closing_account_head"
}

View File

@@ -7,6 +7,8 @@ from frappe.utils import flt
from frappe import _
from erpnext.accounts.utils import get_account_currency
from erpnext.controllers.accounts_controller import AccountsController
from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import (get_accounting_dimensions,
get_dimension_filters)
class PeriodClosingVoucher(AccountsController):
def validate(self):
@@ -48,51 +50,99 @@ class PeriodClosingVoucher(AccountsController):
def make_gl_entries(self):
gl_entries = []
net_pl_balance = 0
net_pl_balance = 0
pl_accounts = self.get_pl_balances()
for acc in pl_accounts:
if flt(acc.balance_in_company_currency):
if flt(acc.bal_in_company_currency):
gl_entries.append(self.get_gl_dict({
"account": acc.account,
"cost_center": acc.cost_center,
"account_currency": acc.account_currency,
"debit_in_account_currency": abs(flt(acc.balance_in_account_currency)) \
if flt(acc.balance_in_account_currency) < 0 else 0,
"debit": abs(flt(acc.balance_in_company_currency)) \
if flt(acc.balance_in_company_currency) < 0 else 0,
"credit_in_account_currency": abs(flt(acc.balance_in_account_currency)) \
if flt(acc.balance_in_account_currency) > 0 else 0,
"credit": abs(flt(acc.balance_in_company_currency)) \
if flt(acc.balance_in_company_currency) > 0 else 0
}))
"debit_in_account_currency": abs(flt(acc.bal_in_account_currency)) if flt(acc.bal_in_account_currency) < 0 else 0,
"debit": abs(flt(acc.bal_in_company_currency)) if flt(acc.bal_in_company_currency) < 0 else 0,
"credit_in_account_currency": abs(flt(acc.bal_in_account_currency)) if flt(acc.bal_in_account_currency) > 0 else 0,
"credit": abs(flt(acc.bal_in_company_currency)) if flt(acc.bal_in_company_currency) > 0 else 0
}, item=acc))
net_pl_balance += flt(acc.balance_in_company_currency)
net_pl_balance += flt(acc.bal_in_company_currency)
if net_pl_balance:
cost_center = frappe.db.get_value("Company", self.company, "cost_center")
gl_entries.append(self.get_gl_dict({
"account": self.closing_account_head,
"debit_in_account_currency": abs(net_pl_balance) if net_pl_balance > 0 else 0,
"debit": abs(net_pl_balance) if net_pl_balance > 0 else 0,
"credit_in_account_currency": abs(net_pl_balance) if net_pl_balance < 0 else 0,
"credit": abs(net_pl_balance) if net_pl_balance < 0 else 0,
"cost_center": cost_center
}))
if self.cost_center_wise_pnl:
costcenter_wise_gl_entries = self.get_costcenter_wise_pnl_gl_entries(pl_accounts)
gl_entries += costcenter_wise_gl_entries
else:
gl_entry = self.get_pnl_gl_entry(net_pl_balance)
gl_entries.append(gl_entry)
from erpnext.accounts.general_ledger import make_gl_entries
make_gl_entries(gl_entries)
def get_pnl_gl_entry(self, net_pl_balance):
cost_center = frappe.db.get_value("Company", self.company, "cost_center")
gl_entry = self.get_gl_dict({
"account": self.closing_account_head,
"debit_in_account_currency": abs(net_pl_balance) if net_pl_balance > 0 else 0,
"debit": abs(net_pl_balance) if net_pl_balance > 0 else 0,
"credit_in_account_currency": abs(net_pl_balance) if net_pl_balance < 0 else 0,
"credit": abs(net_pl_balance) if net_pl_balance < 0 else 0,
"cost_center": cost_center
})
self.update_default_dimensions(gl_entry)
return gl_entry
def get_costcenter_wise_pnl_gl_entries(self, pl_accounts):
company_cost_center = frappe.db.get_value("Company", self.company, "cost_center")
gl_entries = []
for acc in pl_accounts:
if flt(acc.bal_in_company_currency):
gl_entry = self.get_gl_dict({
"account": self.closing_account_head,
"cost_center": acc.cost_center or company_cost_center,
"account_currency": acc.account_currency,
"debit_in_account_currency": abs(flt(acc.bal_in_account_currency)) if flt(acc.bal_in_account_currency) > 0 else 0,
"debit": abs(flt(acc.bal_in_company_currency)) if flt(acc.bal_in_company_currency) > 0 else 0,
"credit_in_account_currency": abs(flt(acc.bal_in_account_currency)) if flt(acc.bal_in_account_currency) < 0 else 0,
"credit": abs(flt(acc.bal_in_company_currency)) if flt(acc.bal_in_company_currency) < 0 else 0
}, item=acc)
self.update_default_dimensions(gl_entry)
gl_entries.append(gl_entry)
return gl_entries
def update_default_dimensions(self, gl_entry):
if not self.accounting_dimensions:
self.accounting_dimensions = get_accounting_dimensions()
_, default_dimensions = get_dimension_filters()
for dimension in self.accounting_dimensions:
gl_entry.update({
dimension: default_dimensions.get(self.company, {}).get(dimension)
})
def get_pl_balances(self):
"""Get balance for pl accounts"""
"""Get balance for dimension-wise pl accounts"""
dimension_fields = ['t1.cost_center']
self.accounting_dimensions = get_accounting_dimensions()
for dimension in self.accounting_dimensions:
dimension_fields.append('t1.{0}'.format(dimension))
return frappe.db.sql("""
select
t1.account, t1.cost_center, t2.account_currency,
sum(t1.debit_in_account_currency) - sum(t1.credit_in_account_currency) as balance_in_account_currency,
sum(t1.debit) - sum(t1.credit) as balance_in_company_currency
t1.account, t2.account_currency, {dimension_fields},
sum(t1.debit_in_account_currency) - sum(t1.credit_in_account_currency) as bal_in_account_currency,
sum(t1.debit) - sum(t1.credit) as bal_in_company_currency
from `tabGL Entry` t1, `tabAccount` t2
where t1.account = t2.name and t2.report_type = 'Profit and Loss'
and t2.docstatus < 2 and t2.company = %s
and t1.posting_date between %s and %s
group by t1.account, t1.cost_center
""", (self.company, self.get("year_start_date"), self.posting_date), as_dict=1)
group by t1.account, {dimension_fields}
""".format(dimension_fields = ', '.join(dimension_fields)), (self.company, self.get("year_start_date"), self.posting_date), as_dict=1)

View File

@@ -8,6 +8,7 @@ import frappe
from frappe.utils import flt, today
from erpnext.accounts.utils import get_fiscal_year, now
from erpnext.accounts.doctype.journal_entry.test_journal_entry import make_journal_entry
from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
class TestPeriodClosingVoucher(unittest.TestCase):
def test_closing_entry(self):
@@ -65,6 +66,58 @@ class TestPeriodClosingVoucher(unittest.TestCase):
self.assertEqual(gle_for_random_expense_account[0].amount_in_account_currency,
-1*random_expense_account[0].balance_in_account_currency)
def test_cost_center_wise_posting(self):
frappe.db.sql("delete from `tabGL Entry` where company='Test PCV Company'")
company = create_company()
surplus_account = create_account()
cost_center1 = create_cost_center("Test Cost Center 1")
cost_center2 = create_cost_center("Test Cost Center 2")
create_sales_invoice(
company=company,
cost_center=cost_center1,
income_account="Sales - TPC",
expense_account="Cost of Goods Sold - TPC",
rate=400,
debit_to="Debtors - TPC"
)
create_sales_invoice(
company=company,
cost_center=cost_center2,
income_account="Sales - TPC",
expense_account="Cost of Goods Sold - TPC",
rate=200,
debit_to="Debtors - TPC"
)
pcv = frappe.get_doc({
"transaction_date": today(),
"posting_date": today(),
"fiscal_year": get_fiscal_year(today())[0],
"company": "Test PCV Company",
"cost_center_wise_pnl": 1,
"closing_account_head": surplus_account,
"remarks": "Test",
"doctype": "Period Closing Voucher"
})
pcv.insert()
pcv.submit()
expected_gle = (
('Sales - TPC', 200.0, 0.0, cost_center2),
(surplus_account, 0.0, 200.0, cost_center2),
('Sales - TPC', 400.0, 0.0, cost_center1),
(surplus_account, 0.0, 400.0, cost_center1)
)
pcv_gle = frappe.db.sql("""
select account, debit, credit, cost_center from `tabGL Entry` where voucher_no=%s
""", (pcv.name))
self.assertTrue(pcv_gle, expected_gle)
def make_period_closing_voucher(self):
pcv = frappe.get_doc({
"doctype": "Period Closing Voucher",
@@ -80,6 +133,38 @@ class TestPeriodClosingVoucher(unittest.TestCase):
return pcv
def create_company():
company = frappe.get_doc({
'doctype': 'Company',
'company_name': "Test PCV Company",
'country': 'United States',
'default_currency': 'USD'
})
company.insert(ignore_if_duplicate = True)
return company.name
def create_account():
account = frappe.get_doc({
"account_name": "Reserve and Surplus",
"is_group": 0,
"company": "Test PCV Company",
"root_type": "Liability",
"report_type": "Balance Sheet",
"account_currency": "USD",
"parent_account": "Current Liabilities - TPC",
"doctype": "Account"
}).insert(ignore_if_duplicate = True)
return account.name
def create_cost_center(cc_name):
costcenter = frappe.get_doc({
"company": "Test PCV Company",
"cost_center_name": cc_name,
"doctype": "Cost Center",
"parent_cost_center": "Test PCV Company - TPC"
})
costcenter.insert(ignore_if_duplicate = True)
return costcenter.name
test_dependencies = ["Customer", "Cost Center"]
test_records = frappe.get_test_records("Period Closing Voucher")

View File

@@ -1,8 +1,10 @@
{
"actions": [],
"allow_rename": 1,
"autoname": "Prompt",
"creation": "2013-05-24 12:15:51",
"doctype": "DocType",
"engine": "InnoDB",
"field_order": [
"disabled",
"section_break_2",
@@ -21,6 +23,7 @@
"allow_user_to_edit_discount",
"allow_print_before_pay",
"display_items_in_stock",
"hide_unavailable_items",
"section_break_15",
"applicable_for_users",
"section_break_11",
@@ -50,6 +53,7 @@
"income_account",
"expense_account",
"taxes_and_charges",
"tax_category",
"apply_discount_on",
"accounting_dimensions_section",
"cost_center",
@@ -381,11 +385,24 @@
{
"fieldname": "dimension_col_break",
"fieldtype": "Column Break"
},
{
"fieldname": "tax_category",
"fieldtype": "Link",
"label": "Tax Category",
"options": "Tax Category"
},
{
"default": "0",
"fieldname": "hide_unavailable_items",
"fieldtype": "Check",
"label": "Hide Unavailable Items"
}
],
"icon": "icon-cog",
"idx": 1,
"modified": "2019-05-25 22:56:30.352693",
"links": [],
"modified": "2020-10-16 04:33:57.283873",
"modified_by": "Administrator",
"module": "Accounts",
"name": "POS Profile",

View File

@@ -115,6 +115,8 @@ def get_item_groups(pos_profile):
def get_series():
return frappe.get_meta("Sales Invoice").get_field("naming_series").options or ""
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs
def pos_profile_query(doctype, txt, searchfield, start, page_len, filters):
user = frappe.session['user']
company = filters.get('company') or frappe.defaults.get_user_default('company')

View File

@@ -15,12 +15,12 @@ class TestPOSProfile(unittest.TestCase):
pos_profile = get_pos_profile("_Test Company") or {}
if pos_profile:
doc = frappe.get_doc("POS Profile", pos_profile.get("name"))
doc.append('item_groups', {'item_group': '_Test Item Group'})
doc.append('customer_groups', {'customer_group': '_Test Customer Group'})
doc.set('item_groups', [{'item_group': '_Test Item Group'}])
doc.set('customer_groups', [{'customer_group': '_Test Customer Group'}])
doc.save()
items = get_items_list(doc, doc.company)
customers = get_customers_list(doc)
products_count = frappe.db.sql(""" select count(name) from tabItem where item_group = '_Test Item Group'""", as_list=1)
customers_count = frappe.db.sql(""" select count(name) from tabCustomer where customer_group = '_Test Customer Group'""")
@@ -29,27 +29,29 @@ class TestPOSProfile(unittest.TestCase):
frappe.db.sql("delete from `tabPOS Profile`")
def make_pos_profile():
def make_pos_profile(**args):
frappe.db.sql("delete from `tabPOS Profile`")
args = frappe._dict(args)
pos_profile = frappe.get_doc({
"company": "_Test Company",
"cost_center": "_Test Cost Center - _TC",
"currency": "INR",
"company": args.company or "_Test Company",
"cost_center": args.cost_center or "_Test Cost Center - _TC",
"currency": args.currency or "INR",
"doctype": "POS Profile",
"expense_account": "_Test Account Cost for Goods Sold - _TC",
"income_account": "Sales - _TC",
"name": "_Test POS Profile",
"expense_account": args.expense_account or "_Test Account Cost for Goods Sold - _TC",
"income_account": args.income_account or "Sales - _TC",
"name": args.name or "_Test POS Profile",
"naming_series": "_T-POS Profile-",
"selling_price_list": "_Test Price List",
"territory": "_Test Territory",
"selling_price_list": args.selling_price_list or "_Test Price List",
"territory": args.territory or "_Test Territory",
"customer_group": frappe.db.get_value('Customer Group', {'is_group': 0}, 'name'),
"warehouse": "_Test Warehouse - _TC",
"write_off_account": "_Test Write Off - _TC",
"write_off_cost_center": "_Test Write Off Cost Center - _TC"
"warehouse": args.warehouse or "_Test Warehouse - _TC",
"write_off_account": args.write_off_account or "_Test Write Off - _TC",
"write_off_cost_center": args.write_off_cost_center or "_Test Write Off Cost Center - _TC"
})
if not frappe.db.exists("POS Profile", "_Test POS Profile"):
if not frappe.db.exists("POS Profile", args.name or "_Test POS Profile"):
pos_profile.insert()
return pos_profile

View File

@@ -1,123 +1,39 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"creation": "2017-10-27 16:46:06.060930",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"actions": [],
"creation": "2017-10-27 16:46:06.060930",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"default",
"user"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "default",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Default",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
"default": "0",
"fieldname": "default",
"fieldtype": "Check",
"in_list_view": 1,
"label": "Default"
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "user",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "User",
"length": 0,
"no_copy": 0,
"options": "User",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
"fieldname": "user",
"fieldtype": "Link",
"in_list_view": 1,
"label": "User",
"options": "User"
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2017-11-23 17:13:16.005475",
"modified_by": "Administrator",
"module": "Accounts",
"name": "POS Profile User",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
],
"istable": 1,
"links": [],
"modified": "2020-10-16 04:33:27.594859",
"modified_by": "Administrator",
"module": "Accounts",
"name": "POS Profile User",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -389,8 +389,7 @@
"fieldname": "rate_or_discount",
"fieldtype": "Select",
"label": "Rate or Discount",
"options": "\nRate\nDiscount Percentage\nDiscount Amount",
"reqd": 1
"options": "\nRate\nDiscount Percentage\nDiscount Amount"
},
{
"default": "Grand Total",
@@ -405,6 +404,7 @@
"fieldtype": "Column Break"
},
{
"default": "0",
"depends_on": "eval:doc.rate_or_discount==\"Rate\"",
"fieldname": "rate",
"fieldtype": "Currency",
@@ -439,19 +439,20 @@
},
{
"default": "0",
"depends_on": "eval:!doc.mixed_conditions",
"depends_on": "eval:!doc.mixed_conditions && doc.apply_on != 'Transaction'",
"fieldname": "same_item",
"fieldtype": "Check",
"label": "Same Item"
},
{
"depends_on": "eval:!doc.same_item || doc.mixed_conditions",
"depends_on": "eval:(!doc.same_item || doc.apply_on == 'Transaction') || doc.mixed_conditions",
"fieldname": "free_item",
"fieldtype": "Link",
"label": "Free Item",
"options": "Item"
},
{
"default": "0",
"fieldname": "free_qty",
"fieldtype": "Float",
"label": "Qty"
@@ -467,6 +468,7 @@
"options": "UOM"
},
{
"description": "If rate is zero them item will be treated as \"Free Item\"",
"fieldname": "free_item_rate",
"fieldtype": "Currency",
"label": "Rate"
@@ -554,7 +556,8 @@
],
"icon": "fa fa-gift",
"idx": 1,
"modified": "2019-10-15 12:39:40.399792",
"links": [],
"modified": "2020-12-04 00:36:24.698219",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Pricing Rule",

View File

@@ -17,6 +17,8 @@ from six import string_types
apply_on_dict = {"Item Code": "items",
"Item Group": "item_groups", "Brand": "brands"}
other_fields = ["other_item_code", "other_item_group", "other_brand"]
class PricingRule(Document):
def validate(self):
self.validate_mandatory()
@@ -34,6 +36,9 @@ class PricingRule(Document):
def validate_duplicate_apply_on(self):
field = apply_on_dict.get(self.apply_on)
if not field:
return False
values = [d.get(frappe.scrub(self.apply_on)) for d in self.get(field)]
if len(values) != len(set(values)):
@@ -44,9 +49,20 @@ class PricingRule(Document):
if self.apply_on == apply_on and len(self.get(field) or []) < 1:
throw(_("{0} is not added in the table").format(apply_on), frappe.MandatoryError)
tocheck = frappe.scrub(self.get("applicable_for", ""))
if tocheck and not self.get(tocheck):
throw(_("{0} is required").format(self.meta.get_label(tocheck)), frappe.MandatoryError)
if self.get("applicable_for", "") is not None:
tocheck = frappe.scrub(self.get("applicable_for", ""))
if tocheck and not self.get(tocheck):
throw(_("{0} is required").format(self.meta.get_label(tocheck)), frappe.MandatoryError)
if self.apply_rule_on_other:
o_field = 'other_' + frappe.scrub(self.apply_rule_on_other)
if not self.get(o_field) and o_field in other_fields:
frappe.throw(_("For the 'Apply Rule On Other' condition the field {0} is mandatory")
.format(frappe.bold(self.apply_rule_on_other)))
if self.price_or_product_discount == 'Price' and not self.rate_or_discount:
throw(_("Rate or Discount is required for the price discount."), frappe.MandatoryError)
def validate_applicable_for_selling_or_buying(self):
if not self.selling and not self.buying:
@@ -78,13 +94,27 @@ class PricingRule(Document):
for f in options:
if not f: continue
f = frappe.scrub(f)
if f!=fieldname:
self.set(f, None)
scrubbed_f = frappe.scrub(f)
if logic_field == 'apply_on':
apply_on_f = apply_on_dict.get(f, f)
else:
apply_on_f = scrubbed_f
if scrubbed_f != fieldname:
self.set(apply_on_f, None)
if self.mixed_conditions and self.get("same_item"):
self.same_item = 0
apply_rule_on_other = frappe.scrub(self.apply_rule_on_other or "")
cleanup_other_fields = (other_fields if not apply_rule_on_other
else [o_field for o_field in other_fields if o_field != 'other_' + apply_rule_on_other])
for other_field in cleanup_other_fields:
self.set(other_field, None)
def validate_rate_or_discount(self):
for field in ["Rate"]:
if flt(self.get(frappe.scrub(field))) < 0:
@@ -97,11 +127,11 @@ class PricingRule(Document):
self.same_item = 1
def validate_max_discount(self):
if self.rate_or_discount == "Discount Percentage" and self.items:
if self.rate_or_discount == "Discount Percentage" and self.get("items"):
for d in self.items:
max_discount = frappe.get_cached_value("Item", d.item_code, "max_discount")
if max_discount and flt(self.discount_percentage) > flt(max_discount):
throw(_("Max discount allowed for item: {0} is {1}%").format(self.item_code, max_discount))
throw(_("Max discount allowed for item: {0} is {1}%").format(d.item_code, max_discount))
def validate_price_list_with_currency(self):
if self.currency and self.for_price_list:
@@ -183,7 +213,7 @@ def get_serial_no_for_item(args):
def get_pricing_rule_for_item(args, price_list_rate=0, doc=None, for_validate=False):
from erpnext.accounts.doctype.pricing_rule.utils import (get_pricing_rules,
get_applied_pricing_rules, get_pricing_rule_items)
get_applied_pricing_rules, get_pricing_rule_items, get_product_discount_rule)
if isinstance(doc, string_types):
doc = json.loads(doc)
@@ -212,7 +242,7 @@ def get_pricing_rule_for_item(args, price_list_rate=0, doc=None, for_validate=Fa
update_args_for_pricing_rule(args)
pricing_rules = (get_applied_pricing_rules(args)
pricing_rules = (get_applied_pricing_rules(args.get('pricing_rules'))
if for_validate and args.get("pricing_rules") else get_pricing_rules(args, doc))
if pricing_rules:
@@ -235,20 +265,23 @@ def get_pricing_rule_for_item(args, price_list_rate=0, doc=None, for_validate=Fa
if pricing_rule.mixed_conditions or pricing_rule.apply_rule_on_other:
item_details.update({
'apply_rule_on_other_items': json.dumps(pricing_rule.apply_rule_on_other_items),
'price_or_product_discount': pricing_rule.price_or_product_discount,
'apply_rule_on': (frappe.scrub(pricing_rule.apply_rule_on_other)
if pricing_rule.apply_rule_on_other else frappe.scrub(pricing_rule.get('apply_on')))
})
if pricing_rule.coupon_code_based==1 and args.coupon_code==None:
return item_details
if (not pricing_rule.validate_applied_rule and
pricing_rule.price_or_product_discount == "Price"):
apply_price_discount_pricing_rule(pricing_rule, item_details, args)
if not pricing_rule.validate_applied_rule:
if pricing_rule.price_or_product_discount == "Price":
apply_price_discount_rule(pricing_rule, item_details, args)
else:
get_product_discount_rule(pricing_rule, item_details, args, doc)
item_details.has_pricing_rule = 1
item_details.pricing_rules = ','.join([d.pricing_rule for d in rules])
item_details.pricing_rules = frappe.as_json([d.pricing_rule for d in rules])
if not doc: return item_details
@@ -294,23 +327,33 @@ def get_pricing_rule_details(args, pricing_rule):
'child_docname': args.get('child_docname')
})
def apply_price_discount_pricing_rule(pricing_rule, item_details, args):
def apply_price_discount_rule(pricing_rule, item_details, args):
item_details.pricing_rule_for = pricing_rule.rate_or_discount
if ((pricing_rule.margin_type == 'Amount' and pricing_rule.currency == args.currency)
or (pricing_rule.margin_type == 'Percentage')):
item_details.margin_type = pricing_rule.margin_type
item_details.margin_rate_or_amount = pricing_rule.margin_rate_or_amount
else:
item_details.margin_type = None
item_details.margin_rate_or_amount = 0.0
for apply_on in ['Percentage', 'Amount']:
if pricing_rule.margin_type != apply_on:
continue
field = 'margin_rate_or_amount'
if field not in item_details:
item_details.setdefault(field, 0)
item_details.setdefault('margin_type', apply_on)
item_details[field] += (pricing_rule.get(field, 0)
if pricing_rule else args.get(field, 0))
if pricing_rule.rate_or_discount == 'Rate':
pricing_rule_rate = 0.0
if pricing_rule.currency == args.currency:
pricing_rule_rate = pricing_rule.rate
if pricing_rule_rate:
# Override already set price list rate (from item price)
# if pricing_rule_rate > 0
item_details.update({
"price_list_rate": pricing_rule_rate * args.get("conversion_factor", 1),
})
item_details.update({
"price_list_rate": pricing_rule_rate * args.get("conversion_factor", 1),
"discount_percentage": 0.0
})
@@ -337,8 +380,10 @@ def set_discount_amount(rate, item_details):
item_details.rate = rate
def remove_pricing_rule_for_item(pricing_rules, item_details, item_code=None):
from erpnext.accounts.doctype.pricing_rule.utils import get_pricing_rule_items
for d in pricing_rules.split(','):
from erpnext.accounts.doctype.pricing_rule.utils import (get_applied_pricing_rules,
get_pricing_rule_items)
for d in get_applied_pricing_rules(pricing_rules):
if not d or not frappe.db.exists("Pricing Rule", d): continue
pricing_rule = frappe.get_cached_doc('Pricing Rule', d)
@@ -361,7 +406,8 @@ def remove_pricing_rule_for_item(pricing_rules, item_details, item_code=None):
items = get_pricing_rule_items(pricing_rule)
item_details.apply_on = (frappe.scrub(pricing_rule.apply_rule_on_other)
if pricing_rule.apply_rule_on_other else frappe.scrub(pricing_rule.get('apply_on')))
item_details.applied_on_items = ','.join(items)
item_details.applied_on_items = json.dumps(items)
item_details.price_or_product_discount = pricing_rule.price_or_product_discount
item_details.pricing_rules = ''
@@ -404,14 +450,15 @@ def make_pricing_rule(doctype, docname):
return doc
@frappe.whitelist()
@frappe.validate_and_sanitize_search_inputs
def get_item_uoms(doctype, txt, searchfield, start, page_len, filters):
items = [filters.get('value')]
if filters.get('apply_on') != 'Item Code':
field = frappe.scrub(filters.get('apply_on'))
items = [d.name for d in frappe.db.get_all("Item", filters={field: filters.get('value')})]
items = frappe.db.sql_list("""select name
from `tabItem` where {0} = %s""".format(field), filters.get('value'))
return frappe.get_all('UOM Conversion Detail',
filters = {'parent': ('in', items), 'uom': ("like", "{0}%".format(txt))},
fields = ["distinct uom"], as_list=1)
return frappe.get_all('UOM Conversion Detail', filters={
'parent': ('in', items),
'uom': ("like", "{0}%".format(txt))
}, fields = ["distinct uom"], as_list=1)

Some files were not shown because too many files have changed in this diff Show More