Compare commits

..

2586 Commits

Author SHA1 Message Date
Saurabh
5049d83a0c Merge branch 'version-13-beta-pre-release' into version-13-beta 2020-12-31 11:52:59 +05:30
Saurabh
08b89d1ce0 bumped to version 13.0.0-beta.8 2020-12-31 12:12:58 +05:50
Saqib
fc7a11e2aa fix (e-invoicing): item & invoice value calculation (#24253) 2020-12-31 11:35:46 +05:30
Karthikeyan S
a25cb9a563 fix(GST E Invoice): update live URLs for adaequare GSP (#24251) 2020-12-30 19:41:00 +05:30
Saurabh
0a4ac4583e Merge branch 'version-13-beta-pre-release' into version-13-beta 2020-12-26 14:55:52 +05:30
Saurabh
d1d030b54a bumped to version 13.0.0-beta.7 2020-12-26 15:15:51 +05:50
Nabin Hait
af1af925ac chore: Added change log (#24213) 2020-12-26 11:09:46 +05:30
Saqib
17e96901db feat: GST E Invoicing (#23455)
* feat: init e-invoice settings

* feat: read public key file

* feat: rsa encryption with public key

* feat: save token and sek from auth request

* chore: handle error response

* feat: AES decryption of SEK with appkey

* feat: decrypt json data with SEK

* feat: make e invoice from erpnext sales invoice

* feat: generate IRN

* feat: decode signed json and QR code

* chore: validations

* feat: cancel IRN

* feat: complete e-invoice schema

* chore: move e-invoice settings to regional

* chore: split einvoice settings and operations

* chore: rename schema to template & js cleanup

* feat: make IRN field on regional setup

* feat: Generate & Cancel IRN from Sales Invoice

* chore: minor fixes

* fix: item discount

* chore: show irn cancelled check after cancellation

* fix: hide cancel irn dialog on error

* fix: public key is required on validate

* fix: cannot find attached key file

* fix: validation if e invoicing is disabled

* fix: do not show generate irn for invalid supply type

* fix: update irn_cancelled after cancelling irn

* chore: show irn field for proper gst_category

* feat: e-way bill details in e-invoice

* fix: save e-way bill no on irn generation

* chore: no copy on e invoice custom fields

* feat: cancel e-way bill before cancelling IRN

* feat: manual download / upload json

* chore: group e-invoicing actions

* fix: fn name

* chore: save signed invoice and qrcode after uplaoding irn

* fix: fetch token if not valid

* chore: move einvoicing stuff to seperate folder

* feat: QRCode Image and E-Invoice Print Format

* fix: bug

* fix: invalid syntax

* chore: code cleanup

* chore: clean up e invoice actions

* fix: download & upload e-invoice

* fix: print format

* fix: validations

* fix: add permissions on regional setup

* feat: add patch

* fix: validate document name

* fix: return date

* fix: credit note einvoice

* fix: validations

* fix: error logging

* fix: e_invoice module not found

* fix: add missing package

* fix: rename e_invoice_utils.py

* fix: einvoice field validation

* fix: patch

* fix: invoice totals calculation

* fix: other charges calculation

* chore: improve document name validation message

* fix: qr code image string

* feat: initialize GSP connector

* chore: remove unwanted fields

* fix: qr code generation

* feat: fetch and cache GSTIN details

* feat: generate & cancel IRN

* feat: cancel eway bill

* chore: remove unwanted fuctions

* chore: clean up einvoice actions

* fix: attach qrcode on irn generation

* fix: generate & cancel IRN

* fix: show/hide eway bill fields

* fix: valiations

* feat: generate eway bill from IRN

* chore: remove unwanted imports

* chore: error logging

* feat: header & footer in GST E Invoice

* chore: remove test pincode

* fix: invalid syntax

* feat: cess non advolem on einvoice item

* chore: remove fetch token from e invocie settings

* fix: imports

* fix: error handling

* feat: update timeline on einvoice actions

* fix: qrcode image size

* fix: exclude intra company transactions

* fix: eway bill test

* fix: ewaybill mandatory conditions

* chore: add tests

* fix: returning condition

* feat: log e-invocing requests

* chore: add ack date and ack no field for print formats

* fix: sider issues

* feat: show e-invoice preview before IRN generation

* fix: use as_list for error message

* fix: minor ux issues

* fix: dialog is undefined

* fix: error handling

* feat: add docs link to e invoice settings

* feat: multiple gstins for e invoicing

* fix: uncomment test condition

* fix: remove test pincode

* fix: cannot cancel irn without submitting sales invoice

* chore: code cleanup

* fix: sider issues

* fix: e invoice request log permissions

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-12-25 20:55:21 +05:30
Nabin Hait
f8c1cb5dc3 fix: Removed permissions from UAE VAT Settings 2020-12-25 20:53:18 +05:30
rohitwaghchaure
49d7499990 fix: added shipment link in delivery note dashboard (#24210)
* fix: added shipment link in delivery note dashboard

* Update shipment.py
2020-12-25 18:15:35 +05:30
rohitwaghchaure
0917c1ec7c fix: travis failing (#24211) 2020-12-25 18:13:12 +05:30
Nabin Hait
327f03566a Reposting fixes pre release (#24203)
* fix: finished item validation and rate

* fix: Check if stock and account balance in sync after reposting

* fix: validate stock accounts in journal entry

* fix: validate expense against budget
2020-12-25 18:11:54 +05:30
rohitwaghchaure
fc01a838b5 Merge pull request #24208 from rohitwaghchaure/fixed-serial-no-return-issue-v13
fix: partial serial no return issue
2020-12-25 13:32:36 +05:30
Rohit Waghchaure
adc369f726 fix: partial serial no return issue 2020-12-25 13:28:47 +05:30
rohitwaghchaure
a4d71d5c7f Merge pull request #24205 from rohitwaghchaure/pricing-rule-not-working-margin-v13-beta
fix: multiple pricing rule with margin type as Percentage is not working
2020-12-25 09:33:22 +05:30
Rohit Waghchaure
ba5b603a0b fix: multiple pricing rule with margin type not working 2020-12-24 22:49:38 +05:30
Rucha Mahabal
9fe7f235d0 fix: Do not cancel reference document on Quality Inspection cancellation (#24198) 2020-12-24 11:03:48 +05:30
Afshan
7b385046b6 Merge pull request #24192 from AfshanKhan/sal-slip-pop-up-error
fix: sal slip popup error
2020-12-23 14:34:37 +05:30
Afshan
adf9b49e14 fix: sal slip popup error 2020-12-23 11:39:38 +05:30
Anurag Mishra
0a1390a7ca fix: leave policy dashboard fix and roles (#24170) 2020-12-22 11:16:36 +05:30
Nabin Hait
bd4bdca6ad feat: Repost item costing (#24183)
* Repost item valuation (#24031)

* feat: Reposting logic for future finished/transferred item

* feat: added fields to identify needs to recalculate rate while reposting

* refactor: Set rate for outgoing and finished items

* refactor: Arranged fields in Stock Entry item table and added fields to identify finished and scrap item

* refactor: Arranged fields in Stock Entry item table and added fields to identify finished and scrap item

* refactor: Get outgoing rate for purchase return

* refactor: Get incoming rate for sales return

* test: Added tests for reposting valuation of transferred/finished/returned items

* feat: added incoming rate field in DN, SI and Packed Item table

* feat: get incoming rate for returned item

* fix: no error while getting valuation rate in stock entry

* fix: update stock ledger for DN and SI

* feat: update item valuation rate in PR and PI based on supplied items cost

* feat: SLE reposting logic for sales return and subcontracted item with test cases

* feat: update qty in future sle

* feat: repost future sle and gle via Repost Item Valuation

* fix: Skip unwanted function calling while reposting

* fix: repost sle for specific item and warehouse

* test: Modified tests for backdated stock reco

* fix: ignore cancelled sle in few methods

* feat: role allowed to do backdated entry

* feat: Show reposting status on stock valuation related reports

* fix: minor fixes

* fix: fixed sider issues

* fix: serial no fix related to immutable ledger

* fix: Test cases fixes related to perpetual inventory

* fix: Test cases fixed

* fix: Fixed reposting on cancel and test cases

* feat: Restart reposting item valuation

* refactor: Code cleanup using small functions and test case fixes

* fix: minor fixes

* fix: Raise on error while reposting item valuation

* fix: minor fix

* fix: Tests fixed

* fix: skip some validation ig gle made from reposting

* fix: test fixes

* fix: debugging stock and account validation

* fix: debugging stock and account validation

* fix: debugging travis for stock and account sync validation

* fix: debugging travis

* fix: debugging travis

* fix: debugging travis

* fix: removed duplicate field from pos profile
2020-12-21 20:03:59 +05:30
Deepesh Garg
a42f245399 Merge pull request #24173 from deepeshgarg007/tax_category_typo_v13
fix: Typo in tax category doctype query
2020-12-17 18:51:45 +05:30
Deepesh Garg
e77e3aa36d fix: Typo in tax category doctype query 2020-12-17 18:49:58 +05:30
Deepesh Garg
a9db5a200f Merge pull request #24160 from deepeshgarg007/tax_template_update_customer_v13
fix: Tax template update on customer address change
2020-12-16 21:51:01 +05:30
Deepesh Garg
ad59726f20 fix: Tax template update on customer address change 2020-12-16 20:51:59 +05:30
Prssanna Desai
230bc1f2d8 Merge pull request #24155 from prssanna/job-card-gantt-version-13
fix: override field_map for job card gantt
2020-12-16 17:02:34 +05:30
prssanna
6273d3ada6 fix: override field_map for job card gantt 2020-12-16 17:01:20 +05:30
Nabin Hait
13dc63499a Merge branch 'develop' into version-13-beta-pre-release 2020-12-15 09:06:27 +05:30
Anurag Mishra
0fc4bb02d1 Merge pull request #24100 from hasnain2808/add-fb-to-je
fix(asset_val_adj): finance book not getting added in journal Entry of asset value adjustment
2020-12-14 12:36:03 +05:30
Deepesh Garg
05e8479521 Merge pull request #24117 from deepeshgarg007/gstr_opening_invoices
fix: Opening invoices in GSTR-1 report
2020-12-14 11:14:23 +05:30
Mohammad Hasnain Mohsin Rajan
b59d573009 Merge branch 'develop' into add-fb-to-je 2020-12-14 11:13:46 +05:30
Deepesh Garg
c838682188 fix: Opening invoices in GSTR-1 report 2020-12-14 10:35:16 +05:30
rohitwaghchaure
cf5f895617 Merge pull request #24110 from marination/status-updater-same-source-target-tables
fix: Same source and target tables in Status Updater's update query
2020-12-13 21:29:19 +05:30
rohitwaghchaure
d06ac9a958 Merge pull request #24114 from rohitwaghchaure/shipping-charges-not-added-in-invoice-develop
fix: shipping chanrges not sync in erpnext from shopify
2020-12-13 13:31:39 +05:30
rohitwaghchaure
8b8ef8d364 Merge pull request #24116 from rohitwaghchaure/fixed-stock-entry-multi-consumption-develop
fix: incorrect stock quantity if 'Allow Multiple Material Consumption…
2020-12-13 13:31:25 +05:30
rohitwaghchaure
e5e6d8297b Merge pull request #24115 from rohitwaghchaure/delete-receive-at-warehouse-entry-develop
fix: delete Receive at Warehouse entry on cancellation of Send to War…
2020-12-13 12:33:50 +05:30
Deepesh Garg
9779a81a33 Merge pull request #23868 from deepeshgarg007/loan_patch_fix
fix: Patch for old loans
2020-12-12 21:45:17 +05:30
Nabin Hait
3423d94145 fix: Fixed merge conflict 2020-12-12 21:12:56 +05:30
Deepesh Garg
ced3b13492 fix: Check for paid field 2020-12-12 19:31:05 +05:30
Deepesh Garg
68fce6d029 Merge branch 'develop' of https://github.com/frappe/erpnext into loan_patch_fix 2020-12-12 19:28:50 +05:30
Rohit Waghchaure
edb99d4e53 fix: incorrect stock quantity if 'Allow Multiple Material Consumption' has enabled 2020-12-12 16:03:07 +05:30
Rohit Waghchaure
5bfd6831c4 fix: delete Receive at Warehouse entry on cancellation of Send to Warehouse entry 2020-12-12 16:00:28 +05:30
Rohit Waghchaure
67dfe5db0d fix: shipping chanrges not sync in erpnext from shopify 2020-12-12 15:59:17 +05:30
Deepesh Garg
f17ea2ccab fix: Accounting for internal transfer invoices within same company (#24021)
* fix: Accounting for internal transfer invoices within same company

* fix: warehouse fetching

* fix: Linting issues

* fix: GL entry fixes and validation for intercompany account

* fix: Account naming changes and other fixes

* fix: Add test for internal transfer

* fix: Test Case

* fix: Add description for fields

* fix: Commonfied code

* fix: Map warehouse and serial no
2020-12-11 21:30:39 +05:30
Rohit Waghchaure
3eea3c6c95 fix: Table 'tabStock Entry Detail' is specified twice 2020-12-11 18:45:39 +05:30
Mohammad Hasnain Mohsin Rajan
f8d6726990 fix(acc recv report): columns mismatch (#24109)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-12-11 13:28:23 +05:30
Rucha Mahabal
0953058650 Merge pull request #24012 from ruchamahabal/stock-entry-for-medication-entries
feat(IPME): Button to create Stock Entry for Drug Shortage
2020-12-11 12:55:33 +05:30
Mohammad Hasnain Mohsin Rajan
f60e303ac7 Merge branch 'develop' into add-fb-to-je 2020-12-11 09:35:36 +05:30
Marica
d857d70a96 Merge branch 'develop' into stock-entry-for-medication-entries 2020-12-10 20:44:10 +05:30
Marica
49eef672d3 Merge pull request #24090 from hasnain2808/update-barcode-if-scan-barcode-used
fix: scan barcode does not update barcode item field in sales order
2020-12-10 18:17:23 +05:30
Marica
3bc69e59ec Merge branch 'develop' into update-barcode-if-scan-barcode-used 2020-12-10 18:05:00 +05:30
Mohammad Hasnain Mohsin Rajan
8abe7b91fe fix: linting
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-12-10 17:48:22 +05:30
Mohammad Hasnain Mohsin Rajan
ce1ca28296 fix: linting
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-12-10 17:48:05 +05:30
Anurag Mishra
fcf0a733ac Merge branch 'develop' into add-fb-to-je 2020-12-10 17:30:38 +05:30
Saqib
7acb42d6df feat(POS): hide images & auto add item checkbox (#24102) 2020-12-10 16:22:01 +05:30
Deepesh Garg
009721a3b2 Merge pull request #24035 from nextchamp-saqib/abs-value-in-pf
fix: get formatted value in 'taxes' print template
2020-12-10 15:33:41 +05:30
Mohammad Hasnain
f82997e3c3 fix(asset_val_adj): fb not getting added in je 2020-12-10 13:34:01 +05:30
Saqib
dc3e9f4216 fix: asset with value zero doesn't show up in fixed asset register (#24091) 2020-12-10 12:30:15 +05:30
Deepesh Garg
6e58260d26 Merge pull request #24082 from ruchamahabal/fix-item-details-in-reports
feat(reports): get item details from Item document instead of the Transactions
2020-12-09 18:28:28 +05:30
Marica
6cf36bfb0b Merge pull request #24046 from kennethsequeira/cont-temp
feat: add jinja templating in Contract Template
2020-12-09 18:22:18 +05:30
Marica
4efbee57f3 Merge branch 'develop' into cont-temp 2020-12-09 17:33:26 +05:30
Mohammad Hasnain Mohsin Rajan
deaf2e80cb fix: linting 2020-12-09 12:36:14 +05:30
Mohammad Hasnain
69514c4761 fix: scan barcode does not update barcode item field in sales order 2020-12-09 12:10:28 +05:30
rohitwaghchaure
08d57e3530 Merge pull request #24074 from hasnain2808/required-qty-multiplying-fix
fix(Production Planning Report): incorrect required_qty
2020-12-08 12:52:12 +05:30
Rucha Mahabal
fa950662b9 fix: import statement 2020-12-08 12:32:19 +05:30
Rucha Mahabal
db0bbfac97 feat(reports): get item details from Item doctype instead of the Transaction 2020-12-08 12:20:07 +05:30
Mohammad Hasnain
59dffb96b3 fix(Production Planning): incorrect required qty 2020-12-08 11:13:00 +05:30
Afshan
727b2f9b97 fix: throw an error when no pos profile exist (#24025)
* fix: throw an error when no pos profile exist

* fix: throw an error when no pos profile exist

* fix: test cases

* fix: tests

* fix: test

* fix: space as indent

* fix: travis
2020-12-08 09:45:19 +05:30
Walstan Baptista
0baebbdafe fix: added Purchase Order to Global Search (#24055) 2020-12-08 09:43:29 +05:30
Anuja Pawar
d369710c65 fix: fixed home desk page (#24075)
* fix: fixed home desk page

* fix: suggested changes

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

* fix: suggested changes

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-12-08 09:40:08 +05:30
Jannat Patel
797f0cfa61 fix: sales invoice add button from sales order dashboard (#24077)
Co-authored-by: pateljannat <jannatpatel@MacBook-Air.local>
2020-12-08 09:33:13 +05:30
Afshan
749d36a4dd fix: double exception in payroll (#24078) 2020-12-08 09:32:04 +05:30
Afshan
01eca12fa7 fix: overriding po (#24022)
* fix: overriding po

* fix: po

* fix: refactor condition

* fix: condition

* fix: missing code
2020-12-08 09:27:56 +05:30
Marica
654a71e35a Merge pull request #24065 from Anuja-pawar/company_fiscal_year_fix
fix: Added TDS Payable account number and an error message
2020-12-07 13:21:18 +05:30
Marica
34e142ec72 Merge pull request #24057 from ruchamahabal/fix-si-pos-return
fix: paid amount in Sales Invoice POS return resets to 0
2020-12-07 13:20:43 +05:30
Marica
724d03ec68 Merge branch 'develop' into fix-si-pos-return 2020-12-07 12:01:19 +05:30
Kenneth Sequeira
85af44b7ed fix: client side UX fixes 2020-12-07 11:18:20 +05:30
Anuja P
276a729b84 Merge branch 'company_fiscal_year_fix' of https://github.com/Anuja-pawar/erpnext into company_fiscal_year_fix 2020-12-07 11:13:23 +05:30
Anuja P
550cb9c78f fix: suggested changes 2020-12-07 11:11:00 +05:30
Kenneth Sequeira
00510e7f12 Merge branch 'cont-temp' of https://github.com/kennethsequeira/erpnext into cont-temp
pull latest
2020-12-07 10:56:30 +05:30
Anuja P
47b4b7009d Merge branch 'develop' of https://github.com/frappe/erpnext into company_fiscal_year_fix
Merge branch 'develop' of https://github.com/frappe/erpnext into company_fiscal_year_fix
2020-12-07 10:55:44 +05:30
Kenneth Sequeira
5f95ba57a8 fix: py code clean up and doc help 2020-12-07 10:45:13 +05:30
Rucha Mahabal
063be69b58 fix(patch): set update_modified to False while setting issue/opportunity metrics (#24073) 2020-12-07 10:41:05 +05:30
Marica
13dcd18ede Merge branch 'develop' into cont-temp 2020-12-07 09:53:23 +05:30
Deepesh Garg
6c35767995 Merge pull request #24069 from deepeshgarg007/gstr_3b_report_ims
fix: Show tax amount in base currencies
2020-12-06 23:24:24 +05:30
rohitwaghchaure
0a672b69e6 Merge pull request #22859 from marination/pr-dn-return
feat: Return tracking in PR/DN
2020-12-06 22:43:34 +05:30
Deepesh Garg
cfeca0dc87 fix: Show tax amount in base currencies 2020-12-06 18:28:30 +05:30
Deepesh Garg
44276b4650 Merge pull request #24067 from frappe/michellealva-patch-1
fix: Change validation message
2020-12-06 17:13:19 +05:30
Michelle Alva
c9067e40cb fix: Change validation message
grammatical fix
2020-12-06 10:48:32 +05:30
Anuja Pawar
6227c1e526 Merge branch 'develop' into company_fiscal_year_fix 2020-12-06 00:29:03 +05:30
Deepesh Garg
2d1cfae596 fix: fieldname 2020-12-05 22:44:45 +05:30
Deepesh Garg
ceefd66090 Merge pull request #24041 from saurabh6790/v13-patch-fixes-1
fix: reload doctype number card link
2020-12-05 22:43:46 +05:30
Anuja P
b6cf75d2a8 fix: error messsage indent fix 2020-12-05 22:25:17 +05:30
Anuja P
d3157c9347 Merge branch 'develop' of https://github.com/frappe/erpnext into company_fiscal_year_fix
Merge branch 'develop' of https://github.com/frappe/erpnext into company_fiscal_year_fix
2020-12-05 22:21:03 +05:30
Marica
2d255c02a6 Merge pull request #23559 from marination/debit-credit-opening-invoice-tool
fix: Handle Account and Item None not found in Opening Invoice Creation Tool
2020-12-05 17:56:13 +05:30
Marica
3b2da41f84 Merge branch 'develop' into debit-credit-opening-invoice-tool 2020-12-05 17:04:26 +05:30
Anuja P
2e4faf96f2 fix: Added TDS Payable account number and an error message 2020-12-05 13:36:43 +05:30
Deepesh Garg
eb951f3996 Merge pull request #24060 from deepeshgarg007/template_update
fix(India): Tax template update on supplier change
2020-12-05 12:38:10 +05:30
Marica
067f35df26 Merge branch 'develop' into debit-credit-opening-invoice-tool 2020-12-04 21:13:23 +05:30
marination
c866abca56 fix: (travis) Disable update stock for deferred accounting item's Sales Invoice 2020-12-04 20:12:52 +05:30
Anurag Mishra
26b3328af7 fix: leave policy assignment patch (#24061) 2020-12-04 19:50:24 +05:30
Deepesh Garg
a767085276 fix: Tax template update on supplier 2020-12-04 18:07:46 +05:30
Marica
ab510d2417 Merge pull request #23429 from marination/link-to-mr
feat: (RFQ/SQ) Link to Material Requests in Tools section
2020-12-04 17:58:17 +05:30
Marica
afc517b8bf Merge branch 'develop' into link-to-mr 2020-12-04 16:30:40 +05:30
Marica
c1885046d3 Merge pull request #24051 from Anuja-pawar/issue_customer_filter
feat(Issue): Added filter for customer field
2020-12-04 16:21:16 +05:30
Anuja Pawar
8a8a91c6b9 Merge branch 'develop' into issue_customer_filter 2020-12-04 15:26:40 +05:30
Anuja P
2e48cf7308 Merge branch 'issue_customer_filter' of https://github.com/Anuja-pawar/erpnext into issue_customer_filter
Merge branch 'issue_customer_filter' of https://github.com/Anuja-pawar/erpnext into issue_customer_filter
2020-12-04 15:19:06 +05:30
Kenneth Sequeira
c4eb41c92b fix; styling for sider 2020-12-04 15:00:22 +05:30
Anuja P
931f2e73a7 fix: sider changes 2020-12-04 14:57:23 +05:30
rohitwaghchaure
c4d9bb21d1 Merge pull request #24053 from rohitwaghchaure/additional-product-incorrect-rate
fix: pricing rule with transaction not working for additional product
2020-12-04 14:14:55 +05:30
Anuja Pawar
84166a931e Merge branch 'develop' into issue_customer_filter 2020-12-04 13:33:18 +05:30
marination
6a2431586e fix: Make new Customers for account missing test and set company 2020-12-04 13:31:36 +05:30
Rucha Mahabal
edee530d4c fix: paid amount in Sales Invoice POS return resets to 0 2020-12-04 12:13:26 +05:30
Rohit Waghchaure
28e86cf183 fix: pricing rule with transaction not working for additional product 2020-12-04 11:57:56 +05:30
Anuja P
0139109de2 fix: consistency check 2020-12-04 11:28:13 +05:30
Marica
4bf951a85b Merge branch 'develop' into v13-patch-fixes-1 2020-12-03 19:55:03 +05:30
Anuja P
25e058833a fix: sider changes 2020-12-03 18:13:24 +05:30
Anuja P
26cc662a78 feat: added filter for customer field 2020-12-03 17:45:34 +05:30
Abhishek Balam
a31731e73d Merge pull request #24050 from Anuja-pawar/fiscal_year_filter_fix
refactor(Fiscal Year): to avoid using SQL query to get fiscal year filters
2020-12-03 17:37:29 +05:30
Anuja P
69c5d49b25 refactor: to avoid using SQL query to get fiscal year filters 2020-12-03 15:14:54 +05:30
rohitwaghchaure
f851eed7b4 Merge pull request #24048 from rohitwaghchaure/fixed-incorrect-balance-value-in-stock-balance-develop
fix: incorrect balance value in stock balance report
2020-12-03 13:45:07 +05:30
Rohit Waghchaure
8474476316 fix: incorrect balance value in stock balance report 2020-12-03 13:43:11 +05:30
Kenneth Sequeira
131e46bab7 chore: add help section for Jinja 2020-12-02 21:37:55 +05:30
Kenneth Sequeira
9abc685504 feat: add jinja templating in contract template 2020-12-02 21:13:50 +05:30
Marica
376c1eaa48 Merge pull request #22914 from newmatik/shipment_with_integration
feat: Shipment Doctype
2020-12-02 17:37:41 +05:30
Joshua Angelo Bienes
324622bd2a Merge branch 'develop' into shipment_with_integration 2020-12-02 19:21:32 +08:00
Marica
cf44f1c9d3 Merge pull request #24044 from marination/gross-pay-based-on-present-days-test
fix: Test Payment Based on Leave Application (Travis)
2020-12-02 16:42:47 +05:30
marination
523c464a92 fix: Test Payment Based on Leave Application (Travis) 2020-12-02 16:01:35 +05:30
jbienesdev
8e68f128c1 fix: travis build error
- Removed shipment notification and subscription files
- Minor changes on shipment field configuration
- Add shipment to desk
2020-12-02 08:56:49 +00:00
jbienesdev
b4b542d1c3 chore: linter issues and sider checks 2020-12-02 07:15:16 +00:00
jbienesdev
99361b4a9e chore: remove notification details section 2020-12-02 07:15:14 +00:00
jbienesdev
28055f483d fix(shipment): change shipment test and refactor shipment.js 2020-12-02 07:15:13 +00:00
jbienesdev
ac3c1f1493 chore: remove packlink, letmeship, and sendcloud files 2020-12-02 07:15:11 +00:00
jbienesdev
000494f548 fix(shipment): apply code review 2020-12-02 07:15:05 +00:00
jbienesdev
1c9410e5e8 feat(shipment): Shipment Doctype with Integrations 2020-12-02 07:14:58 +00:00
Deepesh Garg
d8aeaed6ab Merge pull request #24039 from rohitwaghchaure/fixed-incorrect-gstr-report-issue
fix: GSTR B2C report
2020-12-01 20:44:33 +05:30
Saurabh
2e27f074c3 feat: reload doctype number card link 2020-12-01 18:08:04 +05:30
Rohit Waghchaure
1ac040a418 fix: GSTR report 2020-12-01 13:50:01 +05:30
Anurag Mishra
0fb05d1ba4 Merge pull request #24038 from Anurag810/bom-fix
fix:  keyerror 'sourced_by_supplier'
2020-12-01 13:47:06 +05:30
Anurag Mishra
0e9eb95b22 Merge branch 'develop' into bom-fix 2020-12-01 13:18:00 +05:30
Leela vadlamudi
a3845a95ed feat: Introducing telephony module (#24032) 2020-12-01 13:04:53 +05:30
Nabin Hait
029b9c08dd Update bom.py 2020-12-01 09:33:17 +05:30
Suraj Shetty
ad57eef40c fix(product-listing): Check if customer exists (#24030)
- It might happen that perty_name might not always be Customer
(it might be Supplier as well)
2020-12-01 09:14:57 +05:30
Afshan
ccf5dc66e2 feat: multi-currency payroll (#23519)
* feat: multi-currency payroll

* fix: refactor and added conditions

* fix: uncommented code

* style: removed comments

* fix: missing argument

* style: styling changes

* fix: test cases

* Update asset_value_adjustment.py

* patch: update columns

* style: formating

* style: formatting

* fix: 1st review

* fix: refactor

* Revert "fix: refactor"

This reverts commit eca0e17d11.

reverting to previous state

* Revert "fix: 1st review"

This reverts commit 7eac48b102.

reverting before 1st review

* fix: 2nd review changes

* fix: test cases

* fix: added call to fetch exchange rate

* fix: remove unnecessary code

* fix: refactor

* fix: refactor patch

* fix: refactor

* fix: refactor

* fix: clear test data

* fix: slider

* feat: multi-currency payroll

* fix: refactor and added conditions

* fix: uncommented code

* style: removed comments

* fix: missing argument

* style: styling changes

* fix: test cases

* patch: update columns

* Update asset_value_adjustment.py

* style: formating

* style: formatting

* fix: 1st review

* fix: refactor

* Revert "fix: refactor"

This reverts commit eca0e17d11.

reverting to previous state

* Revert "fix: 1st review"

This reverts commit 7eac48b102.

reverting before 1st review

* fix: 2nd review changes

* fix: test cases

* fix: added call to fetch exchange rate

* fix: remove unnecessary code

* fix: refactor

* fix: refactor patch

* fix: refactor

* fix: refactor

* fix: clear test data

* fix: slider

* feat: Added company field in leave encashment and employee benefit

* refactor: Refactored multi-currency payroll patch

* fix: currency column in salary register

* refactor: Refactored code for making bank and return entry against employee advance

* fix: minor cleanup

* fix: fixed translation

* fix: removed salary component type

* fix: fixed sider issues

* fix: translation and slider

* style: formatted msg

* fix: fixed slider

* fix: travis

* fix: refactor

* fix: slider

* fix: slider

* fix: slider

* fix: travis

* fix: patch

* fix: patch

* fix: travis

* fix: travis

* fix: travis

* fix: travis

* fix: travis

* fix: travis

* fix: re-run travis

* fix: rerun travis

* fix: rerun travis

* fix: rerun travis

* fix: travis rerun

* fix: increased throttle_user_limit from 60 to 100

* fix: patch

* fix: patch

* fix: assign payroll payable account as default payroll payable account in SSA

* fix: removed debugger

* fix: slider

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-12-01 09:11:05 +05:30
Anurag Mishra
66e8a12d0f fix: KeyError 'sourced_by_supplier' 2020-11-30 17:53:28 +05:30
Saqib Ansari
19d5074c25 fix: get formatted value in 'taxes' print template 2020-11-30 15:49:00 +05:30
Anurag Mishra
8b6c58d560 Merge pull request #24005 from Anurag810/leave_ledger_patch
fix: ignore exception during leave ledger creation from patch
2020-11-30 13:26:47 +05:30
marination
724e16bca1 chore: Use JSON style response and use ORM
- Use JSON style response for report columns
- Use ORM instead of frappe.db.sql
- Remove returned % from list view
2020-11-30 12:55:30 +05:30
Deepesh Garg
8db507bfd9 Merge pull request #24027 from resilient-tech/fix-taxjar
fix: import taxjar globally in the taxjar_integration module
2020-11-30 11:23:32 +05:30
Deepesh Garg
6302de9290 Merge pull request #23975 from deepeshgarg007/jv_zero_value
fix: Validation for journal entry with 0 debit and credit values
2020-11-30 10:56:40 +05:30
Deepesh Garg
452cbcd6ea fix: Update payments directly in Loan Interest Accrual 2020-11-30 10:55:12 +05:30
Deepesh Garg
681c0e297c Merge branch 'develop' of https://github.com/frappe/erpnext into loan_patch_fix 2020-11-29 23:07:14 +05:30
Deepesh Garg
2d5530da96 fix: Invoice discounting test 2020-11-29 22:17:47 +05:30
Sagar Vora
38e4635a10 fix: import taxjar globally in the taxjar_integration module 2020-11-29 20:26:26 +05:30
gavin
31ac7d982a chore(GitHub): Add issue template config 2020-11-27 15:58:07 +05:30
Rucha Mahabal
cf012ca9c3 fix: show stock entry button only if update stock is enabled 2020-11-27 12:39:33 +05:30
Rucha Mahabal
f5eddce407 test: Inpatient Medication Entry Drug Shortage 2020-11-27 12:27:17 +05:30
Rucha Mahabal
ac8ee249d5 feat: Medication doctypes added to Desk page and Patient dashboard 2020-11-26 22:11:20 +05:30
Rucha Mahabal
54228691e7 feat(IPME): Button to create Stock Entry for Drug Shortage 2020-11-26 16:38:28 +05:30
Marica
307bd01504 Merge branch 'develop' into pr-dn-return 2020-11-25 17:24:03 +05:30
Anurag Mishra
755b773616 feat: Leave policy assignment (#23112)
* feat: Leave Policy Assignment

* feat: linking with leave allocation and valiations

* style: removed old code from leave period

* feat: Bulk Leave policy Assignment and grant Leaves

* fix: overlap validation

* feat: earned leaves based on joining date

* feat: automatic grant leave based on leave policy

* patch: create leave policy assignment based on employee current leave policy

* fix: dependent test cases

* test: Leave policy assignment

* fix: some enhancement

* style: break large function into small function

* fix:requested Changes

* fix(patch): Handled old Leave allocatioln

* fix:codacy

* fix: travis and sider,codacy

* fix: codacy

* fix: codacy

* fix: requested changes and sider

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-11-25 16:05:17 +05:30
Anurag Mishra
f32cff1080 feat : Leave type with partial payment (#23173)
* feat: Partially paid Leaves

* feat: some importatnt validation

* fix: requested changes

* fix: requested changes

* fix: travis, sider, codacy

* fix: changes requested

* test: Partially Paid Leaves
2020-11-25 16:00:15 +05:30
Mohammad Hasnain Mohsin Rajan
90e33e53fd refactor: Format translation strings (#24004)
* fix: translation strings

* fix: linting
2020-11-25 15:37:54 +05:30
Prssanna Desai
e60a62bde5 fix: function imports in account_balance_timeline.py (#24003) 2020-11-25 15:37:02 +05:30
Mohammad Hasnain Mohsin Rajan
e15b6a91de Filters for tax templates (#23998)
* feat: add company filter to tax templates

* fix: remove filer from PO because it is from tran

* fix: linting

* fix: solve translation string issues

* fix: remove doctype name
2020-11-25 15:36:41 +05:30
Anurag Mishra
7824e81298 fix: ignore exception during leave ledger creation from patch 2020-11-25 14:54:50 +05:30
Marica
df17b4ff83 Merge branch 'develop' into pr-dn-return 2020-11-25 10:43:55 +05:30
Rucha Mahabal
6b57cf3285 feat: Quality Inspection on Job Card (#23964)
* feat: Quality Inspection on Job Card

* fix(Job Card): quality inspection filter query

* fix: sider issues
2020-11-25 09:17:16 +05:30
Nabin Hait
0508e6bdfa fix: Added link of bank reconciliation and clearance in accounting desk page (#23809) 2020-11-25 09:16:12 +05:30
Raffael Meyer
fbcc3c1b70 fix: Translatable strings (#23783)
* fix: start_pattern

* fix: translatable strings

* fix: add missing semicolon (task)

* fix: add missing semicolon (setup_wizard)

* fix: text should start on the same line

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>

* fix: move out HTML element as variable

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>

* fix: pull out message, translate "Undo".

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>

* fix: typo

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>

* fix: text should start on the same line

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>

* Revert "fix: start_pattern"

This reverts commit decc62e2ab.

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>
2020-11-25 09:11:51 +05:30
Rucha Mahabal
c66bd45ba4 feat: Inpatient Medication Orders Script Report (#23984)
* feat: Inpatient Medication Orders Script Report

* feat: add chart for Inpatient Medication Order Report

* feat: add report to Desk Page

* feat: added filters for dates and healthcare service unit

* test: Inpatient Medication Orders report
2020-11-25 09:09:40 +05:30
Deepesh Garg
a339752ba4 fix: Loan disbursement amount validation (#24000) 2020-11-25 08:54:51 +05:30
Mohammad Hasnain Mohsin Rajan
e4755828c4 fix: template errors in pricing rule (#23999)
* fix: solve microtemplating errors
2020-11-24 23:31:06 +05:30
rohitwaghchaure
f38abdeac0 Merge pull request #23994 from rohitwaghchaure/bom-stock-project-item-color-develop
fix: bom stock report color showing always red
2020-11-24 21:16:51 +05:30
rohitwaghchaure
5ab2e6c1ff Merge pull request #23991 from pateljannat/job-card-operation-field-error
fix: job card error handling for operations field
2020-11-24 17:05:44 +05:30
Rohit Waghchaure
5a33f2c394 fix: bom stock report color showing always red 2020-11-24 16:59:36 +05:30
rohitwaghchaure
ccd554c19c Merge pull request #23989 from Anurag810/item-maintain-stock-fixes
fix: maintain stock can't be changed it there is product bundle
2020-11-24 15:57:01 +05:30
pateljannat
b67ebc7636 fix: job card error handling for operations field 2020-11-24 15:37:30 +05:30
Deepesh Garg
d39ebf248e Merge pull request #23990 from deepeshgarg007/shopify_order_id_sync
fix: Old shopify order syncing date
2020-11-24 15:12:53 +05:30
Deepesh Garg
43a830f3f5 fix: Old shopify order syncing date 2020-11-24 15:10:36 +05:30
Anurag Mishra
927106f552 fix: maintain stock can't be changed it there is product bundle 2020-11-24 15:02:52 +05:30
Krushnal Patel
e09037ed2c docs: README build status badge (#23933)
* fixed build status badge

* changed build branch from `master` to `develop`

* updated build status badge url

* Update README.md
2020-11-24 12:53:30 +05:30
Deepesh Garg
d07447aa5f fix: Validation for duplicate Tax Category (#23978)
* fix: Validation for duplicate Tax Category

* Update utils.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-11-24 08:09:17 +05:30
Afshan
6aa6ec1832 fix: clear error message when approval not available (#23971) 2020-11-24 08:01:19 +05:30
rohitwaghchaure
b9b8a13393 Merge pull request #23980 from rohitwaghchaure/color-not-showing-in-bom-stock-report-develop
fix: bom stock report color issue
2020-11-23 16:43:32 +05:30
Rucha Mahabal
9a73a67dcd Merge pull request #23982 from pateljannat/track-changes-in-stock-settings
fix: enabling track changes for stock settings
2020-11-23 15:57:48 +05:30
rohitwaghchaure
f9a44000d9 Update bom_stock_report.js 2020-11-23 15:40:06 +05:30
pateljannat
34f381df17 fix: enabling track changes for stock settings 2020-11-23 15:31:08 +05:30
Rohit Waghchaure
610d9ca649 fix: bom stock report color issue 2020-11-23 14:10:55 +05:30
Deepesh Garg
20d6143c38 fix: Validation for journal entry with 0 debit and credit values 2020-11-21 12:09:11 +05:30
Jannat Patel
34d07b6306 fix: purchase receipt to purchase invoice bill date mapping (#23967)
Co-authored-by: pateljannat <jannatpatel@MacBook-Air.local>
2020-11-20 19:22:35 +05:30
Saurabh
3a251ecb26 Merge branch 'version-13-beta-pre-release' into version-13-beta 2020-11-20 15:02:00 +05:30
Saurabh
ecc50c8c24 bumped to version 13.0.0-beta.6 2020-11-20 15:22:00 +05:50
rohitwaghchaure
2d21473e61 Merge pull request #23970 from rohitwaghchaure/incorrect-delink-serial-no-and-batch-v13-pre-release
fix: incorrect delink serial no and batch
2020-11-20 14:30:27 +05:30
rohitwaghchaure
6b53ef7cce Merge pull request #23947 from rohitwaghchaure/incorrect-delink-serial-no-and-batch
fix: incorrect delink serial no and batch
2020-11-20 13:45:17 +05:30
Rohit Waghchaure
0b71801462 fix: incorrect delink serial no and batch 2020-11-20 12:59:00 +05:30
Deepesh Garg
06e16eb748 Merge pull request #23941 from pateljannat/place-of-supply-change-issue
fix: place of supply change on address change
2020-11-20 11:13:19 +05:30
Rohit Waghchaure
ceab692f73 fix: incorrect delink serial no and batch 2020-11-20 00:25:03 +05:30
pateljannat
1d5d863e9a fix: removing return_taxes condition 2020-11-19 20:11:45 +05:30
rohitwaghchaure
0bc46c2a32 Merge pull request #23962 from rohitwaghchaure/fixed-test-case-for-tds
fix: tds test case
2020-11-19 19:36:03 +05:30
rohitwaghchaure
896b9ef495 Merge pull request #23960 from rohitwaghchaure/incorrect-delink-serial-no-and-batch-v13-beta
fix: incorrect delink serial no and batch
2020-11-19 18:42:13 +05:30
Rohit Waghchaure
f0b1670abc fix: tds test case 2020-11-19 18:40:13 +05:30
Rohit Waghchaure
b6ef59f8e9 fix: incorrect delink serial no and batch 2020-11-19 16:15:32 +05:30
Jannat Patel
c1187bc1d5 fix: duplicate items validation for POS Invoice when allow multiple items is disabled (#23896)
* fix: duplicate items validation for POS when allow multiple items in disabled

* fix: variable name change for duplicate item validation

Co-authored-by: pateljannat <jannatpatel@MacBook-Air.local>
2020-11-19 13:10:24 +05:30
Marica
9b897c4073 Merge branch 'develop' into pr-dn-return 2020-11-19 12:21:38 +05:30
pateljannat
cd05b34691 fix: company filter added again 2020-11-19 11:37:08 +05:30
Deepesh Garg
dd7a6d948c Merge pull request #23672 from rohitwaghchaure/skip-non-apply-tds-invoices-develop
fix: tds calculation, skip invoices with "Apply Tax Withholding Amount" has disabled
2020-11-19 11:27:38 +05:30
Deepesh Garg
ebdc8cee5b Merge pull request #23825 from igormbq/fix-demo
fix: location data on Asset to use command(make_demo)
2020-11-19 11:26:12 +05:30
Rucha Mahabal
14514f776b fix: Enable Allow Auto Repeat for standard doctypes having auto_repeat field (#23776)
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-11-19 08:17:16 +05:30
Marica
6dafe1eabf feat: Formula based Quality Inspection (#23916)
* feat: Formula based Quality Inspection

* chore: Added Test for Formula Based QI reading
2020-11-19 08:12:58 +05:30
rohitwaghchaure
6e974bf246 Merge pull request #23949 from pateljannat/email-digest-user-not-found-issue
fix: email digest user not found
2020-11-18 23:54:34 +05:30
Deepesh Garg
ad16bb4ec1 Merge pull request #23953 from vorasmit/fix-sez-dev
fix(regional): set proper state code in ewaybill JSON when GST category is SEZ
2020-11-18 21:51:49 +05:30
Smit Vora
bbe4933a52 fix(regional): set proper state code in ewaybill JSON when gst_category is SEZ 2020-11-18 21:00:09 +05:30
pateljannat
188657d05a fix: email digest user not found 2020-11-18 17:15:54 +05:30
rohitwaghchaure
67ba0462e9 Merge pull request #23408 from kevingdc/fix/item-price-duplicate-checking
fix: Item price duplicate checking
2020-11-18 16:41:48 +05:30
pateljannat
410db04b48 fix: linter issue for translation syntax 2020-11-18 15:57:16 +05:30
Deepesh Garg
a0b17c4ef6 Merge pull request #23836 from pateljannat/purchase-taxes-and-charges-account-name-issue
fix: correcting description field in taxes and charges for accounts with account number + account name
2020-11-18 15:31:25 +05:30
Deepesh Garg
81f6ef3e1a Merge pull request #23934 from Anurag810/memebership-fixes
fix: validation for membership
2020-11-18 15:25:24 +05:30
Deepesh Garg
f0187f6db2 Merge pull request #23447 from hasnain2808/UAE-VAT-Format
feat: UAE VAT 201 Report
2020-11-18 15:15:00 +05:30
pateljannat
d0c528143f Merge branch 'place-of-supply-change-issue' of https://github.com/pateljannat/erpnext into place-of-supply-change-issue 2020-11-18 12:52:24 +05:30
pateljannat
8c9b60edfe fix: reversing previous commits and adding condition in regional controller 2020-11-18 12:51:13 +05:30
Saqib
d82b76fe0a fix: pos item search includes non stock items (#23914)
* fix: pos item search includes non stock items

* chore: add validation for non stock items
2020-11-18 11:56:49 +05:30
Jannat Patel
96a0c17626 Merge branch 'develop' into place-of-supply-change-issue 2020-11-18 10:27:20 +05:30
Deepesh Garg
dc88d63f00 Merge pull request #23937 from deepeshgarg007/loan_application_link
fix: Loan application link on creating loan
2020-11-17 22:01:31 +05:30
Deepesh Garg
69232f8dd1 fix: Loan application link on creating loan 2020-11-17 22:00:41 +05:30
pateljannat
6b10d87d46 fix: place of supply change on address change 2020-11-17 20:34:51 +05:30
Anurag Mishra
3271437314 fix: Handle for custom field IFSC code in Bank remittance report. (#23905)
* fix: Handel for custom field IFSC code

* fix: changes_requested
2020-11-17 17:52:59 +05:30
Anurag Mishra
a77f2ba0de fix: validation for membership 2020-11-17 15:34:05 +05:30
rohitwaghchaure
7aa60d1dea fix: stock ageing report not working (#23923) 2020-11-17 12:10:27 +05:30
Afshan
c72b693223 fix: Handle the "no leave_allocation found" case (#23922)
* fix: Handle the "no leave_allocation found" case

* fix: format of error msg
2020-11-17 12:08:31 +05:30
Marica
23614b650e fix: Don't copy terms and discount from SO to PO (#23903)
* 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:12:31 +05:30
Suraj Shetty
5e8b00207b fix: Typo (Enchashment > Encashment) (#23919) 2020-11-17 10:58:09 +05:30
pateljannat
642819b955 fix: place of supply change when address changes 2020-11-17 09:47:10 +05:30
Mohammad Hasnain
d2477e6cc5 fix(UAE VAT 201): remove branch parts 2020-11-16 18:47:05 +05:30
Mohammad Hasnain
2e1787300d feat(UAE VAT 201): emirate according to branch 2020-11-16 17:36:27 +05:30
Anurag Mishra
70816fdae8 Merge pull request #23897 from Anurag810/salary_slip_fixes
fix: added wrong absent days calculation in salary slip
2020-11-16 15:56:43 +05:30
Anurag Mishra
d6e6c51f37 Merge branch 'develop' into salary_slip_fixes 2020-11-16 15:56:22 +05:30
Anurag Mishra
17d5ce3e41 fix: payroll attendance error (#23887)
* fix: payroll attendance error

* fix: change query to frappe.get_all
2020-11-16 14:20:18 +05:30
Mohammad Hasnain
b8d0b546a7 feat(UAE VAT Format): use company address for emir 2020-11-16 12:58:38 +05:30
rohitwaghchaure
6094d66a6d Merge pull request #23636 from marination/item-price-pricing-rule-conflict
fix: Dont overrule Item Price via Pricing Rule Rate if 0
2020-11-16 12:22:30 +05:30
Anurag Mishra
69be37f88d fix: Error handling in Upload Attendance (#23907) 2020-11-15 11:14:35 +05:30
Raffael Meyer
7178df8567 fix: improve UX of DATEV report (#23892)
* feat(DATEV Settings): button to show report

* feat(desk): add DATEV to Reports under Accounting

* fix(report DATEV): last calendar month as default

* fix: let user create DATEV Settings

(Instead of showing an error message.)
2020-11-15 09:45:10 +05:30
Kenneth Sequeira
c5966d3d70 fix: make contract template editable (#23891) 2020-11-15 09:44:36 +05:30
rohitwaghchaure
1c8c1d78e9 fix: default cost center in item master not set in stock entry (#23877)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-11-15 09:40:44 +05:30
Raffael Meyer
8ff0d0cff6 feat: make account number length configurable (#23845) 2020-11-15 09:34:05 +05:30
Raffael Meyer
4bf09dd02b fix: fiscal year can be shorter than 12 months (#23838)
* fix: replace unnecessary SQL query

* feat: checkbox "Is Short Year"

Also, set checkbox and dates only once.

* fix: toggle no longer necessary

Date fields use set_only_once.

* feat: short years can be less than 12 months

* fix: if short year, don't add 12 months to start date

* test: short year

* fix: move short fiscal year to test records
2020-11-15 09:32:24 +05:30
Marica
188ecd7b39 chore: PO cleanup (#23774)
* chore: Subcontracting section and items section enhancement

- Set target warehouse moved to Items section
- Added subcontraction label to supply RM section

* chore: PO & PO Item Form Cleanup

* chore: PO Get Items from cleanup

* fix: Taxes and Charges field visibility

* chore: Cleanup

* fix: Translation styling
2020-11-15 09:17:42 +05:30
rohitwaghchaure
9e0f752fba Merge pull request #23911 from rohitwaghchaure/not-able-to-save-bom-v13-pre
fix: not able to save bom
2020-11-14 14:32:02 +05:30
Rohit Waghchaure
30c704a4cb fix: not able to save bom 2020-11-14 07:15:19 +05:30
rohitwaghchaure
a8eedb057b Merge pull request #23910 from rohitwaghchaure/not-able-to-save-bom
fix: not able to save bom
2020-11-14 07:12:22 +05:30
Rohit Waghchaure
4abc5657ab fix: not able to save bom 2020-11-13 22:18:48 +05:30
Deepesh Garg
a862eb25e6 fix: Make repayment entry only if amount exists 2020-11-13 17:57:57 +05:30
Afshan
3e7f7e3374 Merge branch 'fix-payroll-attendance' of https://github.com/AfshanKhan/erpnext into fix-payroll-attendance
Merge branch 'fix-payroll-attendance' of https://github.com/AfshanKhan/erpnext into fix-payroll-attendance
2020-11-13 17:04:18 +05:30
Afshan
1a4cafb97d fix: change query to frappe.get_all 2020-11-13 17:04:05 +05:30
Deepesh Garg
37dc369af9 feat: Sync old shopify orders (#23841)
* feat: Sync old shopify orders

* fix: Old orders syncing by date

* fix: Remove unnecessary code

* fix: Remove unintentional changes

Co-authored-by: Saurabh <saurabh@erpnext.com>
2020-11-13 16:53:35 +05:30
Afshan
5cffb6c72f Merge branch 'develop' into fix-payroll-attendance 2020-11-13 13:01:51 +05:30
Deepesh Garg
78690af440 fix: Update only if loans to close 2020-11-12 18:47:34 +05:30
Deepesh Garg
c51b340ddf fix: Update closed loans 2020-11-12 18:43:43 +05:30
Anurag Mishra
2f5d896f8c fix: added wrong absent days calculation in salary slip 2020-11-12 16:57:42 +05:30
Deepesh Garg
b58dca8d94 fix: Only update open loans 2020-11-12 13:37:11 +05:30
Jannat Patel
0ea0a7495c fix: making company address read-only in delivery note (#23890) 2020-11-12 11:10:59 +05:30
Rucha Mahabal
2baf45496a Merge pull request #23805 from pateljannat/production-planning-status-filter
feat: sales order status filter added for production plan
2020-11-11 23:18:22 +05:30
Rucha Mahabal
159d3bf14b Merge branch 'develop' into production-planning-status-filter 2020-11-11 22:36:21 +05:30
Deepesh Garg
5e0f4e2f4b Merge pull request #23582 from deepeshgarg007/loan_repayment_type_remove
fix: Loan repayment type option remove
2020-11-11 22:08:41 +05:30
Marica
d50874f0c7 Merge pull request #23729 from AfshanKhan/fix-po-no-fetching
fix: copying po no when mapping doc
2020-11-11 17:44:05 +05:30
Marica
a8ac101f5c Merge branch 'develop' into fix-po-no-fetching 2020-11-11 16:55:13 +05:30
Jannat Patel
a9e02bba77 Merge branch 'develop' into purchase-taxes-and-charges-account-name-issue 2020-11-11 16:46:01 +05:30
Mangesh-Khairnar
a91b68c868 feat: add communication channel to communication medium (#23793)
Co-authored-by: Saqib <nextchamp.saqib@gmail.com>
Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>
2020-11-11 16:34:43 +05:30
Afshan
6c95bc5e11 fix: payroll attendance error 2020-11-11 15:13:38 +05:30
Deepesh Garg
a2dc1740df fix: Use autoname for loan creation 2020-11-11 13:57:10 +05:30
Deepesh Garg
0dc052e635 fix: Return loan type name 2020-11-11 12:57:16 +05:30
Marica
78cccbe015 Merge branch 'develop' into fix-po-no-fetching 2020-11-11 12:18:14 +05:30
Rushabh Mehta
780b6b466b fix(hooks): include js/css with full path 2020-11-11 11:44:28 +05:30
Marica
2b44f22cf4 Merge branch 'develop' into fix-po-no-fetching 2020-11-11 11:10:34 +05:30
Deepesh Garg
13d1dda74b fix: Handle loan type naming collisions 2020-11-11 11:07:17 +05:30
Jannat Patel
e008f85816 Merge branch 'develop' into production-planning-status-filter 2020-11-11 10:00:39 +05:30
pateljannat
7e4d115e36 fix: sider issues fixed 2020-11-11 09:52:27 +05:30
Deepesh Garg
73bde45bc5 fix: Pass updated loan type 2020-11-10 22:08:02 +05:30
Deepesh Garg
1c969d64a2 fix: Handle cases where same loan type is used for multiple companies 2020-11-10 20:25:35 +05:30
pateljannat
b648b9cf93 fix: code review changes 2020-11-10 18:50:02 +05:30
pateljannat
d08c91673a fix: removed unnecessary filter options 2020-11-10 18:04:30 +05:30
Deepesh Garg
101bad3ea1 fix: Remarks for penalty GL Entry 2020-11-10 17:53:50 +05:30
Deepesh Garg
cd15956d80 Merge pull request #23870 from frappe/barredterra-patch-2
fix: remove check for exempt_from_sales_tax
2020-11-10 15:28:27 +05:30
Afshan
1e564bc02d fix: refactor 2020-11-10 13:23:59 +05:30
Afshan
a75708b02e Merge branch 'fix-po-no-fetching' of https://github.com/AfshanKhan/erpnext into fix-po-no-fetching 2020-11-10 13:19:53 +05:30
Afshan
1924019531 fix: refactor 2020-11-10 13:19:21 +05:30
Mohammad Hasnain Mohsin Rajan
72adb0b218 Merge branch 'develop' into UAE-VAT-Format 2020-11-10 09:58:45 +05:30
Raffael Meyer
57ce0462d9 fix: remove check for exempt_from_sales_tax 2020-11-09 19:04:46 +01:00
Anurag Mishra
91fdb7aa69 feat: added column cost_center to receivable reports (#23835) 2020-11-09 20:20:05 +05:30
Raffael Meyer
4f880e7454 refactor: zip_and_download (#23844) 2020-11-09 20:17:56 +05:30
Shivam Mishra
f38a1c305e refactor: show form buttons only if permissions exist (#23851)
* refactor: show form buttons only if permissions exist

* style: add semicolon

* fix: typo in conditions
2020-11-09 20:16:28 +05:30
Deepesh Garg
8cfb210dc4 fix: Ignore doctypes on company transaction deleted (#23864) 2020-11-09 20:14:53 +05:30
UrvashiKishnani
bc64f5dfbb fix: spelling error in filter label (#23867) 2020-11-09 20:14:06 +05:30
Suraj Shetty
e3fe8ff195 Merge branch 'develop' into purchase-taxes-and-charges-account-name-issue 2020-11-09 19:16:23 +05:30
Suraj Shetty
d038a80c43 chore: Make eslint stricter (#23869)
Error for
- Invalid tab style
- No space between unary operations
- Space between blocks

Warn for
- Comma Spacing
- Block Spacing
- Object Key Spacing
- Keyword Spacing
2020-11-09 19:10:43 +05:30
Rucha Mahabal
30d58cc3d7 feat: Consider Holiday List in Student Leave Application and Attendance (#23388)
* feat: Consider holiday list in Student Attendance and Leave Application

* feat: Show Holidays as 'H' in Student Monthly Attendance Sheet

* fix: check if date is a holiday in attendance reports

* test: skip attendance record creation for holidays

* fix: holiday list validation

* fix: clean up after test

* fix: codacy

* fix: show date in user format

* fix: remove ununsed imports

* fix: sider

* fix: test

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-11-09 18:41:03 +05:30
Frappe PR Bot
7915a3acae chore: Update translations (#23856)
Co-authored-by: frappe <frappe@scw-dazzling-elgamal>
2020-11-09 18:37:28 +05:30
Deepesh Garg
d53abf194e fix: Party for loan ledger entries 2020-11-09 18:34:38 +05:30
rohitwaghchaure
8d39d7570a Merge pull request #23764 from anupamvs/project-timesheet
fix: added project link in timesheet form
2020-11-09 17:34:11 +05:30
Deepesh Garg
928dc432ab fix: Reload journal entry account doc 2020-11-09 17:17:12 +05:30
Deepesh Garg
4f2a64479d fix: Patch for old loans 2020-11-09 17:00:09 +05:30
Marica
2d4a3498e9 Merge pull request #23735 from marination/purchase-invoice-payment-terms
fix: Payment Terms not fetched in Purchase Invoice from Purchase Receipt
2020-11-09 16:09:19 +05:30
Marica
9a3e1f6f83 Merge branch 'develop' into purchase-invoice-payment-terms 2020-11-09 14:51:20 +05:30
Marica
63d1a0436c Merge branch 'develop' into fix-po-no-fetching 2020-11-09 12:59:10 +05:30
rohitwaghchaure
94bfa6a659 Merge pull request #23843 from frappe/datev_check_fiscal_year
feat: validate fiscal year
2020-11-09 12:33:15 +05:30
rohitwaghchaure
af840ddec1 Merge pull request #23850 from marination/bank-link-card-desk
fix: Added link of bank reconciliation and clearance in accounting desk page
2020-11-09 12:31:54 +05:30
Marica
f72a5a6dca Merge branch 'develop' into pr-dn-return 2020-11-09 12:19:36 +05:30
Marica
709daf354b Merge branch 'develop' into purchase-invoice-payment-terms 2020-11-09 10:33:32 +05:30
Marica
da2c6444f6 Merge branch 'develop' into bank-link-card-desk 2020-11-09 10:29:51 +05:30
Deepesh Garg
29a8994506 Merge pull request #23832 from deepeshgarg007/india_tax_template_fetch
fix: Auto Statewise gst tax template
2020-11-08 17:48:57 +05:30
Deepesh Garg
dd94587ef8 fix: Loan write off precision issue 2020-11-07 17:08:30 +05:30
Deepesh Garg
2ad015450e fix: Remarks fix 2020-11-07 00:14:40 +05:30
Mohammad Hasnain Mohsin Rajan
d54969bd86 Merge branch 'develop' into UAE-VAT-Format 2020-11-06 23:39:34 +05:30
Mohammad Hasnain
c5aad7b6e5 feat(UAE VAT 201): reorder desk page listing 2020-11-06 23:36:50 +05:30
Mohammad Hasnain
4d99d695a3 feat(uae vat 201): update desk page entry 2020-11-06 23:33:19 +05:30
Saurabh
7c06c28216 fix: merge-conflicts 2020-11-06 19:08:58 +05:30
Saurabh
e7ab61da9a bumped to version 13.0.0-beta.5 2020-11-06 19:23:55 +05:50
rohitwaghchaure
8cbcd54f3b chore: change log for v13-beta-pre-release-5 (#23846) 2020-11-06 18:48:34 +05:30
Saqib
e0af8fe8e5 fix: auto fetch sr nos with modifed conversion factor (#23854) 2020-11-06 18:19:36 +05:30
Saqib
1090181204 fix: auto fetch sr nos with modifed conversion factor (#23855) 2020-11-06 18:19:26 +05:30
Deepesh Garg
b4774ae65d Merge pull request #23852 from frappe/pre-release
fix: [revert] provision to draft quotation from portal
2020-11-06 17:59:00 +05:30
rohitwaghchaure
471341fb87 Merge pull request #23849 from anupamvs/formatdate
fix: replaced formatdate -> format_date
2020-11-06 17:47:08 +05:30
Deepesh Garg
3899079bb9 fix: Loan seurity unpledge msg improvement 2020-11-06 17:39:54 +05:30
Anupam Kumar
bdb8a4023a Delete test_parameter.py 2020-11-06 17:13:02 +05:30
Anupam Kumar
a739554b7d Delete parameter.py 2020-11-06 17:12:44 +05:30
Anupam Kumar
c7f8204997 Delete parameter.json 2020-11-06 17:12:21 +05:30
Anupam Kumar
b4bad63e25 Delete parameter.js 2020-11-06 17:11:47 +05:30
Anupam Kumar
ec7002625f Delete __init__.py 2020-11-06 17:11:33 +05:30
Anupam
14ef229b12 Revert "Update item_add_to_cart.html"
This reverts commit 5b3af82e75.
2020-11-06 16:50:15 +05:30
Anupam
886b680e1b revert changes 2020-11-06 16:48:39 +05:30
Anupam
beba8da0a6 Merge branch 'version-13-beta-pre-release' of https://github.com/frappe/erpnext into pre-release 2020-11-06 16:38:16 +05:30
Anupam Kumar
ca9b58589b fix: replaced formatdate -> format_date (#23847)
Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>
2020-11-06 14:56:27 +05:30
Deepesh Garg
3e69756e15 fix: Add better remarks for Loan GL entries 2020-11-06 14:25:09 +05:30
Marica
d07f6b7ef6 Merge pull request #23848 from AfshanKhan/fix-stock-mismatch-filter-pre-release
fix: showing error for wrong filters.
2020-11-06 13:42:07 +05:30
Marica
0d441b66cd Merge pull request #23808 from nabinhait/web-page-bank-statement-section-pre-release
fix: Added link of bank reconciliation and clearance in accounting desk page
2020-11-06 13:16:44 +05:30
marination
0b4946ba27 fix: Add missing links
- Added Bank Transaction Statement Entry and Bank Statement Settings
2020-11-06 13:15:46 +05:30
Nabin Hait
06ba92be7a fix: Added link of bank reconciliation and clearance in accounting desk page 2020-11-06 13:15:38 +05:30
marination
427c1bb0a7 fix: Add missing links
- Added Bank Transaction Statement Entry and Bank Statement Settings
2020-11-06 13:08:53 +05:30
Marica
7e1511f527 Merge branch 'develop' into purchase-invoice-payment-terms 2020-11-06 12:28:55 +05:30
Anupam
c3307f7900 fix: replaced formatdate -> format_date 2020-11-06 12:28:38 +05:30
Afshan
4d3e83682e fix: showing error for wrong filters. 2020-11-06 12:25:46 +05:30
Marica
d845e8a53a Merge branch 'develop' into pr-dn-return 2020-11-06 12:25:11 +05:30
Marica
d967ad6b5b Merge pull request #23789 from marination/dialog-cleanup
chore: Get Items From Dialog cleanup (Buying)
2020-11-06 12:22:14 +05:30
Marica
9694432270 Merge branch 'develop' into dialog-cleanup 2020-11-06 12:19:41 +05:30
Anupam
bab078b4f5 fix: replaced formatdate -> format_date 2020-11-06 12:05:45 +05:30
rohitwaghchaure
c83769c3d1 Merge pull request #23842 from rohitwaghchaure/multiple-pricing-rules-are-not-applied-pre-release
fix: multiple pricing rules are not working on selling side
2020-11-06 01:06:45 +05:30
Raffael Meyer
a62d138748 Merge branch 'develop' into datev_check_fiscal_year 2020-11-05 17:29:42 +01:00
barredterra
f91d82b538 fix: imports 2020-11-05 17:28:39 +01:00
barredterra
815341d454 feat: validate fiscal year 2020-11-05 16:57:23 +01:00
Deepesh Garg
1145b3796c fix: Remove accrual type from process 2020-11-05 21:21:40 +05:30
Deepesh Garg
a2bff7fbfc fix: Penalty amount calculation fix 2020-11-05 21:14:29 +05:30
Deepesh Garg
49cc57e76e fix: Negative amount check for amounts 2020-11-05 21:14:07 +05:30
Rohit Waghchaure
88e0a64df2 added test cases 2020-11-05 20:07:27 +05:30
Rohit Waghchaure
2fe3b1807f fix: multiple pricing rules are not working on selling side 2020-11-05 20:07:19 +05:30
Anupam Kumar
3a9dc90695 fix: fix: replaced formatdate -> format_date (#23829) 2020-11-05 18:51:56 +05:30
rohitwaghchaure
9a62858da2 Merge pull request #23831 from rohitwaghchaure/incorrect-assign-to-in-asset-maintenance-develop
fix: incorrect assign to in Maintenance Schedule
2020-11-05 18:43:51 +05:30
Marica
c070f2ed57 Merge branch 'develop' into dialog-cleanup 2020-11-05 18:37:56 +05:30
Marica
08f6c9d5f9 Merge pull request #23820 from marination/so-to-po-dialog-fix
fix: SO to PO Mapping Issue
2020-11-05 18:29:52 +05:30
pateljannat
5b02d32826 fix: trailling spaces removed 2020-11-05 18:04:14 +05:30
Saqib
65820f6b6c fix: cannot expand row in update items dialog (#23840) 2020-11-05 17:38:43 +05:30
Saqib
bc919e2e7d fix: cannot expand row in update items dialog (#23839) 2020-11-05 17:38:35 +05:30
Saqib
19df4534f5 fix: asset finance book depreciation posting date fix (#23833) 2020-11-05 16:37:40 +05:30
Saqib
76cd680c57 fix: asset finance book depreciation posting date fix (#23834) 2020-11-05 16:37:19 +05:30
Deepesh Garg
59ccb64e18 fix: Auto Statewise gst tax template 2020-11-05 16:29:34 +05:30
pateljannat
403822afb3 fix: correcting description field in taxes and charges for accounts that have account number + account name 2020-11-05 16:24:33 +05:30
Afshan
5c93ca7bef fix: leave ledger patch (#23807)
Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-11-05 15:45:15 +05:30
Rohit Waghchaure
421348a5f2 fix: not able to select assign to 2020-11-05 15:43:41 +05:30
Marica
6d2bcd2404 Merge branch 'develop' into purchase-invoice-payment-terms 2020-11-05 12:25:38 +05:30
Marica
fd2b7d3c1d Merge branch 'develop' into dialog-cleanup 2020-11-05 12:22:50 +05:30
Marica
7e9b9e7278 Merge branch 'develop' into so-to-po-dialog-fix 2020-11-05 12:19:49 +05:30
Marica
9a4975d3fe Merge pull request #23823 from marination/delete-quoted-item-old-report
chore: Delete Quoted Item Comparison Report
2020-11-05 12:19:26 +05:30
rohitwaghchaure
64059db69f Merge pull request #23814 from Anurag810/stock_ledger_report
fix:  list index out of range on including UOM
2020-11-05 11:49:46 +05:30
Marica
a45f98ba99 Merge branch 'develop' into pr-dn-return 2020-11-05 10:34:23 +05:30
Marica
596656b372 Merge pull request #23824 from marination/delete-quoted-item-old-report-pre-release
chore: Delete Quoted Item Comparison Report
2020-11-05 10:03:58 +05:30
Marica
6ae1b269ea Merge branch 'develop' into delete-quoted-item-old-report 2020-11-05 09:32:47 +05:30
Marica
6bbdc58d56 Merge branch 'develop' into link-to-mr 2020-11-05 09:31:39 +05:30
Marica
144fef0097 Merge branch 'develop' into item-price-pricing-rule-conflict 2020-11-05 09:28:30 +05:30
Marica
364916fa7b Merge branch 'develop' into dialog-cleanup 2020-11-05 09:27:57 +05:30
Marica
0c74cd8872 Merge pull request #23821 from marination/so-to-po-dialog-fix-v13-beta
fix: SO to PO Mapping Issue
2020-11-05 09:26:32 +05:30
Marica
2f0bd68fde Merge branch 'develop' into so-to-po-dialog-fix 2020-11-05 09:25:00 +05:30
Marica
5c4b35e65e Merge pull request #23827 from marination/rfq-test-fixes-pre-release
chore: Reposition RFQ fields
2020-11-05 09:24:29 +05:30
Marica
24d0bd4435 Merge pull request #23826 from marination/rfq-test-fixes
chore: Reposition RFQ fields
2020-11-05 09:24:18 +05:30
Abhishek Balam
48d9173a55 Merge pull request #23828 from abhishekbalam/psoa_testcase_fix
fix(PSOA): key error if no customers found
2020-11-05 00:21:24 +05:30
Abhishek Balam
5db99e0649 fix: code improvement, match error type for message 2020-11-04 23:43:11 +05:30
Abhishek Balam
5fe3abcfae fix: sales person without customer link throwing keyerror 2020-11-04 23:23:34 +05:30
marination
edd9080ea6 chore: Reposition RFQ fields 2020-11-04 22:13:57 +05:30
marination
2b3412ea05 chore: Reposition RFQ fields 2020-11-04 22:07:33 +05:30
Rucha Mahabal
dd7f4df669 fix: Budget test cases (#23822) 2020-11-04 21:59:08 +05:30
Marica
4c81de0810 Merge branch 'develop' into so-to-po-dialog-fix 2020-11-04 21:24:45 +05:30
marination
75fcfbb49c chore: Delete Quoted Item Comparison Report 2020-11-04 21:24:04 +05:30
marination
5de719fc74 chore: Delete Quoted Item Comparison Report 2020-11-04 21:22:22 +05:30
marination
e3864c9b16 fix: Make sure row object has doctype so that read only property is applied to rows 2020-11-04 21:08:36 +05:30
marination
413b1c3b43 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-04 21:08:27 +05:30
Rucha Mahabal
f68586ac79 Merge pull request #23817 from ruchamahabal/fix-therapy-plan-template
fix: therapy plan and session fixes
2020-11-04 21:08:10 +05:30
Rucha Mahabal
de79dd36e7 Merge pull request #23818 from ruchamahabal/fix-therapy-plan-template-v13
fix: therapy plan and session fixes
2020-11-04 21:06:58 +05:30
marination
2b8aa91cf2 fix: Make sure row object has doctype so that read only property is applied to rows 2020-11-04 21:00:52 +05:30
Rucha Mahabal
13fb562e9c fix: sider 2020-11-04 20:25:10 +05:30
Rucha Mahabal
e50697d459 fix: sider 2020-11-04 20:24:04 +05:30
Rucha Mahabal
40246caf5e fix: therapy plan and session fixes 2020-11-04 20:13:53 +05:30
igormbq
aa08fb9716 Add location on Asset to use make_demo 2020-11-04 11:40:57 -03:00
Rucha Mahabal
2673c19c1a fix: therapy plan and session fixes 2020-11-04 20:06:07 +05:30
Afshan
cdc17bb9f3 fix: added code for testing 2020-11-04 19:28:55 +05:30
marination
23b7591c91 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-04 18:23:00 +05:30
Mangesh-Khairnar
5756798689 fix: update integrations desk page (#23772) 2020-11-04 16:44:44 +05:30
Anurag Mishra
09b8ca0ddb fix: list index out of range on incilding uom 2020-11-04 15:04:50 +05:30
rohitwaghchaure
ed2f9edcdd Merge pull request #23813 from rohitwaghchaure/fixed-sequence-id-column-display-pre-release
fix: on save sequence id column override with workstation
2020-11-04 14:25:58 +05:30
rohitwaghchaure
0fde102ea5 Merge pull request #23812 from rohitwaghchaure/fixed-sequence-id-column-display
fix: on save sequence id column override with workstation
2020-11-04 14:25:15 +05:30
Rohit Waghchaure
58c538d46b fix: on save sequence id column override with workstation 2020-11-04 13:35:42 +05:30
rohitwaghchaure
9a0325e2b9 Merge pull request #23801 from rohitwaghchaure/fixed-budget-test-cases
fix: Budget test cases
2020-11-04 13:27:03 +05:30
Rohit Waghchaure
dd87bcfda0 fix: on save sequence id column override with workstation 2020-11-04 13:26:03 +05:30
rohitwaghchaure
e0828a80c7 Merge pull request #23811 from rohitwaghchaure/sequence-id-column-override-withoperation-pre
fix: sequence id override with operation column
2020-11-04 13:16:21 +05:30
Rohit Waghchaure
4cf346c082 fix: sequence id override with operation column 2020-11-04 13:14:28 +05:30
rohitwaghchaure
d961d6cdc9 Merge pull request #23810 from rohitwaghchaure/sequence-id-column-override-withoperation
fix: sequence id override with workstation column
2020-11-04 13:13:36 +05:30
Rohit Waghchaure
81b2c8ed60 fix: sequence id override with operation column 2020-11-04 13:10:03 +05:30
Nabin Hait
da14a76ee0 fix: Added link of bank reconciliation and clearance in accounting desk page 2020-11-04 13:06:36 +05:30
Mangesh-Khairnar
2df2b2f351 fix: update integrations desk page (#23767)
* fix: update integrations desk page

* fix: setup dashboard after receiving API callback

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-11-04 12:48:33 +05:30
Mangesh-Khairnar
1354aecafa fix: add check for allowing access to european region (#23770) 2020-11-04 12:42:02 +05:30
Frappe PR Bot
f4e410af5f chore: Update translations (#23787)
Co-authored-by: frappe <frappe@scw-dazzling-elgamal>
2020-11-04 12:17:40 +05:30
rohitwaghchaure
a53454d3d1 Update test_budget.py 2020-11-04 12:06:21 +05:30
Mohammad Hasnain
bed4e85aec fix(uae vat 201): date filters were not working 2020-11-04 10:44:22 +05:30
Mohammad Hasnain
510d0d3f20 Merge branch 'UAE-VAT-Format' of https://github.com/hasnain2808/erpnext into UAE-VAT-Format 2020-11-04 10:32:22 +05:30
Mohammad Hasnain
f2c895ddb5 feat(uae vat 201): do not take zero and nil rated items in standard rated expense emiratewise 2020-11-04 10:31:37 +05:30
Mohammad Hasnain Mohsin Rajan
2b2961678c Merge branch 'develop' into UAE-VAT-Format 2020-11-04 08:43:21 +05:30
marination
7837161a3f fix: Sider 2020-11-03 22:09:42 +05:30
marination
574477187f chore: Pricing Rule with Item Price Test 2020-11-03 20:22:48 +05:30
Marica
cf08f0da70 Merge branch 'develop' into item-price-pricing-rule-conflict 2020-11-03 18:29:22 +05:30
pateljannat
846ff323e2 feat: sales order status filter for production plan 2020-11-03 17:35:44 +05:30
Rohit Waghchaure
c8cc4bfc56 fix: Budget test cases 2020-11-03 17:09:09 +05:30
Marica
7b42e8e27c Merge branch 'develop' into dialog-cleanup 2020-11-03 16:26:06 +05:30
marination
53b1a9a40b chore: Add Test for missing debit account 2020-11-03 15:56:09 +05:30
Rucha Mahabal
b7e84f70c9 Merge pull request #23799 from ruchamahabal/fix-ipme
fix: Inpatient Medication Order and Entry fixes
2020-11-03 15:43:06 +05:30
Rucha Mahabal
bc8809f4bf Merge pull request #23800 from ruchamahabal/fix-ipme-v13
fix: Inpatient Medication Order and Entry fixes
2020-11-03 15:41:52 +05:30
Rucha Mahabal
6c135dd06d fix: Inpatient Medication Order and Entry fixes 2020-11-03 14:43:40 +05:30
Rucha Mahabal
ce8b5fc5ca Merge branch 'develop' into fix-ipme 2020-11-03 13:56:53 +05:30
Rucha Mahabal
7190e1e4bb fix: Inpatient Medication Order and Entry fixes 2020-11-03 13:45:12 +05:30
Marica
9a75a60784 Merge branch 'develop' into debit-credit-opening-invoice-tool 2020-11-03 12:03:50 +05:30
marination
f21e3fbf04 chore: Tests
- Added test for mapping secnd return doc
- Added test for billing % of partially returned doc
- Handled PR with 0 billing amount
2020-11-03 12:01:56 +05:30
Saqib
940e307194 fix: cannot save customer email & phone (#23798) 2020-11-03 10:51:18 +05:30
Saqib
da878c43fc fix: cannot save customer email & phone (#23797) 2020-11-03 10:51:09 +05:30
Saqib
c95dff7b7d fix: cannot add items to cart (#23796)
* fix: _ is not defined

* fix: item image alt gets overflowed due to large text

* fix: available item qty in pos search

* fix: cash shortcuts overflow
2020-11-03 10:16:58 +05:30
Saqib
a53e8404d1 fix: cannot add items to cart (#23795)
* fix: _ is not defined

* fix: item image alt gets overflowed due to large text

* fix: available item qty in pos search

* fix: cash shortcuts overflow
2020-11-03 10:07:50 +05:30
Kevin Chan
a2ba8ea74a style: Clean up code formatting 2020-11-03 10:57:52 +08:00
Kevin Chan
312561fd77 Merge branch 'develop' into fix/item-price-duplicate-checking 2020-11-03 10:56:23 +08:00
Mohammad Hasnain Mohsin Rajan
6a0b28bde3 Merge branch 'develop' into UAE-VAT-Format 2020-11-02 23:59:13 +05:30
marination
3991b84b2b chore: Avoid multiline string in Translation & remove print statement 2020-11-02 15:23:41 +05:30
marination
28dd90f3dc Merge branch 'develop' of https://github.com/frappe/erpnext into pr-dn-return 2020-11-02 15:16:31 +05:30
marination
d6596a169c fix: Billing % Logic and Map Pending Qty only in PR and DN
- Billing % should consider unreturned amount as total
- While mapping to return doc, map unreturned amount
- Added field Received Qty in Stock UOM, to tally against Returned Qty in PR
- PR billing percentage updation custom function
- In patch set received qty in stock uom first, then update returned qty and billing
2020-11-02 15:07:48 +05:30
Mohammad Hasnain
7a034595fe fix(UAE VAT 201): Remove Chart 2020-11-02 13:12:27 +05:30
Mohammad Hasnain
b0eca23485 Refactor(UAE VAT 201): Fix fomatiing 2020-11-02 12:47:10 +05:30
Deepesh Garg
992bd69fc4 Merge pull request #23785 from deepeshgarg007/place_of_supply
fix: Place of Supply fix in Sales Invoices
2020-11-02 11:23:25 +05:30
Mohammad Hasnain
c53237f5e0 refactor(UAE VAT 201): solve syntax errors 2020-11-02 11:02:41 +05:30
Mohammad Hasnain Mohsin Rajan
c8d8d0868d Merge branch 'develop' into UAE-VAT-Format 2020-11-02 10:36:03 +05:30
Mohammad Hasnain Mohsin Rajan
d322181fd7 refactor(UAE VAT 201): Update erpnext/regional/report/uae_vat_201/uae_vat_201.py
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-11-02 10:29:38 +05:30
Mohammad Hasnain Mohsin Rajan
7b771d139c refactor(UAE VAT 201): Update erpnext/regional/report/uae_vat_201/test_uae_vat_201.py
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-11-02 10:29:14 +05:30
Mohammad Hasnain Mohsin Rajan
46265d3fc7 refactor(UAE VAT 201): Update erpnext/regional/report/uae_vat_201/test_uae_vat_201.py
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-11-02 10:28:41 +05:30
Mohammad Hasnain Mohsin Rajan
be7a4c8b0a refactor(UAE VAT 201): Update erpnext/regional/report/uae_vat_201/test_uae_vat_201.py
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-11-02 10:28:14 +05:30
Mohammad Hasnain Mohsin Rajan
f116fbf84d refactor(UAE VAT 201): Update erpnext/regional/report/uae_vat_201/test_uae_vat_201.py
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-11-02 10:27:54 +05:30
marination
542ae6ab97 chore: Linter and Sider fixes
- Translatable  strings cannot be multi line or be formatted by '+'
- Reduce no of tabs in stock_entry.js
2020-11-02 08:50:48 +05:30
Marica
e0ec58d8fa Merge branch 'develop' into link-to-mr 2020-11-01 23:48:58 +05:30
Deepesh Garg
eacfd792e6 fix: fieldname 2020-10-30 22:12:24 +05:30
Deepesh Garg
db3fa4e6b2 fix: Place of Supply fix in Sales Invoices 2020-10-30 19:19:48 +05:30
marination
97d38548aa chore: Purchase Invoice Get Items From cleanup 2020-10-30 17:50:25 +05:30
marination
66b2b544f8 chore: Purchase Receipt, added required by date in PO popup 2020-10-30 17:45:28 +05:30
marination
08e5031be2 chore: Supplier Quotation Get Items From cleanup 2020-10-30 17:36:20 +05:30
marination
e14fdf4a3c chore: RFQ cleanup and Title case for 'Get Items From'
- Cleanup up RFQ Get Items From Dialogs
- Title cased 'Get items from' to 'Get Items From'
2020-10-30 17:06:00 +05:30
rohitwaghchaure
c451c08824 Merge pull request #23777 from rohitwaghchaure/fixed-set-po-details-in-subcontract-stock-entry-develop
fix: po_detail field has no value for subcontracted stock entry
2020-10-30 16:48:11 +05:30
rohitwaghchaure
ce7f9dffa9 Merge pull request #23781 from rohitwaghchaure/patch-to-update-reason-for-leaving
fix: patch to update reason for leaving in employee
2020-10-30 16:47:48 +05:30
Rohit Waghchaure
e1781dc0bb fix: patch to update reason for leaving in employee 2020-10-30 15:34:04 +05:30
Saqib
ce7d7155db fix: asset finance book posting date fix (#23779) 2020-10-30 15:30:27 +05:30
Saqib
32442008dc fix: asset finance book posting date fix (#23778) 2020-10-30 15:30:18 +05:30
Rohit Waghchaure
71913c36a7 fix: po_detail field has no value for subcontracted stock entry 2020-10-30 14:35:16 +05:30
rohitwaghchaure
2160050c82 Merge pull request #23728 from marination/prod-plan-status
feat: Close Production Plan
2020-10-30 14:23:25 +05:30
marination
6bf507a54b chore: (MR)Added delivery date in SO dialog 2020-10-30 13:59:47 +05:30
Marica
b05318aa51 Merge branch 'develop' into prod-plan-status 2020-10-30 12:33:27 +05:30
Mohammad Hasnain Mohsin Rajan
30197d7fba Merge branch 'develop' into UAE-VAT-Format 2020-10-30 10:29:56 +05:30
rohitwaghchaure
707788da4b Merge pull request #22711 from rohitwaghchaure/multiple-pricing-rules-are-not-applied
fix: multiple pricing rules are not working on selling side
2020-10-30 02:42:51 +05:30
Marica
9dc4941072 Merge branch 'develop' into prod-plan-status 2020-10-30 00:53:10 +05:30
Rucha Mahabal
400737d005 Merge pull request #23768 from ruchamahabal/fix-issue-v13-beta
fix: set SLA variance in seconds for Duration fieldtype
2020-10-30 00:10:45 +05:30
Rucha Mahabal
1636383120 fix: subscription test case
Co-authored-by: Marica <maricadsouza221197@gmail.com>

Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com>
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-10-30 00:09:55 +05:30
François de Ryckel
ca5f5cb367 Update student_attendance.py (#23761)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-10-29 23:04:13 +05:30
Rucha Mahabal
2bb7ed34d8 fix: Student Attendance error message (#23769) 2020-10-29 23:03:53 +05:30
Rucha Mahabal
c548d56498 fix: set SLA variance in seconds for Duration fieldtype (#23765)
* fix: calculate SLA variance in seconds for Duration fieldtype

* fix: sider
2020-10-29 22:41:38 +05:30
Rucha Mahabal
9db26155ad fix: set SLA variance in seconds for Duration fieldtype (#23765)
* fix: calculate SLA variance in seconds for Duration fieldtype

* fix: sider
2020-10-29 22:39:21 +05:30
rohitwaghchaure
445d23223b Merge branch 'develop' into multiple-pricing-rules-are-not-applied 2020-10-29 22:25:19 +05:30
Anupam Kumar
e43f8f12d5 Merge branch 'develop' into project-timesheet 2020-10-29 22:03:31 +05:30
Anupam
9002904131 feat: added project link in timesheet form 2020-10-29 21:36:31 +05:30
Deepesh Garg
9c67629e28 fix: Ignore cancelled entries instock balance report (#23757)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-29 19:51:57 +05:30
Nabin Hait
b7285fdcad Merge branch 'develop' into prod-plan-status 2020-10-29 18:58:32 +05:30
Nabin Hait
2bb110b3d1 Merge branch 'develop' into fix-po-no-fetching 2020-10-29 18:57:33 +05:30
Marica
8f6bd851d3 chore: Show Toast alert feedback on Scanning Barcode (#23760) 2020-10-29 18:55:52 +05:30
Marica
bf54ea9976 chore: (Production Plan) Simplify and fix translation in message popup (#23753) 2020-10-29 18:54:36 +05:30
rohitwaghchaure
d0c2700c85 fix: subscription test case (#23763)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-10-29 18:52:16 +05:30
Saqib
825d79b31b fix: pos profile has no attr 'show_only_available_items' (#23759) 2020-10-29 13:23:59 +05:30
Saqib
b193731158 fix: pos profile has no attr 'show_only_available_items' (#23758) 2020-10-29 13:23:50 +05:30
Marica
1b8a1cfed2 Merge branch 'develop' into prod-plan-status 2020-10-29 13:02:19 +05:30
Mohammad Hasnain Mohsin Rajan
55c78b17ba fix(UAE VAT 201): change desk page record 2020-10-29 12:43:43 +05:30
Kenneth Sequeira
10f2468076 fix: make asset dashboard charts public (#23751) 2020-10-29 12:02:48 +05:30
Deepesh Garg
2004f64bcd Merge pull request #23755 from deepeshgarg007/accounting_dimension_gl_fix_v13
fix: Do not allow Company as accounting dimension
2020-10-29 11:58:19 +05:30
Deepesh Garg
0dcb5887f3 fix: Do not allow Company as accounting dimension 2020-10-29 11:54:14 +05:30
Syed Mujeer Hashmi
c17cdd7c2e fix: Fix for LMS Sign Up link (#23743)
Signed-off-by: Syed Mujeer Hashmi <mujeerhashmi@4csolutions.in>

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-10-29 11:10:06 +05:30
Mohammad Hasnain
eb3084b072 refactor(UAE VAT 201): break functions 2020-10-29 09:52:17 +05:30
Mohammad Hasnain
bf261a6c39 fix(UAE VAT 201): fix helper 2020-10-29 00:07:52 +05:30
Mohammad Hasnain
08846f6b11 refactor(UAE VAT 201): replace cartesian product to inner joins 2020-10-28 23:33:56 +05:30
Mohammad Hasnain
2c00549dfe refactor(UAE VAT 201): Use frappe api instead sql 2020-10-28 22:54:56 +05:30
Deepesh Garg
ae6a51b83a Merge pull request #23749 from deepeshgarg007/accounting_dimension_gl_fix
fix: Do not allow Company as accounting dimension
2020-10-28 22:05:11 +05:30
Mohammad Hasnain Mohsin Rajan
6e9e6d2491 Merge branch 'develop' into UAE-VAT-Format 2020-10-28 21:06:11 +05:30
Rohit Waghchaure
0fa741b267 added test cases 2020-10-28 17:43:36 +05:30
Deepesh Garg
94a630c255 fix: Do not allow Company as accounting dimension 2020-10-28 17:15:14 +05:30
Saqib
0d5aff54c2 fix: pos register shows cancelled documents (#23745) 2020-10-28 17:09:07 +05:30
Saqib
a51d9e3259 fix: pos register shows cancelled documents (#23747) 2020-10-28 17:08:47 +05:30
Saqib
b088c783df fix: item wise tax calculation (#23746) 2020-10-28 17:07:30 +05:30
Saqib
7d9dd3c628 fix: item wise tax calculation (#23744) 2020-10-28 17:07:10 +05:30
Rohit Waghchaure
a248dfb9a5 fix: multiple pricing rules are not working on selling side 2020-10-28 16:22:49 +05:30
Deepesh Garg
c9a6135d6c fix: Interest accrual after loan topup 2020-10-28 13:38:15 +05:30
Marica
7496ac0fe2 Merge branch 'develop' into pr-dn-return 2020-10-28 11:54:01 +05:30
Rushabh Mehta
1dd54e457d Merge pull request #23734 from rmehta/quality-form-cleanup
fix(cleanup): Quality Module, cleanup of forms, dashboards etc.
2020-10-28 11:36:00 +05:30
Mohammad Hasnain
81f2efd9b0 chore(UAE VAT 201): Rename emirate to vat emirate 2020-10-28 10:28:25 +05:30
Marica
4326d21a79 Merge branch 'develop' into purchase-invoice-payment-terms 2020-10-27 18:40:20 +05:30
Rushabh Mehta
12a2e51e20 fix(minor): translation string encoding in quality_procedure.py 2020-10-27 18:38:44 +05:30
Rushabh Mehta
cf1428904a fix(refactor): refactor tests, client side code 2020-10-27 17:36:30 +05:30
Marica
cf8698fb0b Merge branch 'develop' into pr-dn-return 2020-10-27 15:34:51 +05:30
marination
67f2c82d90 chore: Test case for Payment Terms in PI from PR 2020-10-27 14:49:43 +05:30
Deepesh Garg
0db4d91c30 Merge pull request #23550 from nextchamp-saqib/add-acc-to-a-group-fix
chore: validate is_group of child parent account
2020-10-27 13:54:17 +05:30
marination
fa085d7f4b fix: Payment Terms not fetched in Purchase Invoice from Purchase Receipt 2020-10-27 13:18:30 +05:30
Marica
16a1f7e7e3 Merge branch 'develop' into link-to-mr 2020-10-27 11:49:35 +05:30
Afshan
0a6e1b3503 fix: refactor 2020-10-26 21:23:31 +05:30
Afshan
bd987e56bc fix: showing error for wrong filters. (#23726)
* fix: showing error for wrong filters.

* style: formatting translation
2020-10-26 19:37:33 +05:30
Saqib
fa5fe18b70 fix error message
Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2020-10-26 19:27:02 +05:30
Deepesh Garg
13f4b3fc17 fix: Translation syntax 2020-10-26 19:01:36 +05:30
Deepesh Garg
a630de56e9 fix: Loan disbursement amount validation check 2020-10-26 18:53:56 +05:30
Deepesh Garg
64a4437b48 Merge branch 'develop' into add-acc-to-a-group-fix 2020-10-26 18:41:32 +05:30
Afshan
3f971b2371 fix: copying po no when mapping doc 2020-10-26 16:59:57 +05:30
Deepesh Garg
5b4742fd25 fix: Permission fixes for some doctypes 2020-10-26 16:56:05 +05:30
marination
689b77d1ed fix: Don't show buttons if status is Completed 2020-10-26 16:28:39 +05:30
Rushabh Mehta
ea49e30bfd fix(cleanup): cleaned up forms 2020-10-26 15:30:52 +05:30
marination
097b32fe67 feat: Close Production Plan 2020-10-26 15:27:37 +05:30
Deepesh Garg
d63fbd79f4 fix: Unaccrued interest from last accrual date instead of disbursement date 2020-10-26 14:20:55 +05:30
rohitwaghchaure
8ba05dc674 Merge branch 'develop' into skip-non-apply-tds-invoices-develop 2020-10-26 14:11:34 +05:30
rohitwaghchaure
8c961938ac Merge pull request #23662 from rohitwaghchaure/backport-subcontracting-issues
fix: multiple subcontracting issues
2020-10-26 14:10:50 +05:30
Saqib
34873bf26b fix: multiple pos issues (#23725)
* fix: point of sale search

* fix: pos fetches expired serial nos

* fix: pos doesn't refresh on route change

* fix: opening balances not set in opening entry

* fix: remove debug statement

* fix: invalid query if no serial no is reserved by pos invoice

* chore: make new order btn primary

* chore: filter warehouse by company

* chore: add shortcuts for new order and email

* fix: cannot fetch serial no if no batch control

* chore: add shortcuts for menu items

* feat: standard keyboard shortcuts for pos page

* feat: display only items that are in stock

* fix: empty point of sale page if opening entry dialog is closed

* feat: conversion factor in pos item details

* fix: show all invalid mode of payments

* chore: show all items if allow negative stock is checked

* fix: -ve amount set when changing mode of payment

* fix: pos closing validations

* fix: test

* fix: non expired serial no fetching query

* fix: cannot dismiss pos opening creation dialog

* fix: transalation strings

* fix: msgprint to throw

* chore: use as_list in frappe.throw

* chore: clean up pos invoice.js & .py

* fix: codacy

* fix: transalation syntax

* fix: codacy

* fix: set_missing_values called twice from pos page

* fix: mode selector with double spaces

* fix: do not allow tables in pos additional fields

* fix: pos is not defined

* feat: set mode of payments for returns

* fix: remove naming series from pos profile

* fix: error message

* fix: minor bugs

* chore: re-arrange pos closing entry detail fields

* fix: sider & frappe linter

* fix: more translation strings

* fix: travis

* fix: more translation strings

* fix: sider

* fix: travis

* fix: unexpected end of string

* fix: travis
2020-10-26 13:24:47 +05:30
Rohit Waghchaure
103ecec9d4 fixed translation syntax 2020-10-26 12:20:11 +05:30
Rohit Waghchaure
9caac6976c fix: incorrect supplied qty error 2020-10-26 12:19:00 +05:30
Rohit Waghchaure
538d62b43d fix: incorrect consumed qty if raw material with batch 2020-10-26 12:19:00 +05:30
rohitwaghchaure
4c688b71f3 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-10-26 12:19:00 +05:30
rohitwaghchaure
1cfa61628d fix: incorrect calculation for consumed qty for subcontract item (#23257)
* fix: incorrect calculation for consumed qty for subcontract item

* added test case
2020-10-26 12:19:00 +05:30
Saqib
60212ff9b9 fix: multiple pos issues (#23347)
* fix: point of sale search

* fix: pos fetches expired serial nos

* fix: pos doesn't refresh on route change

* fix: opening balances not set in opening entry

* fix: remove debug statement

* fix: invalid query if no serial no is reserved by pos invoice

* chore: make new order btn primary

* chore: filter warehouse by company

* chore: add shortcuts for new order and email

* fix: cannot fetch serial no if no batch control

* chore: add shortcuts for menu items

* feat: standard keyboard shortcuts for pos page

* feat: display only items that are in stock

* fix: empty point of sale page if opening entry dialog is closed

* feat: conversion factor in pos item details

* fix: show all invalid mode of payments

* chore: show all items if allow negative stock is checked

* fix: -ve amount set when changing mode of payment

* fix: pos closing validations

* fix: test

* fix: non expired serial no fetching query

* fix: cannot dismiss pos opening creation dialog

* fix: transalation strings

* fix: msgprint to throw

* chore: use as_list in frappe.throw

* chore: clean up pos invoice.js & .py

* fix: codacy

* fix: transalation syntax

* fix: codacy

* fix: set_missing_values called twice from pos page

* fix: mode selector with double spaces

* fix: do not allow tables in pos additional fields

* fix: pos is not defined

* feat: set mode of payments for returns

* fix: remove naming series from pos profile

* fix: error message

* fix: minor bugs

* chore: re-arrange pos closing entry detail fields

* fix: sider & frappe linter

* fix: more translation strings

* fix: travis

* fix: more translation strings

* fix: sider

* fix: travis

* fix: unexpected end of string

* fix: travis

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-26 11:17:04 +05:30
Mohammad Hasnain
5953acab8b chore(UAE VAT 201): cleanup 2020-10-25 15:43:21 +05:30
Nabin Hait
da301b0b7a fix: merge conflict 2020-10-25 13:07:59 +05:30
Mohammad Hasnain
0ceae0bd66 feat(UAE VAT 201): emirate customizable 2020-10-25 13:06:42 +05:30
Frappe PR Bot
33881fd7e2 chore: Update translations (#23717)
Co-authored-by: frappe <frappe@scw-dazzling-elgamal>
2020-10-25 12:36:35 +05:30
Mohammad Hasnain
0ac40c75aa chore(UAE VAT): update tesr dependencies 2020-10-25 01:16:06 +05:30
Nabin Hait
ba1cca6b2d fix: Show accounts in financial statements upto level 20 (#23718) 2020-10-24 22:00:32 +05:30
rohitwaghchaure
8be296b343 Merge pull request #23675 from rohitwaghchaure/feat-added-balance-serial-no-column-develop
feat: balance serial nos in stock ledger report
2020-10-24 19:04:31 +05:30
Rucha Mahabal
434791ed6e feat: Therapy Plan Template (#23558)
* feat: Therapy Plan Template

* feat: Handle billing Therapy Plans created via Templates

* feat: add dashboard to Therapy Plan Template

* fix: codacy issues

* fix: sider

* fix: validate Therapy Session overlap

* feat: Create Sales Invoice from Therapy Plan

* fix: sider

* chore: added tests for Therapy Plan Template

* fix: test

* fix: test

Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-24 14:20:38 +05:30
Rucha Mahabal
e977bc38a3 Merge pull request #23714 from ruchamahabal/education-module-fixes
fix: Education Module fixes
2020-10-24 01:08:42 +05:30
Rucha Mahabal
5ecf6b34b0 Merge branch 'develop' into education-module-fixes 2020-10-24 00:27:24 +05:30
Rucha Mahabal
1c4d732873 fix: sider and translation issues 2020-10-24 00:21:05 +05:30
Rucha Mahabal
b3f81ad5b0 fix: allow future attendance marking for leave applications 2020-10-23 21:21:58 +05:30
Rucha Mahabal
4887b69946 feat: Inpatient Medication Order and Entry (#23473)
* feat: Inpatient Medication Order

* feat: Inpatient Medication Entry

* feat: update medication orders on medication entry submission

* feat: added custom fields for medication references in Stock Entry

* feat: make stock entry if update stock is checked in IPMOE

* fix: handle cancel event for Inpatient Medication Entry

* fix(ux): add link and progress bar to dashboard

* refactor(ux): Adding Medication Orders without linking to Patient Encounter

* fix: make medication entry child table read only

* fix: filter stock items during manual medication order creation

* fix: codacy

* chore: tests for Inpatient Medication Order

* chore: tests for Inpatient Medication Entry

* fix: code clean-up

* fix: filter for inpatients in IPMO

* fix: add datetime validations for IPME filters

* fix: do not hardcode stock entry type

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-23 20:33:30 +05:30
Marica
6f45a86920 Merge branch 'develop' into debit-credit-opening-invoice-tool 2020-10-23 19:56:15 +05:30
Marica
97e065f94f Merge branch 'develop' into link-to-mr 2020-10-23 19:47:18 +05:30
Marica
3ad9393ff8 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-10-23 19:40:55 +05:30
Marica
0bd576aa44 fix: RFQ UX fixes (#23382)
* chore: RFQ UX fixes

* fix: RFQ to SUpplier Quotation Dialog

* fix: Remove 'No Quote' functionality

- No Quote in Suppliers table is removed
- It's use everywhere has been removed too (tests, server side files, DOM event)

* chore: More Info section and Project field

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-23 19:38:30 +05:30
Deepesh Garg
c4be397954 Merge pull request #23439 from Mangesh-Khairnar/mpesa-integration
feat: M-pesa integration
2020-10-23 19:35:52 +05:30
Saqib
b4448114cf feat: opening invoice creation tool with background jobs (#23595)
* feat: opening invoice creation tool with background jobs

* fix: tests

* fix: codacy

* fix: sider

* fix: codacy

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-23 19:32:37 +05:30
Marica
758a68da35 fix: Sequence Matcher shouldn't get None input (#23539)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-23 19:26:43 +05:30
Deepesh Garg
2b3f8e0c3b fix: Cancel repayment accrual interest entry on payment cancellation 2020-10-23 19:02:24 +05:30
Rucha Mahabal
b01334d2e1 fix: attendance cannot be marked outside of Academic Year validation 2020-10-23 18:32:33 +05:30
Michelle Alva
b39c17dd55 fix: Typo/Grammatical fixes in Settings (#23612)
* fix(Stock Settings): Type/Grammatical fixes in Settings

* fix: grammatical fixes in manufacturing settings

* fix: typo fix in accounting settings

* fix: typo fixes in HR settings

* fix: typo fixes in buying settings

* fix: typo fixes in Selling Settings

* Update erpnext/accounts/doctype/accounts_settings/accounts_settings.json

Co-authored-by: Sagar Vora <sagar@resilient.tech>

* Apply suggestions from code review

Co-authored-by: Sagar Vora <sagar@resilient.tech>

* Apply suggestions from code review

Co-authored-by: Sagar Vora <sagar@resilient.tech>

* Update accounts_settings.json

Co-authored-by: Marica <maricadsouza221197@gmail.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Rushabh Mehta <rmehta@gmail.com>
Co-authored-by: Sagar Vora <sagar@resilient.tech>
2020-10-23 18:22:26 +05:30
rohitwaghchaure
93bbc52a68 feat: added sequence id in routing for the completion of operations sequentially (#23641)
* feat: added sequence id in routing for the completion of operations sequentially

* fix: translation syntax
2020-10-23 18:18:03 +05:30
Marica
9d94f785e9 fix: Hide Ex-Employees from Employee Tree and minor message UX (#23711)
* fix: Hide Ex-Employees from Employee Tree and minor message UX

* fix: translation syntax
2020-10-23 18:15:55 +05:30
Rucha Mahabal
8b4d33474e fix: validation for attendance marked on future dates 2020-10-23 16:23:30 +05:30
Rucha Mahabal
6c3efbdb48 fix: filters for course and academic term fields 2020-10-23 16:11:40 +05:30
rohitwaghchaure
4eb87ea8e2 Merge pull request #23695 from rohitwaghchaure/fix-stock-entry-consumption-issue
fix: incorrect backflush qty in manufacture entry
2020-10-23 15:43:43 +05:30
Mangesh-Khairnar
675f79920e fix: consider the existing paid payment request for phone payment channel 2020-10-23 15:41:05 +05:30
Marica
99dfbfc365 Merge pull request #23709 from marination/cashier-closing-type-issue
fix: Cashier Closing Type Issue
2020-10-23 14:43:18 +05:30
Rohit Waghchaure
558879fad7 fix: Translation Syntax 2020-10-23 13:42:51 +05:30
Mangesh-Khairnar
e03a02d9c0 fix: show descriptive message for missing fields 2020-10-23 13:38:55 +05:30
marination
efcc489967 fix: Cashier Closing Type Issue 2020-10-23 11:55:03 +05:30
Deepesh Garg
ca6cb6433c Merge branch 'develop' of https://github.com/frappe/erpnext into loan_repayment_type_remove 2020-10-22 21:52:16 +05:30
Deepesh Garg
cd2c90451e fix: Unaccrued interest after disbursal 2020-10-22 21:50:06 +05:30
Nabin Hait
db474aea95 Merge branch 'develop' into link-to-mr 2020-10-22 21:45:07 +05:30
Nabin Hait
ed1553ea81 Merge branch 'develop' into mpesa-integration 2020-10-22 21:45:03 +05:30
Nabin Hait
c77ce99ce8 Merge branch 'develop' into UAE-VAT-Format 2020-10-22 21:44:55 +05:30
Nabin Hait
5778595d50 Merge branch 'develop' into debit-credit-opening-invoice-tool 2020-10-22 21:42:54 +05:30
Nabin Hait
9ff4a2ebd8 Merge branch 'develop' into feat-added-balance-serial-no-column-develop 2020-10-22 21:40:29 +05:30
Marica
3b1be2b1de fix: Add Taxes if missing via Update Items (#23702)
* 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:31 +05:30
rohitwaghchaure
e3ad5f0bc3 Merge pull request #23407 from deepeshgarg007/stock_entry_conversion_factor
fix: Conversion factor fixes in Stock Entry
2020-10-22 16:58:06 +05:30
Saqib
a6ff664386 fix: cannot auto unlink payments for credit/debit notes (#23689) 2020-10-22 16:30:57 +05:30
rohitwaghchaure
cc5171a324 Merge branch 'develop' into stock_entry_conversion_factor 2020-10-22 15:20:32 +05:30
Saqib
52435ee291 Merge branch 'develop' into UAE-VAT-Format 2020-10-22 14:16:28 +05:30
Suraj Shetty
6a0eb61af3 fix: Set customer only if contact is present (#23704) 2020-10-22 14:05:58 +05:30
Rohit Waghchaure
fa842e8774 fix: incorrect backflush qty in manufacture entry 2020-10-22 13:35:27 +05:30
Michelle Alva
52514a30d7 feat: Add Integrations Settings in desk (#22857)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
Co-authored-by: Marica <maricadsouza221197@gmail.com>
Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>
2020-10-22 09:52:34 +05:30
Deepesh Garg
2c97244bad fix: Test Cases 2020-10-22 09:34:27 +05:30
Mangesh-Khairnar
1a6d82a447 fix(payment-request): only consider paid transactions 2020-10-22 01:07:49 +05:30
Deepesh Garg
3f177bffac fix: Add test for loan top up 2020-10-21 22:15:18 +05:30
Deepesh Garg
8f9bab79a7 fix: Update no copy fields 2020-10-21 19:03:13 +05:30
Deepesh Garg
13cbda110d fix: Test Case 2020-10-21 16:11:52 +05:30
Mangesh-Khairnar
c8a04fec35 fix(mpesa-settings): add test cases to verify transactions 2020-10-21 14:07:00 +05:30
Deepesh Garg
2f65ab5355 fix: Validatiion for loan write off amountt 2020-10-21 10:40:59 +05:30
Saqib
4970386990 Merge branch 'develop' into UAE-VAT-Format 2020-10-20 18:38:44 +05:30
Mohammad Hasnain
8796567b42 chore(UAE VAT 201): add puctuation 2020-10-20 16:35:28 +05:30
Deepesh Garg
ce95bc2ce0 Merge pull request #23691 from nextchamp-saqib/fix-#214
fix: '>' not supported between instances of 'str' and 'int'
2020-10-20 14:17:55 +05:30
Mohammad Hasnain
33e9a1ab31 refactor(UAE VAT 201): solve linting issues 2020-10-20 13:04:38 +05:30
rohitwaghchaure
b74d17b1e3 Merge pull request #23688 from rohitwaghchaure/fixed-overproduction-issue-develop
fix: overproduction issue develop
2020-10-20 12:55:43 +05:30
Saqib Ansari
903055b7b6 fix: '>' not supported between instances of 'str' and 'int' 2020-10-20 11:59:06 +05:30
Mohammad Hasnain
6a24da4efd refactor(UAE VAT 201): break functions 2020-10-20 11:53:06 +05:30
Rohit Waghchaure
09572f10f8 fix: overproduction, not allowed to transfer extra materials 2020-10-20 11:01:36 +05:30
Mohammad Hasnain
c08591124c chore(UAE VAT 21): solve merge conflicts 2020-10-20 10:17:48 +05:30
Rohit Waghchaure
6471912216 fix: not able to do overproduction 2020-10-20 10:02:01 +05:30
Mohammad Hasnain
75ccb62d46 Merge branch 'develop' into UAE-VAT-Format 2020-10-20 09:40:44 +05:30
Mohammad Hasnain
78ec254da4 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2020-10-20 09:39:01 +05:30
Mohammad Hasnain
234036df32 chore(uae vat 201): solve travis issues 2020-10-20 07:42:10 +05:30
Mohammad Hasnain
853fd03f49 feat(uae vat 201): fix linter issues 2020-10-19 22:35:16 +05:30
Mohammad Hasnain
33cdfdfb7f feat(UAE VAT 201): Add tests for report 2020-10-19 20:48:43 +05:30
Mohammad Hasnain
c1b8004757 feat(UAE VAT 21): claimable to recoverable 2020-10-19 20:47:56 +05:30
Mangesh-Khairnar
5c29eb08c4 Merge branch 'develop' of https://github.com/frappe/erpnext into mpesa-integration 2020-10-19 18:29:46 +05:30
Mangesh-Khairnar
ebb8ee3dc6 fix(payment gateway account): add patch to set the payment channel as email 2020-10-19 18:27:40 +05:30
Mohammad Hasnain
32eb9a7893 feat(UAE VAT 201): claimable to recoverable 2020-10-19 17:58:50 +05:30
Joseph Marie Alba
8115be58a3 fix: Posting Date bug in load_defaults (#23415)
this.frm.posting_date is always invalid and should be changed to this.frm.doc.posting_date

The effect of this bug fix is, a default Posting Date value may now be set in Custom Script's onload event, and the default value will be honored.
Example: (Assuming posting date has been included in standard filter)
```
frappe.ui.form.on('Journal Entry', {
	before_load(frm) {
	    var posting_date = $("input[data-fieldname='posting_date']")[0].value
	    posting_date = moment(posting_date)._d
	    frm.set_value('posting_date', posting_date )
	}
})
```

Without the fix, the posting date will always be today's date. With the bug fix, the default value for posting date which is taken from the posting date's Standard Filter vale is honored.

Co-authored-by: Sagar Vora <sagar@resilient.tech>
2020-10-19 17:02:04 +05:30
Rucha Mahabal
174019a838 fix: Student Admission and Student Applicant fixes (#23515)
* fix: student admission list portal styling

* fix: added basic validations to Student Admission DocType

* fix: show program description and apply button for every program

* fix: don't show apply now button if admissions have not started

* fix: fetch admission details in student applicant web form

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-19 17:00:56 +05:30
Deepesh Garg
8859b71956 fix: Check for backdated validation only for transaction company (#23639)
* fix: Check SLE only for transaction company

* fix: Add tests

* fix: Move backdated entry validation from transaction base to stock ledger entry

* chore: Add tests

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-19 16:56:45 +05:30
Afshan
e0cb6c3b9d fix: removed extra space from label "Rate" (#23683) 2020-10-19 16:55:20 +05:30
rohitwaghchaure
3a17147a32 refactor: book loss amount in the COGS instead of stock received but not billed (#23671) 2020-10-19 16:54:11 +05:30
Glen Whitney
f5a8dc0f9c fix(Bank Reconciliation): update/merge CR/DR journal entry search (#23629)
* fix(Bank Reconciliation): update/merge CR/DR journal entry search

  Prior to this commit, the debit journal entry search (for
  credit-side Bank Transaction entries) and the corresponding
  credit journal entry search had diverged, with the latter
  working but the former not working. Thus, the search for
  journal entries matching a credit Bank Transaction (for the
  purposes of reconciliation) was never returning any matching
  journal entries, making reconciliation difficult.

  To fix this, this commit not only updates the debit journal
  entry search, but takes advantage of the fact that the two SQL
  queries for the two sides (debit/credit) differ only by the
  word "debit" or "credit," to merge the code for the two
  queries, making the code more DRY and hopefully reducing the
  chance of similar bugs occurring in the future.

* fix: message translation

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-19 16:49:55 +05:30
Saqib
896a0cc1f7 Merge branch 'develop' into add-acc-to-a-group-fix 2020-10-19 11:55:12 +05:30
rohitwaghchaure
2fbeb7c1dd refactor: added new filters in the Batch-wise balance history report (#23676)
* refactor: added new filters in the Batch-wise balance history report

* fix: added semicolon

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-19 11:37:54 +05:30
Frappe PR Bot
083f3fd981 chore: Update translations (#23677)
Co-authored-by: frappe <frappe@scw-dazzling-elgamal>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-19 11:19:27 +05:30
Rucha Mahabal
96bd65e203 fix: duplicate validation for Course Enrollment (#23659)
* fix: duplicate validation for Course Enrollment

* fix: clean-up failing tests
2020-10-19 10:41:25 +05:30
rohitwaghchaure
5d6686bd8c Fixed stock ageing report data develop (#23673)
* fix: stock ageing report

* Update stock_ageing.py
2020-10-19 10:39:20 +05:30
rohitwaghchaure
21bf5e9b8e Fixed incorrect operation time calculation develop (#23674)
* fix: incorrect operation time calculation for batch size

* Update test_work_order.py
2020-10-19 10:38:48 +05:30
Deepesh Garg
8cd8dbe15d fix: Add write off test 2020-10-18 22:26:09 +05:30
Deepesh Garg
9945ccc0cc fix: Write Off amount handling in Loan accrual and closure 2020-10-18 22:25:24 +05:30
Rucha Mahabal
c3b1aef9f9 fix(minor): msgprint not defined in POS Invoice (#23680)
* fix(minor): msgprint not defined in POS Invoice

* fix: translation friendly syntax
2020-10-18 19:28:26 +05:30
Deepesh Garg
c0e24735e3 feat: Add loan write off doctype 2020-10-17 22:31:36 +05:30
Faris Ansari
c6f4e84a45 Merge pull request #23640 from abhishekbalam/address_customisation 2020-10-16 18:21:09 +05:30
Marica
569e218aa0 Merge pull request #23666 from marination/payment-reco-mandatory-check
fix: Payment Reconciliation client side validations
2020-10-16 18:06:16 +05:30
Rohit Waghchaure
e6a29cc33a fix: performance issue while adding template item in the cart 2020-10-16 17:59:54 +05:30
Rohit Waghchaure
76fafe8842 feat: balance serial nos in stock leder report 2020-10-16 17:58:54 +05:30
Rohit Waghchaure
c70cc0d950 fix: tds calculation, skip invoices with "Apply Tax Withholding Amount" has disabled 2020-10-16 17:43:36 +05:30
rohitwaghchaure
e30397bf2e Merge pull request #23668 from rohitwaghchaure/incorrect-work-order-qty-againt-production-plan-develop
fix: production plan incorrect work order qty (#23264)
2020-10-16 17:41:25 +05:30
Deepesh Garg
eb3983ec6c Merge branch 'develop' of https://github.com/frappe/erpnext into loan_repayment_type_remove 2020-10-16 17:31:38 +05:30
Marica
ca5ad076d5 Merge branch 'develop' into link-to-mr 2020-10-16 16:49:38 +05:30
marination
359778e235 chore: Code cleanup, reduce redundancy 2020-10-16 16:47:23 +05:30
rohitwaghchaure
6646c524e6 Merge pull request #23670 from rohitwaghchaure/enabled-no-copy-for-bill-date-devlop
refactor: enabled no copy property for Supplier Invoice Date to due date validation
2020-10-16 16:45:56 +05:30
rohitwaghchaure
4eaa74c4f5 Merge pull request #23669 from rohitwaghchaure/not-able-to-make-material-request-from-so-develop
fix: not able to make material request from SO
2020-10-16 16:43:45 +05:30
Marica
3f7333af7f Merge branch 'develop' into payment-reco-mandatory-check 2020-10-16 16:03:59 +05:30
marination
b14ffc4349 fix: Missing semicolon 2020-10-16 16:04:56 +05:30
Faris Ansari
be0fcbea68 fix: Dont add Contact link if is company address 2020-10-16 15:55:25 +05:30
Faris Ansari
22bcad9dc7 fix: Cleanup code 2020-10-16 15:28:12 +05:30
Rohit Waghchaure
3cdaa92582 refactor: enabled no copy property for Supplier Invoice Date to avoid due date validation 2020-10-16 15:26:27 +05:30
Rohit Waghchaure
2ce67b0ef9 fix: not able to make material request from SO 2020-10-16 15:21:52 +05:30
rohitwaghchaure
f01856d7a9 fix: production plan incorrect work order qty (#23264)
* fix: production plan incorrect work order qty

* added test case

* Update test_production_plan.py
2020-10-16 15:19:23 +05:30
marination
e9b04dc727 fix: Payment Reconciliation client side validations 2020-10-16 12:36:13 +05:30
Saqib
2f71927af8 fix: fuel expense amount of vehicle log (#23632)
* fix: fuel expense amount of vehicle log

* fix: undefined var employee_id in test

* fix: test
2020-10-16 12:32:59 +05:30
Mangesh-Khairnar
c66fce4965 fix: reload current pos doc after updating the information via callback 2020-10-16 12:03:08 +05:30
Mangesh-Khairnar
cab5d22ef5 fix: add a realtime publish to refresh the dashboard content 2020-10-16 11:38:07 +05:30
Saqib Ansari
de505631a6 fix: codacy 2020-10-16 11:30:34 +05:30
Saqib Ansari
1dec68e8e4 fix: transalation syntax 2020-10-16 10:47:29 +05:30
Deepesh Garg
775e689ba9 fix: Add tests 2020-10-15 22:09:05 +05:30
Deepesh Garg
01a7297f69 Merge branch 'develop' of https://github.com/frappe/erpnext into stock_entry_conversion_factor 2020-10-15 17:13:29 +05:30
rohitwaghchaure
e8a3825ed1 Merge pull request #23649 from rohitwaghchaure/set-current-serial-no-in-serial-no-field-develop
fix: serial no field is blank in stock reconciliation
2020-10-15 16:56:39 +05:30
Rohit Waghchaure
5f465394a7 fix: serial no field is blank in stock reconciliation 2020-10-15 15:56:50 +05:30
rohitwaghchaure
79c1c4e3fb Merge pull request #23398 from anupamvs/quality-procedure-v13
fix: quality procedure parent
2020-10-15 15:52:22 +05:30
Abhishek Balam
349fcfd6a5 fix: set default filters on unchecking box, code cleanup 2020-10-15 12:21:43 +05:30
Wolfram Schmidt
3959ed5bef Update payment_term.json (#23644)
added descriptions to fields to clarify input.
2020-10-14 22:48:46 +05:30
Deepesh Garg
ddccec4f5d Merge pull request #23643 from deepeshgarg007/payment_reco_cancel
fix: Do not get cancelled vouchers in Payment Reconciliation
2020-10-14 22:09:08 +05:30
Deepesh Garg
37c2ed269e fix: Do not get cancelled vouchers in Payment Reconciliation 2020-10-14 21:47:43 +05:30
Abhishek Balam
89419c9a30 fix: move get_shipping_address() from frappe to erpnext and fix references 2020-10-14 20:09:05 +05:30
Abhishek Balam
2f528c1c73 fix: gettext import and changed function order in address.py 2020-10-14 19:48:57 +05:30
Abhishek Balam
c0215d257c Merge branch 'develop' into address_customisation 2020-10-14 19:33:16 +05:30
Abhishek Balam
6e9e7b4c7a fix: serverside validation overrides 2020-10-14 19:31:37 +05:30
Abhishek Balam
38b26c8f3e fix: added semicolons 2020-10-14 18:24:51 +05:30
rohitwaghchaure
f8ce64c0ca Merge pull request #23443 from marination/rfq-email
feat: Supplier Email Preview in RFQ
2020-10-14 18:16:59 +05:30
Abhishek Balam
346ca568b7 fix: set company link in address when is_your_company_address is set 2020-10-14 18:11:04 +05:30
Mohammad Hasnain
b9dc13294d chore(UAE VAT 201) solve translations issues 2020-10-14 16:56:26 +05:30
Nabin Hait
a2d6f254c5 Merge branch 'develop' into add-acc-to-a-group-fix 2020-10-14 16:34:56 +05:30
Afshan
9e08b21e0b fix: removing unused imports (#23633) 2020-10-14 15:44:52 +05:30
Saqib
577a7fe01d fix: stock & account balance difference in fraction (#23635) 2020-10-14 15:44:30 +05:30
Marica
1cdb9b5b39 Merge branch 'develop' into debit-credit-opening-invoice-tool 2020-10-14 14:26:22 +05:30
marination
b5d16a82eb fix: Dont overrule Item Price via Pricing Rule Rate if 0 2020-10-14 14:05:54 +05:30
Mohammad Hasnain
dfc3993cec chore(UAE VAT 21): rename report 2020-10-14 12:21:36 +05:30
Raffael Meyer
d1863e6f9e fix: Chart of Accounts (#23530)
* fix: Chart of Accounts

* fix: Chart of Accounts with lower case "of"

Co-authored-by: Marica <maricadsouza221197@gmail.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-14 10:29:53 +05:30
Anupam Kumar
31417864cb fix: project value is missing from procurement-tracker (#23549)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-10-14 10:29:25 +05:30
Frappe PR Bot
d8ddc321f8 chore: Update translations (#23577)
Co-authored-by: frappe <frappe@scw-dazzling-elgamal>
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-10-14 10:28:21 +05:30
Suraj Shetty
0a6770a4ef chore: GitHub actions for translation syntax validation and docs link (#23627)
* chore: Add GA for translation syntax validation

* chore: Documentation link checker

Co-authored-by: Gavin D'souza <gavin18d@gmail.com>

* fix: URL

Co-authored-by: Nabin Hait <nabinhait@gmail.com>

Co-authored-by: Gavin D'souza <gavin18d@gmail.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-10-14 10:21:31 +05:30
Mohammad Hasnain Mohsin Rajan
abf628c95d Merge branch 'develop' into UAE-VAT-Format 2020-10-14 00:26:57 +05:30
Rucha Mahabal
317fd06483 Merge pull request #23333 from ruchamahabal/enrollment-fixes
fix: Program and Course Enrollment fixes
2020-10-14 00:08:25 +05:30
rohitwaghchaure
cb791330f6 Merge branch 'develop' into quality-procedure-v13 2020-10-13 23:39:45 +05:30
Rucha Mahabal
f625da2b8b Merge branch 'develop' into enrollment-fixes 2020-10-13 23:24:42 +05:30
rohitwaghchaure
4d93bfebd8 Merge pull request #23622 from AfshanKhan/fix-billing-summary-report-precision
fix: setting user defined precision instead of 2
2020-10-13 22:46:02 +05:30
Rucha Mahabal
ff0917358c fix: test 2020-10-13 22:39:05 +05:30
Saqib
639eea142f Merge branch 'develop' into add-acc-to-a-group-fix 2020-10-13 21:42:22 +05:30
Deepesh Garg
8a7886ac60 Merge pull request #23621 from frappe/address_template_luxembourg
feat: add address template for luxembourg
2020-10-13 21:31:51 +05:30
Deepesh Garg
71a58a8fd0 Merge pull request #23605 from marination/item-link-formatter
fix: Item Link Formatter Behaviour
2020-10-13 21:26:00 +05:30
Sun Howwrongbum
93da52941e fix: consider rounded_total in returns (#23609)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-10-13 21:23:26 +05:30
Deepesh Garg
06268e5f57 Merge pull request #23623 from kennethsequeira/italy-fy
fix: Fiscal Year and Tax Rates for Italy
2020-10-13 20:29:51 +05:30
rohitwaghchaure
db0fefd92c Merge pull request #23614 from aakvatech/patch-3
feat: Add company and correct filter in bank reconciliation statement
2020-10-13 19:59:31 +05:30
rohitwaghchaure
2a8a2215d0 Merge pull request #23620 from anupamvs/lead-address
fix: displaying mandatory address field in Lead form
2020-10-13 19:54:44 +05:30
Kenneth Sequeira
3eec4e61ab fix: GST rates for Australia 2020-10-13 19:23:48 +05:30
Kenneth Sequeira
1b329aaa7b fix: json format fixes 2020-10-13 19:10:09 +05:30
Afshan
c359d3528f fix: setting user precision instead of default 2020-10-13 18:54:54 +05:30
Deepesh Garg
54c898708b Merge branch 'develop' of https://github.com/frappe/erpnext into loan_repayment_type_remove 2020-10-13 18:11:45 +05:30
Deepesh Garg
66967c6d45 fix: Loan Security unpledge on loan cancel 2020-10-13 18:10:51 +05:30
Anupam
7db38058f3 fix: displayings mandatory address field in Lead form 2020-10-13 17:33:58 +05:30
Rucha Mahabal
fc8ced9958 Merge branch 'develop' into enrollment-fixes 2020-10-13 17:28:39 +05:30
Mangesh-Khairnar
51228b5ee3 fix: make response handling more descriptive 2020-10-13 17:10:16 +05:30
barredterra
9aa3e7a37d feat: address template for luxembourg 2020-10-13 13:35:33 +02:00
Marica
43d3176d62 Merge branch 'develop' into patch-3 2020-10-13 17:01:18 +05:30
Marica
50b708f615 Merge branch 'develop' into pr-dn-return 2020-10-13 16:57:11 +05:30
Marica
0ed3e947ba Merge branch 'develop' into rfq-email 2020-10-13 16:55:25 +05:30
Marica
6f819d797b Merge branch 'develop' into debit-credit-opening-invoice-tool 2020-10-13 16:54:39 +05:30
Marica
9cd79b6859 Merge branch 'develop' into item-link-formatter 2020-10-13 16:54:28 +05:30
Marica
c5e139a542 fix: Travis (#23606)
* fix: Rename `make_supplier_quotation` to `make_supplier_quotation_from_rfq` in missing places

* fix: Item Barcode and Test

* fix: Over Receipt on subcontracting test

* fix: POS Invoice and Loyalty Program Tests

* fix: POS serialized item test and subcontracting exploded items in PO

* fix: Subcontracting test considering sourced_by_supplier items

* fix: Make only one Additonal Salary List with overwrite set
2020-10-13 16:53:10 +05:30
Anupam
3245eaaeb0 fix: displayings mandatory address field in Lead form 2020-10-13 15:35:10 +05:30
Marica
ae1c65cde7 Merge branch 'develop' into item-link-formatter 2020-10-13 15:05:53 +05:30
Anupam
528a75ae9b fix: review changes 2020-10-13 11:46:52 +05:30
justmejust
ed779a416c Update ar.csv (#23490)
these changes made to the file is critical and important for Arabic user of the this software .the changes made to make appropriate and more correct meaning fro example in the Blanket Orders from Costumers the previous translation meaning امر بطانية) ) which mean you have an order to get ta Blanket which used when  you want to sleep.
so i decided to make this changes and will continue update this translation file in the future.
2020-10-13 11:46:02 +05:30
aakvatech
617892db20 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 08:18:59 +03:00
Deepesh Garg
8c13fded17 fix: Add unaccrued interest in interest amount for loan closure 2020-10-13 09:23:04 +05:30
Marica
da83e09cb3 Merge pull request #23607 from marination/holiday_list
fix: Convert dates to datetime.date before comparing in Holiday List
2020-10-13 02:46:53 +05:30
marination
5b790a0095 fix: Convert dates to datetime.date before comparing in Holiday List 2020-10-13 02:37:55 +05:30
Kenneth Sequeira
968f61d8ba fix: add multiple VAT rates for Italy 2020-10-13 00:25:46 +05:30
Kenneth Sequeira
56d305b966 fix: update italy fiscal year 2020-10-13 00:07:52 +05:30
Marica
978e16481e Merge branch 'develop' into debit-credit-opening-invoice-tool 2020-10-12 21:17:22 +05:30
Deepesh Garg
1137d8bd33 Merge pull request #23476 from anupamvs/subscription-invoice-issue
fix: Payment Schedule not fetching
2020-10-12 20:34:43 +05:30
marination
824f48fd23 fix: Item Link Formatter Behaviour 2020-10-12 20:08:03 +05:30
Anupam Kumar
71c02a6e89 Merge branch 'develop' into subscription-invoice-issue 2020-10-12 19:41:31 +05:30
rohitwaghchaure
b3aeba1a1b Merge pull request #23453 from frappe/validate_regional_germany
feat: validate Sales Invoice for Germany
2020-10-12 18:45:16 +05:30
Raffael Meyer
0975b961f9 Merge branch 'develop' into validate_regional_germany 2020-10-12 15:08:58 +02:00
Saqib
3daad224ad fix: cannot merge pos invoice if validate selling price is checked (#23593)
* fix: cannot merge pos invoice if validate selling price is checked

* fix: validate selling price

* fix: test

* chore: add test

* fix: error message
2020-10-12 18:31:23 +05:30
Marica
9cc05bb83e Merge branch 'develop' into rfq-email 2020-10-12 18:02:15 +05:30
rohitwaghchaure
4164d08d17 Merge pull request #23323 from marination/supplier-quotn-comparison
feat: Supplier Quotation Comparison - v3
2020-10-12 17:55:15 +05:30
Marica
73e16ca16a Merge pull request #23554 from rohitwaghchaure/print-uom-after-quantity-patch
fix: added patch to make custom field 'Print UOM after Quantity'
2020-10-12 17:43:39 +05:30
Marica
41067e204c Merge branch 'develop' into print-uom-after-quantity-patch 2020-10-12 17:32:29 +05:30
Marica
ea1da6e4b8 Merge pull request #23534 from anupamvs/company-issue
fix: error log while creating company
2020-10-12 17:25:57 +05:30
Marica
6d935d4e48 Merge branch 'develop' into company-issue 2020-10-12 17:25:12 +05:30
Marica
dc75fe2cb6 Merge pull request #23478 from marination/supplier-quotation-ux
feat: Supplier Quotation UX fixes
2020-10-12 17:17:27 +05:30
Marica
14b9c79ddc Merge branch 'develop' into supplier-quotation-ux 2020-10-12 17:16:28 +05:30
Saqib
b332c5f06f fix: sales invoice series gets overwritten with pos invoice series (#23479)
* fix: sales invoice series gets overwritten with pos invoice series

* chore: show is consolidated only if sales invoice is pos
2020-10-12 17:10:37 +05:30
Saqib
ebb0a6266a fix: last purchase rate in item prices report (#23506)
* 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:09 +05:30
Saqib
ebbe285872 feat: (report) POS Register (#23313)
* feat: pos register report

* feat: group by fields in pos register

* chore: add paid amount column

* fix: (minor) remove redundant group by label
2020-10-12 17:02:31 +05:30
rohitwaghchaure
a060f8c00b Merge pull request #23524 from michellealva/employee_exit
fix(Employee): Field level change in Exit section
2020-10-12 16:23:54 +05:30
rohitwaghchaure
14e7656a57 Merge pull request #23588 from kevingdc/fix/asset-update-maintenance-status
fix: Asset status after maintenance or repair
2020-10-12 16:13:29 +05:30
rohitwaghchaure
80519b1098 Merge pull request #23596 from marination/item-attribute-validation-on-non-template-item
fix: Perform Item Attribute Value Validation on Variants Only
2020-10-12 16:12:02 +05:30
Marica
e9f0268d32 Merge branch 'develop' into item-attribute-validation-on-non-template-item 2020-10-12 15:26:34 +05:30
rohitwaghchaure
a57ad47cb8 Merge pull request #23538 from kennethsequeira/spellcheck
chore: spell fixes for Condition
2020-10-12 15:25:23 +05:30
Marica
bf0b948d0b Merge pull request #23362 from marination/mr-ux
fix: More MR UX fixes
2020-10-12 15:22:29 +05:30
Marica
aeba75cd08 Merge branch 'develop' into mr-ux 2020-10-12 15:17:32 +05:30
rohitwaghchaure
4e59abf0bf Merge pull request #23583 from anupamvs/item-price
fix: can't save item price after adding child table
2020-10-12 15:15:50 +05:30
Rushabh Mehta
2bef986f14 Merge pull request #23450 from michellealva/jc
fix: Change Error Message in Work Order
2020-10-12 15:07:21 +05:30
Glen Whitney
6ec3dc5453 fix(asset): cannot create asset if cwip disabled and account not set (#23580)
* Never add an asset GL entry if CWIP is not enabled

* 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

Co-authored-by: Saqib Ansari <nextchamp.saqib@gmail.com>
2020-10-12 14:56:55 +05:30
Kevin Chan
f6bcd5c2b2 test: Add test case for duplicate checking 2020-10-12 16:57:33 +08:00
Kevin Chan
58389ebd40 style: Collapse whitespace 2020-10-12 15:20:11 +08:00
Deepesh Garg
15d46040ff fix: Do not consider opening entries for TDS calculation (#23597) 2020-10-12 12:39:08 +05:30
Anupam
efc3e1fa62 fix: Payment Schedule not fetching 2020-10-12 12:15:49 +05:30
marination
03975a692e fix: Perform Item Attribute Value Validation on Variants Only 2020-10-12 12:03:07 +05:30
Kevin Chan
39bed3a65e fix: Add null or empty checking to validation
This commit adds null or empty checking in the **Item Price** DocType's
`check_duplicates()`. This was done to fix a bug where some prices are
shown to be duplciates even though they aren't because they don't have
values in some fields.
2020-10-12 11:42:05 +08:00
Kevin Chan
a322f0d0b3 chore: Fix error message grammar 2020-10-12 11:38:55 +08:00
Kevin Chan
7a86a77322 fix: Asset status after maintenance or repair
Fix a bug where an **Asset**'s status is not being set to what it was
previously after an **Asset Repair** or **Asset Maintenance**.
2020-10-12 11:30:36 +08:00
Deepesh Garg
c9ebef4d30 Merge pull request #23567 from nextchamp-saqib/restrict-future-posting
chore: do not allow future transactions
2020-10-11 20:55:38 +05:30
Deepesh Garg
a034311b1b fix: Acrual type 2020-10-11 20:52:02 +05:30
Anupam
2be23309bb fix: can't add child table in item price 2020-10-11 14:14:50 +05:30
Mohammad Hasnain
ac451b3a54 feat(UAE VAT 21): Move standard rated expense from Sales invoice to Purchase invoice 2020-10-11 01:40:22 +05:30
Deepesh Garg
d86b7c5537 fix: Remove repayment type 2020-10-11 00:37:34 +05:30
Deepesh Garg
6dccf79250 fix: Add accrual type and penalty field in interest accrual 2020-10-10 23:32:57 +05:30
Deepesh Garg
6d27adccfc fix: Button to close loan 2020-10-10 23:28:39 +05:30
Deepesh Garg
51c6cf692e fix: Add method for loan closure 2020-10-10 23:20:36 +05:30
Mohammad Hasnain
fc2ace1a31 Merge branch 'develop' into UAE-VAT-Format 2020-10-10 22:06:06 +05:30
Mohammad Hasnain
72bcb56368 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2020-10-10 22:04:16 +05:30
Saqib Ansari
3d91d48b77 fix: validate only for stock transactions 2020-10-10 21:56:50 +05:30
rohitwaghchaure
ad9db89514 Merge pull request #23573 from deepeshgarg007/opening_jv
fix: Opening Journal Entry via Data Import
2020-10-10 13:16:41 +05:30
Deepesh Garg
e9c1098f5f Merge pull request #23566 from michellealva/sales_team
fix: Change name of Sales Team table
2020-10-10 12:14:00 +05:30
rohitwaghchaure
1bcd84450c Merge pull request #23560 from deepeshgarg007/regional_doctypes_desk
fix: Add lower deduction certificate in desk page
2020-10-10 11:23:26 +05:30
rohitwaghchaure
01e23264a6 Merge pull request #23557 from KanchanChauhan/issue#23475-2
feat: Supplier Sourced Items in BOM
2020-10-10 11:17:53 +05:30
rohitwaghchaure
5065f8ac83 Merge pull request #23545 from tundebabzy/develop
fix: pass self.flags.ignore_permissions to the ignore_permissions
2020-10-10 11:11:57 +05:30
rohitwaghchaure
04ddf24ffe Merge pull request #23572 from marination/payment-entry-list-view
fix: Check if list view standard filter exists in Payment Entry
2020-10-10 11:09:31 +05:30
rohitwaghchaure
9333a1dd54 Merge pull request #23570 from nextchamp-saqib/si-dashboard-fix
fix: (revert) Add Delivery Note Count in Sales Invoice Dashboard
2020-10-10 11:08:37 +05:30
rohitwaghchaure
ea8ea4abb5 Merge pull request #23569 from marination/prod-order-reference-in-item
fix: Remove Production Order reference from Item Validation
2020-10-10 11:03:26 +05:30
Kanchan Chauhan
654c36ea99 feat: Supplier Sourced Items in BOM 2020-10-09 22:05:03 +05:30
Deepesh Garg
2676f96203 fix: Opening Journal Entry via Data Import 2020-10-09 21:58:38 +05:30
marination
07731c7735 fix: Check if list view standard filter exists in Payment Entry 2020-10-09 21:44:23 +05:30
Saqib
56fea7d243 fix: update items after submission ignores precision (#23491)
* fix: update items after submission ignores precision

* chore: add test
2020-10-09 21:19:25 +05:30
Saqib Ansari
d927c8efba fix: (revert) Add Delivery Note Count in Sales Invoice Dashboard 2020-10-09 21:00:33 +05:30
marination
bd6d5eb5ac fix: Remove Production Order reference from Item Validation 2020-10-09 20:57:17 +05:30
michellealva
1bc7fc41a5 fix: Change name of Sales Team table 2020-10-09 16:01:13 +05:30
Saqib Ansari
776d8f72cf chore: do not allow future transactions 2020-10-09 15:36:11 +05:30
Anupam
22dc42efb9 fix: error log while creating company 2020-10-09 14:58:39 +05:30
Tunde Akinyanmi
f2b12a3b9c Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2020-10-09 07:20:19 +01:00
Rucha Mahabal
a6dc7833f6 Merge pull request #23537 from michellealva/missing_links
fix: Add links in Stock desk page
2020-10-09 11:46:14 +05:30
Deepesh Garg
5e6ea36938 fix: Add lower deduction certificate in desk page 2020-10-08 20:32:36 +05:30
marination
4be5b5c891 fix: Handle missing Account and Item in Opening Invoice Creation Tool 2020-10-08 19:51:42 +05:30
Rohit Waghchaure
a86cab0bb2 fix: added patch to make custom field 'Print UOM after Quantity' 2020-10-08 16:41:23 +05:30
Deepesh Garg
c837b5f48c Merge pull request #23014 from abhishekbalam/pricing_rule_on_condition
feat(Accounts): Add Condition Field In Pricing Rule
2020-10-08 16:32:21 +05:30
Abhishek Balam
783cdc1c1f Merge pull request #23523 from michellealva/budget
fix(Budget): Change options in select field
2020-10-08 16:27:31 +05:30
Abhishek Balam
6d1af84fef Merge branch 'develop' into budget 2020-10-08 16:23:36 +05:30
Deepesh Garg
8242da6310 Merge branch 'develop' of https://github.com/frappe/erpnext into stock_entry_conversion_factor 2020-10-08 16:23:34 +05:30
Saqib Ansari
3f28fb19aa chore: validate is_group of child parent account before auto creating an account 2020-10-08 14:57:27 +05:30
rohitwaghchaure
242bae4a81 Merge pull request #23548 from michellealva/selling_links
fix(Selling): Add missing reports on desk
2020-10-08 11:24:46 +05:30
Saqib
22b4c86a38 fix: cannot merge pos invoices with inclusive tax (#23541)
* fix: cannot merge pos invoices with inclusive tax

* fix: item rate calculation
2020-10-08 11:23:21 +05:30
michellealva
38aee6e3cb fix(Selling): Add missing reports on desk 2020-10-08 10:24:11 +05:30
Tunde Akinyanmi
4010196488 fix: pass self.flags.ignore_permissions to the ignore_permissions
argument of Address and Contact controller
2020-10-08 02:25:09 +01:00
Rucha Mahabal
d4c80abb6d Merge pull request #23542 from kennethsequeira/student-app-nat
fix: remove default nationality as Indian in Student Applicant webform
2020-10-07 23:26:31 +05:30
Kenneth Sequeira
0b84a6399b fix: remove default nationality as Indian 2020-10-07 23:14:27 +05:30
Marica
82cb47fea0 Merge pull request #23533 from frappe/fix_title_customer_name
fix: use party name as title
2020-10-07 20:49:21 +05:30
Kenneth Sequeira
be0ebc5085 spell fixes for Condition 2020-10-07 20:47:12 +05:30
Marica
71db253b86 Merge branch 'develop' into fix_title_customer_name 2020-10-07 20:27:32 +05:30
Abhishek Balam
ebf53a7f25 fix(HR): Appraisal form Enhancements (#23500)
* fix: remove total score button

* Removing conflicts
2020-10-07 19:59:26 +05:30
michellealva
3525ddabc5 fix: Add links in Stock desk page 2020-10-07 19:02:19 +05:30
barredterra
242579b77c fix: use party name as title 2020-10-07 14:34:21 +02:00
Marica
bd775cbf26 Merge pull request #23529 from michellealva/acocunts_settings_fix
fix: Typo in Accounts Settings
2020-10-07 15:22:15 +05:30
michellealva
a9c2401a2d fix: Typo in Accounts Setings 2020-10-07 15:13:57 +05:30
Abhishek Balam
937308854a Merge branch 'develop' into pricing_rule_on_condition 2020-10-07 13:35:53 +05:30
Raffael Meyer
2acfc2a034 Merge branch 'develop' into validate_regional_germany 2020-10-06 16:53:52 +02:00
Deepesh Garg
b16e447f86 Merge pull request #23352 from deepeshgarg007/tax_fetch_quote
fix: Taxes not getting fetched from Opportunity to Quotation
2020-10-06 19:55:21 +05:30
michellealva
203585f292 fix(Employee): Field level change in Exit section 2020-10-06 16:00:39 +05:30
michellealva
2e425efae8 fix: blank option in the beginning 2020-10-06 15:15:29 +05:30
michellealva
a2aae5644e fix(Budget): Change options in select field 2020-10-06 15:02:01 +05:30
Mangesh-Khairnar
faa0cce7a7 fix: pass mobile number to generate the stk push 2020-10-06 13:58:54 +05:30
Deepesh Garg
f183dd6d3a Merge branch 'develop' into tax_fetch_quote 2020-10-06 13:27:28 +05:30
rohitwaghchaure
59ee417d31 Merge pull request #23483 from marination/item-attr
fix: Handle Blank from/to range in Numeric Item Attribute
2020-10-06 12:00:26 +05:30
Mangesh-Khairnar
862433febb fix: create custom field for mpesa receipt 2020-10-06 10:59:59 +05:30
Mangesh-Khairnar
8d54d61c28 fix: handle payment completion via payment request 2020-10-05 22:37:31 +05:30
Sun Howwrongbum
72a596971c fix: also update employee field when renamed (#23482) 2020-10-05 20:48:53 +05:30
rohitwaghchaure
bb61c77c6e Merge pull request #23514 from deepeshgarg007/batch_search_fix
fix: Condition in batch selector query
2020-10-05 16:05:52 +05:30
Deepesh Garg
f58a5ec6a5 fix: Codition in batch selector query 2020-10-05 13:55:53 +05:30
rohitwaghchaure
96fadb7c9b Merge pull request #23511 from marination/sales-order-project
fix: Show Project under Create button in SO
2020-10-05 13:17:48 +05:30
rohitwaghchaure
ad2dd6062e Merge pull request #23513 from deepeshgarg007/batch_search
fix: Search batches based on search fields
2020-10-05 13:16:03 +05:30
Deepesh Garg
1fae7749be fix: Search batches based on search fields 2020-10-05 12:38:54 +05:30
marination
e7af9ff999 fix: Show Project under Create button in SO 2020-10-05 12:24:43 +05:30
Saqib
2016a34e30 fix: naming series - cannot reset current value to zero (#23504) 2020-10-04 18:13:24 +05:30
Deepesh Garg
5bf35e465e Merge pull request #23220 from marination/account-add-rename
feat: Validate and Update Child Company Accounts on Rename/Adding Account
2020-10-04 15:19:26 +05:30
Mangesh-Khairnar
1bef6a530c fix: create payment entry against payment request 2020-10-04 13:01:11 +05:30
Deepesh Garg
f8bf139692 Merge pull request #23498 from aakvatech/patch-3
fix: get_outstanding_invoices not ignoring the cancelled transactions
2020-10-03 22:36:24 +05:30
Suraj Shetty
01e986b11c Merge pull request #23493 from frappe-pr-bot/translations-2020-10-03-develop
chore: Update translations
2020-10-03 22:17:18 +05:30
aakvatech
38ccf82604 fix: get_outstanding_invoices not ignoring the cancelled transactions
Added is_cancelled=0 in 2 places for get_outstanding_invoices
2020-10-03 19:41:38 +03:00
Suraj Shetty
5dc0432cff chore: Update translations 2020-10-03 08:52:07 +00:00
rohitwaghchaure
3c77a4697b Merge pull request #23471 from rohitwaghchaure/fixed-currency-issue-in-pl-report
fix: currency symbol in profit and loss report
2020-10-03 10:32:00 +05:30
Suraj Shetty
262590b672 Merge pull request #23481 from frappe-pr-bot/translations-2020-10-02-develop
chore: Update translations
2020-10-02 13:43:12 +05:30
marination
c213cd96c5 fix: Handle Blank from/to range in Numeric Item Attribute 2020-10-02 12:22:28 +05:30
marination
0bc61b31f7 chore: Move Qty fields (received qty,etc.) close to Qty/Stock UOM 2020-10-02 11:54:54 +05:30
Suraj Shetty
70c06512d2 chore: Update translations 2020-10-02 03:57:15 +00:00
marination
b9e2f17f4f fix: More secure query 2020-10-01 21:31:51 +05:30
marination
f57ba86bce chore: Add Date and Valid Till to List View 2020-10-01 21:10:00 +05:30
marination
5006345a0a chore: Fetch RFQs in Get Items from RFQ based on Supplier selected
- Rfq will appear only if selected supplier is in the RFQ
2020-10-01 20:41:05 +05:30
marination
4993ef19d6 feat: Supplier Quotation UX fixes 2020-10-01 16:35:09 +05:30
marination
29d7528a95 fix: Hide Preview Email button on submitted doc 2020-10-01 14:55:21 +05:30
Abhishek Balam
71c24c8a90 feat: add tests 2020-10-01 14:54:11 +05:30
marination
f90c3602a7 fix: Price should be total amount, modified deskpage 2020-10-01 14:38:17 +05:30
hasnain2808
f8db9582c3 feat(UAE VAT 21): Add currency formatting 2020-10-01 12:59:39 +05:30
hasnain2808
8cc6f2b388 feat(UAE VAT 21): add fixed width to columns 2020-10-01 12:44:39 +05:30
hasnain2808
10a3a338b6 refactor: change uae vat settingplural 2020-09-30 21:51:00 +05:30
Faris Ansari
db8764a520 Merge pull request #23201 from alyf-de/website_theme_scss
fix: style for website theme
2020-09-30 18:26:58 +05:30
rohitwaghchaure
d65e050f4b Update profit_and_loss_statement.py 2020-09-30 18:17:21 +05:30
Saurabh
2118d215e5 fix: validate theme_scss attribute (#23467)
#22851
2020-09-30 18:10:30 +05:30
Rohit Waghchaure
b428e4c493 fix: currency symbol in profit and loss report 2020-09-30 17:44:35 +05:30
Deepesh Garg
287014a9a2 fix: Remove any taxes fetched due to unknown rules 2020-09-30 13:42:10 +05:30
Deepesh Garg
fc71e5b5b7 fix: Remove any taxes fetched due to unknown rules 2020-09-30 13:42:00 +05:30
Deepesh Garg
23313538df Merge pull request #23465 from abhishekbalam/currency_in_trial_balance
fix(Accounts): Add Currency filter in Trial Balance report
2020-09-30 13:16:16 +05:30
Marica
6dc940fdb8 Merge pull request #23457 from marination/update-items-perm
fix: Check only Read and Write Permission in Update Items
2020-09-30 12:55:06 +05:30
Marica
8fbd960f66 Merge branch 'develop' into update-items-perm 2020-09-30 12:51:35 +05:30
hasnain2808
3294f86b92 refactor: fix linting 2020-09-30 12:15:07 +05:30
Shivam Mishra
7aca810b58 Merge pull request #23418 from scmmishra/better-logging-for-membership 2020-09-30 12:02:23 +05:30
Shivam Mishra
b04b53c613 Merge branch 'develop' into better-logging-for-membership 2020-09-30 12:01:54 +05:30
Shivam Mishra
86171a3fda fix: translate error log 2020-09-30 12:01:35 +05:30
Shivam Mishra
3ec67077a9 chore: use .format for message
Co-authored-by: Sagar Vora <sagar@resilient.tech>
2020-09-30 12:00:46 +05:30
Abhishek Balam
001e7e9df9 fix: remove default value 2020-09-30 10:39:26 +05:30
Abhishek Balam
42d8db59f0 fix: add currency select to Trial Balance 2020-09-30 01:32:42 +05:30
Deepesh Garg
bc44bc64cc fix: Add test 2020-09-29 18:39:45 +05:30
marination
661bf64bba fix: Check only Read and Write Permission in Update Items 2020-09-29 18:16:45 +05:30
Deepesh Garg
2b38361ff5 Merge branch 'develop' of https://github.com/frappe/erpnext into tax_fetch_quote 2020-09-29 17:26:48 +05:30
Deepesh Garg
c33fbd7e52 Merge pull request #23416 from anupamvs/quotation-portal
feat: provision to draft quotation from portal
2020-09-29 17:08:05 +05:30
barredterra
81ad90c1d4 feat: validate sales invoice for germany 2020-09-29 11:54:57 +02:00
Marica
25f4c1636e Merge branch 'develop' into account-add-rename 2020-09-29 13:18:54 +05:30
Marica
202303e088 Merge pull request #23422 from marination/dialog-filters
chore: Add Filter Group to dialogs
2020-09-29 13:17:29 +05:30
Marica
3b610bd07d Merge branch 'develop' into dialog-filters 2020-09-29 13:16:33 +05:30
Marica
7e03c12eba Merge pull request #23445 from anupamvs/lead-contact-date
feat: open lead status on next contact date
2020-09-29 13:13:48 +05:30
michellealva
3aedeb642f fix: Change Error Message in Work Order 2020-09-29 12:54:55 +05:30
marination
65fc48da25 fix: Email Template and Codacy
- Email Preview works well with email template
- Codacy for docstrings
2020-09-29 12:46:19 +05:30
Marica
e5a60f1cec Merge branch 'develop' into rfq-email 2020-09-29 11:56:44 +05:30
Marica
818522bd45 Merge branch 'develop' into dialog-filters 2020-09-28 21:18:23 +05:30
marination
629fa57f9d fix: Remove unneccessary div 2020-09-28 21:17:49 +05:30
marination
a6ea86432e fix: Skip Update Password in Preview
- dont show update password button in preview, its for the suppliers mail only
- modified docstrings
- update supplier row contact only if None
2020-09-28 21:05:11 +05:30
hasnain2808
a5e8e449ee chore: Merge branch 'develop' into UAE-VAT-Format 2020-09-28 20:43:03 +05:30
marination
f911228871 fix: UX and code cleanup
- Added a small note in muted text at bottom of Dialog
- Dont call 'update_supplier_contact' at the time of preview, its a dummy view anyway
- Renamed `update_contact_of_supplier` to `link_supplier_contact`
- On sending mail, new users and contacts that were created get updated in RFQ doc
- Added docstrings to functions
2020-09-28 20:21:44 +05:30
hasnain2808
23c8966e81 Merge branch 'develop' into UAE-VAT-Format 2020-09-28 20:06:02 +05:30
hasnain2808
2c62d946f5 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2020-09-28 20:03:27 +05:30
Mangesh-Khairnar
8d12c3841f fix: process transaction callback 2020-09-28 19:40:42 +05:30
hasnain2808
80068e16e8 Refactor(UAE VAT 21): Replace f-strings by format 2020-09-28 18:58:27 +05:30
Anupam
77cf53201a feat: open lead status on next contact date 2020-09-28 18:38:41 +05:30
marination
056c86033d fix: Reuse function to render email preview
- Reused `supplier_rfq_mail` to render preview
- Print hid Salutation and Subject
- Completely dynamic greeting
2020-09-28 17:42:22 +05:30
madar2020
ce39323a0a feat: Allow rich text edit for questions (#23402)
* rich text

* Update question.json

As to make sense for rich text

* Update quiz_question.json

* Update question.json

* Update quiz_question.json

* Update macros.html

fix: cards in second row of homepage section overlapps the row before.

* Revert "Update macros.html"

This reverts commit b649b507e5.

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-09-28 17:36:25 +05:30
marination
bd36f2b94d feat: Supplier Email Preview in RFQ 2020-09-28 15:59:03 +05:30
hasnain2808
587bb05a37 feat(UAE VAT 21): Add desk page for UAE VAT 21 2020-09-28 14:52:29 +05:30
hasnain2808
0860c74c82 feat(UAE VAT 21): Add permissions for doctypes 2020-09-28 14:38:45 +05:30
hasnain2808
2d30148940 feat(UAE VAT 21): Add vat settings 2020-09-28 14:38:14 +05:30
Raffael Meyer
21266fe4a4 Merge branch 'develop' into website_theme_scss 2020-09-28 10:15:55 +02:00
rohitwaghchaure
7b2f141d0d Merge pull request #23441 from anupamvs/lead-contact-detail
fix: flushing contact details, generates assignment rule issues
2020-09-28 13:30:09 +05:30
hasnain2808
2a601e59bf fix(UAE VAT 21): remove extra legend 2020-09-28 13:26:43 +05:30
hasnain2808
bed1add349 docs(UAE VAT 21): add docstrings 2020-09-28 13:26:05 +05:30
hasnain2808
815b7584dd refactor(UAE VAT 21): seperate get_chart, get_data 2020-09-28 13:24:40 +05:30
Anupam
519a00ce44 fix: flushing contact details, generating assignment rule issues 2020-09-28 13:10:06 +05:30
hasnain2808
79aca28453 refactor(UAE VAT 21): rename UAE VAT - UAE VAT 21 2020-09-28 12:27:41 +05:30
Anupam Kumar
5b3af82e75 Update item_add_to_cart.html 2020-09-28 10:59:43 +05:30
Deepesh Garg
0abcca833f Merge pull request #23436 from prssanna/mr-stock-uom-v13
fix: set Stock UOM in item while creating Material Request from Stock Entry
2020-09-28 10:41:22 +05:30
Mangesh-Khairnar
98658603dd Merge branch 'develop' of https://github.com/frappe/erpnext into mpesa-integration 2020-09-28 02:10:53 +05:30
Sagar Vora
382676d875 Merge branch 'develop' into mr-stock-uom-v13 2020-09-27 20:09:00 +05:30
Mangesh-Khairnar
a26c6b4c2d fix: fetch account balance info 2020-09-25 23:56:39 +05:30
hasnain2808
127fbfcb93 feat(UAE VAT 21): Added Print Format 2020-09-25 20:42:54 +05:30
Anupam Kumar
6e0c1eeb68 Merge branch 'develop' into quotation-portal 2020-09-25 20:04:43 +05:30
prssanna
fec4ea5643 fix: set stock uom in tem while creating material request from stock entry 2020-09-25 18:01:12 +05:30
hasnain2808
321b5f54ae feat(UAE VAT 21): Add Roles for UAE VAT 21 Report 2020-09-25 14:24:57 +05:30
hasnain2808
72cad2a8ab feat(UAE VAT 21): Add zero rated and vat exempt 2020-09-25 13:13:38 +05:30
rohitwaghchaure
7512565184 fix: Patient Appointment not able to save (#23434)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-09-25 12:45:47 +05:30
hasnain2808
5225215d31 feat(UAE VAT 21): Add rows for inputs and tourists 2020-09-24 18:41:43 +05:30
marination
be4dbad823 style: (minor) Reduce loc 2020-09-24 16:43:25 +05:30
Anupam
dd2f547c3b fix: Ui fixes 2020-09-24 16:37:08 +05:30
Anupam
5a72022289 Merge branch 'develop' of https://github.com/frappe/erpnext into quotation-portal 2020-09-24 16:18:47 +05:30
Anupam
78ee75d744 fix: review changes 2020-09-24 16:17:02 +05:30
marination
a119688e32 fix: (RFQ/SQ) Link to Material Requests in Tools section 2020-09-24 15:57:43 +05:30
Saqib
2fa2a40b3f chore: make asset movement transaction date match with purchase date & time (#23423) 2020-09-24 15:07:29 +05:30
Rucha Mahabal
9ed208364d Merge branch 'develop' into enrollment-fixes 2020-09-24 14:31:23 +05:30
Anupam
a4df105813 fix: UI fixes 2020-09-24 13:21:54 +05:30
hasnain2808
3ef11b1d64 feat(UAE VAT 21): Add region fields for UAE VAT 21 2020-09-24 13:21:23 +05:30
marination
4f395cce54 chore: Add Filter Group to dialogs 2020-09-24 12:43:41 +05:30
Marica
481662469f Merge pull request #23419 from marination/payment-entry-ux
fix: Check Company in Payment Entry before selecting values
2020-09-24 12:05:05 +05:30
marination
8370d9b997 fix: Check Company in Payment Entry before selecting values 2020-09-24 11:51:03 +05:30
Anupam
09775bbdaa feat: showing UOM even item price is hidden 2020-09-24 11:19:32 +05:30
Shivam Mishra
0bd8719035 Merge branch 'develop' into better-logging-for-membership 2020-09-24 10:32:41 +05:30
Shivam Mishra
cee891aa92 refactor: better logging for membership 2020-09-24 10:31:36 +05:30
Anupam
c077fac2a6 feat: provision to draft quotation from portal 2020-09-23 22:02:31 +05:30
Marica
d5e6eb75cf Merge branch 'develop' into supplier-quotn-comparison 2020-09-23 21:06:18 +05:30
Deepesh Garg
cfc5e29127 fix: Post cancellation accounting entry on posting date instaed of current (#23361) 2020-09-23 17:19:11 +05:30
Prssanna Desai
fd42af5b91 fix: ignore permission while creating supplier scorecard period in supplier scorecard (#23406) 2020-09-23 17:14:37 +05:30
Rucha Mahabal
46d4180381 refactor: Issue form cleaned up and renamed Minutes to First Response field (#23066)
* refactor: re-order fields in Issue DocType

* refactor: rename Mins to First Response to First Response Time

* refactor: First Response Time Reports for Issue and Opportunity

* fix: added patch for renamed fields and setting durations

* chore: update CRM and Support Desk Pages for Response Time reports

* fix: first response time for opportunity report

* fix: patch

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>
2020-09-23 16:53:16 +05:30
Mangesh-Khairnar
4eb215badb fix: bind callback callback for realtime event 2020-09-23 15:55:21 +05:30
Marica
5a4725cac5 Merge pull request #23409 from AfshanKhan/fix-report-gp
fix: escape apostrophe in cost centre and project if exist
2020-09-23 15:37:28 +05:30
Marica
f804eacfb5 Merge branch 'develop' into fix-report-gp 2020-09-23 15:36:23 +05:30
Michelle Alva
879a8ef26b fix: Change button label in Item (#23410) 2020-09-23 15:36:07 +05:30
Raffael Meyer
8b78bf19bd Merge branch 'develop' into website_theme_scss 2020-09-23 11:38:59 +02:00
Afshan
8be51e22c4 fix: escape apostrophe in cost centre and project if exist 2020-09-23 14:52:36 +05:30
marination
fd155408e5 fix: Check if account exists in parent company on rename
- Check if child company is dependent on parent company
- Check if account-to-be-renamed exists in parent, if yes, block
- Revised Test basd on the same
2020-09-23 14:42:10 +05:30
Saqib
1831893b77 fix: failed workflow condition error message in update items (#23393) 2020-09-23 13:01:49 +05:30
Marica
dd10c54baa Merge branch 'develop' into supplier-quotn-comparison 2020-09-23 12:58:35 +05:30
Deepesh Garg
2bf4245334 fix: Conversion factor fixes in Stock Entry 2020-09-23 12:50:06 +05:30
gavin
639542c81d Merge pull request #22867 from marination/youtube-analytics
feat: Youtube interactions via Video
2020-09-22 18:02:31 +05:30
marination
6087fcaa9b chore: Added video settings to List View Menu 2020-09-22 17:48:04 +05:30
rohitwaghchaure
27bccd7f81 Merge pull request #23397 from deepeshgarg007/search_field_batch_query
feat: Show searchfields in batch query
2020-09-22 16:59:24 +05:30
Marica
ef2b5e8284 Merge branch 'develop' into pr-dn-return 2020-09-22 15:39:25 +05:30
gavin
d935b2753f Merge branch 'develop' into youtube-analytics 2020-09-22 15:36:00 +05:30
Anupam
c39b65a5f5 fix: quality procedure parent 2020-09-22 14:23:54 +05:30
Deepesh Garg
a0d192eae4 feat: Show searchfields in batch query 2020-09-22 13:54:07 +05:30
Mangesh-Khairnar
97ab96c8bf fix: handle api changes from callbacks 2020-09-22 12:58:32 +05:30
Shivam Mishra
2b53b98c1d fix: reload dashboard (#23380) 2020-09-22 12:18:12 +05:30
rohitwaghchaure
9e6d377eea Merge pull request #23370 from prssanna/account-user-permission
fix: apply user permissions in tax accounts query
2020-09-22 10:34:35 +05:30
rohitwaghchaure
7230b0f9a0 Merge pull request #23360 from anupamvs/batch-wise
fix: Batch-Wise Balance History filter validation
2020-09-22 10:32:51 +05:30
Marica
cbac025a5f Merge branch 'develop' into supplier-quotn-comparison 2020-09-21 22:08:38 +05:30
Mangesh-Khairnar
e3c6128638 fix(plaid): do not send null list in account ids (#23376) 2020-09-21 18:50:22 +05:30
Saurabh
30dbfc31e2 Merge pull request #23369 from abhishekbalam/breadcrumbs_for_maintenance
Fix(Maintenance): Breadcrumbs for Maintenance Visit and Schedule
2020-09-21 17:03:46 +05:30
Saurabh
324cbe89f8 Merge pull request #23359 from abhishekbalam/activation
fix(activation): Added New DocTypes in get_level()
2020-09-21 15:38:45 +05:30
Saurabh
0a88624df0 Merge pull request #23373 from abhishekbalam/version-13-beta
fix(activation): Added New DocTypes in get_level()
2020-09-21 15:38:19 +05:30
Abhishek Balam
064a2c9aed fix: add doctypes to activation 2020-09-21 15:35:24 +05:30
prssanna
de7a2bc4be fix: apply user permissions in tax accounts query 2020-09-21 13:57:04 +05:30
Rohan
e42f08085b fix: use Plaid's new API (develop) (#23318)
Co-authored-by: Mangesh-Khairnar <mkhairnar10@gmail.com>
2020-09-21 13:14:07 +05:30
Abhishek Balam
97f61d233e fix: breadcrumbs for maintenance visit and schedule under support 2020-09-21 13:00:43 +05:30
Deepesh Garg
44c692ed40 Merge pull request #23278 from barry86m/patch-3
fix: sql error on saving sales invoice without a sales order
2020-09-20 20:40:16 +05:30
Deepesh Garg
c152b92ef4 Update erpnext/controllers/selling_controller.py
Co-authored-by: Sagar Vora <sagar@resilient.tech>
2020-09-20 20:04:10 +05:30
Deepesh Garg
5c8dd6a0ed Merge pull request #23355 from Anurag810/accounts_recievable
fix: Cost Center filter in accounts receivable and payable report
2020-09-20 19:36:30 +05:30
Saqib
f2ea3877c8 fix: depreciation start date ux fixes (#23339) 2020-09-20 19:31:18 +05:30
Saqib
4b25eb4db4 fix: mode of payment not fetched if no account is set (#23334)
Co-authored-by: Sagar Vora <sagar@resilient.tech>
2020-09-19 19:33:21 +05:30
Deepesh Garg
ffdb9d0ca0 Merge pull request #22966 from frappe/barredterra-patch-1
fix(membership): currency should be a link
2020-09-19 18:33:51 +05:30
Deepesh Garg
6bcfffda1d Merge branch 'develop' into barredterra-patch-1 2020-09-19 18:33:14 +05:30
Deepesh Garg
c646a56d68 fix: Update modified timestamp 2020-09-19 18:28:20 +05:30
Deepesh Garg
88f2394103 Merge pull request #23311 from kwabena53/readme-links
fix: inventory management link updated
2020-09-19 18:21:19 +05:30
Deepesh Garg
e3ee63f677 Merge pull request #23346 from AfshanKhan/stock-entry-warehouse-address-filter
fix: warehouse address filtered based on warehouse
2020-09-19 18:17:08 +05:30
Deepesh Garg
095161ff60 Merge pull request #23328 from rohitwaghchaure/fixed-set-taxes-missing-error
fix: set_taxes() missing 1 required positional argument: 'company'
2020-09-19 18:07:08 +05:30
Deepesh Garg
0aff6d83af Update erpnext/public/js/utils/party.js
Co-authored-by: Sagar Vora <sagar@resilient.tech>
2020-09-19 18:05:58 +05:30
marination
b782d2a99d fix: Added back accidentally deleted field 2020-09-19 01:04:28 +05:30
marination
90d9d80ef9 fix: More MR UX fixes 2020-09-19 00:43:53 +05:30
Mangesh-Khairnar
a3ac4bf681 fix: create payment request via pos 2020-09-18 19:47:33 +05:30
Saqib
7126e179c3 fix: button click event not working in POS custom fields (#23358) 2020-09-22 16:35:11 +05:30
Abhishek Balam
4e6733293f fix(DocTypes): Reset "owner" values in DocTypes to Administrator (#23350)
* fix: reset owner values in doctype to Administrator

* fix: updated modified value

* fix: also fixed modified by

* fix: change modified_by to Administrator
2020-09-18 18:27:24 +05:30
Anupam
bf166736b0 fix: Batch-Wise Balance History filter validation 2020-09-18 17:15:49 +05:30
Abhishek Balam
123eaea1a6 fix: added new doctypes in get_level 2020-09-18 16:35:59 +05:30
Michelle Alva
cc6ca97dc5 fix: Item-wise Sales History Report Error (#23349)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-09-18 15:50:29 +05:30
Saqib
c29ee691d4 fix: button click event not working in POS custom fields (#23358) 2020-09-18 15:27:17 +05:30
Marica
2cfaf71d59 Merge branch 'develop' into supplier-quotn-comparison 2020-09-18 15:22:59 +05:30
Deepesh Garg
bbc6aee803 Merge pull request #23353 from SDLyu/patch-1
fix: missing default Sales Taxes And Charges Template when frm.doc.taxes is []
2020-09-18 15:17:56 +05:30
Anurag Mishra
170ecdc76e fix: No handlefor Cost centers in Accounts Receivable 2020-09-18 13:26:46 +05:30
SDLyu
68672af8ab Fix missing tax autoload when frm.doc.taxes is [] 2020-09-18 13:58:23 +08:00
Deepesh Garg
6f3d93e5a0 fix: Taxes not getting fetched from Opportunity to Quotation 2020-09-18 11:23:35 +05:30
Afshan
d5710b4d6f style: removed extra spaces 2020-09-17 13:01:47 +05:30
Afshan
e813684433 fix: warehouse address filtered based on warehouse 2020-09-17 12:57:26 +05:30
Deepesh Garg
2aea184f6f Merge pull request #23309 from anupamvs/sales-analytics
feat: added project in Sales Analytics report
2020-09-17 12:37:14 +05:30
Rucha Mahabal
86864f5838 Merge pull request #23345 from ruchamahabal/fix-address-contact
fix(Non Profit): Hide Address and Contact section for unsaved docs
2020-09-16 23:51:27 +05:30
Rucha Mahabal
c78ca36ee5 fix(Non Profit): Hide Address and Contact section for unsaved docs 2020-09-16 23:47:33 +05:30
Anupam Kumar
11649efc41 Merge branch 'develop' into sales-analytics 2020-09-16 21:45:57 +05:30
Deepesh Garg
5c04b2eea4 Merge pull request #23235 from Anurag810/custom_remark
feat: added option to add custom remarks in payment entry
2020-09-16 13:38:04 +05:30
Deepesh Garg
15f698251b Merge pull request #23079 from marination/item-tax-update-items
fix: Item Tax Updating via `Update Items` in SO/PO
2020-09-15 20:47:20 +05:30
Deepesh Garg
db52cfe05a Merge pull request #22849 from alyf-de/datev_refactor
refactor: move datev-specific stuff to utils
2020-09-15 19:50:00 +05:30
Rucha Mahabal
8193582645 fix: codacy issue 2020-09-15 18:53:38 +05:30
Marica
9ce5c77a21 Merge branch 'develop' into supplier-quotn-comparison 2020-09-15 18:50:34 +05:30
Rucha Mahabal
253936c8df fix: create Course Enrollment only for courses added in Program Enrollment 2020-09-15 18:16:42 +05:30
Rucha Mahabal
42d7acf522 fix: academic term and year date validations 2020-09-15 17:52:47 +05:30
Marica
f63b6719e3 Merge branch 'develop' into item-tax-update-items 2020-09-15 17:45:05 +05:30
marination
f995f517c9 fix: Test 2020-09-15 17:06:27 +05:30
Rucha Mahabal
f5eb45bf23 fix: validate academic term while checking for enrollment duplication 2020-09-15 17:01:00 +05:30
Rucha Mahabal
68a07eda72 fix: program enrollment date not considered during course enrollment 2020-09-15 16:55:35 +05:30
Deepesh Garg
a11d35ce7b Merge pull request #23331 from deepeshgarg007/tds_category_trigger
fix: Supplier trigger onload
2020-09-15 15:05:19 +05:30
Deepesh Garg
2f50cb3e58 fix: Supplier trigger onload 2020-09-15 15:00:32 +05:30
Rohit Waghchaure
4f3b7da9ba fix: set_taxes() missing 1 required positional argument: 'company' 2020-09-15 14:47:36 +05:30
Mangesh-Khairnar
27f81e06ea fix: create custom pos fields 2020-09-15 14:38:06 +05:30
Anupam Kumar
699e853009 Merge branch 'develop' into sales-analytics 2020-09-15 13:24:02 +05:30
Anurag Mishra
9397b7f58b fix: requested changes 2020-09-15 12:36:01 +05:30
Anupam
bae2d5d485 fix: review changes 2020-09-15 12:12:31 +05:30
marination
665c27af58 fix: Merge conflict missing line 2020-09-15 12:04:38 +05:30
Marica
baedc627ee Merge branch 'develop' into item-tax-update-items 2020-09-15 11:30:22 +05:30
marination
4bb8d0c193 chore: Test for PO 2020-09-15 11:18:02 +05:30
Saqib
61314248bb feat: uom in update items for SO & PO (#22869)
* feat: uom in update items for SO & PO

* fix: supplied items doesn't updates on uom change

* chore: add uom and conv factor change test

* fix: test

* fix: purchase order updates are not tracked

* fix: fetch conversion factor on uom change

* fix: codacy

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-09-15 11:14:31 +05:30
Marica
65c2c4f85f Merge branch 'develop' into item-tax-update-items 2020-09-15 09:49:06 +05:30
Deepesh Garg
36bc0577a2 fix: Item GL entries for purchase invoice (#23027) 2020-09-15 09:44:46 +05:30
marination
b7cd84196d fix: Revert tax calculation changes 2020-09-15 09:42:51 +05:30
Anupam Kumar
8cb356bf30 Merge branch 'develop' into sales-analytics 2020-09-14 11:21:58 -07:00
Rucha Mahabal
fcb6ba6ec7 fix: get_transaction_entries function arguments in Bank Statement Transaction Entry (#23051) 2020-09-14 21:12:36 +05:30
Marica
a544e10778 Merge branch 'develop' into supplier-quotn-comparison 2020-09-14 20:17:59 +05:30
Saqib
6db92fbb6a feat: validate workflow before so/po update items (#23024)
* feat: validate workflow before so/po update items

* fix: incorrect workflow validation on so/po update items

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-09-14 19:54:17 +05:30
Deepesh Garg
93d7c2f1da Merge pull request #23283 from ruchamahabal/fix-student-email-id
fix: Set student email id mandatory only if skip user creation is disabled
2020-09-14 19:34:10 +05:30
Mangesh-Khairnar
757fa5d010 fix(shopping-cart-settings): filter payment gateway accounts 2020-09-14 17:44:51 +05:30
marination
59239172a1 feat: Supplier Quotation Comparison - v3 2020-09-14 17:34:21 +05:30
Rucha Mahabal
1751929a55 Merge pull request #22853 from ruchamahabal/refactor-lab-module
refactor: Laboratory Module
2020-09-14 16:32:51 +05:30
Mangesh-Khairnar
40d3add63c feat(payment-gateway-account): add additional payment channel 2020-09-14 15:14:36 +05:30
Rucha Mahabal
026cf2d3cc Merge branch 'develop' into refactor-lab-module 2020-09-14 14:45:19 +05:30
Marica
59d20c7d2c Merge pull request #23315 from marination/pr-dn-get-items
fix: Make sure Supplier/Customer is selected before fetching Items(ux)
2020-09-14 11:35:02 +05:30
Marica
c4a8c9eb26 Merge branch 'develop' into pr-dn-get-items 2020-09-14 11:09:32 +05:30
rohitwaghchaure
7fc629b71a Merge pull request #23316 from marination/quality-inspection-fields
fix: Make Reference fields mandatory in Quality Inspection (ux)
2020-09-13 18:12:05 +05:30
marination
9205101ecf fix: Make Reference fields mandatory in Quality Inspection 2020-09-12 16:17:13 +05:30
marination
0a688005be fix: Make sure Supplier/Customer is selected before fetching Items. 2020-09-12 15:39:27 +05:30
Kwabena Adu-Darkwa
a91225f152 inventory management link updated 2020-09-11 17:47:32 +00:00
barredterra
16f1435d63 fix: codacy 2020-09-11 18:57:58 +02:00
barredterra
41978ac882 Merge branch 'develop' into datev_refactor 2020-09-11 17:54:50 +02:00
barredterra
8e41fdfee4 Merge branch 'develop' into website_theme_scss 2020-09-11 16:05:49 +02:00
barredterra
60bfbbc5af fix: use path istead of hook 2020-09-11 16:05:10 +02:00
marination
02c550c07d fix: Redundant imports 2020-09-11 16:22:54 +05:30
Marica
1807437fe0 Merge branch 'develop' into youtube-analytics 2020-09-11 16:18:23 +05:30
Marica
4153a9f8de Merge branch 'develop' into pr-dn-return 2020-09-11 16:10:48 +05:30
marination
9533318832 chore: Tests for Rename and Add child Account 2020-09-11 16:09:27 +05:30
Anupam K
ed08e593c3 feat: added project in Sales Analytics report 2020-09-11 14:03:31 +05:30
Saqib
cd89994b33 fix: multiple pos issues (#23297)
* fix: returns can be made against unconsolidated invoices

* fix: indentation

* fix: mode of payment not fetching for pos returns

* patch: default pos profile print format

* fix: tests

* chore: clean up retail desk page
2020-09-10 19:28:46 +05:30
hasnain2808
f44524dd3e feat: Added a Chart to compare Vat and sales between emirates 2020-09-10 18:35:04 +05:30
marination
37b99d202d fix: Separate function to get bulk and single youtube stats 2020-09-10 18:27:20 +05:30
hasnain2808
323791d123 refactor: added docstrings 2020-09-10 17:53:29 +05:30
Rucha Mahabal
a29436dc91 fix: codacy 2020-09-10 17:45:17 +05:30
hasnain2808
031d77be2e feat: add reverse charge to uae vat report 2020-09-10 17:40:01 +05:30
Rucha Mahabal
c0f9d1b65a test: Lab Module 2020-09-10 17:33:52 +05:30
Mangesh-Khairnar
2dabd2182f feat: add mpesa integration 2020-09-10 17:05:43 +05:30
marination
799d663398 fix: Make set_youtube_statistics reusable and job logic fix
- Make sure job runs only once every hour
- set_youtube_statistics should be usable in and outside class
2020-09-10 16:42:20 +05:30
Gavin D'souza
71ac399369 fix: Commonified function and updated scheduler events
Co-authored-by: marination <maricadsouza221197@gmail.com>
2020-09-10 13:58:48 +05:30
hasnain2808
91f1e26672 feat: Add rated supplies rows in UAE VAT report 2020-09-10 13:55:14 +05:30
Gavin D'souza
0a0e258d8b feat: Add Desk Page for Utilities for Video group 2020-09-10 13:12:35 +05:30
Rucha Mahabal
42bff3289d Merge branch 'develop' into refactor-lab-module 2020-09-10 12:36:29 +05:30
Rucha Mahabal
2388199347 Merge branch 'develop' into fix-student-email-id 2020-09-10 12:16:16 +05:30
Rucha Mahabal
1915a60834 fix: education settings check 2020-09-10 12:13:58 +05:30
Marica
6520655d59 Merge branch 'develop' into youtube-analytics 2020-09-10 10:16:02 +05:30
marination
53cd60c217 fix: Patch reload doctype 2020-09-09 20:57:10 +05:30
hasnain2808
7b7a8e1309 feat: RCM for UAE VAT 2020-09-09 20:54:30 +05:30
marination
83a03689a1 fix: Use independent item for DN Test 2020-09-09 20:51:01 +05:30
marination
dc5f2aa8b8 chore: Patch to set returned qty in PR and DN 2020-09-09 17:56:20 +05:30
marination
efb211af6d chore: Fix Received/Delivered Items to Billed Logic 2020-09-09 16:24:11 +05:30
Marica
52e87d1a4f Merge branch 'develop' into pr-dn-return 2020-09-09 11:56:26 +05:30
Saqib
ec6a97fb6a fix: cannot delete pos page if linked with desk page (#22993)
* fix: cannot delete pos page if linked with desk page

* fix: replace pos page links with point-of-sale page

Co-authored-by: gavin <gavin18d@gmail.com>
2020-09-09 10:54:14 +05:30
Deepesh Garg
dc84633860 Merge pull request #23301 from deepeshgarg007/closed_loan_amount
fix: Amount for closed loans
2020-09-08 21:32:54 +05:30
Deepesh Garg
846e6d4803 fix: Add test 2020-09-08 21:32:06 +05:30
Deepesh Garg
f247686ace fix: Amount for closed states 2020-09-08 21:26:06 +05:30
marination
8484d1cd95 fix: Patch and test codacy 2020-09-08 20:58:33 +05:30
marination
315bf3051c chore: Tests for Delivery Note 2020-09-08 19:27:36 +05:30
Saqib
8f43cf2c9a fix: asset movement date for backdated asset entry (#23298) 2020-09-08 17:44:47 +05:30
rohitwaghchaure
93dccd2eaa Merge pull request #23132 from anupamvs/item-group-filter-portal
fix: [Portal] added filter show in website
2020-09-08 17:03:54 +05:30
rohitwaghchaure
1d555f35a7 Merge pull request #23282 from deepeshgarg007/tds_bug
fix: Apply TDS on Purchase Invoice creation from Purchase Order and Purchase Receipt
2020-09-08 16:59:29 +05:30
marination
e35fd5e305 chore: Tests for Purchase Receipt 2020-09-08 16:24:10 +05:30
Anupam Kumar
09e2cb5f87 Merge branch 'develop' into item-group-filter-portal 2020-09-08 14:54:31 +05:30
Marica
13483a3b3c Merge pull request #23291 from AfshanKhan/reverse-je-ignore-flag
fix: removed ignore permission flag
2020-09-08 13:45:03 +05:30
Deepesh Garg
f7731b0715 fix: TDS applicable on creating PI from get items button 2020-09-08 13:41:04 +05:30
Afshan
12ab8ebc95 fix: removed ignore permission flag 2020-09-08 12:55:42 +05:30
Marica
693200255a Merge pull request #23175 from AfshanKhan/handle-irs
fix: IRS 1099 report
2020-09-08 12:43:38 +05:30
Marica
c8eca9d5f3 Merge branch 'develop' into handle-irs 2020-09-08 12:03:45 +05:30
Rucha Mahabal
f7619df8b2 fix: Lock row in subquery while setting delivered qty (#23100) 2020-09-08 11:57:45 +05:30
Afshan
9691422fb7 feat: added report for mismatch in serial nos and stock quantity in warehouse (#22669)
* feat: added report for mismatch in serial nos and stock quantity in warehouse

* style: removed print statement

* fix: rename of reports and refactor of code

* fix: handled null condition for actual qty and added report link in stock desk page

* style: breaking code in multiple lines
2020-09-08 11:57:15 +05:30
Marica
0411026ad6 Merge branch 'develop' into pr-dn-return 2020-09-08 10:48:44 +05:30
rohitwaghchaure
31fd90136d Merge pull request #23243 from Anurag810/overlap_for_additional_salary
feat: Overlap validation additional salary
2020-09-08 10:18:41 +05:30
rohitwaghchaure
7d7fa79efa Update additional_salary.py 2020-09-08 10:18:18 +05:30
rohitwaghchaure
900d0e3ae2 Merge pull request #23245 from Anurag810/attendance_calendar_map
fix: Attendance calendar map fix
2020-09-08 10:14:37 +05:30
rohitwaghchaure
842cb6d1d6 Update shift_assignment.py 2020-09-08 10:14:04 +05:30
Anupam Kumar
7131024bf9 Merge branch 'develop' into item-group-filter-portal 2020-09-08 10:04:51 +05:30
rohitwaghchaure
0cb805308f Merge pull request #23256 from Mangesh-Khairnar/fix-adv-payment-payment-order
fix: capture advance payments in payment order
2020-09-08 09:59:47 +05:30
rohitwaghchaure
7296a75b1f Merge pull request #23288 from barry86m/patch-4
fix: consolidated financial statement sums values into wrong parent
2020-09-08 09:56:18 +05:30
barry86m
5b381ac5b7 fix: consolidated financial statement sums values into wrong parent
fix proposed by Andriesvn in bug report

closes #22180
2020-09-08 00:27:57 +01:00
Deepesh Garg
b828e2fcf4 Merge pull request #23287 from deepeshgarg007/lsu_api_fix
fix: Only submitted Loan security pledges should be approved
2020-09-07 23:23:55 +05:30
Deepesh Garg
03b0ad4f98 fix: Only submitted Loan security pledges should be approved 2020-09-07 23:22:21 +05:30
Anupam Kumar
22bd03e63c Merge branch 'develop' into item-group-filter-portal 2020-09-07 20:20:42 +05:30
Rucha Mahabal
4673bed67e fix: codacy issues 2020-09-07 20:12:29 +05:30
Rucha Mahabal
06f89a1b94 fix: Set student email id mandatory only if skip user creation is disabled 2020-09-07 19:46:53 +05:30
marination
f18dd05c00 fix: Missing import and typo 2020-09-07 18:59:57 +05:30
Marica
54ab426c1c Merge branch 'develop' into youtube-analytics 2020-09-07 18:54:11 +05:30
marination
06ee0ea00b feat: Added Scheduler Job to auto update statistics
- Added frequency in Video Settings
- Cron job to check half hourly job
- Hourly job to run job based on frequency
- Patch to set youtube id in video for ease in computing
2020-09-07 18:49:06 +05:30
Deepesh Garg
74ab1084b3 fix: Apply TDS on Purchase Invoice creation from Purchase Order and Purchase Receipt 2020-09-07 17:55:10 +05:30
Deepesh Garg
af1c4ba443 Merge pull request #23279 from deepeshgarg007/loan_closure_interest
fix: Pending loan interest accrual on loan closure
2020-09-07 15:01:33 +05:30
Deepesh Garg
afefa878b0 fix: Pending loan interest accrual on loan closure 2020-09-07 14:57:44 +05:30
Deepesh Garg
da6074a84c fix: Pending loan interest accrual on loan closure 2020-09-07 14:55:04 +05:30
marination
9ce38de439 chore: Key Validation and restructure
- Added API Key validation in Video Settings
- Moved Statistics section above description in Video
- Moved id retrieving from URL to py side
- Removed js side calls, added section toggling in js
- Restructured Code
2020-09-07 13:27:17 +05:30
hasnain2808
2744765757 feat(UAE VAT Format): add fields for emirates in address and sales invoice 2020-09-07 12:31:19 +05:30
Mangesh-Khairnar
06130ee56b fix: leave ledger patch (#23182) 2020-09-07 11:53:50 +05:30
Anupam Kumar
209f7c76c9 feat: added transaction_type in leave ledger enter (#23258) 2020-09-07 11:50:24 +05:30
barry86m
fa98e81f0b fix: sql error on saving sales invoice without a sales order 2020-09-07 01:36:15 +01:00
Anupam Kumar
ffd30beeca Merge branch 'develop' into item-group-filter-portal 2020-09-06 21:48:16 +05:30
rohitwaghchaure
937b63433d Merge pull request #23270 from kasgel/patch-1
fix(utils): pass stock_qty to get_pricing_rule_for_item
2020-09-06 20:46:15 +05:30
Deepesh Garg
c0fb7cb189 Merge pull request #23272 from deepeshgarg007/loan_repayment_method
fix: Repayment Method not visible correctly
2020-09-05 21:19:31 +05:30
Deepesh Garg
5158d0fbba fix: Repayment Method not visible correctly 2020-09-05 21:16:57 +05:30
Deepesh Garg
e49fb4b652 Merge pull request #23267 from aakvatech/patch-2
fix: Repayment Method not visible correctly
2020-09-05 21:13:23 +05:30
Deepesh Garg
f658b7bd8c fix: typo 2020-09-05 21:07:56 +05:30
kasgel
a59f8640d1 fix: pass stock_qty to get_pricing_rule_for_item
get_pricing_rule_for_item uses the "stock_qty" and "qty" arguments to filter pricing rules.
Not passing stock_qty prevents for example the shopping cart from filtering pricing rules appropriately based on Quantity.
2020-09-05 12:15:49 +02:00
Deepesh Garg
8e4ae0af56 Merge pull request #23269 from deepeshgarg007/loan_security_unpledge_utility
fix: API changes in loan security unpledge utility
2020-09-04 22:44:03 +05:30
Deepesh Garg
1b4ed454d2 fix: Add reference no and descripiton field in Loan Security Pledge and Unpledge 2020-09-04 22:42:41 +05:30
Deepesh Garg
e4c38e5fe5 fix: Remove print statement 2020-09-04 22:30:13 +05:30
Deepesh Garg
4d636fde3a fix: API changes in loan security unpledge utility 2020-09-04 22:23:30 +05:30
Mangesh-Khairnar
7456ffca0f fix: teardown created payment order 2020-09-04 19:59:01 +05:30
aakvatech
7d780ce772 fix: Repayment Method not visible correctly
https://github.com/frappe/erpnext/issues/23266
2020-09-04 16:41:09 +03:00
Mangesh-Khairnar
a76bf4d7af fix: remove unused imports 2020-09-04 19:08:08 +05:30
Mangesh-Khairnar
d9e4883392 test: check payment order creation against payment entry 2020-09-04 18:55:14 +05:30
rohitwaghchaure
515d8b9e50 Merge pull request #23259 from anupamvs/se-quntity
fix: SE quantity data type issue
2020-09-04 16:07:13 +05:30
rohitwaghchaure
c9a5afaa1c Merge pull request #23263 from Semiranis/uom_after_qty
feat: Option to print UOM after quantity
2020-09-04 16:06:46 +05:30
Shivam Mishra
a2655fda8d Merge pull request #23261 from scmmishra/rzp-api
feat: don't allow guests
2020-09-04 15:19:21 +05:30
Shivam Mishra
4a238a2093 feat: don't allow guests 2020-09-04 15:18:16 +05:30
Anupam K
faebef21b7 fix: SE quantity data type issue 2020-09-04 15:09:16 +05:30
Mangesh-Khairnar
e1889d0c1b fix(payment entry): update payment order status 2020-09-04 14:45:19 +05:30
Mangesh-Khairnar
8d8af94182 fix: capture advance payments in payment order 2020-09-04 12:17:56 +05:30
Marica
059ade81b2 Merge pull request #23249 from marination/leaderboard-supplier
fix: Supplier Leaderboard
2020-09-04 11:27:25 +05:30
Frappe ERPnext
2e8e06c350 Merge branch 'develop' of https://github.com/frappe/erpnext into uom_after_qty 2020-09-03 18:08:02 +02:00
Frappe ERPnext
9355641c49 refactor: logic moved to standard template
Previously print_settings.py controller decided which template to use.
Now standard template decides what to print according to settings.
2020-09-03 17:31:21 +02:00
Frappe ERPnext
a5d5e70bf4 Revert "feat: Option to print UOM after quantity"
This reverts commit a787882a8f.
2020-09-03 17:30:25 +02:00
Marica
8d6b2d016f Merge branch 'develop' into leaderboard-supplier 2020-09-03 20:08:37 +05:30
marination
2a56000460 fix: Supplier Leaderboard fix 2020-09-03 19:45:04 +05:30
Deepesh Garg
b306fa355d Merge pull request #23248 from deepeshgarg007/pda_account_filter
fix: Account filter in Process Deferred Accounting doctype
2020-09-03 19:22:56 +05:30
rohitwaghchaure
e399a8e82c Merge pull request #23242 from rohitwaghchaure/incorrect-qty-after-transaction-stock-reco-develop
fix: incorrect qty after transaction in stock ledger entry
2020-09-03 18:59:24 +05:30
Deepesh Garg
9b681770d0 fix: Account filter in Process Deferred Accounting doctype 2020-09-03 18:09:02 +05:30
Anurag Mishra
e5b7cb0c15 fix: data was not properly maped 2020-09-03 16:59:21 +05:30
gavin
72e53842c4 Merge pull request #23237 from frappe/dependabot/npm_and_yarn/bl-3.0.1
chore(deps): bump bl from 3.0.0 to 3.0.1
2020-09-03 16:08:22 +05:30
gavin
21985d4ecc Merge branch 'develop' into dependabot/npm_and_yarn/bl-3.0.1 2020-09-03 15:31:41 +05:30
gavin
f20b6360de Merge branch 'develop' into overlap_for_additional_salary 2020-09-03 15:27:58 +05:30
Anurag Mishra
7952f89596 feat: Overlap validation additional salary 2020-09-03 15:21:35 +05:30
Rohit Waghchaure
68b0108301 fix: incorrect qty after transaction in stock ledger entry 2020-09-03 15:10:07 +05:30
rohitwaghchaure
d00bc3f422 Merge branch 'develop' into item-group-filter-portal 2020-09-03 15:04:04 +05:30
rohitwaghchaure
4b59043266 Merge pull request #23241 from Anurag810/hiding_regional_reports
feat: removed roles for some regional report and added via setup
2020-09-03 15:01:07 +05:30
rohitwaghchaure
6ffe809c66 Merge pull request #23233 from ruchamahabal/fix-rfq-conv-factor
fix: set conversion factor while creating RFQ from Opportunity
2020-09-03 14:45:01 +05:30
Anurag Mishra
54cd194b41 feat: removed roles for some reginal report and added via setup 2020-09-03 13:52:40 +05:30
Rucha Mahabal
979ad180fa fix: update rfq item in postprocess 2020-09-03 11:03:22 +05:30
rohitwaghchaure
5952efd66c Merge pull request #23239 from michellealva/bank-reco-fix1
fix: Add "Bank Clearance" and "Bank Reconciliation" in desk
2020-09-03 10:56:17 +05:30
michellealva
0857e6d669 fix: Add "Bank Clearance" and "Bank Reconciliation" in desk 2020-09-03 10:37:43 +05:30
Frappe ERPnext
f28bef868d feat: Checkbox for activation of printing UOM after quantity
Checkbox will be added to Frappe after installation of ERPNext.
(Print Settings docType is part of frappe app, not erpnext app)
2020-09-02 21:42:52 +02:00
Frappe ERPnext
be3b8a1c96 Merge branch 'develop' of https://github.com/frappe/erpnext into uom_after_qty 2020-09-02 21:31:31 +02:00
dependabot[bot]
b872035fd9 chore(deps): bump bl from 3.0.0 to 3.0.1
Bumps [bl](https://github.com/rvagg/bl) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/rvagg/bl/releases)
- [Commits](https://github.com/rvagg/bl/compare/v3.0.0...v3.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-02 17:22:19 +00:00
Anupam Kumar
c3984691b3 fix: Sales funnel data is inconsistent (#23110)
* fix: Sales funnel data is inconsistent

* fix: data inconsistency

* fix: Converted Count

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-09-02 20:01:14 +05:30
Anurag Mishra
41f421d400 feat: added option to add custom remarks in payment entry 2020-09-02 13:47:18 +05:30
Rucha Mahabal
a1b5d57076 test: make rfq from opportunity 2020-09-02 13:14:01 +05:30
rohitwaghchaure
3312956890 Merge pull request #23019 from prssanna/gross-profit-total
feat: enable total row in Gross Profit Report
2020-09-02 12:18:41 +05:30
rohitwaghchaure
1ab6c3fe94 Merge pull request #23059 from marination/credit-limit-email
fix: Credit Limit Email not working
2020-09-02 12:14:51 +05:30
Rucha Mahabal
d2881ba4dd fix: set conversion factor while creating RFQ from Opportunity 2020-09-02 11:52:59 +05:30
rohitwaghchaure
efd1ac5840 Merge pull request #23050 from anupamvs/stock-entry-type
fix: deleting unused Stock Entry Type
2020-09-02 11:43:29 +05:30
rohitwaghchaure
f898c807b8 Merge pull request #23227 from rohitwaghchaure/multiple-job-card-fixes
Fix: job card issues
2020-09-02 11:41:37 +05:30
Rohit Waghchaure
86a190652e fix: incorrect job card timer issue 2020-09-02 11:04:56 +05:30
rohitwaghchaure
6a51f3929b Merge pull request #23054 from marination/general-ledger-filters
fix: General Ledger filter validation
2020-09-01 17:53:32 +05:30
Deepesh Garg
36b7bb0282 Merge pull request #23229 from deepeshgarg007/gst_template_update
fix: Update tax template on supplier address change
2020-09-01 16:27:44 +05:30
Marica
329292b9c3 Merge branch 'develop' into credit-limit-email 2020-09-01 16:18:12 +05:30
Deepesh Garg
cebf803455 fix: Update tax template on supplier address change 2020-09-01 16:15:28 +05:30
rohitwaghchaure
a3dd156a8a Merge pull request #22796 from anupamvs/variance-report-fix
fix: Target variance report signs
2020-09-01 15:12:21 +05:30
rohitwaghchaure
9bbb9dad8b Merge pull request #23217 from anupamvs/product-contact-us-v13
fix: contact us button issue
2020-09-01 15:10:37 +05:30
Afshan
eb4b2aa142 fix: get_items from product bundle for purchase order (#22821)
* fix: get_items from product bundle for purchase order

* fix: Don't overwrite  doctype while setting attributes in child row

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-09-01 15:01:32 +05:30
Shivam Mishra
d19947fccd Merge pull request #23148 from scmmishra/feat-exotel-customer-link 2020-09-01 13:47:31 +05:30
Shivam Mishra
e91a5437bd Merge pull request #23038 from scmmishra/iff-invoicing 2020-09-01 13:35:32 +05:30
Shivam Mishra
1b5de62454 Merge pull request #23121 from Mangesh-Khairnar/add-integrations-desk-page
feat: add integrations desk page
2020-09-01 13:34:52 +05:30
Anupam Kumar
232cb37ebf Merge branch 'develop' into variance-report-fix 2020-09-01 09:31:22 +05:30
Anupam Kumar
477e41197e Merge branch 'develop' into item-group-filter-portal 2020-09-01 09:09:19 +05:30
Deepesh Garg
37cb44e109 Merge pull request #23127 from marination/quoted-item-report-v2
feat: Quoted Item Comparison Report Enhancements v2
2020-08-31 21:28:56 +05:30
Deepesh Garg
26eab47851 Merge pull request #23221 from deepeshgarg007/pending_principal
fix: Pending amount after loan closure request
2020-08-31 21:25:53 +05:30
Deepesh Garg
14718e2bde fix: Add unit test for pending principal amount 2020-08-31 21:21:05 +05:30
Afshan
1dc9a9b669 fix: reverse journal entry for multi-currency (#23165)
* fix: reverse journal entry for multi-currency

* fix: test case for reverse journal entry
2020-08-31 20:35:05 +05:30
marination
bc6c4e864d fix: Status in Report and filter query 2020-08-31 20:32:17 +05:30
Deepesh Garg
25042a22eb fix: Pending amount after loan closure request 2020-08-31 19:17:29 +05:30
marination
8938d1040d fix: Rename/Update Child company Accounts as well 2020-08-31 18:18:10 +05:30
Deepesh Garg
bdc933b3d3 Merge pull request #22985 from deepeshgarg007/accounting_period_cancellation
fix: Cancellation of accounting transactions within closed accounting period
2020-08-31 17:16:55 +05:30
Deepesh Garg
d79b511e3f Merge pull request #22950 from deepeshgarg007/billing_address_fetch
fix: Add default billing address for purchase documents
2020-08-31 17:16:31 +05:30
Deepesh Garg
5523142ced Merge pull request #23078 from deepeshgarg007/hsn_wise_json
feat: JSON download for HSN wise outward summary
2020-08-31 17:16:03 +05:30
Anupam Kumar
8089b00df2 Merge branch 'develop' into item-group-filter-portal 2020-08-31 16:42:47 +05:30
marination
fdcda85f87 fix: Validate Missing Accounts in Child Companies
- If parent account exists in Parent and now child, throw error
2020-08-31 16:10:52 +05:30
Deepesh Garg
56ddf41873 Merge pull request #23211 from michellealva/tax-cat
feat: Allow Rename for Tax Category
2020-08-31 15:56:43 +05:30
Anupam K
f9f26d2fa4 fix: contact us button issue 2020-08-31 14:34:42 +05:30
Rohit Waghchaure
d0aafece32 fix: incorrect completed qty against operation in work order if workstation is different in job card 2020-08-31 13:41:17 +05:30
Rohit Waghchaure
a5963e1b2c fix: user created manual job card not linking job card operations with work order operations 2020-08-31 13:40:55 +05:30
Rohit Waghchaure
e7ab53a711 fix: completed qty not updated in work order 2020-08-31 13:40:01 +05:30
Shivam Mishra
d70e711aea fix: events not deleted on cancelling maintenance schedule (#22954)
* 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-08-31 13:14:32 +05:30
Deepesh Garg
d1b88af5b6 Merge pull request #23213 from deepeshgarg007/loan_disbursement_utility
feat: Utility function to get possible loan disbursal amount
2020-08-31 12:53:08 +05:30
Marica
ee56d0e0a9 Merge branch 'develop' into quoted-item-report-v2 2020-08-31 12:45:05 +05:30
Shivam Mishra
1c96befbaf Merge branch 'develop' into feat-exotel-customer-link 2020-08-31 11:47:06 +05:30
Shivam Mishra
b4e0d300f7 Merge branch 'develop' into iff-invoicing 2020-08-31 11:46:41 +05:30
Marica
d2d350ce14 Merge branch 'develop' into credit-limit-email 2020-08-31 11:45:15 +05:30
Deepesh Garg
e8b121c2c2 fix: Add status in field list 2020-08-31 11:31:48 +05:30
Deepesh Garg
ce29757bff fix: Import flt 2020-08-31 11:26:51 +05:30
Rucha Mahabal
5c6ed4dbcd Merge branch 'develop' into refactor-lab-module 2020-08-31 09:50:30 +05:30
Deepesh Garg
a03ebf007c Merge pull request #23212 from marination/customer-from-quotation
fix: Better error feedback on creating SO from Quotation
2020-08-30 23:24:02 +05:30
Deepesh Garg
34cef4d7ab Merge pull request #23205 from mujeerhashmi/fix_customer_ledger_summary
fix: Filter out cancelled entries in customer ledger summary
2020-08-30 23:13:27 +05:30
Deepesh Garg
a4259208e7 feat: Utility function to get possible loan disbursal amount 2020-08-30 23:09:23 +05:30
marination
e268d294b3 fix: Better error feedback on creating SO from Quotation 2020-08-30 21:01:34 +05:30
michellealva
c71e37c988 feat: Allow Rename for Tax Category 2020-08-30 19:42:24 +05:30
Syed Mujeer Hashmi
b23840bf7b fix: Filter out cancelled entries in customer ledger summary
Signed-off-by: Syed Mujeer Hashmi <mujeerhashmi@4csolutions.in>
2020-08-29 23:09:18 +05:30
rohitwaghchaure
2badd93d8f Merge pull request #23193 from bhavesh95863/patch-10
fix: can't multiply sequence by non-int of type 'float
2020-08-28 20:01:05 +05:30
rohitwaghchaure
7c61779a94 Merge pull request #23195 from marination/purchase-over-receipt-subcontracted
fix: Raise Error on over receipt/consumption for sub-contracted PR
2020-08-28 19:59:51 +05:30
Raffael Meyer
a7ea0ffcf9 Merge branch 'develop' into barredterra-patch-1 2020-08-28 15:44:21 +02:00
barredterra
a162248f32 fix: use hook for website theme scss 2020-08-28 15:16:39 +02:00
Frappe ERPnext
a787882a8f feat: Option to print UOM after quantity
Standard for ERPNext prints was UOM before quantity. Now user has a choice.
2020-08-28 13:28:52 +02:00
marination
731bae170e fix: Test for Over Receipt via PRs on a PO 2020-08-28 14:09:02 +05:30
Afshan
d659774190 fix:tests 2020-08-28 13:40:48 +05:30
Deepesh Garg
d4af7d612d Merge pull request #22943 from deepeshgarg007/navbar_links
fix: Add help link in navbar settings
2020-08-28 12:59:45 +05:30
Afshan
7586c3408e fix: test case 2020-08-28 12:56:37 +05:30
Deepesh Garg
ecc282930a Merge branch 'develop' into navbar_links 2020-08-28 12:48:46 +05:30
marination
e9274283bd fix: Raise Error on over receipt/consumption for sub-contrcated PR 2020-08-28 12:21:10 +05:30
Deepesh Garg
6887382937 fix: Ignore cpmpany and bank account doctype while deleting company transactions (#22953) 2020-08-28 11:52:00 +05:30
bhavesh95863
3e9f493f15 fix: change parseFloat to flt 2020-08-28 11:15:02 +05:30
Rucha Mahabal
bae2a77d08 Merge branch 'develop' into barredterra-patch-1 2020-08-28 10:43:02 +05:30
rohitwaghchaure
70b606d468 Merge pull request #23174 from bhavesh95863/patch-9
fix: account & cost center filter by company
2020-08-28 10:42:51 +05:30
Rucha Mahabal
8cdc3b5d91 Merge branch 'develop' into patch-9 2020-08-28 10:41:02 +05:30
rohitwaghchaure
78a32f79df Merge pull request #23168 from ruchamahabal/fix-appointment-overlap
fix: don't overwrite patient appointment duration if already specified
2020-08-28 10:39:25 +05:30
rohitwaghchaure
3018d38940 Merge pull request #23170 from anupamvs/product-contact-us-v13
feat: Added phone field in product Inquiry
2020-08-28 10:38:44 +05:30
rohitwaghchaure
c31ae27227 Merge pull request #23176 from marination/pricing-rule-missing-fix
fix: Pricing Rule encoding missing line
2020-08-28 10:37:38 +05:30
rohitwaghchaure
939b95ad3c Merge pull request #23190 from ruchamahabal/fix-bom-update
fix: BOM Update Tool failing due to Too Many Writes error
2020-08-28 10:35:59 +05:30
Rucha Mahabal
599088b479 Merge pull request #23185 from michellealva/customer_po
fix: Change fieldtype of Customer's PO in Sales Invoice
2020-08-28 10:04:42 +05:30
bhavesh95863
33f984c7af fix: can't multiply sequence by non-int of type 'float 2020-08-27 21:49:21 +05:30
Rucha Mahabal
c8eea556d1 fix: BOM Update Tool failing due to Too Many Writes error 2020-08-27 18:54:25 +05:30
michellealva
ead2f6abf0 fix: Chage fiedtype of Customer's PO in Sales Invoice 2020-08-27 13:57:15 +05:30
Rucha Mahabal
1bd83e69ee feat: added Installation Note and Warranty Claim links to Customer dashboard (#23183) 2020-08-27 13:06:52 +05:30
Marica
e7fabb10e1 Merge branch 'develop' into general-ledger-filters 2020-08-27 11:59:01 +05:30
Afshan
b719620d0c fix: handleling condition if default company doesn't exist 2020-08-26 20:55:16 +05:30
Afshan
7600960d2b fix: returned empty list if non US based company 2020-08-26 18:40:11 +05:30
bhavesh95863
bb5d886930 fix: account & cost center filter by company 2020-08-26 18:23:21 +05:30
marination
733fd5f03c fix: get_applied_pricing_rule in taxes_and_totals 2020-08-26 18:23:12 +05:30
Marica
d741ac6871 Merge branch 'develop' into quoted-item-report-v2 2020-08-26 17:33:13 +05:30
Rucha Mahabal
cf2db41876 Merge branch 'develop' into fix-appointment-overlap 2020-08-26 16:33:27 +05:30
Rushabh Mehta
3ef1490d73 Merge pull request #23150 from rmehta/fix-patch
fix(patch): fix patches for tests
2020-08-26 16:28:28 +05:30
Anupam K
c7830f7107 feat: Added phone field in product Inquiry 2020-08-26 15:28:22 +05:30
Rucha Mahabal
9766adbf4e fix: don't overwrite appointment duration if already specified 2020-08-26 14:53:23 +05:30
Rushabh Mehta
73f648473f fix(minor): update_start_end_date_for_old_shift_assignment.py 2020-08-26 14:51:37 +05:30
Rushabh Mehta
a163d8bc84 fix(minor): rename_lost_reason_detail 2020-08-26 14:51:37 +05:30
Rushabh Mehta
544d18327c fix(patch): quotation_lost_reason_detail 2020-08-26 14:51:37 +05:30
Rushabh Mehta
38fad58834 fix(patch) 2020-08-26 14:51:37 +05:30
rohitwaghchaure
fe0ecc2ff7 Merge pull request #23144 from anupamvs/product-image
fix: Homepage Featured Product image fetch issue
2020-08-26 13:05:50 +05:30
rohitwaghchaure
5f4b5f3f46 Merge pull request #23151 from ruchamahabal/fix-conversion-factor
fix: conversion factor for BOM exploded item rate
2020-08-26 13:01:13 +05:30
rohitwaghchaure
e950dcb32e Merge pull request #23166 from bhavesh95863/patch-8
fix: set company filter in condition
2020-08-26 12:57:06 +05:30
bhavesh95863
d888a59bd1 fix: set company filter in condition 2020-08-26 12:44:20 +05:30
Abhishek Balam
dc9af639a7 fix: move condition field 2020-08-26 12:26:15 +05:30
Abhishek Balam
7d0bb25aca fix: dont show message on condition syntax error 2020-08-26 12:22:31 +05:30
Deepesh Garg
f4b939754c fix: Codacy fixes 2020-08-26 12:10:12 +05:30
Deepesh Garg
29f187f4f3 Merge branch 'develop' into hsn_wise_json 2020-08-26 12:05:59 +05:30
Shivam Mishra
e1e5e3c915 Merge branch 'develop' into iff-invoicing 2020-08-26 11:30:01 +05:30
Michelle Alva
7a927cefbd fix: Social Media Status hidden in Mobie View (#23158) 2020-08-26 10:32:26 +05:30
Deepesh Garg
b4a992e6a3 Merge pull request #23156 from ruchamahabal/add-maintenance-visit-link
feat: add Maintenance Visit link in Customer and Sales Order dashboards
2020-08-25 21:04:00 +05:30
Anupam Kumar
91461a0016 fix: heading is hidden in the mobile view (#23145) 2020-08-25 21:01:17 +05:30
Michelle Alva
258b256dc6 fix: Add Delivery Note link in Sales Invoice Dashboard (#23161) 2020-08-25 20:37:39 +05:30
Rucha Mahabal
12f7aeb147 feat: add Maintenance Visit link in Sales Order dashboard 2020-08-25 19:03:35 +05:30
Rucha Mahabal
5bf0a51ed4 feat: add Maintenance Visit link in Customer dashboard 2020-08-25 18:22:06 +05:30
Rucha Mahabal
d43d1408cf fix: conversion factor for BOM exploded item rate 2020-08-25 17:13:05 +05:30
Shivam Mishra
de4ac0c905 chore: remove stray tabs 2020-08-25 17:10:05 +05:30
Shivam Mishra
2030b66fc6 feat: add customer link to call log 2020-08-25 17:09:53 +05:30
rohitwaghchaure
47a4436010 Merge pull request #23137 from rmehta/pricing-rule-encoding
fix(hot): Pricing Rule encoding fixed
2020-08-25 16:10:29 +05:30
Anupam K
42092cc377 fix: Homepage Featured Product image fetch issue 2020-08-25 15:29:18 +05:30
Saurabh
3caec96ce7 Merge pull request #23142 from saurabh6790/fix-setup-install
fix: check setup complete flag instead setup page
2020-08-25 14:52:13 +05:30
Saurabh
10bf6dc2a6 fix: check setup complete flag instead setup page 2020-08-25 14:51:00 +05:30
Deepesh Garg
afd2e7bb8e Merge pull request #23141 from deepeshgarg007/sle_cancel_v13_beta
fix: Reverse SLE not created for fraction qty or qty less than 1
2020-08-25 14:42:04 +05:30
Rushabh Mehta
ee921052c0 fix(minor): test dependencies 2020-08-25 14:35:49 +05:30
Deepesh Garg
04e3098481 fix: Test Case for qty less than 1 2020-08-25 14:27:47 +05:30
Deepesh Garg
84e78ec7ad fix: Negative SLE not created for fraction qty or qty less than 1 2020-08-25 14:27:35 +05:30
Rushabh Mehta
b5b8f9e72d fix(minor): import 2020-08-25 14:14:23 +05:30
Marica
e6c2ce02b3 Merge pull request #23140 from AfshanKhan/fix-po
fix:referencing frm
2020-08-25 13:56:10 +05:30
Afshan
930adec7ee fix:referencing frm 2020-08-25 13:48:44 +05:30
Marica
57d2fe3452 Merge pull request #23138 from marination/reverse-charge-v13-beta
fix: Do not update total for RCM invvoices if net taxes are zero
2020-08-25 13:34:05 +05:30
Deepesh Garg
c3fb68265f fix: Do not update total for RCM invvoices if net taxes are zero 2020-08-25 13:35:33 +05:30
Rushabh Mehta
8ad0fa48bf fix(minor): circular imports? 2020-08-25 12:24:31 +05:30
Rushabh Mehta
ff5d19609f fix(hot): Pricing Rule encoding fixed 2020-08-25 11:59:57 +05:30
Anupam K
28f4417fc5 fix: added filter show in website for filtering product 2020-08-25 08:59:37 +05:30
Deepesh Garg
f6b4eb27ab Merge pull request #23034 from gwhitney/dims_in_gl_report
fix(General Ledger): include Accounting Dimension columns in report
2020-08-24 22:11:50 +05:30
Deepesh Garg
07ee7a5bd6 Merge branch 'develop' into dims_in_gl_report 2020-08-24 20:23:19 +05:30
Marica
de5b2be345 Merge pull request #22844 from anupamvs/crm-reports
refactor: Crm reports cleanup
2020-08-24 20:15:42 +05:30
Marica
3e966d6889 Merge branch 'develop' into crm-reports 2020-08-24 19:42:18 +05:30
Shivam Mishra
7556517a4f feat: validate if removed item attributes exist in variants (#22911)
* feat: validate if removed item attributes exist in variants

* Update erpnext/stock/doctype/item/item.py

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

* Update erpnext/stock/doctype/item/item.py

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

* refactor: smaller loop

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

* feat: don't run validation for new entries

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

* fix: use tuple as is

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

* refactor: error description

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

* refactor: remove unused variable

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-24 19:37:09 +05:30
marination
8f452b8663 fix: Codacy and indicator message 2020-08-24 18:57:07 +05:30
marination
f49665077c feat: Quoted Item Comparison Report Enhancements v2 2020-08-24 18:26:48 +05:30
Anupam K
64e84643fb lost opportunity 2020-08-24 18:01:28 +05:30
rohitwaghchaure
cf4268e21a Merge pull request #23116 from nabinhait/subcontracted-pr-gle
fix: GLE for subcontracted PR is fg item rate is zero
2020-08-24 16:07:32 +05:30
Shivam Mishra
5d6b07558d Merge branch 'develop' into iff-invoicing 2020-08-24 07:56:01 +00:00
rohitwaghchaure
554e2c2eb7 Merge pull request #23120 from deepeshgarg007/sle_cancel
fix: Reverse SLE not created for fraction qty or qty less than 1
2020-08-24 13:25:12 +05:30
rohitwaghchaure
7d8d26bbea Merge pull request #23106 from ruchamahabal/add-pos-page
fix: POS page link not visible on Desk
2020-08-24 12:22:18 +05:30
Mangesh-Khairnar
e292fd6c58 feat: add integrations desk page 2020-08-24 00:45:13 +05:30
Deepesh Garg
8331a38ace fix: Test Case for qty less than 1 2020-08-23 21:23:26 +05:30
Deepesh Garg
cb0bc2dcaf fix: Negative SLE not created for fraction qty or qty less than 1 2020-08-23 20:43:50 +05:30
Nabin Hait
337ee0a4bf test: Test case for GLE in subcontracted PR if FG item rate is zero 2020-08-22 20:02:27 +05:30
Nabin Hait
df175cc8fc fix: GLE for subcontracted PR is fg item rate is zero 2020-08-22 19:17:18 +05:30
Nabin Hait
111183d080 fix: Installation failed due to global variable (#23114) 2020-08-22 12:31:06 +05:30
Deepesh Garg
1b760cb278 Merge branch 'develop' of https://github.com/frappe/erpnext into navbar_links 2020-08-21 12:36:21 +05:30
Saurabh
66ff5e5e77 Merge pull request #22990 from saurabh6790/erpnext-before-install-flag-1
fix: check setup complete flag instead setup page
2020-08-21 11:55:38 +05:30
Nabin Hait
1ba62c9732 fix:Validate Job offer against vacancies (#23109) 2020-08-20 19:39:10 +05:30
Deepesh Garg
cf3e482052 Merge pull request #23105 from deepeshgarg007/rcm_submit_v13
fix: Unable to submit reverse charge invoice
2020-08-20 19:35:25 +05:30
Marica
c23797e350 fix: Create Opportunity without Default Company from Email (#23097)
* 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:12:12 +05:30
Rucha Mahabal
4061186429 fix: POS page link not visible on Desk 2020-08-20 18:01:20 +05:30
Deepesh Garg
afd2dd3570 fix: Unable to submit reverse charge invoice 2020-08-20 16:52:52 +05:30
rohitwaghchaure
019d4debb2 fix: incorrect stock value in return case (#23102) 2020-08-20 15:53:58 +05:30
Raffael Meyer
f0b9f660cd Merge branch 'develop' into datev_refactor 2020-08-20 12:05:50 +02:00
Shivam Mishra
ae9208dc87 Merge pull request #22995 from scmmishra/fix-margin-for-filter 2020-08-20 09:28:15 +00:00
Shivam Mishra
25ba271562 Merge branch 'develop' into fix-margin-for-filter 2020-08-20 08:59:04 +00:00
Shivam Mishra
d5971d3c59 Merge branch 'develop' into iff-invoicing 2020-08-20 08:16:22 +00:00
rohitwaghchaure
5f2463933a Merge pull request #23061 from DeeMysterio/dev-sort-warehouses-qty
feat(queries): sort warehouses based on item quantity in descending manner
2020-08-20 09:36:16 +05:30
Raffael Meyer
585f1f67b7 Merge branch 'develop' into navbar_links 2020-08-19 18:55:44 +02:00
Raffael Meyer
2c26144a6b Update erpnext/patches/v13_0/add_standard_navbar_items.py 2020-08-19 18:55:06 +02:00
Deepesh Garg
cbedb3de3a Merge pull request #23089 from deepeshgarg007/rcm_deduction_v13
fix: Do not update total for RCM invoices if net taxes are zero
2020-08-19 20:19:06 +05:30
Rucha Mahabal
3fb40aa0b2 Merge pull request #23075 from ruchamahabal/fix-pos-print
fix: Print Language for Customer not set for POS Invoice
2020-08-19 19:02:02 +05:30
Deepesh Garg
8aed48fe31 fix: Do not update total for RCM invvoices if net taxes are zero 2020-08-19 18:59:27 +05:30
Rucha Mahabal
eed2a6340c Merge branch 'develop' into fix-pos-print 2020-08-19 18:57:47 +05:30
marination
22d3729427 fix: Codacy 2020-08-19 15:42:40 +05:30
Deepesh Garg
aaeb3980bc feat: JSON download for HSN wise outward summary 2020-08-19 15:13:30 +05:30
marination
698d983eef fix: Item Tax Updation via Update Items in SO/PO 2020-08-19 14:59:46 +05:30
Diksha Jadhav
182ee5e7c1 feat(queries): sort warehouses based on item quantity 2020-08-19 14:04:34 +05:30
Deepesh Garg
1fb1c08872 Merge pull request #23076 from deepeshgarg007/hsn_wise_outward_v13
fix: Tax amounts in HSN Wise Outward summary
2020-08-19 11:43:14 +05:30
Deepesh Garg
b240cfe401 fix: Remove print statements 2020-08-19 11:41:43 +05:30
Deepesh Garg
64ebbf0907 fix: Tax amounts in HSN Wise Outward summary 2020-08-19 11:41:33 +05:30
Rucha Mahabal
434bab8003 fix: Print Language for Customer not set for Print Receipt in POS 2020-08-19 01:00:59 +05:30
Deepesh Garg
1c14606c06 fix: Total calculations for multicurrency RCM invoices (#23072) 2020-08-18 19:32:52 +05:30
Deepesh Garg
9d60e48538 Merge pull request #23067 from rohitwaghchaure/profit-and-loss-report-not-working
fix: profit and loss report not working
2020-08-18 17:03:10 +05:30
Rohit Waghchaure
310ade7282 profit and loss report not working 2020-08-18 16:07:24 +05:30
Marica
bfb7bdff85 Merge pull request #22262 from Anurag810/shift_management
refactor: shift management
2020-08-18 14:12:25 +05:30
Marica
847343af86 Merge branch 'develop' into general-ledger-filters 2020-08-18 13:40:45 +05:30
Marica
12c68d0450 Merge branch 'develop' into credit-limit-email 2020-08-18 13:39:03 +05:30
Marica
2d767debf1 Merge branch 'develop' into shift_management 2020-08-18 13:27:15 +05:30
Michelle Alva
849b712770 fix: Change spelling of "Successful" (#23063)
Before: 
Import Successfull

After:
Import Successful
2020-08-18 12:06:46 +05:30
Shivam Mishra
115ad3e99a Merge branch 'develop' into iff-invoicing 2020-08-18 05:51:41 +00:00
Rucha Mahabal
035907a24f fix: remove Request for Quotation link from Fiscal Year dashboard (#23040) 2020-08-18 10:57:10 +05:30
Glen Whitney
b2604d1f77 fix(General Ledger): include Accounting Dimension columns in report
Prior to this commit, custom Accounting Dimensions are not
  (by default) shown or even considered in generating a General
  Ledger report. Moreover, as they are not considered, they are
  not used to distinguish GL Entry lines in the same voucher
  with the same Account when the "Group By" value is
  "Group by Voucher (Consolidated)". This situation leads to
  lines with different values for the accounting dimension
  to be ganged together in the General Ledger view of a Journal
  entry, making the entry difficult for an accountant to read.

  This commit alleviates the problem by adding a checkbox
  to control whether Accounting Dimension columns are considered
  in the General Ledger report. When they are considered, they
  are displayed and also included in the key that distinguishes
  lines in the "Group by Voucher (Consolidated)" mode.

  Resolves #23033.
2020-08-17 20:43:56 +00:00
Deepesh Garg
1067f7ed3e fix: Price rule filtering in case of no doc 2020-08-17 23:47:58 +05:30
Deepesh Garg
38cabbd4b8 Merge pull request #23007 from prssanna/expense-claim-list-currency
fix: add company in list fields to fetch for Expense Claim
2020-08-17 23:07:51 +05:30
Deepesh Garg
aef5c4cb64 Merge pull request #23044 from frappe/sales-analytics
fix: Remove dependency of Sales Order in Sales Analytics
2020-08-17 23:00:49 +05:30
Shivam Mishra
eb832f6861 Merge branch 'develop' into iff-invoicing 2020-08-17 12:53:43 +00:00
Marica
4c1ea3e0e3 Merge branch 'develop' into credit-limit-email 2020-08-17 18:10:29 +05:30
Marica
0a926ee20d Merge branch 'develop' into general-ledger-filters 2020-08-17 18:10:05 +05:30
Marica
11a167f8bb Merge branch 'develop' into shift_management 2020-08-17 16:39:27 +05:30
marination
205df14a48 fix: Credit Limit Email not working 2020-08-17 16:23:44 +05:30
Anurag Mishra
df7b428331 fix: UI/UX Salary details and salary slip form cleanup (#22536)
* fix: UI/UX Salary details

* feat: salary slip form cleaup

* fix(test): set working days zero if salary slip is based on timesheet

* fix(revert): set working days zero if salary slip is based on timesheet

* fix: salary slip form cleanup

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-17 14:09:54 +05:30
Marica
39c97bfbe9 Merge branch 'develop' into shift_management 2020-08-17 13:46:51 +05:30
Anurag Mishra
13be09e883 Update update_start_end_date_for_old_shift_assignment.py 2020-08-17 13:43:33 +05:30
Afshan
084de5f0b2 fix: handled condition if staffing isn't created (#22992)
* fix: handled condition if staffing isn't created

* style: reformated code for redability

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

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-17 13:14:09 +05:30
marination
eb241c6c42 fix: General Ledger filter validation 2020-08-17 12:57:56 +05:30
Anupam K
d7b69e57ae fix: deleting unused Stock Entry Type 2020-08-17 11:20:56 +05:30
Afshan
5b45961b9d fix: the JSON object must be str, bytes or bytearray, not "list" (#23047)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-17 10:51:53 +05:30
Deepesh Garg
e9b229c246 Merge pull request #23049 from deepeshgarg007/loan_top_up_fixes
feat: Enhancement in Loan Topups
2020-08-16 22:52:48 +05:30
Deepesh Garg
e1e847a3f7 feat: Enhancement in Loan Topups 2020-08-16 20:57:39 +05:30
Deepesh Garg
a2249e013d Merge branch 'develop' of https://github.com/frappe/erpnext into loan_top_up_fixes 2020-08-15 18:28:04 +05:30
michellealva
e69b2e0da1 fix: Remove dependency of Sales Order in Sales Analytics 2020-08-15 10:16:26 +05:30
Deepesh Garg
d9accededa fix: filter pricing rules based on condition 2020-08-14 22:36:01 +05:30
Shivam Mishra
fe57ed629e Merge branch 'develop' into iff-invoicing 2020-08-14 14:31:31 +00:00
Shivam Mishra
2da23ba051 Merge pull request #22447 from scmmishra/support-search
feat: added search to support page
2020-08-14 14:01:17 +00:00
Shivam Mishra
736aee886e Merge branch 'develop' into support-search 2020-08-14 13:36:59 +00:00
Rucha Mahabal
5fb0e7184e fix: list index out of range error while setting POS payment mode (#23018) 2020-08-14 17:11:39 +05:30
Suraj Shetty
404afb823f Merge pull request #22723 from Anurag810/HR-fix 2020-08-14 16:43:28 +05:30
Suraj Shetty
cab5918244 Merge branch 'develop' into HR-fix 2020-08-14 16:12:28 +05:30
Shivam Mishra
3daa9de998 feat: add email option to field email_id 2020-08-14 13:46:58 +05:30
Shivam Mishra
6b68eaad1e feat: use email template for membership acknowledgement 2020-08-14 13:46:58 +05:30
Shivam Mishra
b4d3666e69 feat: show send acknowledgement button if enabled in settings 2020-08-14 13:46:58 +05:30
Shivam Mishra
e4c58c37c8 feat: allow member creation via API 2020-08-14 13:46:58 +05:30
Shivam Mishra
98bcedd09c feat: create member if not already exists 2020-08-14 13:46:58 +05:30
Shivam Mishra
d7139bbd43 fix: type error 2020-08-14 13:46:58 +05:30
Shivam Mishra
87ddec069e refactor: try block across the function 2020-08-14 13:46:58 +05:30
Shivam Mishra
6fbe9b5404 fix: remove payload 2020-08-14 13:46:58 +05:30
Shivam Mishra
733bde31c9 fix: doctype name in patch 2020-08-14 13:46:58 +05:30
Shivam Mishra
3a67a78ece feat: add custom buttons for invoice and email 2020-08-14 13:46:58 +05:30
Shivam Mishra
8e0314e7f6 feat: separate invoice generation and email 2020-08-14 13:46:58 +05:30
Shivam Mishra
c8d9e7f77b feat: add message field 2020-08-14 13:46:58 +05:30
Shivam Mishra
1678eb9b50 feat: drop payload column 2020-08-14 13:46:58 +05:30
Shivam Mishra
62e344188a feat: update settings and link filters 2020-08-14 13:46:32 +05:30
Shivam Mishra
15340e0c7f feat: send invoice via email 2020-08-14 13:46:32 +05:30
Shivam Mishra
811ac909f9 feat: add auto invoice creation fields and controllers 2020-08-14 13:46:32 +05:30
Shivam Mishra
96dc67c35e feat: add copy button and docs link 2020-08-14 13:46:32 +05:30
Shivam Mishra
3a1868dae8 feat: add item field 2020-08-14 13:46:32 +05:30
Shivam Mishra
a16b24d50a feat: add enable or disable invoicing and print format field 2020-08-14 13:46:32 +05:30
Anurag Mishra
759632c025 fix: requested Changes 2020-08-14 12:26:04 +05:30
Anurag Mishra
6f1579da1f Merge branch 'develop' into shift_management 2020-08-14 12:11:41 +05:30
Deepesh Garg
8ca57eb5dd Merge pull request #23022 from marination/loan-amount
fix: Validate or Set Loan Amount first
2020-08-13 19:53:09 +05:30
Afshan
d7d92c520e fix: removed code relating to standard working hours (#23009) 2020-08-13 19:40:09 +05:30
Deepesh Garg
1151f888ba fix: Set pledge amount before setting loan amount 2020-08-13 18:52:23 +05:30
bhavesh95863
a647bef682 fix: warehouse mandatory even update stock uncheck (#23023) 2020-08-13 17:41:55 +05:30
Anupam K
b3bd780d46 fix: codasy dix 2020-08-13 17:07:15 +05:30
Anurag Mishra
f096ba4998 patch: Old Shift Assignment 2020-08-13 14:18:48 +05:30
Anurag Mishra
c2710e05ce fix: showing on_going shift on calendar 2020-08-13 14:17:47 +05:30
Anurag Mishra
74f0a1ab7c fix: changes Requested 2020-08-13 14:17:47 +05:30
Anurag Mishra
00a8081aba Fix: button label 2020-08-13 14:17:47 +05:30
Anurag Mishra
dcf598dc2d Fix: requested Changes 2020-08-13 14:17:47 +05:30
Anurag Mishra
d5c921e358 Fix: Requested Changes 2020-08-13 14:17:47 +05:30
Anurag Mishra
b48110caf1 Update erpnext/hr/doctype/shift_assignment/shift_assignment.py
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-13 14:17:47 +05:30
Anurag Mishra
3aa1101d5e fix: requested changes 2020-08-13 14:17:47 +05:30
Anurag Mishra
17e6d0918b feat: Employee level Shift Request Approver 2020-08-13 14:17:47 +05:30
Anurag Mishra
43ba7dd4c8 feat: don't allow to request for default shift 2020-08-13 14:17:47 +05:30
Anurag Mishra
feef4a6c1e test: employee checkin 2020-08-13 14:17:47 +05:30
Anurag Mishra
b3e00de0ae refactor: Shift Request 2020-08-13 14:17:47 +05:30
Anurag Mishra
a6ec7e31d2 test: shift assignment 2020-08-13 14:17:47 +05:30
Anurag Mishra
dd46d19765 feat: map event calendar to show ongoing shift assignment and fixed period assigment 2020-08-13 14:17:47 +05:30
Anurag Mishra
afa98bb39b feat: Assign shift for period or create ongoing assignment 2020-08-13 14:17:47 +05:30
Abhishek Balam
a25760046f fix: condition syntax validation readded, fetch item details if condition not met ignoring rule 2020-08-13 13:22:58 +05:30
marination
8264fcd0a5 fix: Only validate repayment if term loan 2020-08-13 12:47:34 +05:30
Abhishek Balam
487aa30aef fix: eval fail message fix 2020-08-13 12:19:34 +05:30
marination
6988fbb82d fix: Validate or Set Loan Amount first 2020-08-13 12:17:13 +05:30
Deepesh Garg
ca898c6da3 fix: Condition fix 2020-08-13 11:54:18 +05:30
Deepesh Garg
cbde04d3da fix: Pass doc instead of args 2020-08-13 11:47:41 +05:30
prssanna
bfb219612e feat: enable total row in Gross Profit Report 2020-08-13 11:34:05 +05:30
Anupam Kumar
e447c79f9d fix: Quotation lost reason options fix (#22814)
* adding patch and lost reason child tables

* fix: conflict resolved
2020-08-13 09:20:36 +05:30
Saqib
c7614174d0 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:18:59 +05:30
Nabin Hait
e2ee455acc fix: Calculate taxes if tax is based on item quantity 2020-08-12 20:58:03 +05:30
Abhishek Balam
fdfab03c11 feat: add condition field in pricing rule 2020-08-12 20:33:54 +05:30
Raffael Meyer
94308fc107 Merge branch 'develop' into barredterra-patch-1 2020-08-12 16:14:55 +02:00
Deepesh Garg
21a220e2a5 fix: Update state code and union territory for Daman and Diu (#22988)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-12 19:19:03 +05:30
Rucha Mahabal
cd5821e00a Merge pull request #23011 from ruchamahabal/fix-asset-maintenance-status
fix: don't set asset maintenance log status as Overdue when Completed or Cancelled
2020-08-12 19:17:33 +05:30
Deepesh Garg
617027c6ca Merge branch 'develop' of https://github.com/frappe/erpnext into navbar_links 2020-08-12 18:39:20 +05:30
Rucha Mahabal
517a6d0054 fix: set draft indicators for Asset Maintenance Log listview 2020-08-12 18:01:45 +05:30
Rucha Mahabal
691ec1bd27 fix: don't set maintenance log status as Overdue when Completed or Cancelled 2020-08-12 18:01:07 +05:30
Anupam Kumar
674d1b0803 feat: Material Request and Stock Entry Enhancement (#22671)
* feat: send to warehouse

* adding warehouse validation

* fix: review changes

* fix: review changes

* stock entry enhancement

* fix: review changes
2020-08-12 17:55:02 +05:30
Rucha Mahabal
e0cc421e50 fix: TypeError while setting transfer_qty in Stock Entry (#22929)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-12 14:33:30 +05:30
Marica
93df724dc1 Merge pull request #22945 from scmmishra/item-image-alt
feat: allow Item image alt
2020-08-12 13:37:58 +05:30
Marica
846771cb29 Merge branch 'develop' into item-image-alt 2020-08-12 13:37:19 +05:30
Deepesh Garg
1d5ab618d2 Merge pull request #23001 from nabinhait/inclusive-tax-based-on-item-quantity
fix: Calculate taxes if tax is based on item quantity and inclusive on item price
2020-08-11 22:05:02 +05:30
Deepesh Garg
7d0a625b9c git commit -m "fix: Add missing semicolon" 2020-08-11 22:02:12 +05:30
Marica
f6e9888aa4 Merge pull request #23000 from AfshanKhan/fix-duplicate-dropdown-PO
fix: po dropdown
2020-08-11 20:35:28 +05:30
Nabin Hait
19ea7218d9 fix: Calculate taxes if tax is based on item quantity and inclusive on item price 2020-08-11 20:34:57 +05:30
Shivam Mishra
1679c7af88 Merge branch 'develop' into support-search 2020-08-11 14:54:10 +00:00
Afshan
ba33900712 Merge remote-tracking branch 'upstream/develop' into fix-duplicate-dropdown-PO 2020-08-11 20:17:05 +05:30
Afshan
b5b2586968 fix: referencing frm 2020-08-11 20:15:57 +05:30
Shivam Mishra
2fe5d76fe4 Merge branch 'develop' into item-image-alt 2020-08-11 14:45:55 +00:00
Shivam Mishra
ccdaf3da66 Merge branch 'develop' into fix-margin-for-filter 2020-08-11 14:41:29 +00:00
Deepesh Garg
ca9038feb7 Merge pull request #22998 from abhishekbalam/rename_source_section_opportunity
fix(CRM): Change 'Source' section name to 'More Information' in Opportunity
2020-08-11 18:26:09 +05:30
Anurag Mishra
ed6e9550ca fix: removed payroll from HR. (#22991)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-11 18:04:42 +05:30
Deepesh Garg
2633e292a5 fix: Is Secured Loan check mapping 2020-08-11 18:03:28 +05:30
Abhishek Balam
d0ae92d4bd fix: moved company field, renamed to 'More Information' 2020-08-11 17:39:17 +05:30
prssanna
5a7618d8ec fix: add company in list fields to fetch for Expense Claim 2020-08-11 16:50:31 +05:30
Abhishek Balam
ee5b9c7691 feat(Accounting): Process Statement Of Accounts (#22901)
* feat: Process Statement Of Accounts initial commit

* fix: add jinja supported inputs for subject and body in email settings

* feat: utils support in template, tested autoemail, fixed issues
2020-08-11 16:23:47 +05:30
Abhishek Balam
9f6d114265 fix: Change Source section name to 'Company Information' 2020-08-11 16:16:05 +05:30
Anupam Kumar
79d731dcd8 feat: Naming series for Sales/Purchase Return (#22942)
* feat: adding return naming series

* Update purchase_invoice.json

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-08-11 16:11:20 +05:30
Deepesh Garg
145b80b11c Merge pull request #22987 from frappe/fix-company-field
fix: Consistent capitalization
2020-08-11 16:09:27 +05:30
Deepesh Garg
2621016884 fix: Allocated advance amount for multi-currency payment (#22923)
* fix: Allocated advance amount for multicurrency payment

* fix: Get grand total based on party currency

* fix: Remove unwanted code
2020-08-11 16:06:13 +05:30
Abhishek Balam
ef3b82dae2 fix(CRM): Move Source section above Follow Up section In Opportunity (#22974)
* fix: move source section above follow up

* fix: only moving source field to 1st section
2020-08-11 16:05:02 +05:30
Shivam Mishra
3325be1d87 fix: spacing for slideshow (#22996) 2020-08-11 16:03:46 +05:30
Deepesh Garg
285e059394 Merge pull request #22997 from abhishekbalam/set_opportunity_status_to_converted
fix(CRM): Change Opportunity to 'Converted' when Sales Order is created
2020-08-11 16:00:16 +05:30
Abhishek Balam
c992616d35 fix: change opportunity to 'Converted' when items not selected in opportunity itself for making quotation and sales order 2020-08-11 15:22:54 +05:30
Shivam Mishra
c798c6abbd Merge branch 'develop' into fix-margin-for-filter 2020-08-11 09:11:30 +00:00
Afshan
acc3d42cf0 fix: escape apostrophe in company name if exist (#22956)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-11 14:40:44 +05:30
Shivam Mishra
49dd8782fd fix: margin overflow cutting the focus state 2020-08-11 14:39:04 +05:30
Rucha Mahabal
19b51762ef fix: escape fields for Payroll Entry (#22994) 2020-08-11 13:12:00 +05:30
Rucha Mahabal
b7bc34047a Merge pull request #22947 from ruchamahabal/escape-company-field
fix: escape company field
2020-08-11 10:58:56 +05:30
Rucha Mahabal
f7a7cc08d9 Merge branch 'develop' into escape-company-field 2020-08-11 10:22:32 +05:30
Saurabh
58d05ac0e0 fix: check setup complete flag insted setup page 2020-08-10 19:36:45 +05:30
Jai Chavan
dbbb864ba5 fix: Consistent capitalization 2020-08-10 16:55:03 +05:30
sahil28297
4e4a19d3e6 Merge pull request #22984 from saurabh6790/tax-template-issue
fix: Susbcription in Sales Taxes and Charges Dashboard
2020-08-10 16:01:35 +05:30
Deepesh Garg
069a54e5c3 fix: Cancellation of accounting transactions within closed accounting period 2020-08-10 16:01:01 +05:30
sahil28297
8aeb20cab8 Merge pull request #22977 from sahil28297/fix_pos_isse_v13
fix: remove mentions of display items in stock (#22963)
2020-08-10 16:00:56 +05:30
sahil28297
e5e0e93229 Merge pull request #22978 from sahil28297/fix_pos_isse_v13
Fix pos isse v13
2020-08-10 16:00:36 +05:30
sahil28297
81e35f67be Merge pull request #22979 from saurabh6790/pos
fix: [pos] minor bugs
2020-08-10 16:00:20 +05:30
sahil28297
e183161158 Merge pull request #22980 from sahil28297/sub_dashboard_link_v13
fix: Subscripition link in Customer dashboard (#22960)
2020-08-10 15:59:58 +05:30
sahil28297
4ace0829b9 Merge pull request #22983 from saurabh6790/pos
Pos
2020-08-10 15:59:39 +05:30
sahil28297
e204f152b3 Merge pull request #22981 from sahil28297/sub_dashboard_link_v13
Sub dashboard link v13
2020-08-10 15:59:16 +05:30
sahil28297
b42e268d1b Merge pull request #22982 from saurabh6790/tax-template-issue
fix: Susbcription in Sales Taxes and Charges Dashboard
2020-08-10 15:58:58 +05:30
marination
3beeeb589a fix: Susbcription in Sales Taxes and Charges Dashboard 2020-08-10 15:55:02 +05:30
Deepesh Garg
b1e2cdd4d2 fix: Subscripition link in Customer dashboard (#22960)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-10 15:53:29 +05:30
Saqib Ansari
cc5b49bff4 fix: [pos] minor bugs 2020-08-10 15:52:32 +05:30
Mangesh-Khairnar
9305e7f1cc fix: remove mentions of display items in stock (#22963) 2020-08-10 15:48:33 +05:30
Deepesh Garg
372abaa420 Merge pull request #22976 from marination/sales-taxes-dashboard
fix: Susbcription in Sales Taxes and Charges Dashboard
2020-08-10 15:17:59 +05:30
marination
0f27500197 fix: Susbcription in Sales Taxes and Charges Dashboard 2020-08-10 15:17:58 +05:30
Saurabh
2547b7479e Merge pull request #22975 from nextchamp-saqib/pos-fixes-1
fix: [pos] minor bugs
2020-08-10 14:50:53 +05:30
Marica
0fcb05a3aa fix: Misleading filters on Item tax Template Link field (#22918)
Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-10 14:48:13 +05:30
Saqib Ansari
f1091534cd fix: [pos] minor bugs 2020-08-10 14:45:58 +05:30
Deepesh Garg
61538f23f0 Merge pull request #22971 from marination/opportunity-from-email
fix: Creating opportunity from email
2020-08-10 14:26:05 +05:30
Marica
42fbdc09f8 Merge branch 'develop' into opportunity-from-email 2020-08-10 13:48:43 +05:30
Anoop
d3d3db654e fix: Inpatient Record - Transfer check-in time validation (#22958)
* fix: inpatient transfer should not allow future checkin time

* Update erpnext/healthcare/doctype/inpatient_record/inpatient_record.js

Error message corrected

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-10 13:21:12 +05:30
Deepesh Garg
d626e3bd2e Merge branch 'develop' into billing_address_fetch 2020-08-10 12:57:12 +05:30
Rucha Mahabal
520bb6ac74 Merge pull request #22970 from ruchamahabal/fix-fees-test
fix: failing Fees test
2020-08-10 12:54:22 +05:30
Shivam Mishra
ded9f41cce refactor: update confusing label 2020-08-10 12:45:07 +05:30
marination
a07973cfa5 fix: Creating opportunity from email 2020-08-10 12:39:42 +05:30
Anurag Mishra
95984fd921 fix: Not able to cancel application,allocation nad encashments 2020-08-10 12:36:00 +05:30
Rucha Mahabal
97ecf52d6f fix: failing Fees test 2020-08-10 12:13:35 +05:30
Prssanna Desai
5c0439f768 fix: set correct default value from from date in downtime analysis report (#22903)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-10 11:12:52 +05:30
Deepesh Garg
bc8a281f83 fix: Subscripition link in Customer dashboard (#22960)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-10 11:00:08 +05:30
Deepesh Garg
41a4999711 Merge pull request #22843 from nextchamp-saqib/asset-adj-dimension-fix
fix: cannot submit value adjustment with custom dimension
2020-08-10 10:12:41 +05:30
Deepesh Garg
097d89f550 Merge pull request #22946 from deepeshgarg007/gst_export_wopay
fix: GSTR 1 report for exports without payment of Tax
2020-08-10 09:56:12 +05:30
Anupam K
d01caac852 report lead detail 2020-08-10 09:39:58 +05:30
Raffael Meyer
821eeb9852 fix(membership): currency should be a link 2020-08-09 14:07:32 +02:00
Mangesh-Khairnar
a53f15ca35 fix: remove mentions of display items in stock (#22963) 2020-08-09 13:12:47 +05:30
Deepesh Garg
7882c70244 Merge pull request #22959 from deepeshgarg007/gst_rcm_fixes_v13
fix: Taxable value for RCM
2020-08-08 22:34:36 +05:30
Deepesh Garg
d4ecf426b7 fix: Place of supply fix 2020-08-08 22:33:18 +05:30
Deepesh Garg
5ac2fd94f0 fix: Taxable value for RCM 2020-08-08 22:28:13 +05:30
Deepesh Garg
af1f46f2d9 fix: Add default billing address for purchase documents 2020-08-07 19:44:20 +05:30
Deepesh Garg
72fc188706 Merge pull request #21756 from deepeshgarg007/loan_patch_and_fixes
fix: Description for fields and patch for old loans
2020-08-07 17:08:31 +05:30
Deepesh Garg
bad269c354 fix: Parent income account check 2020-08-07 16:21:41 +05:30
Rucha Mahabal
67e54b1c60 Merge pull request #22948 from AfshanKhan/dunning
fix: grand_total assignment before reference
2020-08-07 16:12:56 +05:30
Afshan
1f3cc7553c fix: grand_total assigment before reference 2020-08-07 15:57:31 +05:30
Rucha Mahabal
8118dd9e62 fix: escape company field 2020-08-07 14:52:50 +05:30
Deepesh Garg
ab611d5fd8 fix: GSTR 1 report for exports without payment of Tax 2020-08-07 14:47:40 +05:30
Shivam Mishra
b7a24ad95b Merge branch 'develop' into item-image-alt 2020-08-07 09:15:00 +00:00
Shivam Mishra
b1f8859121 feat: add alt value in product page 2020-08-07 14:38:40 +05:30
Shivam Mishra
a0954e66a8 feat: add image alt argument for product_image macros 2020-08-07 14:34:54 +05:30
Shivam Mishra
ba4c4f107e feat: add image alt field in items 2020-08-07 14:34:28 +05:30
Deepesh Garg
b98088bb01 Merge branch 'develop' into loan_patch_and_fixes 2020-08-07 13:27:40 +05:30
Deepesh Garg
4c4c0df7bd Merge pull request #22939 from frappe/barredterra-patch-1
fix: show only company's bank accounts
2020-08-06 20:59:55 +05:30
Deepesh Garg
a306af8c08 fix: Add help link in navbar settings 2020-08-06 20:52:02 +05:30
Shivam Mishra
124eabaac8 Merge branch 'develop' into barredterra-patch-1 2020-08-06 14:16:48 +00:00
Rucha Mahabal
a78336e77d fix: remove patch for retaining permissions for Video DocType (#22932)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-06 19:01:42 +05:30
Shivam Mishra
d119db856b Merge pull request #22937 from scmmishra/fix-item-configure-13-beta 2020-08-06 13:23:45 +00:00
Shivam Mishra
5994600717 Merge pull request #22940 from scmmishra/fix-item-configure-13-beta 2020-08-06 13:20:11 +00:00
Raffael Meyer
d854d39c00 fix: show only company's bank accounts 2020-08-06 15:09:22 +02:00
Shivam Mishra
b110e5842f fix: unbound error in product configurator 2020-08-06 18:30:55 +05:30
marination
0702fbd206 fix: Show Add to Cart Button anyway
- add to cart wasnt visible if show price is disabled in shopping cart settings (product_info = null), creating confusion
2020-08-06 18:28:55 +05:30
marination
72fdc1302c fix: product action instead of info 2020-08-06 18:28:55 +05:30
Shivam Mishra
aa4f8cf4fc fix: handle product_info null 2020-08-06 18:28:55 +05:30
Shivam Mishra
5de8a7a775 Merge pull request #22936 from marination/item-configure 2020-08-06 12:55:12 +00:00
marination
63513f1b14 fix: Show Add to Cart Button anyway
- add to cart wasnt visible if show price is disabled in shopping cart settings (product_info = null), creating confusion
2020-08-06 18:22:28 +05:30
marination
ccf44a1bfd fix: product action instead of info 2020-08-06 17:34:38 +05:30
Shivam Mishra
01f664a88f fix: handle product_info null 2020-08-06 17:24:02 +05:30
Shivam Mishra
33a5fdfb78 fix: unbound error in product configurator 2020-08-06 17:23:51 +05:30
Afshan
085061fa21 fix: show or hide section or attributes depending on other attributes… (#22861)
* fix: show or hide section or attributes depending on other attributes for better UI

* Update erpnext/stock/doctype/item/item.js

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

* fix: made has_variants checkbox to read_only if stock_exists

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-08-06 14:36:34 +05:30
Marica
67d829b5ed Merge pull request #22825 from ruchamahabal/education-dashboard
feat: Education Desk, Dashboard, and Onboarding
2020-08-06 14:30:40 +05:30
Marica
1afe177a4f Merge branch 'develop' into education-dashboard 2020-08-06 14:12:00 +05:30
Saurabh
a91acb62df Merge branch 'version-13-beta-pre-release' into version-13-beta 2020-08-06 13:30:21 +05:30
Saurabh
5ad9c2a1a0 bumped to version 13.0.0-beta.4 2020-08-06 13:50:20 +05:50
Deepesh Garg
44d62ad0d7 Merge pull request #22921 from ruchamahabal/fix-payment-entry-ref
fix: condition for checking reference details for Payment Entry
2020-08-05 23:16:14 +05:30
Suraj Shetty
8d05514260 refactor: Format and sanitise user inputs to search queries. (#22922)
* 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-05 20:07:30 +05:30
Suraj Shetty
1923ef052c refactor: Format and sanitise user inputs to search queries. (#22913)
* 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-05 19:42:25 +05:30
Rucha Mahabal
5da067b689 fix: condition for checking reference detail for Payment Entry 2020-08-05 18:18:57 +05:30
Marica
0c818927a5 fix: get_regional_address_details missing positional arg 'company' (#22915) 2020-08-05 16:47:41 +05:30
Rucha Mahabal
f9143e9bb0 Merge branch 'develop' into education-dashboard 2020-08-05 16:28:14 +05:30
Rucha Mahabal
8edace1a58 fix: covert Program wise Fee Collection to a Script Report 2020-08-05 16:24:21 +05:30
Rucha Mahabal
d67c2ea0d4 fix: make program field mandatory in Fees 2020-08-05 14:13:14 +05:30
gavin
6c81f59f6f Merge pull request #22728 from frappe/dependabot/npm_and_yarn/lodash-4.17.19
build(deps): bump lodash from 4.17.15 to 4.17.19
2020-08-05 14:02:55 +05:30
gavin
786e0606f5 Merge branch 'develop' into dependabot/npm_and_yarn/lodash-4.17.19 2020-08-04 17:59:17 +05:30
Suraj Shetty
1e67693c53 Merge pull request #22908 from marination/blanket-order-duplicate-method
fix: Remove Duplicate Blanket order method
2020-08-04 14:05:28 +05:30
marination
6823e8ed03 fix: Remove Duplicate Banket order method 2020-08-04 14:04:15 +05:30
Nabin Hait
a042d4721e fix: Bank Clearance of POS purchase invoice (#22882) 2020-08-03 20:42:15 +05:30
Nabin Hait
a1d3537f2a fix: Bank Clearance of POS purchase invoice (#22883) 2020-08-03 20:42:00 +05:30
Rucha Mahabal
b7311c8fc1 fix: SQL query in accounts receivable, payable reports (#22888) 2020-08-03 20:41:25 +05:30
Marica
e211bb7a53 fix: Reposition description in Warehouse (#22895) 2020-08-03 20:40:09 +05:30
Nabin Hait
5e548b4387 Dunning cleanup beta (#22899)
* fix: Dunning cleanup

* fix: Added dashboard for Dunning
2020-08-03 20:39:15 +05:30
Nabin Hait
48163e31c5 Dunning cleanup (#22898)
* fix: Dunning cleanup

* fix: Added dashboard for Dunning
2020-08-03 20:38:28 +05:30
Rucha Mahabal
cb665dc4d1 fix: Assessment Result child table not visible when accessed via dashboard (#22881) 2020-08-03 19:43:17 +05:30
Rucha Mahabal
101fe2b769 fix: Assessment Result child table not visible when accessed via dashboard (#22880)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-08-03 19:42:24 +05:30
Anupam Kumar
25ee4328d3 card company issue (#22900) 2020-08-03 19:39:55 +05:30
Anupam Kumar
1895e9b89a fix: Shopping cart issue v13 (#22868)
* refactoring shopping cart settings

* adding column_break in shopping cart settings

* fix: mandatory depend on fix company

* fix: resetting company, price_list, default_customer_group, quotation_series when card is diabled.
2020-08-03 18:50:11 +05:30
Rucha Mahabal
b50b20458e fix: TypeError while concatenating account number and name in COA (#22885)
Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2020-08-03 15:51:57 +05:30
Prssanna Desai
b44ee186cd fix: check if row['delay'] exists (#22892) 2020-08-03 15:18:35 +05:30
Marica
4e0989d0cb fix: Misleading description in Warehouse (#22878) 2020-08-03 14:56:20 +05:30
Marica
dd97524db5 fix: Misleading description in Warehouse (#22877)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-03 14:55:40 +05:30
Prssanna Desai
1dfd9fd756 fix: check if row['delay'] exists (#22889) 2020-08-03 14:48:45 +05:30
Deepesh Garg
2f2de2264d Merge pull request #22887 from deepeshgarg007/subscription_test
fix: Test case for subscription
2020-08-03 14:31:21 +05:30
Deepesh Garg
5572f8eb1e fix: Test case for subscription 2020-08-03 13:40:11 +05:30
Wolfram Schmidt
5e438cc853 Update lead_source.json (#22872)
Allow Lead Source to be renamed. This is usefull for cleaning up data at a later point and allow correcting spelling errors.

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-03 12:46:50 +05:30
Nabin Hait
1a64d1a4ab Reset home page based on product settings (#22876) 2020-08-03 10:43:56 +05:30
Nabin Hait
9cc2d340ba Reset home page based on product settings (#22875) 2020-08-03 10:43:47 +05:30
Nabin Hait
826158c792 fix: Update modified timestamp in accounts settings (#22874) 2020-08-03 09:34:55 +05:30
Nabin Hait
4cc99286c0 fix: Update modified timestamp in accounts settings (#22873) 2020-08-03 09:33:31 +05:30
Anurag Mishra
804426023f fix: minor payroll_dashboard fixes (#22832)
* fix: minor payroll_dashboard fixes

* Update erpnext/hr/report/monthly_attendance_sheet/monthly_attendance_sheet.js

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-03 09:28:04 +05:30
Anurag Mishra
ba52dd8ba6 fix: minor payroll_dashboard fixes (#22832)
* fix: minor payroll_dashboard fixes

* Update erpnext/hr/report/monthly_attendance_sheet/monthly_attendance_sheet.js

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-08-03 08:57:49 +05:30
Deepesh Garg
7fd339bbd6 Merge pull request #22866 from deepeshgarg007/hybrid_loan
fix: Loan Security shortfall calculation fixes
2020-08-02 20:35:26 +05:30
Deepesh Garg
4104887abb fix: fieldname in filter 2020-08-02 18:23:54 +05:30
marination
e3495116dd chore: Error Logging and exception hnadling on connection failure 2020-08-02 17:13:34 +05:30
Deepesh Garg
d909669a18 fix: Test cases 2020-08-02 17:00:53 +05:30
marination
c16ace6732 fix: Codacy 2020-08-02 16:43:15 +05:30
marination
ccf4ab9f85 chore: Added Interactions Report and behaviour fixes
- Youtube Interactions Report with Chart and Summary
- Statistics change in doc on refresh and get updated in db as well
2020-08-02 16:26:36 +05:30
marination
ddc2be36ab Merge branch 'develop' of https://github.com/frappe/erpnext into youtube-analytics 2020-08-02 05:37:30 +05:30
marination
d4817c8685 feat: Track Youtube interactions via Video DocType 2020-08-02 05:35:45 +05:30
Deepesh Garg
b9dc21129c fix: Loan Seurity shortfall calculation fixes 2020-08-01 22:51:40 +05:30
Deepesh Garg
946e106714 Merge pull request #22863 from deepeshgarg007/taxjar_fix
fix: Import pycountry and taxjar only if taxjar is enabled
2020-08-01 13:52:40 +05:30
Deepesh Garg
dcb462f305 fix: Import pycountry and taxjar only if taxjar is enabled 2020-08-01 13:47:09 +05:30
marination
d36df92750 fix: Codacy and repositioned Returned Qty in DN Item 2020-07-31 20:22:55 +05:30
marination
e4dc7642bc Merge branch 'pr-dn-return' of https://github.com/marination/erpnext into pr-dn-return 2020-07-31 20:01:59 +05:30
marination
ba37fe796c chore: Delivery Note Return status 2020-07-31 20:01:06 +05:30
Anurag Mishra
2a4c90302b fix: minor recritment analytics fixes (#22830)
Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-07-31 17:59:30 +05:30
Marica
8058a81dc1 Merge branch 'develop' into pr-dn-return 2020-07-31 16:02:17 +05:30
marination
66069df020 feat: Return tracking in PR/DN 2020-07-31 15:54:05 +05:30
Marica
cf00ee49ec fix: PO/SO view title (#22858) 2020-07-31 15:14:50 +05:30
Deepesh Garg
7a004615a7 Merge pull request #22855 from nabinhait/gl-balance-fix-pre--v13
fix: Ignore cancelled gl entries to get account balance
2020-07-30 22:15:46 +05:30
Deepesh Garg
01e0d50eba Merge pull request #22854 from nabinhait/gl-balance-fix
fix: Ignore cancelled gl entries to get account balance
2020-07-30 22:15:23 +05:30
Nabin Hait
38d5c2e04f fix: Ignore cancelled gl entries to get account balance 2020-07-30 20:53:07 +05:30
Nabin Hait
9837285bf1 fix: Ignore cancelled gl entries to get account balance 2020-07-30 20:52:20 +05:30
Rucha Mahabal
b6675f8dd4 feat: Lab Test Report Summary and Chart 2020-07-30 19:33:08 +05:30
Rucha Mahabal
c5ccf38cdf refactor: Lab Test Report 2020-07-30 18:56:16 +05:30
Rucha Mahabal
00175c9621 Merge pull request #22851 from saurabh6790/develop
fix: validate theme_scss attribute
2020-07-30 18:30:20 +05:30
Saurabh
a14618efe4 fix: validate theme_scss attribute 2020-07-30 17:22:29 +05:30
Rucha Mahabal
ca1b389c99 fix: validate negative quantity for sample collection 2020-07-30 16:58:19 +05:30
Rucha Mahabal
fa2c20ea9e chore: Sample Collection Form clean-up 2020-07-30 16:56:11 +05:30
Rucha Mahabal
9087689d90 fix: subtitle for onboarding
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-30 16:10:05 +05:30
Rucha Mahabal
afa001a1d1 fix: code clean-up 2020-07-30 15:25:04 +05:30
Rucha Mahabal
73edb12ab3 fix: msgprint for sample collection doc created on Lab Test creation 2020-07-30 14:50:30 +05:30
Rucha Mahabal
c33703d54c fix: move result value validations to server side 2020-07-30 14:25:40 +05:30
Rucha Mahabal
b00f870c77 fix: Lab Test Completed status not visible in list view 2020-07-30 13:49:13 +05:30
Rucha Mahabal
621529adfb fix: unlink item from healthcare service unit type (#22828)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-30 13:18:41 +05:30
Marica
00f25842d0 Merge pull request #22829 from ruchamahabal/validate-patient-transfer-time
fix: validate check out and check in time for inpatient occupancy
2020-07-30 13:12:30 +05:30
Marica
c0ea2bc804 Merge branch 'develop' into validate-patient-transfer-time 2020-07-30 13:10:19 +05:30
Saqib
031768f49d chore: asset form reorder (#22833)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-30 12:40:53 +05:30
Rucha Mahabal
ff0b9bffcf feat: added dashboard for Lab Test Template 2020-07-30 12:16:56 +05:30
Rucha Mahabal
440c752529 chore: Lab Test Template form clean-up 2020-07-30 12:16:18 +05:30
Anupam K
6bab21483c report lost opportunity 2020-07-30 00:41:06 +05:30
barredterra
517df5fb0e fix: codacy (again) 2020-07-29 18:16:49 +02:00
barredterra
b719378ee5 fix: codacy 2020-07-29 18:11:04 +02:00
Shivam Mishra
5b056988a6 Merge branch 'develop' of https://github.com/frappe/erpnext into support-search 2020-07-29 21:16:35 +05:30
barredterra
dec2c90866 refactor: move datev-specific stuff to utils 2020-07-29 17:14:23 +02:00
Rucha Mahabal
b860d6af04 Merge pull request #22848 from prssanna/oldest-items-chart-fix-v13
fix: add range filters to oldest items chart
2020-07-29 18:16:26 +05:30
prssanna
60cdef7d57 fix: add range filters to oldest items chart 2020-07-29 18:06:54 +05:30
Prssanna Desai
9e81bb9a11 fix: add range filters to oldest items chart (#22842) 2020-07-29 17:28:30 +05:30
Anupam K
61bfb8c817 Merge branch 'develop' of https://github.com/frappe/erpnext into crm-reports 2020-07-29 15:45:55 +05:30
Saqib Ansari
8cfa00920e fix: cannot submit value adjustment with custom dimension 2020-07-29 15:24:03 +05:30
Rucha Mahabal
4bbcf3ed93 Merge pull request #22836 from akurungadam/fix-dev-1
fix: Sales Invoice Get Healthcare Services - exclude Cancelled appointments
2020-07-28 22:24:38 +05:30
anoop
5903002039 fix: exclude Cancelled appointments while Get Items in Sales Invoice 2020-07-28 21:15:54 +05:30
Rucha Mahabal
a695971596 fix: show the standard validation message
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-28 20:15:29 +05:30
Rucha Mahabal
7cbc7946af fix: validate check out and check in time for inpatient occupancy 2020-07-28 14:11:12 +05:30
Deepesh Garg
212648044f Merge pull request #22302 from P-Froggy/fix-payment-entry-wrong-bank-account-fetch-develop
fix: Set Value of wrong Bank Account Field in Payment Entry
2020-07-28 13:56:42 +05:30
Marica
c1e46d8131 Merge branch 'develop' into fix-payment-entry-wrong-bank-account-fetch-develop 2020-07-28 12:29:47 +05:30
Rucha Mahabal
81ae6c3240 fix: reload HR Settings to fix failing setup (#22802)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-28 12:27:41 +05:30
Nabin Hait
b7602d29f2 fix: POS patch fix (#22827) 2020-07-28 09:13:42 +05:30
Nabin Hait
701474cbaa fix: POS patch fix (#22818) 2020-07-28 09:11:37 +05:30
Shivam Mishra
48be7d37b8 fix: add order_by explicitly for lead (#22820) 2020-07-28 09:00:09 +05:30
Deepesh Garg
9119b4c538 fix: Unable to submit backdated stock transactions for different items (#22648)
* fix: Unable to submit backdated stock transactions for different items

* fix: Test cases

* fix: Test Cases

* fix: Test Cases

* fix: Test for stock account JV

* fix: Journal Entry Test
2020-07-28 08:49:44 +05:30
Deepesh Garg
fa28e600b5 fix: Unable to submit backdated stock transactions for different items (#22822)
* fix: Unable to submit backdated stock transactions for different items

* fix: Test cases

* fix: Test Cases

* fix: Test Cases

* fix: Test for stock account JV

* fix: Journal Entry Test

* fix: Delete unwanted code
2020-07-28 08:49:21 +05:30
Rucha Mahabal
fdcaecb58c Merge branch 'develop' into education-dashboard 2020-07-27 22:23:08 +05:30
Rucha Mahabal
9a2cc74414 feat: onboarding for Education module 2020-07-27 21:33:00 +05:30
Anupam K
9ceeefbd2b refactor: CRM Reports 2020-07-27 19:56:07 +05:30
Rucha Mahabal
6c11f26a11 feat: Education dashboard charts and number cards 2020-07-27 18:50:04 +05:30
Rucha Mahabal
49140ccbfd feat: Program wise Fee Collection Query Report 2020-07-27 18:48:15 +05:30
Shivam Mishra
3c136ebf92 Merge pull request #22819 from scmmishra/iff 2020-07-27 17:26:02 +05:30
Shivam Mishra
97a316c09a feat: add create customer button to member 2020-07-27 15:27:09 +05:30
Shivam Mishra
9e3776e001 feat: improve webhook logging 2020-07-27 14:26:37 +05:30
Shivam Mishra
e43d362d53 feat: verbose logging for verification 2020-07-27 14:19:36 +05:30
Shivam Mishra
4e40b9bdbe feat: log everything 2020-07-27 14:19:36 +05:30
bhavesh95863
bcb49e59e7 fix: Add missing translation function (#22813)
* fix: Add missing translation function

Add missing translation function

* fix: Add missing function for translation

* fix: Add missing translation function

* fix: Add missing translation function
2020-07-26 14:02:16 +05:30
Anupam K
8718daa11e Adding formatter in budget variance report 2020-07-25 23:56:11 +05:30
Nabin Hait
abc3227480 chore: Added change log 2020-07-24 21:02:15 +05:30
Deepesh Garg
b2fccc1d05 Merge pull request #22800 from ruchamahabal/fix-assessment-report
fix(Education): course wise assessment report labels
2020-07-24 19:12:24 +05:30
Deepesh Garg
c591b77613 Merge branch 'develop' into fix-payment-entry-wrong-bank-account-fetch-develop 2020-07-24 19:04:05 +05:30
Mangesh-Khairnar
762f6297f6 fix(payment-request): do not set guest as administrator (#22804) 2020-07-24 18:05:13 +05:30
Mangesh-Khairnar
8721530b4b fix(payment-request): do not set guest as administrator (#22801) 2020-07-24 17:19:56 +05:30
Rucha Mahabal
860a824a7c fix: change label for final grade 2020-07-24 14:32:36 +05:30
Rucha Mahabal
27835b7789 fix: add labels to chart datasets in course wise assessment 2020-07-24 14:07:00 +05:30
Nabin Hait
a8efe8eb5f Merge branch 'develop' into version-13-beta-pre-release 2020-07-24 11:15:13 +05:30
Rucha Mahabal
1010feefe0 feat: Patient Progress Page (#22474)
* feat: add patient progress page

* feat: patient progress sidebar

* feat: Patient Progress Charts

* feat: set up sidebar links

* feat: added heatmap chart for patient interactions

* fix: styles

* fix: add markers for max score in assessment charts

* fix(style): mobile view css

* fix: heatmap and percentage chart filters

* feat: add time span filters to line charts

* fix: make date fields mandatory in healthcare doctypes for better analytics

* fix: title and filter styles

* fix: handle null state for charts

* feat: add Patient Progress Page to desk

* feat: add date range filter to all charts

* fix: code clean-up

* fix: assign roles for Patient Progress Page

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-07-24 10:49:04 +05:30
Afshan
ecb1460440 fix: update the project after task deletion so that the % completed s… (#22591)
* fix: update the project after task deletion so that the % completed shows correct value

* fix: patch to correct % complete of previous projects

* fix: for version-13

* fix: removed patch from v13

Co-authored-by: Marica <maricadsouza221197@gmail.com>
Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-07-24 10:48:16 +05:30
Afshan
91fe10666e fix: buying price for non stock item in gross profit report (#22616)
* fix: buying price for non stock item in gross profit report

* fix: refactor query
2020-07-24 09:49:17 +05:30
Nabin Hait
39969647ca fix: Added missing project field in Purchase invoice (#22799) 2020-07-24 09:48:54 +05:30
Nabin Hait
6bbd4d0c14 fix: Other charges on income tax (#22797) 2020-07-24 09:20:48 +05:30
Anupam K
5d5f026a0d fix: Target variance report signs 2020-07-24 02:32:45 +05:30
Deepesh Garg
7cb1613173 Merge pull request #22622 from AfshanKhan/add-age-range-in-stock-ageing
feat: added range for age in stock ageing
2020-07-23 21:56:45 +05:30
Afshan
73b86d241c fix: conversion to float 2020-07-23 21:09:27 +05:30
Rucha Mahabal
89f9346185 fix(Education): descriptions not copied while creating fees from fee structure (#22792)
Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2020-07-23 20:59:56 +05:30
Deepesh Garg
9843e9f917 fix: Expnese claim outstanding while making payment entry (#22735) 2020-07-23 20:58:57 +05:30
Afshan
13d2a34548 Merge remote-tracking branch 'upstream' into add-age-range-in-stock-ageing
Merge remote-tracking branch 'upstream' into add-age-range-in-stock-ageing
2020-07-23 20:35:21 +05:30
Afshan
7965f655a2 Merge branch 'add-age-range-in-stock-ageing' of https://github.com/AfshanKhan/erpnext into add-age-range-in-stock-ageing
Merge branch 'add-age-range-in-stock-ageing' of https://github.com/AfshanKhan/erpnext into add-age-range-in-stock-ageing
2020-07-23 20:33:43 +05:30
Afshan
775fbe74c5 fix: fixed the logic 2020-07-23 20:33:07 +05:30
Sun Howwrongbum
9bd5f1e4b0 fix: incorrect available_qty being set (#22539)
* fix: incorrect available_qty being set

* style: descriptive variables
2020-07-23 20:06:26 +05:30
Afshan
aa94abf601 fix: asset dashboard report changes (#22759)
* fix: asset dashboard report changes

* fix: moved static filters to dynamic filters

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-23 19:12:38 +05:30
Abhishek Balam
cb45836cda feat(CRM): Email Group Option In Email Campaign (#22731)
* new parent updating logic, made requested changes

* feat: adding Email Group option in Email Campaign

* fix: inv commas
2020-07-23 19:07:11 +05:30
Deepesh Garg
76028cde6a Merge branch 'develop' into fix-payment-entry-wrong-bank-account-fetch-develop 2020-07-23 19:05:17 +05:30
Abhishek Balam
d05a98517d Fix: Increase Length Of "In Words" and "In Words (Company Currency)" fields (#22732)
* new parent updating logic, made requested changes

* fix: Increase Length of In Words fields

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-07-23 19:01:31 +05:30
Deepesh Garg
718870f4a2 Merge pull request #22736 from Thunderbottom/set-homepage
fix: reset homepage to home after unchecking products page
2020-07-23 18:53:37 +05:30
Nabin Hait
9389b3625a Merge branch 'develop' into add-age-range-in-stock-ageing 2020-07-23 18:53:00 +05:30
Saqib
a6f98d48bc refactor: POS workflow (#20789)
* refactor: add pos invoice doctype replacing sales invoice in POS

* refactor: move pos.py to pos invoice

* feat: add pos invoice merge log doctype

* feat: ability to merge pos invoices into a sales invoice

* feat: [wip] new ui for point of sale

* fix: pos.py moved to pos_invoice

* feat: loyalty points for POS Invoice

* fix: loyalty points on merging

* feat: return against pos invoices

* Merge 'fork/serial-no-selector' into refactor-pos-invoice

* chore: status fix and set warehouse from pos profile

* fix: naming series

* feat: merge pos returns into credit notes

* feat: add pos list action for merging into sales invoices

* feat[UX]: add shortcuts & focus on search after customer selection

* feat: stock validation from previous pos transactions

* Merge 'fork/serial-no-selector' into refactor-pos-invoice

* chore: fix df not found for base_amount precision

* feat: serial no validation from previous pos transactions

* chore: move pos.py into pos page

* feat: pos opening voucher

* feat: link pos closing voucher with opening voucher

* chore: use map_doc instead of get_mapped_doc for better perf

* feat: enforce opening voucher on pos page

* feat: [ui] [wip] point of sale beta ui refactor

* fix: auto fetching serial nos with batch no

* feat: [ui] item details section for new pos ui

* feat: remove item from cart

* refactor: [ui] [wip] split point_of_sale into components
* new payment component
* new numberpad
* fix pos opening status
* move from flex to grids

* fix: search from item selector

* feat: loyalty points as payment method

* feat: pos invoice status
* fix a bug with invalid JSON

* fix: loyalty program ui fixes

* feat: past order list and past order summary

* feat: (minor) setting discount from item details

* fix: adding item before customer selection

* feat: post order submission summary
* save and open draft orders
* fix: item group filter

* fix:  item_det not defined while submitting sle

* fix: minor bugs

* fix: minor ux fixes

* feat: show opening time in pos ui

* feat: item and customer images

* feat: emailing and printing an invoice

* fix: item details field edit shows empty alert

* fix: (minor) ux fixes

* chore: rename pos opening voucher to pos opening entry

* chore: (minor) rename pos closing voucher and sub doctypes

* chore: add patch for renaming pos closing doctypes

* fix: negative stock not allowed in pos invoices* default is_pos in pos invoices* fix: transalation

* fix: invoices not getting fetched on pos closing

* fix: indentation

* feat: view / edit customer info

* fix: minor bugs

* fix: minor bug

* fix: patch

* fix: minor ux issues

* fix: remove uppercase status

* refactor: pos closing payment reconciliation

* fix: move pos invoice print formats to pos invoice doctype

* fix: ui issues

* feat: new child doctype to store pos payment mode details

* fix: add to patches.txt

* feat: search by serial no

* chore: [wip] code cleanup

* fix: item not selectable from cart

* chore: [wip] code cleanup

* fix: minor issues
* loyalty points transactions
* default payment mode

* fix: minor fixes
* set correct mop amount with loaylty points
* editing draft invoices from UI

* chore: pos invoice merge log tests

* fix: batch / serial validation in pos ui and on submission

* feat: use onscan js for barcode scan events

* fix: cart header with amount column

* fix: validate batch no and qty in pos transactions

* chore: do not fetch closing balances as opening balance

* feat: show available qty in item selector

* feat: shortcuts

* fix: onscan.js not found

* fix: onscan.js not found

* fix: cannot return partial items

* fix: neagtive stock indicator

* feat: invoice discount

* fix: change available stock on warehouse change

* chore: cleanup code

* fix: pos profile payment method table

* feat: adding same item with different uom

* fix: loyalty points deleted after consolidation

* fix: enter loyalty amount instead of loyalty points

* chore: return print format

* feat: custom fields in pos view

* chore: pos invoice test

* chore: remove offline pos

* fix: cyclic dependency

* fix: cyclic dependency

* patch: remove pos page and order fixes

* chore: little fixes

* fix: patch perf and plural naming

* chore: tidy up pos invoice validation

* chore: move pos closing to accounts

* fix: move pos doctypes to accounts

* fix: move pos doctypes to accounts

* fix: item description in cart

* fix: item description in cart

* chore: loyalty tests
* minor fixes

* chore: rename point of sale beta to point of sale

* chore: reset past order summary on filter change

* chore: add point of sale to accounting desk

* fix: payment reconciliation table in pos closing

* fix: travis

* Update accounting.json

* fix: test cases

* fix: tests
* patch loyalty point entries

* fix: remove test
* default mode of payment is mandatory for pos transaction

* chore: remove unused checks from pos profile

* fix: loyalty point entry patch

* fix: numpad reset and patches

* fix: minor bugs

* fix: travis

* fix: travis

* fix: travis

* fix: travis

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-07-23 18:51:26 +05:30
Nabin Hait
8712ac6d39 fix: Job offer is mandatory for employee onboarding (#22791) 2020-07-23 18:09:35 +05:30
Marica
3c8c346227 fix: Pick List empty table and Serial-Batch items handling (#22426)
* chore: Pick List empty table and serial-batch items handling

* fix: Remove console statement

* chore: Added tests for batched and batched-serialised item
2020-07-23 17:52:06 +05:30
Afshan
55125fbe4e fix: moved custom_make_buttons to PurchaseOrderController to avoid duplication of dropdown options (#22744) 2020-07-23 17:44:38 +05:30
Rucha Mahabal
833682b03d feat(Education): Student Attendance and Leave Enhancements (#22623)
* feat: make Student Attendance doctype submittable

* feat: add attendance related fields in Student Leave Application

* feat: update Attendance records on Leave Application submission

* refactor: better error messages and ORM queries

* fix: show present only for leave applications with mark_as_present enabled in attendance reports

* test: Student Leave Application

* fix: filter for attendance records

* fix: codacy issues
2020-07-23 16:40:07 +05:30
Anupam Kumar
04a76285e2 fix: Unable to change link from new lead to existing customer (#22787)
* Unable to change link from new lead to existing customer

* Unable to change link from new lead to existing customer

Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2020-07-23 16:30:56 +05:30
Anupam Kumar
7137b0b670 refactor: shopping cart (#22617)
* refactoring shopping cart settings

* adding column_break in shopping cart settings
2020-07-23 15:58:47 +05:30
Rucha Mahabal
5142fc9365 feat(Education): added form dashboards and refactored custom buttons for better linking (#22727)
* feat: add form dashboards to all forms in Education Module

* feat: Add Course to Programs button in Course DocType

* refactor: custom buttons in Education module forms

* feat: buttons to add topic, article, quiz to their respective parent doctypes

* feat: add charts to form dashboards

* fix: code cleanup
2020-07-23 15:57:27 +05:30
KanchanChauhan
2826fd3c20 feat: Dunning (#22559)
* feat: Dunning

* fix: Replaces spaces with tab

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-07-23 15:45:03 +05:30
Afshan
767ee1cdb8 fix: logic to get other items also other than just 1st one 2020-07-23 15:39:27 +05:30
Anoop
23481cc484 feat: Laboratory Module Enhancements (#22416)
* feat: option to add organism count in descriptive tests
print format to accommodate descriptive test changes
fix: refactoring, clean up wip

* lab test - result based on secondary uom, result format options
lab test print - consider result format options, result legend and worksheet instructions

* feat: option to allow results blank in lab test if configured via lab test template

* fix: rename child doctypes, rename related links

* fix: field display depends on, cleanup - rename fields and variables

* fix: get from encounter popup layout, code cleanup and minor fixes

* fix: sms send dialog bug

* fix: lab test get from encounter html class name typo corrected

* fix: lab test organisms depends on condition

* fix: reorder fields - depends on fields brought together

* fix: PR review feedback, removed : separator, result formatting applied to result UOM

* fix: child table js removed

* fix: internal field require_result_value hidden, secondary uom result field type set to data

* fix: Use ORM methods instead of db.sql, code cleanup, style

* fix: create item price for lab test template if billable, code cleanup

* fix: patch rename doctypes before fields, deleted renamed child doctypes

* fix: secondary uom result calc - warn user if calculation fails

* fix: patch to insert entries into renamed child tables

* fix: codacy issues

* fix: patch duplicate error as items are already migrated in v12 migrate
organisms child table field name updated

* fix: patch a bit lenghty, added comments

* fix: patch

* fix: require_result_value flag marked hidden

* fix: code cleanup-up

* fix: patch - lab_test rename field, lab_test_group_template select option corrected

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-07-23 15:00:54 +05:30
Anurag Mishra
453325fbc9 fix: job applicant fixes (#22448)
* fix(validation): not two job offer should be allowed for single job_applicant

* fix: don't allow to create employee_onboarding without job offer

* fix: server side validation

* fix: requested changes
2020-07-23 12:22:42 +05:30
Deepesh Garg
7ac4ad8410 fix: Error due to comma in Pricing rule name (#22741)
* fix: Error due to commma in Pricing rule name

* fix: Remove print statement

* fix: Tests

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-23 12:12:55 +05:30
Anurag Mishra
9aa0602065 Fix: HR and Payroll Dashboard (#22771)
* Fix: HR and Payroll Dashboard

* fix: requested changes
2020-07-23 12:10:48 +05:30
Chinmay D. Pai
3e503e4404 chore: do not reset homepage through hooks
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-07-23 12:06:19 +05:30
Anurag Mishra
ce5b490f66 feat : Recruitment analytics (#21732)
* feat: recruitment_anlytics

* fix: filters

* feat: added missing column designation

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-23 12:04:58 +05:30
Deepesh Garg
9c49f2d886 feat: Enhancement in subscription (#22263)
* feat: Add supplier in subscription doctype

* fix: Code cleanup

* fix: Add dynamic link in subscription invoices

* fix: Multiple enhanccement in subscription

* feat: Follow calendar months in subscription

* fix: Test Cases and patch

* fix: Patch

* fix: Update patch and add fixes

* fix: Update permission for subscription settings

* fix: Patch and Test

* fix: Add cost center dimension in Subscripiton
2020-07-23 11:11:23 +05:30
Anupam Kumar
a18f2ec23e fix: setting filter for project in kanban board (#22717)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-07-23 11:09:17 +05:30
Marica
43b4b1cb55 chore: Export Buying Dashboard (#22767)
* chore: Export Buying Dashboard

* fix: Use Timespan instead of Between for static filters
2020-07-23 11:08:49 +05:30
Anupam Kumar
4a5fc23d5c Export Project dashboard (#22782) 2020-07-23 11:07:56 +05:30
Marica
03c9cc0921 Merge pull request #22764 from ruchamahabal/change-video-doctype-module
fix: move Video DocType from Core to Utilities module
2020-07-22 21:26:26 +05:30
Marica
f207f48a67 Merge branch 'develop' into change-video-doctype-module 2020-07-22 21:22:39 +05:30
Prssanna Desai
fb89906354 fix: pass date range instead of from date (#22114)
* fix: pass date range instead of from date

* fix: escape inputs

Co-authored-by: Suraj Shetty <13928957+surajshetty3416@users.noreply.github.com>
2020-07-22 20:17:50 +05:30
Marica
3994aa8b06 fix: Same Contact name for different parties at Portal Login (#22715) 2020-07-22 19:49:54 +05:30
gavin
35f726e75c Merge branch 'develop' into dependabot/npm_and_yarn/lodash-4.17.19 2020-07-22 19:34:19 +05:30
Marica
60af68bc48 Merge pull request #22607 from AfshanKhan/club-mr-column
feat: added columns to get complete analysis for material request
2020-07-22 19:31:48 +05:30
Rucha Mahabal
f4a7adbf2e refactor: Education Desk Page 2020-07-22 18:59:04 +05:30
Marica
2ee64ceaff Merge branch 'develop' into club-mr-column 2020-07-22 18:52:10 +05:30
Deepesh Garg
c88a3b4bf9 Merge pull request #22765 from anupamvs/rfq
feat: Provision to make RFQ against Opportunity
2020-07-22 18:28:48 +05:30
rohitwaghchaure
d45ff31ff0 fix: incorrect stock after merging the items (#22526)
* fix: incorrect stock after merging items

* fix: Readability fix

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-22 18:24:01 +05:30
Deepesh Garg
7c50f421e1 fix: Move branch code back to bank account (#22725)
* fix: Move branch code back to bank account

* fix: Patch
2020-07-22 18:21:04 +05:30
Anupam Kumar
3e4b5e5496 fix: item-wise sales history report (#22783) 2020-07-22 18:17:58 +05:30
Anupam Kumar
e519334dfc feat: Export CRM dashboard (#22778)
* feat: Exported CRM dashboard

* feat: Export CRM Dashboard

* fix: adding company in all dashboard and number card
2020-07-22 18:16:57 +05:30
Anupam K
5bd0b93acf fix: cur_frm -> frm 2020-07-22 18:10:57 +05:30
Anupam Kumar
93afbe143b feat: Export Selling Dashboard (#22776)
* feat:Export Stock Dashboard

* Export Selling Dashboard

* Export Selling Dashboard
2020-07-22 18:07:39 +05:30
Deepesh Garg
c7eadfceb0 fix: Multi currency payment reconciliation (#22738)
* fix: Multi currency payment reconciliation

* fix: Hide currency link fields
2020-07-22 17:59:37 +05:30
Prssanna Desai
f098221550 feat: Exported manufacturing dashboard (#22626)
* feat: exported Manufacturing Dashboard

* fix: update use_report_chart fieldname

* fix: add dynamic filter for company in Produced Quantity chart
2020-07-22 16:58:17 +05:30
sahil28297
3d3c922d7f fix(patch): handle duplicate entry error while inserting account (#22745) 2020-07-22 16:42:31 +05:30
Marica
514366654e fix: Serial No Rename does not affect Stock Ledger Entry (#22746)
* Revert "fix: Remove rename related code from Serial No (#22627)"

This reverts commit 1ec2d962db.

* fix: Rename fails on Stock Ledger Entry

* fix: Allow Rename in Serial No
2020-07-22 16:40:24 +05:30
Marica
53646cb360 chore: Export Stock Dashboard (#22768) 2020-07-22 16:17:40 +05:30
Shivam Mishra
f50312b6d2 fix: button sizing (#22777) 2020-07-22 16:17:11 +05:30
Rucha Mahabal
1fddc6d126 chore: Exported Accounts Module Dashboard (#22769)
* chore: Exported Accounts Module Dashboards

* chore: deleted dashboard fixtures for Accounts module
2020-07-22 16:11:06 +05:30
Afshan
6b9acf4476 updated patch to delete auto email reports and moved patch to v13 from v12 2020-07-22 16:00:18 +05:30
Rucha Mahabal
8d28eacb09 chore: Exported Healthcare Module Dashboard (#22775) 2020-07-22 15:57:33 +05:30
Deepesh Garg
d6615248a8 Merge pull request #22762 from DeeMysterio/financial-stat
fix(report): fix alignment in script report that extends financial_statements.js
2020-07-22 14:45:22 +05:30
Anupam K
de417d2774 feat: Provision to make RFQ against Opportunity 2020-07-22 01:05:32 +05:30
Afshan
871889220b style: moved parent warehouse to top section also added a section bre… (#22708)
* style: moved parent warehouse to top section also added a section break for better look

* style: changes display depends on for HTML field

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-21 20:39:00 +05:30
Afshan
66d4b42df0 fix: update set query for warehouse after changing the company (#22632)
* fix: update set query for warehouse after changing the company

* fix: changed set_query to get_query

* fix: variable filter doesn't get updated once set on load hence removed

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-21 19:59:30 +05:30
Rucha Mahabal
ffbd7b4087 fix: move Video DocType from Core to Utilities module 2020-07-21 19:40:18 +05:30
Diksha Jadhav
09b8caf866 fix(report): fix alignment in script report that extends financial_statements.js 2020-07-21 17:35:10 +05:30
Deepesh Garg
9e5aa282ec Merge pull request #22753 from nabinhait/trial-balance-opening-cancelled-entry-fix
fix: Ignore cancelled entries in trial balance opening
2020-07-21 16:42:02 +05:30
Abhishek Balam
a5b83e85c3 feat: dashboard for timesheet (#22750) 2020-07-21 12:54:59 +05:30
Nabin Hait
493b581862 fix: Ignore cancelled entries in trial balance opening 2020-07-21 12:47:16 +05:30
Rucha Mahabal
a13a0608b6 Merge pull request #22743 from frappe/vehicle
fix: Heatmap in Vehicle
2020-07-20 23:52:25 +05:30
Marica
8ec4198af2 Merge branch 'develop' into club-mr-column 2020-07-20 16:07:10 +05:30
Afshan
2b21b7bafa fix: moved custom_make_buttons to PurchaseOrderController to avoid duplication of dropdown options 2020-07-20 16:05:52 +05:30
michellealva
8c7d8ba917 fix: remove tab in code 2020-07-20 13:12:17 +05:30
michellealva
37cd1b8021 fix: Heatmap in Vehicle 2020-07-20 13:04:46 +05:30
Deepesh Garg
04e8af7dca Merge branch 'develop' of https://github.com/frappe/erpnext into loan_patch_and_fixes 2020-07-20 09:53:26 +05:30
Chinmay D. Pai
33bf0574a3 chore: fix get single value call
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-07-19 15:54:11 +05:30
Chinmay D. Pai
5bda28eae6 fix: reset homepage to home after unchecking products page
resets homepage back to home when "home page is products" is unchecked

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-07-19 00:15:40 +05:30
Deepesh Garg
d81372a39c Merge pull request #22734 from deepeshgarg007/custom_cash_flow
fix: Period list api changes for custom cash flow report
2020-07-18 20:35:28 +05:30
Deepesh Garg
07f8e749be fix: Period list api changes for custom cash flow report 2020-07-18 19:47:33 +05:30
gavin
320cde956b Merge branch 'develop' into dependabot/npm_and_yarn/lodash-4.17.19 2020-07-17 17:55:43 +05:30
Deepesh Garg
f6c70bca0a Merge pull request #22615 from aerele/fix_mandatory_error
fix: log type mandatory error while exposing api call to employee checkin.
2020-07-17 17:38:21 +05:30
Deepesh Garg
2fd4aa3051 Merge pull request #22661 from frappe/lead-owner-efficiency
fix: making owner fieldtype to link
2020-07-17 17:36:59 +05:30
rohitwaghchaure
f4db8c1c11 Merge pull request #22724 from rohitwaghchaure/fixed-incorrect-currency-symbol-in-stock-balance-report-develop
fix: currency symbol not showing as per company currency in stock balance report
2020-07-17 16:56:22 +05:30
rohitwaghchaure
b4ef13c686 Merge pull request #22726 from rohitwaghchaure/fixed-actual-qty-showing-as-zero-develop
fix: Stock Reconciliation Invalid Quantity for Batched Item
2020-07-17 16:55:59 +05:30
dependabot[bot]
a96a16cf59 build(deps): bump lodash from 4.17.15 to 4.17.19
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19)

Signed-off-by: dependabot[bot] <support@github.com>
2020-07-17 11:07:58 +00:00
Rucha Mahabal
0eab84dc02 Merge pull request #22722 from Mangesh-Khairnar/fix-maintenance-visit
fix(maintenance-visit): change fieldtype of status to select
2020-07-17 16:35:21 +05:30
Rucha Mahabal
3e6fe38d02 Merge branch 'develop' into fix-maintenance-visit 2020-07-17 16:34:59 +05:30
Rohit Waghchaure
2347e69cb9 fix: for past dated stock reco, batched item showing the current available qty instead of quantity as per posting date 2020-07-17 14:50:49 +05:30
Rohit Waghchaure
848568d023 fix: currency symbol not showing as per company currency in stock balance 2020-07-17 14:49:12 +05:30
rohitwaghchaure
7e56e80057 Merge pull request #22721 from deepeshgarg007/gstr_test
fix: Multiple fixes in GST
2020-07-17 14:34:43 +05:30
Mangesh-Khairnar
9be6787b80 fix(maintenance-visit): change fieldtype of status to select 2020-07-17 12:51:49 +05:30
Rucha Mahabal
c2977cf877 Merge pull request #22710 from marination/issue-list-action
fix: Move Issue List actions under 'Actions' dropdown (ux)
2020-07-17 12:03:51 +05:30
Rucha Mahabal
7e64a1f170 Merge branch 'develop' into issue-list-action 2020-07-17 11:48:23 +05:30
Deepesh Garg
188273564c fix: Multiple fixes in GST 2020-07-17 11:31:15 +05:30
Deepesh Garg
e3e8f5069d Merge pull request #22719 from frappe/delivery_note
fix: Update modified timestamp for Delivery Note Item
2020-07-17 11:29:47 +05:30
michellealva
d02465a68f fix: Update modified timestamp for Delivery Note Item 2020-07-17 10:35:16 +05:30
marination
6319073d81 fix: Move Issue List actions under 'Actions' dropdown 2020-07-16 15:38:51 +05:30
Karthikeyan S
ff6ba25386 fix: remove FE validation for log_type field 2020-07-16 13:33:38 +05:30
Anurag Mishra
ac23ac6a02 fix: validation for additional salary (#22645)
* fix: validation for additional salary

* fix:changes requested

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>

Co-authored-by: Rucha Mahabal <ruchamahabal2@gmail.com>
2020-07-16 13:10:43 +05:30
Rucha Mahabal
aab0ada598 Merge pull request #22682 from Anurag810/expense-claim-payment-fix
fix: 'ExpenseClaim' object has no attribute 'conversion_rate'
2020-07-16 12:58:51 +05:30
Rucha Mahabal
6b3110ed13 Merge branch 'develop' into expense-claim-payment-fix 2020-07-16 12:23:26 +05:30
Anurag Mishra
50902cf30c Fix: Changes Requested 2020-07-16 12:21:46 +05:30
Deepesh Garg
48ba29b647 Merge pull request #22693 from surajshetty3416/fix-financial-statement-print-format
fix: Show total row in print format of financial statement
2020-07-16 11:32:34 +05:30
Suraj Shetty
11b0554ae9 Merge branch 'develop' into fix-financial-statement-print-format 2020-07-16 09:45:26 +05:30
Deepesh Garg
56475999cf Merge pull request #22705 from deepeshgarg007/rcm_country_v13
fix: Update RCM only for indian countries
2020-07-16 00:25:14 +05:30
Deepesh Garg
52c319cfa7 fix: Update RCM only for indian countries 2020-07-16 00:23:58 +05:30
Deepesh Garg
2af43b3df6 fix: linting 2020-07-15 21:54:28 +05:30
Deepesh Garg
49821df0ae Merge pull request #22697 from rohitwaghchaure/fixed-not-able-to-submit-si
fix: not able to submit sales invoice
2020-07-15 21:51:16 +05:30
Deepesh Garg
177bbd8e20 Merge pull request #22701 from deepeshgarg007/gstr3b_cess
fix: Cess amount in GSTR 3B report
2020-07-15 18:20:42 +05:30
Deepesh Garg
0fa4143bac fix: Cess amount in GSTR 3B report 2020-07-15 18:17:38 +05:30
rohitwaghchaure
8ff821970a Merge pull request #22700 from rohitwaghchaure/fixed-incorrect-balance-qty-in-stock-ledger-develop
fix: incorrect balance qty in stock ledger report
2020-07-15 17:25:11 +05:30
Rohit Waghchaure
132376750c fix: incorrect balance qty in stock ledger report 2020-07-15 17:23:17 +05:30
Rohit Waghchaure
e0de0ac617 fix: not able to submit sales invoice 2020-07-15 17:13:43 +05:30
rohitwaghchaure
c53782ebd4 Merge pull request #22694 from rohitwaghchaure/fixed-patch-update-actual-start-end-date
fix: patch update_actual_start_and_end_date_in_wo
2020-07-15 16:43:34 +05:30
Rohit Waghchaure
07cc918d70 fix: patch update_actual_start_and_end_date_in_wo 2020-07-15 16:41:32 +05:30
Suraj Shetty
34617744e1 fix: Show total row in print format of financial statement 2020-07-15 16:37:21 +05:30
rohitwaghchaure
f16bd00463 Merge pull request #22608 from ruchamahabal/fix-sla-ui
fix: allow creating SLA documents even if SLA tracking is not enabled
2020-07-15 15:47:37 +05:30
rohitwaghchaure
30030230bf Merge pull request #22675 from marination/material-request-warehouse
fix: Dont overwrite default warehouse in Material Request
2020-07-15 15:35:38 +05:30
rohitwaghchaure
7c08ff7572 Merge pull request #22596 from marination/exploded-item-rate
fix: Exploded Item Rate in BOM
2020-07-15 14:30:27 +05:30
rohitwaghchaure
453b66460c Merge pull request #22689 from rohitwaghchaure/fixed-double-project-field-in-purchase-receipt
fix: project field added two time in purchase receipt
2020-07-15 14:27:39 +05:30
Rohit Waghchaure
e1b3f16abd fix: project field added two time in purchase receipt 2020-07-15 12:28:19 +05:30
Deepesh Garg
5beac7a0cc fix: Period list fixes in financial statements (#22677) 2020-07-15 12:17:43 +05:30
Anurag Mishra
c1636f8fab fix: conversion rate as 1 if no conversion rate 2020-07-14 18:58:02 +05:30
marination
392f323d2d fix: Dont overwrite default warehouse in Material Request 2020-07-14 17:03:17 +05:30
rohitwaghchaure
eb2a42d9e1 Merge pull request #22589 from deepeshgarg007/rcm_fix
fix: Do not add GST tax amount in grand total for reverse charge invoices
2020-07-14 13:42:48 +05:30
Rucha Mahabal
b81dca8146 Merge pull request #22674 from ruchamahabal/fix-sla-error
fix(Support): TypeError while saving Service Level Agreement
2020-07-14 13:33:19 +05:30
Rucha Mahabal
c4a1b34811 Merge branch 'develop' into fix-sla-error 2020-07-14 13:24:57 +05:30
Marica
82a606d04b fix: Added Project Field in Purchase Receipt for Stock Ledger Tagging (#22666) 2020-07-14 13:16:28 +05:30
Anupam Kumar
c5f14da99c Merge branch 'develop' into lead-owner-efficiency 2020-07-14 12:59:42 +05:30
Rucha Mahabal
88931f0677 fix(Support): TypeError while saving Service Level Agreement 2020-07-14 11:46:11 +05:30
John Veness
72320afb07 Correct help link for Address (#22673) 2020-07-14 10:44:15 +05:30
Rucha Mahabal
282f495fb6 Merge pull request #22672 from bhavesh95863/patch-4
fix: Quotation list view blank if quotation_to field not set as a standard filter
2020-07-14 00:30:15 +05:30
bhavesh95863
eb69859d3e fix: Quotation list view blank if quotation_to field not set as a standard filter 2020-07-13 23:15:31 +05:30
rohitwaghchaure
165d57aa0b Merge pull request #22663 from rohitwaghchaure/fixed-error-report-related-to-task-develop
fix: '>' not supported between instances of 'str' and 'int'
2020-07-13 18:11:50 +05:30
rohitwaghchaure
165eb5a1c3 Merge pull request #22665 from marination/maintenance-schedule
fix: Block Invalid Serial No updates in Maintenance Schedule
2020-07-13 18:11:06 +05:30
rohitwaghchaure
62fe2cac19 Merge pull request #22051 from deepeshgarg007/project-link-for-all-accounts
fix: Project link not set in accounts other than profit and loss accounts
2020-07-13 18:09:41 +05:30
Marica
3f8840cd7a Merge branch 'develop' into maintenance-schedule 2020-07-13 15:24:37 +05:30
Rucha Mahabal
68cc3e4220 Merge branch 'develop' into fix-sla-ui 2020-07-13 14:40:01 +05:30
Anurag Mishra
b9d8ff91a5 Merge branch 'develop' into lead-owner-efficiency 2020-07-13 14:22:34 +05:30
Anurag Mishra
d38c22d85d Merge branch 'develop' into fixed-error-report-related-to-task-develop 2020-07-13 14:21:58 +05:30
rohitwaghchaure
a8fea8df98 Merge pull request #22614 from deepeshgarg007/payment_reco_cost_center_fix
fix: Add default cost center in payment reconciliation JV
2020-07-13 13:44:49 +05:30
marination
1791bc187b fix: Block Invalid Serial No updates in Maintenance Schedule 2020-07-13 12:32:09 +05:30
Rohit Waghchaure
2e8d8b9aeb fix: '>' not supported between instances of 'str' and 'int' 2020-07-13 12:09:10 +05:30
rohitwaghchaure
ac984eb37c Merge branch 'develop' into project-link-for-all-accounts 2020-07-13 11:50:11 +05:30
Afshan
ccf6b5f640 Merge remote-tracking branch 'upstream/develop' into add-age-range-in-stock-ageing
Merge remote-tracking branch 'upstream/develop' into add-age-range-in-stock-ageing
2020-07-13 11:45:33 +05:30
Afshan
e40605d711 Merge remote-tracking branch 'upstream/develop' into club-mr-column
Merge remote-tracking branch 'upstream/develop' into club-mr-column
2020-07-13 11:43:19 +05:30
Deepesh Garg
f5a457c397 Merge branch 'develop' into lead-owner-efficiency 2020-07-13 11:32:09 +05:30
Anupam K
cd445786fe making owner fieldtype to link 2020-07-12 20:03:15 +05:30
Afshan
d058840094 fix: removed fiscal year field from "Request for Quotation" doctype (#22446)
* fix: removed fiscal year field from "Request for Quotation" doctype
2020-07-12 19:19:59 +05:30
Raffael Meyer
193e12f02a fix: download button (#22652) 2020-07-12 17:26:27 +05:30
Afshan
83cd1dcc44 fix: Add project filter in parent task field (#22655)
* fix: Add project filter in parent task field
2020-07-11 21:54:54 +05:30
Deepesh Garg
1ab228b52e Merge pull request #22657 from deepeshgarg007/eway_bill_json_gen
fix: ewaybill json had json dump of json dump, and other related fixes
2020-07-11 21:42:01 +05:30
Sagar Vora
c9b4ba6de8 fix: ewaybill json had json dump of json dump, and other related fixes 2020-07-11 21:29:17 +05:30
Deepesh Garg
62d047bf9b Merge branch 'develop' into payment_reco_cost_center_fix 2020-07-11 21:05:32 +05:30
Deepesh Garg
8cdf33f618 Merge pull request #22635 from deepeshgarg007/item_tax_test
fix(travis): Item Tax template test
2020-07-11 21:04:31 +05:30
Deepesh Garg
a9820cdcf6 fix: Remove every bit of randomness from this test 2020-07-11 19:38:51 +05:30
Deepesh Garg
46bcb46422 fix: Do not use random customers 2020-07-11 18:36:32 +05:30
Deepesh Garg
f15ff5fbfa fix: Test 2020-07-11 13:58:53 +05:30
gavin
afee8ce665 Merge pull request #22651 from alyf-de/bump_pandas
bump: pandas to 1.0.5
2020-07-11 12:40:27 +05:30
Deepesh Garg
87eb2827ef fix: Update tests 2020-07-10 22:45:45 +05:30
rohitwaghchaure
8d435ae0ba Merge pull request #22650 from marination/pricing-rule
fix: Pricing Rule breaks if no item_code
2020-07-10 21:29:24 +05:30
barredterra
23a65d8d01 fix: duplicate tweepy 2020-07-10 17:46:44 +02:00
barredterra
090bf73768 bump pandas to 1.0.5 2020-07-10 17:43:23 +02:00
marination
a6c10b1bc0 fix: Pricing Rule breaks if no item_code 2020-07-10 20:09:58 +05:30
Karthikeyan S
183ebb237e Merge branch 'develop' into fix_mandatory_error 2020-07-10 18:05:18 +05:30
gavin
35a443316c Merge pull request #22613 from netchampfaris/erpnext-install-check
fix: Check if homepage is not setup-wizard
2020-07-10 18:01:30 +05:30
gavin
ecf2bae041 Merge branch 'develop' into erpnext-install-check 2020-07-10 17:42:39 +05:30
Afshan
e9affe3705 merge branch develop 2020-07-10 16:31:40 +05:30
Faris Ansari
70aa3c0b1f fix: Remove explicit exception
Co-authored-by: gavin <gavin18d@gmail.com>
2020-07-10 16:13:21 +05:30
Afshan
0863beec92 created new report named "requested_items_to_order_and_receive" removed report "requested_items_to_order" also wrote a patch for deleting old report from table "tabReport" 2020-07-10 15:14:01 +05:30
Afshan
dca8a1d69d renamed "pending qty" to "qty to recieved" 2020-07-10 14:26:21 +05:30
rohitwaghchaure
bca8483dc8 Merge pull request #22634 from Anurag810/retention-bonus-fixes
fix: default overwrite property and 'company' is not defined
2020-07-10 13:41:40 +05:30
Deepesh Garg
e99091fd4f Merge pull request #22644 from deepeshgarg007/dcc_query
fix: Distributed cost center query
2020-07-10 13:35:34 +05:30
Deepesh Garg
7cb195b304 fix: Distributed cost center query 2020-07-10 13:33:50 +05:30
Marica
eee12fbcb4 fix: Remove redundant variable declaration (#22641) 2020-07-10 12:34:59 +05:30
Afshan
fd28f1071e style: arrangements of filters for reports (#22636) 2020-07-10 11:25:39 +05:30
rohitwaghchaure
3a3787f9e7 fix: Due to decimal issue make purchase receipt button not showing from PO (#22629) 2020-07-09 20:07:40 +05:30
rohitwaghchaure
d14666e419 fix: incorrect delivered qty in Supplier-Wise Sales Analytics (#22631) 2020-07-09 20:07:10 +05:30
Marica
1ec2d962db fix: Remove rename related code from Serial No (#22627) 2020-07-09 20:02:18 +05:30
Deepesh Garg
b74077faf5 fix(travis): Item Tax tempate template test 2020-07-09 19:50:41 +05:30
Anurag Mishra
d7563f0327 fix: default overwroite property n 'company' is not defined 2020-07-09 19:40:18 +05:30
Rohan
cdf55cef80 fix: fetch project-related info in Timesheet (#22423)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-09 11:36:01 +05:30
Rucha Mahabal
3265274854 Merge pull request #22625 from ruchamahabal/fix-encounter-deletion
fix: attribute error while cancelling patient encounter
2020-07-09 11:25:45 +05:30
Rucha Mahabal
6c6c36e780 fix: attribute error while cancelling patient encounter 2020-07-09 11:23:41 +05:30
Afshan
a629c9e1bc style: remove import comment 2020-07-08 19:28:28 +05:30
Afshan
d16d0efde5 feat: added range for age in stock ageing 2020-07-08 19:23:13 +05:30
Rucha Mahabal
45b01d2c02 feat: add medical coding fields to Healthcare DocTypes (#22501)
* feat: add medical coding fields to templates

* feat: fetch medical codes from templates in forms

* fix: codacy issues

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-08 15:39:45 +05:30
Afshan
e0ff0cfcb9 fix: fetch "Employee Leave Policy" from "Employee Grade" if available (#22570)
* fix:fetch "Employee Leave Policy" from "Employee Grade" if available

* fix: checked "Fetch IF Empty" checkbox

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-08 14:40:22 +05:30
Marica
b78dc75456 Merge pull request #22573 from deepeshgarg007/employee_tree
feat: Added all companies option in employee tree to view employee ac…
2020-07-08 14:34:33 +05:30
rohitwaghchaure
0cd39e3a38 Merge pull request #22611 from frappe/hrms-dashboard-fix
fix: HR dashboard number card filter
2020-07-08 14:33:45 +05:30
Marica
9e73fdd866 Merge branch 'develop' into employee_tree 2020-07-08 14:33:10 +05:30
Michelle Alva
5d514fe4df fix: grammatical fixes in module onboarding (#22580)
* fix: grammatical fixes in module onboarding

* fix: more grammatical changes for consistency

* fix: Reorder Stock Onboarding

* fix: update success message

* fix: change order of stock onboarding steps

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-08 14:25:51 +05:30
Marica
3f05a2692e Merge branch 'develop' into employee_tree 2020-07-08 14:04:49 +05:30
rohitwaghchaure
41c9708f99 Merge branch 'develop' into project-link-for-all-accounts 2020-07-08 13:11:37 +05:30
Marica
2039dcfe34 Merge pull request #22605 from crescent28/error-message
fix: Changed error message in the Product Bundle
2020-07-08 13:08:22 +05:30
Marica
0afdafdbce Merge branch 'develop' into error-message 2020-07-08 13:07:01 +05:30
rohitwaghchaure
37d828eda6 Merge pull request #22511 from deepeshgarg007/gl_entry_ignore_validation
fix: Do not ignore validate methods on GL entry submit
2020-07-08 13:06:47 +05:30
rohitwaghchaure
be9f8dc5db Merge pull request #22522 from Anurag810/leave_application_fixes
fix: set half day date None if half day is unchecked
2020-07-08 12:40:30 +05:30
rohitwaghchaure
1fce8b7475 Update leave_application.js 2020-07-08 12:40:01 +05:30
rohitwaghchaure
c7b63bfcaf Merge pull request #22415 from Anurag810/payroll_entry_ux_fix_2.0
fix: Create salary slip button disappears
2020-07-08 12:35:24 +05:30
rohitwaghchaure
e862b3f9ce Update payroll_entry.js 2020-07-08 12:34:15 +05:30
rohitwaghchaure
3431d42d12 Merge pull request #22610 from frappe/lead-creation-from-email
fix: Creating Lead from email
2020-07-08 12:27:18 +05:30
rohitwaghchaure
50f48f5176 Merge pull request #22592 from frappe/number-card-filter-fix
fix: crm dashboard Number card filter fix
2020-07-08 12:25:12 +05:30
rohitwaghchaure
fae570e0a2 Merge pull request #22612 from netchampfaris/fix-item-price-labels
fix: Remove trailing spaces from labels
2020-07-08 12:14:21 +05:30
Faris Ansari
0a06580e2c fix: Update message
Co-authored-by: gavin <gavin18d@gmail.com>
2020-07-08 12:06:28 +05:30
Deepesh Garg
9071a7de82 fix: Add default cost center in payment reconciliation JV 2020-07-08 11:27:25 +05:30
Kaviya Periyasamy
923ed8a741 fix: log type mandatory error while exposing api call to employee checkin 2020-07-08 11:15:04 +05:30
Faris Ansari
f3a6e30e6a fix: Check if homepage is not setup-wizard
The new desk changes sets the default homepage to 'workspace'. To avoid
problem in the future, check if the value is not setup-wizard.
Also throw an exception if the check passes, so it exits with error.
2020-07-08 10:45:55 +05:30
Deepesh Garg
addd1e842b Merge pull request #22568 from ahmadpak/develop
fix: Item Tax Template permissions as per company
2020-07-08 10:08:53 +05:30
Faris Ansari
8c5c74ca06 fix: Remove trailing spaces from labels 2020-07-08 09:20:13 +05:30
Anupam K
6669f7457a hr dashboard number card filter fix 2020-07-08 01:24:53 +05:30
Anupam K
8bc92b90f5 updating lead.py 2020-07-08 00:56:21 +05:30
Rucha Mahabal
3d14011d23 fix: allow creating SLA documents even if SLA tracking is not enabled 2020-07-07 18:30:54 +05:30
Afshan
e3269039d3 feat: added columns to get complete analysis for material request 2020-07-07 18:01:37 +05:30
Marica
4d5d706a4b Merge branch 'develop' into error-message 2020-07-07 16:41:39 +05:30
Mitali Deshpande
f642be9727 fix: Changed error message in the Product Bundle 2020-07-07 16:14:01 +05:30
Marica
750069b6de Merge pull request #22544 from Thunderbottom/whitelist-query
fix: whitelist all query functions for search widget
2020-07-07 15:52:02 +05:30
Marica
f4d0a3e7b0 Merge branch 'develop' into whitelist-query 2020-07-07 15:42:42 +05:30
rohitwaghchaure
546cfdaac2 Merge pull request #22601 from deepeshgarg007/payment_reco_company
fix: Payment reco error in multi-company setup
2020-07-07 15:32:36 +05:30
Deepesh Garg
ca351e3549 fix: Pass company 2020-07-07 14:37:17 +05:30
Marica
8dbdf0902f Merge branch 'develop' into whitelist-query 2020-07-07 14:29:24 +05:30
marination
32f3d24dac fix: Employee benefit application & quality inspection whitelist 2020-07-07 14:31:49 +05:30
Deepesh Garg
e2fdff5777 fix: Payment reco error in multicompany setup 2020-07-07 14:14:07 +05:30
rohitwaghchaure
93732ae21b Merge pull request #22598 from AfshanKhan/fix-cost-center-option-for-expense-claim
fix: cost center should only show option of selected company
2020-07-07 12:24:56 +05:30
Marica
7860d9e699 Merge branch 'develop' into whitelist-query 2020-07-07 11:53:19 +05:30
Afshan
70b3edd502 fix: format according to cordacy 2020-07-07 00:03:45 +05:30
Afshan
3819c0bf28 fix: cost center should only show option of selectedcompany 2020-07-06 23:52:11 +05:30
Marica
d187a6ac48 Merge branch 'develop' into exploded-item-rate 2020-07-06 23:35:37 +05:30
marination
4355d3cf0f fix: Exploded Item Rate 2020-07-06 23:15:08 +05:30
Marica
5f299a08bd fix: General Message in previous doc validation for buying and selling (#22546) 2020-07-06 18:26:56 +05:30
Marica
e3e5fd7e74 fix: Skip Progress and Completed by fields on Task Duplication (#22565) 2020-07-06 18:26:19 +05:30
rohitwaghchaure
39933a4db1 Merge pull request #22441 from nextchamp-saqib/asset-delete-fix
fix: cannot cancel asset and asset movement
2020-07-06 16:13:55 +05:30
Anupam K
8b26ea720b Merge branch 'develop' of https://github.com/frappe/erpnext into number-card-filter-fix 2020-07-06 15:21:53 +05:30
rohitwaghchaure
71e1d2cc79 Merge pull request #22563 from AndyOverLord/patch-6
fix: fetch item price in sales invoice
2020-07-06 14:18:03 +05:30
Deepesh Garg
05738bd29a fix: Remove print statements 2020-07-06 13:40:48 +05:30
rohitwaghchaure
661bc46b81 Merge pull request #22571 from marination/quality-feedback
fix: Quality Feedback and Template (minor)
2020-07-06 13:17:10 +05:30
rohitwaghchaure
1cc1fd4f86 Merge pull request #22576 from marination/party-details
fix: Check for Company before trying to fetch party details
2020-07-06 12:42:16 +05:30
Deepesh Garg
92a03aa5db Merge branch 'develop' of https://github.com/frappe/erpnext into project-link-for-all-accounts 2020-07-06 12:37:28 +05:30
rohitwaghchaure
e5d9ebe32e Merge pull request #22577 from deepeshgarg007/coa_fiscal_year_fix
fix: Consider company fiscal year for getting balance
2020-07-06 12:34:56 +05:30
Anupam K
e88f2bb053 number card filter 2020-07-06 12:34:05 +05:30
Marica
7e198527b9 Merge branch 'develop' into party-details 2020-07-06 11:09:20 +05:30
Saqib
819879dd12 Merge branch 'develop' into asset-delete-fix 2020-07-05 18:38:51 +05:30
Deepesh Garg
be05c4e14a fix: Codacy and minor fixes 2020-07-05 18:16:16 +05:30
Deepesh Garg
4993ab5191 Merge branch 'develop' into develop 2020-07-04 18:28:06 +05:30
rohitwaghchaure
3292e63dee Merge pull request #22569 from rohitwaghchaure/fixed-travis-failing-due-to-loan-issue
fix: travis
2020-07-04 14:14:52 +05:30
Rohit Waghchaure
f0f4f70a76 fix: test case for salary slip 2020-07-04 13:30:22 +05:30
Deepesh Garg
96d40ec9da fix: Consider company fiscal for getting balalnce 2020-07-03 22:59:00 +05:30
marination
e27b996e38 fix: Check for Company before trying to fetch party details 2020-07-03 22:12:00 +05:30
Deepesh Garg
62181707ee Merge pull request #22574 from deepeshgarg007/uae_item_tax_fix
fix: Update item tax only if item code available
2020-07-03 21:25:28 +05:30
Deepesh Garg
04661a4e15 fix: Update item tax only if item code available 2020-07-03 21:23:23 +05:30
Rohit Waghchaure
2cbf598b4b fix: travis 2020-07-03 20:15:18 +05:30
Deepesh Garg
d7adacd3e2 feat: Added all companies option in employee tree to view employee accress all companies 2020-07-03 18:39:51 +05:30
marination
8e62035991 fix: Quality Feedback and Template (minor) 2020-07-03 16:19:55 +05:30
mohammadahmad1990
405b20884b fix: patch 2020-07-03 15:15:27 +05:00
mohammadahmad1990
b2725577b2 Patch file updated 2020-07-03 15:06:36 +05:00
mohammadahmad1990
f933cf80df Patch for Updating item Tax Template Company 2020-07-03 15:04:37 +05:00
mohammadahmad1990
261ecba3d6 Company field removed from Item Taxes Table 2020-07-03 15:04:28 +05:00
mohammadahmad1990
ad3d44d622 fix: Item Tax Template check on company field 2020-07-03 15:02:39 +05:00
mohammadahmad1990
015910b4c4 Company Field Added in Item Tax Template 2020-07-03 15:02:32 +05:00
mohammadahmad1990
728bf0e6dd fix: Item Tax Template 2020-07-03 15:02:16 +05:00
mohammadahmad1990
e39649bc9e fix: Item Tax Template with no validity 2020-07-03 15:02:03 +05:00
mohammadahmad1990
41c0c9f46b fix: Item Tax Template 2020-07-03 15:01:49 +05:00
Deepesh Garg
9ed0384bea fix: Code cleanup 2020-07-03 14:54:41 +05:30
sahil28297
4bff9d8663 Merge pull request #22527 from sahil28297/fix_develop_version
chore: set develop version as 13.x.x
2020-07-03 11:48:48 +05:30
sahil28297
32d7ff7b34 Merge branch 'develop' into fix_develop_version 2020-07-03 11:48:22 +05:30
Deepesh Garg
271ccff77d Merge pull request #22564 from deepeshgarg007/loan_doc_cleanup
fix: Remove loan security field from loan
2020-07-03 09:34:56 +05:30
Andy Zhu
b60abb0158 fix: fetch item price in sales invoice
When create standalone sales invoice, the item price will not be created fetch.
By adding "posting_date" to dict: item_price_args, it will be fetch on building the condition of SQL.
2020-07-03 14:13:15 +12:00
Deepesh Garg
30d9101cbf fix: Remove loan security field from loan 2020-07-02 23:39:12 +05:30
Deepesh Garg
3c004ad798 fix(GST): Do not add tax amount in grand total for reverse charge invoices 2020-07-02 21:18:29 +05:30
Afshan
bfffd9b01b made "Subscription Section", "Auto Repeat" and Hub Publishing" collapsible by default (#22521)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-07-02 15:11:45 +05:30
Khushal Trivedi
49d04f449e fix: no else condition required since we can decalre it by default (#22537)
* fix: removing unnecessary else condition on customer form

* fix: removing unnecessary else condition on customer form

* fix: no else condition required since we can decalre it by default

Co-authored-by: Khushal Trivedi <khushalt5@gmail.com>
2020-07-02 14:51:20 +05:30
Chinmay D. Pai
ed0bb20e6f chore: add query functions to whitelist
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-07-02 12:35:41 +05:30
Chinmay D. Pai
aa1210921b fix: whitelist all query functions for search widget
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-07-01 21:14:32 +05:30
Marica
25b6c5d55a Merge pull request #22512 from AfshanKhan/FR_ISS_204863
feat: Autofill Supplier pop-up when only 1 Supplier in RFQ
2020-07-01 11:56:42 +05:30
Marica
484a681e0c Merge branch 'develop' into FR_ISS_204863 2020-07-01 11:29:03 +05:30
Sahil Khan
b91e9c6aee Merge branch 'version-13-beta-pre-release' into version-13-beta 2020-06-30 18:46:02 +05:30
Sahil Khan
f278425c01 bumped to version 13.0.0-beta.3 2020-06-30 19:06:02 +05:50
Michelle Alva
ec84afa86d 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
2020-06-30 18:04:20 +05:30
Sahil Khan
ad4eb649a2 chore: set develop version as 13.x.x 2020-06-30 17:54:41 +05:30
Anurag Mishra
8f2cb0beb6 fix: set half day date None if half day is unchecked 2020-06-30 12:11:03 +05:30
mergify[bot]
dca65de1b6 fix: Salary deductions report fixes (bp #22397) (#22520)
* feat: added year filters

(cherry picked from commit d0d9b53361)

* Fix: if there is no component

(cherry picked from commit f9ca29cebd)

* fix: test_tax_for_payroll_period

(cherry picked from commit ece9508eb5)

Co-authored-by: Anurag Mishra <mishranaman123@gmail.com>
2020-06-30 11:45:40 +05:30
Nabin Hait
7813cabfd3 chore: Added Change Log 2020-06-30 11:35:41 +05:30
mergify[bot]
7db00dde2d fix: Dashboard label in Projects and Assets module (#22517) (#22518)
(cherry picked from commit fdbd10f193)

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-30 09:33:18 +05:30
Nabin Hait
fdbd10f193 fix: Dashboard label in Projects and Assets module (#22517) 2020-06-30 09:25:17 +05:30
mergify[bot]
e0388a169a fix: manufacturing dashboard grammar (#22510) (#22516)
* fix: manufacturing dashboard grammar

* Update manufacturing.json

(cherry picked from commit 7056cd3782)

Co-authored-by: rohitwaghchaure <rohitw1991@gmail.com>
2020-06-30 08:57:26 +05:30
Marica
7ca8022b8f fix: Set Root as Parent if no parent in new tree view node (#22508) 2020-06-30 08:20:58 +05:30
Marica
0efda4e457 fix: Added Missing Trends Reports to Buying/Selling Desk (#22509)
* fix: Added Missing Trends Reports to Buying/Selling Desk

* fix: Move Reports to Other Reports
2020-06-30 08:20:35 +05:30
rohitwaghchaure
7056cd3782 fix: manufacturing dashboard grammar (#22510)
* fix: manufacturing dashboard grammar

* Update manufacturing.json
2020-06-30 08:20:03 +05:30
Afshan
06f11aba0b feat: Autofill Supplier pop-up when only 1 Supplier in RFQ 2020-06-29 21:39:35 +05:30
Deepesh Garg
8230e41a42 fix: Insert instead of DB insert 2020-06-29 21:20:05 +05:30
Deepesh Garg
d1bf6e0277 fix: Do not ignore validate methods on GLL entry submit 2020-06-29 21:14:03 +05:30
mergify[bot]
9cba6bddde fixes: Payroll module pre relese test fixes (#22500) (#22506)
* fix: salary payment based on payments

* fix: bank remittance report

* fix: Payroll period onboarding

* fix: provident-fund-deductions report

* fix: Considered unmarked days

* fix: onboarding paYroll

* feat: quick entry in payroll entry

(cherry picked from commit c2523e8453)

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-29 20:07:57 +05:30
Anurag Mishra
c2523e8453 fixes: Payroll module pre relese test fixes (#22500)
* fix: salary payment based on payments

* fix: bank remittance report

* fix: Payroll period onboarding

* fix: provident-fund-deductions report

* fix: Considered unmarked days

* fix: onboarding paYroll

* feat: quick entry in payroll entry
2020-06-29 19:54:23 +05:30
Marica
510436931b fix: Added Missing Trends Reports to Buying/Selling Desk (#22502)
* fix: Added Missing Trends Reports to Buying/Selling Desk

* fix: Move Reports to Other Reports
2020-06-29 19:52:23 +05:30
mergify[bot]
c312b3af13 fix: job offer validation fix (#22504) (#22505)
(cherry picked from commit 343651fc39)

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-29 19:10:57 +05:30
mergify[bot]
47a3524a7d fix: Stock Onboarding typo and reorder (#22499) (#22503)
(cherry picked from commit 8732b8caf6)

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-29 18:24:25 +05:30
Anurag Mishra
343651fc39 fix: job offer validation fix (#22504) 2020-06-29 18:23:22 +05:30
Marica
3e93a2f67f fix: Set Root as Parent if no parent in new tree view node (#22497)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-29 17:39:26 +05:30
Marica
8732b8caf6 fix: Stock Onboarding typo and reorder (#22499) 2020-06-29 17:38:42 +05:30
Anurag Mishra
ba5f571b0d fix: take parent cost center for child if no cost center at child (#22496) 2020-06-29 17:35:27 +05:30
Saqib
41034f760d Merge branch 'develop' into asset-delete-fix 2020-06-29 10:54:01 +05:30
Saqib Ansari
cc42aa1750 fix: cancel asset movement on asset cancellation 2020-06-29 10:33:24 +05:30
Mangesh-Khairnar
73edba0e10 fix: handle nonetype issue for packed items (#22493) 2020-06-29 08:54:53 +05:30
Deepesh Garg
a74cffe7a4 Merge pull request #21047 from vishdha/feat_taxjar
feat(ERPNext Integrations): Taxjar Integration Added
2020-06-28 23:01:37 +05:30
Deepesh Garg
23c64c0b3a Merge pull request #22487 from frappe/mergify/bp/version-13-beta-pre-release/pr-21690
fix(regional): DATEV report (bp #21690)
2020-06-28 21:38:58 +05:30
Deepesh Garg
50e6e47e66 fix: Patch 2020-06-28 21:32:08 +05:30
rohitwaghchaure
6acde987c5 Merge pull request #22488 from rohitwaghchaure/fixed-letter-head-not-found
fix: letter head not found in opening invoice creation tool
2020-06-28 20:02:29 +05:30
Deepesh Garg
eca2c1cd93 fix: patch 2020-06-28 18:53:55 +05:30
Rucha Mahabal
67608c3179 Merge pull request #22476 from ruchamahabal/fix-custom-status-v13
fix: handle custom statuses for the pause SLA configuration
2020-06-28 17:32:25 +05:30
Rohit Waghchaure
04cf2e029f fix: letter head not found in opening invoice creation tool 2020-06-28 17:08:12 +05:30
barredterra
7df5de9468 fix: hide transaction-specific for master data
(cherry picked from commit 30d194d8a7)
2020-06-28 11:29:48 +00:00
barredterra
8f7d214853 fix: customer and supplier data
(cherry picked from commit 53445aa25a)
2020-06-28 11:29:48 +00:00
barredterra
6adb617ede fix: truncate account names to max length
(cherry picked from commit 2976831560)
2020-06-28 11:29:48 +00:00
barredterra
3efe0d0e83 refactor: query meta data only once
(cherry picked from commit 55c048f56c)
2020-06-28 11:29:47 +00:00
barredterra
cf53305abb fix(report view): explicitly set column width for
(cherry picked from commit 7a7add5001)
2020-06-28 11:29:47 +00:00
Deepesh Garg
4c230ed4b0 Merge pull request #21690 from alyf-de/refactor_datev
fix(regional): DATEV report
2020-06-28 16:55:18 +05:30
Deepesh Garg
c8b11143a1 Merge pull request #22445 from Alchez/dev-job-offer-list-view
fix: setup status indicators for Job Offer and Job Applicant (develop)
2020-06-28 16:49:28 +05:30
rohitwaghchaure
e4d296bb1c Merge pull request #22413 from Anurag810/salary-structure-help-fix
fix: 'Condition & Formula Help' appears twice
2020-06-28 16:29:20 +05:30
rohitwaghchaure
7e3f10e5bc Merge pull request #22397 from Anurag810/salary_deductions_report_fixes
fix: Salary deductions report fixes
2020-06-28 16:27:37 +05:30
rohitwaghchaure
81af2235f4 Merge branch 'develop' into dev-job-offer-list-view 2020-06-28 15:25:32 +05:30
rohitwaghchaure
41cd4fc788 Merge pull request #22478 from michellealva/cost_center_filter
fix: apply filters in all transactions
2020-06-28 15:10:13 +05:30
rohitwaghchaure
4cc2e70348 Merge pull request #22454 from wojosc/patch-10
refactor: update customs_tariff_number.json
2020-06-28 15:07:19 +05:30
rohitwaghchaure
69aa2e400a Merge pull request #22412 from frappe/mergify/bp/version-13-beta-pre-release/pr-22223
feat: Accounting entries for service item in Purchase receipt (bp #22223)
2020-06-28 11:26:21 +05:30
rohitwaghchaure
cc2d7f3e7f Merge pull request #22450 from marination/serial-no-rename
fix: Disable Renaming in Serial No
2020-06-28 11:15:35 +05:30
rohitwaghchaure
d5736711ce fix: indentation 2020-06-28 11:12:20 +05:30
rohitwaghchaure
2f4971b5a6 Merge pull request #22461 from britlog/develop
fix: product_info
2020-06-28 11:05:26 +05:30
Deepesh Garg
1d8b13c943 Merge pull request #22483 from deepeshgarg007/loan_security_shorttfall_fixes
fix: Loan security shortfall fixes
2020-06-27 18:57:14 +05:30
Deepesh Garg
a4b9fc74aa Merge branch 'develop' into feat_taxjar 2020-06-27 18:51:48 +05:30
Deepesh Garg
589364856c fix: Syntax Error 2020-06-27 18:44:36 +05:30
Deepesh Garg
72ba8f1203 Merge pull request #22481 from frappe/michellealva-patch-7
fix: change button label in issue
2020-06-27 18:01:45 +05:30
Michelle Alva
2f37c447dd fix: change button label in issue
Changed the label of the button from "Make" to "Create" so that it is consistent with other DocTypes.

Before:
2020-06-27 09:27:45 +05:30
Marica
92bea1326a Merge branch 'develop' into serial-no-rename 2020-06-26 20:34:09 +05:30
Marica
14ad9e789d Merge pull request #22477 from michellealva/label-fix2
fix: remove redundant label in salary slip
2020-06-26 20:32:23 +05:30
michellealva
08f842d12e fix: apply filters in all transactions 2020-06-26 19:56:00 +05:30
michellealva
e9cec2ff76 fix: remove redundant label in salary slip 2020-06-26 19:39:54 +05:30
britlog
0086a3727f fix: product_info 2020-06-26 15:30:27 +02:00
Rucha Mahabal
5dd4bcb229 fix: set total hold time only if hold configurations are enabled 2020-06-26 18:22:24 +05:30
Rucha Mahabal
28c1e8ef77 fix: handle hold time for custom statuses 2020-06-26 18:21:53 +05:30
rohitwaghchaure
275ebefdd2 Merge pull request #22468 from frappe/shopping-cart-settings
fix: enable show_configure_button when shopping cart is enabled
2020-06-26 17:20:35 +05:30
mergify[bot]
fce39f706d fix: Send email to credit controllers to increase credit limit (#22473)
(cherry picked from commit 0ff5af222a)

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-26 16:21:56 +05:30
rohitwaghchaure
b2ae6d9961 Merge pull request #22467 from nabinhait/credit_limit_email
fix: Send email to credit controllers to increase credit limit
2020-06-26 15:49:25 +05:30
rohitwaghchaure
13e8c32172 Update shopping_cart_settings.js 2020-06-26 15:07:32 +05:30
rohitwaghchaure
b47218f7b3 Merge pull request #22470 from marination/production-plan-test
fix: Sales Order to MR test failing
2020-06-26 15:05:53 +05:30
marination
0f056ec51d fix: Sales Order to MR test failing 2020-06-26 14:12:11 +05:30
Wolfram Schmidt
a97715e464 Update customs_tariff_number.json 2020-06-26 10:24:48 +02:00
Anupam K
0ce70bd68f Merge branch 'develop' of https://github.com/frappe/erpnext into shopping-cart-settings 2020-06-26 12:47:37 +05:30
Nabin Hait
0ff5af222a fix: Send email to credit controllers to increase credit limit 2020-06-26 12:46:42 +05:30
Anupam K
27d27c924d enable show_configure_button when shopping cart is enabled 2020-06-26 12:46:40 +05:30
rohitwaghchaure
cc7e1b0ec5 Merge pull request #22400 from AfshanKhan/FR_ISS_204290
fix: removed condition that considered "Standard working hours" while…
2020-06-25 23:23:33 +05:30
rohitwaghchaure
2eb452f3bb Merge pull request #22458 from scmmishra/fix-email-digest-so-company
fix: add company filter in email digest
2020-06-25 23:18:38 +05:30
rohitwaghchaure
6cf568d094 Merge pull request #22462 from marination/production-plan-ux
fix: Handling Empty tables in Production Plan
2020-06-25 23:15:28 +05:30
rohitwaghchaure
5414e2c306 Merge pull request #22463 from frappe/michellealva-fiscal_year
fix: grammatical fix on error message
2020-06-25 23:11:36 +05:30
Michelle Alva
978722621f fix: grammatical fix on error message
Before:

Fiscal Year: 2020 does not exists

After:

Fiscal Year 2020 Does Not Exist
2020-06-25 22:35:33 +05:30
marination
c8f590bc8f fix: Handling Empty tables in Production Plan 2020-06-25 21:30:45 +05:30
Shivam Mishra
5374e7ae1f fix: add company filter in email digest 2020-06-25 19:41:42 +05:30
Wolfram Schmidt
7f2a3e8c7d Update customs_tariff_number.json
Main information of tariff numbers are the number. A description is more or less double information as this is mostly the number. Thus a description should not be mandetory.
2020-06-25 13:56:32 +02:00
marination
f311f52f6e fix: Disable Renaming in Serial No 2020-06-25 16:02:18 +05:30
Saqib
40847aeac3 fix: cannot cancel assets with repair pending (#22440)
* fix: cannot cancel assets with repair pending

* fix: message

* Update asset.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-25 15:43:31 +05:30
Deepesh Garg
4c726b25ee fix: Add view ledger button for cancelled docs (#22433)
* fix: Add view ledger button for cancelled docs

* fix: Add moddified to date in Stock Ledger
2020-06-25 15:37:04 +05:30
Deepesh Garg
8a55ec1580 fix: Add view ledger button for cancelled docs (#22432)
* fix: Add view ledger button for cancelled docs

* fix: Add moddified to date in Stock Ledger
2020-06-25 15:34:01 +05:30
Shivam Mishra
42fd2312b8 style: add styles in style block 2020-06-25 15:28:58 +05:30
Shivam Mishra
3bbbd1b606 feat: added search to support page 2020-06-25 15:28:58 +05:30
Sun Howwrongbum
ecff8f9582 fix: UnboundLocalError when setting product_info (#22436)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-25 14:25:53 +05:30
Afshan
a462e29172 Merge branch 'develop' into FR_ISS_204290 2020-06-25 14:16:35 +05:30
Rohan Bansal
e7c91917aa fix: setup status indicators for Job Offer and Job Applicant 2020-06-25 13:40:18 +05:30
Rucha Mahabal
7b3700b3ec fix: handle custom statuses for the pause SLA configuration (#22349)
* fix: handle hold time for custom statuses

* fix: set total hold time only if hold configurations are enabled

Co-authored-by: Himanshu <himanshuwarekar@yahoo.com>
2020-06-25 13:29:14 +05:30
Saqib Ansari
acdaf2b001 fiix: cannot cancel asset and asset movement 2020-06-25 12:43:25 +05:30
Shivam Mishra
53346217d2 Revert "feat: added search to support page (#22376)" (#22431)
This reverts commit 3ab8d865dd.
2020-06-25 11:12:09 +05:30
Deepesh Garg
fdc276bb0e Merge pull request #22434 from frappe/michellealva-patch-4-1
fix: change error messages in RFQ
2020-06-25 09:17:36 +05:30
Michelle Alva
da0385cd39 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.
2020-06-25 08:24:01 +05:30
Marica
ba334cbfa5 Merge pull request #22430 from frappe/clarkejj-patch-1
fix: stock_ageing.py report SyntaxError: can’t assign to function call
2020-06-24 21:24:44 +05:30
John Clarke
6fd1068af3 Update stock_ageing.py 2020-06-24 07:31:21 -06:00
Deepesh Garg
8d8ce63be7 Merge pull request #22425 from deepeshgarg007/update_jv_account_timestamp_v13
fix: Update journal entry account timestamp
2020-06-24 18:48:36 +05:30
Deepesh Garg
be9a8e1a14 Resolve merge conflicts 2020-06-24 18:47:58 +05:30
Deepesh Garg
faa0c5624e fix: Update journal entry account timestamp 2020-06-24 18:45:16 +05:30
Deepesh Garg
06a37660ae Merge pull request #22421 from deepeshgarg007/update_jv_account_timestamp
fix: Update journal entry accounts times stamp
2020-06-24 17:56:51 +05:30
Deepesh Garg
2abd66da9d fix: Update journal entry account timesstamp 2020-06-24 17:49:50 +05:30
Anurag Mishra
2f867ca357 Merge branch 'develop' into salary-structure-help-fix 2020-06-24 17:41:32 +05:30
Anupam Kumar
10c7faf090 updating education report modified time (#22418)
Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-24 17:34:52 +05:30
vishdha
d3ec1c1d89 feat: Taxjar Integration Added 2020-06-24 16:37:21 +05:30
Shivam Mishra
3ab8d865dd feat: added search to support page (#22376)
* feat: added search to support page

* style: add styles in style block
2020-06-24 15:50:06 +05:30
Anurag Mishra
020c6e9175 fix: Create salary slip button disappears 2020-06-24 15:22:45 +05:30
Afshan
a07a548622 fix: removed "standard working hours" also fixed test cases 2020-06-24 13:07:59 +05:30
Anurag Mishra
a81c54f23a fix: 'Condition & Formula Help' appears twice 2020-06-24 11:51:06 +05:30
Deepesh Garg
51ce1e1d4e fix: Test Cases
(cherry picked from commit ded3ab1cd7)
2020-06-24 05:38:33 +00:00
Deepesh Garg
12f1f8e111 fix: Move check from Stock Settings to Company Master
(cherry picked from commit 53d5d16abb)
2020-06-24 05:38:33 +00:00
Deepesh Garg
6e2ca779c5 feat: Accounting entries for service item in Purchase receipt
(cherry picked from commit c258ac82c5)
2020-06-24 05:38:32 +00:00
rohitwaghchaure
a50c95c959 Merge pull request #22223 from deepeshgarg007/grn_posting
feat: Accounting entries for service item in Purchase receipt
2020-06-24 11:00:19 +05:30
rohitwaghchaure
c4382abc03 Merge pull request #22410 from kennethsequeira/item_report_date
fix: add error prompt for wrong date range
2020-06-24 10:49:21 +05:30
rohitwaghchaure
d63c59ced4 Merge branch 'develop' into grn_posting 2020-06-24 10:23:23 +05:30
Nabin Hait
b90194970d fix: Merge conflict 2020-06-23 20:01:24 +05:30
Marica
7af7bb8311 fix: Insert Supplier Group via List View (#22403) 2020-06-23 17:51:02 +05:30
Rohan
9c25101d9b feat: add ability for a contract to be authorised internally (#22095)
* Added ability for a contract to be signed by a company user before being sent out

* feat: contract signed by stays even after reload (#402)

* format: use new JSON format

Co-authored-by: Neil Lasrado <neil@digithinkit.com>
Co-authored-by: nehasacher143 <45919049+nehasacher143@users.noreply.github.com>
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-23 17:39:37 +05:30
Kenneth Sequeira
f5b7bd9dcb fix: add error prompt for wrong date range 2020-06-23 16:55:35 +05:30
Anurag Mishra
ecbfda7d6a fix: typo in template(#22401) 2020-06-23 14:33:49 +05:30
Anurag Mishra
ece9508eb5 fix: test_tax_for_payroll_period 2020-06-23 14:25:43 +05:30
Afshan
4e37d25374 fix: removed condition that considered "Standard working hours" while creating "timesheet" as it was setting wrong time #20848 2020-06-23 14:10:40 +05:30
Anurag Mishra
f9ca29cebd Fix: if there is no component 2020-06-23 11:57:02 +05:30
Anurag Mishra
d0d9b53361 feat: added year filters 2020-06-23 11:49:57 +05:30
Anoop
5e16ca0326 fix: Login page doesn't load for new sites (#22388)
* fix: Login page doesn't load for new sites

Login page broken as active domains are not set for new sites

* Update footer_powered.html

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-23 11:11:13 +05:30
Anurag Mishra
101d15f2f8 fix: not working without from_amount and percentage_deduction (#22380) 2020-06-23 10:45:54 +05:30
Anurag Mishra
36560c8406 fix: staffing Plan validation (#22379) 2020-06-23 10:44:33 +05:30
mergify[bot]
ca8894b0fc fix: alternative item not working for subcontract (#22386)
(cherry picked from commit 171699537c)

Co-authored-by: Rohit Waghchaure <rohitw1991@gmail.com>
2020-06-23 10:42:32 +05:30
Marica
3dee5273d6 fix: Update Packed Items via Update Items in SO (#22392) 2020-06-23 10:33:47 +05:30
Marica
bd5c8573de fix: Unable to create batched Item (#22393) 2020-06-23 10:32:51 +05:30
Deepesh Garg
7cc1cf36ca feat: More controlled deferred revenue booking (#21671)
* feat: More controller deferred revenue booking

* fix: Query for last gl entry

* fix: Accounting Dimension for Deferred entries

* fix: Deferred revenue booking against paid invoices

* fix: Don not update outstanding on Deferred Entry submission

* fix: Naming fixes

* feat: Deferred revenue/expense booking based on months

* fix: Test case for fix monthly deferred revenue booking

* fix: Typo

* fix: Patch to update settings

* fix: Test case to book deferred expense via journal entry

* fix: Update field for better UX

* fix: Codacy

* fix: Change select field to checkbox
2020-06-23 09:57:56 +05:30
Marica
b073544e06 Merge branch 'develop' into fix-payment-entry-wrong-bank-account-fetch-develop 2020-06-23 02:24:35 +05:30
Raffael Meyer
c3e91be48e Merge branch 'develop' into refactor_datev 2020-06-22 19:53:47 +02:00
Deepesh Garg
3c25308b27 Merge pull request #21997 from totolouis/patch-1
fix: translation from HTML code to apostrophe
2020-06-22 21:43:38 +05:30
Suraj Shetty
c753502412 Merge branch 'develop' into patch-1 2020-06-22 21:41:31 +05:30
rohitwaghchaure
b658a010f1 Merge pull request #22383 from frappe/mergify/bp/develop/pr-22330
fix(pricing_rule): apply_on logic dont get cleanup (bp #22330)
2020-06-22 21:08:55 +05:30
Deepesh Garg
49f51f4132 Merge pull request #22346 from AfshanKhan/ISS_20_21_02455
fix: set row_id by default as previous row for On Previous Row Amount and On Previous Row Total
2020-06-22 20:53:23 +05:30
Rohit Waghchaure
aaed3b988f added validation and clear fields for Apply Rule On Other
(cherry picked from commit ebbbc85fc0)
2020-06-22 14:52:30 +00:00
Poranut Chollavorn
e3973a4730 fix(pricing_rule): apply_on logic dont get cleanup
(cherry picked from commit acf399c4e0)
2020-06-22 14:52:29 +00:00
Deepesh Garg
5dc175f068 fix(Immutable Ledger): Item wise backdated stock entry posting (#22366)
* fix(Immutable Ledger): Item wise backdated stock entry posting

* fix: Remove fiscal year query

* fix: Update message string
2020-06-22 19:05:39 +05:30
Deepesh Garg
c914d1b8e8 Merge branch 'develop' into ISS_20_21_02455 2020-06-22 18:46:58 +05:30
Anupam Kumar
71da90034d fix: resetting lost reason in opportunity and quotation (#22378) 2020-06-22 18:27:14 +05:30
Deepesh Garg
be4fc1a78e fix(UX): Notify user of expense account change in Purchase Invoice (#22193) 2020-06-22 18:03:11 +05:30
Anurag Mishra
7672166ce3 fix: Wrong filter (#22375) 2020-06-22 17:22:05 +05:30
Anurag Mishra
0093b3b27c fix: label (#22377) 2020-06-22 17:21:01 +05:30
Deepesh Garg
0252cb6789 Merge pull request #22374 from deepeshgarg007/employee_advance_cancel
fix: Unable to cancel employee advance
2020-06-22 14:55:21 +05:30
Deepesh Garg
62897d3878 fix: Unable to cancel employee advance 2020-06-22 14:54:01 +05:30
Anurag Mishra
8ffb9f852f fix: patch check_is_income_tax_component (#22371) 2020-06-22 12:17:29 +05:30
rohitwaghchaure
39a7516252 Merge pull request #22241 from deepeshgarg007/cost_center_fix
fix: Minor fixes in cost center
2020-06-22 11:21:14 +05:30
Alvaro
43be163b32 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>
2020-06-22 11:06:12 +05:30
Deepesh Garg
d79e8e82cb fix: Test cases 2020-06-22 10:00:12 +05:30
Deepesh Garg
edd4aa6faa Merge branch 'develop' of https://github.com/frappe/erpnext into project-link-for-all-accounts 2020-06-22 09:59:39 +05:30
Deepesh Garg
ded3ab1cd7 fix: Test Cases 2020-06-22 09:40:15 +05:30
Deepesh Garg
7f94765d02 Merge pull request #22350 from AfshanKhan/ISS_20_21_02392
fix: Skipping total row for tree-view reports
2020-06-21 19:25:59 +05:30
Afshan
84c6973742 fix: adding json for checked add total row 2020-06-21 17:48:44 +05:30
Deepesh Garg
95a497cffb Merge branch 'develop' of https://github.com/frappe/erpnext into cost_center_fix 2020-06-20 12:33:41 +05:30
Deepesh Garg
bef80b7981 fix: Test 2020-06-20 12:32:30 +05:30
Deepesh Garg
dee1c92df1 Merge pull request #22351 from kennethsequeira/purchase_inv_due
fix: status error in purchase invoice
2020-06-20 11:58:19 +05:30
Deepesh Garg
c70eb30e7e Merge branch 'develop' of https://github.com/frappe/erpnext into grn_posting 2020-06-20 11:56:25 +05:30
Deepesh Garg
53d5d16abb fix: Move check from Stock Settings to Company Master 2020-06-20 11:55:56 +05:30
Revant Nandgaonkar
d39c97e281 fix: trigger docker build on release (#22353) 2020-06-19 23:56:53 +05:30
Afshan
3fbe6e9e4b fix: test case 2020-06-19 22:51:52 +05:30
Kenneth Sequeira
b7c8037e9a fix codacy 2020-06-19 22:33:51 +05:30
Kenneth Sequeira
b4c3e2243e Merge branch 'purchase_inv_due' of https://github.com/kennethsequeira/erpnext into purchase_inv_due
merge
2020-06-19 22:30:23 +05:30
Kenneth Sequeira
802c300218 Revert "fix: rogue s/codacy"
This reverts commit 2bf8d60d7e.
2020-06-19 22:29:55 +05:30
Kenneth Sequeira
2bf8d60d7e fix: rogue s/codacy 2020-06-19 22:25:55 +05:30
Anurag Mishra
289c82243f feat: New Payroll module (#21990)
* feat: Moved Document to Payroll Module

* feat: Moved Reports to Payroll Module

* feat: Moved Print fromat With Patch

* feat: Moved Notifiction to Payroll Module and patches

* feat: added dashboard and desk page to Payroll

* feat: Payroll Dashboard

* feat: Module onboarding

* feat: Income tax Deductions Report

* feat: Ecs Checklist Report

* feat: Provident Fund Report

* feat: Professional Fund report and commonified Code

* feat: Total Payments Based On Payment Mode Report

* fix: refactor and added chart Total Payments Based On Payment Mode

* feat: Payroll Settings

* fix: Bank remittance Report

* feat(Payroll based on): Considered unmarked days

* feat: Added Help for condition an formula in Salary structure

* fix: requested changes

* fix: rename report Ecs checklist to salary_payments_via_ecs

* fix: renamed report report/total_payments_based_on_payment_mode

* fix: added role via setup.py for regional report

* feat: added All reports to desk page

* fix: frappe.reload doc in all patches

* fix: codacy

* fix: frappe.reload_doctype for patches

* patch: is_income_tax_component and component_type for salary component

* fix: uncommented code

* test: fixture

* fix: test

* test: test_payment_days_based_on_attendance
2020-06-19 19:17:57 +05:30
Marica
47a4567301 Merge branch 'develop' into purchase_inv_due 2020-06-19 18:44:53 +05:30
Kenneth Sequeira
02f3e045ab fix: due date filter in purchase invoice 2020-06-19 18:22:04 +05:30
Afshan
65f00cea15 fix: Skipping* 2020-06-19 18:19:06 +05:30
Afshan
fbd66574ad Skiping total row for tree-view reports 2020-06-19 18:17:01 +05:30
Deepesh Garg
9819b96141 Merge pull request #22348 from frappe/revert-21742-payment-remark-fix
Revert "fix: update remark on submitting payment entry"
2020-06-19 17:30:21 +05:30
Deepesh Garg
aea450c36a Revert "fix: update remark on submitting payment entry" 2020-06-19 17:29:49 +05:30
Afshan
aca2ca5982 style: formate according to Codacy/PR Quality Review 2020-06-19 16:22:41 +05:30
Marica
383807f72e feat: Selling Desk, Dashboard and Onboarding (#22055)
* feat: Selling Desk, Dashboard and Onboarding

* chore: Selling Onboarding and fixes in Other onboardings

* chore: Dashboard and Number card Fixtures

* fix: Escape filters and Reposition Accounts Dashboard shortcut.

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-19 15:33:21 +05:30
Afshan
0fe14ce94e style: formate according to Codacy/PR Quality Review 2020-06-19 15:10:15 +05:30
Afshan
6f7652f425 fix: set row_id by default as previous row for On Previous Row Amount and On Previous Row Total 2020-06-19 14:36:56 +05:30
rohitwaghchaure
22d49726d1 Merge pull request #22341 from deepeshgarg007/bank_reco_patch
chore: Delete Bank Reco doctype
2020-06-19 13:10:20 +05:30
Afshan
7a45c8bc28 fix: replaced "row_id" to "idx" as "row_id" was not available in variable "tax", also replaced "-1" by "-2" as "idx" starts with 0 rather than 1 2020-06-19 12:37:50 +05:30
Deepesh Garg
1b30ca6a36 fix: Codacy 2020-06-19 12:12:08 +05:30
Deepesh Garg
163a569715 chore: Delete Bank Reco doctype 2020-06-19 12:03:36 +05:30
Deepesh Garg
3c63f5b76b Merge branch 'develop' of https://github.com/frappe/erpnext into project-link-for-all-accounts 2020-06-19 11:41:21 +05:30
Deepesh Garg
23cb5e1869 Merge pull request #22312 from frappe/email-digest-html
fix: Email digest html view fix
2020-06-19 11:36:02 +05:30
Rucha Mahabal
428235c478 fix: revert issue metrics patch (#22331) 2020-06-19 11:15:59 +05:30
Afshan
a9cdc7b696 style: moved project from reference section to accounting dimensions section (#22309) 2020-06-19 11:11:33 +05:30
rohitwaghchaure
a504bdb448 Merge pull request #22329 from scmmishra/fix-grammar-footer
refactor: show service instead of services
2020-06-19 10:59:52 +05:30
rohitwaghchaure
ec2dec03cc Merge pull request #22334 from kennethsequeira/item-sale-hist
fix: Customer Group label in Item-wise Sales History report
2020-06-19 10:53:09 +05:30
Kenneth Sequeira
766f978858 fix: Customer Group label in Itemwise Sales report 2020-06-18 23:23:54 +05:30
rohitwaghchaure
9d25826bbe Merge pull request #22249 from marination/rfq-multi-uom
feat: Multi UOM support in Request for Quotation
2020-06-18 20:48:13 +05:30
Shivam Mishra
e892448733 Merge branch 'develop' into fix-grammar-footer 2020-06-18 14:21:03 +00:00
Shivam Mishra
25702a1c55 refactor: show service instead of services 2020-06-18 19:49:46 +05:30
Anurag Mishra
d9b2d635d8 feat: added Expense approver for employee and validation (#22244)
* feat: added Expense approver for employee nad validation

* fix: requested changes
2020-06-18 19:13:01 +05:30
Prssanna Desai
82ddef58c0 feat: date filter for fiscal year (#21880)
* feat: date filter for fiscal year

* fix: rename fieldtypes to valid_for_fieldtypes

* Update utils.py

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-18 18:18:41 +05:30
Anupam Kumar
77673e27e0 enable Lead create by email (#22314)
Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-18 17:46:20 +05:30
Deepesh Garg
bdb40553c3 Merge pull request #22323 from deepeshgarg007/item_tax_map
fix: Do not copy Item Tax template from SO to PO
2020-06-18 17:01:53 +05:30
Deepesh Garg
1ba7708b60 fix: Do not copy Item Tax template from SO to PO 2020-06-18 16:45:16 +05:30
rohitwaghchaure
b5af614824 Merge pull request #22219 from Anurag810/quality_procedure_fix
fix: Child is shown in Parent process if added from tree view
2020-06-18 15:51:00 +05:30
rohitwaghchaure
853fce8c7e Merge branch 'develop' into rfq-multi-uom 2020-06-18 15:49:53 +05:30
rohitwaghchaure
b7a2f8731f Merge pull request #22048 from nextchamp-saqib/update-items-permission-fix
fix: submitted sales order can be updated with no permission
2020-06-18 15:47:12 +05:30
rohitwaghchaure
f1cbe89496 Merge pull request #22086 from deepeshgarg007/rcm_develop
fix(India): Reverse charge mechanism for GST
2020-06-18 15:46:42 +05:30
Rucha Mahabal
a529d71ca0 fix(patch): add patch for setting issue metrics (#22296)
* patch: set issue metrics in Issue documents

* fix: commit after every 100 records
2020-06-18 15:38:43 +05:30
Shivam Mishra
34d2bfbb3e refactor: handle exceptions when updating addresses (#22307)
* refactor: handle exceptions when updating addresses

* refactor: fold common statements in a loop
2020-06-18 15:28:55 +05:30
Marica
d6906dccfe Merge branch 'develop' into rfq-multi-uom 2020-06-18 14:44:46 +05:30
marination
95e9a4ef2c fix: Patch simplification
- Also, apply patch to all docs
2020-06-18 14:46:42 +05:30
Anupam K
bd449c8d07 email digest html fix 2020-06-18 14:20:22 +05:30
Rohit Waghchaure
8d5380a2f0 fix: incorrect variable used 2020-06-18 14:06:31 +05:30
Chinmay Pai
96100e9507 chore: add standard queries hooks to whitelist (#21939)
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>
2020-06-18 11:58:54 +05:30
Deepesh Garg
8db89bfab6 Merge pull request #22210 from abhishekbalam/customer_acq_revenue_fix
fix: Revenue and Customer Count only in date range in Customer Acq. Report
2020-06-18 11:55:09 +05:30
marination
24ee482d8f fix: Codacy 2020-06-18 11:49:15 +05:30
Chinmay Pai
755e7c812a chore: update travis url for docker build action (#22274)
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-06-18 10:05:53 +05:30
Afshan
ea78b24035 style: subtitle to be displayed if provided else empty (#22298)
* added: /support

* refactor code and implemented fail checks

* removed unused imports

* changed filter from from title to name

* refactor code to move context inside main

* removed unused variable

* added: /support

* refactor code and implemented fail checks

* removed unused imports

* changed filter from from title to name

* refactor code to move context inside main

* removed unused variable

* refactor: renamed set to get

* style: subtitle to be displyed if provided else empty

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-18 09:49:35 +05:30
P-Froggy
c3b74affe3 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".
Also changes the label of "Default Bank Account" to "Default Company Bank Account", like suggested in PR #20632
2020-06-18 01:48:37 +02:00
Mangesh-Khairnar
53b601523b fix: update shopify api version (#22284)
Co-authored-by: Saurabh <saurabh@erpnext.com>
2020-06-17 19:31:57 +05:30
Marica
c178013926 Merge pull request #22292 from marination/variant-error-msg
fix: Typo in Item Variant Error Message
2020-06-17 19:23:13 +05:30
Marica
7bc9352546 Merge branch 'develop' into variant-error-msg 2020-06-17 19:22:49 +05:30
marination
91dfd000ed fix: Typo 2020-06-17 19:05:40 +05:30
Shivam Mishra
64d772480b fix: limit max length for cards (#22289) 2020-06-17 18:48:15 +05:30
Shivam Mishra
dec17d5ce4 Merge pull request #22288 from scmmishra/support-portal-fixes 2020-06-17 13:14:49 +00:00
Shivam Mishra
6e231ae0cb refactor: remove translation 2020-06-17 18:43:59 +05:30
Shivam Mishra
2462f07c87 refactor: update titles 2020-06-17 18:39:49 +05:30
Shivam Mishra
2b18bdfe72 fix: title for support 2020-06-17 18:36:51 +05:30
marination
b9c38a13d1 chore: Remove unnecessary get_doc 2020-06-17 18:36:12 +05:30
Shivam Mishra
7057a807ca refactor: minor layout fixes to portal 2020-06-17 18:35:38 +05:30
marination
8b19d01d57 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.
2020-06-17 18:35:27 +05:30
Marica
5f3cdce353 Merge branch 'develop' into quality_procedure_fix 2020-06-17 18:27:04 +05:30
Kaviya Periyasamy
fec894f530 fix: modified time updated with the latest date (#22286) 2020-06-17 17:39:12 +05:30
Abhishek Balam
a4cd9e2389 use getdate() for comparing dates 2020-06-17 17:13:13 +05:30
Afshan
8546b71358 feat: /support (#22194)
* added: /support

* refactor code and implemented fail checks

* removed unused imports

* changed filter from from title to name

* refactor code to move context inside main

* removed unused variable

* added: /support

* refactor code and implemented fail checks

* removed unused imports

* changed filter from from title to name

* refactor code to move context inside main

* removed unused variable

* refactor: renamed set to get

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-17 16:16:59 +05:30
Deepesh Garg
179365683f Merge pull request #22265 from frappe/edu-academic-term-validation
fix: Adding filter in academic term
2020-06-17 15:34:47 +05:30
Deepesh Garg
0511e8cc03 Merge branch 'develop' into rcm_develop 2020-06-17 15:33:29 +05:30
Marica
10d8aa0225 Merge pull request #22283 from marination/expense-account-message-develop
fix: Message Formatting for missing Expense Account
2020-06-17 14:01:10 +05:30
marination
17422a3e45 fix: Message Formatting 2020-06-17 14:00:45 +05:30
Marica
6e751440cf Merge branch 'develop' into quality_procedure_fix 2020-06-17 13:49:46 +05:30
Anupam Kumar
c6592c880a fix: Student Admission (#22255)
* Student Admission fix

* adding check for application

* adding check for application

* updating error message

* added date_diff for date comparision
2020-06-17 12:38:31 +05:30
rohitwaghchaure
67022b2d15 Merge pull request #22275 from frappe/mergify/bp/develop/pr-22267
refactor: hide company currency fields in the routing (bp #22267)
2020-06-17 12:27:40 +05:30
Anupam K
8d4ba6c7ec Adding filter in academic term 2020-06-17 11:48:15 +05:30
Anupam Kumar
0a3c34de01 address label chages (#22137)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-17 10:53:13 +05:30
rohitwaghchaure
8d856659af refactor: hide company currency fields in the routing (#22267)
(cherry picked from commit fd3ff6be18)
2020-06-17 05:22:45 +00:00
Kenneth Sequeira
c159556c24 fix: typo for language in Terms description (#22270) 2020-06-17 09:34:58 +05:30
Anurag Mishra
58831ecc7d fix(HR): wrong shortcut in desk page (#22269) 2020-06-16 19:23:52 +05:30
Marica
74f34c2ee3 Merge branch 'develop' into update-items-permission-fix 2020-06-16 17:18:33 +05:30
rohitwaghchaure
64c0e8f325 Merge pull request #22257 from rohitwaghchaure/fixed-travis-for-develop-branch
fix: travis for develop
2020-06-16 12:38:10 +05:30
Rohit Waghchaure
fa6e4f62e2 fix: travis for develop 2020-06-16 12:02:58 +05:30
Marica
2112834743 fix: Handle unavailable Variants in Website (#22195)
* fix: Handle unavailable Variants in Website

* fix: Fetch cart setting from argument
2020-06-16 00:20:57 +05:30
marination
87dafb4d70 Merge branch 'develop' of https://github.com/frappe/erpnext into rfq-multi-uom 2020-06-15 17:44:04 +05:30
marination
ae862c993b feat: Multi UOM support in Request for Quotation 2020-06-15 17:38:47 +05:30
rohitwaghchaure
d8683d381b Merge pull request #22205 from deepeshgarg007/fiscal_year_travis
fix: Travis(develop)
2020-06-15 16:12:10 +05:30
Deepesh Garg
a66ce050ff fix: Minor fixes in loan 2020-06-15 16:03:12 +05:30
rohitwaghchaure
75366ebaec Merge pull request #22243 from Anurag810/expense-claim-standard-filter-fix
fix: added some standard filters in expense claim
2020-06-15 15:36:37 +05:30
rohitwaghchaure
21a95e1327 Merge pull request #22242 from Anurag810/employee_fix
fix(hr): allow to enter Relieving date if status = Left
2020-06-15 15:35:22 +05:30
Himanshu
b075a621c5 Merge pull request #21617 from ruchamahabal/sla-enhancements
feat: Issue Metrics and SLA Enhancements
2020-06-15 15:28:28 +05:30
Deepesh Garg
c2496a3600 fix: Asset maintenance test 2020-06-15 15:18:49 +05:30
Rucha Mahabal
b8b11bb8ea Merge branch 'develop' into sla-enhancements 2020-06-15 15:11:40 +05:30
rohitwaghchaure
d9fbc737e5 Merge pull request #22246 from marination/backflush-rm-rate
fix: Wrong key sent to get_valuation_rate
2020-06-15 14:50:19 +05:30
marination
8a0058787e fix: Wrong key sent to gte_valuation_rate 2020-06-15 14:40:39 +05:30
Rucha Mahabal
096792791b fix(patch): reload child tables 2020-06-15 14:07:06 +05:30
Rucha Mahabal
30487bd854 fix: codacy issues 2020-06-15 13:49:58 +05:30
P-Froggy
2957a631db fix: Validation of Purchase Order against Material Request missing (#22192)
Validation of Purchase Order and Purchase Order Item against the linked Material Request Item was missing, so it was possible to exchange items in the purcahse order against others and still fullfill the material request.

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-15 13:41:16 +05:30
Rucha Mahabal
bf26b10df4 Merge branch 'develop' into sla-enhancements 2020-06-15 13:15:03 +05:30
Anurag Mishra
45b6fed029 fix: added some standard filters in expense cliam 2020-06-15 12:44:55 +05:30
Anurag Mishra
a2cf79da0f fix: allow to enter Releaving date if status = Left 2020-06-15 12:28:31 +05:30
Deepesh Garg
0d880079b1 fix: Validation for group cost center 2020-06-15 12:23:24 +05:30
marination
8d68ba37bb Merge branch 'update-items-permission-fix' of https://github.com/nextchamp-saqib/erpnext into update-items-permission-fix 2020-06-15 12:18:16 +05:30
marination
b7e94cc742 fix: Travis 2020-06-15 12:16:30 +05:30
Deepesh Garg
817cbc4b48 fix: Minor fixes in cost center 2020-06-15 12:07:04 +05:30
Marica
7dd92f15fa Merge branch 'develop' into update-items-permission-fix 2020-06-15 11:44:59 +05:30
marination
359e934cd2 fix: Travis 2020-06-15 11:44:29 +05:30
Abhishek Balam
6c4a24a6c3 cleanup 2020-06-15 11:36:56 +05:30
Abhishek Balam
1a28227daa fix merge conflict 2020-06-15 10:58:51 +05:30
Deepesh Garg
11253a91f1 Merge pull request #22199 from marination/qi-on-return
fix: Don't prompt for Quality Inspection on Return Documents.
2020-06-14 17:09:51 +05:30
rohitwaghchaure
25f49d59c5 Merge pull request #22233 from deepeshgarg007/pi_billing_address
fix: Billing address in for Purchase documents
2020-06-14 15:10:43 +05:30
rohitwaghchaure
c5a2803a1c Merge pull request #22239 from rohitwaghchaure/item-none-not-found-opening-creation-tool-develop
fix: item none not found while making sales invoice using opening inv…
2020-06-14 15:09:38 +05:30
rohitwaghchaure
c5754efccf Merge pull request #22235 from frappe/opportunity-dashboard
fix: social media post permission issue
2020-06-14 15:08:43 +05:30
Rohit Waghchaure
d6f9a51cbb fix: item none not found while making sales invoice using opening invoice creation tool 2020-06-14 14:46:49 +05:30
Deepesh Garg
7640bef728 Merge pull request #22237 from deepeshgarg007/financial_statement_v13
fix: Handle cancelled entries in financial statements
2020-06-14 13:28:58 +05:30
Deepesh Garg
103645835b fix: Handle cancelled entries in financial statements 2020-06-14 13:27:19 +05:30
Deepesh Garg
5bf6bec656 fix: Consider Overseas category in RCM 2020-06-14 13:18:08 +05:30
Anupam K
234b5f9a8c sm-post-permission-fix 2020-06-14 10:34:58 +05:30
Anupam K
c2d1ed7a34 Merge branch 'develop' of https://github.com/frappe/erpnext into opportunity-dashboard 2020-06-14 00:09:45 +05:30
Anupam K
65e7a2e7a6 opportunity-dashboard-fix 2020-06-14 00:05:38 +05:30
Deepesh Garg
3a16b033b6 Merge branch 'develop' of https://github.com/frappe/erpnext into rcm_develop 2020-06-13 22:50:14 +05:30
Deepesh Garg
6760077674 fix: Billing address in for Purchase documents 2020-06-13 22:40:23 +05:30
Deepesh Garg
dcdd1f3d9b Merge pull request #22227 from frappe/opportunity-dashboard
fix: Links in opportunity dashboard
2020-06-13 22:16:10 +05:30
Deepesh Garg
5f4330621c Merge pull request #22231 from deepeshgarg007/financila_satement_immutable
fix: Handle cancelled entries in financial statements
2020-06-13 21:19:20 +05:30
Deepesh Garg
cc4943d54d fix: Distributed cost center query updation 2020-06-13 21:13:52 +05:30
Deepesh Garg
d80d442aa1 fix: Do not select cancelled entries in financial statements 2020-06-13 21:12:19 +05:30
Deepesh Garg
f3261794d9 Merge pull request #22230 from deepeshgarg007/financial_statement_to_date_v13
fix: Data not appearing properly for some fiscal_year in financial statements
2020-06-13 19:27:38 +05:30
Deepesh Garg
15231aa60d fix: Data not appearing properly for some fiscal_year in financial statemets 2020-06-13 19:26:39 +05:30
Anupam K
8bc414620b opportunity-dashboard-fix 2020-06-13 13:11:43 +05:30
Anurag Mishra
5b8a47d072 fix: patch for expense claim (#22226) 2020-06-13 01:04:32 +05:30
Deepesh Garg
28fecb1b29 Merge pull request #22198 from scmmishra/membership-fixes
fix: verification for razorpay hooks
2020-06-12 21:28:07 +05:30
Deepesh Garg
bf66d1dca7 Merge pull request #22206 from frappe/clarkejj-patch-1
fix: TypeError in Stock ageing report
2020-06-12 21:14:15 +05:30
John Clarke
15e4ea0472 Merge branch 'develop' into clarkejj-patch-1 2020-06-12 07:55:49 -06:00
John Clarke
85f237257a Thanks so much for your pointer Marica - that violation is clear and obvious to me in retrospect, but a good relearning experience in any case 2020-06-12 07:22:14 -06:00
Deepesh Garg
c258ac82c5 feat: Accounting entries for service item in Purchase receipt 2020-06-12 18:33:42 +05:30
Anurag Mishra
7558e64d6d fix: set_query in leave application (#22197) 2020-06-12 17:37:59 +05:30
John Clarke
677978dd00 Update stock_ageing.py
As reviewer Deepesh Garg advised thanks!  batch[0] can be int of float - see line 49 - so change proposed cint to flt
2020-06-12 05:53:24 -06:00
Anurag Mishra
ec54653852 fix: Child is shown in Parent process if added from tree view 2020-06-12 17:02:31 +05:30
rohitwaghchaure
ee6f80e25b Merge pull request #22213 from vishdha/fix-credit-limit-notification_v13
feat: notify credit controller role users with credit limit extension request
2020-06-12 16:37:41 +05:30
marination
f9c4b20985 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 15:49:53 +05:30
Rucha Mahabal
959efe88f0 Merge pull request #22217 from sahil28297/fix_set_company_healthcare_patch_develop
fix(patch): escape special characters in company field
2020-06-12 15:34:15 +05:30
Deepesh Garg
7e974c9e2c fix: Test Cases 2020-06-12 15:29:40 +05:30
Sahil Khan
182c1f860b fix(patch): escape special characters in company field 2020-06-12 15:16:20 +05:30
Abhishek Balam
86ea75e49e fix(HR): Change Due Advance Amount to Pending Amount (#22123)
* rename 'Due Advance Amount' field to 'Pending Amount'

* changed fieldname and references for easier debugging

* added patch for moving data

* added newline added

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
2020-06-12 13:13:14 +05:30
mergify[bot]
5a176a78b7 feat(Attendance): Add In and Out time to attendance (#21547) (#22212)
* feat(Attendance): Add In and Out time to attendance

Co-authored-by: Karthikeyan S <skarthikeyan1410@gmail.com>

* fix:add depends in attendance IN time and OUT time

Co-authored-by: Karthikeyan S <skarthikeyan1410@gmail.com>
(cherry picked from commit 90957b7f74)

Co-authored-by: Vignesh S <svignesh0308@gmail.com>
2020-06-12 13:01:22 +05:30
Shivam Mishra
3bf18509ba Merge branch 'develop' into membership-fixes 2020-06-12 07:27:20 +00:00
Rohan Bansal
ccd03bc120 feat: notify credit controller role users with credit limit extension requests 2020-06-12 12:48:54 +05:30
Vignesh S
90957b7f74 feat(Attendance): Add In and Out time to attendance (#21547)
* feat(Attendance): Add In and Out time to attendance

Co-authored-by: Karthikeyan S <skarthikeyan1410@gmail.com>

* fix:add depends in attendance IN time and OUT time

Co-authored-by: Karthikeyan S <skarthikeyan1410@gmail.com>
2020-06-12 12:32:55 +05:30
Marica
c62a6df016 Merge branch 'develop' into qi-on-return 2020-06-12 12:31:20 +05:30
Marica
fd3d976e06 Update erpnext/controllers/stock_controller.py
Co-authored-by: Deepesh Garg <42651287+deepeshgarg007@users.noreply.github.com>
2020-06-12 12:30:59 +05:30
Abhishek Balam
996b306cda fix territory count 2020-06-12 11:38:07 +05:30
Abhishek Balam
72450d2af3 add revenue if within date range 2020-06-12 11:07:57 +05:30
Abhishek Balam
f596b5950e indent to tabs 2020-06-12 11:07:28 +05:30
Deepesh Garg
d09aa53571 Merge pull request #22208 from aliriocastro/fix-itemwise-rec-reord-level-report
fix: key name to get float precision was misspelled
2020-06-12 10:04:58 +05:30
Deepesh Garg
ca97e19b7e Merge pull request #22203 from marination/account-tree
fix: Check for Company before rendering tree in Account Tree
2020-06-12 10:02:41 +05:30
Alirio Castro
faf33072c8 fix: key was mispelled 2020-06-11 23:32:53 -04:00
Alirio Castro
da6b0a51a2 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2020-06-11 23:28:40 -04:00
Shivam Mishra
241088c73e Merge branch 'develop' into membership-fixes 2020-06-11 16:53:15 +00:00
John Clarke
6b55f66f02 Stock Ageing TypeError: ‘<’ not supported between instances of ‘int’ and ‘str’
Proposed fix re this error report https://discuss.erpnext.com/t/stock-ageing-report-typeerror-not-supported-between-instances-of-int-and-str/62605
2020-06-11 10:24:48 -06:00
Deepesh Garg
9df4532d14 fix: Travis(develop) 2020-06-11 21:33:43 +05:30
marination
c9a6e4f151 fix: Check for Company before rendering tree in Account Tree 2020-06-11 19:54:44 +05:30
Abhishek Balam
44b8cf4fef enable 'user cannot create' for payment request (#22044)
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-11 19:31:41 +05:30
Rucha Mahabal
d7481f59ba fix: patch 2020-06-11 17:41:05 +05:30
Rucha Mahabal
4dbb7c552c Merge branch 'develop' into sla-enhancements 2020-06-11 17:04:20 +05:30
Rucha Mahabal
9c27d683ba fix: priority column width
Co-authored-by: Himanshu <himanshuwarekar@yahoo.com>
2020-06-11 17:03:53 +05:30
marination
596560c3c2 fix: Don't prompt for Quality Inspection on Return Documents. 2020-06-11 16:39:03 +05:30
Shivam Mishra
3f60801566 Merge branch 'develop' into membership-fixes 2020-06-11 10:16:39 +00:00
Shivam Mishra
8c24810f30 refactor: ignore mandatory for customer 2020-06-11 15:42:29 +05:30
Shivam Mishra
49d51b8ce7 feat: check duplicate contact explicitly 2020-06-11 14:24:07 +05:30
Shivam Mishra
84fcc55a36 refactor: do nothing if member is not found 2020-06-11 13:34:40 +05:30
Shivam Mishra
8d61a0abef fix: use string to verify webhook 2020-06-11 13:34:25 +05:30
Deepesh Garg
7d3c3b9a8b Merge pull request #22188 from deepeshgarg007/payment_terms_outstanding
fix: Update payment schedule based on payment terms
2020-06-10 22:17:37 +05:30
Deepesh Garg
a0fd97f2ac fix: Update payment schedule based on payment terms 2020-06-10 22:15:27 +05:30
Deepesh Garg
c962836423 Merge pull request #22187 from frappe/mergify/bp/version-13-beta-pre-release/pr-22186
fix: Party validation for inter-warehouse transaction (bp #22186)
2020-06-10 20:25:36 +05:30
Deepesh Garg
9e3d6755d7 fix: Party validation for inter-warehouse transaction
(cherry picked from commit 7963e2b708)
2020-06-10 14:37:53 +00:00
Deepesh Garg
f108574772 Merge pull request #22186 from deepeshgarg007/inter_warehouse_party_validation
fix: Party validation for inter-warehouse transaction
2020-06-10 20:02:43 +05:30
Deepesh Garg
7963e2b708 fix: Party validation for inter-warehouse transaction 2020-06-10 19:57:49 +05:30
Rohan
d60d2e1826 fix: only auto-set serial nos and batches if allowed in Stock Settings (develop) (#21781)
* fix: only auto-set serial nos and batches if allowed in Stock Settings

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

* fix: remove auto-set batch variable

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-06-10 19:10:56 +05:30
rohitwaghchaure
526132d60a Merge pull request #22182 from marination/website-price-list
fix: Prioritize Default Customer Price List in Portal
2020-06-10 19:07:12 +05:30
Marica
170d4b7db9 Merge branch 'develop' into website-price-list 2020-06-10 18:57:44 +05:30
Deepesh Garg
f2615634a5 Merge pull request #22185 from deepeshgarg007/item-wise-report-export_v12
fix: Item-wise sales and purchase register export
2020-06-10 18:51:41 +05:30
Deepesh Garg
a6acf18f6c fix: Item-wise sales and purchase register export 2020-06-10 18:50:50 +05:30
Deepesh Garg
6e0d6bd74c Merge pull request #22184 from deepeshgarg007/item-wise-report-export
fix: Item-wise sales and purchase register export
2020-06-10 18:48:35 +05:30
Deepesh Garg
08fee12266 fix: Item-wise sales and purchase register export 2020-06-10 18:33:24 +05:30
marination
fdddb679ed fix: Prioritize Default Customer Price List in Portal 2020-06-10 18:22:59 +05:30
rohitwaghchaure
496b6a28f2 Merge pull request #22179 from rohitwaghchaure/code-cleanup-for-handling-batch-case-in-SI-develop
fix: Cannot read property 'has_batch_no' of undefined
2020-06-10 17:57:07 +05:30
Rohit Waghchaure
afe8e88cb8 fix: Cannot read property 'has_batch_no' of undefined 2020-06-10 17:55:24 +05:30
Marica
aeeadee8f8 Merge branch 'develop' into update-items-permission-fix 2020-06-10 15:19:33 +05:30
rohitwaghchaure
0233f94570 Merge pull request #22081 from deepeshgarg007/jv_list_view
fix: Add total debit in Journal Entry list view
2020-06-10 14:17:13 +05:30
rohitwaghchaure
95331a31a7 Merge pull request #22155 from frappe/barredterra-billing_hours
feat(projects): bill all hours by default
2020-06-10 14:16:18 +05:30
rohitwaghchaure
9ea9a99889 Merge pull request #22063 from marination/procurement-tracker-develop
fix: Procurement Tracker Data Consistency
2020-06-10 14:13:36 +05:30
rohitwaghchaure
3a9c1b23db Merge pull request #22096 from marination/valuation-rate
fix: '>=' not supported between instances of 'str' and 'int'
2020-06-10 14:12:13 +05:30
rohitwaghchaure
63e8f2c430 Merge pull request #22175 from Anurag810/expense_claim_cost_center_fix
fix: set cost center in child table
2020-06-10 13:40:51 +05:30
rohitwaghchaure
88b964348e Merge pull request #22176 from Anurag810/hr_desk_page_fixes
fix: dependency for leave Period in Desk page
2020-06-10 13:39:51 +05:30
Rucha Mahabal
1e49c6b68b fix: update duration options 2020-06-10 12:58:16 +05:30
Anurag Mishra
452b7760df fix: dependency for leave Period in Desk page 2020-06-10 12:48:21 +05:30
Rucha Mahabal
5b6d2c2e7b Merge branch 'develop' into sla-enhancements 2020-06-10 12:33:19 +05:30
rohitwaghchaure
904e0f4eda Merge pull request #22106 from Anurag810/employee_onboarding_fix
fix: problem during assigning
2020-06-10 12:30:15 +05:30
Anurag Mishra
402c347f83 fix: set cost center in child table 2020-06-10 12:27:59 +05:30
Anupam Kumar
934e30ecac update program course (#22166) 2020-06-10 11:07:43 +05:30
Rucha Mahabal
bb3b616a04 fix: set valuesin db for handle hold time 2020-06-09 23:17:51 +05:30
Raffael Meyer
088ab75083 fix: move feature into update_billing_hours 2020-06-09 16:09:40 +02:00
Deepesh Garg
ee9a4c54ad Merge pull request #22165 from frappe/mergify/bp/version-13-beta-pre-release/pr-22164
Revert "fix: docfield of sales_order is not fetching route options for new doc" (bp #22164)
2020-06-09 17:55:12 +05:30
Deepesh Garg
c1bc819f18 Revert "fix: docfield of sales_order is not fetching route options for new doc (#21123)"
This reverts commit 5c54adec28.

(cherry picked from commit e5fe00cf58)
2020-06-09 12:18:25 +00:00
Deepesh Garg
0dd925cfc8 Merge pull request #22164 from frappe/revert-21123-patch-1
Revert "fix: docfield of sales_order is not fetching route options for new doc"
2020-06-09 17:42:42 +05:30
rohitwaghchaure
b42ac845da Merge pull request #22147 from marination/finished-good-valuation
fix: Finished Product Valuation at Repack
2020-06-09 17:42:06 +05:30
Deepesh Garg
e5fe00cf58 Revert "fix: docfield of sales_order is not fetching route options for new doc (#21123)"
This reverts commit 5c54adec28.
2020-06-09 17:41:27 +05:30
Raffael Meyer
d27d88c3e4 feat: bill all hours by default 2020-06-08 22:52:44 +02:00
Nabin Hait
d5b97d6996 Update CODEOWNERS 2020-06-08 19:51:55 +05:30
marination
f5b9deea5b fix: Finished Product Valuation at Repack 2020-06-08 13:02:00 +05:30
Karthikeyan S
e9ff6d3d52 feat(Cost Center): Distributed Cost Center (#21531)
* feat: Distributed Cost Center

Squashed commit of the following:

commit 274236eb92dfddfd015583ee1e6b5e1937366d28
Author: Vignesh <kaviya.3111999@gmail.com>
Date:   Mon Mar 23 18:32:26 2020 +0530

    Fix: Indentation

commit beae0b9849f333dd1d9f29c27192ea7de2e4e809
Author: Vignesh <kaviya.3111999@gmail.com>
Date:   Mon Mar 23 18:26:50 2020 +0530

    The validations are added to distributed cost center.

commit 3f66943adacb5797338ef3510251bf6633be3dba
Author: Vignesh <kaviya.3111999@gmail.com>
Date:   Thu Mar 19 22:17:25 2020 +0530

    The distributed cost centers are shown with the percentage allocation in the reports

commit 1ac11df522096fa187d2f5863b4c970e18b37fac
Author: Vignesh <kaviya.3111999@gmail.com>
Date:   Thu Mar 19 13:36:04 2020 +0530

    The child table distributed cost center are added to cost center doctype and then validate percentage allocation.

* fix(Distributed Cost Center): validation and filters

* fix(Distributed Cost Center): financial statement query

* fix(Distributed Cost Center): add test cases

Co-authored-by: Vignesh S <svignesh0308@gmail.com>

* fix(Distributed Cost Center): budget variance, general ledger, profitability analysis reports.

* Merge branch 'develop' into develop-distributed-cost-center

* fix(Distributed Cost Center): Added DCC reflection in actual amount column of Budget Variance Report.

* Update creation field in general ledger report

Co-authored-by: Nabin Hait <nabinhait@gmail.com>

* creation field updated in gl_entries query

Co-authored-by: Nabin Hait <nabinhait@gmail.com>

Co-authored-by: KaviyaPeriyasamy <kaviya.3111999@gmail.com>
Co-authored-by: Vignesh S <svignesh0308@gmail.com>
Co-authored-by: KaviyaPeriyasamy <kaviyaperiyasamy22@gmail.com>
Co-authored-by: Kaviya Periyasamy <36359901+KaviyaPeriyasamy@users.noreply.github.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-06-08 12:20:21 +05:30
rohitwaghchaure
c6d4c2afb6 Merge pull request #22113 from Anurag810/leave_application-fixes
fix: Wrong filters
2020-06-08 10:43:22 +05:30
rohitwaghchaure
b3b5c96749 Merge pull request #22092 from marination/shippinng-address
fix: Apply shipping rule without address too
2020-06-08 10:36:19 +05:30
rohitwaghchaure
6debdc89c2 Merge pull request #22121 from rohitwaghchaure/error-report-exponential-smoothing-report
fix: 'ForecastingReport' object has no attribute 'total_demand'
2020-06-08 10:30:19 +05:30
Deepesh Garg
023f35bed7 Merge pull request #22143 from deepeshgarg007/loan_amount_precision_v13
fix: Precision in loan amount calculation
2020-06-07 21:38:18 +05:30
Deepesh Garg
221076c258 Merge branch 'version-13-beta-pre-release' of https://github.com/frappe/erpnext into loan_amount_precision_v13 2020-06-07 21:32:50 +05:30
Deepesh Garg
df93589032 fix: Ignore GL Entry on cancel 2020-06-07 21:29:25 +05:30
Deepesh Garg
3fed098f16 fix: Precision in loan amount calculation 2020-06-07 21:28:32 +05:30
Deepesh Garg
63e8391381 Merge pull request #22142 from deepeshgarg007/loan_amount_precision
fix: Precision in loan amount calculation
2020-06-07 21:28:23 +05:30
Deepesh Garg
0bc163c230 fix: Ignore GL Entry on cancel 2020-06-07 21:23:55 +05:30
Deepesh Garg
e5ac8cc430 fix: Precision in loan amount calculation 2020-06-07 21:18:47 +05:30
Mangesh-Khairnar
3031128167 fix: fetch tax lines within the shipping lines (#22138) 2020-06-07 18:02:23 +05:30
Deepesh Garg
76ddf4f0b5 Merge pull request #22132 from deepeshgarg007/tds_monthly_cancelled_v13
fix: Cancelled entries in tds payable monthly report
2020-06-07 00:08:57 +05:30
Deepesh Garg
c01b4aa2e5 Merge pull request #22131 from deepeshgarg007/tds_monthly_cancelled
fix: Cancelled entries in tds payable monthly report
2020-06-07 00:08:17 +05:30
Deepesh Garg
cdd92d756d fix: Cancelled entries in tds payable monthly report 2020-06-07 00:03:28 +05:30
Deepesh Garg
57f9d43c43 fix: Cancelled entries in tds payable monthly report 2020-06-07 00:01:20 +05:30
Revant Nandgaonkar
3375a2e85a ci: trigger docker build on release (#22128) 2020-06-06 21:08:49 +05:30
Rucha Mahabal
73326d308b refactor: move pause SLA configuration to SLA DocType 2020-06-05 18:23:39 +05:30
Rucha Mahabal
d7d3ca4214 fix: tests 2020-06-05 16:57:37 +05:30
Abhishek Balam
328a55749d fix(HR): Fix half day error when only 1 day is selected (#22122)
* fix half day error when only 1 day is selected

* adding validation fix for half day on serverside
2020-06-05 16:46:57 +05:30
Rucha Mahabal
25ef6a9638 fix: add default hold statuses in fixtures and patch 2020-06-05 16:37:20 +05:30
Rucha Mahabal
8d39928418 refactor: dashboard indicator when SLA is on hold 2020-06-05 16:36:31 +05:30
Rucha Mahabal
2c9f7cf371 feat: pause SLA on statuses configuration 2020-06-05 16:35:57 +05:30
Rohit Waghchaure
5a82276389 fix: 'ForecastingReport' object has no attribute 'total_demand' 2020-06-05 13:56:20 +05:30
Rucha Mahabal
b29cb87868 refactor: setting avg_response_time moved to communication 2020-06-05 13:35:38 +05:30
Deepesh Garg
407c7bc113 Merge pull request #22067 from marination/item-attribute
fix: Misleading Error message for Item Attribute.
2020-06-05 11:21:08 +05:30
P-Froggy
6f87f97efe fix: Wrong Ordered-Status Indicator for Material Request Items (#22118)
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 used in the code 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:57:07 +05:30
Anurag Mishra
94582a89c7 fix: Wrong filters 2020-06-04 17:50:47 +05:30
Rucha Mahabal
3f08350181 fix: retain Hold status 2020-06-04 15:56:59 +05:30
Marica
d03ebbd51d Merge branch 'develop' into valuation-rate 2020-06-04 15:31:11 +05:30
rohitwaghchaure
2213ea3d82 Merge pull request #22109 from rohitwaghchaure/routing-operations-not-in-a-sequence
fix: routing operations not added sequentially in the BOM
2020-06-04 14:56:10 +05:30
Rohit Waghchaure
404ed88c0c fix: routing operations not added sequentially in the BOM 2020-06-04 14:46:50 +05:30
rohitwaghchaure
dd97a5f4a8 Merge pull request #22107 from rohitwaghchaure/fixed-import-supplier-invoice-not-worked
fix: import supplier invoice not working
2020-06-04 14:40:30 +05:30
Rohit Waghchaure
60c1855014 fix: import supplier invoice not working 2020-06-04 14:31:35 +05:30
Anurag Mishra
225802e3a0 fix: problem during assigning 2020-06-04 14:15:55 +05:30
Rucha Mahabal
94d03c6100 fix: remove Service Level DocType from Support Desk Page 2020-06-04 12:35:36 +05:30
Rucha Mahabal
b3338a149b fix: code clean-up 2020-06-04 12:35:00 +05:30
Deepesh Garg
c83ad8185a Merge pull request #22098 from deepeshgarg007/accounts_payable_error
fix: Error when no data is present in AR/AP report
2020-06-03 21:59:28 +05:30
Deepesh Garg
7135a75e5e fix: Error when no data is present in AR/AP reeport 2020-06-03 21:51:21 +05:30
marination
6f7e9d2904 fix: '>=' not supported between instances of 'str' and 'int' 2020-06-03 17:13:58 +05:30
marination
0c72249403 fix: Apply shipping rule without address too 2020-06-03 14:32:07 +05:30
Deepesh Garg
881999d3bf Merge pull request #22089 from scmmishra/selling-dash-fix
fix: dashboard chart does not exist on selling page
2020-06-03 13:38:36 +05:30
Deepesh Garg
fcf19f957e Merge pull request #22085 from MyuddinKhatri/purchase-receipt-v13
fix(stock): create purchase invoice from purchase receipt dashboard
2020-06-03 13:37:06 +05:30
Shivam Mishra
b84dd9b5f5 fix: dashboard chart does not exist on selling page 2020-06-03 13:24:18 +05:30
Myuddin khatri
9276d16420 fix(stock): able to create purchase invoice from purchase receipt dashboard
able to create purchase invoice from purchase receipt dashboard
2020-06-03 11:22:49 +05:30
Myuddin khatri
27824cfe6a Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2020-06-03 11:18:06 +05:30
Deepesh Garg
24f9a80e7d fix(India): Reverse charge mechanism for GST 2020-06-03 10:59:37 +05:30
Shivam Mishra
f460c17961 fix: syntax error (#22082) 2020-06-02 21:48:23 +05:30
Shivam Mishra
789df32683 feat: verify signature on webhook (#21872) 2020-06-02 19:18:22 +05:30
Deepesh Garg
60f3a2b8e7 fix: Add total debit in Journal Entry list view 2020-06-02 18:26:43 +05:30
gavin
7a05662e9f Merge pull request #21491 from gavindsouza/tally-migration-feat
feat(Tally migration): Errored documents handling
2020-06-02 13:03:13 +05:30
Deepesh Garg
fecac677ec Merge pull request #22075 from abhishekbalam/fix-customer-count
fix(Accounts): Customer Count in Customer Acq. Report wrong
2020-06-02 00:09:01 +05:30
Abhishek Balam
192d4c8810 indent to tabs instead of spaces 2020-06-01 23:58:05 +05:30
Abhishek Balam
732f5c1867 fixed customer count logic 2020-06-01 23:51:39 +05:30
Suraj Shetty
3064e361e1 chore: Delete redundant change-log file
Not sure how this still exists even after renaming the file
- https://github.com/frappe/erpnext/pull/21923

- ccb9ae49aa (diff-05325be11cd93bcdb3c8cebcb60b2c35)
2020-06-01 14:05:09 +05:30
Deepesh Garg
70f7136c05 Merge pull request #22069 from frappe/revert-22066-deferred_accounting_hooks_v13
Revert "fix: Method in hooks for processing deferred revenue"
2020-06-01 12:03:49 +05:30
Deepesh Garg
2e55609a84 Revert "fix: Method in hooks for processing deferred revenue" 2020-06-01 12:03:31 +05:30
marination
0df7f0fe9d fix: Misleading Error message for Item Attribute. 2020-06-01 11:56:33 +05:30
Deepesh Garg
b5affe5bdd Merge pull request #22066 from deepeshgarg007/deferred_accounting_hooks_v13
fix: Method in hooks for processing deferred revenue
2020-06-01 11:50:59 +05:30
Deepesh Garg
ef436fa3c2 Merge pull request #22065 from deepeshgarg007/deferred_accounting_hooks
fix: Method in hooks for processing deferred revenue
2020-06-01 11:48:44 +05:30
Deepesh Garg
1dd5efcfc4 fix: Method in hooks for proccesing deferred revenue 2020-06-01 11:46:29 +05:30
Deepesh Garg
de03d2cba4 fix: Method in hooks for proccesing deferred revenue 2020-06-01 11:30:34 +05:30
marination
c0c455c471 fix: Procurement Tracker Data Consistency 2020-05-31 20:20:59 +05:30
Suraj Shetty
4a54a43514 Merge pull request #22060 from frappe/surajshetty3416-patch-1
chore: Delete redundant change-log file
2020-05-30 23:22:36 +05:30
Suraj Shetty
8f17438723 chore: Delete redundant change-log file
Not sure how this still exists even after renaming the file
- https://github.com/frappe/erpnext/pull/21923

- ccb9ae49aa (diff-05325be11cd93bcdb3c8cebcb60b2c35)
2020-05-30 23:21:47 +05:30
Deepesh Garg
e602140ff0 Merge pull request #22058 from frappe/mergify/bp/version-13-beta-pre-release/pr-22057
fix(ewb): remove checksum validation for TRANSIN (bp #22057)
2020-05-30 20:22:27 +05:30
karthikeyan5
d9f7b4df8f fix(ewb): remove checksum validation for TRANSIN
(cherry picked from commit ca46bedfcb)
2020-05-30 14:22:25 +00:00
Deepesh Garg
253660fbd1 Merge pull request #22057 from karthikeyan5/develop-fix-ewb-transin-checksum
fix(ewb): remove checksum validation for TRANSIN
2020-05-30 19:48:12 +05:30
karthikeyan5
ca46bedfcb fix(ewb): remove checksum validation for TRANSIN 2020-05-30 15:00:56 +05:30
Saqib
c16e278979 Merge branch 'develop' into update-items-permission-fix 2020-05-30 13:16:55 +05:30
Deepesh Garg
3609ddedbb fix: Purchase receipt item json 2020-05-30 12:03:37 +05:30
Deepesh Garg
159d0734ef fix: Proccurement tracker report test 2020-05-30 11:47:22 +05:30
Deepesh Garg
1aec30d849 fix: Procurement Tracker test case 2020-05-30 11:47:04 +05:30
Deepesh Garg
c96bf870e4 fix: Test Cases 2020-05-30 11:46:39 +05:30
Deepesh Garg
8a4dc521cd Revert 'fix: tests depending on global default company' 2020-05-30 11:40:16 +05:30
Deepesh Garg
36f7710356 Revert "fix: tests depending on global default company"
This reverts commit 1f20c99ecf.
2020-05-30 11:38:04 +05:30
Deepesh Garg
f8550790fa This reverts commit aa196c0a66 2020-05-30 11:37:36 +05:30
Abhishek Balam
40694c98aa 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-05-30 01:02:06 +05:30
Saqib Ansari
a655db6a79 fix: unexpected removal of print hide field 2020-05-29 22:44:59 +05:30
Saqib Ansari
d531a8ab8d Merge branch 'develop' of https://github.com/frappe/erpnext into update-items-permission-fix 2020-05-29 22:37:13 +05:30
Saqib Ansari
c579b0879e fix: cannot update delivery date 2020-05-29 22:34:22 +05:30
Saqib Ansari
5da8b98a04 fix: label 2020-05-29 21:59:01 +05:30
Saqib Ansari
2c3c8aaa2d fix: submitted sales order can be updated with no permission 2020-05-29 21:55:38 +05:30
mergify[bot]
bfa93ea76f fix: Migrate standard_tax_exemption_amount if field exists (#22036) (#22047)
(cherry picked from commit 2186c223b9)

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-05-29 21:31:28 +05:30
rohitwaghchaure
7544160374 fix: routing operations table is blank on pull of operations in BOM (#22039) 2020-05-29 21:27:24 +05:30
Nabin Hait
2186c223b9 fix: Migrate standard_tax_exemption_amount if field exists (#22036) 2020-05-29 21:26:49 +05:30
Deepesh Garg
dfa32a77c1 fix: Patch to remove Property Setter 2020-05-29 17:20:33 +05:30
Deepesh Garg
52baf8f863 fix: Test Cases 2020-05-29 17:20:03 +05:30
Deepesh Garg
295dcd87f9 Merge pull request #22038 from frappe/mergify/bp/version-13-beta-pre-release/pr-22037
fix: check if swift_number exists in bank account (bp #22037)
2020-05-29 13:22:21 +05:30
Chinmay D. Pai
9b36a9be26 fix: check if swift_number exists in bank account
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
(cherry picked from commit d6587fa1d5)
2020-05-29 07:39:59 +00:00
Deepesh Garg
91e771a1cf Merge pull request #22037 from Thunderbottom/swift-check
fix: check if swift_number exists in bank account
2020-05-29 12:56:48 +05:30
Chinmay D. Pai
d6587fa1d5 fix: check if swift_number exists in bank account
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-05-29 12:44:09 +05:30
Rucha Mahabal
43d4397003 Merge branch 'develop' into sla-enhancements 2020-05-29 11:43:49 +05:30
Rucha Mahabal
bc38289a59 fix: added patch for sla enhancements 2020-05-29 11:43:05 +05:30
Deepesh Garg
c897e800ed Merge branch 'develop' of https://github.com/frappe/erpnext into project-link-for-all-accounts 2020-05-29 11:04:20 +05:30
Saqib
cd8b5d1e4c fix: cannot assign same task to other asset maintenance (#22024) 2020-05-29 10:21:20 +05:30
Mangesh-Khairnar
c302d066a3 fix: only save end date when transactions are returned (#22023) 2020-05-29 10:19:58 +05:30
Anurag Mishra
cf0168668f fix: Correct filters (#22022) 2020-05-29 10:19:33 +05:30
Saqib
3c460364b5 fix: disposed asset creates inconsistencies in asset depr report (#22021) 2020-05-29 10:18:06 +05:30
mergify[bot]
25add7c9bf crm onboarding typos (#22008) (#22025)
(cherry picked from commit 8385fed042)

Co-authored-by: Anupam Kumar <anupamvns0099@gmail.com>
2020-05-29 09:34:14 +05:30
Anupam Kumar
8385fed042 crm onboarding typos (#22008) 2020-05-28 22:14:59 +05:30
Rucha Mahabal
b18606c0d7 Merge pull request #22019 from ruchamahabal/fix-chart
fix: empty filters in Healthcare Charts
2020-05-28 19:19:23 +05:30
Rucha Mahabal
a3dd75e77f fix: empty filters in Healthcare Charts 2020-05-28 19:03:37 +05:30
sahil28297
9209b9a7de fix(set_purchase_receipt_delivery_note_detail): commit after every 100 sql updates (#22016) 2020-05-28 18:49:47 +05:30
Deepesh Garg
1f3fe59e36 fix: Default period start date and period end date for financial statements (#22011) 2020-05-28 18:36:21 +05:30
sahil28297
517ab955ac fix(rename_bank_reconcilliation): do not delete doc after renaming (#22013) 2020-05-28 18:32:16 +05:30
Marica
1a25aa83de fix: Delete Auto Email Reports (#22009) 2020-05-28 18:16:24 +05:30
mergify[bot]
fd351f8268 fix: set fiscal year for Profit and Loss chart (#22006)
(cherry picked from commit 4afda76015)

Co-authored-by: Shivam Mishra <scm.mymail@gmail.com>
2020-05-28 15:18:47 +05:30
Shivam Mishra
6621e22c02 refactor: clean up desk pages (#22004)
* refactor: clean up desk pages

* refactor: update label for CRM
2020-05-28 14:48:50 +05:30
rohitwaghchaure
af91e13435 Merge pull request #22001 from nextchamp-saqib/price-rule-date-field-fix
fix: transaction date not found in sales invoice
2020-05-28 14:38:13 +05:30
Rucha Mahabal
3a51a97b2d Merge branch 'develop' into sla-enhancements 2020-05-28 14:33:51 +05:30
Rucha Mahabal
376a46f1e5 test: hold time for Replied status 2020-05-28 14:33:30 +05:30
Rucha Mahabal
c8e8e29083 test: Issue Metrics 2020-05-28 13:48:09 +05:30
Deepesh Garg
cfcdd52bf4 fix: Inter-company Invoice currency for multicurrency transactions (#21984) 2020-05-28 13:35:29 +05:30
Anupam Kumar
f10771029a CRM dashboard fixes (#21989) 2020-05-28 13:34:55 +05:30
Mangesh-Khairnar
706524f1ae fix: make transaction date of the oldest transaction as the last integration date (#22000)
* fix: make transaction date of the oldest transaction as the last integration date

* chore: remove blank line after docstring
2020-05-28 13:33:58 +05:30
Saqib Ansari
dd39ba0014 chore: tests 2020-05-28 13:11:04 +05:30
Rucha Mahabal
0032d7765f Merge pull request #21999 from frappe/michellealva-patch-3
fix: change modified time
2020-05-28 12:56:23 +05:30
Michelle Alva
8653419c4c fix: change modified time
changed modified time to sync the changes
2020-05-28 12:52:58 +05:30
Saqib Ansari
603cc3d05e fix: transaction date not found in sales invoice 2020-05-28 12:49:33 +05:30
Deepesh Garg
ab17b07f14 Merge pull request #21985 from marination/import-italian-invoice-dev
chore: Added Italian Import Supplier Invoice to Desk
2020-05-28 12:33:53 +05:30
rohitwaghchaure
063d344000 Merge pull request #21998 from rohitwaghchaure/fixed-label-for-date
fix: labels for date in manufacturing reports
2020-05-28 12:09:02 +05:30
Rohit Waghchaure
b86c0eb404 fix: labels for date in manufacturing reports 2020-05-28 12:07:13 +05:30
rohitwaghchaure
bf561f9387 Merge pull request #21738 from theopen-institute/fee-schedule-date
fix(Education): Added a posting_date field to Fee Schedule
2020-05-28 12:01:30 +05:30
totolouis
596b3dbeee fix: translation from HTML code to apostrophe
For French translation, the apostrophe was in HTML code and thus is not displayed correctly.
Issue reported a few times: https://discuss.erpnext.com/t/apostrophe-is-showed-as-39-is-not-interpreted/49954/3 and https://discuss.erpnext.com/t/mega-thread-version-12-release-bugs/50987/49.
2020-05-27 22:51:03 -07:00
Michelle Alva
f7beeff2d8 fix: change description for field (#21995)
grammatical fixes for description of Default Customer
2020-05-28 11:05:19 +05:30
rohitwaghchaure
39308e72f9 Merge pull request #21994 from rohitwaghchaure/display-draft-job-card-as-open-job-card-develop
refactor: display draft job card as Open job card
2020-05-28 10:18:49 +05:30
Rohit Waghchaure
5226403b62 refactor: display draft job card as Open job card 2020-05-28 10:15:01 +05:30
rohitwaghchaure
7320a72237 Merge pull request #21991 from rohitwaghchaure/fixed-forecasting-data-and-changed-columns
refactor: showing the order's data for past period
2020-05-28 09:56:47 +05:30
Rohit Waghchaure
234a55c6bc refactor: showing the order's data for past period 2020-05-28 09:55:24 +05:30
Deepesh Garg
6fe3a24c5d Merge pull request #21986 from deepeshgarg007/tds_computation_summary
fix: TDS computation summary report
2020-05-27 22:49:42 +05:30
Deepesh Garg
33a08f1ea7 fix: TDS computation summary report 2020-05-27 22:44:50 +05:30
marination
50956aa29e chore: Added to v13 desk under Regional Link Card 2020-05-27 22:24:39 +05:30
marination
29d7a7ea05 fix: Added permission via regional setup and patch 2020-05-27 22:14:36 +05:30
marination
3da51984f2 chore: Add Import Supplier Invoice to Menu 2020-05-27 22:13:40 +05:30
rohitwaghchaure
7ac731dd4f fix: raw material warehouse in Production Planning Report (#21982) 2020-05-27 21:53:17 +05:30
Marica
c2aabb0fbf fix: Buying Module fixes (#21965)
* fix: Buying Module fixes

* fix: Delete Report files as well

* fix: Add Purchase Order Analysis to Stock & Accounting
2020-05-27 20:56:39 +05:30
rohitwaghchaure
dc470b5382 Merge pull request #21977 from scmmishra/work-order-fix-datetime
fix: use get_datetime instead of getdate
2020-05-27 20:39:17 +05:30
Shivam Mishra
cb1a7d0fbc fix: use get_datetime instead of getdate 2020-05-27 20:36:28 +05:30
Shivam Mishra
8fcbf1b90e fix: compare start and end time to prevent negative diff (#21974)
* fix: compare start and end time to prevent negative diff

* feat: parse date when comparing
2020-05-27 20:31:30 +05:30
Deepesh Garg
152377f84d fix: Total for ageing column 121-Above (#21972) 2020-05-27 20:29:10 +05:30
Marica
a49f045d14 fix: Grammar fixes (#21970) 2020-05-27 20:28:37 +05:30
Deepesh Garg
0030b95595 fix: Filtering issues in opneing invoice creation tool (#21969) 2020-05-27 20:27:33 +05:30
Deepesh Garg
873542bc7f fix: Do not allow backdated stock transactions in previous fiscal year (#21967) 2020-05-27 20:26:38 +05:30
Anurag Mishra
d6d84a3c15 fix: Module Onboarding for HR (#21963) 2020-05-27 20:21:15 +05:30
Anupam Kumar
a77032f926 onbarding steps fix (#21959) 2020-05-27 20:20:20 +05:30
Deepesh Garg
df5f8528e7 Merge pull request #21957 from nabinhait/fix344
fix: label changed in production plan
2020-05-27 18:42:12 +05:30
rohitwaghchaure
29bd1c3968 Merge pull request #21960 from rohitwaghchaure/fixed-filters-for-manufacturing-reports
fix: filters for the manufacturing reports
2020-05-27 15:38:51 +05:30
rohitwaghchaure
9cd2c7c7b2 Merge pull request #21962 from rohitwaghchaure/manufacturing-tour-develop
feat: added tour to manufacturing settings
2020-05-27 15:38:28 +05:30
Shivam Mishra
45571b99a8 feat: added tour to manufacturing settings 2020-05-27 15:36:59 +05:30
Rohit Waghchaure
cb1a910538 fix: filters for the manufacturing reports 2020-05-27 15:26:40 +05:30
Andrew McLeod
0fa1cc647f fix: website_list_for_contact, fix changed frappe.db.exist keyword argument (#21958) 2020-05-27 13:36:35 +05:30
Nabin Hait
07388495f3 fix: label changed in production plan 2020-05-27 12:59:03 +05:30
Deepesh Garg
ed2c1803df fix: Post Dated unallocated amount not considered in Advance Amount in AR/AP summary (#21837)
* 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:12 +05:30
Rucha Mahabal
a18c896a56 fix: titles and order of Healthcare Onboarding steps (#21948)
* fix(Healthcare): title and order of onboarding steps

* refactor: healthcare settings tour
2020-05-27 12:43:44 +05:30
Anurag Mishra
ef0026c06f fix: addtional salary date validation (#21952) 2020-05-27 12:28:11 +05:30
Anurag Mishra
01bced8c67 fix Report not working on parameter Grade (#21951) 2020-05-27 12:26:54 +05:30
mergify[bot]
da95601c12 fix: status label in project summary report (#21935) (#21938)
(cherry picked from commit 8513d516e3)

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
2020-05-27 12:25:48 +05:30
Shivam Mishra
2a81058f90 refactor: project summary report (#21943)
* feat: added more filters

* feat: show only first 30 projects in chart

* Update erpnext/projects/report/project_summary/project_summary.js

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

Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-27 11:53:48 +05:30
Shivam Mishra
e4bbdbbfe1 fix: get data from request directly (#21954) 2020-05-27 11:47:26 +05:30
rohitwaghchaure
07b56610dd Merge pull request #21946 from rohitwaghchaure/fixed-v13-beta-2-issues-develop
fix: manufacturing dashboard and work order summary chart
2020-05-26 23:19:57 +05:30
Rohit Waghchaure
1e04b455f0 fix: manufacturing dashboard and work order summary chart 2020-05-26 23:14:21 +05:30
Deepesh Garg
3a723dd815 Merge pull request #21940 from deepeshgarg007/acc_dim_report_filter
fix: Do not add filters in report on accounting dimension creation if it already exists
2020-05-26 19:30:43 +05:30
Deepesh Garg
bcee78d054 fix: Remove console statement 2020-05-26 19:26:47 +05:30
Deepesh Garg
11ea0b1289 fix: Do not add filters in report on accounting dimension creation if it already exists 2020-05-26 19:23:45 +05:30
Abhishek Balam
18e7b60acc feat(Selling): Gross Profit In Quotation (#21795)
* added valuation rate and gross_profit in quotation item table

* modified code to not fetch valuation_rate manually, used set_gross_profit from selling controller
2020-05-26 18:37:02 +05:30
Chinmay Pai
49b2b155b6 fix: sanitize all-products search before displaying results (#21764)
Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-05-26 18:21:11 +05:30
Afshan
c0b4ec52de fix: UX date range field separated in from and to date fields. (#21765)
* fix for issue #21419

* changing group by filter to default Group by Voucher (Consolidated)

* divided date range to seperate from and to date

* divided date range to seperate from and to date for purcase and sales register
2020-05-26 18:20:47 +05:30
Rohan
d28854b3c2 fix: throw error if no serial numbers are found in Pick List (#21915)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-26 18:13:25 +05:30
Anurag Mishra
56357fafeb fix: Added column Expired Leave (#21857) 2020-05-26 18:08:22 +05:30
Deepesh Garg
5fa207f020 fix(UAE): Incorrect VAT rate display in Sales Invoice (#21882) 2020-05-26 18:02:21 +05:30
Anurag Mishra
752ca63fea fix: Was showing opening on date not remaimning leave (#21899) 2020-05-26 18:01:03 +05:30
Anurag Mishra
93e15c5f5c fix: showing Wrong balance on allocation boundary dates (#21904) 2020-05-26 18:00:37 +05:30
Mangesh-Khairnar
7402451b96 fix: shopify error message on failure of sales order creation (#21924) 2020-05-26 17:56:40 +05:30
Mangesh-Khairnar
ddc170521f fix: check for warehouse in the woocommerce settings (#21925) 2020-05-26 17:55:56 +05:30
Rucha Mahabal
c52bbd79bf fix(Healthcare): set company in healthcare service unit setup (#21929) 2020-05-26 17:54:46 +05:30
Marica
74a910ae92 fix: title for onboarding step (#21933)
Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>

Co-authored-by: Shivam Mishra <scmmishra@users.noreply.github.com>
2020-05-26 17:49:34 +05:30
Prssanna Desai
ee70d7a7eb fix: fix function import (#21927) 2020-05-26 17:02:51 +05:30
Rucha Mahabal
f91ed4ce24 fix: add default priority field in SLA 2020-05-26 16:03:47 +05:30
Rucha Mahabal
f3fc544918 fix: SLA tests 2020-05-26 15:03:15 +05:30
Rucha Mahabal
5379e87880 refactor: code cleanup, break functions 2020-05-26 12:48:03 +05:30
Rucha Mahabal
ec6246306c refactor: set variance and SLA as Ongoing on Issue reopen 2020-05-26 12:32:12 +05:30
Rucha Mahabal
899ec36532 feat: added Resolved status with same functionality as Closed 2020-05-26 12:23:28 +05:30
Rucha Mahabal
79ed5755be refactor: remove Hold status 2020-05-25 22:04:04 +05:30
Rucha Mahabal
372aa44b19 feat: implement hold time on Replied status for SLA 2020-05-25 21:37:58 +05:30
Anurag Mishra
a7f42f7256 fix: showing wrong record (#21884) 2020-05-25 19:23:17 +05:30
Anupam Kumar
0a147d5c76 fix: adding dashboard in course and assessment plan (#21889)
* Adding dashboards

* adding dashboard in course and assessment plan
2020-05-25 19:21:48 +05:30
Saqib
48e4abf43f fix: fetch depreciation amount only if depr entry is made (#21893) 2020-05-25 19:21:08 +05:30
Rucha Mahabal
4dd6b9986f fix(healthcare): patient vitals undefined (#21906) 2020-05-25 18:42:01 +05:30
Rucha Mahabal
316d136aca fix(Healthcare): unhide company field in Sample Collection, add field in Rehab DocTypes (#21907)
* fix: unhide company field in Sample Collection

* fix: add and set company field in rehab doctypes
2020-05-25 18:41:47 +05:30
Anurag Mishra
8a1cf45473 fix: Validation for dates (#21886) 2020-05-25 18:39:19 +05:30
Marica
1392489b60 fix: Item Price and Add to Cart not showing on Website (#21903)
* fix: Item Price and Add to Cart not showing on Website

* fix: Use None as default argument
2020-05-25 18:26:01 +05:30
Marica
07f305a1d6 refactor: open link in new tab (#21910) 2020-05-25 16:30:59 +05:30
Rohan
e5395c3ae8 fix: filter batches based on item and warehouse in Pick List (#21780)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-25 15:25:21 +05:30
Vishal Dhayagude
6ff11de2f0 fix: Added gram, pound to ounce conversion (#21709)
* 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 14:54:19 +05:30
Rucha Mahabal
28d1d6c91f Merge pull request #21895 from deepeshgarg007/healthcare_dashboard_fix
fix: Company query for number cards
2020-05-24 22:12:18 +05:30
Deepesh Garg
9f963a2ac7 fix: Company query for number cards 2020-05-24 21:55:47 +05:30
Deepesh Garg
8f34cf59f8 Merge pull request #21891 from Thunderbottom/process-deferred-accounting-fix
fix: set default posting_date value to None
2020-05-24 12:51:00 +05:30
Chinmay D. Pai
0d147b011e fix: set default posting_date value to None
using mutable python defaults, and especially function calls, inside
function definitions causes bugs that can be really hard to debug
sometimes. please refrain from using such defaults.

instead, using None is almost always a sane default. the values can
then be manipulated inside the function instead.

Signed-off-by: Chinmay D. Pai <chinmaydpai@gmail.com>
2020-05-24 00:54:04 +05:30
Deepesh Garg
0b5e990751 Merge pull request #21877 from scmmishra/rename-loan
feat: rename loan management to loan on Desk Page
2020-05-22 16:06:53 +05:30
sahil28297
2b277a7eec fix(patch): rerun remove_duplicate_leave_ledger_entries (#21878) 2020-05-22 15:52:15 +05:30
Shivam Mishra
5cf90baf16 feat: rename loan management to loan on Desk Page 2020-05-22 15:09:57 +05:30
Nabin Hait
78a6b6b45d fix: Remove duplicate leave ledger entry (#21871)
* fix: Remove duplicate leave ledger entry

* fix: Remove duplicate leave ledger entry
2020-05-22 13:13:17 +05:30
Deepesh Garg
8d7f5d342d fix: Item tax template not getting mapped from source to traget doc (#21862) 2020-05-22 12:28:45 +05:30
Deepesh Garg
d1d54ebe41 Merge pull request #21853 from anupamvs/edu-card-report
feat: Added card for reports on education desk
2020-05-22 11:52:39 +05:30
Michelle Alva
1763d3e706 fix: expense account error message in DN (#21851)
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
2020-05-22 10:51:19 +05:30
Chinmay Pai
baef43977b 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>
2020-05-22 10:50:13 +05:30
Marica
dd3e52184c fix: Added Inactive serial no status (#21848) 2020-05-22 10:48:35 +05:30
Deepesh Garg
f131260895 Merge pull request #21804 from netchampfaris/move-address-and-contact-templates-to-frappe
fix: Move address and contact templates to frappe
2020-05-22 09:27:33 +05:30
Anupam K
d7d4bed0b1 adding report card in education desk 2020-05-22 01:10:55 +05:30
Anurag Mishra
c07265ea3f fix: convert goals point to flt (#21844) 2020-05-21 18:47:39 +05:30
sahil28297
82523a5487 fix(set_serial_no_status): auto commit on many writes (#21845) 2020-05-21 18:42:10 +05:30
Prssanna Desai
ce8f8f4ed7 fix: hide delete company transacations button if not system manager (#21839) 2020-05-21 18:35:03 +05:30
rohitwaghchaure
7978907cc8 feat: BOM template (#21262)
Co-authored-by: Marica <maricadsouza221197@gmail.com>
2020-05-21 18:10:13 +05:30
Suraj Shetty
5cef8db4db fix(patch): Handle single value in patch (#21823) 2020-05-21 14:32:24 +05:30
rohitwaghchaure
c43932e653 Merge pull request #21831 from rohitwaghchaure/fixed-forecasting-error-report-python3
fix: dict object has no attribute append
2020-05-21 14:23:46 +05:30
rohitwaghchaure
e8c592698e Merge pull request #21828 from marination/italian-invoice-import
fix: Supplier Invoice No not fetched in Import Supplier Invoice
2020-05-21 14:22:59 +05:30
rohitwaghchaure
7aa8cf6538 Merge pull request #21824 from marination/pick-list-dn
fix: Fetch customer into Delivery Note from Pick List
2020-05-21 14:19:43 +05:30
Rohit Waghchaure
feaf5c7edb fix: dict object has no attribute append 2020-05-21 14:08:25 +05:30
marination
90b4452a25 fix: Supplier Invoice No not fetched in Import Supplier Invoice 2020-05-21 14:03:29 +05:30
marination
7afee887a8 fix: Fetch customer into Delivery Note from Pick List 2020-05-21 13:11:48 +05:30
Marica
1a6dcd7f45 fix: plc conversion rate set infinitely (#21820) 2020-05-21 12:07:43 +05:30
Marica
82f639da59 fix: Employee Advance Return not working (#21812) 2020-05-21 11:35:00 +05:30
Rucha Mahabal
3bbb9a2958 Merge pull request #21817 from akurungadam/develop-13
refactor(Healthcare): IP Admission and Discharge, Minor fixes
2020-05-21 10:12:38 +05:30
Rucha Mahabal
3a6e6af84f fix: add title to validation dialog 2020-05-21 10:02:31 +05:30
Rucha Mahabal
f3a2f1fe20 fix(ip): code cleanup and translations 2020-05-21 09:27:42 +05:30
Rucha Mahabal
d9d1f442df fix: service unit validation and translation 2020-05-21 09:02:46 +05:30
anoop
94762ff4ff fix: invoiced field position, medical department field corrected in query 2020-05-21 03:08:47 +05:30
anoop
c6ee83bf12 fix: inpatient date validation removed, added role perms
service unit defaults not set when created from tree, added validations on after_insert
2020-05-21 02:29:02 +05:30
anoop
b53638c0a3 fix: ip-order dialogs use long text field 2020-05-21 01:34:18 +05:30
anoop
4053c46609 fix: consider only submitted docs for invoicing 2020-05-21 01:31:48 +05:30
anoop
d3961b2a78 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2020-05-21 00:56:42 +05:30
anoop
53257833f8 feat: admission and discharge schedule detials via dialog 2020-05-21 00:55:35 +05:30
Deepesh Garg
0a7002e000 Merge pull request #21814 from deepeshgarg007/trial_balance_project_filter
fix: Project filter in Trial Balance Report
2020-05-20 22:28:19 +05:30
Deepesh Garg
29c748184c fix: Project filter in Trial Baalance Report 2020-05-20 22:15:12 +05:30
anoop
858593b96e fix: service unit create - set fields based on service unit type, added validations 2020-05-20 18:41:48 +05:30
Faris Ansari
ca2b323117 fix: Move address and contact templates to frappe 2020-05-20 14:56:29 +05:30
Deepesh Garg
a8807e2696 Merge branch 'develop' of https://github.com/frappe/erpnext into loan_patch_and_fixes 2020-05-18 11:52:39 +05:30
Deepesh Garg
a63fda9097 Merge branch 'develop' of https://github.com/frappe/erpnext into loan_patch_and_fixes 2020-05-17 23:37:05 +05:30
Deepesh Garg
5ccefdc08a fix: Patch to update old loans 2020-05-17 23:26:59 +05:30
Deepesh Garg
513099d624 fix: Description for various fields 2020-05-17 23:26:37 +05:30
theopen-institute
3373dad708 Added a posting_date field to Fee Schedule, which carries forward to created Fees 2020-05-15 08:51:39 +05:45
barredterra
30d194d8a7 fix: hide transaction-specific for master data 2020-05-11 19:23:54 +02:00
barredterra
53445aa25a fix: customer and supplier data 2020-05-11 19:15:49 +02:00
barredterra
2976831560 fix: truncate account names to max length 2020-05-11 19:15:03 +02:00
barredterra
55c048f56c refactor: query meta data only once 2020-05-11 18:50:02 +02:00
barredterra
7a7add5001 fix(report view): explicitly set column width for 2020-05-11 18:36:57 +02:00
Gavin D'souza
cb1376b036 chore: verbose error message for coa recursion 2020-05-09 12:05:33 +05:30
Myuddin khatri
2f81f754ac fix(crm): fix lead while updating contact details
it use to throw error while updating contact details for lead "Next Contact Date cannot be in the past" is being solved
2020-05-07 15:34:59 +05:30
Rucha Mahabal
8993d38daf fix: set avg response time only when there are responses 2020-05-06 13:37:10 +05:30
Rucha Mahabal
3d891f8e89 fix: set SLA as Ongoing on Issue Reopen 2020-05-06 13:00:33 +05:30
Rucha Mahabal
f2d36364f5 fix: handle issue metrics on Reopen and Close 2020-05-06 12:32:55 +05:30
Rucha Mahabal
f77d7243dc fix: remove Service Level DocType 2020-05-06 11:47:52 +05:30
Rucha Mahabal
fc4c795661 fix: reset issue metrics on Reopen and Split 2020-05-06 11:42:43 +05:30
Rucha Mahabal
a2a1e257ae fix: set Issue metrics using Duration fieldtype 2020-05-06 11:09:33 +05:30
Rucha Mahabal
35d853a476 fix: SLA in issues with Duration Fieldtype 2020-05-05 18:54:50 +05:30
Rucha Mahabal
ec24afb283 fix: change response and resolution fieldtype to Duration in SLA 2020-05-05 10:02:14 +05:30
Gavin D'souza
0c353a64a4 fix: un-using buggy JS frappe.new_doc 2020-05-02 18:58:33 +05:30
Gavin D'souza
af612ddb6d feat: maintain tally voucher numbers
feat: create seperate customer and supplier entries for same party if
case exists
2020-05-01 14:39:11 +05:30
Gavin D'souza
51305a028b feat: prompt that company and COA will be overwritten 2020-05-01 14:37:28 +05:30
Gavin D'souza
3f4fdafdcf Merge branch 'develop' of github.com:frappe/erpnext into tally-migration-feat 2020-04-30 11:45:53 +05:30
gavin
c333797d67 Merge branch 'develop' into tally-migration-feat 2020-04-29 13:10:28 +05:30
Gavin D'souza
f4926a8205 fix: toggle read only for accounts post daybook data processing
style: code comments and updates
2020-04-29 11:21:16 +05:30
Gavin D'souza
6b850b7e71 perf: reduce JS memory heap and maintain namespaces 2020-04-29 10:25:18 +05:30
Rucha Mahabal
0e3a16e267 fix: set metrics duration 2020-04-29 00:13:33 +05:30
Gavin D'souza
0d61b35b0b fix: table cleanups, updated summary block 2020-04-28 18:13:10 +05:30
Gavin D'souza
27b7172fa4 fix: run summary logger
style: indent fixes
2020-04-28 16:32:15 +05:30
Gavin D'souza
2e1b531f4f feat: handle resolve and unresolved errors
restructured and reused components
2020-04-28 16:04:49 +05:30
Gavin D'souza
640636bbcd feat: maintain logs of errors successfully fixed 2020-04-28 16:01:59 +05:30
Gavin D'souza
1b5eea691c feat: order failed import log by creation, handle rollbacks and commits 2020-04-28 15:51:40 +05:30
Rucha Mahabal
2c3f1677f8 fix: commonify SLA and Service Level Doctypes 2020-04-28 14:11:58 +05:30
Gavin D'souza
0805307514 perf: reduce failed_error_log size 2020-04-27 13:42:00 +05:30
Gavin D'souza
82e7a9de28 feat: error log handling
fix: toggle required accounts
2020-04-27 13:12:38 +05:30
Gavin D'souza
38c677689d fix: set default round off acount 2020-04-27 11:50:16 +05:30
Gavin D'souza
2de4a5a7c8 feat: Error logging via doc
fix: Handle duplicate company and COA
feat: Error logging via doc
feat: fetch defaults for accounts
2020-04-27 11:34:00 +05:30
Gavin D'souza
defeb73747 feat: Add Failed error logs
fix: set defaults
2020-04-27 11:32:49 +05:30
Rucha Mahabal
d881dc4784 feat: metrics for Issue 2020-04-24 14:33:34 +05:30
Saqib Ansari
55410e03e4 fix: tests depending on global default company 2020-04-15 12:57:55 +05:30
Saqib Ansari
1f20c99ecf fix: tests depending on global default company 2020-04-14 19:40:25 +05:30
Saqib
b52cd59dc3 Merge branch 'develop' into project-link-for-all-accounts 2020-04-14 14:05:32 +05:30
Saqib Ansari
aa196c0a66 fix: travis 2020-04-14 14:03:02 +05:30
Saqib Ansari
4a85b42da0 fix: travis 2020-04-03 14:31:00 +05:30
Deepesh Garg
eeb9ba81d7 Merge branch 'develop' into project-link-for-all-accounts 2020-03-31 16:07:23 +05:30
Alirio Castro
f1d8fe8d67 Merge pull request #1 from frappe/develop
merge
2020-03-26 23:43:14 -04:00
Saqib Ansari
af1221bcbd chore: add tests and remove test based on allow_cost_center_for_bs_accounts 2020-03-12 17:04:17 +05:30
Saqib Ansari
706c239cf6 fix: remove enable_allow_cost_center_in_entry_of_bs_account 2020-03-11 15:17:10 +05:30
Saqib Ansari
0a42d81993 fix: cannot find get_allow_cost_center_in_entry_of_bs_account 2020-03-11 14:27:40 +05:30
Saqib Ansari
91b307e7f8 fix: project link not set in accounts other than profilt and loss accounts 2020-03-11 13:59:15 +05:30
1891 changed files with 190453 additions and 62898 deletions

14
.editorconfig Normal file
View File

@@ -0,0 +1,14 @@
# Root editor config file
root = true
# Common settings
[*]
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
charset = utf-8
# python, js indentation settings
[{*.py,*.js}]
indent_style = tab
indent_size = 4

View File

@@ -5,7 +5,7 @@
"es6": true
},
"parserOptions": {
"ecmaVersion": 6,
"ecmaVersion": 9,
"sourceType": "module"
},
"extends": "eslint:recommended",
@@ -15,6 +15,14 @@
"tab",
{ "SwitchCase": 1 }
],
"brace-style": [
"error",
"1tbs"
],
"space-unary-ops": [
"error",
{ "words": true }
],
"linebreak-style": [
"error",
"unix"
@@ -44,12 +52,10 @@
"no-control-regex": [
"off"
],
"spaced-comment": [
"warn"
],
"no-trailing-spaces": [
"warn"
]
"space-before-blocks": "warn",
"keyword-spacing": "warn",
"comma-spacing": "warn",
"key-spacing": "warn"
},
"root": true,
"globals": {

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Community Forum
url: https://discuss.erpnext.com/
about: For general QnA, discussions and community help.

48
.github/helper/documentation.py vendored Normal file
View File

@@ -0,0 +1,48 @@
import sys
import requests
from urllib.parse import urlparse
docs_repos = [
"frappe_docs",
"erpnext_documentation",
"erpnext_com",
"frappe_io",
]
def uri_validator(x):
result = urlparse(x)
return all([result.scheme, result.netloc, result.path])
def docs_link_exists(body):
for line in body.splitlines():
for word in line.split():
if word.startswith('http') and uri_validator(word):
parsed_url = urlparse(word)
if parsed_url.netloc == "github.com":
_, org, repo, _type, ref = parsed_url.path.split('/')
if org == "frappe" and repo in docs_repos:
return True
if __name__ == "__main__":
pr = sys.argv[1]
response = requests.get("https://api.github.com/repos/frappe/erpnext/pulls/{}".format(pr))
if response.ok:
payload = response.json()
title = payload.get("title", "").lower()
head_sha = payload.get("head", {}).get("sha")
body = payload.get("body", "").lower()
if title.startswith("feat") and head_sha and "no-docs" not in body:
if docs_link_exists(body):
print("Documentation Link Found. You're Awesome! 🎉")
else:
print("Documentation Link Not Found! ⚠️")
sys.exit(1)
else:
print("Skipping documentation checks... 🏃")

60
.github/helper/translation.py vendored Normal file
View File

@@ -0,0 +1,60 @@
import re
import sys
errors_encounter = 0
pattern = re.compile(r"_\(([\"']{,3})(?P<message>((?!\1).)*)\1(\s*,\s*context\s*=\s*([\"'])(?P<py_context>((?!\5).)*)\5)*(\s*,\s*(.)*?\s*(,\s*([\"'])(?P<js_context>((?!\11).)*)\11)*)*\)")
words_pattern = re.compile(r"_{1,2}\([\"'`]{1,3}.*?[a-zA-Z]")
start_pattern = re.compile(r"_{1,2}\([f\"'`]{1,3}")
f_string_pattern = re.compile(r"_\(f[\"']")
starts_with_f_pattern = re.compile(r"_\(f")
# skip first argument
files = sys.argv[1:]
files_to_scan = [_file for _file in files if _file.endswith(('.py', '.js'))]
for _file in files_to_scan:
with open(_file, 'r') as f:
print(f'Checking: {_file}')
file_lines = f.readlines()
for line_number, line in enumerate(file_lines, 1):
if 'frappe-lint: disable-translate' in line:
continue
start_matches = start_pattern.search(line)
if start_matches:
starts_with_f = starts_with_f_pattern.search(line)
if starts_with_f:
has_f_string = f_string_pattern.search(line)
if has_f_string:
errors_encounter += 1
print(f'\nF-strings are not supported for translations at line number {line_number + 1}\n{line.strip()[:100]}')
continue
else:
continue
match = pattern.search(line)
error_found = False
if not match and line.endswith(',\n'):
# concat remaining text to validate multiline pattern
line = "".join(file_lines[line_number - 1:])
line = line[start_matches.start() + 1:]
match = pattern.match(line)
if not match:
error_found = True
print(f'\nTranslation syntax error at line number {line_number + 1}\n{line.strip()[:100]}')
if not error_found and not words_pattern.search(line):
error_found = True
print(f'\nTranslation is useless because it has no words at line number {line_number + 1}\n{line.strip()[:100]}')
if error_found:
errors_encounter += 1
if errors_encounter > 0:
print('\nVisit "https://frappeframework.com/docs/user/en/translations" to learn about valid translation strings.')
sys.exit(1)
else:
print('\nGood To Go!')

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

24
.github/workflows/docs-checker.yml vendored Normal file
View File

@@ -0,0 +1,24 @@
name: 'Documentation Required'
on:
pull_request:
types: [ opened, synchronize, reopened, edited ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 'Setup Environment'
uses: actions/setup-python@v2
with:
python-version: 3.6
- name: 'Clone repo'
uses: actions/checkout@v2
- name: Validate Docs
env:
PR_NUMBER: ${{ github.event.number }}
run: |
pip install requests --quiet
python $GITHUB_WORKSPACE/.github/helper/documentation.py $PR_NUMBER

View File

@@ -0,0 +1,22 @@
name: Frappe Linter
on:
pull_request:
branches:
- develop
- version-12-hotfix
- version-11-hotfix
jobs:
check_translation:
name: Translation Syntax Check
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Setup python3
uses: actions/setup-python@v1
with:
python-version: 3.6
- name: Validating Translation Syntax
run: |
git fetch origin $GITHUB_BASE_REF:$GITHUB_BASE_REF -q
files=$(git diff --name-only --diff-filter=d $GITHUB_BASE_REF)
python $GITHUB_WORKSPACE/.github/helper/translation.py $files

View File

@@ -9,5 +9,6 @@
"root_login": "root",
"root_password": "travis",
"host_name": "http://test_site:8000",
"install_apps": ["erpnext"]
"install_apps": ["erpnext"],
"throttle_user_limit": 100
}

View File

@@ -3,17 +3,16 @@
# These owners will be the default owners for everything in
# the repo. Unless a later match takes precedence,
* @nabinhait
manufacturing/ @rohitwaghchaure
manufacturing/ @rohitwaghchaure @marination
accounts/ @deepeshgarg007 @nextchamp-saqib
loan_management/ @deepeshgarg007
pos* @nextchamp-saqib
assets/ @nextchamp-saqib
loan_management/ @deepeshgarg007 @rohitwaghchaure
pos* @nextchamp-saqib @rohitwaghchaure
assets/ @nextchamp-saqib @deepeshgarg007
stock/ @marination @rohitwaghchaure
buying/ @marination @rohitwaghchaure
hr/ @Anurag810
projects/ @hrwX
support/ @hrwX
healthcare/ @ruchamahabal
erpnext_integrations/ @Mangesh-Khairnar
buying/ @marination @deepeshgarg007
hr/ @Anurag810 @rohitwaghchaure
projects/ @hrwX @nextchamp-saqib
support/ @hrwX @marination
healthcare/ @ruchamahabal @marination
erpnext_integrations/ @Mangesh-Khairnar @nextchamp-saqib
requirements.txt @gavindsouza

View File

@@ -5,7 +5,7 @@
<p>ERP made simple</p>
</p>
[![Build Status](https://travis-ci.com/frappe/erpnext.svg)](https://travis-ci.com/frappe/erpnext)
[![Build Status](https://api.travis-ci.com/frappe/erpnext.svg?branch=develop)](https://travis-ci.com/frappe/erpnext)
[![Open Source Helpers](https://www.codetriage.com/frappe/erpnext/badges/users.svg)](https://www.codetriage.com/frappe/erpnext)
[![Coverage Status](https://coveralls.io/repos/github/frappe/erpnext/badge.svg?branch=develop)](https://coveralls.io/github/frappe/erpnext?branch=develop)
@@ -16,7 +16,7 @@
ERPNext as a monolith includes the following areas for managing businesses:
1. [Accounting](https://erpnext.com/open-source-accounting)
1. [Inventory](https://erpnext.com/distribution/inventory-management-system)
1. [Warehouse Management](https://erpnext.com/distribution/warehouse-management-system)
1. [CRM](https://erpnext.com/open-source-crm)
1. [Sales](https://erpnext.com/open-source-sales-purchase)
1. [Purchase](https://erpnext.com/open-source-sales-purchase)

View File

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

View File

@@ -0,0 +1,58 @@
{
"cards": [
{
"card": "Total Outgoing Bills"
},
{
"card": "Total Incoming Bills"
},
{
"card": "Total Incoming Payment"
},
{
"card": "Total Outgoing Payment"
}
],
"charts": [
{
"chart": "Profit and Loss",
"width": "Full"
},
{
"chart": "Incoming Bills (Purchase Invoice)",
"width": "Half"
},
{
"chart": "Outgoing Bills (Sales Invoice)",
"width": "Half"
},
{
"chart": "Accounts Receivable Ageing",
"width": "Half"
},
{
"chart": "Accounts Payable Ageing",
"width": "Half"
},
{
"chart": "Budget Variance",
"width": "Full"
},
{
"chart": "Bank Balance",
"width": "Full"
}
],
"creation": "2020-07-17 11:25:34.796608",
"dashboard_name": "Accounts",
"docstatus": 0,
"doctype": "Dashboard",
"idx": 0,
"is_default": 0,
"is_standard": 1,
"modified": "2020-07-22 13:07:34.540574",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounts",
"owner": "Administrator"
}

View File

@@ -1,58 +1,126 @@
{
"custom_fields": [
{
"_assign": null,
"_comments": null,
"_liked_by": null,
"_user_tags": null,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"collapsible_depends_on": null,
"columns": 0,
"creation": "2018-12-28 22:29:21.828090",
"default": null,
"depends_on": null,
"description": null,
"docstatus": 0,
"dt": "Address",
"fetch_from": null,
"fieldname": "tax_category",
"fieldtype": "Link",
"hidden": 0,
"idx": 14,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"insert_after": "fax",
"label": "Tax Category",
"modified": "2018-12-28 22:29:21.828090",
"modified_by": "Administrator",
"name": "Address-tax_category",
"no_copy": 0,
"options": "Tax Category",
"owner": "Administrator",
"parent": null,
"parentfield": null,
"parenttype": null,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"print_width": null,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"translatable": 0,
"unique": 0,
"_assign": null,
"_comments": null,
"_liked_by": null,
"_user_tags": null,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"collapsible_depends_on": null,
"columns": 0,
"creation": "2018-12-28 22:29:21.828090",
"default": null,
"depends_on": null,
"description": null,
"docstatus": 0,
"dt": "Address",
"fetch_from": null,
"fetch_if_empty": 0,
"fieldname": "tax_category",
"fieldtype": "Link",
"hidden": 0,
"hide_border": 0,
"hide_days": 0,
"hide_seconds": 0,
"idx": 15,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_preview": 0,
"in_standard_filter": 0,
"insert_after": "fax",
"label": "Tax Category",
"length": 0,
"mandatory_depends_on": null,
"modified": "2018-12-28 22:29:21.828090",
"modified_by": "Administrator",
"name": "Address-tax_category",
"no_copy": 0,
"options": "Tax Category",
"owner": "Administrator",
"parent": null,
"parentfield": null,
"parenttype": null,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"print_width": null,
"read_only": 0,
"read_only_depends_on": null,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"translatable": 0,
"unique": 0,
"width": null
},
{
"_assign": null,
"_comments": null,
"_liked_by": null,
"_user_tags": null,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"collapsible_depends_on": null,
"columns": 0,
"creation": "2020-10-14 17:41:40.878179",
"default": "0",
"depends_on": null,
"description": null,
"docstatus": 0,
"dt": "Address",
"fetch_from": null,
"fetch_if_empty": 0,
"fieldname": "is_your_company_address",
"fieldtype": "Check",
"hidden": 0,
"hide_border": 0,
"hide_days": 0,
"hide_seconds": 0,
"idx": 20,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_preview": 0,
"in_standard_filter": 0,
"insert_after": "linked_with",
"label": "Is Your Company Address",
"length": 0,
"mandatory_depends_on": null,
"modified": "2020-10-14 17:41:40.878179",
"modified_by": "Administrator",
"name": "Address-is_your_company_address",
"no_copy": 0,
"options": null,
"owner": "Administrator",
"parent": null,
"parentfield": null,
"parenttype": null,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"print_width": null,
"read_only": 0,
"read_only_depends_on": null,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"translatable": 0,
"unique": 0,
"width": null
}
],
"custom_perms": [],
"doctype": "Address",
"property_setters": [],
],
"custom_perms": [],
"doctype": "Address",
"property_setters": [],
"sync_on_migrate": 1
}

View File

@@ -0,0 +1,42 @@
import frappe
from frappe import _
from frappe.contacts.doctype.address.address import Address
from frappe.contacts.doctype.address.address import get_address_templates
class ERPNextAddress(Address):
def validate(self):
self.validate_reference()
super(ERPNextAddress, self).validate()
def link_address(self):
"""Link address based on owner"""
if self.is_your_company_address:
return
return super(ERPNextAddress, self).link_address()
def validate_reference(self):
if self.is_your_company_address and not [
row for row in self.links if row.link_doctype == "Company"
]:
frappe.throw(_("Address needs to be linked to a Company. Please add a row for Company in the Links table."),
title=_("Company Not Linked"))
@frappe.whitelist()
def get_shipping_address(company, address = None):
filters = [
["Dynamic Link", "link_doctype", "=", "Company"],
["Dynamic Link", "link_name", "=", company],
["Address", "is_your_company_address", "=", 1]
]
fields = ["*"]
if address and frappe.db.get_value('Dynamic Link',
{'parent': address, 'link_name': company}):
filters.append(["Address", "name", "=", address])
address = frappe.get_all("Address", filters=filters, fields=fields) or {}
if address:
address_as_dict = address[0]
name, address_template = get_address_templates(address_as_dict)
return address_as_dict.get("name"), frappe.render_template(address_template, address_as_dict)

View File

@@ -0,0 +1,23 @@
{
"chart_name": "Accounts Payable Ageing",
"chart_type": "Report",
"creation": "2020-07-17 11:25:34.564015",
"docstatus": 0,
"doctype": "Dashboard Chart",
"dynamic_filters_json": "{\"company\":\"frappe.defaults.get_user_default(\\\"Company\\\")\",\"report_date\":\"frappe.datetime.now_date()\"}",
"filters_json": "{\"ageing_based_on\":\"Due Date\",\"range1\":30,\"range2\":60,\"range3\":90,\"range4\":120,\"group_by_party\":0,\"based_on_payment_terms\":0}",
"idx": 0,
"is_public": 1,
"is_standard": 1,
"modified": "2020-07-22 12:29:33.584419",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounts Payable Ageing",
"number_of_groups": 0,
"owner": "Administrator",
"report_name": "Accounts Payable",
"timeseries": 0,
"type": "Donut",
"use_report_chart": 1,
"y_axis": []
}

View File

@@ -0,0 +1,23 @@
{
"chart_name": "Accounts Receivable Ageing",
"chart_type": "Report",
"creation": "2020-07-17 11:25:34.535388",
"docstatus": 0,
"doctype": "Dashboard Chart",
"dynamic_filters_json": "{\"company\":\"frappe.defaults.get_user_default(\\\"Company\\\")\",\"report_date\":\"frappe.datetime.now_date()\"}",
"filters_json": "{\"ageing_based_on\":\"Due Date\",\"range1\":30,\"range2\":60,\"range3\":90,\"range4\":120,\"group_by_party\":0,\"based_on_payment_terms\":0,\"show_future_payments\":0,\"show_delivery_notes\":0,\"show_sales_person\":0}",
"idx": 0,
"is_public": 1,
"is_standard": 1,
"modified": "2020-07-22 12:28:42.743551",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounts Receivable Ageing",
"number_of_groups": 0,
"owner": "Administrator",
"report_name": "Accounts Receivable",
"timeseries": 0,
"type": "Donut",
"use_report_chart": 1,
"y_axis": []
}

View File

@@ -0,0 +1,26 @@
{
"chart_name": "Bank Balance",
"chart_type": "Custom",
"creation": "2020-07-17 11:25:34.620221",
"docstatus": 0,
"doctype": "Dashboard Chart",
"dynamic_filters_json": "{\"company\":\"frappe.defaults.get_user_default(\\\"Company\\\")\",\"account\":\"locals[\\\":Company\\\"][frappe.defaults.get_user_default(\\\"Company\\\")][\\\"default_bank_account\\\"]\"}",
"filters_json": "{}",
"idx": 0,
"is_public": 1,
"is_standard": 1,
"last_synced_on": "2020-07-22 12:19:59.879476",
"modified": "2020-07-22 12:21:48.780513",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Balance",
"number_of_groups": 0,
"owner": "Administrator",
"source": "Account Balance Timeline",
"time_interval": "Quarterly",
"timeseries": 0,
"timespan": "Last Year",
"type": "Line",
"use_report_chart": 0,
"y_axis": []
}

View File

@@ -0,0 +1,23 @@
{
"chart_name": "Budget Variance",
"chart_type": "Report",
"creation": "2020-07-17 11:25:34.593061",
"docstatus": 0,
"doctype": "Dashboard Chart",
"dynamic_filters_json": "{\"company\":\"frappe.defaults.get_user_default(\\\"Company\\\")\",\"from_fiscal_year\":\"frappe.sys_defaults.fiscal_year\",\"to_fiscal_year\":\"frappe.sys_defaults.fiscal_year\"}",
"filters_json": "{\"period\":\"Monthly\",\"budget_against\":\"Cost Center\",\"show_cumulative\":0}",
"idx": 0,
"is_public": 1,
"is_standard": 1,
"modified": "2020-07-22 12:24:49.144210",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Budget Variance",
"number_of_groups": 0,
"owner": "Administrator",
"report_name": "Budget Variance Report",
"timeseries": 0,
"type": "Bar",
"use_report_chart": 1,
"y_axis": []
}

View File

@@ -0,0 +1,29 @@
{
"based_on": "posting_date",
"chart_name": "Incoming Bills (Purchase Invoice)",
"chart_type": "Sum",
"color": "#a83333",
"creation": "2020-07-17 11:25:34.479703",
"docstatus": 0,
"doctype": "Dashboard Chart",
"document_type": "Purchase Invoice",
"dynamic_filters_json": "",
"filters_json": "[[\"Purchase Invoice\",\"docstatus\",\"=\",1]]",
"idx": 0,
"is_public": 1,
"is_standard": 1,
"last_synced_on": "2020-07-21 17:37:30.727306",
"modified": "2020-07-21 17:51:07.374917",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Incoming Bills (Purchase Invoice)",
"number_of_groups": 0,
"owner": "Administrator",
"time_interval": "Monthly",
"timeseries": 1,
"timespan": "Last Year",
"type": "Bar",
"use_report_chart": 0,
"value_based_on": "base_net_total",
"y_axis": []
}

View File

@@ -0,0 +1,28 @@
{
"based_on": "posting_date",
"chart_name": "Outgoing Bills (Sales Invoice)",
"chart_type": "Sum",
"color": "#7b933d",
"creation": "2020-07-17 11:25:34.507547",
"docstatus": 0,
"doctype": "Dashboard Chart",
"document_type": "Sales Invoice",
"filters_json": "[[\"Sales Invoice\",\"docstatus\",\"=\",1]]",
"idx": 0,
"is_public": 1,
"is_standard": 1,
"last_synced_on": "2020-07-21 17:37:31.574666",
"modified": "2020-07-21 17:52:03.970530",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Outgoing Bills (Sales Invoice)",
"number_of_groups": 0,
"owner": "Administrator",
"time_interval": "Monthly",
"timeseries": 1,
"timespan": "Last Year",
"type": "Bar",
"use_report_chart": 0,
"value_based_on": "base_net_total",
"y_axis": []
}

View File

@@ -0,0 +1,23 @@
{
"chart_name": "Profit and Loss",
"chart_type": "Report",
"creation": "2020-07-17 11:25:34.448572",
"docstatus": 0,
"doctype": "Dashboard Chart",
"dynamic_filters_json": "{\"company\":\"frappe.defaults.get_user_default(\\\"Company\\\")\",\"from_fiscal_year\":\"frappe.sys_defaults.fiscal_year\",\"to_fiscal_year\":\"frappe.sys_defaults.fiscal_year\"}",
"filters_json": "{\"filter_based_on\":\"Fiscal Year\",\"period_start_date\":\"2020-04-01\",\"period_end_date\":\"2021-03-31\",\"periodicity\":\"Yearly\",\"include_default_book_entries\":1}",
"idx": 0,
"is_public": 1,
"is_standard": 1,
"modified": "2020-07-22 12:33:48.888943",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Profit and Loss",
"number_of_groups": 0,
"owner": "Administrator",
"report_name": "Profit and Loss Statement",
"timeseries": 0,
"type": "Bar",
"use_report_chart": 1,
"y_axis": []
}

View File

@@ -6,9 +6,8 @@ import frappe, json
from frappe import _
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.utils.dashboard import cache_source, get_from_date_from_timespan
from frappe.desk.doctype.dashboard_chart.dashboard_chart import get_period_ending
from frappe.utils.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
@frappe.whitelist()

View File

@@ -1,264 +0,0 @@
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
# License: GNU General Public License v3. See license.txt
import frappe
import json
from frappe.utils import nowdate, add_months, get_date_str
from frappe import _
from erpnext.accounts.utils import get_fiscal_year, get_account_name
def get_company_for_dashboards():
company = frappe.defaults.get_defaults().company
if company:
return company
else:
company_list = frappe.get_list("Company")
if company_list:
return company_list[0].name
return None
def get_data():
return frappe._dict({
"dashboards": get_dashboards(),
"charts": get_charts(),
"number_cards": get_number_cards()
})
def get_dashboards():
return [{
"name": "Accounts",
"dashboard_name": "Accounts",
"doctype": "Dashboard",
"charts": [
{ "chart": "Profit and Loss" , "width": "Full"},
{ "chart": "Incoming Bills (Purchase Invoice)", "width": "Half"},
{ "chart": "Outgoing Bills (Sales Invoice)", "width": "Half"},
{ "chart": "Accounts Receivable Ageing", "width": "Half"},
{ "chart": "Accounts Payable Ageing", "width": "Half"},
{ "chart": "Budget Variance", "width": "Full"},
{ "chart": "Bank Balance", "width": "Full"}
],
"cards": [
{"card": "Total Outgoing Bills"},
{"card": "Total Incoming Bills"},
{"card": "Total Incoming Payment"},
{"card": "Total Outgoing Payment"}
]
}]
def get_charts():
company = frappe.get_doc("Company", get_company_for_dashboards())
bank_account = company.default_bank_account or get_account_name("Bank", company=company.name)
fiscal_year = get_fiscal_year(date=nowdate())
default_cost_center = company.cost_center
return [
{
"doctype": "Dashboard Charts",
"name": "Profit and Loss",
"owner": "Administrator",
"report_name": "Profit and Loss Statement",
"filters_json": json.dumps({
"company": company.name,
"filter_based_on": "Fiscal Year",
"from_fiscal_year": fiscal_year[0],
"to_fiscal_year": fiscal_year[0],
"periodicity": "Monthly",
"include_default_book_entries": 1
}),
"type": "Bar",
'timeseries': 0,
"chart_type": "Report",
"chart_name": _("Profit and Loss"),
"is_custom": 1,
"is_public": 1
},
{
"doctype": "Dashboard Chart",
"time_interval": "Monthly",
"name": "Incoming Bills (Purchase Invoice)",
"chart_name": _("Incoming Bills (Purchase Invoice)"),
"timespan": "Last Year",
"color": "#a83333",
"value_based_on": "base_net_total",
"filters_json": json.dumps([["Purchase Invoice", "docstatus", "=", 1]]),
"chart_type": "Sum",
"timeseries": 1,
"based_on": "posting_date",
"owner": "Administrator",
"document_type": "Purchase Invoice",
"type": "Bar",
"width": "Half",
"is_public": 1
},
{
"doctype": "Dashboard Chart",
"name": "Outgoing Bills (Sales Invoice)",
"time_interval": "Monthly",
"chart_name": _("Outgoing Bills (Sales Invoice)"),
"timespan": "Last Year",
"color": "#7b933d",
"value_based_on": "base_net_total",
"filters_json": json.dumps([["Sales Invoice", "docstatus", "=", 1]]),
"chart_type": "Sum",
"timeseries": 1,
"based_on": "posting_date",
"owner": "Administrator",
"document_type": "Sales Invoice",
"type": "Bar",
"width": "Half",
"is_public": 1
},
{
"doctype": "Dashboard Charts",
"name": "Accounts Receivable Ageing",
"owner": "Administrator",
"report_name": "Accounts Receivable",
"filters_json": json.dumps({
"company": company.name,
"report_date": nowdate(),
"ageing_based_on": "Due Date",
"range1": 30,
"range2": 60,
"range3": 90,
"range4": 120
}),
"type": "Donut",
'timeseries': 0,
"chart_type": "Report",
"chart_name": _("Accounts Receivable Ageing"),
"is_custom": 1,
"is_public": 1
},
{
"doctype": "Dashboard Charts",
"name": "Accounts Payable Ageing",
"owner": "Administrator",
"report_name": "Accounts Payable",
"filters_json": json.dumps({
"company": company.name,
"report_date": nowdate(),
"ageing_based_on": "Due Date",
"range1": 30,
"range2": 60,
"range3": 90,
"range4": 120
}),
"type": "Donut",
'timeseries': 0,
"chart_type": "Report",
"chart_name": _("Accounts Payable Ageing"),
"is_custom": 1,
"is_public": 1
},
{
"doctype": "Dashboard Charts",
"name": "Budget Variance",
"owner": "Administrator",
"report_name": "Budget Variance Report",
"filters_json": json.dumps({
"company": company.name,
"from_fiscal_year": fiscal_year[0],
"to_fiscal_year": fiscal_year[0],
"period": "Monthly",
"budget_against": "Cost Center"
}),
"type": "Bar",
"timeseries": 0,
"chart_type": "Report",
"chart_name": _("Budget Variance"),
"is_custom": 1,
"is_public": 1
},
{
"doctype": "Dashboard Charts",
"name": "Bank Balance",
"time_interval": "Quarterly",
"chart_name": "Bank Balance",
"timespan": "Last Year",
"filters_json": json.dumps({
"company": company.name,
"account": bank_account
}),
"source": "Account Balance Timeline",
"chart_type": "Custom",
"timeseries": 1,
"owner": "Administrator",
"type": "Line",
"width": "Half",
"is_public": 1
},
]
def get_number_cards():
fiscal_year = get_fiscal_year(date=nowdate())
year_start_date = get_date_str(fiscal_year[1])
year_end_date = get_date_str(fiscal_year[2])
return [
{
"doctype": "Number Card",
"document_type": "Payment Entry",
"name": "Total Incoming Payment",
"filters_json": json.dumps([
['Payment Entry', 'docstatus', '=', 1],
['Payment Entry', 'posting_date', 'between', [year_start_date, year_end_date]],
['Payment Entry', 'payment_type', '=', 'Receive']
]),
"label": _("Total Incoming Payment"),
"function": "Sum",
"aggregate_function_based_on": "base_received_amount",
"is_public": 1,
"is_custom": 1,
"show_percentage_stats": 1,
"stats_time_interval": "Monthly"
},
{
"doctype": "Number Card",
"document_type": "Payment Entry",
"name": "Total Outgoing Payment",
"filters_json": json.dumps([
['Payment Entry', 'docstatus', '=', 1],
['Payment Entry', 'posting_date', 'between', [year_start_date, year_end_date]],
['Payment Entry', 'payment_type', '=', 'Pay']
]),
"label": _("Total Outgoing Payment"),
"function": "Sum",
"aggregate_function_based_on": "base_paid_amount",
"is_public": 1,
"is_custom": 1,
"show_percentage_stats": 1,
"stats_time_interval": "Monthly"
},
{
"doctype": "Number Card",
"document_type": "Sales Invoice",
"name": "Total Outgoing Bills",
"filters_json": json.dumps([
['Sales Invoice', 'docstatus', '=', 1],
['Sales Invoice', 'posting_date', 'between', [year_start_date, year_end_date]]
]),
"label": _("Total Outgoing Bills"),
"function": "Sum",
"aggregate_function_based_on": "base_net_total",
"is_public": 1,
"is_custom": 1,
"show_percentage_stats": 1,
"stats_time_interval": "Monthly"
},
{
"doctype": "Number Card",
"document_type": "Purchase Invoice",
"name": "Total Incoming Bills",
"filters_json": json.dumps([
['Purchase Invoice', 'docstatus', '=', 1],
['Purchase Invoice', 'posting_date', 'between', [year_start_date, year_end_date]]
]),
"label": _("Total Incoming Bills"),
"function": "Sum",
"aggregate_function_based_on": "base_net_total",
"is_public": 1,
"is_custom": 1,
"show_percentage_stats": 1,
"stats_time_interval": "Monthly"
}
]

View File

@@ -2,10 +2,11 @@ from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.utils import date_diff, add_months, today, getdate, add_days, flt, get_last_day, cint, get_link_to_form
from frappe.utils import date_diff, add_months, today, getdate, add_days, flt, get_last_day, get_first_day, cint, get_link_to_form, rounded
from erpnext.accounts.utils import get_account_currency
from frappe.email import sendmail_to_system_managers
from frappe.utils.background_jobs import enqueue
from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import get_accounting_dimensions
def validate_service_stop_date(doc):
''' Validates service_stop_date for Purchase Invoice and Sales Invoice '''
@@ -109,6 +110,18 @@ def get_booking_dates(doc, item, posting_date=None):
order by posting_date desc limit 1
''', (doc.company, item.get(deferred_account), doc.doctype, doc.name, item.name), as_dict=True)
prev_gl_via_je = frappe.db.sql('''
SELECT p.name, p.posting_date FROM `tabJournal Entry` p, `tabJournal Entry Account` c
WHERE p.name = c.parent and p.company=%s and c.account=%s
and c.reference_type=%s and c.reference_name=%s
and c.reference_detail_no=%s and c.docstatus < 2 order by posting_date desc limit 1
''', (doc.company, item.get(deferred_account), doc.doctype, doc.name, item.name), as_dict=True)
if prev_gl_via_je:
if (not prev_gl_entry) or (prev_gl_entry and
prev_gl_entry[0].posting_date < prev_gl_via_je[0].posting_date):
prev_gl_entry = prev_gl_via_je
if prev_gl_entry:
start_date = getdate(add_days(prev_gl_entry[0].posting_date, 1))
else:
@@ -130,14 +143,48 @@ def get_booking_dates(doc, item, posting_date=None):
else:
return None, None, None
def calculate_amount(doc, item, last_gl_entry, total_days, total_booking_days, account_currency):
if doc.doctype == "Sales Invoice":
total_credit_debit, total_credit_debit_currency = "debit", "debit_in_account_currency"
deferred_account = "deferred_revenue_account"
else:
total_credit_debit, total_credit_debit_currency = "credit", "credit_in_account_currency"
deferred_account = "deferred_expense_account"
def calculate_monthly_amount(doc, item, last_gl_entry, start_date, end_date, total_days, total_booking_days, account_currency):
amount, base_amount = 0, 0
if not last_gl_entry:
total_months = (item.service_end_date.year - item.service_start_date.year) * 12 + \
(item.service_end_date.month - item.service_start_date.month) + 1
prorate_factor = flt(date_diff(item.service_end_date, item.service_start_date)) \
/ flt(date_diff(get_last_day(item.service_end_date), get_first_day(item.service_start_date)))
actual_months = rounded(total_months * prorate_factor, 1)
already_booked_amount, already_booked_amount_in_account_currency = get_already_booked_amount(doc, item)
base_amount = flt(item.base_net_amount / actual_months, item.precision("base_net_amount"))
if base_amount + already_booked_amount > item.base_net_amount:
base_amount = item.base_net_amount - already_booked_amount
if account_currency==doc.company_currency:
amount = base_amount
else:
amount = flt(item.net_amount/actual_months, item.precision("net_amount"))
if amount + already_booked_amount_in_account_currency > item.net_amount:
amount = item.net_amount - already_booked_amount_in_account_currency
if not (get_first_day(start_date) == start_date and get_last_day(end_date) == end_date):
partial_month = flt(date_diff(end_date, start_date)) \
/ flt(date_diff(get_last_day(end_date), get_first_day(start_date)))
base_amount = rounded(partial_month, 1) * base_amount
amount = rounded(partial_month, 1) * amount
else:
already_booked_amount, already_booked_amount_in_account_currency = get_already_booked_amount(doc, item)
base_amount = flt(item.base_net_amount - already_booked_amount, item.precision("base_net_amount"))
if account_currency==doc.company_currency:
amount = base_amount
else:
amount = flt(item.net_amount - already_booked_amount_in_account_currency, item.precision("net_amount"))
return amount, base_amount
def calculate_amount(doc, item, last_gl_entry, total_days, total_booking_days, account_currency):
amount, base_amount = 0, 0
if not last_gl_entry:
base_amount = flt(item.base_net_amount*total_booking_days/flt(total_days), item.precision("base_net_amount"))
@@ -146,27 +193,55 @@ def calculate_amount(doc, item, last_gl_entry, total_days, total_booking_days, a
else:
amount = flt(item.net_amount*total_booking_days/flt(total_days), item.precision("net_amount"))
else:
gl_entries_details = frappe.db.sql('''
select sum({0}) as total_credit, sum({1}) as total_credit_in_account_currency, voucher_detail_no
from `tabGL Entry` where company=%s and account=%s and voucher_type=%s and voucher_no=%s and voucher_detail_no=%s
group by voucher_detail_no
'''.format(total_credit_debit, total_credit_debit_currency),
(doc.company, item.get(deferred_account), doc.doctype, doc.name, item.name), as_dict=True)
already_booked_amount = gl_entries_details[0].total_credit if gl_entries_details else 0
already_booked_amount, already_booked_amount_in_account_currency = get_already_booked_amount(doc, item)
base_amount = flt(item.base_net_amount - already_booked_amount, item.precision("base_net_amount"))
if account_currency==doc.company_currency:
amount = base_amount
else:
already_booked_amount_in_account_currency = gl_entries_details[0].total_credit_in_account_currency if gl_entries_details else 0
amount = flt(item.net_amount - already_booked_amount_in_account_currency, item.precision("net_amount"))
return amount, base_amount
def get_already_booked_amount(doc, item):
if doc.doctype == "Sales Invoice":
total_credit_debit, total_credit_debit_currency = "debit", "debit_in_account_currency"
deferred_account = "deferred_revenue_account"
else:
total_credit_debit, total_credit_debit_currency = "credit", "credit_in_account_currency"
deferred_account = "deferred_expense_account"
gl_entries_details = frappe.db.sql('''
select sum({0}) as total_credit, sum({1}) as total_credit_in_account_currency, voucher_detail_no
from `tabGL Entry` where company=%s and account=%s and voucher_type=%s and voucher_no=%s and voucher_detail_no=%s
group by voucher_detail_no
'''.format(total_credit_debit, total_credit_debit_currency),
(doc.company, item.get(deferred_account), doc.doctype, doc.name, item.name), as_dict=True)
journal_entry_details = frappe.db.sql('''
SELECT sum(c.{0}) as total_credit, sum(c.{1}) as total_credit_in_account_currency, reference_detail_no
FROM `tabJournal Entry` p , `tabJournal Entry Account` c WHERE p.name = c.parent and
p.company = %s and c.account=%s and c.reference_type=%s and c.reference_name=%s and c.reference_detail_no=%s
and p.docstatus < 2 group by reference_detail_no
'''.format(total_credit_debit, total_credit_debit_currency),
(doc.company, item.get(deferred_account), doc.doctype, doc.name, item.name), as_dict=True)
already_booked_amount = gl_entries_details[0].total_credit if gl_entries_details else 0
already_booked_amount += journal_entry_details[0].total_credit if journal_entry_details else 0
if doc.currency == doc.company_currency:
already_booked_amount_in_account_currency = already_booked_amount
else:
already_booked_amount_in_account_currency = gl_entries_details[0].total_credit_in_account_currency if gl_entries_details else 0
already_booked_amount_in_account_currency += journal_entry_details[0].total_credit_in_account_currency if journal_entry_details else 0
return already_booked_amount, already_booked_amount_in_account_currency
def book_deferred_income_or_expense(doc, deferred_process, posting_date=None):
enable_check = "enable_deferred_revenue" \
if doc.doctype=="Sales Invoice" else "enable_deferred_expense"
def _book_deferred_revenue_or_expense(item):
def _book_deferred_revenue_or_expense(item, via_journal_entry, submit_journal_entry, book_deferred_entries_based_on):
start_date, end_date, last_gl_entry = get_booking_dates(doc, item, posting_date=posting_date)
if not (start_date and end_date): return
@@ -181,23 +256,34 @@ def book_deferred_income_or_expense(doc, deferred_process, posting_date=None):
total_days = date_diff(item.service_end_date, item.service_start_date) + 1
total_booking_days = date_diff(end_date, start_date) + 1
amount, base_amount = calculate_amount(doc, item, last_gl_entry,
total_days, total_booking_days, account_currency)
if book_deferred_entries_based_on == 'Months':
amount, base_amount = calculate_monthly_amount(doc, item, last_gl_entry,
start_date, end_date, total_days, total_booking_days, account_currency)
else:
amount, base_amount = calculate_amount(doc, item, last_gl_entry,
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, deferred_process)
if via_journal_entry:
book_revenue_via_journal_entry(doc, credit_account, debit_account, against, amount,
base_amount, end_date, project, account_currency, item.cost_center, item, deferred_process, submit_journal_entry)
else:
make_gl_entries(doc, credit_account, debit_account, against,
amount, base_amount, end_date, project, account_currency, item.cost_center, item, deferred_process)
# Returned in case of any errors because it tries to submit the same record again and again in case of errors
if frappe.flags.deferred_accounting_error:
return
if getdate(end_date) < getdate(posting_date) and not last_gl_entry:
_book_deferred_revenue_or_expense(item)
_book_deferred_revenue_or_expense(item, via_journal_entry, submit_journal_entry, book_deferred_entries_based_on)
via_journal_entry = cint(frappe.db.get_singles_value('Accounts Settings', 'book_deferred_entries_via_journal_entry'))
submit_journal_entry = cint(frappe.db.get_singles_value('Accounts Settings', 'submit_journal_entries'))
book_deferred_entries_based_on = frappe.db.get_singles_value('Accounts Settings', 'book_deferred_entries_based_on')
for item in doc.get('items'):
if item.get(enable_check):
_book_deferred_revenue_or_expense(item)
_book_deferred_revenue_or_expense(item, via_journal_entry, submit_journal_entry, book_deferred_entries_based_on)
def process_deferred_accounting(posting_date=None):
''' Converts deferred income/expense into income/expense
@@ -281,3 +367,83 @@ def send_mail(deferred_process):
and submit manually after resolving errors
""").format(get_link_to_form('Process Deferred Accounting', deferred_process))
sendmail_to_system_managers(title, content)
def book_revenue_via_journal_entry(doc, credit_account, debit_account, against,
amount, base_amount, posting_date, project, account_currency, cost_center, item,
deferred_process=None, submit='No'):
if amount == 0: return
journal_entry = frappe.new_doc('Journal Entry')
journal_entry.posting_date = posting_date
journal_entry.company = doc.company
journal_entry.voucher_type = 'Deferred Revenue' if doc.doctype == 'Sales Invoice' \
else 'Deferred Expense'
debit_entry = {
'account': credit_account,
'credit': base_amount,
'credit_in_account_currency': amount,
'party_type': 'Customer' if doc.doctype == 'Sales Invoice' else 'Supplier',
'party': against,
'account_currency': account_currency,
'reference_name': doc.name,
'reference_type': doc.doctype,
'reference_detail_no': item.name,
'cost_center': cost_center,
'project': project,
}
credit_entry = {
'account': debit_account,
'debit': base_amount,
'debit_in_account_currency': amount,
'party_type': 'Customer' if doc.doctype == 'Sales Invoice' else 'Supplier',
'party': against,
'account_currency': account_currency,
'reference_name': doc.name,
'reference_type': doc.doctype,
'reference_detail_no': item.name,
'cost_center': cost_center,
'project': project,
}
for dimension in get_accounting_dimensions():
debit_entry.update({
dimension: item.get(dimension)
})
credit_entry.update({
dimension: item.get(dimension)
})
journal_entry.append('accounts', debit_entry)
journal_entry.append('accounts', credit_entry)
try:
journal_entry.save()
if submit:
journal_entry.submit()
except:
frappe.db.rollback()
traceback = frappe.get_traceback()
frappe.log_error(message=traceback)
frappe.flags.deferred_accounting_error = True
def get_deferred_booking_accounts(doctype, voucher_detail_no, dr_or_cr):
if doctype == 'Sales Invoice':
credit_account, debit_account = frappe.db.get_value('Sales Invoice Item', {'name': voucher_detail_no},
['income_account', 'deferred_revenue_account'])
else:
credit_account, debit_account = frappe.db.get_value('Purchase Invoice Item', {'name': voucher_detail_no},
['deferred_expense_account', 'expense_account'])
if dr_or_cr == 'Debit':
return debit_account
else:
return credit_account

View File

@@ -13,7 +13,7 @@
{
"hidden": 0,
"label": "Accounts Receivable",
"links": "[\n {\n \"description\": \"Bills raised to Customers.\",\n \"label\": \"Sales Invoice\",\n \"name\": \"Sales Invoice\",\n \"onboard\": 1,\n \"type\": \"doctype\"\n },\n {\n \"description\": \"Customer database.\",\n \"label\": \"Customer\",\n \"name\": \"Customer\",\n \"onboard\": 1,\n \"type\": \"doctype\"\n },\n {\n \"description\": \"Bank/Cash transactions against party or for internal transfer\",\n \"label\": \"Payment Entry\",\n \"name\": \"Payment Entry\",\n \"type\": \"doctype\"\n },\n {\n \"description\": \"Payment Request\",\n \"label\": \"Payment Request\",\n \"name\": \"Payment Request\",\n \"type\": \"doctype\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Accounts Receivable\",\n \"name\": \"Accounts Receivable\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Accounts Receivable Summary\",\n \"name\": \"Accounts Receivable Summary\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Sales Register\",\n \"name\": \"Sales Register\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Item-wise Sales Register\",\n \"name\": \"Item-wise Sales Register\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Ordered Items To Be Billed\",\n \"name\": \"Ordered Items To Be Billed\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Delivered Items To Be Billed\",\n \"name\": \"Delivered Items To Be Billed\",\n \"type\": \"report\"\n }\n]"
"links": "[\n {\n \"description\": \"Bills raised to Customers.\",\n \"label\": \"Sales Invoice\",\n \"name\": \"Sales Invoice\",\n \"onboard\": 1,\n \"type\": \"doctype\"\n },\n {\n \"description\": \"Customer database.\",\n \"label\": \"Customer\",\n \"name\": \"Customer\",\n \"onboard\": 1,\n \"type\": \"doctype\"\n },\n {\n \"description\": \"Bank/Cash transactions against party or for internal transfer\",\n \"label\": \"Payment Entry\",\n \"name\": \"Payment Entry\",\n \"type\": \"doctype\"\n },\n {\n \"description\": \"Payment Request\",\n \"label\": \"Payment Request\",\n \"name\": \"Payment Request\",\n \"type\": \"doctype\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Accounts Receivable\",\n \"name\": \"Accounts Receivable\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Accounts Receivable Summary\",\n \"name\": \"Accounts Receivable Summary\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Sales Register\",\n \"name\": \"Sales Register\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Item-wise Sales Register\",\n \"name\": \"Item-wise Sales Register\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Order\",\n \"is_query_report\": true,\n \"label\": \"Sales Order Analysis\",\n \"name\": \"Sales Order Analysis\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Delivered Items To Be Billed\",\n \"name\": \"Delivered Items To Be Billed\",\n \"type\": \"report\"\n }\n]"
},
{
"hidden": 0,
@@ -23,7 +23,7 @@
{
"hidden": 0,
"label": "Reports",
"links": "[\n {\n \"dependencies\": [\n \"GL Entry\"\n ],\n \"doctype\": \"GL Entry\",\n \"is_query_report\": true,\n \"label\": \"Trial Balance for Party\",\n \"name\": \"Trial Balance for Party\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Journal Entry\"\n ],\n \"doctype\": \"Journal Entry\",\n \"is_query_report\": true,\n \"label\": \"Payment Period Based On Invoice Date\",\n \"name\": \"Payment Period Based On Invoice Date\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Sales Partners Commission\",\n \"name\": \"Sales Partners Commission\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Customer\"\n ],\n \"doctype\": \"Customer\",\n \"is_query_report\": true,\n \"label\": \"Customer Credit Balance\",\n \"name\": \"Customer Credit Balance\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Sales Payment Summary\",\n \"name\": \"Sales Payment Summary\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Address\"\n ],\n \"doctype\": \"Address\",\n \"is_query_report\": true,\n \"label\": \"Address And Contacts\",\n \"name\": \"Address And Contacts\",\n \"type\": \"report\"\n }\n]"
"links": "[\n {\n \"dependencies\": [\n \"GL Entry\"\n ],\n \"doctype\": \"GL Entry\",\n \"is_query_report\": true,\n \"label\": \"Trial Balance for Party\",\n \"name\": \"Trial Balance for Party\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Journal Entry\"\n ],\n \"doctype\": \"Journal Entry\",\n \"is_query_report\": true,\n \"label\": \"Payment Period Based On Invoice Date\",\n \"name\": \"Payment Period Based On Invoice Date\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Sales Partners Commission\",\n \"name\": \"Sales Partners Commission\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Customer\"\n ],\n \"doctype\": \"Customer\",\n \"is_query_report\": true,\n \"label\": \"Customer Credit Balance\",\n \"name\": \"Customer Credit Balance\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Sales Payment Summary\",\n \"name\": \"Sales Payment Summary\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Address\"\n ],\n \"doctype\": \"Address\",\n \"is_query_report\": true,\n \"label\": \"Address And Contacts\",\n \"name\": \"Address And Contacts\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"GL Entry\"\n ],\n \"doctype\": \"GL Entry\",\n \"is_query_report\": true,\n \"label\": \"DATEV Export\",\n \"name\": \"DATEV\",\n \"type\": \"report\"\n }\n]"
},
{
"hidden": 0,
@@ -43,7 +43,7 @@
{
"hidden": 0,
"label": "Bank Statement",
"links": "[\n {\n \"label\": \"Bank\",\n \"name\": \"Bank\",\n \"type\": \"doctype\"\n },\n {\n \"label\": \"Bank Account\",\n \"name\": \"Bank Account\",\n \"type\": \"doctype\"\n },\n {\n \"label\": \"Bank Statement Transaction Entry\",\n \"name\": \"Bank Statement Transaction Entry\",\n \"type\": \"doctype\"\n },\n {\n \"label\": \"Bank Statement Settings\",\n \"name\": \"Bank Statement Settings\",\n \"type\": \"doctype\"\n }\n]"
"links": "[\n {\n \"label\": \"Bank\",\n \"name\": \"Bank\",\n \"type\": \"doctype\"\n },\n {\n \"label\": \"Bank Account\",\n \"name\": \"Bank Account\",\n \"type\": \"doctype\"\n },\n {\n \"label\": \"Bank Clearance\",\n \"name\": \"Bank Clearance\",\n \"type\": \"doctype\"\n },\n {\n \"label\": \"Bank Reconciliation\",\n \"name\": \"bank-reconciliation\",\n \"type\": \"page\"\n },\n {\n \"dependencies\": [\n \"GL Entry\"\n ],\n \"doctype\": \"GL Entry\",\n \"is_query_report\": true,\n \"label\": \"Bank Reconciliation Statement\",\n \"name\": \"Bank Reconciliation Statement\",\n \"type\": \"report\"\n }\n]"
},
{
"hidden": 0,
@@ -53,7 +53,7 @@
{
"hidden": 0,
"label": "Goods and Services Tax (GST India)",
"links": "[\n {\n \"label\": \"GST Settings\",\n \"name\": \"GST Settings\",\n \"type\": \"doctype\"\n },\n {\n \"label\": \"GST HSN Code\",\n \"name\": \"GST HSN Code\",\n \"type\": \"doctype\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GSTR-1\",\n \"name\": \"GSTR-1\",\n \"type\": \"report\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GSTR-2\",\n \"name\": \"GSTR-2\",\n \"type\": \"report\"\n },\n {\n \"label\": \"GSTR 3B Report\",\n \"name\": \"GSTR 3B Report\",\n \"type\": \"doctype\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GST Sales Register\",\n \"name\": \"GST Sales Register\",\n \"type\": \"report\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GST Purchase Register\",\n \"name\": \"GST Purchase Register\",\n \"type\": \"report\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GST Itemised Sales Register\",\n \"name\": \"GST Itemised Sales Register\",\n \"type\": \"report\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GST Itemised Purchase Register\",\n \"name\": \"GST Itemised Purchase Register\",\n \"type\": \"report\"\n },\n {\n \"country\": \"India\",\n \"description\": \"C-Form records\",\n \"label\": \"C-Form\",\n \"name\": \"C-Form\",\n \"type\": \"doctype\"\n }\n]"
"links": "[\n {\n \"label\": \"GST Settings\",\n \"name\": \"GST Settings\",\n \"type\": \"doctype\"\n },\n {\n \"label\": \"GST HSN Code\",\n \"name\": \"GST HSN Code\",\n \"type\": \"doctype\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GSTR-1\",\n \"name\": \"GSTR-1\",\n \"type\": \"report\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GSTR-2\",\n \"name\": \"GSTR-2\",\n \"type\": \"report\"\n },\n {\n \"label\": \"GSTR 3B Report\",\n \"name\": \"GSTR 3B Report\",\n \"type\": \"doctype\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GST Sales Register\",\n \"name\": \"GST Sales Register\",\n \"type\": \"report\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GST Purchase Register\",\n \"name\": \"GST Purchase Register\",\n \"type\": \"report\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GST Itemised Sales Register\",\n \"name\": \"GST Itemised Sales Register\",\n \"type\": \"report\"\n },\n {\n \"is_query_report\": true,\n \"label\": \"GST Itemised Purchase Register\",\n \"name\": \"GST Itemised Purchase Register\",\n \"type\": \"report\"\n },\n {\n \"country\": \"India\",\n \"description\": \"C-Form records\",\n \"label\": \"C-Form\",\n \"name\": \"C-Form\",\n \"type\": \"doctype\"\n },\n {\n \"country\": \"India\",\n \"label\": \"Lower Deduction Certificate\",\n \"name\": \"Lower Deduction Certificate\",\n \"type\": \"doctype\"\n }\n]"
},
{
"hidden": 0,
@@ -79,6 +79,11 @@
"hidden": 0,
"label": "Profitability",
"links": "[\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Gross Profit\",\n \"name\": \"Gross Profit\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"GL Entry\"\n ],\n \"doctype\": \"GL Entry\",\n \"is_query_report\": true,\n \"label\": \"Profitability Analysis\",\n \"name\": \"Profitability Analysis\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Sales Invoice\"\n ],\n \"doctype\": \"Sales Invoice\",\n \"is_query_report\": true,\n \"label\": \"Sales Invoice Trends\",\n \"name\": \"Sales Invoice Trends\",\n \"type\": \"report\"\n },\n {\n \"dependencies\": [\n \"Purchase Invoice\"\n ],\n \"doctype\": \"Purchase Invoice\",\n \"is_query_report\": true,\n \"label\": \"Purchase Invoice Trends\",\n \"name\": \"Purchase Invoice Trends\",\n \"type\": \"report\"\n }\n]"
},
{
"hidden": 0,
"label": "Value-Added Tax (VAT UAE)",
"links": "[\n {\n \"country\": \"United Arab Emirates\",\n \"label\": \"UAE VAT Settings\",\n \"name\": \"UAE VAT Settings\",\n \"type\": \"doctype\"\n },\n {\n \"country\": \"United Arab Emirates\",\n \"is_query_report\": true,\n \"label\": \"UAE VAT 201\",\n \"name\": \"UAE VAT 201\",\n \"type\": \"report\"\n }\n\n]"
}
],
"category": "Modules",
@@ -98,7 +103,7 @@
"idx": 0,
"is_standard": 1,
"label": "Accounting",
"modified": "2020-05-27 20:34:50.949772",
"modified": "2020-11-11 18:35:11.542909",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounting",
@@ -122,11 +127,6 @@
"link_to": "Purchase Invoice",
"type": "DocType"
},
{
"label": "Dashboard",
"link_to": "Accounts",
"type": "Dashboard"
},
{
"label": "Journal Entry",
"link_to": "Journal Entry",
@@ -151,6 +151,11 @@
"label": "Trial Balance",
"link_to": "Trial Balance",
"type": "Report"
},
{
"label": "Dashboard",
"link_to": "Accounts",
"type": "Dashboard"
}
]
}

View File

@@ -34,11 +34,15 @@
{
"fieldname": "properties",
"fieldtype": "Section Break",
"oldfieldtype": "Section Break"
"oldfieldtype": "Section Break",
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "column_break0",
"fieldtype": "Column Break",
"show_days": 1,
"show_seconds": 1,
"width": "50%"
},
{
@@ -49,7 +53,9 @@
"no_copy": 1,
"oldfieldname": "account_name",
"oldfieldtype": "Data",
"reqd": 1
"reqd": 1,
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "account_number",
@@ -57,13 +63,17 @@
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Account Number",
"read_only": 1
"read_only": 1,
"show_days": 1,
"show_seconds": 1
},
{
"default": "0",
"fieldname": "is_group",
"fieldtype": "Check",
"label": "Is Group"
"label": "Is Group",
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "company",
@@ -75,7 +85,9 @@
"options": "Company",
"read_only": 1,
"remember_last_selected_value": 1,
"reqd": 1
"reqd": 1,
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "root_type",
@@ -83,7 +95,9 @@
"in_standard_filter": 1,
"label": "Root Type",
"options": "\nAsset\nLiability\nIncome\nExpense\nEquity",
"read_only": 1
"read_only": 1,
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "report_type",
@@ -91,24 +105,32 @@
"in_standard_filter": 1,
"label": "Report Type",
"options": "\nBalance Sheet\nProfit and Loss",
"read_only": 1
"read_only": 1,
"show_days": 1,
"show_seconds": 1
},
{
"depends_on": "eval:doc.is_group==0",
"fieldname": "account_currency",
"fieldtype": "Link",
"label": "Currency",
"options": "Currency"
"options": "Currency",
"show_days": 1,
"show_seconds": 1
},
{
"default": "0",
"fieldname": "inter_company_account",
"fieldtype": "Check",
"label": "Inter Company Account"
"label": "Inter Company Account",
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "column_break1",
"fieldtype": "Column Break",
"show_days": 1,
"show_seconds": 1,
"width": "50%"
},
{
@@ -120,7 +142,9 @@
"oldfieldtype": "Link",
"options": "Account",
"reqd": 1,
"search_index": 1
"search_index": 1,
"show_days": 1,
"show_seconds": 1
},
{
"description": "Setting Account Type helps in selecting this Account in transactions.",
@@ -130,7 +154,9 @@
"label": "Account Type",
"oldfieldname": "account_type",
"oldfieldtype": "Select",
"options": "\nAccumulated Depreciation\nAsset Received But Not Billed\nBank\nCash\nChargeable\nCapital Work in Progress\nCost of Goods Sold\nDepreciation\nEquity\nExpense Account\nExpenses Included In Asset Valuation\nExpenses Included In Valuation\nFixed Asset\nIncome Account\nPayable\nReceivable\nRound Off\nStock\nStock Adjustment\nStock Received But Not Billed\nTax\nTemporary"
"options": "\nAccumulated Depreciation\nAsset Received But Not Billed\nBank\nCash\nChargeable\nCapital Work in Progress\nCost of Goods Sold\nDepreciation\nEquity\nExpense Account\nExpenses Included In Asset Valuation\nExpenses Included In Valuation\nFixed Asset\nIncome Account\nPayable\nReceivable\nRound Off\nStock\nStock Adjustment\nStock Received But Not Billed\nService Received But Not Billed\nTax\nTemporary",
"show_days": 1,
"show_seconds": 1
},
{
"description": "Rate at which this tax is applied",
@@ -138,7 +164,9 @@
"fieldtype": "Float",
"label": "Rate",
"oldfieldname": "tax_rate",
"oldfieldtype": "Currency"
"oldfieldtype": "Currency",
"show_days": 1,
"show_seconds": 1
},
{
"description": "If the account is frozen, entries are allowed to restricted users.",
@@ -147,13 +175,17 @@
"label": "Frozen",
"oldfieldname": "freeze_account",
"oldfieldtype": "Select",
"options": "No\nYes"
"options": "No\nYes",
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "balance_must_be",
"fieldtype": "Select",
"label": "Balance must be",
"options": "\nDebit\nCredit"
"options": "\nDebit\nCredit",
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "lft",
@@ -162,7 +194,9 @@
"label": "Lft",
"print_hide": 1,
"read_only": 1,
"search_index": 1
"search_index": 1,
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "rgt",
@@ -171,7 +205,9 @@
"label": "Rgt",
"print_hide": 1,
"read_only": 1,
"search_index": 1
"search_index": 1,
"show_days": 1,
"show_seconds": 1
},
{
"fieldname": "old_parent",
@@ -179,27 +215,33 @@
"hidden": 1,
"label": "Old Parent",
"print_hide": 1,
"read_only": 1
"read_only": 1,
"show_days": 1,
"show_seconds": 1
},
{
"default": "0",
"depends_on": "eval:(doc.report_type == 'Profit and Loss' && !doc.is_group)",
"fieldname": "include_in_gross",
"fieldtype": "Check",
"label": "Include in gross"
"label": "Include in gross",
"show_days": 1,
"show_seconds": 1
},
{
"default": "0",
"fieldname": "disabled",
"fieldtype": "Check",
"label": "Disable"
"label": "Disable",
"show_days": 1,
"show_seconds": 1
}
],
"icon": "fa fa-money",
"idx": 1,
"is_tree": 1,
"links": [],
"modified": "2020-03-18 17:57:52.063233",
"modified": "2020-06-11 15:15:54.338622",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Account",

View File

@@ -101,7 +101,7 @@ class Account(NestedSet):
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]))
frappe.throw(_("Please add the account to root level Company - {}").format(ancestors[0]))
elif self.parent_account:
descendants = get_descendants_of('Company', self.company)
if not descendants: return
@@ -117,7 +117,9 @@ class Account(NestedSet):
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):
@@ -162,9 +164,19 @@ class Account(NestedSet):
def create_account_for_child_company(self, parent_acc_name_map, descendants, parent_acc_name):
for company in descendants:
company_bold = frappe.bold(company)
parent_acc_name_bold = frappe.bold(parent_acc_name)
if not parent_acc_name_map.get(company):
frappe.throw(_("While creating account for child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA")
.format(company, parent_acc_name))
frappe.throw(_("While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA")
.format(company_bold, parent_acc_name_bold), title=_("Account Not Found"))
# validate if parent of child company account to be added is a group
if (frappe.db.get_value("Account", self.parent_account, "is_group")
and not frappe.db.get_value("Account", parent_acc_name_map[company], "is_group")):
msg = _("While creating account for Child Company {0}, parent account {1} found as a ledger account.").format(company_bold, parent_acc_name_bold)
msg += "<br><br>"
msg += _("Please convert the parent account in corresponding child company to a group account.")
frappe.throw(msg, title=_("Invalid Parent Account"))
filters = {
"account_name": self.account_name,
@@ -244,6 +256,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
@@ -287,10 +301,31 @@ def validate_account_number(name, account_number, company):
.format(account_number, account_with_same_number))
@frappe.whitelist()
def update_account_number(name, account_name, account_number=None):
def update_account_number(name, account_name, account_number=None, from_descendant=False):
account = frappe.db.get_value("Account", name, "company", as_dict=True)
if not account: return
old_acc_name, old_acc_number = frappe.db.get_value('Account', name, \
["account_name", "account_number"])
# check if account exists in parent company
ancestors = get_ancestors_of("Company", account.company)
allow_independent_account_creation = frappe.get_value("Company", account.company, "allow_account_creation_against_child_company")
if ancestors and not allow_independent_account_creation:
for ancestor in ancestors:
if frappe.db.get_value("Account", {'account_name': old_acc_name, 'company': ancestor}, 'name'):
# same account in parent company exists
allow_child_account_creation = _("Allow Account Creation Against Child Company")
message = _("Account {0} exists in parent company {1}.").format(frappe.bold(old_acc_name), frappe.bold(ancestor))
message += "<br>"
message += _("Renaming it is only allowed via parent company {0}, to avoid mismatch.").format(frappe.bold(ancestor))
message += "<br><br>"
message += _("To overrule this, enable '{0}' in company {1}").format(allow_child_account_creation, frappe.bold(account.company))
frappe.throw(message, title=_("Rename Not Allowed"))
validate_account_number(name, account_number, account.company)
if account_number:
frappe.db.set_value("Account", name, "account_number", account_number.strip())
@@ -298,6 +333,12 @@ def update_account_number(name, account_name, account_number=None):
frappe.db.set_value("Account", name, "account_number", "")
frappe.db.set_value("Account", name, "account_name", account_name.strip())
if not from_descendant:
# Update and rename in child company accounts as well
descendants = get_descendants_of('Company', account.company)
if descendants:
sync_update_account_number_in_child(descendants, old_acc_name, account_name, account_number, old_acc_number)
new_name = get_account_autoname(account_number, account_name, account.company)
if name != new_name:
frappe.rename_doc("Account", name, new_name, force=1)
@@ -328,3 +369,14 @@ def get_root_company(company):
# return the topmost company in the hierarchy
ancestors = get_ancestors_of('Company', company, "lft asc")
return [ancestors[0]] if ancestors else []
def sync_update_account_number_in_child(descendants, old_acc_name, account_name, account_number=None, old_acc_number=None):
filters = {
"company": ["in", descendants],
"account_name": old_acc_name,
}
if old_acc_number:
filters["account_number"] = old_acc_number
for d in frappe.db.get_values('Account', filters=filters, fieldname=["company", "name"], as_dict=True):
update_account_number(d["name"], account_name, account_number, from_descendant=True)

View File

@@ -2,7 +2,7 @@ frappe.provide("frappe.treeview_settings")
frappe.treeview_settings["Account"] = {
breadcrumb: "Accounts",
title: __("Chart Of 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: {
@@ -94,7 +97,7 @@ frappe.treeview_settings["Account"] = {
treeview.page.add_inner_button(__("Journal Entry"), function() {
frappe.new_doc('Journal Entry', {company: get_company()});
}, __('Create'));
treeview.page.add_inner_button(__("New Company"), function() {
treeview.page.add_inner_button(__("Company"), function() {
frappe.new_doc('Company');
}, __('Create'));

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

@@ -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

@@ -5,8 +5,7 @@ from __future__ import unicode_literals
import unittest
import frappe
from erpnext.stock import get_warehouse_account, get_company_default_inventory_account
from erpnext.accounts.doctype.account.account import update_account_number
from erpnext.accounts.doctype.account.account import merge_account
from erpnext.accounts.doctype.account.account import update_account_number, merge_account
class TestAccount(unittest.TestCase):
def test_rename_account(self):
@@ -99,7 +98,8 @@ class TestAccount(unittest.TestCase):
"Softwares - _TC", doc.is_group, doc.root_type, doc.company)
def test_account_sync(self):
del frappe.local.flags["ignore_root_company_validation"]
frappe.local.flags.pop("ignore_root_company_validation", None)
acc = frappe.new_doc("Account")
acc.account_name = "Test Sync Account"
acc.parent_account = "Temporary Accounts - _TC3"
@@ -111,7 +111,68 @@ class TestAccount(unittest.TestCase):
self.assertEqual(acc_tc_4, "Test Sync Account - _TC4")
self.assertEqual(acc_tc_5, "Test Sync Account - _TC5")
def _make_test_records(verbose):
def test_add_account_to_a_group(self):
frappe.db.set_value("Account", "Office Rent - _TC3", "is_group", 1)
acc = frappe.new_doc("Account")
acc.account_name = "Test Group Account"
acc.parent_account = "Office Rent - _TC3"
acc.company = "_Test Company 3"
self.assertRaises(frappe.ValidationError, acc.insert)
frappe.db.set_value("Account", "Office Rent - _TC3", "is_group", 0)
def test_account_rename_sync(self):
frappe.local.flags.pop("ignore_root_company_validation", None)
acc = frappe.new_doc("Account")
acc.account_name = "Test Rename Account"
acc.parent_account = "Temporary Accounts - _TC3"
acc.company = "_Test Company 3"
acc.insert()
# Rename account in parent company
update_account_number(acc.name, "Test Rename Sync Account", "1234")
# Check if renamed in children
self.assertTrue(frappe.db.exists("Account", {'account_name': "Test Rename Sync Account", "company": "_Test Company 4", "account_number": "1234"}))
self.assertTrue(frappe.db.exists("Account", {'account_name': "Test Rename Sync Account", "company": "_Test Company 5", "account_number": "1234"}))
frappe.delete_doc("Account", "1234 - Test Rename Sync Account - _TC3")
frappe.delete_doc("Account", "1234 - Test Rename Sync Account - _TC4")
frappe.delete_doc("Account", "1234 - Test Rename Sync Account - _TC5")
def test_child_company_account_rename_sync(self):
frappe.local.flags.pop("ignore_root_company_validation", None)
acc = frappe.new_doc("Account")
acc.account_name = "Test Group Account"
acc.parent_account = "Temporary Accounts - _TC3"
acc.is_group = 1
acc.company = "_Test Company 3"
acc.insert()
self.assertTrue(frappe.db.exists("Account", {'account_name': "Test Group Account", "company": "_Test Company 4"}))
self.assertTrue(frappe.db.exists("Account", {'account_name': "Test Group Account", "company": "_Test Company 5"}))
# Try renaming child company account
acc_tc_5 = frappe.db.get_value('Account', {'account_name': "Test Group Account", "company": "_Test Company 5"})
self.assertRaises(frappe.ValidationError, update_account_number, acc_tc_5, "Test Modified Account")
# Rename child company account with allow_account_creation_against_child_company enabled
frappe.db.set_value("Company", "_Test Company 5", "allow_account_creation_against_child_company", 1)
update_account_number(acc_tc_5, "Test Modified Account")
self.assertTrue(frappe.db.exists("Account", {'name': "Test Modified Account - _TC5", "company": "_Test Company 5"}))
frappe.db.set_value("Company", "_Test Company 5", "allow_account_creation_against_child_company", 0)
to_delete = ["Test Group Account - _TC3", "Test Group Account - _TC4", "Test Modified Account - _TC5"]
for doc in to_delete:
frappe.delete_doc("Account", doc)
def _make_test_records(verbose=None):
from frappe.test_runner import make_test_objects
accounts = [

View File

@@ -7,7 +7,7 @@ frappe.ui.form.on('Accounting Dimension', {
frm.set_query('document_type', () => {
let invalid_doctypes = frappe.model.core_doctypes_list;
invalid_doctypes.push('Accounting Dimension', 'Project',
'Cost Center', 'Accounting Dimension Detail');
'Cost Center', 'Accounting Dimension Detail', 'Company');
return {
filters: {

View File

@@ -19,7 +19,7 @@ class AccountingDimension(Document):
def validate(self):
if self.document_type in core_doctypes_list + ('Accounting Dimension', 'Project',
'Cost Center', 'Accounting Dimension Detail') :
'Cost Center', 'Accounting Dimension Detail', 'Company') :
msg = _("Not allowed to create accounting dimension for {0}").format(self.document_type)
frappe.throw(msg)
@@ -72,7 +72,11 @@ def make_dimension_in_accounting_doctypes(doc):
if doctype == "Budget":
add_dimension_to_budget_doctype(df, doc)
else:
create_custom_field(doctype, df)
meta = frappe.get_meta(doctype, cached=False)
fieldnames = [d.fieldname for d in meta.get("fields")]
if df['fieldname'] not in fieldnames:
create_custom_field(doctype, df)
count += 1

View File

@@ -19,10 +19,14 @@
"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",
"deferred_accounting_settings_section",
"automatically_process_deferred_accounting_entry",
"book_deferred_entries_based_on",
"column_break_18",
"book_deferred_entries_via_journal_entry",
"submit_journal_entries",
"print_settings",
"show_inclusive_tax_in_print",
"column_break_12",
@@ -36,7 +40,7 @@
"fields": [
{
"default": "1",
"description": "If enabled, the system will post accounting entries for inventory automatically.",
"description": "If enabled, the system will post accounting entries for inventory automatically",
"fieldname": "auto_accounting_for_stock",
"fieldtype": "Check",
"hidden": 1,
@@ -44,23 +48,23 @@
"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.",
"description": "Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below",
"fieldname": "acc_frozen_upto",
"fieldtype": "Date",
"in_list_view": 1,
"label": "Accounts Frozen Upto"
"label": "Accounts Frozen Till Date"
},
{
"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",
"label": "Role Allowed to Set Frozen Accounts and Edit Frozen Entries",
"options": "Role"
},
{
"default": "Billing Address",
"description": "Address used to determine Tax Category in transactions.",
"description": "Address used to determine Tax Category in transactions",
"fieldname": "determine_address_tax_category_from",
"fieldtype": "Select",
"label": "Determine Address Tax Category From",
@@ -71,7 +75,7 @@
"fieldtype": "Column Break"
},
{
"description": "Role that is allowed to submit transactions that exceed credit limits set.",
"description": "This role is allowed to submit transactions that exceed credit limits",
"fieldname": "credit_controller",
"fieldtype": "Link",
"in_list_view": 1,
@@ -100,7 +104,7 @@
"default": "1",
"fieldname": "unlink_advance_payment_on_cancelation_of_order",
"fieldtype": "Check",
"label": "Unlink Advance Payment on Cancelation of Order"
"label": "Unlink Advance Payment on Cancellation of Order"
},
{
"default": "1",
@@ -108,12 +112,6 @@
"fieldtype": "Check",
"label": "Book Asset Depreciation Entry Automatically"
},
{
"default": "0",
"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",
@@ -129,7 +127,7 @@
"default": "0",
"fieldname": "show_inclusive_tax_in_print",
"fieldtype": "Check",
"label": "Show Inclusive Tax In Print"
"label": "Show Inclusive Tax in Print"
},
{
"fieldname": "column_break_12",
@@ -167,7 +165,7 @@
},
{
"default": "0",
"description": "Only select if you have setup Cash Flow Mapper documents",
"description": "Only select this if you have set up the Cash Flow Mapper documents",
"fieldname": "use_custom_cash_flow",
"fieldtype": "Check",
"label": "Use Custom Cash Flow Format"
@@ -179,7 +177,7 @@
"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.",
"description": "The 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 up to $110 ",
"fieldname": "over_billing_allowance",
"fieldtype": "Currency",
"label": "Over Billing Allowance (%)"
@@ -189,13 +187,46 @@
"fieldname": "automatically_process_deferred_accounting_entry",
"fieldtype": "Check",
"label": "Automatically Process Deferred Accounting Entry"
},
{
"fieldname": "deferred_accounting_settings_section",
"fieldtype": "Section Break",
"label": "Deferred Accounting Settings"
},
{
"fieldname": "column_break_18",
"fieldtype": "Column Break"
},
{
"default": "0",
"description": "If this is unchecked, direct GL entries will be created to book deferred revenue or expense",
"fieldname": "book_deferred_entries_via_journal_entry",
"fieldtype": "Check",
"label": "Book Deferred Entries Via Journal Entry"
},
{
"default": "0",
"depends_on": "eval:doc.book_deferred_entries_via_journal_entry",
"description": "If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually",
"fieldname": "submit_journal_entries",
"fieldtype": "Check",
"label": "Submit Journal Entries"
},
{
"default": "Days",
"description": "If \"Months\" is selected, a fixed amount will be booked as deferred revenue or expense for each month irrespective of the number of days in a month. It will be prorated if deferred revenue or expense is not booked for an entire month",
"fieldname": "book_deferred_entries_based_on",
"fieldtype": "Select",
"label": "Book Deferred Entries Based On",
"options": "Days\nMonths"
}
],
"icon": "icon-cog",
"idx": 1,
"index_web_pages_for_search": 1,
"issingle": 1,
"links": [],
"modified": "2019-12-19 16:58:17.395595",
"modified": "2020-10-13 11:32:52.268826",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounts Settings",
@@ -223,4 +254,4 @@
"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

@@ -13,7 +13,6 @@
"bank_name",
"swift_number",
"column_break_1",
"branch_code",
"website",
"address_and_contact",
"address_html",
@@ -51,15 +50,6 @@
"fieldtype": "Column Break",
"search_index": 1
},
{
"allow_in_quick_entry": 1,
"fieldname": "branch_code",
"fieldtype": "Data",
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Branch Code",
"unique": 1
},
{
"fieldname": "address_and_contact",
"fieldtype": "Section Break",
@@ -111,7 +101,7 @@
}
],
"links": [],
"modified": "2020-03-25 21:22:33.496264",
"modified": "2020-07-17 14:00:13.105433",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank",

View File

@@ -23,6 +23,7 @@
"account_details_section",
"iban",
"column_break_12",
"branch_code",
"bank_account_no",
"address_and_contact",
"address_html",
@@ -197,10 +198,16 @@
"fieldtype": "Data",
"label": "Mask",
"read_only": 1
},
{
"fieldname": "branch_code",
"fieldtype": "Data",
"in_global_search": 1,
"label": "Branch Code"
}
],
"links": [],
"modified": "2020-04-06 21:00:45.379804",
"modified": "2020-07-17 13:59:50.795412",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Account",

View File

@@ -60,12 +60,12 @@ class BankClearance(Document):
""".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
@@ -75,7 +75,20 @@ class BankClearance(Document):
si.posting_date ASC, si.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_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

@@ -4,7 +4,7 @@
cur_frm.add_fetch('bank_account','account','account');
cur_frm.add_fetch('bank_account','bank_account_no','bank_account_no');
cur_frm.add_fetch('bank_account','iban','iban');
cur_frm.add_fetch('bank','branch_code','branch_code');
cur_frm.add_fetch('bank_account','branch_code','branch_code');
cur_frm.add_fetch('bank','swift_number','swift_number');
frappe.ui.form.on('Bank Guarantee', {

View File

@@ -27,4 +27,4 @@ def get_vouchar_detials(column_list, doctype, docname):
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

@@ -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

@@ -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
@@ -91,15 +96,11 @@ class TestBankTransaction(unittest.TestCase):
self.assertEqual(frappe.db.get_value("Bank Transaction", bank_transaction.name, "unallocated_amount"), 0)
self.assertTrue(frappe.db.get_value("Sales Invoice Payment", dict(parent=payment.name), "clearance_date") is not None)
def add_transactions():
if frappe.flags.test_bank_transactions_created:
return
frappe.set_user("Administrator")
def create_bank_account(bank_name="Citi Bank", account_name="_Test Bank - _TC"):
try:
frappe.get_doc({
"doctype": "Bank",
"bank_name":"Citi Bank",
"bank_name":bank_name,
}).insert()
except frappe.DuplicateEntryError:
pass
@@ -108,12 +109,19 @@ def add_transactions():
frappe.get_doc({
"doctype": "Bank Account",
"account_name":"Checking Account",
"bank": "Citi Bank",
"account": "_Test Bank - _TC"
"bank": bank_name,
"account": account_name
}).insert()
except frappe.DuplicateEntryError:
pass
def add_transactions():
if frappe.flags.test_bank_transactions_created:
return
frappe.set_user("Administrator")
create_bank_account()
doc = frappe.get_doc({
"doctype": "Bank Transaction",
"description":"1512567 BG/000002918 OPSKATTUZWXXX AT776000000098709837 Herr G",

File diff suppressed because it is too large Load Diff

View File

@@ -158,8 +158,11 @@ class TestBudget(unittest.TestCase):
set_total_expense_zero(nowdate(), "cost_center")
budget = make_budget(budget_against="Cost Center")
month = now_datetime().month
if month > 10:
month = 10
for i in range(now_datetime().month):
for i in range(month):
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", posting_date=nowdate(), submit=True)
@@ -177,8 +180,11 @@ class TestBudget(unittest.TestCase):
set_total_expense_zero(nowdate(), "project")
budget = make_budget(budget_against="Project")
month = now_datetime().month
if month > 10:
month = 10
for i in range(now_datetime().month):
for i in range(month):
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", posting_date=nowdate(), submit=True, project="_Test Project")

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

@@ -94,8 +94,7 @@ frappe.ui.form.on('Chart of Accounts Importer', {
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`));
frappe.throw(__("Transactions against the Company already exist! Chart of Accounts can only be imported for a Company with no transactions."));
} else {
frm.trigger("refresh");
}
@@ -135,7 +134,7 @@ var create_import_button = function(frm) {
callback: function(r) {
if(!r.exc) {
clearInterval(frm.page["interval"]);
frm.page.set_indicator(__('Import Successfull'), 'blue');
frm.page.set_indicator(__('Import Successful'), 'blue');
create_reset_button(frm);
}
}

View File

@@ -195,7 +195,7 @@ def build_response_as_excel(writer):
reader = csv.reader(f)
from frappe.utils.xlsxutils import make_xlsx
xlsx_file = make_xlsx(reader, "Chart Of Accounts Importer Template")
xlsx_file = make_xlsx(reader, "Chart of Accounts Importer Template")
f.close()
os.remove(filename)

View File

@@ -14,7 +14,18 @@ frappe.ui.form.on('Cost Center', {
is_group: 1
}
}
})
});
frm.set_query("cost_center", "distributed_cost_center", function() {
return {
filters: {
company: frm.doc.company,
is_group: 0,
enable_distributed_cost_center: 0,
name: ['!=', frm.doc.name]
}
};
});
},
refresh: function(frm) {
if (!frm.is_new()) {
@@ -60,8 +71,13 @@ frappe.ui.form.on('Cost Center', {
"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() {
@@ -76,8 +92,9 @@ frappe.ui.form.on('Cost Center', {
args: {
docname: frm.doc.name,
cost_center_name: data.cost_center_name,
cost_center_number: data.cost_center_number,
company: frm.doc.company
cost_center_number: cstr(data.cost_center_number),
company: frm.doc.company,
merge: data.merge
},
callback: function(r) {
frappe.dom.unfreeze();

View File

@@ -16,6 +16,9 @@
"cb0",
"is_group",
"disabled",
"section_break_9",
"enable_distributed_cost_center",
"distributed_cost_center",
"lft",
"rgt",
"old_parent"
@@ -119,13 +122,31 @@
"fieldname": "disabled",
"fieldtype": "Check",
"label": "Disabled"
},
{
"default": "0",
"fieldname": "enable_distributed_cost_center",
"fieldtype": "Check",
"label": "Enable Distributed Cost Center"
},
{
"depends_on": "eval:doc.is_group==0",
"fieldname": "section_break_9",
"fieldtype": "Section Break"
},
{
"depends_on": "enable_distributed_cost_center",
"fieldname": "distributed_cost_center",
"fieldtype": "Table",
"label": "Distributed Cost Center",
"options": "Distributed Cost Center"
}
],
"icon": "fa fa-money",
"idx": 1,
"is_tree": 1,
"links": [],
"modified": "2020-04-29 16:09:30.025214",
"modified": "2020-06-17 16:09:30.025214",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Cost Center",

View File

@@ -19,6 +19,24 @@ class CostCenter(NestedSet):
def validate(self):
self.validate_mandatory()
self.validate_parent_cost_center()
self.validate_distributed_cost_center()
def validate_distributed_cost_center(self):
if cint(self.enable_distributed_cost_center):
if not self.distributed_cost_center:
frappe.throw(_("Please enter distributed cost center"))
if sum(x.percentage_allocation for x in self.distributed_cost_center) != 100:
frappe.throw(_("Total percentage allocation for distributed cost center should be equal to 100"))
if not self.get('__islocal'):
if not cint(frappe.get_cached_value("Cost Center", {"name": self.name}, "enable_distributed_cost_center")) \
and self.check_if_part_of_distributed_cost_center():
frappe.throw(_("Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center"))
if next((True for x in self.distributed_cost_center if x.cost_center == x.parent), False):
frappe.throw(_("Parent Cost Center cannot be added in Distributed Cost Center"))
if check_if_distributed_cost_center_enabled(list(x.cost_center for x in self.distributed_cost_center)):
frappe.throw(_("A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table."))
else:
self.distributed_cost_center = []
def validate_mandatory(self):
if self.cost_center_name != self.company and not self.parent_cost_center:
@@ -43,12 +61,15 @@ class CostCenter(NestedSet):
return 1
def convert_ledger_to_group(self):
if cint(self.enable_distributed_cost_center):
frappe.throw(_("Cost Center with enabled distributed cost center can not be converted to group"))
if self.check_if_part_of_distributed_cost_center():
frappe.throw(_("Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group"))
if self.check_gle_exists():
frappe.throw(_("Cost Center with existing transactions can not be converted to group"))
else:
self.is_group = 1
self.save()
return 1
self.is_group = 1
self.save()
return 1
def check_gle_exists(self):
return frappe.db.get_value("GL Entry", {"cost_center": self.name})
@@ -57,6 +78,9 @@ class CostCenter(NestedSet):
return frappe.db.sql("select name from `tabCost Center` where \
parent_cost_center = %s and docstatus != 2", self.name)
def check_if_part_of_distributed_cost_center(self):
return frappe.db.get_value("Distributed Cost Center", {"cost_center": self.name})
def before_rename(self, olddn, newdn, merge=False):
# Add company abbr if not provided
from erpnext.setup.doctype.company.company import get_name_with_abbr
@@ -100,3 +124,7 @@ def get_name_with_number(new_account, account_number):
if account_number and not new_account[0].isdigit():
new_account = account_number + " - " + new_account
return new_account
def check_if_distributed_cost_center_enabled(cost_center_list):
value_list = frappe.get_list("Cost Center", {"name": ["in", cost_center_list]}, "enable_distributed_cost_center", as_list=1)
return next((True for x in value_list if x[0]), False)

View File

@@ -22,6 +22,33 @@ class TestCostCenter(unittest.TestCase):
self.assertRaises(frappe.ValidationError, cost_center.save)
def test_validate_distributed_cost_center(self):
if not frappe.db.get_value('Cost Center', {'name': '_Test Cost Center - _TC'}):
frappe.get_doc(test_records[0]).insert()
if not frappe.db.get_value('Cost Center', {'name': '_Test Cost Center 2 - _TC'}):
frappe.get_doc(test_records[1]).insert()
invalid_distributed_cost_center = frappe.get_doc({
"company": "_Test Company",
"cost_center_name": "_Test Distributed Cost Center",
"doctype": "Cost Center",
"is_group": 0,
"parent_cost_center": "_Test Company - _TC",
"enable_distributed_cost_center": 1,
"distributed_cost_center": [{
"cost_center": "_Test Cost Center - _TC",
"percentage_allocation": 40
}, {
"cost_center": "_Test Cost Center 2 - _TC",
"percentage_allocation": 50
}
]
})
self.assertRaises(frappe.ValidationError, invalid_distributed_cost_center.save)
def create_cost_center(**args):
args = frappe._dict(args)
if args.cost_center_name:

View File

@@ -9,6 +9,8 @@ from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_orde
from erpnext.stock.get_item_details import get_item_details
from frappe.test_runner import make_test_objects
test_dependencies = ['Item']
def test_create_test_data():
frappe.set_user("Administrator")
# create test item
@@ -26,22 +28,22 @@ def test_create_test_data():
"item_group": "_Test Item Group",
"item_name": "_Test Tesla Car",
"apply_warehouse_wise_reorder_level": 0,
"warehouse":"_Test Warehouse - _TC",
"warehouse":"Stores - _TC",
"gst_hsn_code": "999800",
"valuation_rate": 5000,
"standard_rate":5000,
"item_defaults": [{
"company": "_Test Company",
"default_warehouse": "_Test Warehouse - _TC",
"default_warehouse": "Stores - _TC",
"default_price_list":"_Test Price List",
"expense_account": "_Test Account Cost for Goods Sold - _TC",
"buying_cost_center": "_Test Cost Center - _TC",
"selling_cost_center": "_Test Cost Center - _TC",
"expense_account": "Cost of Goods Sold - _TC",
"buying_cost_center": "Main - _TC",
"selling_cost_center": "Main - _TC",
"income_account": "Sales - _TC"
}],
"show_in_website": 1,
"route":"-test-tesla-car",
"website_warehouse": "_Test Warehouse - _TC"
"website_warehouse": "Stores - _TC"
})
item.insert()
# create test item price
@@ -63,7 +65,7 @@ def test_create_test_data():
"items": [{
"item_code": "_Test Tesla Car"
}],
"warehouse":"_Test Warehouse - _TC",
"warehouse":"Stores - _TC",
"coupon_code_based":1,
"selling": 1,
"rate_or_discount": "Discount Percentage",
@@ -83,7 +85,7 @@ def test_create_test_data():
})
sales_partner.insert()
# create test item coupon code
if not frappe.db.exists("Coupon Code","SAVE30"):
if not frappe.db.exists("Coupon Code", "SAVE30"):
coupon_code = frappe.get_doc({
"doctype": "Coupon Code",
"coupon_name":"SAVE30",
@@ -95,38 +97,32 @@ def test_create_test_data():
})
coupon_code.insert()
class TestCouponCode(unittest.TestCase):
def setUp(self):
test_create_test_data()
def tearDown(self):
frappe.set_user("Administrator")
frappe.set_user("Administrator")
def test_1_check_coupon_code_used_before_so(self):
coupon_code = frappe.get_doc("Coupon Code", frappe.db.get_value("Coupon Code", {"coupon_name":"SAVE30"}))
# reset used coupon code count
coupon_code.used=0
coupon_code.save()
# check no coupon code is used before sales order is made
self.assertEqual(coupon_code.get("used"),0)
def test_sales_order_with_coupon_code(self):
frappe.db.set_value("Coupon Code", "SAVE30", "used", 0)
so = make_sales_order(company='_Test Company', warehouse='Stores - _TC',
customer="_Test Customer", selling_price_list="_Test Price List",
item_code="_Test Tesla Car", rate=5000, qty=1,
do_not_submit=True)
def test_2_sales_order_with_coupon_code(self):
so = make_sales_order(customer="_Test Customer",selling_price_list="_Test Price List",item_code="_Test Tesla Car", rate=5000,qty=1, do_not_submit=True)
so = frappe.get_doc('Sales Order', so.name)
# check item price before coupon code is applied
self.assertEqual(so.items[0].rate, 5000)
so.coupon_code='SAVE30'
so.sales_partner='_Test Coupon Partner'
so.save()
# check item price after coupon code is applied
self.assertEqual(so.items[0].rate, 3500)
self.assertEqual(so.items[0].rate, 3500)
so.submit()
def test_3_check_coupon_code_used_after_so(self):
doc = frappe.get_doc("Coupon Code", frappe.db.get_value("Coupon Code", {"coupon_name":"SAVE30"}))
# check no coupon code is used before sales order is made
self.assertEqual(doc.get("used"),1)
self.assertEqual(frappe.db.get_value("Coupon Code", "SAVE30", "used"), 1)

View File

@@ -0,0 +1,40 @@
{
"actions": [],
"creation": "2020-03-19 12:34:01.500390",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"cost_center",
"percentage_allocation"
],
"fields": [
{
"fieldname": "cost_center",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Cost Center",
"options": "Cost Center",
"reqd": 1
},
{
"fieldname": "percentage_allocation",
"fieldtype": "Float",
"in_list_view": 1,
"label": "Percentage Allocation",
"reqd": 1
}
],
"istable": 1,
"links": [],
"modified": "2020-03-19 12:54:43.674655",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Distributed Cost Center",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
# import frappe
from frappe.model.document import Document
class DistributedCostCenter(Document):
pass

View File

@@ -0,0 +1,162 @@
// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
frappe.ui.form.on("Dunning", {
setup: function (frm) {
frm.set_query("sales_invoice", () => {
return {
filters: {
docstatus: 1,
company: frm.doc.company,
outstanding_amount: [">", 0],
status: "Overdue"
},
};
});
frm.set_query("income_account", () => {
return {
filters: {
company: frm.doc.company,
root_type: "Income",
is_group: 0
}
};
});
},
refresh: function (frm) {
frm.set_df_property("company", "read_only", frm.doc.__islocal ? 0 : 1);
frm.set_df_property(
"sales_invoice",
"read_only",
frm.doc.__islocal ? 0 : 1
);
if (frm.doc.docstatus === 1 && frm.doc.status === "Unresolved") {
frm.add_custom_button(__("Resolve"), () => {
frm.set_value("status", "Resolved");
});
}
if (frm.doc.docstatus === 1 && frm.doc.status !== "Resolved") {
frm.add_custom_button(
__("Payment"),
function () {
frm.events.make_payment_entry(frm);
},__("Create")
);
frm.page.set_inner_btn_group_as_primary(__("Create"));
}
if(frm.doc.docstatus > 0) {
frm.add_custom_button(__('Ledger'), function() {
frappe.route_options = {
"voucher_no": frm.doc.name,
"from_date": frm.doc.posting_date,
"to_date": frm.doc.posting_date,
"company": frm.doc.company,
"show_cancelled_entries": frm.doc.docstatus === 2
};
frappe.set_route("query-report", "General Ledger");
}, __('View'));
}
},
overdue_days: function (frm) {
frappe.db.get_value(
"Dunning Type",
{
start_day: ["<", frm.doc.overdue_days],
end_day: [">=", frm.doc.overdue_days],
},
"dunning_type",
(r) => {
if (r) {
frm.set_value("dunning_type", r.dunning_type);
} else {
frm.set_value("dunning_type", "");
frm.set_value("rate_of_interest", "");
frm.set_value("dunning_fee", "");
}
}
);
},
dunning_type: function (frm) {
frm.trigger("get_dunning_letter_text");
},
language: function (frm) {
frm.trigger("get_dunning_letter_text");
},
get_dunning_letter_text: function (frm) {
if (frm.doc.dunning_type) {
frappe.call({
method:
"erpnext.accounts.doctype.dunning.dunning.get_dunning_letter_text",
args: {
dunning_type: frm.doc.dunning_type,
language: frm.doc.language,
doc: frm.doc,
},
callback: function (r) {
if (r.message) {
frm.set_value("body_text", r.message.body_text);
frm.set_value("closing_text", r.message.closing_text);
frm.set_value("language", r.message.language);
} else {
frm.set_value("body_text", "");
frm.set_value("closing_text", "");
}
},
});
}
},
due_date: function (frm) {
frm.trigger("calculate_overdue_days");
},
posting_date: function (frm) {
frm.trigger("calculate_overdue_days");
},
rate_of_interest: function (frm) {
frm.trigger("calculate_interest_and_amount");
},
outstanding_amount: function (frm) {
frm.trigger("calculate_interest_and_amount");
},
interest_amount: function (frm) {
frm.trigger("calculate_interest_and_amount");
},
dunning_fee: function (frm) {
frm.trigger("calculate_interest_and_amount");
},
sales_invoice: function (frm) {
frm.trigger("calculate_overdue_days");
},
calculate_overdue_days: function (frm) {
if (frm.doc.posting_date && frm.doc.due_date) {
const overdue_days = moment(frm.doc.posting_date).diff(
frm.doc.due_date,
"days"
);
frm.set_value("overdue_days", overdue_days);
}
},
calculate_interest_and_amount: function (frm) {
const interest_per_year = frm.doc.outstanding_amount * frm.doc.rate_of_interest / 100;
const interest_amount = flt((interest_per_year * cint(frm.doc.overdue_days)) / 365 || 0, precision('interest_amount'));
const dunning_amount = flt(interest_amount + frm.doc.dunning_fee, precision('dunning_amount'));
const grand_total = flt(frm.doc.outstanding_amount + dunning_amount, precision('grand_total'));
frm.set_value("interest_amount", interest_amount);
frm.set_value("dunning_amount", dunning_amount);
frm.set_value("grand_total", grand_total);
},
make_payment_entry: function (frm) {
return frappe.call({
method:
"erpnext.accounts.doctype.payment_entry.payment_entry.get_payment_entry",
args: {
dt: frm.doc.doctype,
dn: frm.doc.name,
},
callback: function (r) {
var doc = frappe.model.sync(r.message);
frappe.set_route("Form", doc[0].doctype, doc[0].name);
},
});
},
});

View File

@@ -0,0 +1,370 @@
{
"actions": [],
"allow_events_in_timeline": 1,
"autoname": "naming_series:",
"creation": "2019-07-05 16:34:31.013238",
"doctype": "DocType",
"engine": "InnoDB",
"field_order": [
"title",
"naming_series",
"sales_invoice",
"customer",
"customer_name",
"outstanding_amount",
"currency",
"conversion_rate",
"column_break_3",
"company",
"posting_date",
"posting_time",
"due_date",
"overdue_days",
"address_and_contact_section",
"address_display",
"contact_display",
"contact_mobile",
"contact_email",
"column_break_18",
"company_address_display",
"section_break_6",
"dunning_type",
"dunning_fee",
"column_break_8",
"rate_of_interest",
"interest_amount",
"section_break_12",
"dunning_amount",
"grand_total",
"income_account",
"column_break_17",
"status",
"printing_setting_section",
"language",
"body_text",
"column_break_22",
"letter_head",
"closing_text",
"amended_from"
],
"fields": [
{
"fieldname": "company",
"fieldtype": "Link",
"label": "Company",
"options": "Company",
"reqd": 1
},
{
"default": "DUNN-.MM.-.YY.-",
"fieldname": "naming_series",
"fieldtype": "Select",
"label": "Series",
"options": "DUNN-.MM.-.YY.-"
},
{
"fieldname": "sales_invoice",
"fieldtype": "Link",
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Sales Invoice",
"options": "Sales Invoice",
"reqd": 1
},
{
"fetch_from": "sales_invoice.customer_name",
"fieldname": "customer_name",
"fieldtype": "Data",
"in_list_view": 1,
"label": "Customer Name",
"read_only": 1
},
{
"fetch_from": "sales_invoice.outstanding_amount",
"fieldname": "outstanding_amount",
"fieldtype": "Currency",
"label": "Outstanding Amount",
"read_only": 1
},
{
"fieldname": "column_break_3",
"fieldtype": "Column Break"
},
{
"default": "Today",
"fieldname": "posting_date",
"fieldtype": "Date",
"label": "Date"
},
{
"fieldname": "overdue_days",
"fieldtype": "Int",
"label": "Overdue Days",
"read_only": 1
},
{
"fieldname": "section_break_6",
"fieldtype": "Section Break"
},
{
"fieldname": "dunning_type",
"fieldtype": "Link",
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Dunning Type",
"options": "Dunning Type",
"reqd": 1
},
{
"default": "0",
"fieldname": "interest_amount",
"fieldtype": "Currency",
"label": "Interest Amount",
"precision": "2",
"read_only": 1
},
{
"fieldname": "column_break_8",
"fieldtype": "Column Break"
},
{
"default": "0",
"fetch_from": "dunning_type.dunning_fee",
"fetch_if_empty": 1,
"fieldname": "dunning_fee",
"fieldtype": "Currency",
"label": "Dunning Fee",
"precision": "2"
},
{
"fieldname": "section_break_12",
"fieldtype": "Section Break"
},
{
"fieldname": "column_break_17",
"fieldtype": "Column Break"
},
{
"fieldname": "printing_setting_section",
"fieldtype": "Section Break",
"label": "Printing Setting"
},
{
"fieldname": "language",
"fieldtype": "Link",
"label": "Print Language",
"options": "Language"
},
{
"fieldname": "letter_head",
"fieldtype": "Link",
"label": "Letter Head",
"options": "Letter Head"
},
{
"fieldname": "column_break_22",
"fieldtype": "Column Break"
},
{
"fetch_from": "sales_invoice.currency",
"fieldname": "currency",
"fieldtype": "Link",
"hidden": 1,
"label": "Currency",
"options": "Currency",
"read_only": 1
},
{
"fieldname": "amended_from",
"fieldtype": "Link",
"label": "Amended From",
"no_copy": 1,
"options": "Dunning",
"print_hide": 1,
"read_only": 1
},
{
"allow_on_submit": 1,
"default": "{customer_name}",
"fieldname": "title",
"fieldtype": "Data",
"hidden": 1,
"label": "Title"
},
{
"fieldname": "body_text",
"fieldtype": "Text Editor",
"label": "Body Text"
},
{
"fieldname": "closing_text",
"fieldtype": "Text Editor",
"label": "Closing Text"
},
{
"fetch_from": "sales_invoice.due_date",
"fieldname": "due_date",
"fieldtype": "Date",
"label": "Due Date",
"read_only": 1
},
{
"fieldname": "posting_time",
"fieldtype": "Time",
"label": "Posting Time"
},
{
"default": "0",
"fetch_from": "dunning_type.rate_of_interest",
"fetch_if_empty": 1,
"fieldname": "rate_of_interest",
"fieldtype": "Float",
"label": "Rate of Interest (%) Yearly"
},
{
"fieldname": "address_and_contact_section",
"fieldtype": "Section Break",
"label": "Address and Contact"
},
{
"fetch_from": "sales_invoice.address_display",
"fieldname": "address_display",
"fieldtype": "Small Text",
"label": "Address",
"read_only": 1
},
{
"fetch_from": "sales_invoice.contact_display",
"fieldname": "contact_display",
"fieldtype": "Small Text",
"label": "Contact",
"read_only": 1
},
{
"fetch_from": "sales_invoice.contact_mobile",
"fieldname": "contact_mobile",
"fieldtype": "Small Text",
"label": "Mobile No",
"read_only": 1
},
{
"fieldname": "column_break_18",
"fieldtype": "Column Break"
},
{
"fetch_from": "sales_invoice.company_address_display",
"fieldname": "company_address_display",
"fieldtype": "Small Text",
"label": "Company Address",
"read_only": 1
},
{
"fetch_from": "sales_invoice.contact_email",
"fieldname": "contact_email",
"fieldtype": "Data",
"label": "Contact Email",
"options": "Email",
"read_only": 1
},
{
"fetch_from": "sales_invoice.customer",
"fieldname": "customer",
"fieldtype": "Link",
"label": "Customer",
"options": "Customer",
"read_only": 1
},
{
"default": "0",
"fieldname": "grand_total",
"fieldtype": "Currency",
"label": "Grand Total",
"precision": "2",
"read_only": 1
},
{
"allow_on_submit": 1,
"default": "Unresolved",
"fieldname": "status",
"fieldtype": "Select",
"in_standard_filter": 1,
"label": "Status",
"options": "Draft\nResolved\nUnresolved\nCancelled"
},
{
"fieldname": "dunning_amount",
"fieldtype": "Currency",
"hidden": 1,
"label": "Dunning Amount",
"read_only": 1
},
{
"fieldname": "income_account",
"fieldtype": "Link",
"label": "Income Account",
"options": "Account"
},
{
"fetch_from": "sales_invoice.conversion_rate",
"fieldname": "conversion_rate",
"fieldtype": "Float",
"hidden": 1,
"label": "Conversion Rate",
"read_only": 1
}
],
"is_submittable": 1,
"links": [],
"modified": "2020-08-03 18:55:43.683053",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Dunning",
"owner": "Administrator",
"permissions": [
{
"amend": 1,
"cancel": 1,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"share": 1,
"submit": 1,
"write": 1
},
{
"cancel": 1,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager",
"share": 1,
"submit": 1,
"write": 1
},
{
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts User",
"share": 1,
"write": 1
}
],
"sort_field": "modified",
"sort_order": "ASC",
"title_field": "customer_name",
"track_changes": 1
}

View File

@@ -0,0 +1,122 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
import json
from six import string_types
from frappe.utils import getdate, get_datetime, rounded, flt, cint
from erpnext.loan_management.doctype.loan_interest_accrual.loan_interest_accrual import days_in_year
from erpnext.accounts.general_ledger import make_gl_entries, make_reverse_gl_entries
from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import get_accounting_dimensions
from erpnext.controllers.accounts_controller import AccountsController
class Dunning(AccountsController):
def validate(self):
self.validate_overdue_days()
self.validate_amount()
if not self.income_account:
self.income_account = frappe.db.get_value('Company', self.company, 'default_income_account')
def validate_overdue_days(self):
self.overdue_days = (getdate(self.posting_date) - getdate(self.due_date)).days or 0
def validate_amount(self):
amounts = calculate_interest_and_amount(
self.posting_date, self.outstanding_amount, self.rate_of_interest, self.dunning_fee, self.overdue_days)
if self.interest_amount != amounts.get('interest_amount'):
self.interest_amount = flt(amounts.get('interest_amount'), self.precision('interest_amount'))
if self.dunning_amount != amounts.get('dunning_amount'):
self.dunning_amount = flt(amounts.get('dunning_amount'), self.precision('dunning_amount'))
if self.grand_total != amounts.get('grand_total'):
self.grand_total = flt(amounts.get('grand_total'), self.precision('grand_total'))
def on_submit(self):
self.make_gl_entries()
def on_cancel(self):
if self.dunning_amount:
self.ignore_linked_doctypes = ('GL Entry', 'Stock Ledger Entry')
make_reverse_gl_entries(voucher_type=self.doctype, voucher_no=self.name)
def make_gl_entries(self):
if not self.dunning_amount:
return
gl_entries = []
invoice_fields = ["project", "cost_center", "debit_to", "party_account_currency", "conversion_rate", "cost_center"]
inv = frappe.db.get_value("Sales Invoice", self.sales_invoice, invoice_fields, as_dict=1)
accounting_dimensions = get_accounting_dimensions()
invoice_fields.extend(accounting_dimensions)
dunning_in_company_currency = flt(self.dunning_amount * inv.conversion_rate)
default_cost_center = frappe.get_cached_value('Company', self.company, 'cost_center')
gl_entries.append(
self.get_gl_dict({
"account": inv.debit_to,
"party_type": "Customer",
"party": self.customer,
"due_date": self.due_date,
"against": self.income_account,
"debit": dunning_in_company_currency,
"debit_in_account_currency": self.dunning_amount,
"against_voucher": self.name,
"against_voucher_type": "Dunning",
"cost_center": inv.cost_center or default_cost_center,
"project": inv.project
}, inv.party_account_currency, item=inv)
)
gl_entries.append(
self.get_gl_dict({
"account": self.income_account,
"against": self.customer,
"credit": dunning_in_company_currency,
"cost_center": inv.cost_center or default_cost_center,
"credit_in_account_currency": self.dunning_amount,
"project": inv.project
}, item=inv)
)
make_gl_entries(gl_entries, cancel=(self.docstatus == 2), update_outstanding="No", merge_entries=False)
def resolve_dunning(doc, state):
for reference in doc.references:
if reference.reference_doctype == 'Sales Invoice' and reference.outstanding_amount <= 0:
dunnings = frappe.get_list('Dunning', filters={
'sales_invoice': reference.reference_name, 'status': ('!=', 'Resolved')})
for dunning in dunnings:
frappe.db.set_value("Dunning", dunning.name, "status", 'Resolved')
def calculate_interest_and_amount(posting_date, outstanding_amount, rate_of_interest, dunning_fee, overdue_days):
interest_amount = 0
grand_total = 0
if rate_of_interest:
interest_per_year = flt(outstanding_amount) * flt(rate_of_interest) / 100
interest_amount = (interest_per_year * cint(overdue_days)) / 365
grand_total = flt(outstanding_amount) + flt(interest_amount) + flt(dunning_fee)
dunning_amount = flt(interest_amount) + flt(dunning_fee)
return {
'interest_amount': interest_amount,
'grand_total': grand_total,
'dunning_amount': dunning_amount}
@frappe.whitelist()
def get_dunning_letter_text(dunning_type, doc, language=None):
if isinstance(doc, string_types):
doc = json.loads(doc)
if language:
filters = {'parent': dunning_type, 'language': language}
else:
filters = {'parent': dunning_type, 'is_default_language': 1}
letter_text = frappe.db.get_value('Dunning Letter Text', filters,
['body_text', 'closing_text', 'language'], as_dict=1)
if letter_text:
return {
'body_text': frappe.render_template(letter_text.body_text, doc),
'closing_text': frappe.render_template(letter_text.closing_text, doc),
'language': letter_text.language
}

View File

@@ -0,0 +1,17 @@
from __future__ import unicode_literals
from frappe import _
def get_data():
return {
'fieldname': 'dunning',
'non_standard_fieldnames': {
'Journal Entry': 'reference_name',
'Payment Entry': 'reference_name'
},
'transactions': [
{
'label': _('Payment'),
'items': ['Payment Entry', 'Journal Entry']
}
]
}

View File

@@ -0,0 +1,9 @@
frappe.listview_settings["Dunning"] = {
get_indicator: function (doc) {
if (doc.status === "Resolved") {
return [__("Resolved"), "green", "status,=,Resolved"];
} else {
return [__("Unresolved"), "red", "status,=,Unresolved"];
}
},
};

View File

@@ -0,0 +1,100 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
from frappe.utils import add_days, today, nowdate
from erpnext.accounts.doctype.purchase_invoice.test_purchase_invoice import unlink_payment_on_cancel_of_invoice
from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice_against_cost_center
from erpnext.accounts.doctype.dunning.dunning import calculate_interest_and_amount
from erpnext.accounts.doctype.payment_entry.test_payment_entry import get_payment_entry
class TestDunning(unittest.TestCase):
@classmethod
def setUpClass(self):
create_dunning_type()
unlink_payment_on_cancel_of_invoice()
@classmethod
def tearDownClass(self):
unlink_payment_on_cancel_of_invoice(0)
def test_dunning(self):
dunning = create_dunning()
amounts = calculate_interest_and_amount(
dunning.posting_date, dunning.outstanding_amount, dunning.rate_of_interest, dunning.dunning_fee, dunning.overdue_days)
self.assertEqual(round(amounts.get('interest_amount'), 2), 0.44)
self.assertEqual(round(amounts.get('dunning_amount'), 2), 20.44)
self.assertEqual(round(amounts.get('grand_total'), 2), 120.44)
def test_gl_entries(self):
dunning = create_dunning()
dunning.submit()
gl_entries = frappe.db.sql("""select account, debit, credit
from `tabGL Entry` where voucher_type='Dunning' and voucher_no=%s
order by account asc""", dunning.name, as_dict=1)
self.assertTrue(gl_entries)
expected_values = dict((d[0], d) for d in [
['Debtors - _TC', 20.44, 0.0],
['Sales - _TC', 0.0, 20.44]
])
for gle in gl_entries:
self.assertEquals(expected_values[gle.account][0], gle.account)
self.assertEquals(expected_values[gle.account][1], gle.debit)
self.assertEquals(expected_values[gle.account][2], gle.credit)
def test_payment_entry(self):
dunning = create_dunning()
dunning.submit()
pe = get_payment_entry("Dunning", dunning.name)
pe.reference_no = "1"
pe.reference_date = nowdate()
pe.paid_from_account_currency = dunning.currency
pe.paid_to_account_currency = dunning.currency
pe.source_exchange_rate = 1
pe.target_exchange_rate = 1
pe.insert()
pe.submit()
si_doc = frappe.get_doc('Sales Invoice', dunning.sales_invoice)
self.assertEqual(si_doc.outstanding_amount, 0)
def create_dunning():
posting_date = add_days(today(), -20)
due_date = add_days(today(), -15)
sales_invoice = create_sales_invoice_against_cost_center(
posting_date=posting_date, due_date=due_date, status='Overdue')
dunning_type = frappe.get_doc("Dunning Type", 'First Notice')
dunning = frappe.new_doc("Dunning")
dunning.sales_invoice = sales_invoice.name
dunning.customer_name = sales_invoice.customer_name
dunning.outstanding_amount = sales_invoice.outstanding_amount
dunning.debit_to = sales_invoice.debit_to
dunning.currency = sales_invoice.currency
dunning.company = sales_invoice.company
dunning.posting_date = nowdate()
dunning.due_date = sales_invoice.due_date
dunning.dunning_type = 'First Notice'
dunning.rate_of_interest = dunning_type.rate_of_interest
dunning.dunning_fee = dunning_type.dunning_fee
dunning.save()
return dunning
def create_dunning_type():
dunning_type = frappe.new_doc("Dunning Type")
dunning_type.dunning_type = 'First Notice'
dunning_type.start_day = 10
dunning_type.end_day = 20
dunning_type.dunning_fee = 20
dunning_type.rate_of_interest = 8
dunning_type.append(
"dunning_letter_text", {
'language': 'en',
'body_text': 'We have still not received payment for our invoice ',
'closing_text': 'We kindly request that you pay the outstanding amount immediately, including interest and late fees.'
}
)
dunning_type.save()

View File

@@ -0,0 +1,70 @@
{
"actions": [],
"creation": "2019-12-06 04:25:40.215625",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"language",
"is_default_language",
"section_break_4",
"body_text",
"closing_text",
"section_break_7",
"body_and_closing_text_help"
],
"fields": [
{
"fieldname": "language",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Language",
"options": "Language"
},
{
"default": "0",
"fieldname": "is_default_language",
"fieldtype": "Check",
"label": "Is Default Language"
},
{
"fieldname": "section_break_4",
"fieldtype": "Section Break"
},
{
"description": "Letter or Email Body Text",
"fieldname": "body_text",
"fieldtype": "Text Editor",
"in_list_view": 1,
"label": "Body Text"
},
{
"description": "Letter or Email Closing Text",
"fieldname": "closing_text",
"fieldtype": "Text Editor",
"in_list_view": 1,
"label": "Closing Text"
},
{
"fieldname": "section_break_7",
"fieldtype": "Section Break"
},
{
"fieldname": "body_and_closing_text_help",
"fieldtype": "HTML",
"label": "Body and Closing Text Help",
"options": "<h4>Body Text and Closing Text Example</h4>\n\n<div>We have noticed that you have not yet paid invoice {{sales_invoice}} for {{frappe.db.get_value(\"Currency\", currency, \"symbol\")}} {{outstanding_amount}}. This is a friendly reminder that the invoice was due on {{due_date}}. Please pay the amount due immediately to avoid any further dunning cost.</div>\n\n<h4>How to get fieldnames</h4>\n\n<p>The fieldnames you can use in your template are the fields in the document. You can find out the fields of any documents via Setup &gt; Customize Form View and selecting the document type (e.g. Sales Invoice)</p>\n\n<h4>Templating</h4>\n\n<p>Templates are compiled using the Jinja Templating Language. To learn more about Jinja, <a class=\"strong\" href=\"http://jinja.pocoo.org/docs/dev/templates/\">read this documentation.</a></p>"
}
],
"istable": 1,
"links": [],
"modified": "2020-07-14 18:02:35.988958",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Dunning Letter Text",
"owner": "Administrator",
"permissions": [],
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
# import frappe
from frappe.model.document import Document
class DunningLetterText(Document):
pass

View File

@@ -0,0 +1,8 @@
// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
frappe.ui.form.on('Dunning Type', {
// refresh: function(frm) {
// }
});

View File

@@ -0,0 +1,129 @@
{
"actions": [],
"allow_rename": 1,
"autoname": "field:dunning_type",
"creation": "2019-12-04 04:59:08.003664",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"dunning_type",
"overdue_interval_section",
"start_day",
"column_break_4",
"end_day",
"section_break_6",
"dunning_fee",
"column_break_8",
"rate_of_interest",
"text_block_section",
"dunning_letter_text"
],
"fields": [
{
"fieldname": "dunning_type",
"fieldtype": "Data",
"in_list_view": 1,
"label": "Dunning Type",
"reqd": 1,
"unique": 1
},
{
"fieldname": "dunning_fee",
"fieldtype": "Currency",
"in_list_view": 1,
"label": "Dunning Fee"
},
{
"description": "This section allows the user to set the Body and Closing text of the Dunning Letter for the Dunning Type based on language, which can be used in Print.",
"fieldname": "text_block_section",
"fieldtype": "Section Break",
"label": "Dunning Letter"
},
{
"fieldname": "dunning_letter_text",
"fieldtype": "Table",
"options": "Dunning Letter Text"
},
{
"fieldname": "column_break_4",
"fieldtype": "Column Break"
},
{
"fieldname": "section_break_6",
"fieldtype": "Section Break"
},
{
"fieldname": "column_break_8",
"fieldtype": "Column Break"
},
{
"fieldname": "overdue_interval_section",
"fieldtype": "Section Break",
"label": "Overdue Interval"
},
{
"fieldname": "start_day",
"fieldtype": "Int",
"label": "Start Day"
},
{
"fieldname": "end_day",
"fieldtype": "Int",
"label": "End Day"
},
{
"fieldname": "rate_of_interest",
"fieldtype": "Float",
"in_list_view": 1,
"label": "Rate of Interest (%) Yearly"
}
],
"links": [],
"modified": "2020-07-15 17:14:17.835074",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Dunning Type",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"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
},
{
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Administrator",
"share": 1,
"write": 1
}
],
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
# import frappe
from frappe.model.document import Document
class DunningType(Document):
pass

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
# See license.txt
from __future__ import unicode_literals
# import frappe
import unittest
class TestDunningType(unittest.TestCase):
pass

View File

@@ -9,11 +9,7 @@ frappe.ui.form.on('Fiscal Year', {
}
},
refresh: function (frm) {
let doc = frm.doc;
frm.toggle_enable('year_start_date', doc.__islocal);
frm.toggle_enable('year_end_date', doc.__islocal);
if (!doc.__islocal && (doc.name != frappe.sys_defaults.fiscal_year)) {
if (!frm.doc.__islocal && (frm.doc.name != frappe.sys_defaults.fiscal_year)) {
frm.add_custom_button(__("Set as Default"), () => frm.events.set_as_default(frm));
frm.set_intro(__("To set this Fiscal Year as Default, click on 'Set as Default'"));
} else {
@@ -24,8 +20,10 @@ frappe.ui.form.on('Fiscal Year', {
return frm.call('set_as_default');
},
year_start_date: function(frm) {
let year_end_date =
frappe.datetime.add_days(frappe.datetime.add_months(frm.doc.year_start_date, 12), -1);
frm.set_value("year_end_date", year_end_date);
if (!frm.doc.is_short_year) {
let year_end_date =
frappe.datetime.add_days(frappe.datetime.add_months(frm.doc.year_start_date, 12), -1);
frm.set_value("year_end_date", year_end_date);
}
},
});

View File

@@ -1,347 +1,126 @@
{
"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,
"actions": [],
"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,
"set_only_once": 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,
"set_only_once": 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,
"links": [],
"modified": "2020-11-05 12:16:53.081573",
"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)
@@ -116,12 +121,8 @@ def auto_create_fiscal_year():
pass
def get_from_and_to_date(fiscal_year):
from_and_to_date_tuple = frappe.db.sql("""select year_start_date, year_end_date
from `tabFiscal Year` where name=%s""", (fiscal_year))[0]
from_and_to_date = {
"from_date": from_and_to_date_tuple[0],
"to_date": from_and_to_date_tuple[1]
}
return from_and_to_date
fields = [
"year_start_date as from_date",
"year_end_date as to_date"
]
return frappe.db.get_value("Fiscal Year", fiscal_year, fields, as_dict=1)

View File

@@ -13,7 +13,7 @@ def get_data():
},
{
'label': _('References'),
'items': ['Period Closing Voucher', 'Request for Quotation', 'Tax Withholding Category']
'items': ['Period Closing Voucher', 'Tax Withholding Category']
},
{
'label': _('Target Details'),

View File

@@ -11,6 +11,7 @@ test_records = frappe.get_test_records('Fiscal Year')
test_ignore = ["Company"]
class TestFiscalYear(unittest.TestCase):
def test_extra_year(self):
if frappe.db.exists("Fiscal Year", "_Test Fiscal Year 2000"):
frappe.delete_doc("Fiscal Year", "_Test Fiscal Year 2000")

View File

@@ -1,4 +1,11 @@
[
{
"doctype": "Fiscal Year",
"year": "_Test Short Fiscal Year 2011",
"is_short_year": 1,
"year_end_date": "2011-04-01",
"year_start_date": "2011-12-31"
},
{
"doctype": "Fiscal Year",
"year": "_Test Fiscal Year 2012",

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
@@ -30,20 +30,22 @@ class GLEntry(Document):
self.pl_must_have_cost_center()
self.validate_cost_center()
self.check_pl_account()
self.validate_party()
self.validate_currency()
if not self.flags.from_repost:
self.check_pl_account()
self.validate_party()
self.validate_currency()
def on_update_with_args(self, adv_adj, update_outstanding = 'Yes'):
self.validate_account_details(adv_adj)
self.validate_dimensions_for_pl_and_bs()
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()
validate_frozen_account(self.account, adv_adj)
validate_balance_type(self.account, adv_adj)
# Update outstanding amt on against voucher
if self.against_voucher_type in ['Journal Entry', 'Sales Invoice', 'Purchase Invoice', 'Fees'] \
and self.against_voucher and update_outstanding == 'Yes':
and self.against_voucher and update_outstanding == 'Yes' and not from_repost:
update_outstanding_amt(self.account, self.party_type, self.party, self.against_voucher_type,
self.against_voucher)
@@ -72,12 +74,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):
@@ -112,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} is a Group Account and group accounts cannot be used in
transactions''').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")
@@ -134,10 +130,17 @@ 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 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)

View File

@@ -188,14 +188,15 @@ frappe.ui.form.on('Invoice Discounting', {
},
show_general_ledger: (frm) => {
if(frm.doc.docstatus===1) {
if(frm.doc.docstatus > 0) {
cur_frm.add_custom_button(__('Accounting Ledger'), function() {
frappe.route_options = {
voucher_no: frm.doc.name,
from_date: frm.doc.posting_date,
to_date: frm.doc.posting_date,
to_date: moment(frm.doc.modified).format('YYYY-MM-DD'),
company: frm.doc.company,
group_by: "Group by Voucher (Consolidated)"
group_by: "Group by Voucher (Consolidated)",
show_cancelled_entries: frm.doc.docstatus === 2
};
frappe.set_route("query-report", "General Ledger");
}, __("View"));

View File

@@ -3,7 +3,7 @@
# 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
@@ -134,16 +134,20 @@ 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)
})
if self.bank_charges:
je.append("accounts", {
"account": self.bank_charges_account,
"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
})
@@ -151,6 +155,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",
@@ -160,6 +165,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",
@@ -177,13 +183,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()):
@@ -193,6 +201,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",
@@ -202,6 +211,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

@@ -80,6 +80,7 @@ class TestInvoiceDiscounting(unittest.TestCase):
short_term_loan=self.short_term_loan,
bank_charges_account=self.bank_charges_account,
bank_account=self.bank_account,
bank_charges=100
)
je = inv_disc.create_disbursement_entry()
@@ -289,6 +290,7 @@ def create_invoice_discounting(invoices, **args):
inv_disc.bank_account=args.bank_account
inv_disc.loan_start_date = args.start or nowdate()
inv_disc.loan_period = args.period or 30
inv_disc.bank_charges = flt(args.bank_charges)
for d in invoices:
inv_disc.append("invoices", {

View File

@@ -6,6 +6,18 @@ frappe.ui.form.on('Item Tax Template', {
frm.set_query("tax_type", "taxes", function(doc) {
return {
filters: [
['Account', 'company', '=', frm.doc.company],
['Account', 'is_group', '=', 0],
['Account', 'account_type', 'in', ['Tax', 'Chargeable', 'Income Account', 'Expense Account', 'Expenses Included In Valuation']]
]
}
});
},
company: function (frm) {
frm.set_query("tax_type", "taxes", function(doc) {
return {
filters: [
['Account', 'company', '=', frm.doc.company],
['Account', 'is_group', '=', 0],
['Account', 'account_type', 'in', ['Tax', 'Chargeable', 'Income Account', 'Expense Account', 'Expenses Included In Valuation']]
]

View File

@@ -1,168 +1,85 @@
{
"allow_copy": 0,
"allow_events_in_timeline": 0,
"allow_guest_to_view": 0,
"allow_import": 1,
"allow_rename": 1,
"autoname": "field:title",
"beta": 0,
"creation": "2018-11-22 22:45:00.370913",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "Setup",
"editable_grid": 1,
"engine": "InnoDB",
"allow_import": 1,
"allow_rename": 1,
"autoname": "field:title",
"creation": "2018-11-22 22:45:00.370913",
"doctype": "DocType",
"document_type": "Setup",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"title",
"company",
"taxes"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "title",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Title",
"length": 0,
"no_copy": 1,
"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,
"fieldname": "title",
"fieldtype": "Data",
"in_filter": 1,
"in_list_view": 1,
"label": "Title",
"no_copy": 1,
"reqd": 1,
"unique": 1
},
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "taxes",
"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": "Tax Rates",
"length": 0,
"no_copy": 0,
"options": "Item Tax 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,
"translatable": 0,
"unique": 0
"fieldname": "taxes",
"fieldtype": "Table",
"label": "Tax Rates",
"options": "Item Tax Template Detail",
"reqd": 1
},
{
"fieldname": "company",
"fieldtype": "Link",
"label": "Company",
"options": "Company",
"reqd": 1
}
],
"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-12-21 23:51:16.328340",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Item Tax Template",
"name_case": "",
"owner": "Administrator",
],
"modified": "2020-09-18 17:26:09.703215",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Item Tax Template",
"owner": "Administrator",
"permissions": [
{
"amend": 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,
"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
},
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"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,
"write": 0
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts User",
"share": 1
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"search_fields": "",
"show_name_in_global_search": 1,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0,
"track_views": 0
],
"show_name_in_global_search": 1,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

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

@@ -13,15 +13,16 @@ frappe.ui.form.on("Journal Entry", {
refresh: function(frm) {
erpnext.toggle_naming_series();
if(frm.doc.docstatus==1) {
if(frm.doc.docstatus > 0) {
frm.add_custom_button(__('Ledger'), function() {
frappe.route_options = {
"voucher_no": frm.doc.name,
"from_date": frm.doc.posting_date,
"to_date": frm.doc.posting_date,
"to_date": moment(frm.doc.modified).format('YYYY-MM-DD'),
"company": frm.doc.company,
"finance_book": frm.doc.finance_book,
"group_by_voucher": 0
"group_by": '',
"show_cancelled_entries": frm.doc.docstatus === 2
};
frappe.set_route("query-report", "General Ledger");
}, __('View'));
@@ -209,7 +210,7 @@ erpnext.accounts.JournalEntry = frappe.ui.form.Controller.extend({
$.each(this.frm.doc.accounts || [], function(i, jvd) {
frappe.model.set_default_values(jvd);
});
var posting_date = this.frm.posting_date;
var posting_date = this.frm.doc.posting_date;
if(!this.frm.doc.amended_from) this.frm.set_value('posting_date', posting_date || frappe.datetime.get_today());
}
},
@@ -278,7 +279,7 @@ erpnext.accounts.JournalEntry = frappe.ui.form.Controller.extend({
// payroll entry
if(jvd.reference_type==="Payroll Entry") {
return {
query: "erpnext.hr.doctype.payroll_entry.payroll_entry.get_payroll_entries_for_jv",
query: "erpnext.payroll.doctype.payroll_entry.payroll_entry.get_payroll_entries_for_jv",
};
}
@@ -637,20 +638,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, {

View File

@@ -1,5 +1,6 @@
{
"actions": [],
"allow_auto_repeat": 1,
"allow_import": 1,
"autoname": "naming_series:",
"creation": "2013-03-25 10:53:52",
@@ -83,7 +84,7 @@
"label": "Entry Type",
"oldfieldname": "voucher_type",
"oldfieldtype": "Select",
"options": "Journal Entry\nInter Company Journal Entry\nBank Entry\nCash Entry\nCredit Card Entry\nDebit Note\nCredit Note\nContra Entry\nExcise Entry\nWrite Off Entry\nOpening Entry\nDepreciation Entry\nExchange Rate Revaluation",
"options": "Journal Entry\nInter Company Journal Entry\nBank Entry\nCash Entry\nCredit Card Entry\nDebit Note\nCredit Note\nContra Entry\nExcise Entry\nWrite Off Entry\nOpening Entry\nDepreciation Entry\nExchange Rate Revaluation\nDeferred Revenue\nDeferred Expense",
"reqd": 1,
"search_index": 1
},
@@ -191,6 +192,7 @@
{
"fieldname": "total_debit",
"fieldtype": "Currency",
"in_list_view": 1,
"label": "Total Debit",
"no_copy": 1,
"oldfieldname": "total_debit",
@@ -252,7 +254,6 @@
"fieldname": "total_amount",
"fieldtype": "Currency",
"hidden": 1,
"in_list_view": 1,
"label": "Total Amount",
"no_copy": 1,
"options": "total_amount_currency",
@@ -503,7 +504,7 @@
"idx": 176,
"is_submittable": 1,
"links": [],
"modified": "2020-04-29 10:55:28.240916",
"modified": "2020-10-30 13:56:01.121995",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Journal Entry",

View File

@@ -6,13 +6,18 @@ import frappe, erpnext, json
from frappe.utils import cstr, flt, fmt_money, formatdate, getdate, nowdate, cint, get_link_to_form
from frappe import msgprint, _, scrub
from erpnext.controllers.accounts_controller import AccountsController
from erpnext.accounts.utils import get_balance_on, get_account_currency
from erpnext.accounts.utils import get_balance_on, get_stock_accounts, get_stock_and_account_balance, \
get_account_currency, check_if_stock_and_account_balance_synced
from erpnext.accounts.party import get_party_account
from erpnext.hr.doctype.expense_claim.expense_claim import update_reimbursed_amount
from erpnext.accounts.doctype.invoice_discounting.invoice_discounting import get_party_account_based_on_invoice_discounting
from erpnext.accounts.doctype.invoice_discounting.invoice_discounting \
import get_party_account_based_on_invoice_discounting
from erpnext.accounts.deferred_revenue import get_deferred_booking_accounts
from six import string_types, iteritems
class StockAccountInvalidTransaction(frappe.ValidationError): pass
class JournalEntry(AccountsController):
def __init__(self, *args, **kwargs):
super(JournalEntry, self).__init__(*args, **kwargs)
@@ -21,14 +26,19 @@ class JournalEntry(AccountsController):
return self.voucher_type
def validate(self):
if self.voucher_type == 'Opening Entry':
self.is_opening = 'Yes'
if not self.is_opening:
self.is_opening='No'
self.clearance_date = None
self.validate_party()
self.validate_entries_for_advance()
self.validate_multi_currency()
self.set_amounts_in_company_currency()
self.validate_debit_credit_amount()
self.validate_total_debit_and_credit()
self.validate_against_jv()
self.validate_reference_doc()
@@ -40,6 +50,7 @@ class JournalEntry(AccountsController):
self.validate_empty_accounts_table()
self.set_account_and_party_balance()
self.validate_inter_company_accounts()
self.validate_stock_accounts()
if not self.title:
self.title = self.get_title()
@@ -51,10 +62,12 @@ class JournalEntry(AccountsController):
self.update_expense_claim()
self.update_inter_company_jv()
self.update_invoice_discounting()
check_if_stock_and_account_balance_synced(self.posting_date,
self.company, self.doctype, self.name)
def on_cancel(self):
from erpnext.accounts.utils import unlink_ref_doc_from_payment_entries
from erpnext.hr.doctype.salary_slip.salary_slip import unlink_ref_doc_from_salary_slip
from erpnext.payroll.doctype.salary_slip.salary_slip import unlink_ref_doc_from_salary_slip
unlink_ref_doc_from_payment_entries(self)
unlink_ref_doc_from_salary_slip(self.name)
self.ignore_linked_doctypes = ('GL Entry', 'Stock Ledger Entry')
@@ -89,6 +102,16 @@ class JournalEntry(AccountsController):
if account_currency == previous_account_currency:
if self.total_credit != doc.total_debit or self.total_debit != doc.total_credit:
frappe.throw(_("Total Credit/ Debit Amount should be same as linked Journal Entry"))
def validate_stock_accounts(self):
stock_accounts = get_stock_accounts(self.company, self.doctype, self.name)
for account in stock_accounts:
account_bal, stock_bal, warehouse_list = get_stock_and_account_balance(account,
self.posting_date, self.company)
if account_bal == stock_bal:
frappe.throw(_("Account: {0} can only be updated via Stock Transactions")
.format(account), StockAccountInvalidTransaction)
def update_inter_company_jv(self):
if self.voucher_type == "Inter Company Journal Entry" and self.inter_company_journal_entry_reference:
@@ -265,7 +288,10 @@ class JournalEntry(AccountsController):
# set totals
if not d.reference_name in self.reference_totals:
self.reference_totals[d.reference_name] = 0.0
self.reference_totals[d.reference_name] += flt(d.get(dr_or_cr))
if self.voucher_type not in ('Deferred Revenue', 'Deferred Expense'):
self.reference_totals[d.reference_name] += flt(d.get(dr_or_cr))
self.reference_types[d.reference_name] = d.reference_type
self.reference_accounts[d.reference_name] = d.account
@@ -277,10 +303,16 @@ class JournalEntry(AccountsController):
# check if party and account match
if d.reference_type in ("Sales Invoice", "Purchase Invoice"):
if d.reference_type == "Sales Invoice":
party_account = get_party_account_based_on_invoice_discounting(d.reference_name) or against_voucher[1]
if self.voucher_type in ('Deferred Revenue', 'Deferred Expense') and d.reference_detail_no:
debit_or_credit = 'Debit' if d.debit else 'Credit'
party_account = get_deferred_booking_accounts(d.reference_type, d.reference_detail_no,
debit_or_credit)
else:
party_account = against_voucher[1]
if d.reference_type == "Sales Invoice":
party_account = get_party_account_based_on_invoice_discounting(d.reference_name) or against_voucher[1]
else:
party_account = against_voucher[1]
if (against_voucher[0] != d.party or party_account != d.account):
frappe.throw(_("Row {0}: Party / Account does not match with {1} / {2} in {3} {4}")
.format(d.idx, field_dict.get(d.reference_type)[0], field_dict.get(d.reference_type)[1],
@@ -325,8 +357,7 @@ class JournalEntry(AccountsController):
currency=account_currency)
if flt(voucher_total) < (flt(order.advance_paid) + total):
frappe.throw(_("Advance paid against {0} {1} cannot be greater \
than Grand Total {2}").format(reference_type, reference_name, formatted_voucher_total))
frappe.throw(_("Advance paid against {0} {1} cannot be greater than Grand Total {2}").format(reference_type, reference_name, formatted_voucher_total))
def validate_invoices(self):
"""Validate totals and docstatus for invoices"""
@@ -355,6 +386,11 @@ class JournalEntry(AccountsController):
if flt(d.debit > 0): d.against_account = ", ".join(list(set(accounts_credited)))
if flt(d.credit > 0): d.against_account = ", ".join(list(set(accounts_debited)))
def validate_debit_credit_amount(self):
for d in self.get('accounts'):
if not flt(d.debit) and not flt(d.credit):
frappe.throw(_("Row {0}: Both Debit and Credit values cannot be zero").format(d.idx))
def validate_total_debit_and_credit(self):
self.set_total_debit_credit()
if self.difference:
@@ -513,14 +549,20 @@ class JournalEntry(AccountsController):
"against_voucher_type": d.reference_type,
"against_voucher": d.reference_name,
"remarks": remarks,
"voucher_detail_no": d.reference_detail_no,
"cost_center": d.cost_center,
"project": d.project,
"finance_book": self.finance_book
}, item=d)
)
if self.voucher_type in ('Deferred Revenue', 'Deferred Expense'):
update_outstanding = 'No'
else:
update_outstanding = 'Yes'
if gl_map:
make_gl_entries(gl_map, cancel=cancel, adv_adj=adv_adj)
make_gl_entries(gl_map, cancel=cancel, adv_adj=adv_adj, update_outstanding=update_outstanding)
def get_balance(self):
if not self.get('accounts'):
@@ -824,13 +866,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()
@@ -984,3 +1047,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

@@ -6,6 +6,7 @@ import unittest, frappe
from frappe.utils import flt, nowdate
from erpnext.accounts.doctype.account.test_account import get_inventory_account
from erpnext.exceptions import InvalidAccountCurrency
from erpnext.accounts.doctype.journal_entry.journal_entry import StockAccountInvalidTransaction
class TestJournalEntry(unittest.TestCase):
def test_journal_entry_with_against_jv(self):
@@ -74,27 +75,46 @@ class TestJournalEntry(unittest.TestCase):
elif test_voucher.doctype in ["Sales Order", "Purchase Order"]:
# if test_voucher is a Sales Order/Purchase Order, test error on cancellation of test_voucher
frappe.db.set_value("Accounts Settings", "Accounts Settings",
"unlink_advance_payment_on_cancelation_of_order", 0)
submitted_voucher = frappe.get_doc(test_voucher.doctype, test_voucher.name)
self.assertRaises(frappe.LinkExistsError, submitted_voucher.cancel)
def test_jv_against_stock_account(self):
from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import set_perpetual_inventory
set_perpetual_inventory()
company = "_Test Company with perpetual inventory"
stock_account = get_inventory_account(company)
jv = frappe.copy_doc(test_records[0])
jv.get("accounts")[0].update({
"account": get_inventory_account('_Test Company'),
"company": "_Test Company",
"party_type": None,
"party": None
from erpnext.accounts.utils import get_stock_and_account_balance
account_bal, stock_bal, warehouse_list = get_stock_and_account_balance(stock_account, nowdate(), company)
diff = flt(account_bal) - flt(stock_bal)
if not diff:
diff = 100
jv = frappe.new_doc("Journal Entry")
jv.company = company
jv.posting_date = nowdate()
jv.append("accounts", {
"account": stock_account,
"cost_center": "Main - TCP1",
"debit_in_account_currency": 0 if diff > 0 else abs(diff),
"credit_in_account_currency": diff if diff > 0 else 0
})
jv.append("accounts", {
"account": "Stock Adjustment - TCP1",
"cost_center": "Main - TCP1",
"debit_in_account_currency": diff if diff > 0 else 0,
"credit_in_account_currency": 0 if diff > 0 else abs(diff)
})
jv.insert()
from erpnext.accounts.general_ledger import StockAccountInvalidTransaction
self.assertRaises(StockAccountInvalidTransaction, jv.submit)
set_perpetual_inventory(0)
if account_bal == stock_bal:
self.assertRaises(StockAccountInvalidTransaction, jv.submit)
frappe.db.rollback()
else:
jv.submit()
jv.cancel()
def test_multi_currency(self):
jv = make_journal_entry("_Test Bank USD - _TC",
@@ -139,6 +159,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 +267,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 +297,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 +351,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

@@ -18,6 +18,7 @@
"accounting_dimensions_section",
"cost_center",
"dimension_col_break",
"project",
"currency_section",
"account_currency",
"column_break_10",
@@ -32,7 +33,7 @@
"reference_type",
"reference_name",
"reference_due_date",
"project",
"reference_detail_no",
"col_break3",
"is_advance",
"user_remark",
@@ -268,12 +269,18 @@
"fieldtype": "Link",
"label": "Bank Account",
"options": "Bank Account"
},
{
"fieldname": "reference_detail_no",
"fieldtype": "Data",
"hidden": 1,
"label": "Reference Detail No"
}
],
"idx": 1,
"istable": 1,
"links": [],
"modified": "2020-04-25 01:47:49.060128",
"modified": "2020-06-26 14:06:54.833738",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Journal Entry Account",

View File

@@ -1,426 +1,123 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "",
"beta": 0,
"creation": "2018-01-23 05:40:18.117583",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"creation": "2018-01-23 05:40:18.117583",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"loyalty_program",
"loyalty_program_tier",
"customer",
"invoice_type",
"invoice",
"redeem_against",
"loyalty_points",
"purchase_amount",
"expiry_date",
"posting_date",
"company"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "loyalty_program",
"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": "Loyalty Program",
"length": 0,
"no_copy": 0,
"options": "Loyalty Program",
"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": "loyalty_program",
"fieldtype": "Link",
"label": "Loyalty Program",
"options": "Loyalty Program"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "loyalty_program_tier",
"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": "Loyalty Program Tier",
"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
},
"fieldname": "loyalty_program_tier",
"fieldtype": "Data",
"label": "Loyalty Program Tier"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "customer",
"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": "Customer",
"length": 0,
"no_copy": 0,
"options": "Customer",
"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": "customer",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Customer",
"options": "Customer"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "sales_invoice",
"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": "Sales Invoice",
"length": 0,
"no_copy": 0,
"options": "Sales Invoice",
"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": "redeem_against",
"fieldtype": "Link",
"label": "Redeem Against",
"options": "Loyalty Point Entry"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "redeem_against",
"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": "Redeem Against",
"length": 0,
"no_copy": 0,
"options": "Loyalty Point Entry",
"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": "loyalty_points",
"fieldtype": "Int",
"in_list_view": 1,
"label": "Loyalty Points"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "loyalty_points",
"fieldtype": "Int",
"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": "Loyalty Points",
"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
},
"fieldname": "purchase_amount",
"fieldtype": "Currency",
"label": "Purchase Amount"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "purchase_amount",
"fieldtype": "Currency",
"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": "Purchase Amount",
"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
},
"fieldname": "expiry_date",
"fieldtype": "Date",
"in_list_view": 1,
"label": "Expiry Date"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "expiry_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": "Expiry Date",
"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
},
"fieldname": "posting_date",
"fieldtype": "Date",
"label": "Posting 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,
"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",
"label": "Company",
"options": "Company"
},
{
"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,
"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": "invoice_type",
"fieldtype": "Link",
"label": "Invoice Type",
"options": "DocType"
},
{
"fieldname": "invoice",
"fieldtype": "Dynamic Link",
"in_list_view": 1,
"label": "Invoice",
"options": "invoice_type"
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 1,
"is_submittable": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-08-29 16:05:22.810347",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Loyalty Point Entry",
"name_case": "",
"owner": "Administrator",
],
"in_create": 1,
"modified": "2020-01-30 17:27:55.964242",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Loyalty Point Entry",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "Auditor",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
},
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Auditor"
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"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": 0,
"submit": 0,
"write": 0
},
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager"
},
{
"amend": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"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": 0,
"submit": 0,
"write": 0
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts User"
}
],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"title_field": "customer",
"track_changes": 1,
"track_seen": 0
],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "DESC",
"title_field": "customer",
"track_changes": 1
}

View File

@@ -18,7 +18,7 @@ def get_loyalty_point_entries(customer, loyalty_program, company, expiry_date=No
date = today()
return frappe.db.sql('''
select name, loyalty_points, expiry_date, loyalty_program_tier, sales_invoice
select name, loyalty_points, expiry_date, loyalty_program_tier, invoice_type, invoice
from `tabLoyalty Point Entry`
where customer=%s and loyalty_program=%s
and expiry_date>=%s and loyalty_points>0 and company=%s

View File

@@ -36,7 +36,8 @@ def get_loyalty_details(customer, loyalty_program, expiry_date=None, company=Non
return {"loyalty_points": 0, "total_spent": 0}
@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):
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)
lp_details.update(get_loyalty_details(customer, loyalty_program.name, expiry_date, company, include_expired_entry))
@@ -59,10 +60,10 @@ def get_loyalty_program_details(customer, loyalty_program=None, expiry_date=None
if not loyalty_program:
loyalty_program = frappe.db.get_value("Customer", customer, "loyalty_program")
if not (loyalty_program or silent):
if not loyalty_program and not silent:
frappe.throw(_("Customer isn't enrolled in any Loyalty Program"))
elif silent and not loyalty_program:
return frappe._dict({"loyalty_program": None})
return frappe._dict({"loyalty_programs": None})
if not company:
company = frappe.db.get_default("company") or frappe.get_all("Company")[0].name

View File

@@ -8,12 +8,10 @@ import unittest
from frappe.utils import today, cint, flt, getdate
from erpnext.accounts.doctype.loyalty_program.loyalty_program import get_loyalty_program_details_with_points
from erpnext.accounts.party import get_dashboard_info
from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import set_perpetual_inventory
class TestLoyaltyProgram(unittest.TestCase):
@classmethod
def setUpClass(self):
set_perpetual_inventory(0)
# create relevant item, customer, loyalty program, etc
create_records()
@@ -27,7 +25,7 @@ class TestLoyaltyProgram(unittest.TestCase):
customer = frappe.get_doc('Customer', {"customer_name": "Test Loyalty Customer"})
earned_points = get_points_earned(si_original)
lpe = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_original.name, 'customer': si_original.customer})
lpe = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si_original.name, 'customer': si_original.customer})
self.assertEqual(si_original.get('loyalty_program'), customer.loyalty_program)
self.assertEqual(lpe.get('loyalty_program_tier'), customer.loyalty_program_tier)
@@ -42,8 +40,8 @@ class TestLoyaltyProgram(unittest.TestCase):
earned_after_redemption = get_points_earned(si_redeem)
lpe_redeem = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_redeem.name, 'redeem_against': lpe.name})
lpe_earn = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_redeem.name, 'name': ['!=', lpe_redeem.name]})
lpe_redeem = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si_redeem.name, 'redeem_against': lpe.name})
lpe_earn = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si_redeem.name, 'name': ['!=', lpe_redeem.name]})
self.assertEqual(lpe_earn.loyalty_points, earned_after_redemption)
self.assertEqual(lpe_redeem.loyalty_points, (-1*earned_points))
@@ -66,7 +64,7 @@ class TestLoyaltyProgram(unittest.TestCase):
earned_points = get_points_earned(si_original)
lpe = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_original.name, 'customer': si_original.customer})
lpe = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si_original.name, 'customer': si_original.customer})
self.assertEqual(si_original.get('loyalty_program'), customer.loyalty_program)
self.assertEqual(lpe.get('loyalty_program_tier'), customer.loyalty_program_tier)
@@ -82,8 +80,8 @@ class TestLoyaltyProgram(unittest.TestCase):
customer = frappe.get_doc('Customer', {"customer_name": "Test Loyalty Customer"})
earned_after_redemption = get_points_earned(si_redeem)
lpe_redeem = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_redeem.name, 'redeem_against': lpe.name})
lpe_earn = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_redeem.name, 'name': ['!=', lpe_redeem.name]})
lpe_redeem = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si_redeem.name, 'redeem_against': lpe.name})
lpe_earn = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si_redeem.name, 'name': ['!=', lpe_redeem.name]})
self.assertEqual(lpe_earn.loyalty_points, earned_after_redemption)
self.assertEqual(lpe_redeem.loyalty_points, (-1*earned_points))
@@ -101,7 +99,7 @@ class TestLoyaltyProgram(unittest.TestCase):
si.insert()
si.submit()
lpe = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si.name, 'customer': si.customer})
lpe = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si.name, 'customer': si.customer})
self.assertEqual(True, not (lpe is None))
# cancelling sales invoice
@@ -118,7 +116,7 @@ class TestLoyaltyProgram(unittest.TestCase):
si_original.submit()
earned_points = get_points_earned(si_original)
lpe_original = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_original.name, 'customer': si_original.customer})
lpe_original = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si_original.name, 'customer': si_original.customer})
self.assertEqual(lpe_original.loyalty_points, earned_points)
# create sales invoice return
@@ -130,10 +128,10 @@ class TestLoyaltyProgram(unittest.TestCase):
si_return.submit()
# fetch original invoice again as its status would have been updated
si_original = frappe.get_doc('Sales Invoice', lpe_original.sales_invoice)
si_original = frappe.get_doc('Sales Invoice', lpe_original.invoice)
earned_points = get_points_earned(si_original)
lpe_after_return = frappe.get_doc('Loyalty Point Entry', {'sales_invoice': si_original.name, 'customer': si_original.customer})
lpe_after_return = frappe.get_doc('Loyalty Point Entry', {'invoice_type': 'Sales Invoice', 'invoice': si_original.name, 'customer': si_original.customer})
self.assertEqual(lpe_after_return.loyalty_points, earned_points)
self.assertEqual(True, (lpe_original.loyalty_points > lpe_after_return.loyalty_points))
@@ -195,88 +193,91 @@ def create_sales_invoice_record(qty=1):
def create_records():
# create a new loyalty Account
if frappe.db.exists("Account", "Loyalty - _TC"):
return
frappe.get_doc({
"doctype": "Account",
"account_name": "Loyalty",
"parent_account": "Direct Expenses - _TC",
"company": "_Test Company",
"is_group": 0,
"account_type": "Expense Account",
}).insert()
if not frappe.db.exists("Account", "Loyalty - _TC"):
frappe.get_doc({
"doctype": "Account",
"account_name": "Loyalty",
"parent_account": "Direct Expenses - _TC",
"company": "_Test Company",
"is_group": 0,
"account_type": "Expense Account",
}).insert()
# create a new loyalty program Single tier
frappe.get_doc({
"doctype": "Loyalty Program",
"loyalty_program_name": "Test Single Loyalty",
"auto_opt_in": 1,
"from_date": today(),
"loyalty_program_type": "Single Tier Program",
"conversion_factor": 1,
"expiry_duration": 10,
"company": "_Test Company",
"cost_center": "Main - _TC",
"expense_account": "Loyalty - _TC",
"collection_rules": [{
'tier_name': 'Silver',
'collection_factor': 1000,
'min_spent': 1000
}]
}).insert()
# create a new customer
frappe.get_doc({
"customer_group": "_Test Customer Group",
"customer_name": "Test Loyalty Customer",
"customer_type": "Individual",
"doctype": "Customer",
"territory": "_Test Territory"
}).insert()
# create a new loyalty program Multiple tier
frappe.get_doc({
"doctype": "Loyalty Program",
"loyalty_program_name": "Test Multiple Loyalty",
"auto_opt_in": 1,
"from_date": today(),
"loyalty_program_type": "Multiple Tier Program",
"conversion_factor": 1,
"expiry_duration": 10,
"company": "_Test Company",
"cost_center": "Main - _TC",
"expense_account": "Loyalty - _TC",
"collection_rules": [
{
if not frappe.db.exists("Loyalty Program","Test Single Loyalty"):
frappe.get_doc({
"doctype": "Loyalty Program",
"loyalty_program_name": "Test Single Loyalty",
"auto_opt_in": 1,
"from_date": today(),
"loyalty_program_type": "Single Tier Program",
"conversion_factor": 1,
"expiry_duration": 10,
"company": "_Test Company",
"cost_center": "Main - _TC",
"expense_account": "Loyalty - _TC",
"collection_rules": [{
'tier_name': 'Silver',
'collection_factor': 1000,
'min_spent': 10000
},
{
'tier_name': 'Gold',
'collection_factor': 1000,
'min_spent': 19000
}
]
}).insert()
'min_spent': 1000
}]
}).insert()
# create a new customer
if not frappe.db.exists("Customer","Test Loyalty Customer"):
frappe.get_doc({
"customer_group": "_Test Customer Group",
"customer_name": "Test Loyalty Customer",
"customer_type": "Individual",
"doctype": "Customer",
"territory": "_Test Territory"
}).insert()
# create a new loyalty program Multiple tier
if not frappe.db.exists("Loyalty Program","Test Multiple Loyalty"):
frappe.get_doc({
"doctype": "Loyalty Program",
"loyalty_program_name": "Test Multiple Loyalty",
"auto_opt_in": 1,
"from_date": today(),
"loyalty_program_type": "Multiple Tier Program",
"conversion_factor": 1,
"expiry_duration": 10,
"company": "_Test Company",
"cost_center": "Main - _TC",
"expense_account": "Loyalty - _TC",
"collection_rules": [
{
'tier_name': 'Silver',
'collection_factor': 1000,
'min_spent': 10000
},
{
'tier_name': 'Gold',
'collection_factor': 1000,
'min_spent': 19000
}
]
}).insert()
# create an item
item = frappe.get_doc({
"doctype": "Item",
"item_code": "Loyal Item",
"item_name": "Loyal Item",
"item_group": "All Item Groups",
"company": "_Test Company",
"is_stock_item": 1,
"opening_stock": 100,
"valuation_rate": 10000,
}).insert()
if not frappe.db.exists("Item", "Loyal Item"):
frappe.get_doc({
"doctype": "Item",
"item_code": "Loyal Item",
"item_name": "Loyal Item",
"item_group": "All Item Groups",
"company": "_Test Company",
"is_stock_item": 1,
"opening_stock": 100,
"valuation_rate": 10000,
}).insert()
# create item price
frappe.get_doc({
"doctype": "Item Price",
"price_list": "Standard Selling",
"item_code": item.item_code,
"price_list_rate": 10000
}).insert()
if not frappe.db.exists("Item Price", {"price_list": "Standard Selling", "item_code": "Loyal Item"}):
frappe.get_doc({
"doctype": "Item Price",
"price_list": "Standard Selling",
"item_code": "Loyal Item",
"price_list_rate": 10000
}).insert()

View File

@@ -1,13 +1,17 @@
// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
// License: GNU General Public License v3. See license.txt
cur_frm.set_query("default_account", "accounts", function(doc, cdt, cdn) {
var d = locals[cdt][cdn];
return{
filters: [
['Account', 'account_type', 'in', 'Bank, Cash, Receivable'],
['Account', 'is_group', '=', 0],
['Account', 'company', '=', d.company]
]
}
});
frappe.ui.form.on('Mode of Payment', {
setup: function(frm) {
frm.set_query("default_account", "accounts", function(doc, cdt, cdn) {
let d = locals[cdt][cdn];
return {
filters: [
['Account', 'account_type', 'in', 'Bank, Cash, Receivable'],
['Account', 'is_group', '=', 0],
['Account', 'company', '=', d.company]
]
};
});
},
});

View File

@@ -1,4 +1,5 @@
{
"actions": [],
"allow_import": 1,
"allow_rename": 1,
"autoname": "field:mode_of_payment",
@@ -28,7 +29,7 @@
"fieldtype": "Select",
"in_standard_filter": 1,
"label": "Type",
"options": "Cash\nBank\nGeneral"
"options": "Cash\nBank\nGeneral\nPhone"
},
{
"fieldname": "accounts",
@@ -45,11 +46,13 @@
],
"icon": "fa fa-credit-card",
"idx": 1,
"modified": "2019-08-14 14:58:42.079115",
"modified_by": "sammish.thundiyil@gmail.com",
"index_web_pages_for_search": 1,
"links": [],
"modified": "2020-09-18 17:57:23.835236",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Mode of Payment",
"owner": "harshada@webnotestech.com",
"owner": "Administrator",
"permissions": [
{
"create": 1,

View File

@@ -6,7 +6,7 @@ frappe.ui.form.on('Opening Invoice Creation Tool', {
frm.set_query('party_type', 'invoices', function(doc, cdt, cdn) {
return {
filters: {
'name': ['in', 'Customer,Supplier']
'name': ['in', 'Customer, Supplier']
}
};
});
@@ -14,29 +14,46 @@ frappe.ui.form.on('Opening Invoice Creation Tool', {
if (frm.doc.company) {
frm.trigger('setup_company_filters');
}
frappe.realtime.on('opening_invoice_creation_progress', data => {
if (!frm.doc.import_in_progress) {
frm.dashboard.reset();
frm.doc.import_in_progress = true;
}
if (data.user != frappe.session.user) return;
if (data.count == data.total) {
setTimeout((title) => {
frm.doc.import_in_progress = false;
frm.clear_table("invoices");
frm.refresh_fields();
frm.page.clear_indicator();
frm.dashboard.hide_progress(title);
frappe.msgprint(__("Opening {0} Invoice created", [frm.doc.invoice_type]));
}, 1500, data.title);
return;
}
frm.dashboard.show_progress(data.title, (data.count / data.total) * 100, data.message);
frm.page.set_indicator(__('In Progress'), 'orange');
});
},
refresh: function(frm) {
frm.disable_save();
frm.trigger("make_dashboard");
!frm.doc.import_in_progress && frm.trigger("make_dashboard");
frm.page.set_primary_action(__('Create Invoices'), () => {
let btn_primary = frm.page.btn_primary.get(0);
return frm.call({
doc: frm.doc,
freeze: true,
btn: $(btn_primary),
method: "make_invoices",
freeze_message: __("Creating {0} Invoice", [frm.doc.invoice_type]),
callback: (r) => {
if(!r.exc){
frappe.msgprint(__("Opening {0} Invoice created", [frm.doc.invoice_type]));
frm.clear_table("invoices");
frm.refresh_fields();
frm.reload_doc();
}
}
freeze_message: __("Creating {0} Invoice", [frm.doc.invoice_type])
});
});
if (frm.doc.create_missing_party) {
frm.set_df_property("party", "fieldtype", "Data", frm.doc.name, "invoices");
}
},
setup_company_filters: function(frm) {

View File

@@ -4,9 +4,12 @@
from __future__ import unicode_literals
import frappe
import traceback
from json import dumps
from frappe import _, scrub
from frappe.utils import flt, nowdate
from frappe.model.document import Document
from frappe.utils.background_jobs import enqueue
from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import get_accounting_dimensions
@@ -61,58 +64,48 @@ class OpeningInvoiceCreationTool(Document):
prepare_invoice_summary(doctype, invoices)
return invoices_summary, max_count
def make_invoices(self):
names = []
mandatory_error_msg = _("Row {0}: {1} is required to create the Opening {2} Invoices")
def validate_company(self):
if not self.company:
frappe.throw(_("Please select the Company"))
def set_missing_values(self, row):
row.qty = row.qty or 1.0
row.temporary_opening_account = row.temporary_opening_account or get_temporary_opening_account(self.company)
row.party_type = "Customer" if self.invoice_type == "Sales" else "Supplier"
row.item_name = row.item_name or _("Opening Invoice Item")
row.posting_date = row.posting_date or nowdate()
row.due_date = row.due_date or nowdate()
def validate_mandatory_invoice_fields(self, row):
if not frappe.db.exists(row.party_type, row.party):
if self.create_missing_party:
self.add_party(row.party_type, row.party)
else:
frappe.throw(_("Row #{}: {} {} does not exist.").format(row.idx, frappe.bold(row.party_type), frappe.bold(row.party)))
mandatory_error_msg = _("Row #{0}: {1} is required to create the Opening {2} Invoices")
for d in ("Party", "Outstanding Amount", "Temporary Opening Account"):
if not row.get(scrub(d)):
frappe.throw(mandatory_error_msg.format(row.idx, d, self.invoice_type))
def get_invoices(self):
invoices = []
for row in self.invoices:
if not row.qty:
row.qty = 1.0
# always mandatory fields for the invoices
if not row.temporary_opening_account:
row.temporary_opening_account = get_temporary_opening_account(self.company)
row.party_type = "Customer" if self.invoice_type == "Sales" else "Supplier"
# Allow to create invoice even if no party present in customer or supplier.
if not frappe.db.exists(row.party_type, row.party):
if self.create_missing_party:
self.add_party(row.party_type, row.party)
else:
frappe.throw(_("{0} {1} does not exist.").format(frappe.bold(row.party_type), frappe.bold(row.party)))
if not row.item_name:
row.item_name = _("Opening Invoice Item")
if not row.posting_date:
row.posting_date = nowdate()
if not row.due_date:
row.due_date = nowdate()
for d in ("Party", "Outstanding Amount", "Temporary Opening Account"):
if not row.get(scrub(d)):
frappe.throw(mandatory_error_msg.format(row.idx, _(d), self.invoice_type))
args = self.get_invoice_dict(row=row)
if not args:
if not row:
continue
self.set_missing_values(row)
self.validate_mandatory_invoice_fields(row)
invoice = self.get_invoice_dict(row)
company_details = frappe.get_cached_value('Company', self.company, ["default_currency", "default_letter_head"], as_dict=1) or {}
if company_details:
invoice.update({
"currency": company_details.get("default_currency"),
"letter_head": company_details.get("default_letter_head")
})
invoices.append(invoice)
doc = frappe.get_doc(args).insert()
doc.submit()
names.append(doc.name)
if len(self.invoices) > 5:
frappe.publish_realtime(
"progress", dict(
progress=[row.idx, len(self.invoices)],
title=_('Creating {0}').format(doc.doctype)
),
user=frappe.session.user
)
return names
return invoices
def add_party(self, party_type, party):
party_doc = frappe.new_doc(party_type)
@@ -131,14 +124,12 @@ class OpeningInvoiceCreationTool(Document):
def get_invoice_dict(self, row=None):
def get_item_dict():
default_uom = frappe.db.get_single_value("Stock Settings", "stock_uom") or _("Nos")
cost_center = row.get('cost_center') or frappe.get_cached_value('Company',
self.company, "cost_center")
cost_center = row.get('cost_center') or frappe.get_cached_value('Company', self.company, "cost_center")
if not cost_center:
frappe.throw(
_("Please set the Default Cost Center in {0} company.").format(frappe.bold(self.company))
)
frappe.throw(_("Please set the Default Cost Center in {0} company.").format(frappe.bold(self.company)))
income_expense_account_field = "income_account" if row.party_type == "Customer" else "expense_account"
default_uom = frappe.db.get_single_value("Stock Settings", "stock_uom") or _("Nos")
rate = flt(row.outstanding_amount) / flt(row.qty)
return frappe._dict({
@@ -152,18 +143,9 @@ class OpeningInvoiceCreationTool(Document):
"cost_center": cost_center
})
if not row:
return None
party_type = "Customer"
income_expense_account_field = "income_account"
if self.invoice_type == "Purchase":
party_type = "Supplier"
income_expense_account_field = "expense_account"
item = get_item_dict()
args = frappe._dict({
invoice = frappe._dict({
"items": [item],
"is_opening": "Yes",
"set_posting_time": 1,
@@ -171,22 +153,77 @@ class OpeningInvoiceCreationTool(Document):
"cost_center": self.cost_center,
"due_date": row.due_date,
"posting_date": row.posting_date,
frappe.scrub(party_type): row.party,
frappe.scrub(row.party_type): row.party,
"is_pos": 0,
"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()
for dimension in accounting_dimension:
args.update({
invoice.update({
dimension: item.get(dimension)
})
if self.invoice_type == "Sales":
args["is_pos"] = 0
return invoice
return args
def make_invoices(self):
self.validate_company()
invoices = self.get_invoices()
if len(invoices) < 50:
return start_import(invoices)
else:
from frappe.core.page.background_jobs.background_jobs import get_info
from frappe.utils.scheduler import is_scheduler_inactive
if is_scheduler_inactive() and not frappe.flags.in_test:
frappe.throw(_("Scheduler is inactive. Cannot import data."), title=_("Scheduler Inactive"))
enqueued_jobs = [d.get("job_name") for d in get_info()]
if self.name not in enqueued_jobs:
enqueue(
start_import,
queue="default",
timeout=6000,
event="opening_invoice_creation",
job_name=self.name,
invoices=invoices,
now=frappe.conf.developer_mode or frappe.flags.in_test
)
def start_import(invoices):
errors = 0
names = []
for idx, d in enumerate(invoices):
try:
publish(idx, len(invoices), d.doctype)
doc = frappe.get_doc(d)
doc.insert()
doc.submit()
frappe.db.commit()
names.append(doc.name)
except Exception:
errors += 1
frappe.db.rollback()
message = "\n".join(["Data:", dumps(d, default=str, indent=4), "--" * 50, "\nException:", traceback.format_exc()])
frappe.log_error(title="Error while creating Opening Invoice", message=message)
frappe.db.commit()
if errors:
frappe.msgprint(_("You had {} errors while creating opening invoices. Check {} for more details")
.format(errors, "<a href='#List/Error Log' class='variant-click'>Error Log</a>"), indicator="red", title=_("Error Occured"))
return names
def publish(index, total, doctype):
if total < 5: return
frappe.publish_realtime(
"opening_invoice_creation_progress",
dict(
title=_("Opening Invoice Creation In Progress"),
message=_('Creating {} out of {} {}').format(index + 1, total, doctype),
user=frappe.session.user,
count=index+1,
total=total
))
@frappe.whitelist()
def get_temporary_opening_account(company=None):

View File

@@ -7,17 +7,24 @@ 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
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 +34,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 +50,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 = {
@@ -44,7 +58,33 @@ class TestOpeningInvoiceCreationTool(unittest.TestCase):
0: ["_Test Supplier", 300, "Overdue"],
1: ["_Test Supplier 1", 250, "Overdue"],
}
self.check_expected_values(invoices, expected_value, invoice_type="Purchase", )
self.check_expected_values(invoices, expected_value, "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.make_invoices(company="_Test Opening Invoice Company", party_1=party_1, party_2=party_2)
# Check if missing debit account error raised
error_log = frappe.db.exists("Error Log", {"error": ["like", "%erpnext.controllers.accounts_controller.AccountMissingError%"]})
self.assertTrue(error_log)
# 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"
@@ -57,7 +97,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 +106,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 +116,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,29 +24,35 @@ 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,
company: frm.doc.company
}
}
});
frm.set_query("contact_person", function() {
if (frm.doc.party) {
return {
@@ -57,10 +64,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],
@@ -90,7 +99,7 @@ frappe.ui.form.on('Payment Entry', {
frm.set_query("reference_doctype", "references", function() {
if (frm.doc.party_type=="Customer") {
var doctypes = ["Sales Order", "Sales Invoice", "Journal Entry"];
var doctypes = ["Sales Order", "Sales Invoice", "Journal Entry", "Dunning"];
} else if (frm.doc.party_type=="Supplier") {
var doctypes = ["Purchase Order", "Purchase Invoice", "Journal Entry"];
} else if (frm.doc.party_type=="Employee") {
@@ -125,7 +134,7 @@ frappe.ui.form.on('Payment Entry', {
const child = locals[cdt][cdn];
const filters = {"docstatus": 1, "company": doc.company};
const party_type_doctypes = ['Sales Invoice', 'Sales Order', 'Purchase Invoice',
'Purchase Order', 'Expense Claim', 'Fees'];
'Purchase Order', 'Expense Claim', 'Fees', 'Dunning'];
if (in_list(party_type_doctypes, child.reference_doctype)) {
filters[doc.party_type.toLowerCase()] = doc.party;
@@ -149,6 +158,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);
@@ -172,8 +187,8 @@ 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.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
));
@@ -234,14 +249,15 @@ frappe.ui.form.on('Payment Entry', {
},
show_general_ledger: function(frm) {
if(frm.doc.docstatus==1) {
if(frm.doc.docstatus > 0) {
frm.add_custom_button(__('Ledger'), function() {
frappe.route_options = {
"voucher_no": frm.doc.name,
"from_date": frm.doc.posting_date,
"to_date": frm.doc.posting_date,
"to_date": moment(frm.doc.modified).format('YYYY-MM-DD'),
"company": frm.doc.company,
group_by: ""
"group_by": "",
"show_cancelled_entries": frm.doc.docstatus === 2
};
frappe.set_route("query-report", "General Ledger");
}, "fa fa-table");
@@ -341,7 +357,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);
}
}
]);
@@ -862,10 +878,10 @@ frappe.ui.form.on('Payment Entry', {
}
if(frm.doc.party_type=="Customer" &&
!in_list(["Sales Order", "Sales Invoice", "Journal Entry"], row.reference_doctype)
!in_list(["Sales Order", "Sales Invoice", "Journal Entry", "Dunning"], row.reference_doctype)
) {
frappe.model.set_value(row.doctype, row.name, "reference_doctype", null);
frappe.msgprint(__("Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice or Journal Entry", [row.idx]));
frappe.msgprint(__("Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning", [row.idx]));
return false;
}
@@ -1048,4 +1064,4 @@ frappe.ui.form.on('Payment Entry', {
});
}
},
})
})

View File

@@ -1,4 +1,6 @@
{
"actions": [],
"allow_auto_repeat": 1,
"allow_import": 1,
"autoname": "naming_series:",
"creation": "2016-06-01 14:38:51.012597",
@@ -63,6 +65,7 @@
"cost_center",
"section_break_12",
"status",
"custom_remarks",
"remarks",
"column_break_16",
"letter_head",
@@ -462,7 +465,8 @@
"fieldname": "remarks",
"fieldtype": "Small Text",
"label": "Remarks",
"no_copy": 1
"no_copy": 1,
"read_only_depends_on": "eval:doc.custom_remarks == 0"
},
{
"fieldname": "column_break_16",
@@ -573,10 +577,18 @@
"label": "Status",
"options": "\nDraft\nSubmitted\nCancelled",
"read_only": 1
},
{
"default": "0",
"fieldname": "custom_remarks",
"fieldtype": "Check",
"label": "Custom Remarks"
}
],
"index_web_pages_for_search": 1,
"is_submittable": 1,
"modified": "2019-12-08 13:02:30.016610",
"links": [],
"modified": "2020-10-30 13:56:20.007336",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Payment Entry",

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