Compare commits

..

2832 Commits

Author SHA1 Message Date
Saurabh
1836285c01 bumped to version 11.0.3-beta.34 2019-01-08 16:52:38 +06:00
rohitwaghchaure
ffdadbf97f fix: fallback to stock uom if uom is not defined (#16329)
* [minor] Code cleanup

* fix: remove 'or' condition, won't execute
2019-01-08 16:21:25 +05:30
Nabin Hait
c190192d5f Merge pull request #16277 from deepeshgarg007/loyalty-program-fix
fix: Loyalty program issue fix in customer dashboard
2019-01-08 12:15:57 +05:30
Nabin Hait
4c08aaef3d Merge pull request #16290 from deepeshgarg007/stock-recon
fix: Unorderable type error while making stock reconciliation entry
2019-01-08 11:55:49 +05:30
Nabin Hait
4216d86dd9 Merge pull request #16296 from deepeshgarg007/update_items_bug
fix: Validation while updating items in sales order
2019-01-08 11:54:52 +05:30
Nabin Hait
9ed6deb452 Merge pull request #16333 from deepeshgarg007/report-fix
fix: added customer group column in Item-wise Sales History report
2019-01-08 11:53:14 +05:30
Nabin Hait
49ca9dceb2 Merge branch 'staging-fixes' into report-fix 2019-01-08 11:53:06 +05:30
Nabin Hait
4e3e784691 Merge pull request #16335 from deepeshgarg007/accounts-receivable-fix
perf: Customer contact column in accounts receivable report
2019-01-08 11:52:20 +05:30
Deepesh Garg
7c45f45ebc fix: Divide by zero exception fix in item wise purchase register (#16247)
* Do not prepare row if stock quantity is not available

* Update item_wise_purchase_register.py
2019-01-08 08:34:28 +05:30
Saif
e5091cbc0f chore: Updated DocType JSON Files to Clean Up Git Diff of Other PRs (#16356)
* chore: Updated DocType json files to clean up git diff of other PRs

* fix: remove auto-generated file
2019-01-07 18:19:30 +05:30
Sagar Vora
cad20abe83 Merge branch 'staging-fixes' into loyalty-program-fix 2019-01-07 15:32:40 +05:30
Sagar Vora
a4af874a43 Merge branch 'staging-fixes' into update_items_bug 2019-01-07 15:21:02 +05:30
Sagar Vora
f14c56488f Merge pull request #16325 from rohitwaghchaure/not_able_to_access_report_quoted_item_comparison
fix: report quoted item comparison not working
2019-01-07 14:55:14 +05:30
Sagar Vora
fd78339a7c Merge branch 'staging-fixes' into not_able_to_access_report_quoted_item_comparison 2019-01-07 14:54:44 +05:30
Sagar Vora
db40ea4f76 Merge pull request #16328 from rohitwaghchaure/fixed_salary_structure_employee_reqd
fix: employee is reqd to preview salary slip from salary structure
2019-01-07 14:30:57 +05:30
Sagar Vora
26e5c9480b Merge branch 'staging-fixes' into fixed_salary_structure_employee_reqd 2019-01-07 14:30:23 +05:30
Sagar Vora
1310c238a9 Merge pull request #16350 from rohitwaghchaure/code_cleanup_general_ledger
fix: replaced str to cstr in genral ledger report
2019-01-07 14:28:27 +05:30
Rohit Waghchaure
ed6725172d Replaced str to cstr in genral ledger report 2019-01-06 20:07:18 +05:30
Deepesh Garg
0eca1646e6 Merge branch 'staging-fixes' into loyalty-program-fix 2019-01-06 12:16:54 +05:30
Deepesh Garg
4772ae2755 Merge branch 'staging-fixes' into stock-recon 2019-01-06 12:16:45 +05:30
Deepesh Garg
16745c2553 Merge branch 'staging-fixes' into update_items_bug 2019-01-06 12:16:37 +05:30
Deepesh Garg
b12c7358b1 Merge branch 'staging-fixes' into report-fix 2019-01-06 12:16:11 +05:30
Deepesh Garg
f840c92c10 Merge branch 'staging-fixes' into accounts-receivable-fix 2019-01-06 10:35:12 +05:30
Frappe Bot
094d539cd9 Merge branch 'staging-fixes' into staging 2019-01-05 09:11:14 +00:00
Frappe Bot
0d54271d15 bumped to version 11.0.3-beta.33 2019-01-05 09:11:14 +00:00
Deepesh Garg
1bb9287b2d Merge branch 'staging-fixes' into update_items_bug 2019-01-04 14:15:40 +05:30
Sagar Vora
53cac1b616 Merge pull request #16338 from sahil28297/remove_print_from_test_case
fix: Remove print statement from test case
2019-01-04 13:31:00 +05:30
Sahil Khan
3ac57c756b fix: remove print statement from test case 2019-01-04 12:57:34 +05:30
deepeshgarg007
eabf260706 fix :Test cases for accounts receivable report 2019-01-04 12:34:28 +05:30
deepeshgarg007
9de81cda77 Added Customer contact column in accounts Receivable 2019-01-04 10:54:24 +05:30
deepeshgarg007
32f054b901 Added customer group column in item-wise-sales-history report 2019-01-03 22:57:18 +05:30
Sagar Vora
cda289dc27 Merge pull request #16323 from sagarvora/fix_tests
fix: leave application and timesheet tests
2019-01-03 16:38:46 +05:30
Rohit Waghchaure
8bac5b6e73 [minor] Employee is reqd to preview salary slip from salary structure 2019-01-03 16:20:35 +05:30
Rohit Waghchaure
3dc5b93db7 [Fix] Report quoted item comparison not working 2019-01-03 12:19:44 +05:30
Sagar Vora
c14c7c84e3 fix: leave application and timesheet tests 2019-01-02 21:28:11 +05:30
rohitwaghchaure
9c69e40970 Merge pull request #16312 from rohitwaghchaure/fix_not_able_to_delete_department
[Fix] Not able to delete department
2019-01-02 15:58:24 +05:30
Deepesh Garg
74306cc5ea Merge branch 'staging-fixes' into update_items_bug 2019-01-02 14:10:23 +05:30
deepeshgarg007
9c0c633259 fix: Added validation for stock reconciliation in stock ledger entry 2019-01-02 11:31:55 +05:30
Charles-Henri Decultot
94e35e7a7e Fix #15917 (#16311) 2019-01-01 22:25:13 +05:30
deepeshgarg007
8300f5ede7 fix: Codacy issues and added test case 2019-01-01 20:28:49 +05:30
deepeshgarg007
78ad6c4cb7 Merge branch 'staging-fixes' of https://github.com/frappe/erpnext into loyalty-program-fix 2019-01-01 19:46:08 +05:30
deepeshgarg007
9eb99dc61e Merge branch 'staging-fixes' of https://github.com/frappe/erpnext into stock-recon 2019-01-01 18:40:24 +05:30
deepeshgarg007
318dc422bc Updated test Cases for update_child_rate_qty 2019-01-01 18:30:33 +05:30
deepeshgarg007
1451304526 Merge branch 'staging-fixes' of https://github.com/frappe/erpnext into update_items_bug 2019-01-01 17:13:37 +05:30
Rohit Waghchaure
c186f153ff Added test cases 2019-01-01 15:03:56 +05:30
Rohit Waghchaure
8f62aec2e3 [Fix] Not able to delete department 2019-01-01 14:06:40 +05:30
Nabin Hait
137a24f457 Merge pull request #16253 from chdecultot/sales_summary_correction
[Fix] Filter cancelled and draft payments in sales payment summary
2018-12-31 12:02:19 +05:30
rohitwaghchaure
f07cde6351 Merge pull request #16306 from rohitwaghchaure/removed_duplicate_fields
[Fix] Duplicate fieldnames operation and allow_alternative_item in BOM Item
2018-12-28 17:49:52 +05:30
sahil28297
50f0a99330 fix: Checks for status in employee and for date range in upload attendance. (#16279)
* fix: checks for status in employee and for date range in upload attendance.

1. Earlier the status of an amployee can be set to 'Left' even though other employees are reporting to this employee, added checks to prevent this behaviour.
2. Earlier the range of dates added to the template were not checked for date of joining and relieving date. Now the range of dates added in the template are between the date of joining and relieving date.

* remove "import erpnext"

* fix: replace frappe.db.sql with frappe.db.get_all

* fix: refactored using list comprehension

* fix: query refactoring

* fix: combining list comprehensions

* travis debugging

* fix: doc.save
2018-12-28 17:15:56 +05:30
Rohit Waghchaure
df4fe922c0 [Fix] Duplicate fieldnames operation and allow_alternative_item in BOM Item 2018-12-28 16:46:36 +05:30
Charles-Henri Decultot
e87eb07e16 Correction for Travis 2018-12-27 17:38:57 +00:00
Charles-Henri Decultot
8d71015bf8 Cleanup journal entries 2018-12-27 16:43:26 +00:00
Charles-Henri Decultot
b7339d7dcb Test travis 2018-12-27 15:30:56 +00:00
Charles-Henri Decultot
43c7bd57e4 Cancel existing payment entries for data integrity in test 2018-12-27 14:43:30 +00:00
Charles-Henri Decultot
641d3e0073 Add own records 2018-12-27 13:43:56 +00:00
deepeshgarg007
77cde832d6 Added validation for update items in purchase order as well 2018-12-27 15:56:51 +05:30
Charles-Henri Decultot
0f9c47c242 Remove pricing rule from items 2018-12-27 10:10:18 +00:00
Charles-Henri Decultot
02aa9fb240 Understand Travis 2018-12-27 08:46:29 +00:00
deepeshgarg007
ffb411d9e2 Validation while updating items in sales order 2018-12-27 14:12:05 +05:30
Charles-Henri Decultot
d7777696d7 Corrections for Travis 2018-12-26 14:08:00 +00:00
Frappe Bot
1fa3f7d81e Merge branch 'staging-fixes' into staging 2018-12-26 12:04:55 +00:00
Frappe Bot
23beec2bd1 bumped to version 11.0.3-beta.32 2018-12-26 12:04:55 +00:00
deepeshgarg007
22e05b24f3 Fix for NoneType comparison with int error 2018-12-26 17:16:34 +05:30
Frappe Bot
e8c2fdfb8c Merge branch 'master' into staging-fixes 2018-12-26 11:44:09 +00:00
rohitwaghchaure
56c5d8b784 Merge pull request #16286 from rohitwaghchaure/fixed_patch_rename_bom_wo_fields
[Fix] Patch rename_bom_wo_fields
2018-12-26 16:26:19 +05:30
Rohit Waghchaure
8406720a7a [Fix] Patch rename_bom_wo_fields 2018-12-26 16:25:44 +05:30
Charles-Henri Decultot
9c1db688d1 Ignore pricing rule for Travis 2018-12-26 10:33:42 +00:00
rohitwaghchaure
53a38e8edc Merge pull request #16257 from surajshetty3416/permission-fixes
Fix user permission checks
2018-12-26 14:49:01 +05:30
Charles-Henri Decultot
899b9b1ea7 Codacy correction 2018-12-26 08:56:11 +00:00
Charles-Henri Decultot
9d31452c25 Remove ununsed variable 2018-12-26 08:38:42 +00:00
Charles-Henri Decultot
ed94317df9 Test cases 2018-12-26 08:36:32 +00:00
Suraj Shetty
33ba694f3a Revert "Modify bench_init.sh"
Point back to original repo

This reverts commit d3530125dd.
2018-12-26 11:32:06 +05:30
deepeshgarg007
a1d015cc2f Initialized loyalty_point_details 2018-12-26 11:01:02 +05:30
deepeshgarg007
64238ee91f (Codacy Fix) Fixed indenttion 2018-12-25 16:28:39 +05:30
deepeshgarg007
12f5cefc12 Loyalty program issue fix in customer dashboard 2018-12-25 16:06:19 +05:30
rohitwaghchaure
136c4c4820 Merge pull request #16016 from rohitwaghchaure/fixed_tax_withholding_issue
[Fix] Tax Withholding, TDS is applying on the tax
2018-12-25 14:49:05 +05:30
Suraj Shetty
488aa86f70 Skip some codacy warnings 2018-12-25 14:46:44 +05:30
Suraj Shetty
6684c1ebff Merge branch 'permission-fixes' of https://github.com/surajshetty3416/erpnext into permission-fixes 2018-12-25 14:30:55 +05:30
Suraj Shetty
d3530125dd Modify bench_init.sh
- to point frappe branch in my repo with
changes to check if any test fails due to the changes
2018-12-25 14:30:50 +05:30
rohitwaghchaure
deb96dab3e [Fix] Salary structure not saving (#16275) 2018-12-25 13:58:20 +05:30
Rohit Waghchaure
94500a9d62 [Fix] TDS is applying on the tax 2018-12-24 15:13:52 +05:30
Nabin Hait
5a9579bae4 feat(quality): Check quality status before receipt/delivery (#16169) 2018-12-24 14:54:42 +05:30
Valmik
78bc405eeb fix: set fieldname for frappe prompt (#16198) 2018-12-24 14:54:06 +05:30
KanchanChauhan
1790a6faaa Set ignore_user_permission 1 for Company field in Item Default (#16167) 2018-12-24 14:48:09 +05:30
Rohan
349040db6d fix(work_order): Set operations for Work Order when created from MREQ (#16154) 2018-12-24 14:42:34 +05:30
Charles-Henri Decultot
052033a76e [Fix] Pos bugs (#16256)
* Remove hard-coded values

* Fix change pos profile + add campaign

* Test case for coveralls

* Remove unnecessary method
2018-12-24 14:39:30 +05:30
rohitwaghchaure
4265c5a772 Rename BOM and Work order fields (#16209)
* Rename BOM and Work order fields

* Rearranged BOM fields
2018-12-24 14:38:49 +05:30
Mangesh-Khairnar
70c5aa5f5d [Enhancement] Pending SO Items for Purchase Request Report (#16188)
* deleted old purchase request query report

* [Enhancement] pending so items for purchase request report refactor

* comments and format fix

* test and minor fixes

* test fixes
2018-12-24 14:25:47 +05:30
Charles-Henri Decultot
083f1c5370 Safe decode project name for languages with special characters (#16254) 2018-12-24 14:21:33 +05:30
Charles-Henri Decultot
9100740ba9 [Fix] FEC: Correction of the export function (#16252)
* Correction of the export function

* Improve JS code

* Codacy corrections

* Codacy corrections
2018-12-24 14:20:35 +05:30
rohitwaghchaure
1c1798c7f2 [Fix] Warehouse wise item balance age and value report not working (#16258) 2018-12-24 14:19:27 +05:30
Deepesh Garg
3ae2517867 Removed subscriber option form module page (#16270) 2018-12-24 14:16:57 +05:30
Faris Ansari
e095648810 Merge pull request #16269 from surajshetty3416/fix-daily-work-summary-patch
fix: daily_work_summary_settings migration patch
2018-12-24 11:58:13 +05:30
Suraj Shetty
772e8780b4 Merge branch 'staging-fixes' into permission-fixes 2018-12-24 10:35:12 +05:30
Suraj Shetty
b58c317abb Fix daily_work_summary_settings migration patch 2018-12-24 10:26:39 +05:30
Frappe Bot
a509d4855b Merge branch 'staging-fixes' into staging 2018-12-21 05:46:22 +00:00
Frappe Bot
7067727c0c bumped to version 11.0.3-beta.31 2018-12-21 05:46:22 +00:00
Charles-Henri Decultot
813485023b Filter cancelled and draft payments 2018-12-20 14:04:00 +00:00
Nabin Hait
16c3240ab7 Merge pull request #15973 from deepeshgarg007/accounts-receivable
Accounts receivable report based on payment terms
2018-12-20 14:16:22 +05:30
Nabin Hait
0866b2b75a Update accounts_receivable.py 2018-12-20 14:11:20 +05:30
Suraj Shetty
7ed37ae6c3 Commonify code
- use get_permitted_documents function to avoid code redundancy
2018-12-19 19:56:42 +05:30
deepeshgarg007
b645c2c75e Rebase using staging-fixes and resolved conflicts 2018-12-19 18:47:36 +05:30
deepeshgarg007
530453e4fc Added temp variables for outstanding, credit_note_amt instead of function calling 2018-12-19 18:43:07 +05:30
deepeshgarg007
5de603c6af breaked up code into multiple functions 2018-12-19 18:43:06 +05:30
deepeshgarg007
4ac8fcf4af Added test case for Accounts receivable report based on payment terms 2018-12-19 18:43:06 +05:30
deepeshgarg007
a944f88b94 Removed column for pdc date 2018-12-19 18:43:06 +05:30
deepeshgarg007
17544d7ad6 Refactored accounts receivable report for payment terms 2018-12-19 18:43:06 +05:30
deepeshgarg007
e7a91b9526 Credit note fix 2018-12-19 18:43:06 +05:30
deepeshgarg007
f98adf2be5 Changed columns and added currency conditions 2018-12-19 18:43:06 +05:30
deepeshgarg007
b6c083706a Allocation of credit note amount and pdc in payment terms 2018-12-19 18:43:06 +05:30
deepeshgarg007
24f8d3ed0c Add columns based on payment terms 2018-12-19 18:43:06 +05:30
deepeshgarg007
a8ab9b5c3d Accounts Receivable report based on payment terms 2018-12-19 18:43:06 +05:30
Nabin Hait
a78947f2de Merge pull request #16218 from deepeshgarg007/analytics-graph
[Bug-fix] Analytics report graph skipping quarter values bug fix
2018-12-19 18:08:25 +05:30
Suraj Shetty
7ae2d59ffd Merge branch 'staging-fixes' into permission-fixes 2018-12-18 15:41:03 +05:30
Suraj Shetty
a8d9bfdcfd Fix: currency symbol issue in delivery note list (#16233) 2018-12-18 14:53:17 +05:30
Rohan
159897d88d fix(customer): Fix Total Unpaid amount in Customer dashboard (#16234) 2018-12-18 14:52:23 +05:30
rohitwaghchaure
c4921d235a Merge pull request #16225 from rohitwaghchaure/not_able_to_make_po_from_mr
[Fix] Get items from material request not working for PO
2018-12-17 18:52:46 +05:30
rohitwaghchaure
c5c2124bba Merge pull request #16226 from shreyashah115/fix-list
Fix employee separation list
2018-12-17 18:52:05 +05:30
rohitwaghchaure
ca62b19bff Merge pull request #16228 from shreyashah115/fix-student-report
Fix Student Fee Collection report
2018-12-17 18:50:48 +05:30
shreyashah115@gmail.com
a5dc08ee8e fix: remove paid_amount and modify query 2018-12-17 16:47:17 +05:30
shreyashah115@gmail.com
0543f03b58 fix: Remove date_of_joining from field list 2018-12-17 15:02:30 +05:30
rohitwaghchaure
37d7d25018 Merge pull request #16207 from Zlash65/fix-qi
[Minor] Make Quality Inspection in query configurable
2018-12-17 13:55:26 +05:30
rohitwaghchaure
d6ca23b277 Merge pull request #16219 from Zlash65/fix-holiday-leave
[Minor] Fix Leave Application as half day on Holiday validation
2018-12-17 13:54:16 +05:30
rohitwaghchaure
c963ac20a6 Merge pull request #16211 from Zlash65/fix-pp
[Minor] Get items for Material Requests fix
2018-12-17 13:52:25 +05:30
Rohit Waghchaure
4ac9ea0e85 [Fix] Get items from material request not working for PO 2018-12-17 11:18:46 +05:30
Zlash65
c8337c6d83 fix check for leave on holiday for half day 2018-12-15 21:15:45 +05:30
deepeshgarg007
1ee19e4167 Analytics report graph fix 2018-12-15 15:36:09 +05:30
Faris Ansari
871f4e5df5 Merge pull request #16201 from netchampfaris/fix-product-search
fix(product-search): Include variants in product search
2018-12-14 16:36:42 +05:30
Nabin Hait
22a1e281a9 fix(variant): Show attribute values on single variant creation (#16204) 2018-12-14 14:22:45 +05:30
Faris Ansari
4994d84565 fix(pos-profile): Cleanup Form for POS Profile (#16208)
- Remove pos_profile_name field and use `name` as Prompt
- Reorganize form and label sections
- Remove `apply_discount` which was not used
2018-12-14 14:19:14 +05:30
Zlash65
82e01bc923 fix fetch material request items logic 2018-12-13 18:31:05 +05:30
Zlash65
9fde660aaf make quality inspection in query configurable 2018-12-13 13:28:01 +05:30
Saurabh
58a4f0e157 bumped to version 11.0.3-beta.30 2018-12-13 11:15:31 +06:00
Prateeksha Singh
35ff4a8576 Merge pull request #15964 from pratu16x7/staging-fixes-setup-refactor
[setup][init] setup as document records
2018-12-13 00:22:30 +05:30
Prateeksha Singh
4ba9594b04 [setup] domain not in array 2018-12-12 22:09:00 +05:30
Prateeksha Singh
9c5676292c [setup] add defaults stage 2018-12-12 21:29:55 +05:30
Prateeksha Singh
58db3c1c7c [setup] fix install_defaults 2018-12-12 21:29:55 +05:30
Prateeksha Singh
0e728972e9 [setup][minor] remove unused import 2018-12-12 21:29:55 +05:30
Prateeksha Singh
d59b61cbd9 [fixtures] re-add market_segments and sales_stages utils 2018-12-12 21:29:55 +05:30
Prateeksha Singh
4da8dced94 [setup] remove unused imports 2018-12-12 21:29:55 +05:30
Prateeksha Singh
b274f8cb2a [fix] setup chart of accounts 2018-12-12 21:29:55 +05:30
Prateeksha Singh
47118ab72a [setup] remove redundant code
- [fix] domain setup from dictionary
2018-12-12 21:29:55 +05:30
Prateeksha Singh
9282e08099 [fix] >.< call setup_taxes 2018-12-12 21:29:55 +05:30
Prateeksha Singh
c3a49b9cad [fix] set default_bank_account in company 2018-12-12 21:29:55 +05:30
Prateeksha Singh
c0f90beb7c Rename 'Chat' to 'Gitter Chat' 2018-12-12 21:29:55 +05:30
Prateeksha Singh
1aee75aadc [setup] separate out setup_company 2018-12-12 21:29:55 +05:30
Prateeksha Singh
8469b27c3a [setup] add get_country_and_charts() 2018-12-12 21:29:55 +05:30
Prateeksha Singh
aeb8abf1ed [setup] add market segments and sales stages 2018-12-12 21:29:55 +05:30
Prateeksha Singh
6f7233229e [setup][fix] company fixtures 2018-12-12 21:29:55 +05:30
Prateeksha Singh
6bf22fa7d7 [setup][fix] get newly created root Territory for children 2018-12-12 21:29:55 +05:30
Prateeksha Singh
c1c057611e [setup] bundle up fixtures and setup docs 2018-12-12 21:29:54 +05:30
Prateeksha Singh
dabf349599 [setup] don't premake company fixtures 2018-12-12 21:29:54 +05:30
Prateeksha Singh
b422458224 [setup] set the default fiscal year that was made 2018-12-12 21:29:54 +05:30
Prateeksha Singh
179d82702e [setup] fetch setup config 2018-12-12 21:29:54 +05:30
Prateeksha Singh
39b8765961 [setup][init] setup as document records 2018-12-12 21:29:54 +05:30
Faris Ansari
907e9080c4 fix(product-search): Include variants in product search 2018-12-12 19:26:52 +05:30
Ameya Shenoy
d630370183 Merge pull request #16190 from SaiFi0102/Travis-Fix
[Staging] Travis Fix: bench reinstall allow setting MariaDB root user/pass #6599
2018-12-12 18:17:51 +05:30
Rushabh Mehta
eeab3ee5d3 fix(test): use frappe.db.rollback to revert deletion of fixture data (#16192)
* debug(test): test_payroll_entry

* debug(test): test_payroll_entry

* debug(test): use frappe.db.rollback to undelete fixture data
2018-12-11 22:37:29 +05:30
Frappe Bot
4f3fd030ae Merge branch 'staging-fixes' into staging 2018-12-11 09:55:01 +00:00
Frappe Bot
caed845f3e bumped to version 11.0.3-beta.29 2018-12-11 09:55:01 +00:00
Pawan Mehta
377511165e Simple Trial Balance (#16060) 2018-12-10 21:55:01 +05:30
Frappe Bot
298796bea6 Merge branch 'staging-fixes' into staging 2018-12-10 16:05:45 +00:00
Frappe Bot
ee97a46fde bumped to version 11.0.3-beta.28 2018-12-10 16:05:45 +00:00
Ameya Shenoy
cc552b7e39 Merge pull request #16191 from Alchez/revert-16131
Revert "fix(delivery): update package total on validate (#16131)"
2018-12-10 21:32:53 +05:30
Rohan
c1eb94d37f Revert "fix(delivery): update package total on validate (#16131)"
This reverts commit f43433b43d.
2018-12-10 20:27:14 +05:30
Suraj Shetty
07e5786e1b Fix user permission checks 2018-12-10 19:10:18 +05:30
Frappe Bot
43c95e397a Merge branch 'staging-fixes' into staging 2018-12-10 13:08:33 +00:00
Frappe Bot
0509d82701 bumped to version 11.0.3-beta.27 2018-12-10 13:08:33 +00:00
Tyler Matteson
afc55ca821 De-clutter, Regionalize and Domainify Accounts Module Configuration (on staging-fixes) (#16117) 2018-12-10 18:03:19 +05:30
Saif
b52bd9c093 AR/AP Report Enhancement (#16175)
* Modified AR/AP print format

* Filter Sales Person based on either Customer or Voucher's assigned Sales Person

* -Added Sales Person column to Accounts Receivable Summary
-Added all filters in AR/AP Summary Report as in AR/AP Report
-Reordered filters for better grouping
-Fixed a bug that customer_name was not unset after removing Customer from filter
2018-12-10 17:56:42 +05:30
Rohan
f43433b43d fix(delivery): update package total on validate (#16131) 2018-12-10 17:47:31 +05:30
rohitwaghchaure
5472fff027 Added disabled field in the address (#16114) 2018-12-10 17:45:39 +05:30
RicardoJohann
bc0ef0beca Add Serial Number button in Delivery Note and Sales Invoice's Packing List (#16080) 2018-12-10 17:43:03 +05:30
rohitwaghchaure
398e47ecad Merge pull request #16189 from rohitwaghchaure/transferred_qty_issue
[Fix] Transferred qty cannot be null
2018-12-10 17:37:02 +05:30
Rohit Waghchaure
57633b75ed [Fix] Transferred qty cannot be null 2018-12-10 17:36:01 +05:30
Sagar Vora
4c5bd253a2 fix(party dashboard): empty array is truthy, check for length (#16184) 2018-12-10 17:19:10 +05:30
Rohan
39b31ece31 fix(pos): Return empty dict if no results found (#16124) 2018-12-10 17:16:39 +05:30
Deepesh Garg
0c3c148316 Linking company address to pos profile (#16142)
* Linking company address to pos profile

* Translation fix
2018-12-10 16:22:38 +05:30
Saif Ur Rehman
86853296a1 Rearranged arguments 2018-12-08 00:24:11 +05:00
Saif Ur Rehman
5608bc6d81 Added root password to .travis.yml 2018-12-07 23:04:28 +05:00
Nabin Hait
da9c96e9f5 Merge pull request #16150 from rohitwaghchaure/what_is_the_use_of_this_code
Removed unnecessary code
2018-12-07 15:18:11 +05:30
Nabin Hait
2bd6ab9fba Merge pull request #16140 from KanchanChauhan/staging-fixes
[Minor]Method path fix in Material Request js
2018-12-07 15:08:44 +05:30
Frappe Bot
67db77cfa8 Merge branch 'staging-fixes' into staging 2018-12-06 09:50:24 +00:00
Frappe Bot
4f1c659050 bumped to version 11.0.3-beta.26 2018-12-06 09:50:24 +00:00
Frappe Bot
ee5d7e6d0f Merge branch 'master' into staging-fixes 2018-12-06 09:26:42 +00:00
Rohit Waghchaure
e61430b471 Removed unnecessary code 2018-12-03 18:54:26 +05:30
Kanchan Chauhan
9dc85153e0 [Minor]Method path fix in Material Request js 2018-12-03 14:39:43 +05:30
Nabin Hait
3ecb995485 Merge pull request #16006 from gbm001/gbm001-item-barcodes-pull
fix/feat: Allow extension of barcode types (without validation)
2018-12-03 14:39:14 +05:30
Nabin Hait
94eafb6674 Merge pull request #16005 from ESS-LLP/pr_staging_fixes
[Feature][Fix] Healthcare - Patient Appointment
2018-12-03 14:38:32 +05:30
Nabin Hait
999dfda37b Merge pull request #16065 from deepeshgarg007/supplier-customer-dashboard-fix
Customer/Supplier dashboard fix for multi company setup
2018-12-03 14:37:05 +05:30
Nabin Hait
046a99acf8 Merge branch 'staging-fixes' into supplier-customer-dashboard-fix 2018-12-03 14:36:38 +05:30
Nabin Hait
02aad03e74 Merge pull request #16022 from ESS-LLP/fix-patch
fix: healthcare patch
2018-12-03 14:36:02 +05:30
Nabin Hait
b60deebaa9 Merge pull request #16118 from deepeshgarg007/analytics-fix
Bug fixes for analytics report
2018-12-03 14:19:24 +05:30
deepeshgarg007
4c79274054 Fixed patch and deprecated grid reports 2018-11-30 18:01:22 +05:30
deepeshgarg007
ec5bbe351c Row check fix for purchase analytics 2018-11-30 16:25:16 +05:30
deepeshgarg007
94a3539015 Row check fix in stock analytics 2018-11-30 16:20:48 +05:30
deepeshgarg007
37b6a2ca0b row check bug fix 2018-11-30 16:15:43 +05:30
deepeshgarg007
ee05e358d1 Rewrote query using orm 2018-11-29 16:24:28 +05:30
deepeshgarg007
c981fb389b Merge branch 'staging-fixes' of https://github.com/frappe/erpnext into supplier-customer-dashboard-fix 2018-11-29 14:57:50 +05:30
deepeshgarg007
3c7c4a61be Test case fix 2018-11-29 14:28:01 +05:30
deepeshgarg007
3eef6411dd Removed print statement 2018-11-29 13:10:02 +05:30
deepeshgarg007
9ed13f4a90 Merge branch 'staging-fixes' of https://github.com/frappe/erpnext into analytics-fix 2018-11-29 12:52:44 +05:30
deepeshgarg007
1a1c013b2a Analytics report bug fixes and code cleaning 2018-11-29 08:34:47 +05:30
Ameya Shenoy
5780e865b7 bumped to version 11.0.3-beta.25 2018-11-28 08:28:36 +00:00
Ameya Shenoy
2806d83362 Merge branch 'master' into staging-fixes 2018-11-28 08:12:48 +00:00
deepeshgarg007
ebe1e12a82 Codacy issue fixes 2018-11-28 08:21:54 +05:30
Nabin Hait
305c8b1fba Merge pull request #16110 from shreyashah115/fix-timer
[Timesheet] Element selector in Timer
2018-11-27 17:57:46 +05:30
deepeshgarg007
c1a3c72b49 final dashboard design 2018-11-27 17:09:12 +05:30
deepeshgarg007
f31caffa74 Changes in get_dashboard_info 2018-11-27 15:04:12 +05:30
Nabin Hait
3b16dd7377 Merge branch 'staging-fixes' into pr_staging_fixes 2018-11-27 14:19:49 +05:30
Nabin Hait
dfd79b0349 Merge branch 'staging-fixes' into gbm001-item-barcodes-pull 2018-11-27 14:19:20 +05:30
Nabin Hait
15ca2f438f Merge pull request #16029 from Alchez/hotfix-child-task-error
Fix error when trying to convert a task into a group even if no child tasks exist
2018-11-27 14:17:32 +05:30
Nabin Hait
676a2fbc8a Merge branch 'staging-fixes' into hotfix-child-task-error 2018-11-27 14:17:23 +05:30
deepeshgarg007
6372fbba54 Merge branch 'staging-fixes' of https://github.com/frappe/erpnext into supplier-customer-dashboard-fix 2018-11-27 14:06:58 +05:30
Nabin Hait
3854940e42 Merge branch 'staging-fixes' into fix-patch 2018-11-27 13:26:05 +05:30
Nabin Hait
e4cc062cf1 Merge pull request #16109 from rohitwaghchaure/while_pulling_advanced_entry_system_uses_grand_total
[Fix] System allocated grand total amount instead of non zero rounded total for advanced entry in the sales invoice
2018-11-27 13:22:50 +05:30
shreyashah115@gmail.com
5281fe8e50 fix: Element selector 2018-11-27 13:11:30 +05:30
Nabin Hait
72fc1b57be Merge pull request #16083 from Anurag810/new-fix-branch
[fix] delivery note with quantity equal 0 #14211
2018-11-27 13:10:31 +05:30
Nabin Hait
6743219dc2 Merge pull request #16094 from rohitwaghchaure/validate_due_date_for_purchase_invoice
[Fix] Due Date cannot be before Posting Date should consider supplier invoice date for purchase invoice
2018-11-27 13:09:16 +05:30
Nabin Hait
5f7b37ee11 Merge pull request #16093 from rohitwaghchaure/manufacturing_settings_permissions_issue
[Fix] No permission for Manufacturing Settings
2018-11-27 13:07:44 +05:30
Rohit Waghchaure
6cc2f52fa4 [Fix] System allocated grand total amount instead of non zero rounded total for advanced entry in the sales invoice 2018-11-27 12:07:03 +05:30
Nabin Hait
dde952d591 Merge pull request #16092 from deepeshgarg007/salary_slip
Salary slip earnings and deductions table bug fix
2018-11-27 11:39:10 +05:30
Nabin Hait
a9f72bd3ce Merge pull request #16108 from KanchanChauhan/indicators-in-leave-applications
[Minor] Indicators in Leave Application
2018-11-27 11:38:44 +05:30
Nabin Hait
9a06543453 Merge branch 'staging-fixes' into indicators-in-leave-applications 2018-11-27 11:38:29 +05:30
Nabin Hait
9a4cf4dce9 Merge pull request #16100 from deepeshgarg007/test-fix
Removed total label from graph
2018-11-27 11:37:30 +05:30
Nabin Hait
f48cf001ed Merge branch 'staging-fixes' into test-fix 2018-11-27 11:37:22 +05:30
Nabin Hait
be65af5dfe Merge pull request #16101 from SaiFi0102/patch-1
Company rename abbr to consider more DocTypes
2018-11-27 11:36:46 +05:30
Nabin Hait
57fa8759ee Merge pull request #16102 from deepeshgarg007/fees
Paid Amount not showing for fees in web portal fix
2018-11-27 11:36:27 +05:30
Nabin Hait
df8fb59511 Merge pull request #16099 from SaiFi0102/SO-Validate-Set-GrossProfit
Set Gross Profit on server-side validation of Sales Order
2018-11-27 11:19:15 +05:30
Nabin Hait
f806cfecaa Merge branch 'staging-fixes' into SO-Validate-Set-GrossProfit 2018-11-27 11:18:54 +05:30
Kanchan Chauhan
2d0b788105 [Minor] Indicators in Leave Application 2018-11-27 10:37:23 +05:30
deepeshgarg007
bc513a8828 Removed paid amount form Fees doctype 2018-11-26 20:43:39 +05:30
deepeshgarg007
a9525de0da paid amount fix in fees 2018-11-26 20:34:32 +05:30
Saif
6a9d9d76ef Company rename abbr to consider more DocTypes 2018-11-26 19:56:13 +05:00
Nabin Hait
78d9fac0ce Merge branch 'staging-fixes' into pr_staging_fixes 2018-11-26 20:25:34 +05:30
Nabin Hait
15951e6e93 Merge branch 'staging-fixes' into gbm001-item-barcodes-pull 2018-11-26 20:25:29 +05:30
Nabin Hait
93595fa60a Merge branch 'staging-fixes' into hotfix-child-task-error 2018-11-26 20:24:47 +05:30
Nabin Hait
91c811f170 Merge branch 'staging-fixes' into new-fix-branch 2018-11-26 20:23:37 +05:30
Nabin Hait
c5064069c7 Merge branch 'staging-fixes' into manufacturing_settings_permissions_issue 2018-11-26 20:23:11 +05:30
Nabin Hait
218fa51dba Merge branch 'staging-fixes' into validate_due_date_for_purchase_invoice 2018-11-26 20:23:00 +05:30
Nabin Hait
9fba32a917 Merge pull request #16098 from rohitwaghchaure/on_uncheck_is_return_clear_reference_number
On disabled is return field clear the reference field
2018-11-26 20:20:30 +05:30
Nabin Hait
73e3138a5b Merge branch 'staging-fixes' into on_uncheck_is_return_clear_reference_number 2018-11-26 20:20:22 +05:30
deepeshgarg007
05c2989698 removed total from graph 2018-11-26 20:19:57 +05:30
Nabin Hait
9170c2daab Merge pull request #15989 from deepeshgarg007/bug-fixes
Minor issue fixes
2018-11-26 20:05:25 +05:30
Nabin Hait
b32abde2ac Merge branch 'staging-fixes' into bug-fixes 2018-11-26 20:05:09 +05:30
Saif Ur Rehman
5fdbc68ca3 Set Gross Profit on server-side validation of Sales Order 2018-11-26 19:32:16 +05:00
Rohit Waghchaure
b4a5993ece On uncheck is return field clear the reference field 2018-11-26 20:02:01 +05:30
Nabin Hait
21983b8432 Merge pull request #16001 from jsukrut/staging-fixes
[FIX][#15018][PATIENT Relation should be unique]
2018-11-26 20:01:19 +05:30
Nabin Hait
bcd0ba0d69 Merge pull request #16041 from surajshetty3416/pos-profile-fix
fix: Add additional condition to get_pos_profile
2018-11-26 19:59:17 +05:30
Nabin Hait
56dc5c1be3 Merge branch 'staging-fixes' into pos-profile-fix 2018-11-26 19:59:07 +05:30
Nabin Hait
212a29ae2c Merge pull request #16028 from rohitwaghchaure/not_able_to_view_general_ledger
[Fix] Not able to view general ledger for purchase invoice
2018-11-26 19:57:24 +05:30
Nabin Hait
25e60f3934 Merge pull request #16044 from ESS-LLP/fix-trial-balance
fix: Trial Balance print
2018-11-26 19:56:27 +05:30
Nabin Hait
4191d7eb52 Merge pull request #16045 from SaiFi0102/GrossProfit-Fix-Buying-Amount-Multiple-Invoice
Fixed get_buying_amount in Gross Profit report:
2018-11-26 19:55:06 +05:30
Nabin Hait
d0af0887be Merge pull request #16051 from SaiFi0102/patch-1
Remove "Test" Letter Head
2018-11-26 19:47:07 +05:30
Nabin Hait
70642a0ae4 Merge pull request #16055 from rohitwaghchaure/fixed_holiday_list_not_working
[Fix] New holiday list form is not working
2018-11-26 19:44:19 +05:30
Nabin Hait
36f266355d Merge branch 'staging-fixes' into fixed_holiday_list_not_working 2018-11-26 19:44:11 +05:30
Nabin Hait
736ce9a176 Merge pull request #16095 from SaiFi0102/BugFix-Rate-Calculation
Fixed error due to incorrect use of 'this' while calculating rate
2018-11-26 19:31:25 +05:30
Saif Ur Rehman
147fa73d3f Fixed incorrect use of 'this' causing errors calculating rate 2018-11-26 18:14:06 +05:00
Rohit Waghchaure
d1a85a3637 [Fix] Due date can not be greter than posting date validation should consider supplier invoice date for purchase invoice 2018-11-26 18:42:29 +05:30
Rohit Waghchaure
15ed7a6351 [Fix] No permission for Manufacturing Settings 2018-11-26 17:31:18 +05:30
Anurag Mishra
e5248b6933 Merge branch 'new-fix-branch' of https://github.com/anurag810/erpnext into new-fix-branch 2018-11-26 17:25:28 +05:30
Anurag Mishra
5b6dd58b3e fixed ZeroDivisionError in sales_order.py 2018-11-26 17:22:50 +05:30
Nabin Hait
fc6194e640 Merge branch 'staging-fixes' into new-fix-branch 2018-11-26 17:16:06 +05:30
Nabin Hait
d5fc05c10b Merge pull request #16090 from frappe/update-stale-bot-1-2
Update stale.yml
2018-11-26 17:15:19 +05:30
Nabin Hait
e8469daf0c Merge branch 'staging-fixes' into update-stale-bot-1-2 2018-11-26 17:14:59 +05:30
deepeshgarg007
bd87903b56 Added condition for default amount 2018-11-26 17:13:59 +05:30
Anurag Mishra
e657fe84b8 making validation generic for sales order,sales invoice,purchase order etc. 2018-11-26 17:13:10 +05:30
Anurag mishra
6ddb15b3df fix(validate): Qty is mandatory in delivery note 2018-11-26 17:13:10 +05:30
Anurag mishra
7b2c445707 Delivery Note fixes 2018-11-26 17:13:10 +05:30
Nabin Hait
059c6f8da5 Merge pull request #16070 from nabinhait/travis-fix-1
Travis fixes
2018-11-26 17:00:10 +05:30
Nabin Hait
73ca3cfca6 fix(test): removed test print 2018-11-26 16:16:42 +05:30
Anurag Mishra
42d3af3bbb making validation generic for sales order,sales invoice,purchase order etc. 2018-11-26 15:19:17 +05:30
deepeshgarg007
533066eb87 Salary slip bug fix 2018-11-26 15:04:21 +05:30
Prateeksha Singh
758ca946fa Update stale.yml 2018-11-26 14:45:54 +05:30
Anurag mishra
66bd5810c5 fix(validate): Qty is mandatory in delivery note 2018-11-26 11:36:57 +05:30
Anurag mishra
bc4574b59d Delivery Note fixes 2018-11-26 11:33:22 +05:30
Nabin Hait
2665c37f38 temp(travis): Print statement to fix travis 2018-11-26 11:05:28 +05:30
Nabin Hait
48e0e19b03 fix(test): Fixed salary slip and sales analytics test cases 2018-11-26 11:05:28 +05:30
Nabin Hait
2508d11097 fix(test): Test cases fixed 2018-11-26 11:05:28 +05:30
Nabin Hait
f77cd54a6c fix(tds): Create tds payable under correct parent 2018-11-26 11:05:28 +05:30
deepeshgarg007
9cdece4ca2 Test case fix and other minor bug fix 2018-11-26 11:05:28 +05:30
deepeshgarg007
a1cffc3490 minor changes in dashboard 2018-11-23 16:51:35 +05:30
deepeshgarg007
0e8c36473a Added colspan to indicators 2018-11-23 11:22:24 +05:30
deepeshgarg007
920dc1400f Customer/Supplier dashboard fix for multi company setup 2018-11-23 10:17:28 +05:30
Rohit Waghchaure
037a151ef5 [Fix] New holiday list form is not working 2018-11-22 12:57:34 +05:30
Saif
2a2f2742eb Remove "Test" Letter Head 2018-11-21 23:29:09 +05:00
Ranjith
1879e91148 fix: Trial Balance 2018-11-21 16:04:05 +05:30
Saif Ur Rehman
23eef11cf5 Fixed get_buying_amount in Gross Profit report:
To handle the case where there may be multiple invoices for a single delivery
2018-11-21 15:32:37 +05:00
Suraj Shetty
1eb098caf9 Add additional condition condition to get_pos_profile
- If we have any POS Profile related to the user,
that profile should be used
2018-11-21 14:36:58 +05:30
Rohan Bansal
f838597b5f fix(task): Fix error when trying to convert a task into a group even if no child tasks exist 2018-11-20 13:18:05 +05:30
Rohit Waghchaure
770a13ebc3 [Fix] Not able to view general ledger for purchase invoice 2018-11-20 13:01:52 +05:30
Ranjith
5d2e52c4ef fix: healthcare patch 2018-11-19 20:03:25 +05:30
Jamsheer
64e42e1e88 fix: Patient Appointment - update list view 2018-11-19 13:00:49 +05:30
Jamsheer
ee6b317ab5 fix: Patient Appointment - Code standards 2018-11-19 13:00:49 +05:30
Jamsheer
45695c9bcb fix: Realign Patient Appointment fields 2018-11-19 13:00:49 +05:30
Jamsheer
dc3ae114cd feat: Reschedule - Patient Appointment 2018-11-19 13:00:49 +05:30
Andrew McLeod
f99a68a695 feat: Added unit testing for Item Barcodes in item.py
Adds three different barcodes and barcodes types to a test item and
checks that they are added correctly.
Adds a barcode that already exists, and checks a DuplicateEntryError
is raised.
Adds an invalid EAN barcode and checks InvalidBarcode (a subclass of
ValidationError) is raised.
2018-11-16 13:55:55 +00:00
Andrew McLeod
5607762c0f fix/feat: Allow extension of barcode types (without validation)
Currently, it is difficult to add new custom barcode types for two reasons, both of which relate to validate_barcode in item.py:
- There is a bug where barcode types with a space in, such as Code 128, are split in two (so barcode_type is checked against 'Code' and '128' rather than 'Code 128'). This is fixed by splitting the Options field against a newline, instead of spaces.
- All barcodes are validated against the stdnum.ean library. This only handles EAN-8, EAN-13 and UPC-12 barcodes and any other barcode will fail. Barcodes with no type will continue to not be checked. Barcodes with the default barcode_types of EAN, UPC will continue to be checked. The non-default barcode_types of EAN-13 and EAN-8 will also be checked. The barcode_type is cast to upper case before this check is made so ean, upc, ean-13 and ean-8 will also be validated.
This allows people to add their own barcode types, such as Code 128 and QR codes. Users can add custom validation of these barcodes using the usual hooks, but they cannot remove the standard validation.
2018-11-16 11:08:39 +00:00
Jsukrut
b9a95e29b7 [FIX][#15018][PATIENT Relation should be unique] 2018-11-16 11:30:12 +05:30
deepeshgarg007
795686d1cc Merge branch 'staging-fixes' of https://github.com/frappe/erpnext into bug-fixes 2018-11-15 16:30:48 +05:30
Frappe Bot
64b4d98778 Merge branch 'staging-fixes' into staging 2018-11-15 09:43:08 +00:00
Frappe Bot
d9dccaefba bumped to version 11.0.3-beta.24 2018-11-15 09:42:35 +00:00
Frappe Bot
ef745b0197 bumped to version 11.0.3-beta.23 2018-11-15 09:37:17 +00:00
Nabin Hait
0aca5aad14 Merge pull request #15976 from deepeshgarg007/summary
[Fix] Accounts receivable summary print format showing zero values
2018-11-15 14:52:16 +05:30
Nabin Hait
a0a2f58a21 Merge pull request #15985 from adityahase/perf-patch
perf(patch): Use INSERT with ON DUPLICATE KEY UPDATE
2018-11-15 14:50:58 +05:30
Frappe Bot
6647ea270c Merge branch 'staging-fixes' into staging 2018-11-15 09:19:18 +00:00
Frappe Bot
a4fe912382 bumped to version 11.0.3-beta.23 2018-11-15 09:19:18 +00:00
Frappe Bot
98b4a1bc81 Merge branch 'master' into staging-fixes 2018-11-15 09:12:04 +00:00
rohitwaghchaure
cc907559d0 Merge pull request #15992 from rohitwaghchaure/code_optimization_for_consolidated_report
Code optimization for consolidated financial statement report
2018-11-15 13:48:17 +05:30
Rohit Waghchaure
704796b1cb Code optimization for consolidated financial statement report 2018-11-15 13:46:18 +05:30
rohitwaghchaure
02a7f8f0b2 Merge pull request #15991 from rohitwaghchaure/fixed_consolidated_conversion_issue
[Fix] Consolidated financial statement report currency conversion issue
2018-11-15 12:56:11 +05:30
Rohit Waghchaure
9d0f90975b [Fix] Consolidated financial statement report currency conversion issue 2018-11-15 12:55:20 +05:30
rohitwaghchaure
93f358778b Merge pull request #15990 from rohitwaghchaure/patch_code_refactor
[Minor] Patch fixes
2018-11-15 12:21:46 +05:30
Rohit Waghchaure
43920530a1 [Minor] Patch fixes 2018-11-15 12:20:27 +05:30
deepeshgarg007
4c366eed23 Minor issue fixes 2018-11-15 12:02:07 +05:30
Deepesh Garg
3b8c84fa75 Merge pull request #15975 from nabinhait/staging-fixes
fix(test): Fixed item discount amount calculation and test cases related to pricing rule
2018-11-15 12:01:09 +05:30
rohitwaghchaure
e907c0d15c Merge pull request #15986 from rohitwaghchaure/added_currency_filter_in_consolidated_report
Added currency filter in consolidated financial statement report
2018-11-15 10:53:02 +05:30
Rohit Waghchaure
a95697f506 Added currency filter in consolidated financial statement report 2018-11-14 19:55:44 +05:30
Aditya Hase
d168a71cfb perf(patch): Use INSERT with ON DUPLICATE KEY UPDATE
update_total_qty_field patch was using UPDATE statement with CASE

Now use INSERT INTO with ON DUPLICATE KEY UPDATE clause which
allows this query to use indexes and update multiple rows per query.
2018-11-14 19:09:07 +05:30
Frappe Bot
e4193030b1 Merge branch 'staging-fixes' into staging 2018-11-14 11:33:03 +00:00
Frappe Bot
fac49983a0 bumped to version 11.0.3-beta.22 2018-11-14 11:32:34 +00:00
rohitwaghchaure
ba97b9b2d8 Merge pull request #15980 from rohitwaghchaure/on_save_allow_transfer_for_manufatured_changed
[Fix] On save Allow Transfer for Manufacture reset to default value even if user has changed manually
2018-11-14 15:12:45 +05:30
rohitwaghchaure
593f3f1756 Merge pull request #15978 from nabinhait/fetch_from_fix
fix(patch): Fetch missing gst hsn code in transactions and set hsn-wise taxes
2018-11-14 15:11:26 +05:30
Rohit Waghchaure
917dda1b76 [Fix] On save Allow Transfer for Manufacture reset to default value even if user has changed manually 2018-11-14 01:18:41 +05:30
Nabin Hait
367a076fa4 fix(discount): Fixed item discount amount calculation 2018-11-13 18:41:58 +05:30
Nabin Hait
d34bfa8c2c fix(patch): Fetch missing gst hsn code in transactions and set hsn-wise taxes 2018-11-13 18:21:22 +05:30
Frappe Bot
fe62024824 bumped to version 11.0.3-beta.21 2018-11-13 11:41:27 +00:00
Nabin Hait
3409e55d24 Merge pull request #15974 from Alsum/assign-sa
assign-sa-to-group-of-employees
2018-11-13 16:55:17 +05:30
deepeshgarg007
7bc6f3843a Fix for accounts Receivable Summary Showing zero values 2018-11-13 16:54:54 +05:30
Frappe Bot
25a74b8283 Merge branch 'staging-fixes' into staging 2018-11-13 11:23:06 +00:00
Frappe Bot
a29237beeb bumped to version 11.0.3-beta.21 2018-11-13 11:23:06 +00:00
Nabin Hait
7fe4124bb8 fix(field property): Made barcode field non-mandatory in item 2018-11-13 16:48:59 +05:30
Frappe Bot
88c88d6e7c Merge branch 'master' into staging-fixes 2018-11-13 10:59:05 +00:00
Nabin Hait
688758a56f fix(test): Fixed item discount amount calculation and test cases related to pricing rule 2018-11-13 16:13:16 +05:30
alsum
e04a753d53 assign-sa-to-group-of-employees 2018-11-13 11:43:58 +02:00
Nabin Hait
ee887f4db7 Merge pull request #15796 from Alsum/set_current_asset_value
trigger set_current_asset_value when make asset_value_adjustment from asset form
2018-11-13 12:42:28 +05:30
Nabin Hait
ee190e34c2 Update asset_value_adjustment.js 2018-11-13 12:41:36 +05:30
Saif
60ec88bcc8 Added Default Warehouse field that sets all item's warehouse (#15462)
* -Added field def_warehouse that sets warehouse of all items
-Grouped warehouse fields together and put raw materies supplied before items table, it will only show if there are any items supplied

* Set def_warehouse in test_sales_order.py

* Changed from def_warehouse to set_warehouse

* Rest of def_warehouse to set_warehouse
2018-11-13 12:37:53 +05:30
Alchez
ce3340903d Update Delivery Trip status based on visited stops (#15723)
* feat(delivery_trip_status): Update Delivery Trip status based on visited stops

* feat(delivery_trip_status): Fix tests

* feat(delivery_trip_status): Fix allow on submit for status

* feat(delivery_trip_status): Change status mapping

* feat(delivery_trip_status): Fix patch

* Update update_delivery_trip_status.py
2018-11-13 12:22:17 +05:30
Alchez
9f87c441b0 feat(delivery_trip): Create a Delivery Trip by selecting multiple Delivery Notes in list view (#15706) 2018-11-13 12:20:05 +05:30
Alchez
6f1fd193eb fix(production_plan): Allow work orders to be cancelled (#15955) 2018-11-13 11:47:23 +05:30
rohitwaghchaure
849169e82b Merge pull request #15969 from rohitwaghchaure/fix_company_dashbord_sales_count
[Fix] Company dashboard sales count condition
2018-11-13 11:37:26 +05:30
Britlog
7d9689cc92 [Fix] Website Conversion factor query (#15866)
* [Fix] Conversion factor query

* Update product.py
2018-11-13 11:36:41 +05:30
Rohit Waghchaure
14ffe8b935 [Fix] Company dashboard sales count condition 2018-11-13 11:35:38 +05:30
Britlog
9e9e37d39b [Fix] Conversion factor in offline POS (#15867) 2018-11-13 11:34:27 +05:30
Deepesh Garg
b65bb5df2e Function renaming, code cleaning and minor fixes (#15938) 2018-11-13 11:28:58 +05:30
Stavros Anastasiadis
a695dad525 Upgrade BOM Stock Report base with Qty to Produce (#15939) 2018-11-13 11:17:41 +05:30
Shreya Shah
89974b221d [Feature] Create Raw Material Request from Sales Order (#15452)
* Add new button to Sales Order form - Request for Raw Materials

* Modify get_work_order_items function

* Commonify functions in Production Plan to make it compatible with new feature

* Create and submit Material Request from Sales Order

* Link Sales Order with Material Request

* Minor

* Rename label

* Fix Codacy

* Modify as per review suggestions

- Move dialog to a new function
- Move checkboxes below other fields

* Minor changes

* Check for permissions

* Add common checkboxes for all items

* Fix codacy

* fix: Travis

* fix: Use variable to store query result

* fix: Add comment before fetching exploded items

* refactor: Break into multiple functions

* test: Add test case
2018-11-13 11:15:03 +05:30
Zarrar
6922415d1b [New Feature]Scan Item Barcode label to quick create/update records in items child table (#15731)
* Update transaction.js

* setup barcode scan

stock entry controller not inherited from transaction.js, need to call setup barcode scan from transaction.js

* fix bug of item_code change always reset qty to 0

when calling frappe.model.set_value(dt,dn,'item_code',xxx), even qty is set, system always reset qty to 0.

* Update transaction.js

* Update transaction.js

* Update transaction.js

* Update transaction.js

* Update transaction.js

* Update transaction.js

* clean up barcode logic for transactions

* call scan_barcode method for stock entry

* separate out logic for searching serial, batch or barcode number

* added scan barcode field in transactions doctype

* search barcode-serial-batch sequence, code rectify

* hide all barcode related field if disabled from settings

* remove print statement

* Update stock_entry.py
2018-11-13 11:11:32 +05:30
Ameya Shenoy
42928f978b fix: work order item sorting (#15967) 2018-11-13 11:04:17 +05:30
Ameya Shenoy
e8d3aa9cc9 Merge pull request #15966 from codingCoffee/frankfurter
fix: changed currency exchange API to frankfurter
2018-11-12 18:35:36 +05:30
Deepesh Garg
84483ff776 Stock analytics script report (#15630)
* Stock analytics script report

* Codacy Issue Fixes

* Codacy Issue Fixes

* Removed Trailing Whitespaces

* Code cleaning and optimization

* Minor Changes

* Code cleaning and spacing

* Added link for stock analytics in stock.py

* Refactoring and code cleaning

* Codacy issue fixes
2018-11-12 17:05:31 +05:30
Deepesh Garg
a057f4c2a0 Script report for purchase analytics (#15612)
* Purchase Analytics Query Report

* Minor Changes

* Codacy Issue Fixes

* Codacy Issues Fixed

* Code cleaning and optimization

* Indentation Issue Fix

* Code cleaning and better function naming

* Added link for purchase analytics in buying.py

* Added link for production analytics in manufacturing.py

* Commonified purchase-analytics using Analytics class

* Codacy issue fix
2018-11-12 17:01:02 +05:30
rohitwaghchaure
ab76ff0836 Added new option group by voucher(consolidated) in the general ledger report (#15957) 2018-11-12 16:58:24 +05:30
Nabin Hait
5e85ab3b67 Update setup.py 2018-11-12 16:46:12 +05:30
JodeQ
1b8e9cd3bb Permission error for new Sales invoice (#15952)
In version
```
Installed Apps
ERPNext: v11.0.3-beta.20 () (staging)
Frappe Framework: v11.0.3-beta.25 () (staging)
```

When creating a new Sales invoice without healthcare active we have this error
```
Not permitted
Insufficient Permission for Patient
```
Console log
```
Traceback (most recent call last):
  File "/home/frappe/auroraone-v11/apps/frappe/frappe/app.py", line 61, in application
    response = frappe.handler.handle()
  File "/home/frappe/auroraone-v11/apps/frappe/frappe/handler.py", line 21, in handle
    data = execute_cmd(cmd)
  File "/home/frappe/auroraone-v11/apps/frappe/frappe/handler.py", line 56, in execute_cmd
    return frappe.call(method, **frappe.form_dict)
  File "/home/frappe/auroraone-v11/apps/frappe/frappe/__init__.py", line 1007, in call
    return fn(*args, **newargs)
  File "/home/frappe/auroraone-v11/apps/frappe/frappe/desk/search.py", line 53, in search_link
    search_widget(doctype, txt, query, searchfield=searchfield, page_length=page_length, filters=filters, ignore_user_permissions=ignore_user_permissions)
  File "/home/frappe/auroraone-v11/apps/frappe/frappe/desk/search.py", line 149, in search_widget
    as_list=not as_dict)
  File "/home/frappe/auroraone-v11/apps/frappe/frappe/__init__.py", line 1235, in get_list
    return frappe.model.db_query.DatabaseQuery(doctype).execute(None, *args, **kwargs)
  File "/home/frappe/auroraone-v11/apps/frappe/frappe/model/db_query.py", line 40, in execute
    raise frappe.PermissionError(self.doctype)
PermissionError: Patient
```
2018-11-12 16:42:05 +05:30
Pawan Mehta
aa0bed16f6 [fix] #14038-Std hours at company level to calculate timesheet hours (#15819)
* [fix] #14038

* codacy fixes

* add end time calc method

* test case and rename function

* Update timesheet.py
2018-11-12 16:40:07 +05:30
Deepesh Garg
6714214951 Server side script report for sales analytics (#15589)
* Sales Analytics Report

* Codacy issue fixes and  name column addition

* Minor Fixes

* Minor Changes

* Codacy Issue Fixes

* Codacy Issue Fixes

* Bug Fixes

* Code cleaning and optimization

* Deleted Duplicate code

* Indentation Issue Fixes

* Added Supplier Condition

* Cleaned code and better function naming

* Added report link for sales analytics in selling.py

* fix(patch): Patch to delete old analytics reports

* feat(refactor): Created class and refactored code using object oriented paradigm

* Column condition fix

* Minor condition fix

* Minor fix

* parent child map for purchase analytics

* Minor Fixes in get_periodic_data

* Used dots for filters instead of brackets

* Minor Bug fix in get_period_date_ranges

* Test Cases for Analytics Report
2018-11-12 16:15:54 +05:30
Frappe Bot
35ec2469e9 Merge branch 'staging-fixes' into staging 2018-11-09 10:19:21 +00:00
Frappe Bot
9159ee83ca bumped to version 11.0.3-beta.20 2018-11-09 10:19:21 +00:00
Frappe Bot
4df671585b Merge branch 'master' into staging-fixes 2018-11-09 10:11:27 +00:00
alsum
852bd76a58 add set_current_asset_value to onload func 2018-11-08 11:12:33 +02:00
Alchez
bf20be53ef fix(bom): Display item name in new BOM form (#15783) 2018-11-08 12:54:20 +05:30
Shreya Shah
9e484fbc12 fix(payment-entry): Take default value None for paid_from (#15777) 2018-11-08 12:52:14 +05:30
patilsangram
667f0fbd6d [fix] Invoice/Delivery note customer po_no overwritten by Sales order null po_no (#15785) 2018-11-08 12:51:41 +05:30
Ameya Shenoy
49647bfecc fix: develop version should be 12 (#15928) 2018-11-08 12:48:35 +05:30
Zarrar
5be6d19f4d [Minor] Display Discount Amount when Tax table is empty (#15812)
* show discount amount even when tax table is empty

* negate the value for discount while printing
2018-11-08 12:16:26 +05:30
Alchez
068ba191e7 [Feature] Route optimization for Delivery Trip stops (#15566)
* Minor improvements

* [Feature] Route optimization for Delivery Trip stops

* Process and optimize the entire route, with or without locks

* Form sets of routes for optimization based on applied lock positions

* Re-arrange stops based on the optimized routes and lock positions

* Set delay times between stops - offset estimation times by delays cumulatively

* Fix codacy errors

* Fix travis

* feat(route_optimization): Set estimated route distance from Google Maps

* feat(route_optimization): Add tests for route lists

* feat(route_optimization): Fix tests
2018-11-08 11:57:05 +05:30
Shreya Shah
3f6eb6b393 fix: If party type is Shareholder, set appropriate name field (#15916) 2018-11-08 11:51:13 +05:30
Frappe Bot
823e754565 Merge branch 'master' into staging-fixes 2018-11-07 11:26:11 +00:00
Ameya Shenoy
96a2f00c07 Merge branch 'staging-fixes' into staging 2018-11-06 11:13:36 +00:00
Ameya Shenoy
675636cd03 bumped to version 11.0.3-beta.19 2018-11-06 11:13:36 +00:00
Ameya Shenoy
0c42f99b6f Merge pull request #15920 from rohitwaghchaure/fix_patch_ascii_code_error
[Fix] Patch, ascii codec error
2018-11-06 16:35:21 +05:30
Rohit Waghchaure
56bf39bfea [Fix] Patch 2018-11-06 16:32:29 +05:30
Ameya Shenoy
65797bca64 Merge branch 'master' into staging-fixes 2018-11-06 11:02:08 +00:00
rohitwaghchaure
b5ba867b3f Merge pull request #15917 from nabinhait/encoding-issue
fix(encoding): Fixed encoding issue in financial statements
2018-11-06 15:37:23 +05:30
rohitwaghchaure
9eafe8c23e Update financial_statements.py 2018-11-06 13:28:18 +05:30
Nabin Hait
614b042ed3 fix(encoding): Fixed encoding issue in financial statements 2018-11-06 11:48:51 +05:30
Faris Ansari
0fb943181e Merge pull request #15910 from netchampfaris/marketplace-fixes-3
Hub fixes
2018-11-05 19:19:23 +05:30
Faris Ansari
d6b664f7ee fix(hub): Prevent registered actions 2018-11-05 19:18:48 +05:30
rohitwaghchaure
1b2ceadc93 [Fix] Asset date validation (#15887)
* [Fix] Asset date validation

* Update asset.py
2018-11-05 16:04:04 +05:30
Faris Ansari
0d08da50c6 fix: Refresh PageContainer component based on current route 2018-11-05 15:47:26 +05:30
Faris Ansari
a22e16dbe3 Merge pull request #15892 from netchampfaris/marketplace-fixes-1
fix: Use frappe.utils.make_event_emitter
2018-11-05 13:48:16 +05:30
Ameya Shenoy
4a6768791b Merge branch 'staging-fixes' into staging 2018-11-05 06:50:34 +00:00
Ameya Shenoy
5ed0257ce2 bumped to version 11.0.3-beta.18 2018-11-05 06:50:33 +00:00
Ameya Shenoy
4a75d58d89 Merge branch 'master' into staging-fixes 2018-11-05 06:45:04 +00:00
Shreya Shah
6a206225cb Merge pull request #15902 from agritheory/agritheory-restrict_to_domain
Doctypes in domains that are in beta are now restricted to that domain
2018-11-05 10:56:39 +05:30
Tyler Matteson
d14e46ef02 Doctypes in domains that are in beta are now restricted to that domain
non-profit, agriculture, healthcare, hospitality, education

Please enter the commit message for your changes. Lines starting
2018-11-04 08:39:52 -05:00
Faris Ansari
68dbf7f99c fix: Use frappe.utils.make_event_emitter 2018-11-02 13:30:51 +05:30
rohitwaghchaure
c1d255e7bc Merge pull request #15882 from Zlash65/fixtds
[Minor] TDS not calculated properly fix
2018-11-02 13:18:09 +05:30
Zarrar
16d45c8e2e safe encode non ascii characters (#15755) 2018-11-02 13:17:24 +05:30
Charles-Henri Decultot
a89bce0b6e Encoding correction (#15877) 2018-11-01 13:18:49 +05:30
Zlash65
ab9852d31a tds not calculated appropriately 2018-11-01 11:40:15 +05:30
Shreya Shah
9f931780a2 Merge pull request #15868 from ESS-LLP/fix-membership
fix: Membership - allow system users to create membership
2018-11-01 10:54:32 +05:30
Zarrar
92a4ff4e81 Merge pull request #15874 from shreyashah115/portal-fixes
Add overdue status for sales order
2018-11-01 10:46:08 +05:30
Ameya Shenoy
46e618bc6e Merge branch 'staging-fixes' into staging 2018-10-31 13:51:24 +00:00
Ameya Shenoy
9f20f777b2 bumped to version 11.0.3-beta.17 2018-10-31 13:51:24 +00:00
Ameya Shenoy
961849beb4 Merge branch 'master' into staging-fixes 2018-10-31 13:43:12 +00:00
deepeshgarg007
78b273af43 [Bug-Fix] Cannot Save Bank Statement Transaction Entry (#15793)
* Create bank settings only if bank name is available

* Minor bug-fix in validate_overlap
2018-10-31 18:12:03 +05:30
Shreya
e3a7c68d4f fix(portal): Add overdue status for sales order 2018-10-31 16:00:27 +05:30
Ranjith
f01bf9048d fix: Membership - allow system users to create membership for existing Members 2018-10-31 14:33:28 +05:30
Ameya Shenoy
71ede099ea Merge branch 'staging-fixes' into staging 2018-10-30 12:53:35 +00:00
Ameya Shenoy
d45fef5423 bumped to version 11.0.3-beta.16 2018-10-30 12:53:35 +00:00
Ameya Shenoy
6178b79555 Merge branch 'master' into staging-fixes 2018-10-30 12:48:45 +00:00
rohitwaghchaure
dca4b294bd Merge pull request #15853 from rohitwaghchaure/delete_button_not_working_for_print_in_mobile
[Fix] Delete button not working in POS for mobile
2018-10-29 16:52:34 +05:30
Rohit Waghchaure
152a0c86b0 [Fix] Delete button not working in POS for Ipad 2018-10-29 16:50:18 +05:30
Shreya Shah
85a9b52dfa Merge pull request #15789 from deepeshgarg007/production-analytics
[Bug-fix]Production analytics
2018-10-29 15:49:19 +05:30
Shreya Shah
69bbe1995c Update production_analytics.py 2018-10-29 15:38:21 +05:30
deepeshgarg007
7b91f9fa0c Bug Fixes 2018-10-29 15:16:25 +05:30
Shreya Shah
81cdd967d7 Merge pull request #15794 from ashish-greycube/patch-1
Update employee_advance.py
2018-10-29 14:38:21 +05:30
alsum
27e7c15c16 trigger set_current_asset_value when make asset_value_adjustment from asset form 2018-10-24 13:23:34 +02:00
ashish-greycube
4d47c63db1 Update employee_advance.py
https://github.com/frappe/erpnext/issues/13694
Cancel of  already paid "Expense Claim" gives error IntegrityError: (1048, u"Column 'claimed_amount' cannot be null")
Sol: claimed_amount should be flt
2018-10-24 16:35:31 +05:30
Ameya Shenoy
9750d5c184 Merge branch 'staging-fixes' into staging 2018-10-23 12:56:51 +00:00
Ameya Shenoy
6adcfa6032 bumped to version 11.0.3-beta.15 2018-10-23 12:56:51 +00:00
Ameya Shenoy
3643e7b1b4 Merge branch 'master' into staging-fixes 2018-10-23 12:52:48 +00:00
Ameya Shenoy
881bb4646b Merge branch 'staging-fixes' into staging 2018-10-23 08:05:33 +00:00
Ameya Shenoy
4293d17602 bumped to version 11.0.3-beta.14 2018-10-23 08:05:33 +00:00
Ameya Shenoy
ca66c7ba14 Merge branch 'master' into staging-fixes 2018-10-23 08:01:13 +00:00
Shreya Shah
669c5d0298 Merge pull request #15724 from shreyashah115/fix-leave
Do not consider current leave application while submitting leave
2018-10-23 12:31:02 +05:30
Faris Ansari
d3e3c1ba72 Merge pull request #15768 from rohitwaghchaure/market_place_settings_error
[Fix] Marketplace settings permission error
2018-10-23 12:07:21 +05:30
Rohit Waghchaure
55416e08f1 [Fix] Marketplace setting permission error 2018-10-23 11:52:06 +05:30
Shreya
1b105e2575 Add test case 2018-10-23 11:45:57 +05:30
Shreya
60d8a0da1e fix(leave-status): Do not consider current leave application while submitting 2018-10-23 11:45:57 +05:30
Shreya Shah
9db75ecde2 Merge pull request #15766 from Zlash65/fix-mod
[Minor] Travis fix
2018-10-23 11:44:33 +05:30
Zlash65
635d4dbebe subscriber deprecated test case fixes 2018-10-23 11:00:19 +05:30
rohitwaghchaure
cf076f4692 Merge pull request #15753 from Zlash65/fix-mod
[Minor] Field name fix to fetch Supplier
2018-10-23 09:45:39 +05:30
Ameya Shenoy
a0e533ede5 Merge branch 'master' into staging-fixes 2018-10-22 10:37:14 +00:00
Ranjith Kurungadam
ac6e3a69f9 fix: Serial No- allow editing SO, track changes (#15741) 2018-10-22 12:06:54 +05:30
Zlash65
473437931c field name fix 2018-10-22 11:22:12 +05:30
Ameya Shenoy
4215b85e46 Merge branch 'staging-fixes' into staging 2018-10-19 12:56:48 +00:00
Ameya Shenoy
7e97230c92 bumped to version 11.0.3-beta.13 2018-10-19 12:56:48 +00:00
Ameya Shenoy
bbfdc13ab7 Merge branch 'master' into staging-fixes 2018-10-19 12:48:18 +00:00
Nabin Hait
5d1171678e fix(perpetual inventory): Get warehouse account map only if perpetual inventory enabled (#15743)
* fix(perpetual inventory): Get warehouse account map only if perpetual inventory enabled

* fix(perpetual inventory): Get warehouse account map only if perpetual inventory enabled
2018-10-19 18:03:13 +05:30
Saif
b4cf72c770 Adding "Include UOM" in Reports with Qty and Rates (#15541)
* Added Include UOM field for Stock Balane, Stock Ledger and Stock Projected Qty

* Add columns in result list-of-lists instead of converting reports to list-of-dicts

* For requested changes
-Merged conversion factor query with item detail queries
-Ensuring snail_case
-Made columns consistently list-of-dicts
2018-10-18 17:59:47 +05:30
Saif
3c9155e406 [Minor Fix] Force toggle display Net Total field when default taxes are fetched (#15532)
* Minor fix for the problem that Net Total, Net Rate, Net Amount field would not be shown when default taxes were fetched

* Prevent net_rate from becoming NaN

* -Fixed problem that party_account_currency was not set in mapped document
-Fixed problem that discount amount was not recalculated (in mapped document)
-Fixed problem that set_dynamic_fields would work only on certain condition that led to showing Total (Company Currency) field even when using company currency
2018-10-18 17:57:56 +05:30
deepeshgarg007
25edac451d Production Analytics Query Report (#15673)
* Production Analytics Query Report

* Changes in production analytics report

* Updated json file and other changes
2018-10-18 17:43:41 +05:30
Raffael Meyer
25e9db5e81 Do not display gender for companies (#15728) 2018-10-18 16:49:49 +05:30
Charles-Henri Decultot
7a7615ed66 Safe encode payer name (#15726) 2018-10-18 12:28:06 +05:30
Aditya Hase
007fbfbfb7 [Feature] ERPNext Quickbooks Migrator (#15718)
* Create QuickBooks Connector Single DocType

* Create interface for user authorization and obtaining authorization code

* Obtain Access token using authorization code

* Fetch a random customer

* Schedule fetching as a background job

* Save fetched customer

* Fetch all customers, take care of pagination

* Save fetched customers

* Create a custom field for storing Quickbooks ID

* Don't save already saved customers

* Commit every successful insert

* No need of allow_guest=True

* Fetch Items as well

* Store Customer Addresses as well.

* Remove redundant custom field creation code

* Stupid refactoring

* Some more refactoring

* Fetch and Save Suppliers as well

* Save accounts. Really a hack as of now.

* Fetch and save invoices, Take care of child items as well

* Fetch Taxes as well

* Set currency on Sales Invoice

* Correctly Link Items, Handle markups

* Don't enqueue, Need to wait forever for testing sometimes

* Set margin rate correctly

* Correct fieldname is tax_amount not amount

* Fetch with maximum possible batch size

* Don't print unnecessary info

* Fetch Journal Entries

* Fetch Purchase Invoices (Bill)

* Don't perform reauthentication if you already have an access_token

* Don't need those print statements anymore

* Refresh access_token if request fails

* Fetch Payment Entry(Payment)

* Map QB items to ERPNext rather than other way around

* Don't need a huge comment block as of now

* Fetch Payment Entries against Purchase Invoices (BillPayment)

* Rename Quickbooks Connector to Migrator

* Make oauth settings configurable

* Make company configurable

* Make default accounts configurable

* Fetch accounts and other masters separately

* Show realtime progress

* Check if entries exist before attempting insert

* Suppress other annoying messages

* Tracebacks are good for health

* Don't want rounded total

* Don't call fetch after authorization (Need to somehow separate these)

* Make credit_to account payable

* When generating payment entry mention bank_account as well

* Cleanup

* Add custom buttons and reflect current state in form ui

* Show necessary fields on form depending on the current state

* Cleanup

* Minor fixes

* Set income and expense account on items.

* Set currency for Account.

* Stupid VSCode

* Remove redundant code

* Check for existing Payment and BillPayment correctly

* Cache API response for faster development

* Don't maintain stock for now, Seems to solve the issue with 'Stock Received but not billed'

* Cleanup

* Add methods to remove inserted data completely (Development)

* Don't commit in every iteration

* Set account head based on TaxRate in Sales Invoice

* Fetch and cache TaxCode

* Add methods to fetch TaxCode and TaxRate from cache

* Set item wise tax breakup, Don't use Actual Tax

* Use both TaxRateLists

* Set Itemwise tax on Purchase Invoice as well

* Set bank_amount, while creating payment entries

* Remove print statements

* Add Shipping in taxes child table of Sales Invoice

* Set posting date on Payment Entries against Invoices

* Fetch and save expenses as Journal Entries

* Fetch and save Deposits as Journal Entries

* Fetch and Save Credit and Debit Notes

* Fetch and save SalesReceipt

* Record Shipping as Item instead of Tax

* Minor Fixes

* Fetch Advance Payments

* Set account_type during Account creation

* Choose receivable account in Invoice based on currency

* Remove receivable_account field

* Account type is already set during account creation

* Set receivable account based on currency in Sales Receipt and Credit Memo

* Set receivable account on Customer

* Save Company Preferences

* Set shipping_account based on company preferences

* Set cost center in Sales Invoice Items and Taxes

* Make Account name unique in case of duplicate account name

* Fetch and Save TaxPayment as Journal Entry

* Record UndepositedFunds Account in cache if found

* Credit UndepositedFunds account when mentioned in Deposit

* Debit Cashback account as well if mentioned in Deposit

* Set currency conversion rate

* Set is_group field correctly for accounts

* Preserve account hierarchy

* Use quickbooks_id and company together for filtering

* Make new custom field 'company' on Supplier Customer and Item

* Use comapny field for filtering Customer, Item, Supplier

* Shipping Account is only available if shipping is enabled for comapny

* Invoice might not have TxnTaxDetail.TaxLine

* Lookup TaxRate account correctly

* TaxCode might not have SalesTaxRateList PurchaseTaxRateList or Both

* TaxCode might not have SalesTaxRateList and PurchaseTaxRateList

* Remove unnecessary UI elements

* Allow multiple companies to have customers with same name

* Refactor account_type

* Create a leaf an account for every group account

* Item and Tax list creation needs more information

* Supports discount in Invoice

* Save Invoice as Journal Entry when itemwise details are unavailable

* Credit=True represents a refund rather than charge

* Mode of Payment not synced, setting as Cash for now

* Tax code may also be set for an entire invoice

* Fetch General Ledger Report correctly

* Refactor fetching entries from General Ledger Report

* Tax Payment is the same as Sales Tax Payment and Purchase Tax Payment

* append_number_if_name_exists is stupid, Reimplementing

* Don't guess credit/debit for Tax Payment and Advanced Payment

* Bill Payment shouldn't assume full payment

* Save Payment as Journal Entry

* Make Client ID and Client Secret Default

* Remove unused python imports

* removed are_accounts_synced()

* Don't store translated values in database

* Endpoints as a field

* Major refactor - functions to methods

* Major Refactor Functions to Methods

* Major Refactor Fix Stuff

* Minor Changes

* Save Refund As well

* Minor Refactor (SI varations to SI, PI variations to PI)

* Record Inventory Qty Adjust Entries

* QBM Final Touches

* Make changes suggested in review
2018-10-17 17:50:00 +05:30
rohitwaghchaure
e2afbb7abe Merge pull request #15703 from SaiFi0102/AR-AP-PDC-Fix
[For staging-fixes] Fixed PDC data in AR/AP report
2018-10-17 15:57:28 +05:30
Ameya Shenoy
961b7dee9d Merge branch 'staging-fixes' into staging 2018-10-17 09:44:11 +00:00
Ameya Shenoy
a7a32d7400 bumped to version 11.0.3-beta.12 2018-10-17 09:44:11 +00:00
Ameya Shenoy
77b60928bf Merge branch 'master' into staging-fixes 2018-10-17 09:39:31 +00:00
Ameya Shenoy
4fdbff7456 Merge pull request #15547 from Zlash65/demo-refactor
Demo data refactor
2018-10-16 17:34:09 +05:30
deepeshgarg007
0cbb9b54fa Deprecating subscriber doctype (#15695)
* Depricating subscriber doctype

* Removed naming series
2018-10-16 14:39:16 +05:30
Shreya Shah
e45868a3c6 fix(discount-amount): Print hide discount_amount if print without amount (#15705) 2018-10-16 14:34:56 +05:30
Shreya Shah
22731e39ba Merge pull request #15376 from jodeq/show_project-attachments-in-portal
[Proposal] Show project attachments in portal view
2018-10-16 14:29:51 +05:30
Shreya Shah
bfb88f7839 Merge pull request #15701 from shreyashah115/item-stock
Add column for Item Name in Item Price Stock report
2018-10-16 14:22:46 +05:30
Shreya
82660913a5 fix(report): Add column for Item Name 2018-10-16 12:15:56 +05:30
Shreya
8aca56836b fix(margin): Make user avatar display in line 2018-10-16 12:00:46 +05:30
rohitwaghchaure
19be730b9c Merge pull request #15700 from joeirimpan/staging-fixes
feat: Add provision for prebilled subscription invoices
2018-10-16 11:36:29 +05:30
rohitwaghchaure
a5a926967b Update accounts_receivable.py 2018-10-16 11:27:23 +05:30
Joe Paul
666e6e665b feat: Add provision for prebilled subscription invoices
(cherry picked from commit db33e6304d)
2018-10-16 10:17:40 +05:30
Charles-Henri Decultot
615571dd21 Add safe decode for payer name (#15692) 2018-10-15 18:26:02 +05:30
deepeshgarg007
7c443264a4 Currency symbol bug fix (#15690) 2018-10-15 18:22:28 +05:30
JodeQ
10dfd4a48f Show project attachments in portal view 2018-10-15 14:28:27 +02:00
Ameya Shenoy
3185b37360 Merge branch 'staging-fixes' into staging 2018-10-15 12:24:12 +00:00
Ameya Shenoy
8d0195246d bumped to version 11.0.3-beta.11 2018-10-15 12:24:12 +00:00
Ameya Shenoy
4fa58359c8 Merge pull request #15689 from codingCoffee/pat
fix(patch): reload patient
2018-10-15 17:49:42 +05:30
Ameya Shenoy
102eb998ac fix(patch): reload healthacre doctypes
Signed-off-by: Ameya Shenoy <shenoy.ameya@gmail.com>
2018-10-15 17:40:02 +05:30
Nabin Hait
3c29967d27 Fixed merge conflict 2018-10-15 15:43:21 +05:30
Jamsheer
2a966f26af fix: patch - change healthcare desktop icons (#15683) 2018-10-15 14:54:29 +05:30
Ranjith Kurungadam
741bd29b74 fix: Patient Appointment Calendar (#15684) 2018-10-15 14:52:38 +05:30
rohitwaghchaure
0d2a4c6a59 [Fix] TDS Payable Monthly report is not working (#15666) 2018-10-15 11:09:17 +05:30
deepeshgarg007
42510a411f [Bug-Fix]V11 Accounts Receivable print showing zero values (#15667)
* Bug Fix

* Print report bug fixes
2018-10-15 11:08:04 +05:30
Mangesh-Khairnar
8c62ab4af0 [Enhancement] Email birthday reminder (#15559)
* Update hooks.py

* modified date for reload_doc (#15027)

* Single email for multiple birthdays and test
2018-10-11 17:06:10 +05:30
Shreya Shah
314c97cbf1 Fix for supplier quotation (#15659) 2018-10-11 16:59:40 +05:30
Alchez
a16f0f4423 fix(item_defaults): handle multiple item defaults for a company (#15634) 2018-10-11 16:56:46 +05:30
Charles-Henri Decultot
64b6421fce Add event in transaction base correction (#15631) 2018-10-11 16:54:26 +05:30
Charles-Henri Decultot
6c743bebf2 Check for prefix before return EcritureNum (#15629) 2018-10-11 16:51:29 +05:30
Charles-Henri Decultot
50447b195d Compatibility with Py2 (#15653) 2018-10-11 16:48:38 +05:30
Shreya Shah
e9890a3ec8 fix(patch): Check if meta object has naming_series field (#15651) 2018-10-11 16:28:59 +05:30
Faris Ansari
4833b4c274 fix: Default Series in naming series patch (#15656) 2018-10-11 16:27:05 +05:30
Stavros Anastasiadis
a398d6bf4f Allow Same Item Multiple Items (#15657) 2018-10-11 16:25:37 +05:30
Ameya Shenoy
dc279ded15 Merge branch 'staging-fixes' into staging 2018-10-11 06:58:13 +00:00
Ameya Shenoy
d791af8331 bumped to version 11.0.3-beta.10 2018-10-11 06:58:13 +00:00
rohitwaghchaure
b1241caf48 Merge pull request #15650 from rohitwaghchaure/fix_gst_state_issue
[Fix] Nontype object has no attribute gst_state
2018-10-11 10:53:46 +05:30
Rohit Waghchaure
b6a735e021 [Fix] Nontype object has no attribute gst_state 2018-10-11 10:40:34 +05:30
Shreya Shah
785f1aa96d fix(print): Update idx if grouping same items (#15647) 2018-10-11 10:14:25 +05:30
Shreya Shah
2291323c65 fix(shipping-address-display): Fetch shipping address display as per the shipping address (#15643) 2018-10-11 10:13:27 +05:30
deepeshgarg007
1cb1074f6b Bug Fix (#15640) 2018-10-10 16:15:30 +05:30
Sagar Vora
d92f3ac480 Fix 'transporter info' section in Delivery Note (#15565)
- create is_transporter checkbox in supplier doctype
- new field transporter (supplier with is_transporter checked)
- created fields driver and driver_name
- removed GST India fields from core doctype
- removed readonly & allow_on_submit from fields (delivery trip applicable only for in-house delivery)
- read_only transporter_name field (kept for backwards compatibility)
- made necessary changes in delivery_trip implementation
- hidden section's fields from print (preserving v10 convention)
- added transporter field to 'Driver' doctype
- added queries for transporter and driver fields
- GST India fields in regional module
- Fix e-waybill report
2018-10-10 14:51:26 +05:30
Shreya Shah
dd87e0f1e2 fix(leave-type): Drop column max_days_allowed (#15642) 2018-10-10 14:48:49 +05:30
rohitwaghchaure
4cfff7829b Added validation to check duplicate student leave application (#15636) 2018-10-10 14:47:48 +05:30
Shreya Shah
3855156b7d fix(project): If Project has no Tasks, let the status be set as Completed (#15639) 2018-10-10 14:45:40 +05:30
Jamsheer
14c6ab0ee9 [fix] Healthcare field and desktop icon (#15638)
* Test Inpatient Record - Fix

* Test Inpatient Record - Fix

* Healthcare - Patch rename_healthcare_doctype_and_fields - Updated

* Healthcare - Desktop Icons - Updated

* Healthcare - Patch change  in healthcare desktop icons

* Healthcare Util - fix - appointments valid in fee validity

* Healthcare Settings - field label change

* Patient allow rename

* fix: remove unused variable
2018-10-10 14:44:36 +05:30
Zlash65
6a8957b430 item data updated with retail data 2018-10-10 14:28:17 +05:30
Zlash65
62592d3c44 setup data for retail added 2018-10-10 14:28:17 +05:30
Zlash65
fd9c451909 company name picked up dynamically, domainification 2018-10-10 14:28:17 +05:30
Zlash65
d1fbaf8f32 custom field added for item - domainification, password changed 2018-10-10 14:28:17 +05:30
Zlash65
275ef826a4 codacy fixes 2018-10-10 14:28:17 +05:30
Zlash65
8b1133cb24 item data fix for default supplier, exception handling for purchase order 2018-10-10 14:28:17 +05:30
Zlash65
d080a17961 minor random trigger changes and exception handling 2018-10-10 14:28:16 +05:30
Zlash65
e64dcfc2f9 timesheet logic changed to job card 2018-10-10 14:28:16 +05:30
Zlash65
e895845ae1 import fix 2018-10-10 14:28:16 +05:30
Zlash65
523f77e82b make_rm_stock_entry fix 2018-10-10 14:28:16 +05:30
Zlash65
dcf7401104 random time fix and other minor fixes 2018-10-10 14:28:16 +05:30
Zlash65
143d4da901 Production Plan fix 2018-10-10 14:28:16 +05:30
Zlash65
c24d2fdf6c setup leave & expense approver for each department
- assign approver in expense claim
2018-10-10 14:28:16 +05:30
Zlash65
a259466643 add relevant department to employees 2018-10-10 14:28:16 +05:30
Zlash65
0309bbee30 function call requires company as parameter 2018-10-10 14:28:16 +05:30
Zlash65
796bffbee1 fix payroll and stock related data 2018-10-10 14:28:16 +05:30
Zlash65
4c07970545 remove user permission from HR Manager user 2018-10-10 14:28:16 +05:30
Zlash65
fa7c8a9f8b update employee and user records 2018-10-10 14:28:16 +05:30
Saurabh
99c064305f Merge branch 'master' into staging-fixes 2018-10-09 17:55:33 +05:30
Shreya Shah
8a4bcefec4 fix(accounts-receivable): Column values in Print and PDF (#15621) 2018-10-08 18:34:01 +05:30
Nabin Hait
d2c5b50842 fix(warehouse-account): get warehouse account map fallback handling (#15625)
* fix(warehouse-account): get warehouse account map fallback handling

* fix: import issue
2018-10-08 18:19:53 +05:30
Ameya Shenoy
cf91f34ffa Merge branch 'staging-fixes' into staging 2018-10-08 09:43:48 +00:00
Ameya Shenoy
563b1d153b bumped to version 11.0.3-beta.9 2018-10-08 09:43:48 +00:00
Ameya Shenoy
ecba14e6cf Merge branch 'master' into staging-fixes 2018-10-08 09:39:49 +00:00
Zarrar
87441bf62e columns without fieldname's data not shown (#15618) 2018-10-08 14:34:34 +05:30
Shreya Shah
95d93913ce fix(link_to_mr): Add missing method to buying.js (#15616) 2018-10-08 14:17:37 +05:30
Ameya Shenoy
8cafb5fbbb Merge branch 'staging-fixes' into staging 2018-10-08 07:27:35 +00:00
Ameya Shenoy
0bd254b02b bumped to version 11.0.3-beta.8 2018-10-08 07:27:35 +00:00
rohitwaghchaure
5e466bace4 Removed update_job_card_reference method (#15614) 2018-10-08 12:36:45 +05:30
Shreya Shah
c2857fd2cc fix(setup_taxes): Pop if frappe.message_log (#15611) 2018-10-08 12:35:18 +05:30
Jamsheer
063cf9c582 Jam staging fixes (#15608)
* Test Inpatient Record - Fix

* Test Inpatient Record - Fix
2018-10-08 10:48:42 +05:30
Ameya Shenoy
36be62b927 Merge branch 'staging-fixes' into staging 2018-10-07 07:59:34 +00:00
Ameya Shenoy
cfdd629fd7 bumped to version 11.0.3-beta.7 2018-10-07 07:59:34 +00:00
Ameya Shenoy
272956980d Merge pull request #15606 from codingCoffee/abc
fix: make location from warehouse patch
2018-10-07 13:25:05 +05:30
Ameya Shenoy
f7b5b7beb4 fix: make location from warehouse patch
- optimization by preventing patch execution if Asset doesn't exist
2018-10-07 13:08:00 +05:30
Ameya Shenoy
39903647ae Merge branch 'staging-fixes' into staging 2018-10-07 06:23:22 +00:00
Ameya Shenoy
cd9be8f0a6 bumped to version 11.0.3-beta.6 2018-10-07 06:23:22 +00:00
Shreya Shah
5615cb4735 Set default only if customer_address not found (#15605)
* Set default only if customer_address not found

* Similar fix for Purchase Invoice and shipping_address
2018-10-07 11:42:07 +05:30
Shreya Shah
e7e269d4a4 [Error] Display appropriate msg if company is different for TDS (#15601)
* fix(tds): Display appropriate msg if company is different

* Update tax_withholding_category.py
2018-10-06 17:56:21 +05:30
Ameya Shenoy
b8c1897a80 Merge pull request #15603 from Zlash65/rectify
[Minor] Deferred Expense
2018-10-06 16:43:22 +05:30
Zlash65
58a080a1b1 add voucher detail no while creating gl entry 2018-10-06 16:34:58 +05:30
Ameya Shenoy
29fe8ce114 Merge branch 'staging-fixes' into staging 2018-10-05 09:09:53 +00:00
Ameya Shenoy
538678afc4 bumped to version 11.0.3-beta.5 2018-10-05 09:09:53 +00:00
Ameya Shenoy
ad908779be Merge branch 'master' into staging-fixes 2018-10-05 08:54:58 +00:00
Shreya Shah
5cff01634e Merge pull request #15593 from Zlash65/fix-mod
[Minor] Item master - get_query for deferred accounts
2018-10-05 14:14:46 +05:30
Shreya Shah
32206029ac Fix Codacy 2018-10-05 14:14:33 +05:30
Shreya Shah
deb9f0e03c Merge pull request #15594 from shreyashah115/tds-report
Handle IndexError if no data found
2018-10-05 14:11:43 +05:30
Shreya Shah
db5ffce742 Merge pull request #15592 from shreyashah115/jv
Allow Reverse JV for all submitted docs
2018-10-05 13:33:11 +05:30
Shreya
0d7bd43367 Handle IndexError if no data found 2018-10-05 13:22:09 +05:30
Zlash65
2123b97d31 add get_query for revenue and expense account 2018-10-05 12:26:32 +05:30
Shreya
4f5214a136 Allow reverse jv for all submitted docs 2018-10-05 12:19:09 +05:30
Saif
00a16a9337 set_item_default was referencing a variable company of "company" (#15576) 2018-10-05 11:54:03 +05:30
Jamsheer
be6e426fe0 Healthcare Service Unit - added company abbr as suffix (#15590) 2018-10-05 11:38:15 +05:30
Ranjith Kurungadam
dc2bab2b72 fix healthcare patch (#15584) 2018-10-05 11:36:58 +05:30
Valmik
4c61861163 Add Delivery Trip to Delivery Note dashboard (#15587) 2018-10-05 11:36:31 +05:30
Saif
4faea037bb Remove Test Letter Head from GSTR-1 (#15591) 2018-10-05 11:35:01 +05:30
Ameya Shenoy
c4ebbd1322 Merge branch 'staging-fixes' into staging 2018-10-04 13:14:29 +00:00
Ameya Shenoy
2291558c5f bumped to version 11.0.3-beta.4 2018-10-04 13:14:29 +00:00
rohitwaghchaure
d69dc954c7 Merge pull request #15580 from sagarvora/fix-TabError
fix TabError in install_fixtures.py
2018-10-04 17:22:44 +05:30
Ameya Shenoy
c6eac7c60b Merge branch 'staging-fixes' into staging 2018-10-04 11:42:56 +00:00
Ameya Shenoy
5ae344593e bumped to version 11.0.3-beta.3 2018-10-04 11:42:56 +00:00
Ameya Shenoy
6dc4cdca3a Merge pull request #15585 from rohitwaghchaure/fix_asset_depreciation_ledger_report
Fix issue after merging hotfix into staging-fixes
2018-10-04 16:47:43 +05:30
Rohit Waghchaure
18678696db Fix issue after merging hotfix into staging-fixes 2018-10-04 16:33:43 +05:30
Ameya Shenoy
7d929c508f Merge branch 'master' into staging-fixes 2018-10-04 09:25:07 +00:00
rohitwaghchaure
8b42bf57cd Merge pull request #15581 from rohitwaghchaure/work_order_item_has_no
[Fix] WorkOrderItem object has no attribute operation
2018-10-04 13:27:00 +05:30
Rohit Waghchaure
9f2859701e [Fix] WorkOrderItem object has no attribute operation 2018-10-04 13:25:49 +05:30
Sagar Vora
b13b9b4ed3 fix TabError in install_fixtures.py 2018-10-04 11:39:20 +05:30
Zarrar
897d1baf74 Merge pull request #15577 from Zlash65/min-min
[Minor] Purchase Invoice - stop date editable after submit
2018-10-04 09:31:50 +05:30
Zlash65
6e3b1a58a1 service_stop_date should be editable after submit 2018-10-04 09:30:27 +05:30
rohitwaghchaure
f9930ff2a4 Merge pull request #15573 from rohitwaghchaure/cost_center_issue_while_saving
[Fix] Cost center issue
2018-10-03 18:47:28 +05:30
Shreya Shah
3204c94fdd Merge pull request #15570 from shreyashah115/fix-filter-error
[Bug] Item wise sales register filters
2018-10-03 17:38:41 +05:30
Shreya
cbb112f2db Fix filter error 2018-10-03 17:37:40 +05:30
Rohit Waghchaure
8bf9f377dd [Fix] Cost center issue 2018-10-03 16:59:43 +05:30
rohitwaghchaure
d6cacbe565 Merge pull request #15567 from rohitwaghchaure/fix_payment_request
[Fix] Payment request not working
2018-10-03 16:03:48 +05:30
Rohit Waghchaure
210f4984f7 [Fix] Payment request not working 2018-10-03 15:55:51 +05:30
Charles-Henri Decultot
75fa6b3ee8 [Enhancement] Improvement to the sales pipeline (#15524)
* Additions to sales pipeline

* Codacy corrections

* Codacy corrections

* Codacy corrections

* Replace _ with dummy for unused variable

* Performance + dates corrections

* Itertuples modification

* Removing trailing whitespaces

* Sales stage doctype

* Divide sales stages fixtures in separate functions

* Remove duplicate fixtures

* Add newline after method

* Missing requirement
2018-10-03 10:41:40 +05:30
Charles-Henri Decultot
efd776da46 Events in timeline (#15485)
* Events in timeline

* Namespace correction

* Codacy correction

* Addition of sales partners in participants

* Correct json indent
2018-10-03 10:41:26 +05:30
deepeshgarg007
719701f2a4 Enhancement in Budget Variance and other reports (#15455)
* Enhanced Budget Variance report and added filters and columns in other reports

* Update budget_variance_report.js

* Changes in budget variance report

* Spacing in column names
2018-10-02 12:52:13 +05:30
Shreya Shah
7d115183e4 Improvise and fix indicators in Portal list (#15552) 2018-10-02 12:46:26 +05:30
Charles-Henri Decultot
3b11debcd2 Gocardless correction (#15554) 2018-10-02 12:46:15 +05:30
Charles-Henri Decultot
b2281cc1fd Lead to customer UX enhancement (#15525)
* Lead to customer UX enhancement

* Market segment

* Market Segment to DocType

* Specific function for fixtures

* Merge issue correction

* Doctype merge correction
2018-10-02 11:25:00 +05:30
Shreya Shah
5a2aced586 Merge pull request #15551 from Zlash65/minor-fix
[Minor] Delivery trip test fix
2018-10-02 11:12:51 +05:30
Rushabh Mehta
11e2119670 style(icon): revert to old icon 2018-10-02 11:06:55 +05:30
Zlash65
6a5e6ed2ff delivery trip notification to customer fix 2018-10-01 17:28:42 +05:30
Zlash65
9e67b8ec4d fix driver name selection 2018-10-01 17:27:12 +05:30
Zlash65
622bd10946 add date data [mandatory] 2018-10-01 15:37:31 +05:30
Saif
90cf2ddc01 Make pricing rule from Supplier and Customer Doc (#15533)
* Make pricing rule from Supplier and Customer Doc

* Make sure the "+" button also works the same way as the "Make" button
2018-09-30 22:16:31 +05:30
Alchez
6ecb2556b7 Add Delivery Settings + improve 'Notify Customers' functionality (#15322)
* Add Delivery Settings + improve 'Notify Customers' functionality

* Minor improvements

* Add patch to create a default dispatch notification template

* Fix travis errors
2018-09-30 21:38:47 +05:30
Charles-Henri Decultot
4fd7a4e0d7 Lead notes (#15510)
* Notes field in Lead

* Add notes to lead details report
2018-09-30 21:20:55 +05:30
Zarrar
e4c9ac3961 [Minor] Cash Flow report - custom (#15522)
* python 2-3 fix for filter

* pass filters while fetching data to financial statement report
2018-09-30 21:19:01 +05:30
rohitwaghchaure
90f9f9d3d8 Code optimization for deferred revenue (#15527) 2018-09-30 21:12:50 +05:30
Faris Ansari
6575e52942 fix: Refactor Review Area according to new Text Editor (#15536)
- depends on https://github.com/frappe/frappe/pull/6159
2018-09-30 21:08:46 +05:30
rohitwaghchaure
1cf71d96b1 Merge pull request #15530 from rohitwaghchaure/consolidated_report_issue_v11
[Fix] Consolidated Financial Statement report
2018-09-28 17:06:57 +05:30
Rohit Waghchaure
ea0ef95539 [Fix] Consolidated Financial Statement report 2018-09-28 17:05:55 +05:30
Saif
c2dd9ab778 Fix the problem that naming series would remove trailing '-' from series prefix if ##### was not entered (#15514) 2018-09-27 15:48:04 +05:30
Shreya Shah
0fc4917d81 Merge pull request #15516 from shreyashah115/product-page
Fetch Item Group's name and image on website
2018-09-27 15:12:42 +05:30
Shreya
5c335550e3 Fetch item_group's name and image on website if children 2018-09-27 13:55:59 +05:30
Nabin Hait
183972f58f fix(stock_entry): allow creating stock entry against work order even if item rate is zero 2018-09-26 18:34:07 +05:30
Nabin Hait
1e7c32b909 Payroll fixes and more (#15475)
* fix(payroll): multiple minor fixes related to salary structure

* Added GSTR-1 and GSTR-2 report in Accounts module page

* delete asset movement records on cancellation of Purchase Receipt

* Update consolidated_financial_statement.py

* minor fix

* minor fix

* add filters on item prices report (#15495)
2018-09-26 18:01:00 +05:30
deepeshgarg007
c3772f1ac4 minor fix (#15503) 2018-09-26 15:55:43 +05:30
Aditya Hase
e20b7cc47d fix(python3): super() backwards compatibility fix (#15498) 2018-09-26 15:39:02 +05:30
Shreya Shah
352e6494f3 Contact and email fields in Payment Entry (#15490)
* Add contact_person and contact_email fields to Payment Entry

* Minor fix

* Map contact details while making Payment Entry

* Update payment_entry.py
2018-09-26 15:38:34 +05:30
Ameya Shenoy
a7ae06eadb Merge branch 'staging-fixes' into staging 2018-09-26 08:52:54 +00:00
Ameya Shenoy
90197dd341 bumped to version 11.0.3-beta.2 2018-09-26 08:52:54 +00:00
Ameya Shenoy
41d1982b90 Merge pull request #15501 from codingCoffee/qwe
fix(multiple): syntax and patch
2018-09-26 14:12:01 +05:30
Ameya Shenoy
12ec142a69 fix(multiple): syntax and patch
- syntax fix for using super class
- check "All Departments" in department name with translations
2018-09-26 14:05:48 +05:30
Ameya Shenoy
47b82789ae Merge branch 'staging-fixes' into staging 2018-09-26 07:32:44 +00:00
Ameya Shenoy
b8a5fb7392 bumped to version 11.0.3 2018-09-26 07:32:44 +00:00
Ameya Shenoy
9d3a97fd15 Merge branch 'master' into staging-fixes 2018-09-26 07:28:53 +00:00
deepeshgarg007
86152eb5c8 Sales person Commission Report and more (#15431)
* Commission For Sales Person

* Changes Made

* Changes made in sales person dashboard and commission report

* Update sales_person_commission_summary.py
2018-09-25 19:08:16 +05:30
Aditya Hase
865cb88bdd fix(vscode-intellisense): Make VS Code Intellisense work with ERPNext (#15453)
__init__.py in apps/erpnext directory confuses vs code.

Causing all erpnext dotted paths to need an extra `erpnext.` for 
suggestion and completion to work properly.

This commit fixes this issue.
2018-09-25 18:51:17 +05:30
Aditya Hase
a38b77cbfd feature(chart-of-accounts): Rebuild HSM Tree after bulk insertion (#15457)
* feature(chart-of-accounts): Rebuild HSM Tree after bulk insertion

* Update chart_of_accounts.py
2018-09-25 18:10:50 +05:30
Zarrar
b113349f31 minor fix for auto-opt-in for customer (#15483) 2018-09-24 14:30:07 +05:30
Shreya Shah
0a95b31aea Merge pull request #15454 from frappe/coverage-badge
Add coverage badge to README.md
2018-09-24 12:25:06 +05:30
Ameya Shenoy
2b5bce0c53 Merge branch 'staging-fixes' into staging 2018-09-21 11:04:20 +00:00
Ameya Shenoy
cdedb27cf0 bumped to version 11.0.2 2018-09-21 11:04:20 +00:00
Zarrar
e83ff38c10 [Enhance] Deferred Expense (#15437)
* added section for deferred expense in item master

* added default expense account field in Company master

* added deferred expense section in purchase invoice item

* validation and getter code added

* scheduler event to book expense every month

* codacy, import fix and other minor fixes

* rectify debit credit logic for expense

* commonify js code for deferred expense and revenue

* remove deferred calculation and validation

* common file to calculate deferred revenue and expense

* codacy fixes

* expense account root_type - Asset, specific method naming
2018-09-21 15:45:40 +05:30
Aditya Hase
40880da280 fix(readme): Add coverage badge 2018-09-20 17:48:35 +05:30
Aditya Hase
6886c47251 fix(style): Center align badges as well 2018-09-20 17:46:53 +05:30
Aditya Hase
99c8fb19f7 fix(style): Put markdown for badges on separate lines 2018-09-20 17:43:04 +05:30
Saurabh
4ae3fb7a87 Merge branch 'staging-fixes' into staging 2018-09-20 13:30:46 +05:30
Saurabh
3ef12bb7f2 bumped to version 11.0.1 2018-09-20 14:00:46 +06:00
Saurabh
75d90b9d8f a[resolved] merge-conflicts 2018-09-20 13:28:23 +05:30
Saif
772dc6e82c Various permission fixes (#15448)
* Removed test letter head from Consolidated Financial Statement

* Removed incorrect role permissions
2018-09-20 13:20:17 +05:30
Nabin Hait
8fb04ff1b2 Merge branch 'develop' into staging-fixes 2018-09-20 12:51:26 +05:30
Ameya Shenoy
a2f0b34147 fix(item, item default): changed the modified date (#15442)
The patch move_item_defaults_to_child_table_for_multicompany used to
fail since the doctypes Item and Item Defaults weren't reloaded properly

Signed-off-by: Ameya Shenoy <shenoy.ameya@gmail.com>
2018-09-19 19:02:52 +05:30
Ameya Shenoy
28fd02e4a8 fix(desktop_icon): remove land unit icon if exists (#15430)
* fix(desktop_icon): remove land unit icon if exists

Patch to delete the 'Land Unit' icon form 'Desktop Icon' doctype if
exists, since 'Land Unit' has been merged with 'Location'

Signed-off-by: Ameya Shenoy <shenoy.ameya@gmail.com>

* Update remove_land_unit_icon.py
2018-09-19 13:15:52 +05:30
Faris Ansari
2ab6e0e39b fix(translations): Replace translations by keyword with indexed version (#15426)
* fix(translations): Replace translations by keyword with indexed version

Keywords in the translation also gets translated which
results in an error because python cannot find the key

* Update buying_controller.py
2018-09-19 13:13:59 +05:30
Mangesh-Khairnar
0374cc54ba [bug fix]:stopped orders in progress report (#15428) 2018-09-19 13:10:53 +05:30
Nabin Hait
63a58a6752 Merge branch 'staging' into develop 2018-09-18 11:44:42 +05:30
Shreya Shah
13761dde38 [Report] Lead Conversion Time (#15237)
* New Report Lead Conversion Time

* Add column for support tickets and a row for Average
2018-09-18 10:55:35 +05:30
Jamsheer
c07e8e5b0d [Fix] Healthcare minor fixes and field rename (#15413)
* Healthcare practitoiner in Clinical Procedure

* Insert and Update Patient Medical Record from Healthcare DocTypes

* vital signs remove extra columns

* Rename Healthcare Field test_name

* Healthcare Util - get_drugs_to_invoice - fix

* Rename Healthcare Field test_code

* Rename Healthcare Field test_comment

* Rename Healthcare Field test_created

* Rename Healthcare Field test_template

* Rename Healthcare Field test_rate

* Rename Healthcare Field test_description

* Rename Healthcare Field test_groups

* Rename Healthcare Field test_group

* Rename Healthcare Field test_template_type

* Rename Healthcare Field test_uom

* Rename Healthcare Field test_normal_range

* Rename Healthcare Field test_event

* Rename Healthcare Field test_prescription

* Rename Healthcare Field test_particulars

* Patch - Rename healthcare fields

* Sales Invoice - Filter updated for get drugs to invoice

* Patient Appointment - fix - get_event
2018-09-18 10:54:03 +05:30
RicardoJohann
267e806d7f added description field and changed to one filter datepicker (#15425) 2018-09-18 10:48:20 +05:30
JC
31f2c1c3d3 fix ‘BOMItem’ object has no attribute ‘operation’ error in bench run-tests --doctype ‘BOM’ (#15423) 2018-09-18 10:47:27 +05:30
Govind S Menokee
d38160c816 [FIX] Remove deprecated gen_object.next() function (#15418)
BOM tree view was getting impacted due to use of a deprecated function.
This fix replaces deprecated object.next() function with next(gen_object).
2018-09-18 10:42:21 +05:30
Faris Ansari
aa856c474a fix(setup wizard): Validate FY dates (#15419)
- start date should be less than end date
2018-09-18 10:42:04 +05:30
Frappe PR Bot
db8c1f254e [Translation] Updated Translations (#15414) 2018-09-17 16:54:30 +05:30
Charles-Henri Decultot
d6bce7429e Bank statement import corrections (#15405)
* Bank statement import corrections

* Bank statement corrections

* Missing semi-columns
2018-09-17 12:34:11 +05:30
theopen-institute
ba1c0c900d Fix potential crash in payment_entry.py (#15411)
The new code for cost center checking in payment_entry.py crashes if `voucher_type` is `None`, which is an explicit possibility if party type is Employee. This commit adds a simple check to make sure that voucher_type is not None before running `get_doc`.
2018-09-17 10:59:39 +05:30
Zarrar
e79e4cb9b1 python 2-3 fix, *.keys() return dict_keys object in py3 (#15409) 2018-09-17 10:56:42 +05:30
Zarrar
ada13213c0 reload Patient Appointment doctype with added fields (#15397) 2018-09-14 15:32:04 +05:30
Faris Ansari
31e5431fe0 fix(urljoin): 2 and 3 compatible (#15401) 2018-09-14 15:31:35 +05:30
Zarrar
ae0168f1ba Merge pull request #15399 from Zlash65/mfix
[Minor] Fix Cash Flow report
2018-09-13 12:57:34 +05:30
Zlash65
2619596917 pass filters as parameter 2018-09-13 12:56:04 +05:30
Nabin Hait
5be3968544 fix(add_file): added missing init file 2018-09-12 18:56:15 +05:30
Ameya Shenoy
ecac822613 Merge pull request #15393 from codingCoffee/hub
fix(patch): delete hub documents
2018-09-12 17:50:02 +05:30
Ameya Shenoy
18310c240f fix(patch): delete hub documents
While deteting the "Data Migratun Plan" docs the patch used to break,
since it was linked to docs from "Data Migration Run". Modified the
patch to also delete the linked "Data Migration Run" docs.
2018-09-12 17:46:58 +05:30
Doridel Cahanap
6d0ae5b23b Allow Rename for Custom Tariff (#15389) 2018-09-12 17:13:12 +05:30
Prateeksha Singh
31f2caf51e Merge pull request #15391 from pratu16x7/hub-patch-fix
[patch][fix] remove hub node module removing code
2018-09-12 17:00:12 +05:30
Prateeksha Singh
5ba14fe685 [patch][fix] remove hub node module removing code 2018-09-12 16:59:17 +05:30
Prateeksha Singh
238ed98653 Re-add Hub Node module 2018-09-12 16:36:10 +05:30
Nabin Hait
9fde97cdd2 Fixed merge conflict 2018-09-12 15:45:20 +05:30
Saurabh
393dd4286a [resolved] merge-conflicts 2018-09-12 14:48:30 +05:30
Zarrar
8dade79002 return blank if no data found (#15387) 2018-09-12 14:24:23 +05:30
Nabin Hait
6173e091ee fix(test): test cases fixed 2018-09-12 11:46:20 +05:30
Zarrar
2b6584a296 accounts table should be mandatory in budget (#15386) 2018-09-12 11:14:24 +05:30
Zarrar
ce6a09ca54 [Staging] Stock Reconciliation (#15382)
* optimize query and some fixes

* add get_query to filter warehouses based on company

* minor changes
2018-09-12 10:54:18 +05:30
Nabin Hait
0669a0e18a fix(bank account): import fixed 2018-09-12 10:50:10 +05:30
Nabin Hait
13beb3a008 fix(test): test cases fixed 2018-09-11 19:37:08 +05:30
rohitwaghchaure
713cfc786f [enhance] Payment order (#15056) 2018-09-11 17:40:37 +05:30
Faris Ansari
76b31deda5 Isomorphic marketplace (#15384)
* feat: Make marketplace run on hub server in Guest mode

* fix: Skip page actions on server

* fix: Limit PageContainer to marketplace route

* fix(eslint): Add hub variable to globals
2018-09-11 17:38:31 +05:30
Jamsheer
ede924c4a2 Remove print statements - Healthcare utils (#15363) 2018-09-11 17:32:52 +05:30
Sagar Vora
508189eaea Use default conversion factor if not found in Item (#15369) 2018-09-11 17:22:25 +05:30
Frappe PR Bot
157bdb71ca [Translation] Updated Translations (#15375) 2018-09-11 17:21:39 +05:30
Zarrar
2859300fe6 update modified date to reload doc (#15385) 2018-09-11 17:12:27 +05:30
Nabin Hait
84ddbc0ac9 fix(test): test cases fixed 2018-09-11 17:11:39 +05:30
Nabin Hait
2236f0aef0 fix(test): multiple test cases fixed 2018-09-11 16:50:46 +05:30
Nabin Hait
2ce2d2ac02 fix(sales invoice): get value only if field exists 2018-09-10 13:16:25 +05:30
Faris Ansari
20c72f74fc Merge pull request #15356 from adityahase/coverage
feature(coverage): Add test coverage to erpnext travis builds
2018-09-10 12:32:05 +05:30
Faris Ansari
80e6cad7ac Merge pull request #15360 from netchampfaris/marketplaces-fixes
fix(image): New Image component to consistently handle broken images
2018-09-10 12:29:50 +05:30
Zarrar
f42510eb54 Merge pull request #15372 from Zlash65/p-fix
[Minor] Patch Fix
2018-09-10 12:21:02 +05:30
Zlash65
4b0e3741b2 job card patch use orm 2018-09-10 12:18:51 +05:30
Prateeksha Singh
3b3c80e6b5 Merge pull request #15371 from pratu16x7/marketplace-fixes
[hub] add Item Manager permission to Hub Tracked Item
2018-09-10 11:40:42 +05:30
Prateeksha Singh
62f5cd2dee [hub] add Item Manager permission to Hub Tracked Item 2018-09-10 11:39:48 +05:30
Zarrar
8448d9014d [Fix] Patch fixes (#15350)
* fix typo in fieldname

* fallback for work_order/production_order in timesheet
2018-09-09 19:18:41 +05:30
Ameya Shenoy
8b7fea5a8a Merge pull request #15349 from sagarvora/py3-fixes
[py3] print, StringIO import, and other fixes
2018-09-09 02:25:10 +05:30
Saif Ur Rehman
423549e084 Fixed PDC data in AR/AP report:
-Get PDC date from posting_date instead of reference date since posting_date is the date at which the post dated cheque can be cleared
-Get PDC data from submitted documents only
2018-09-08 15:48:55 +05:00
Faris Ansari
9fb5e1c61b fix(image): New Image component to consistently handle broken images
- psuedo element hack didn't work cross browser
2018-09-07 23:17:29 +05:30
Aditya Hase
c7c87a9297 feature(coverage): Add test coverage to erpnext travis builds 2018-09-07 19:04:10 +05:30
Nabin Hait
73165ebd33 fix(patch): create healthcare patch only if domain activated 2018-09-07 18:44:14 +05:30
Sagar Vora
538100148f [py3] print, StringIO import, and other fixes 2018-09-07 17:59:59 +05:30
Pawan Mehta
2cc7eb1e94 fix default settings (#15345) 2018-09-07 17:59:10 +05:30
Nagarajan
8be8345b65 Stock Projected Qty Item Group Filter (#15340)
* Update stock_projected_qty.js

* Update stock_projected_qty.js

* Update stock_projected_qty.py

* Update stock_projected_qty.js
2018-09-07 16:20:18 +05:30
Nabin Hait
562d942a7d fix(patch): gst state number in address where number is less than 10 2018-09-07 16:14:44 +05:30
Nabin Hait
431e2e1c6d fix(payment entry): Changed modified 2018-09-07 14:31:34 +05:30
Nabin Hait
399f3ddf82 fix(sales invoice): Restored missing field group_same_items 2018-09-07 14:27:14 +05:30
Nabin Hait
3a342e8d93 fix(report): project filter in financial statement 2018-09-07 14:17:57 +05:30
Zarrar
0d0ebee5dd Merge pull request #15342 from Zlash65/minor
[Minor] Remove console statement
2018-09-07 14:07:08 +05:30
Zlash65
635890187a remove console statement 2018-09-07 14:04:46 +05:30
Zarrar
525a005b78 TDS Monthly report & TDS Computation Summary report (#15204)
* tds computation report added

* tds computation logic added

* minor changes to commonify code

* tds payable monthly report added

* initial logic for monthly tds calculation added

* added field for supplier type and pan

* changes related to pan and entity type

* date filter fix and cleanup
2018-09-07 13:27:10 +05:30
rohitwaghchaure
eef5cda1a9 [Fix] Blanket order issue (#15339) 2018-09-07 13:19:45 +05:30
Zarrar
7737620ff4 [Staging] Patch fix - Shopify Settings (#15338)
* keep enable_shopify in Shopify Settings disabled by default

* patch fix for shopify refactor

* minor fallback fix
2018-09-07 13:19:33 +05:30
Nabin Hait
b479a87031 fix(report): Cost center filters in financial statements and general ledger 2018-09-07 13:17:23 +05:30
rohitwaghchaure
ac696b9497 Merge pull request #15335 from rohitwaghchaure/fixed_patch_job_card
[Fix] Patch
2018-09-06 22:38:55 +05:30
Rohit Waghchaure
e74a39752f [Fix] Patch 2018-09-06 22:38:03 +05:30
rohitwaghchaure
32dc3bf082 [Enhance] Job Card (#15244)
* [Enhance] Added job card against the work order

* removed work order from timesheet

* Fixed codacy

* Added patch to make job card from the timesheet

* Timer in job card

* Dates validation in job card

* Added button to make job card from work order

* Added sub-assembly operation in the work order
2018-09-06 19:21:48 +05:30
Neil Trini Lasrado
6f77abe0dd Added ability to create a Return Sales Invoice/ Credit Note against a delivery note of type return (#15266)
* Remove make subscription button on delivery note if it is of type returns

* Added 'issue_credit_note' checkbox on delivery note to pass a Sales Inv of type return if checked while creating a return delivery note

* Added logic to auto-create Return Sales Invoice/ Credit Note if issue_credit_note checkbox is checked while return delivey note is submited

* Update delivery_note.py
2018-09-06 19:17:47 +05:30
Alchez
4b290e5561 Map details from Delivery Trip back to Delivery Note (#15261)
* Map details from Delivery Trip back to Delivery Note

* Add pop-up to indicate changed Delivery Notes
2018-09-06 19:08:19 +05:30
Alchez
f2fe0b2194 Keep Delivery Trip stops unique based on their Delivery Notes (#15264)
* Keep Delivery Trip stops unique based on their Delivery Notes

* Pull single row when making a Trip from Delivery Note
2018-09-06 19:05:09 +05:30
Bassam Ramadan
574cd46e41 Adding cashier closing feature (#15273)
* adding cashier closing feature

cashier closing feature has been added as now the cashier can make a
closure to record every thing from his pos as the expenses which has
been paid and the custody which he had at the starting and the amount
which is in his save and the system will record the date and time and
the user and the total net amount automatically which supposed be equal
to all of his sales invoices totals

* add cashier closing link at pos menu

* add cashier closing link to accounts config file

adding cashier closing link at accounts config file to show it at the
accounts module page

* adding more features to cashier closing

adding from time to the cashier closing in case the cashier working more
than one shift also giving him the ability to add the type of payments
to his cashier closure ,
also adding validation to be sure the from time is less than to time.

* Update cashier_closing.py
2018-09-06 19:02:25 +05:30
Alchez
e52ae4eacb [Fix] 'To Bill' status even if the amount is zero (#14784)
* Fix 'To Bill' status even if the invoice amount is zero

* Modify fix to only apply on Delivery Note documents
2018-09-06 18:27:06 +05:30
Zarrar
203baa9a3a update modified date to load blanket order field (#15332) 2018-09-06 17:46:11 +05:30
Nabin Hait
a2a6568b7e fix(reports): Made gstr1 ready for govt portal 2018-09-06 17:44:31 +05:30
Sanjay Kumar
1b49f3a4e7 Allow cost center in entry of balance sheet accounts (#14972)
* Allow Cost Center In Entry of Balance Sheet Account

* Add parent cost center in get payment entry

* Add Tests for Allow Cost Center In Entry of Balance Sheet Account

* Add tests for cost center wise account and party balance

* set parent cost center in taxes

* 1. Remove copy parent cost_center to child
2. Improve update party and account balance functionality on cost_center change
3. Add cost_center filter to get_outstanding_documents

* fix Codacy and Travis issue
2018-09-06 14:39:35 +05:30
Nabin Hait
b94008dab3 fix(patch): reload loyalty program in healthcare patch 2018-09-06 14:27:03 +05:30
Zarrar
1b37186460 set POS Invoice format only if its enabled (#15326) 2018-09-06 13:25:52 +05:30
ahmad zaqout
2350dc26f6 fix syntax error HTTPError in amazon_mws_api (#15324) 2018-09-06 13:21:04 +05:30
Nabin Hait
f846c43361 Merge branch 'ESS-LLP-healthcare_v11_wip' into develop 2018-09-06 13:07:08 +05:30
Nabin Hait
ffeff2d385 fix(tests): reset session user as administrator after running tests 2018-09-06 12:45:07 +05:30
Nabin Hait
e5a4037b57 minor fix in deferred revenue booking 2018-09-05 17:44:39 +05:30
Nabin Hait
aacb915cae Merge branch 'healthcare_v11_wip' of https://github.com/ESS-LLP/erpnext-healthcare into ESS-LLP-healthcare_v11_wip 2018-09-05 17:21:47 +05:30
Zarrar
2705af488d [Minor] [Staging] POS Profile (#15321)
* update modified date to load field display_items_in_stock

* stop dialog from popping up if no loyalty program found

* warehouse not used for not is_pos type invoice
2018-09-05 17:20:07 +05:30
Nabin Hait
ed643d5a12 fix(email digest): Income/expenses value in case of last period of a fiscal year (#15320) 2018-09-05 17:18:59 +05:30
Pawan Mehta
6010a10ad1 Amazon MWS Connector (#15061)
* [fix] #15054

* [fix] #15058

* codacy issues

* Codacy fixes-1

* Travis Fix

* fix codacy

* fix codacy

* review changes 1

* Custom fields and fixes

* remove amazon id

* remove item.json and sales_order.json

* added back sales_order and item files
2018-09-05 17:16:57 +05:30
Benji
6c9a92671b Minor bugfix (#15210)
* Minor bugfix

Bugfix for https://github.com/frappe/erpnext/pull/15170

* Update project.py
2018-09-05 13:24:53 +05:30
Nabin Hait
5122a8e0d7 Merge branch 'staging' into develop 2018-09-05 11:47:30 +05:30
Zarrar
3cea3c46b6 change modified date of account to reload fields (#15317) 2018-09-05 11:41:54 +05:30
Saif
8f00db58bd -Moved JE's User Remark on the top of the generated remarks (#15314)
-Added a field in JE's Account entries to add remarks in specific JE Account entry
2018-09-05 11:13:06 +05:30
rohitwaghchaure
bcaca85873 [Fix] Meta object has no attribute permissions (#15316) 2018-09-05 11:10:17 +05:30
KanchanChauhan
73bd3cb278 Moved daily event (update_latest_price_in_all_boms) to daily_long since it was timing out (#15253) 2018-09-05 11:01:35 +05:30
Charles-Henri Decultot
b07f482c0c Test case for contact references (#15077)
* test case for contact references

* Add teardown
2018-09-05 11:00:14 +05:30
Prateeksha Singh
f9c5da5df0 Merge pull request #15310 from pratu16x7/marketplace-fixes
[fix] filter() result in list
2018-09-04 11:01:25 +05:30
Prateeksha Singh
8a160684b7 [fix] filter() result in list 2018-09-04 10:59:20 +05:30
Faris Ansari
f8af7e0b3d Merge pull request #15309 from frappe/hub-multiuser
fix: Revert skeleton in Sidebar
2018-09-04 10:43:52 +05:30
Faris Ansari
7be9c381d8 fix: Revert skeleton in Sidebar
- sidebar items repeating for some reason
2018-09-04 00:12:47 +05:30
Faris Ansari
74a32e6ffe Merge pull request #15305 from frappe/hub-multiuser
feat: Add skeleton to Home and Sidebar
2018-09-03 19:40:22 +05:30
Faris Ansari
66321e6af7 feat: Add skeleton to Home and Sidebar 2018-09-03 19:39:19 +05:30
Prateeksha Singh
76f2430152 Merge pull request #15303 from frappe/hub-multiuser
Hub Multiuser
2018-09-03 18:57:41 +05:30
Prateeksha Singh
1265a26c0c Merge branch 'hub-multiuser' of https://github.com/frappe/erpnext into hub-multiuser 2018-09-03 18:50:25 +05:30
Prateeksha Singh
456c39336d [hub] update settings after publish, fix route_map 2018-09-03 18:49:33 +05:30
Faris Ansari
2b80bbbe16 Merge branch 'hub-multiuser' of https://github.com/frappe/erpnext into hub-multiuser 2018-09-03 17:50:06 +05:30
Prateeksha Singh
6ba9b3f4de [hub] hide Contact Seller and Save Item in read-only 2018-09-03 17:49:11 +05:30
Faris Ansari
b592a76016 fix: Selling Messages 2018-09-03 17:49:11 +05:30
Prateeksha Singh
ad6948844e Merge branch 'hub-multiuser' of https://github.com/frappe/erpnext into hub-multiuser 2018-09-03 17:32:17 +05:30
Prateeksha Singh
b2eadfe31d [hub] show become a seller button to all, but not dialog 2018-09-03 17:31:43 +05:30
Faris Ansari
49ccdd6f07 fix: Move image saving code to hub server 2018-09-03 17:24:17 +05:30
Faris Ansari
d4bba297c2 fix: Container title 2018-09-03 17:12:22 +05:30
Saurabh
1fe1884b73 Merge branch 'master' into develop 2018-09-03 17:00:17 +05:30
Faris Ansari
28652baacc Merge branch 'hub-multiuser' of https://github.com/frappe/erpnext into hub-multiuser 2018-09-03 16:54:04 +05:30
Faris Ansari
b296be041e fix: email in profile dialog 2018-09-03 16:53:56 +05:30
Prateeksha Singh
bffb707c17 [fix] add message for admin users before register dialog
- use is_registered api for page routes
2018-09-03 16:39:59 +05:30
Prateeksha Singh
8fe5e8adf8 Merge branch 'develop' of https://github.com/frappe/erpnext into hub-multiuser 2018-09-03 16:15:42 +05:30
Prateeksha Singh
adef70f8df [hub] update_hub_url patch to use marketplace_url 2018-09-03 16:12:50 +05:30
Saurabh
64aed6a16a Merge pull request #15301 from saurabh6790/staging
[fix] setup lang in patch
2018-09-03 16:08:25 +05:30
Saurabh
7b38d93e03 [fix] setup lang in patch 2018-09-03 16:07:40 +05:30
Frappe PR Bot
5c0a831ff2 [Translation] Updated Translations (#15299) 2018-09-03 15:58:04 +05:30
Faris Ansari
ad0be6aaa2 fix: Messages
- update messages according to new doctype
- sync logo in seller registration
- hub.is_seller_registered() and hub.is_user_registered() api
- Add Users dialog
2018-09-03 15:43:09 +05:30
Prateeksha Singh
18e3c61109 [marketplace] Disallow unregistered routes if not registered 2018-09-03 15:22:13 +05:30
Prateeksha Singh
47cc30da85 [hub] ask company description in dialog 2018-09-03 13:11:23 +05:30
Nabin Hait
13109aef9d fix: validate only if service stop date 2018-09-03 12:18:17 +05:30
Jamsheer
8f808cbaf6 Patch - redesign healthcare billing work flow - fix 2018-09-03 11:26:19 +05:30
Jamsheer
34e561876a Test prescription in Sales Invoice - Patient Encounter in draft status 2018-09-03 11:26:19 +05:30
Jamsheer
0640b4794e Healthcare Practitioner - dashboard - updated 2018-09-03 11:26:19 +05:30
Jamsheer
a3b76fa40e Healthcare - Masters - allow import set to 1 2018-09-03 11:26:19 +05:30
Jamsheer
b0ea297cf8 Patient Appointment - department - reqd = 0 2018-09-03 11:26:19 +05:30
Ranjith
2e48337cd4 Patient Encounter - update fields patient_name, patient_age 2018-09-03 11:26:19 +05:30
Jamsheer
a0b3e0268b Healthcare - Doctype - field index = 1 2018-09-03 11:26:19 +05:30
Jamsheer
359bb512b4 Payment mode and Paid amount in Patient Appointment 2018-09-03 11:26:18 +05:30
Jamsheer
7cc205946c Restrict to Healthcare 2018-09-03 11:26:18 +05:30
Jamsheer
363deb67c3 Automate - Patient Apointment Invoicing 2018-09-03 11:26:18 +05:30
Jamsheer
4371c7e492 Healthcare Service Unit - Tree View Updated 2018-09-03 11:26:18 +05:30
Jamsheer
c64880b578 Invoice - lab prescription from submitted Patient Encounter 2018-09-03 11:26:18 +05:30
Jamsheer
0ae100b035 Configuration - Create Lab Test on Sales Invoice Submit 2018-09-03 11:26:18 +05:30
Jamsheer
61574d18bf Fix - Create Multiple Lab Test from Sales Invoice or from Patient Encounter 2018-09-03 11:26:18 +05:30
Jamsheer
858e026fc0 Lab Test - Create Multiple from Sales Invoice or from Patient Encounter 2018-09-03 11:26:18 +05:30
Jamsheer
80468bec31 Lab Test - Remove unused methods 2018-09-03 11:26:18 +05:30
Jamsheer
2ae06d3a35 Healthcare Service Unit - rename field - occupied to occupancy status 2018-09-03 11:26:18 +05:30
Jamsheer
b19993b5bc Codacy - fixes 2018-09-03 11:26:18 +05:30
Jamsheer
25dda3a91a Invoice inpatient occupancy - Qty updated 2018-09-03 11:26:18 +05:30
Jamsheer
9b9518eaaa Healthcare Service Unit Type - Validation and Item price updation 2018-09-03 11:26:18 +05:30
Jamsheer
c8f827be66 Healthcare Service Unit Type - Field - UOM Conversion in Hours 2018-09-03 11:26:17 +05:30
Jamsheer
ee5f9c7b80 Healthcare Invoice - Practitioner Specific Service Item 2018-09-03 11:26:17 +05:30
Jamsheer
e1d215352b Healthcare Practitioner - Service Item Fields - Filter and Validation 2018-09-03 11:26:17 +05:30
Jamsheer
1dbfd5c1e7 Healthcare Settings - Heathcare Service Item - Validation 2018-09-03 11:26:17 +05:30
Jamsheer
e82f27ac10 Healthcare - Invoice Drug Prescription 2018-09-03 11:26:17 +05:30
Jamsheer
197cd88d36 Lab Test Template - rate updation - fix 2018-09-03 11:26:17 +05:30
Jamsheer
a5c3fc69b8 Patch - Healthcare - Invoice - fix 2018-09-03 11:26:17 +05:30
Jamsheer
8da6f4e30c Healthcare - Invoice - Redesign 2018-09-03 11:26:17 +05:30
Jamsheer
25e535c66f Clinical Procedure Item - Remove field invoiced 2018-09-03 11:26:17 +05:30
Jamsheer
1646010059 Clinical Procedure - Consumables Invoice Separately 2018-09-03 11:26:17 +05:30
Jamsheer
0eb64ca38b Healthcare Settings - Filter For Service Items 2018-09-03 11:26:16 +05:30
Jamsheer
edf8821a4e Healthcare Settings - fields - service items 2018-09-03 11:26:16 +05:30
Jamsheer
b2a615b8e8 Healthcare Practitioner - new field - Inpatient Visit Charge 2018-09-03 11:26:16 +05:30
Jamsheer
7f51ffa5eb Patch - Healthcare - Redesign Billing - fix 2018-09-03 11:26:16 +05:30
Jamsheer
eafb046fce Healthcare Utils - prescription - invoice - fix 2018-09-03 11:26:16 +05:30
Jamsheer
fd2879c077 Patch - Healthcare - Redesign Billing 2018-09-03 11:26:16 +05:30
Jamsheer
c6974a79a8 Sales Invoice - show Healthcare Fields - Healthcare in active Domains 2018-09-03 11:26:15 +05:30
Jamsheer
94efed161a Fee Validity - Test - Updated 2018-09-03 11:26:14 +05:30
Jamsheer
146683bbff Fee Validity - invoice reference 2018-09-03 11:26:14 +05:30
Jamsheer
f7a6531fb3 Inpatient Record - Test - Updated 2018-09-03 11:26:14 +05:30
Jamsheer
54ae74eb28 Inpatient Billing 2018-09-03 11:26:14 +05:30
Jamsheer
8cb142bf29 Field Changes - Healthcare Invoice Work Flow Redesign 2018-09-03 11:26:14 +05:30
Jamsheer
bab55390f8 Sales Invoice in Patient Dashboard 2018-09-03 11:26:14 +05:30
Jamsheer
ba11972302 Healthcare Service - Invoice Work Flow - Redesign 2018-09-03 11:26:14 +05:30
Frappe PR Bot
3921660747 [Translation] Updated Translations (#15285) 2018-09-03 11:14:57 +05:30
Saurabh
0754ece288 Patch fixes (#15295)
* patch fixes

* [Fix] disable shopify if any exception occured while
2018-09-03 10:44:40 +05:30
Prateeksha Singh
85563ddfd3 [hub] update publish hub api 2018-09-03 02:44:27 +05:30
Prateeksha Singh
5511e06f06 [hub][api] Update save and view api to be user specific 2018-09-03 02:25:41 +05:30
Prateeksha Singh
2cf52e53dd Merge branch 'develop' of https://github.com/frappe/erpnext into hub-multiuser 2018-09-02 19:46:30 +05:30
Prateeksha Singh
a094c0f3f1 [fix] encrypted password in Hub User child record by frappe/frappe#6048
- use save() instead of insert()
2018-09-02 19:45:56 +05:30
Faris Ansari
68129df74c feat: Add add_user dialog and methods
- wip
2018-09-02 18:29:00 +05:30
Nabin Hait
02257449d9 Merge branch 'develop' into staging 2018-09-01 19:04:50 +05:30
Nabin Hait
41b630759c fixed type 2018-09-01 18:37:07 +05:30
Nabin Hait
4e187e88f8 ignore non stock items in stock entry against work order 2018-09-01 18:15:33 +05:30
Prateeksha Singh
b2b745fc7a [hub] simplify marketplace settings, remove company fields
- Company attributes will be fetched/calculated to send to server
- removed them as fields in settings
- Added description in company, with existing logo field
- TODO: for things like logo and description, ask user to set in master
2018-09-01 17:20:08 +05:30
Faris Ansari
255dd0e03d feat: Add new registration flow 2018-09-01 14:30:46 +05:30
Prateeksha Singh
ddcf3b4345 [hub] merge with upstream 2018-09-01 10:33:24 +05:30
Prateeksha Singh
4e1fd0b417 [hub] register_seller -> register_marketplace
- resgister_seller will be for subsequent users
- make username and password readonly
- check if password present before trying to create connection
2018-09-01 09:55:43 +05:30
Prateeksha Singh
810ae01832 [hub] make client connection for first registered user
- remove usage of Hub Connector
2018-09-01 01:14:29 +05:30
Prateeksha Singh
1801cc8962 [fix] hub_url -> marketplace_url 2018-09-01 00:39:08 +05:30
Prateeksha Singh
747c464248 [fix] save() -> insert() for single doc, use doc.append in child table 2018-09-01 00:12:17 +05:30
Prateeksha Singh
a8065ff725 [hub] move register_seller to api, remove old code 2018-08-31 22:41:26 +05:30
Prateeksha Singh
c726fce4b1 [hub] set first user's password in marketplace users 2018-08-31 20:42:48 +05:30
Prateeksha Singh
3588486e5b [fix] hub_settings -> marketplace_settings in call 2018-08-31 20:12:33 +05:30
Prateeksha Singh
ea2b9cbd1c [hub] add user selection in register 2018-08-31 17:56:50 +05:30
Faris Ansari
5f76c0caf4 Merge pull request #15284 from netchampfaris/marketplace-fixes-4
fix: Allow read permission to everyone on Marketplace Settings
2018-08-31 17:37:13 +05:30
Faris Ansari
dc1a2e2a37 fix: Allow read permission to everyone on Marketplace Settings 2018-08-31 17:31:22 +05:30
Nabin Hait
f1a3fbdb6b minor fixes in dropship 2018-08-31 17:05:20 +05:30
Fisher Yu
2e5c776293 Update sales_order.py
1. filter out the suppliers by which the dropship purchase order already created
2. allow create multi dropship draft purchase orders
2018-08-31 17:05:20 +05:30
Fisher Yu
102bc7f5cf Update sales_order.js
for creating dropship purchase orders, allow the user to leave supplier field empty, it will auto create all dropship purchase orders for multi suppliers assigned to sales order items.
2018-08-31 17:05:20 +05:30
Faris Ansari
c05bf262f1 Merge pull request #15279 from netchampfaris/marketplace-fixes-3
- feat: Add disable marketplace option in Hub Settings
- fix: Rename Hub Settings -> Marketplace Settings
2018-08-31 16:52:26 +05:30
Valmik
2175b90b8d Added feature to optimize routes, also cleaned up code (#15193) 2018-08-31 16:39:29 +05:30
Faris Ansari
f9a66c1c36 fix: Rename Hub Settings -> Marketplace Settings 2018-08-31 16:30:34 +05:30
Rushabh Mehta
a2288ff8e7 fix(assessment_result): student must be in group (#15255)
* fix(assessment_result): student must be in group

* fix(test_student_group): raise correct exception

* fix(unused-import): assessment-plan.py

* fix(tests)

* fix(tests)

* fix(test)

* fix(tests)
2018-08-31 16:12:49 +05:30
Faris Ansari
25f509ebd3 feat: Add disable marketplace option in Hub Settings 2018-08-31 15:35:32 +05:30
Nabin Hait
1b73505391 Update sales_invoice.py 2018-08-31 14:56:16 +05:30
Nabin Hait
3c56aa9c1d minor fixes 2018-08-31 14:51:01 +05:30
Nabin Hait
9cc28a77c9 minor fixes 2018-08-31 14:49:20 +05:30
Ameya Shenoy
96c89f478f Merge pull request #15278 from codingCoffee/indent
indentation: fixes
2018-08-31 09:14:09 +00:00
Ameya Shenoy
203152d67e indentation: fixes 2018-08-31 14:33:48 +05:30
Nabin Hait
9ecd8cc004 Merge branch 'Zlash65-defer-stop-date' into develop 2018-08-31 13:30:21 +05:30
Nabin Hait
e033df2757 minor fixes 2018-08-31 13:30:03 +05:30
Nabin Hait
b259e3eb06 Merge branch 'defer-stop-date' of https://github.com/Zlash65/erpnext into Zlash65-defer-stop-date 2018-08-31 12:39:46 +05:30
Saurabh
5c3590fa8d Merge branch 'master' into develop 2018-08-31 11:29:14 +05:30
Shreya Shah
ee8f8281b4 [py3] Convert filter object to list (#15260) 2018-08-30 19:22:22 +05:30
Faris Ansari
91ac26c2ff fix(seller dialog): Email should be session user email (#15270) 2018-08-30 19:19:57 +05:30
Charles-Henri Decultot
7e86d7b014 Add default payable account for expense claims (#15246) 2018-08-30 19:18:26 +05:30
Bassam Ramadan
8d7c1868d6 fix for fields names at sales invoice return payments and verifying the payment amount (#15245)
* fix for payments field names in sales invoice return

* add verification for payment amount at sales invoice return

adding verification to be sure the payment amount is negative at sales
invoice return

* correction for precision field name
2018-08-30 19:15:15 +05:30
KanchanChauhan
0cd5313c69 Validate Completed Qty and Produced qty in Stock Entry for Manufacture (#15248) 2018-08-30 19:11:15 +05:30
Nabin Hait
9983d41fb0 Fixed divison error 2018-08-30 19:10:36 +05:30
Faris Ansari
00f6aef947 fix(publish items): Filter out disabled items (#15268) 2018-08-30 18:54:28 +05:30
Rushabh Mehta
49f9747385 major(manufacturing): fixes to ux, material requests to purchase order based on default supplier etc (#15267)
* major(manufacturing): fixes to ux, material requests to purchase order based on default supplier etc

* fix: remove debug
2018-08-30 18:50:48 +05:30
Nabin Hait
f6b784e39e Test fixes 2018-08-30 18:42:35 +05:30
Shreya Shah
68348d4130 [Attendance-Tool] Filter employees based on date of joining (#15262) 2018-08-30 17:25:58 +05:30
Prateeksha Singh
75ae844d70 Merge pull request #15247 from frappe/hub-redesign
[encore] MarketPlace
2018-08-30 17:12:41 +05:30
Prateeksha Singh
ecad873d19 [hub] remove item.js, fix seller decription condition 2018-08-30 16:21:26 +05:30
Nabin Hait
2390da647f GSTR-1 minor fixes 2018-08-30 16:16:48 +05:30
Prateeksha Singh
5797565dd0 Merge with upstream 2018-08-30 16:15:27 +05:30
Prateeksha Singh
ff52e93e69 [hub] Merge conflicts 2018-08-30 16:11:41 +05:30
Prateeksha Singh
997bfa4916 [hub] add review timeline element 2018-08-30 16:08:52 +05:30
Faris Ansari
f3034ae262 feat: Add Report Item dialog 2018-08-30 16:05:15 +05:30
Faris Ansari
8e04487253 fix: Rename 'Product' to 'Item' 2018-08-30 15:35:17 +05:30
Prateeksha Singh
dc36d52ef9 [hub] fix review send 2018-08-30 15:12:18 +05:30
Faris Ansari
6b695d32b2 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-30 14:36:14 +05:30
Faris Ansari
90265aec24 fix: Page container routing 2018-08-30 14:36:05 +05:30
Faris Ansari
062cd62484 fix: Add restrictions for session user who is not hub seller 2018-08-30 14:35:56 +05:30
Prateeksha Singh
bff2bdc858 [hub] UI and empty state in 'your products' to guide on publishing 2018-08-30 12:58:46 +05:30
Prateeksha Singh
47f5f0e608 [hub] remove See All from non expandable sections 2018-08-30 12:16:08 +05:30
Prateeksha Singh
a4c24bda65 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-30 12:01:39 +05:30
Prateeksha Singh
b20c4e3184 [hub] remove client hub_settings scripts
- multiline to single line messages to translate
2018-08-30 12:01:04 +05:30
Faris Ansari
d32e7f8d02 fix: Administrator cannot register on marketplace 2018-08-30 11:53:46 +05:30
Faris Ansari
95e4141bf2 fix: Remove unused imports 2018-08-30 11:46:14 +05:30
Shreya Shah
e3f855498f Update README.md 2018-08-30 10:41:53 +05:30
Shreya Shah
9c03ed0a42 Update README.md
move codetriage badge with other badges
2018-08-30 10:41:37 +05:30
Zlash65
80f5cb05cc fixes in setting end_date and manual provision of start&end date 2018-08-30 10:39:48 +05:30
Zlash65
91eae54383 manually provide start and end date 2018-08-30 10:39:48 +05:30
Zlash65
d0e37327e6 start date logic fix 2018-08-30 10:39:48 +05:30
Zlash65
7b3fd85943 end date / stop date calc fix 2018-08-30 10:39:48 +05:30
Zlash65
4ce8c7f383 end date should reset if start date is changed 2018-08-30 10:39:48 +05:30
Zlash65
d676a67769 validate changing service stop date once its set 2018-08-30 10:39:48 +05:30
Zlash65
339c2e9f15 book last gl_entry based on service stop date 2018-08-30 10:39:48 +05:30
Zlash65
243863a290 validation for stop date added 2018-08-30 10:39:48 +05:30
Zlash65
33cff7735e service stop date field added 2018-08-30 10:39:48 +05:30
Rushabh Mehta
f31e6153cc readme: codetriage badge 2018-08-30 10:36:01 +05:30
Rushabh Mehta
20fd2ddd1c ux(hr): module listing and quick entry for employee 2018-08-30 09:21:54 +05:30
Prateeksha Singh
04d051bb73 [hub] add review area 2018-08-30 02:42:13 +05:30
Prateeksha Singh
89ed2d9b34 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-30 02:33:28 +05:30
Prateeksha Singh
a6f184bcb7 [hub] remove old post and preprocess, log with minimal info 2018-08-30 02:30:40 +05:30
Faris Ansari
114d595de9 fix: Set hub_url in Hub Settings
- add patch to set the value
2018-08-29 18:24:49 +05:30
Faris Ansari
e4c7729089 fix(Hub Settings): Set site_name before seller registration 2018-08-29 17:13:43 +05:30
Faris Ansari
b7126c23f7 fix(Hub Settings): Remove unused fields 2018-08-29 17:13:16 +05:30
Rushabh Mehta
13bcc4e27e perms: fix default import, export perms 2018-08-29 17:10:27 +05:30
Nabin Hait
28f9b0a9ab (fix)test case: loyalty program, course schedule and more 2018-08-29 17:05:11 +05:30
Faris Ansari
458cf6fcc5 style: remove trailing spaces 2018-08-29 16:19:39 +05:30
Faris Ansari
8683bd82ed fix: Base64 extraction
- use requests to fetch the image without storing it anywhere
- only read local files
2018-08-29 16:18:36 +05:30
Faris Ansari
ff8f1c6120 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-29 15:02:47 +05:30
Faris Ansari
64202ad416 fix: Only a System Manager can register as a seller
- every other user has read only access
2018-08-29 15:02:39 +05:30
Prateeksha Singh
02c176c0e6 [hub] fix code lint issues, styles 2018-08-29 14:27:47 +05:30
Nabin Hait
a804d6d487 Fixed merge conflict 2018-08-29 13:34:58 +05:30
Nabin Hait
6b539d65d7 Restored missing rounded_total fields 2018-08-29 12:41:23 +05:30
Faris Ansari
8bc954ecc6 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-28 18:29:08 +05:30
Faris Ansari
b26381e6b8 fix: Scroll to top when route changes 2018-08-28 18:29:01 +05:30
Prateeksha Singh
bd7d964848 [hub] Merge Develop 2018-08-28 18:25:07 +05:30
Zarrar
af370c8147 Merge pull request #15242 from frappe/revert-15241-google_maps_settings
Revert "Google maps settings"
2018-08-28 17:26:47 +05:30
Zarrar
34208cc89d Revert "Google maps settings" 2018-08-28 17:25:21 +05:30
Prateeksha Singh
2d45373f33 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-28 17:25:01 +05:30
Prateeksha Singh
1e02f00075 [hub] record views, update favourite api 2018-08-28 17:24:31 +05:30
Faris Ansari
6df06cac97 fix: Show empty state if there are no items 2018-08-28 17:19:35 +05:30
Faris Ansari
c12f48da2d Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-28 17:17:36 +05:30
Faris Ansari
811a2deb0f fix: Load and save base64 image in publish 2018-08-28 17:17:29 +05:30
Faris Ansari
5689494f9c chore: Remove old messages page 2018-08-28 16:52:17 +05:30
Saurabh
9cfde278ad Merge pull request #15241 from saurabh6790/google_maps_settings
Google maps settings
2018-08-28 16:28:39 +05:30
Saurabh
5b398f293a [fix] typo fix 2018-08-28 16:28:12 +05:30
Nabin Hait
a626d967c0 [fix] naming series refactor patch 2018-08-28 16:08:22 +05:30
Nabin Hait
24efd19895 [fix] naming series refactor patch 2018-08-28 15:47:08 +05:30
Nabin Hait
0e7a6856a7 [fix] naming series refactor patch 2018-08-28 15:44:46 +05:30
Saurabh
f2caacdf74 [fix] fix google map imports (#15240) 2018-08-28 15:23:35 +05:30
Nabin Hait
2d28eccdcf [fix] naming series refactor patch 2018-08-28 15:18:48 +05:30
Suraj Shetty
b92403fbed Add 'Become Seller' as a primary key
- Also remove some unwanted code
2018-08-28 15:04:33 +05:30
Suraj Shetty
f994e3ec6b Remove 'Become Seller' option from sidebar 2018-08-28 15:03:01 +05:30
Nabin Hait
2b9186da5a [fix] naming series patch 2018-08-28 15:02:59 +05:30
Nabin Hait
b2c94c0307 [fix] for python 3 2018-08-28 14:39:47 +05:30
Nabin Hait
04bca58fb7 [fix] missing functions related to google maps 2018-08-28 14:21:48 +05:30
Aditya Hase
e3ac5ff9e3 erpnext: refactor async to is_async (#15231) 2018-08-28 14:11:58 +05:30
Nabin Hait
01b2a6549c minor fix 2018-08-28 14:09:36 +05:30
Shreya Shah
a5add289bb Refactor Naming Series (#15070)
* Patch to create Property Setter for existing naming series

* Update existing naming series options with new

* Add patch link to patches.txt

* Update patch

* Fix codacy

* Fix as per suggestions

* Remove old patch for property setter

* Improve as per suggested

- Modified the naming
- Also refactored naming for doctypes having autoname with series
- Added a patch to make property setter for autoname

* Fix Travis

* Rebase with develop
2018-08-28 13:44:48 +05:30
Saurabh
fe9ba73c34 Merge pull request #15236 from saurabh6790/v11_patch_fixes
patch sequence fix
2018-08-28 13:20:26 +05:30
Saurabh
1898e11585 patch sequence fix 2018-08-28 13:04:40 +05:30
Suraj Shetty
9a50044003 Merge pull request #15232 from surajshetty3416/fixes-and-improvements
UI enhancements
2018-08-27 20:38:11 +05:30
Suraj Shetty
ec12b34a79 Add margin below publish area 2018-08-27 20:37:06 +05:30
Suraj Shetty
49c37d5a8e Add strip html filter 2018-08-27 20:31:29 +05:30
Faris Ansari
a4dcb6f548 fix: Add empty state in Selling 2018-08-27 19:57:12 +05:30
Faris Ansari
725603c0a9 feat: Selling Page
- common Messages page for both buying and selling
2018-08-27 19:51:36 +05:30
Saurabh
4d0a581c29 Merge pull request #15230 from saurabh6790/v11_patch_fixes
[Fix] patch fixes for V11 migration
2018-08-27 18:17:14 +05:30
Saurabh
51570f731c [Fix] patch fixes for V11 migration 2018-08-27 17:00:51 +05:30
Prateeksha Singh
bc859cbf1d Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-27 15:16:53 +05:30
Prateeksha Singh
872768d89f [hub] merge conflicts 2018-08-27 15:16:19 +05:30
Faris Ansari
45a12e790b Merge pull request #15227 from surajshetty3416/fixes-and-improvements
Remove occurrences of hub_item_code and replace some hub_item_code -> hub_item_name
2018-08-27 15:00:42 +05:30
Suraj Shetty
dc7e8e6a26 Replace hub_item_code -> hub_item_name 2018-08-27 14:11:48 +05:30
Zarrar
93577665f2 [Enhance] Multiselect for Cost Center and Project (#15208)
* add filter for Cost Center, make CC & Project multiselect field

* update queries according to project/cost_center multiselect

* add multiselect filter for cost_center and project

* update query according to multiselect
2018-08-27 12:08:53 +05:30
Maxwell Morais
a2c1d92374 Revert "Fix shipping_address for DropShipping" (#15218)
* Revert "Cleaned up welcome email code (#15175)"

This reverts commit 771fbb8f01.

* Revert "[Fix] Raw materials are not showing in the stock entry if skip transfer is enabled and backflush is based on stock entry (#15187)"

This reverts commit 2b72d09948.

* Revert "[Enhance] Provision to backflush raw materials from WIP warehouse (#15184)"

This reverts commit c5cf428d00.

* Revert "[Minor] Create default department on country setup (#15206)"

This reverts commit 2b2712bb9e.

* Revert "Permissions issue in BOM tree"

This reverts commit 8fe8d1758a.

* Revert "Fix indentation accounts_receivable.py (#15203)"

This reverts commit fbc3df3247.

* Revert "Fix shipping_address for DropShipping (#15202)"

This reverts commit 4a394bcbf4.
2018-08-27 12:05:41 +05:30
Zarrar
b94c7075d8 rectify item price route (#15223) 2018-08-27 11:44:13 +05:30
Prateeksha Singh
fa26899cd0 [hub] added DetailHeaderItem to detail pages, contact seller button 2018-08-27 10:49:42 +05:30
Prateeksha Singh
d0a952bcda [hub] Register components, init Item Page
- commonly used components are pre-registered
- add DetailHeaderItem component
- begin ItemPage
2018-08-27 10:12:45 +05:30
Faris Ansari
f089dad7c7 feat: Sidebar in vue 2018-08-26 22:20:16 +05:30
Faris Ansari
d37108d18e fix: Add back link to Buying 2018-08-26 22:19:56 +05:30
Faris Ansari
23e45ada69 chore: Remove old messages files 2018-08-26 22:19:29 +05:30
Faris Ansari
ea82fb9f80 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-26 20:09:12 +05:30
Faris Ansari
caebd4a9b9 feat: Buying and BuyingMessages in vue 2018-08-26 20:09:02 +05:30
Faris Ansari
019bfd3940 feat: Add helper directives
- v-route
  automatically route to a valid frappe route
- v-img-src
  handle img loading and error handling
2018-08-26 20:08:40 +05:30
Faris Ansari
bf5cc7d823 feat: SectionHeader component 2018-08-26 20:00:42 +05:30
Faris Ansari
4a2ea993fd fix(search-input): submit on enter 2018-08-26 19:49:20 +05:30
Faris Ansari
fad623eb27 feat: Add dynamic routes in PageContainer 2018-08-26 19:48:52 +05:30
Prateeksha Singh
fad0f64c94 [hub][vue] add action object in empty state, make NotFound page 2018-08-26 18:27:04 +05:30
Prateeksha Singh
5c9b13f5e5 [hub][vue] add skeleton state to DetailView 2018-08-26 18:06:25 +05:30
Prateeksha Singh
9e8d7bbeda [hub][vue] Seller Page 2018-08-26 16:29:32 +05:30
Prateeksha Singh
80a8dfd6ba Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-26 13:09:52 +05:30
Prateeksha Singh
5e30beec86 [hub][vue] DetailView and Profile page 2018-08-26 13:09:19 +05:30
Faris Ansari
888dd606ff feat: Add PageContainer 2018-08-26 12:41:02 +05:30
Faris Ansari
a760d8cce7 Merge pull request #15212 from surajshetty3416/fixes-and-improvements
Separate links for selling and buying messages
2018-08-26 12:03:56 +05:30
Suraj Shetty
0e59ec3ed2 Update messages UI 2018-08-26 10:07:00 +05:30
Suraj Shetty
88700cf2b9 Separate links for selling and buying messages
- Add separate UI for selling messages
- Remove some redundant code messages
2018-08-26 10:06:27 +05:30
Prateeksha Singh
de426cb543 [hub][vue] Home page, add section title in item key in v-for 2018-08-25 21:54:49 +05:30
Prateeksha Singh
53fada1ae9 [hub][vue] search page 2018-08-25 20:31:48 +05:30
Prateeksha Singh
0be2859f5b [hub][vue] Category and Published Products pages 2018-08-25 15:54:43 +05:30
Prateeksha Singh
c31e5c0013 [hub][vue] replace page files, fix item 'seen' prop 2018-08-25 14:09:01 +05:30
Prateeksha Singh
00175eab8e [hub][vue] Saved Products Page, remote item card
- also undo unfavouriting items
2018-08-25 13:18:30 +05:30
Prateeksha Singh
fe41713974 [hub][vue] add import 2018-08-24 16:53:34 +05:30
Prateeksha Singh
40f7c4663a [hub][vue] Publish Page 2018-08-24 16:38:34 +05:30
Neil Trini Lasrado
771fbb8f01 Cleaned up welcome email code (#15175) 2018-08-24 15:15:56 +05:30
rohitwaghchaure
2b72d09948 [Fix] Raw materials are not showing in the stock entry if skip transfer is enabled and backflush is based on stock entry (#15187) 2018-08-24 11:28:34 +05:30
rohitwaghchaure
c5cf428d00 [Enhance] Provision to backflush raw materials from WIP warehouse (#15184) 2018-08-24 11:27:41 +05:30
Zarrar
2b2712bb9e [Minor] Create default department on country setup (#15206)
* make default department when creating new company

* remove departments and tds entry for the company
2018-08-24 11:26:51 +05:30
Prateeksha Singh
67e0374261 [hub] add data-driven notification message 2018-08-23 23:55:04 +05:30
Prateeksha Singh
b696b2965d [hub][vue] add empty state and dynamic publish button 2018-08-23 21:25:53 +05:30
Nabin Hait
8fe8d1758a Permissions issue in BOM tree 2018-08-23 16:25:51 +05:30
Nabin Hait
4b9f20edb3 Permissions issue in BOM tree 2018-08-23 16:24:56 +05:30
Prateeksha Singh
d7d2bb261b [hub] add SearchInput 2018-08-23 13:52:41 +05:30
Prateeksha Singh
6e5b9a8f9b Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-23 12:23:09 +05:30
Prateeksha Singh
ff616b8845 [hub][vue] init item card container in vue 2018-08-23 12:22:20 +05:30
Prateeksha Singh
cfb6929f5c Merge pull request #15194 from surajshetty3416/fixes-and-improvements
UI/UX fixes and improvements
2018-08-23 12:16:31 +05:30
Mario Monroy
fbc3df3247 Fix indentation accounts_receivable.py (#15203) 2018-08-23 11:10:15 +05:30
Maxwell Morais
4a394bcbf4 Fix shipping_address for DropShipping (#15202)
This stretch of javascript go against the address definition for DropShipping.
When we create an PO from SO with dropshipping items, the backend code update fine the shipping address, but this stretch of code, replace the customer address to the Company address.

To reproduce that behavior, pick one sales order with Drop Shipping Items, make and purchase order, and take a look into the delivery address.
2018-08-23 11:08:37 +05:30
Charles-Henri Decultot
25712f8d65 Sales order correction (#15190) 2018-08-23 10:51:44 +05:30
Benji
363dd2773e Update email_digest.py (#15144) 2018-08-22 21:57:51 +05:30
Suraj Shetty
341386e3a7 Add list view for messages 2018-08-22 21:31:16 +05:30
Suraj Shetty
d94701e5cc Add recent message block to item_card 2018-08-22 16:47:50 +05:30
Suraj Shetty
b361c234b1 Remove unused message to avoid confusion 2018-08-22 16:44:55 +05:30
Valmik
6ad16db88c check for existing task before appending to child table (#15183) 2018-08-22 14:46:33 +05:30
Faris Ansari
427a1301b7 Issues on the Portal should be editable (#15181) 2018-08-22 14:43:32 +05:30
Suraj Shetty
7ee79498fc Hide review option for unregistered user 2018-08-22 12:09:40 +05:30
Suraj Shetty
831ff42101 Stop event bubbling on clicking edit item 2018-08-22 11:52:20 +05:30
Suraj Shetty
12de0aec11 Fix publish button alignment 2018-08-22 11:50:23 +05:30
Suraj Shetty
fc7b7b6b97 Allow item list for System Manager 2018-08-22 11:32:49 +05:30
Suraj Shetty
7a040c4dd8 Show favorite button only for registered user 2018-08-22 11:32:49 +05:30
Suraj Shetty
f9e4cca334 Throw error if hub_url is not present in site_config 2018-08-22 11:32:49 +05:30
Suraj Shetty
3cd0c54438 Fix pyhton 3 compatibility 2018-08-22 11:32:49 +05:30
Prateeksha Singh
631c170ccf [hub] fix merge conflicts 2018-08-21 21:00:53 +05:30
Prateeksha Singh
caadd8af4e [Hub] sync with insert_many, Remove Data Migration Run 💥
- Use FrappeClient insert_many to publish items
- We will be syncing small amounts of items anyway
- Also, we need only the insert action in bulk
2018-08-21 19:59:15 +05:30
Faris Ansari
e745e85d98 feat: route to message room page after contact seller dialog 2018-08-21 19:48:42 +05:30
Faris Ansari
e7af44f1a6 fix: remove items with invalid image 2018-08-21 19:48:06 +05:30
Faris Ansari
a22aa60a17 Merge with upstream 2018-08-21 19:17:25 +05:30
Faris Ansari
ff189b6853 fix: publish items
- Pass image data as a json
- ignore duplicates while creating Hub Tracked Item
2018-08-21 19:14:44 +05:30
Faris Ansari
d29a3b3567 Highlight links with part route or full route 2018-08-21 19:12:10 +05:30
Zarrar
aac5a7beba Merge pull request #15188 from Zlash65/indent-fix
[Minor] Indentation fix
2018-08-21 18:23:23 +05:30
Zlash65
4d462d637f indentation fix 2018-08-21 18:19:26 +05:30
Rushabh Mehta
9a29bfa49e fix(indentation): sales_and_purchase_return.py 2018-08-21 17:53:25 +05:30
Prateeksha Singh
b0a3a106fc [hub] profile email uneditable, style additions, base64 sync enable 2018-08-21 17:43:30 +05:30
Faris Ansari
d17aedb719 Add BuyingMessages page 2018-08-20 18:33:46 +05:30
Bassam Ramadan
1ff2315899 Trial balance and payable accounts reports and sales return fixes (#15000)
* adding supplier type filter to payable accounts and payable accounts summary reports

adding supplier type filter to payable accounts and payable accounts
summary reports as customer group at receivable accounts and summary
reports as its important and easier to put this filter

* fix trial balance opening and closing values

the removed mathematical operations was causing showing incorrect values
at opening and closing columns where the total row was correct so the
operation deleted to view the correct values to be equal to the total
row and to stop confusing the user due to different values between the
total row and the the values in front of each account

* fix for supplier type filter field on payable accounts reports

rename the supplier type filter field to supplier group in payable
accounts and summary reports

* fix for paid amount in returned sales invoice

the current paid amount not change from source value if you deleted any
item if the invoice contain for example 3 items and you only need to
return on item the current steps is to open the original invoice and
press on make return then you delete the unwanted items but in this case
the paid amount will not change and you will get an alert from the
system until you change it manually but with this modification it works
very well.

* fixing trial balance values and totals

fixing trial balance opening and closing ( DR - CR ) values and totals
2018-08-20 17:58:28 +05:30
Saif
15636a3b98 Problem: Making a PE from PO led to incorrect values in PE form since PO's default party_account_currency is the company's currency (#15153)
Fix: PO will set party_account_currency to supplier's default currency on validation.
2018-08-20 17:57:00 +05:30
Saif
a09a8c3bf7 Fixed missing DocType info for Purchase Items (#15152)
* Made Purchase Invoice Items' Batch No and Serial No fields non copyable.

* Added appropriate currency field options to Purchase...Items DocFields:
-Landed Cost Voucher Amount
-Billed Amt
2018-08-20 17:55:18 +05:30
rohitwaghchaure
8cca61f1ba [Fix] Removed roles for Eway bill report (#15157) 2018-08-20 17:53:56 +05:30
Saif
e3947296e8 Group by Voucher fix in General Ledger Report (#15169)
* -Group by Voucher requires ordering the query not grouping the query
-Summing fields is not necessary since grouping by 'name' is the same as getting individual entries

* Group by Voucher show groups with totals at the end of group
2018-08-20 17:49:29 +05:30
Benji
299185fe24 Improved task weight calc (#15170)
* Improved task weight calc

Removed the requirement to have total of task weights to be exactly 1.

* Update project.py
2018-08-20 17:41:56 +05:30
Nabin Hait
c95153f83b Offer date mandatory in job offer 2018-08-20 16:58:06 +05:30
Faris Ansari
8de6380648 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-20 15:58:58 +05:30
Prateeksha Singh
71b41b4771 [hub] response data in hub call event trigger 2018-08-20 15:42:48 +05:30
Prateeksha Singh
e72a2fa9de [hub] emit hub call event to set category options while publishing 2018-08-20 14:18:07 +05:30
Prateeksha Singh
6faffa5007 [feat] new component: ItemPublishDialog 2018-08-20 14:02:33 +05:30
Prateeksha Singh
4ce54b0011 [feat] new component: NotificationMessage 2018-08-20 13:07:23 +05:30
Zarrar
2b0ecbed2b python3 based fix for sorted (#15159) 2018-08-20 11:15:06 +05:30
Prateeksha Singh
42be665412 Merge branch 'hub-redesign' of https://github.com/frappe/erpnext into hub-redesign 2018-08-20 10:08:49 +05:30
Prateeksha Singh
96fdbd467d [hub][feat] stateful publishing area 2018-08-20 10:07:56 +05:30
Prateeksha Singh
fe67508d60 [hub][feat] Edit your Profile, recycle profile dialog 2018-08-20 01:18:41 +05:30
Prateeksha Singh
305f7375d1 [hub] Register in a dialog instead of Page
- in order to recycle it for Edit Profile
- Also, the register page had too much custom code
2018-08-20 00:25:26 +05:30
Prateeksha Singh
a525d12f69 [hub] sync multiple image urls
- using a simple multiselect currently
2018-08-19 22:31:33 +05:30
Prateeksha Singh
0a60d1cd96 [hub] Publishing Dialog, Sync category
- Hub Category selection
- Recycled
2018-08-19 19:39:00 +05:30
Faris Ansari
2ce2e1b6b0 feat(messages): split messages into buying and selling
- messages will be organized by their purpose, i.e Buying and Selling
- on clicking the buying item, the message room page will be opened
where sellers can communicate
- invalidate cache using event key
2018-08-17 18:39:36 +05:30
Faris Ansari
335c0f200f feat: custom cache invalidation for hub calls
In some cases, we know when to invalidate the cache.
This feature allows to do just that.
erpnext.hub namespace is now an EventEmitter instance.
2018-08-17 16:04:14 +05:30
Faris Ansari
c1fe1c45c7 feat: empty states for favourites and search page 2018-08-17 14:29:42 +05:30
Faris Ansari
aa46567439 refactor: rename hub-card-container to hub-items-container 2018-08-17 14:29:22 +05:30
Rushabh Mehta
5f33b69f2f fixes(minor): clean item group html and hide image 2018-08-16 14:48:02 +05:30
Nabin Hait
9409eddf28 Update __init__.py 2018-08-16 13:58:44 +05:30
Charles-Henri Decultot
bd06a5b0ee Small python 3 compatibility correction (#15151) 2018-08-16 10:32:49 +05:30
Rushabh Mehta
8705371ef0 fix(product-listing): fix variant selection in website 2018-08-16 09:22:45 +05:30
rohitwaghchaure
7e36aa4162 Merge pull request #15150 from rohitwaghchaure/fix_consolidated_balance_sheet_report
[Fix] Consolidated balance sheet report
2018-08-15 19:41:41 +05:30
Rohit Waghchaure
cafd61de85 [Fix] Consolidated balance sheet report 2018-08-15 16:18:46 +05:30
Zarrar
3523b779aa rounding off fixes and conversion fix (#15140) 2018-08-14 16:28:14 +05:30
Ameya Shenoy
338dfcfb63 monkey patching for demo (#15141) 2018-08-14 16:27:47 +05:30
Saurabh
acd47de3ca Change page link 2018-08-14 15:04:17 +05:30
Prateeksha Singh
460e2798cd [hub] Favourites UI
- remove from listing
- add to favourites
2018-08-14 11:42:40 +05:30
Faris Ansari
4809f86035 fix(report): field -> fieldname, dateutil -> frappe.datetime (#15106) 2018-08-14 10:56:18 +05:30
Prateeksha Singh
1a0fb5b63a Add detail page favourited state 2018-08-14 01:31:03 +05:30
Prateeksha Singh
c5a9972785 [refactor][major] Separate out Components
- item_card
- item_card_container
- detail_view
- search_bar
- reviews
- skeleton_state
- empty_state
- empty_state
2018-08-13 21:36:07 +05:30
Nabin Hait
3b5f18231a fix(item_defaults): Item name was overwriting by child name 2018-08-13 17:45:29 +05:30
Saurabh
ddbf3aaccb Merge branch 'master' into develop 2018-08-13 13:15:58 +05:30
Zarrar
a8d8f52ef8 Merge pull request #15127 from ahmedzaqout/patch-3
replace customer to department
2018-08-12 17:48:29 +05:30
Zarrar
a4d06fc881 replace cur_frm with frm 2018-08-12 17:48:04 +05:30
ahmad zaqout
7df03a4b5b replace department group to department 2018-08-11 22:10:24 +03:00
ahmad zaqout
0fd562e0d9 replace customer to department 2018-08-11 21:54:56 +03:00
Nabin Hait
c35271aef5 fix(various) 2018-08-10 19:01:13 +05:30
Saurabh
20fb443f0c [Resolved] merge conflicts 2018-08-10 17:11:30 +05:30
Prateeksha Singh
b777f3dbfd [layout][iterate] item detail page actions 2018-08-10 10:38:28 +05:30
Nabin Hait
8bf52fef42 minor fixes 2018-08-09 19:45:33 +05:30
Nabin Hait
c13960ddc9 minor fix 2018-08-09 18:25:03 +05:30
Nabin Hait
e07bf15de2 minor fix 2018-08-09 17:38:04 +05:30
Nabin Hait
2a774fa0ac minor fix 2018-08-09 11:50:34 +05:30
Nabin Hait
6a5695fe17 minor fix 2018-08-09 11:30:21 +05:30
Nabin Hait
9a33bc6417 optimizing transactions by caching 2018-08-09 10:47:09 +05:30
Nabin Hait
50238c3049 [optimize] tree conditions for pricing rule 2018-08-08 18:43:04 +05:30
Himanshu Mishra
859d942b22 Cached calls (#15109)
* [optimize]: bin updates

* [optimise]: use frappe.get_cached_value instead of get_value for item

* [fix]: change db.get_cached_value to get_cached_value
2018-08-08 18:33:50 +05:30
Himanshu Mishra
f56aac65e1 [optimize]: bin updates (#15108) 2018-08-08 18:32:03 +05:30
Rushabh Mehta
708e47aadf optimize(various) 2018-08-08 16:37:31 +05:30
Rushabh Mehta
4d0b8da0e5 fix(style): modal for website 2018-08-08 14:48:02 +05:30
Nabin Hait
84c7c77009 [optimize] Get defaults from item group based on doc 2018-08-08 14:30:44 +05:30
Nabin Hait
3f142b874a item defaults based on caching 2018-08-08 13:02:59 +05:30
ahmad zaqout
63a741e5c8 fix throw_overlap_error in Shift Assignment (#15103)
fix throw_overlap_error in Shift Assignment
2018-08-08 10:36:40 +05:30
Solufyin
3be899caff Item Alternate Image Features in e-commerce site. (#15044)
* [ADD] Added Item Alternate Image Features in e-commerce site.

* [IMP] Improved Code for Item Alternate Image Feature.

* [IMP] Improved code for Item alternative image functionality.

* Remove .css file and make a build for erpnext-web.css

* Cleanup styling for item alternate image, also add delegated handler

* Spaces -> Tabs

* Spaces -> Tabs in item.html
2018-08-07 18:28:39 +05:30
rohitwaghchaure
8f0acf30bf Merge pull request #15101 from rohitwaghchaure/ascii_issue_in_balance_sheet
[Fix] 'ascii' codec can't encode error in balance sheet report
2018-08-07 16:53:21 +05:30
Rohit Waghchaure
9a9974f5c3 [Fix] 'ascii' codec can't encode error in balance sheet report 2018-08-07 16:51:56 +05:30
Ameya Shenoy
c63e0f9902 Merge pull request #15100 from codingCoffee/splitissue2
[fix] Split issue
2018-08-07 16:43:35 +05:30
Ameya Shenoy
f2e73dd687 [fix] Split issue
take reference name from communication
2018-08-07 16:34:37 +05:30
Meritsystems
1ad8eca4e8 Point of sale will list only items that are in stock based on option "Display Items in stock" in POS Profle. (#14895)
* Update point_of_sale.py

* Update point_of_sale.py

Add custom field(Display Items In Stock) to POS Profile Doctype of type Check.

* New field " Display Items in Stock" added

* Update point_of_sale.py

* Update point_of_sale.py

ORM used instead of SQL
used Bin to find actual quantity balances.

* Update point_of_sale.py

* Update point_of_sale.py

* Update point_of_sale.py

* Update point_of_sale.py

* Update point_of_sale.py
2018-08-07 14:38:50 +05:30
Saurabh
824b388631 Resolved merge conflicts 2018-08-07 13:01:11 +05:30
Prateeksha Singh
28d52dfe0c [hub][fix] Category page api call 2018-08-07 12:56:56 +05:30
Prateeksha Singh
318cca8cae [hub] Add 'See All' for Category items
- Also remove special `cursor: pointer` style
- Set it for all elements having a data-route
2018-08-07 12:41:21 +05:30
Prateeksha Singh
82b9508622 Add Products by Seller 2018-08-07 12:02:14 +05:30
Faris Ansari
796ca56f85 Use frappe.utils.md_to_html instead of manual import (#15087) 2018-08-07 11:53:36 +05:30
Prateeksha Singh
658d1bbae2 Fix product header styles 2018-08-06 19:13:10 +05:30
Prateeksha Singh
d3da401ef4 Home: Category-wise Items 2018-08-06 18:31:26 +05:30
Prateeksha Singh
b614ece991 [hub] Move sync, correct legacy code 2018-08-06 17:48:45 +05:30
Zarrar
2cadb1e12e add tax withholding & loyalty program in explore view (#15074) 2018-08-06 14:46:16 +05:30
Doridel Cahanap
59e4c32e9f Allow Disabling Batch and edit Validations (#15076) 2018-08-06 14:45:18 +05:30
Charles-Henri Decultot
614959d5f8 Correction of the get_price method for pricing rules (#15082)
* Addition of currency arg in get_price

* Change Price to Rate
2018-08-06 14:42:04 +05:30
Jignesh Greycube
ef961746c1 Spelling updated from Maxiumm to Maximum (#15093)
Spelling updated from Maxiumm to Maximum
2018-08-06 14:32:46 +05:30
Jignesh Greycube
56027e3799 Spelling updated from Maxiumm to Maximum (#15092)
Spelling updated from Maxiumm to Maximum
2018-08-06 14:32:31 +05:30
Jignesh Greycube
cb66f6904f Spelling updated from Maxiumm to Maximum (#15091) 2018-08-06 14:32:19 +05:30
Jignesh Greycube
b2d16aca74 Updated Spelling Maxiumm to Maximum (#15090) 2018-08-06 14:32:05 +05:30
KanchanChauhan
7fb8540b70 Get item defaults from item group (#15089) 2018-08-06 14:29:14 +05:30
Prateeksha Singh
a5f6e54b70 fix merge conflict 2018-08-06 13:56:53 +05:30
Prateeksha Singh
733433c91e Merge pull request #15094 from frappe/search-injection-fix
prevent jinja exec in search title
2018-08-06 13:05:29 +05:30
Prateeksha Singh
0c796229dc prevent jinja exec in search title 2018-08-06 12:33:34 +05:30
Daniel Chalmers
5037e0d1ed link to license.txt (#15085) 2018-08-06 11:19:45 +05:30
Ranjith Kurungadam
752fd5a7a0 Tests SO for Serial No based delivery (#15072)
* fix remove SO from Serial No only when voucher SE

* SO tests - delivery by Serial No
2018-08-03 10:39:51 +05:30
Prateeksha Singh
106856b1ab Show View count on items 2018-08-02 02:07:04 +05:30
Prateeksha Singh
32a2148651 [hub] Company (Seller) page 2018-08-02 01:42:23 +05:30
Faris Ansari
eeedc3bb47 Merge branch 'hub-redesign' of https://github.com/netchampfaris/erpnext into hub-redesign 2018-08-01 19:19:58 +05:30
Faris Ansari
2a81b4acd6 Messages: first cut 2018-08-01 19:19:53 +05:30
KanchanChauhan
e1f0be6da5 Delivery Date Change based on Delivery Date change in child table (#15068) 2018-08-01 18:11:58 +05:30
Nabin Hait
041a5c2d3b Get Advances and auto allocate (#14970) 2018-08-01 18:07:39 +05:30
Ranjith Kurungadam
d54991d624 Delivery by Serial No (#15030)
* fields added for delivery by Serial No

* SO - validate item for delivery by Serial No

* Stock Entry - add Serial No on production, validate reserved consumption

* add item by reservation to transaction if delivery by Serial No

* SLE - validate reserved Serial No by SO in Delivery Note, Sale Invoice

* Sales Order - validate Ensure Delivery by Serial No

* Serial No -  remove SO ref on cancel
2018-08-01 17:47:07 +05:30
Zarrar
7f8024c516 [Enhancement] Tax Withholding Category (#15064)
* add single, cumulative threshold, remove checkboxes

* remove tds child table from supplier & add tds link field

* add description field in tax withholding category

* add tax withholding data for indian setup, some fixes

* add a checkbox for tax withholding in purchase invoice

* remove supplier's child table for tds

* enable tds field if supplier has tds set inits master

* move rates data to child table - adding fiscal year support

* change bootstrap data according to child table config of tds

* show category name in list view

* loyalty program fixes

* moved tax calculation to tax_withholding.py
- calculation for tds amount for cumulative threshold from gl entry

* add fiscal year dependency in company test

* minor loyalty program fix

* minor tier calculation fix

* minor handling duplicate exception

* toggle apply_tds according to supplier, code rectify

* minor fixes for loyalty program

* test case for single and cumulative threshold

* codacy fix
2018-08-01 17:45:05 +05:30
Nabin Hait
e45ec661ea Additional fields in Item Price (#14540)
* [IMPROVEMENT] Item Price New Fields and Features

* [IMPROVEMENT] Item Price

 - Item Price insert against Qty, Supplier/Customer, Validup/Validfrom
 - Stock Setting to accept Default Price List for Purchase or Sales Item
 - Move Item Section in Item Price

* Fetch default Item Price based on Customer as null

* test fixes

* Code cleanup and fixed the issue of incorrect item price fetched against the customer

* Removed min qty from packing_increment calculation

* Removed auto_update_price_list_rate from the stock settings

* Revert sales_order.json changes

* Removed sales, purchase price list from stock settings because this fields are already available in selling, buying settings

* Removed unnecessory file

* Fixed item price validation code
2018-08-01 17:44:34 +05:30
Prateeksha Singh
3aed5c219f [hub] make get_items generic, add legacy.py 2018-08-01 17:32:13 +05:30
Prateeksha Singh
4d4791ab39 [chore] remove imports 2018-08-01 16:42:09 +05:30
Prateeksha Singh
b4e9ec33cb Merge branch 'hub-redesign' of https://github.com/netchampfaris/erpnext into hub-redesign 2018-08-01 16:39:10 +05:30
Prateeksha Singh
6495d532a6 [restructure] make api.py 2018-08-01 16:38:39 +05:30
Faris Ansari
5249307f27 Prevent access of registered routes 2018-08-01 16:29:40 +05:30
Faris Ansari
2de046fbed Add generic action handler to subpage 2018-08-01 15:57:28 +05:30
Faris Ansari
de85f24383 Rename base_page to subpage 2018-08-01 15:57:13 +05:30
Faris Ansari
fbe9a46d51 Add Marketplace link to user dropdown in toolbar 2018-08-01 15:56:39 +05:30
Nabin Hait
7d9a1db97a Update buying_settings.json 2018-08-01 15:26:40 +05:30
Faris Ansari
709a4a3f4e Break marketplace.js into multiple files 2018-08-01 14:09:07 +05:30
Faris Ansari
c0a22a689e Item Menu dropdown 2018-08-01 13:35:32 +05:30
Faris Ansari
a12076e0fd Convert image to base64 before sending Item to sync 2018-07-31 23:06:00 +05:30
Faris Ansari
057839298c fix get_category call 2018-07-31 19:06:11 +05:30
Nabin Hait
06029194cb Patch fixes 2018-07-31 18:16:11 +05:30
Faris Ansari
300c07c3d9 Use hub.call for categories and favourites 2018-07-31 18:02:13 +05:30
Faris Ansari
1ff25279bf Remove old hub styles 2018-07-31 17:59:03 +05:30
Faris Ansari
c1438c6169 refactor(hub connection): read only connection
- Seller activity in Activity Log
- Move hub_url to site_config
2018-07-31 17:51:45 +05:30
Nabin Hait
14ad9f70b5 Patch fixes 2018-07-31 17:33:14 +05:30
amrabdelkader7
ef52e8ab64 Staging fixes (#15051)
* Update hooks.py

* modified date for reload_doc (#15027)
2018-07-31 15:13:37 +05:30
Nabin Hait
65bb91d1c7 Merge branch 'develop' into staging-fixes 2018-07-31 15:13:30 +05:30
Faris Ansari
b1d6f94cdf Merge branch 'hub-redesign' into hub-redesign-contact-seller 2018-07-31 14:54:58 +05:30
Fisher Yu
13aec3aecb Simplified Chinese Translation Update (#14992)
* delete the old version to be replaced by a new one

* New version of the translated simplified Chinese
2018-07-31 13:29:35 +05:30
Nabin Hait
eed3d4c1b3 Fixed Merge Conflict 2018-07-31 12:36:16 +05:30
Faris Ansari
2ae80fd000 wip 2018-07-31 12:02:20 +05:30
Prateeksha Singh
425356c21c [hub] remove test code 2018-07-31 10:45:53 +05:30
Nabin Hait
d53c2c031d more payroll improvements and tests fixes 2018-07-30 20:17:15 +05:30
rohitwaghchaure
1fa5698798 [minor] Freeze the screen to avoid multiple time clicks (#15047) 2018-07-30 19:11:43 +05:30
Nabin Hait
d305a7a959 Made leave application importable 2018-07-30 17:12:32 +05:30
Nabin Hait
4f135c9805 Payroll entry ux improvements and processing via background jobs 2018-07-30 16:37:07 +05:30
Nabin Hait
04d5412754 Fixed conflict 2018-07-30 16:37:07 +05:30
Prateeksha Singh
46df72d55d [hub] test progress trigger 2018-07-30 13:24:01 +05:30
Shreya Shah
b2e0f649d2 Merge pull request #15043 from shreyashah115/fix-typo
Fix typo in label
2018-07-30 12:27:19 +05:30
Shreya
21ce5e0609 Fix typo in label 2018-07-30 12:07:46 +05:30
Nabin Hait
9c735e43b0 Grant leaves via modal and backgroud jobs (#15026) 2018-07-30 10:58:49 +05:30
Ameya Shenoy
b8a59547f0 modified date for reload_doc (#15027) 2018-07-30 10:58:19 +05:30
Zarrar
89c87fd6a6 [Minor] Patch fix (#15041)
* update modified date

* remove extra parameter from function call
2018-07-30 10:57:47 +05:30
Zarrar
6004b66797 [Minor] Job Offer UX improvise (#15042)
* job offer ux improv

* Update job_offer.js
2018-07-30 10:57:13 +05:30
Nabin Hait
cce7c5c245 Fixed salary structure employee patches 2018-07-30 10:52:51 +05:30
Prateeksha Singh
efbd2ee3f5 [hub] Realtime Sync Progress
- Show progress from the migration plan
- Show products being synced
- Disallow publishing in sync state
2018-07-30 09:17:14 +05:30
Prateeksha Singh
811cc3f78f [hub] resolve merge conflicts 2018-07-29 18:05:07 +05:30
Prateeksha Singh
d27b27f88a Hub Seller Profile and Timeline
- profile details fetched from server
- timeline updates on publishing items
2018-07-29 16:52:16 +05:30
Prateeksha Singh
6f05ea124e [hub] Track Hub Sync on the Server
- Create a Hub Seller activity on start of Hub Sync
- Store its name as remote_id in the Run
- Update that activity remotely once the Run here is complete, status
2018-07-29 14:40:52 +05:30
Faris Ansari
296848cb69 Publish Page
- Code cleanup
- Separate local item card and hub item card
- Use make_search_bar
2018-07-28 16:14:22 +05:30
Faris Ansari
abcc8ab8e5 Push review area to bottom 2018-07-28 13:57:16 +05:30
Prateeksha Singh
d0a1a4fe90 [hub] differentiate self-published items 2018-07-28 13:16:09 +05:30
Prateeksha Singh
f6f429fb10 [hub] Item page skeleton 2018-07-28 12:25:14 +05:30
Prateeksha Singh
dd8045759f [hub] Published Products Page 2018-07-28 01:54:51 +05:30
Prateeksha Singh
83d60ffa1d [hub] update hub item mapping 2018-07-28 00:07:25 +05:30
Prateeksha Singh
6e7fb71f1f [hub][patch] reset publish_in_hub for all items 2018-07-27 22:02:47 +05:30
Faris Ansari
19d40cafba Merge branch 'hub-redesign' of https://github.com/netchampfaris/erpnext into hub-redesign 2018-07-27 21:51:31 +05:30
Faris Ansari
b7a63ab81e Homepage
- show random items from each hub seller
- show items from country
- move add_review method on hub
2018-07-27 21:51:26 +05:30
Prateeksha Singh
f4fbf5215b [hub][search] empty search and route fallback 2018-07-27 21:07:56 +05:30
Faris Ansari
44f7d2e62b SearchPage 2018-07-27 15:33:00 +05:30
Shreya Shah
749094dd52 Translatable UOMs (#15024) 2018-07-27 12:54:34 +05:30
Nabin Hait
fa06ee80e9 Fixed merge conflict 2018-07-27 12:54:00 +05:30
mist-01
9821d51e31 Updated appointment availability to consider appointment duration in healthcare domain (#15011)
* Updated appointment availability to consider appointment duration in healthcare domain.
Fix bug - must clone moment before adding time to avoid updating original moment

* Add spaces after comments
2018-07-27 11:02:03 +05:30
Shreya Shah
f71d18a35a Increase margin (#15016) 2018-07-27 10:57:32 +05:30
Zarrar
4282729c72 delete version log while deleting company transaction (#15021) 2018-07-27 10:32:17 +05:30
Faris Ansari
24d5f17255 NotFound page for marketplace 2018-07-26 19:22:58 +05:30
Faris Ansari
9d1b7d493a [patch] Delete old hub page 2018-07-26 18:54:58 +05:30
Faris Ansari
b5ce1976b8 Move marketplace code back to marketplace.js 2018-07-26 18:46:38 +05:30
Faris Ansari
521fe4d01d Merge branch 'hub-redesign' of https://github.com/netchampfaris/erpnext into hub-redesign 2018-07-26 18:39:34 +05:30
Faris Ansari
cae856cbda Add marketplace back to hub_listing 2018-07-26 18:39:28 +05:30
Faris Ansari
f4884f8108 Marketplace
- Cache hub calls
- call_hub_method using FrappeClient connection
- Become a seller UX fixes
2018-07-26 18:37:01 +05:30
Faris Ansari
2ca5afa214 Move marketplace ui to marketplace.js 2018-07-26 18:35:04 +05:30
Prateeksha Singh
d885248309 [hub] remove sync_in _progress set 2018-07-26 18:21:33 +05:30
Prateeksha Singh
bcd7077342 [hub] remove sync_in_progress set 2018-07-26 18:20:58 +05:30
Prateeksha Singh
d450c0ac08 [hub][publish] in_progress/empty state 2018-07-26 17:24:33 +05:30
Prateeksha Singh
b750425288 [hub] sync in progress 2018-07-26 16:25:22 +05:30
Ranjith Kurungadam
e555b5bcf2 Salary Slip tests for tax calc on benefits, additional salary (#14985)
* tests for tax calc on benefits, additional salary

* fix tests - remove created additional salary
2018-07-26 14:39:59 +05:30
Prateeksha Singh
d1224ca662 [hub][init] add profile page 2018-07-26 13:39:06 +05:30
Nabin Hait
8173d9f17a Update additional_salary.json 2018-07-26 12:20:05 +05:30
Saurabh
f86224e6f7 Merge pull request #14945 from chdecultot/gocardless_corrections
Gocardless improvement and  payment request correction
2018-07-26 11:41:43 +05:30
Faris Ansari
195436093d Merge pull request #15004 from netchampfaris/hub-factory-syntax
Fix Syntax Error in hub_factory.js
2018-07-26 10:57:02 +05:30
Prateeksha Singh
f26177bdbc [hub] setup publish items flow 2018-07-26 10:38:11 +05:30
Prateeksha Singh
1d1696080e [hub][publish] add search, fix multiple append 2018-07-26 08:36:33 +05:30
Prateeksha Singh
505f6f14e9 [hub][publish] select/deselect all items 2018-07-26 08:06:21 +05:30
Prateeksha Singh
9685d7c37a [hub] registered vs read-only views 2018-07-26 01:12:00 +05:30
Prateeksha Singh
cf2d2a5c75 [hub][init] add publish items page 2018-07-25 20:02:12 +05:30
Nabin Hait
22fa99d040 Payroll Fixes 2018-07-25 18:21:39 +05:30
Faris Ansari
6b07898ef0 semicolon 2018-07-25 17:07:26 +05:30
Faris Ansari
ed1190126e Fix Syntax Error in hub_factory.js 2018-07-25 16:51:01 +05:30
Prateeksha Singh
bc8caefc19 [hub] add register as a seller page 2018-07-25 11:08:23 +05:30
Faris Ansari
0fbaa72504 Add review area 2018-07-25 00:49:11 +05:30
Zarrar
739542133c Merge pull request #14995 from Zlash65/min-fix
[Minor] Hub Factory class extend fix
2018-07-24 14:53:15 +05:30
Zlash65
617532b2cb Factory: class.extend -> es6 class 2018-07-24 14:20:10 +05:30
Nabin Hait
90bb5f43d5 Added more status in task web form 2018-07-24 11:33:05 +05:30
Ranjith Kurungadam
e51c175aca Fix tests (#14991)
* minor improv in fetching account

* pass name field while creating tds doc

* create tds fixture after creating tds account

* Inpatient Record - Test - Fix

* fix batch query
2018-07-24 11:07:28 +05:30
Faris Ansari
ea2d1b0a19 New page: marketplace
- subpages: home, favourites, item, category
2018-07-23 18:44:46 +05:30
Nabin Hait
4037915b3c Update setup.py 2018-07-23 18:05:55 +05:30
Nabin Hait
797497d22e Fixed web form perm for tasks 2018-07-23 17:58:40 +05:30
Prateeksha Singh
ebb5662cb7 [revert] modules dropdown 2018-07-23 17:04:34 +05:30
Ameya Shenoy
218f2f841e Merge pull request #14920 from codingCoffee/split_issue
Split a given Issue into 2
2018-07-23 16:09:05 +05:30
Ameya Shenoy
769054e00d Split a given Issue into 2
Bugs encountered:
Once the dialog pops up, filling in the subject and pressing RETURN
doesn't work. It fails to read the subject. The primary button needs to
be clicked on. This is a generic issue, not related to this PR

Behaviour:
-[x] Add button on communication to split thread
-[x] Popup asks for new subject
-[x] Copy "Customer", "Sender" and other relevant fields to this issue
-[x] Move thread and replies to new issue

fixes #14600
2018-07-23 10:31:38 +00:00
Nabin Hait
0c0c345678 Added index on SLE based on batch_no, item and warehouse 2018-07-23 14:38:50 +05:30
yimesgen
20a80fee45 Update batch.py (#14905)
* Update batch.py

Performance improvements for pos stock availability checks on a particular warehouse due to the slowing down effects of the where clauses combined by the "and".

* Update batch.py
2018-07-23 14:36:50 +05:30
Charles-Henri Decultot
6321a6b908 use standard dict method 2018-07-23 08:56:38 +00:00
Alchez
56bd5d8aaa Fix finance book getter error when book doesn't exist (#14987) 2018-07-23 14:16:35 +05:30
Nabin Hait
851ac754f7 minor fixes 2018-07-23 13:09:02 +05:30
Jamsheer
425fb4c5f4 [Feature][Enhance] Healthcare Inpatient (#14940)
* New DocTypes - Inpatient Record and Healthcare Service Unit Type

* Patient Appointment - Button - Get Prescribed Procedure - hide after save

* Patient Encounter - Schedule Inpatient button

* Inpatient - Healthcare Fields and references

Conflicts:
	erpnext/healthcare/doctype/lab_test/lab_test.json
	erpnext/healthcare/doctype/patient_appointment/patient_appointment.json
	erpnext/healthcare/doctype/patient_encounter/patient_encounter.json
	erpnext/healthcare/doctype/vital_signs/vital_signs.json

* Healthcare Service Unit Type - Item Creation - UOM Fix

* Healthcare Service Unit - healthcare service unit type fix

* Inpatient Record - Admission Scheduled and Discharge Scheduled status

* Patient - rename field inpatient to inpatient_status

* Inpatient Record - rename field inpatient to status

* Refactor - Inpateint Occupancy

* Remove unused imports

* Healthcare service unit - patch - fix

* Healthcare IP - Codacy Fix

* Inpatient Record - Encounter and Practitioner References

* Patch - add healthcare service unit tree - enhance

* Healthcare Setup - Remove - Lab Test and Item creation

* Discharge note in Inpatient Record

* Codacy fix

* Inpatient Record - Update transfer service unit filter

* Inpatient Record - Test
2018-07-23 13:05:35 +05:30
Saurabh
a638400e5d Merge pull request #14707 from chdecultot/stripe_improvements_4
Stripe Subscriptions
2018-07-23 12:11:58 +05:30
Faris Ansari
f585197045 Cleanup homepage 2018-07-23 11:55:07 +05:30
darthguru
f2d4e33eb5 Fixed IGST ISSUE (#14975)
* Fixed IGST ISSUE

the flag was not getting reset causing only the first IGST value to be shown and the rest went into SGST and CGST this fixes it

* Update gstr_2.py
2018-07-23 11:52:26 +05:30
Ranjith Kurungadam
1e90dafef8 fixes Benefit Application, Additional Salary (#14971)
* fix - add Additional Salary if multiple in one slip

* fix - Benefit Appication, None comparison
2018-07-23 11:32:58 +05:30
Ranjith Kurungadam
68abe25371 fix - assigned Salary Structure query (#14965) 2018-07-23 11:31:46 +05:30
Shreya Shah
83dfc0a2b1 Add Priority field in issue webform and portal (#14967) 2018-07-23 11:14:00 +05:30
Faris Ansari
789ad180ea Merge pull request #14969 from netchampfaris/financial-statement-reports
Financial Reports fixes
2018-07-21 12:28:31 +05:30
Faris Ansari
b23d15fba9 Fix typo 2018-07-20 18:16:31 +05:30
Faris Ansari
5e096df5ae columnDef => column 2018-07-20 16:35:51 +05:30
Faris Ansari
e7f864a4dd Return early if filters not initialized 2018-07-20 16:31:01 +05:30
Prateeksha Singh
abca510f9a Update conf.js 2018-07-20 16:07:50 +05:30
Faris Ansari
5986d59b01 Financial Reports
- Update formatter for use with DataTable
- Fetch Currency from  filters and fallback to company currency
2018-07-20 15:11:55 +05:30
Charles-Henri Decultot
39418b1532 CSS correction due to latest version of develop 2018-07-20 09:37:22 +00:00
Rushabh Mehta
ce6e27a066 [minor] frappe 2018-07-19 17:47:04 +05:30
KanchanChauhan
0c3d345a9f [Minor] Moved mandatory Company field from More Information section to top (#14950) 2018-07-19 14:39:31 +05:30
Ranjith Kurungadam
dff2ba72d3 test TDS calculation (#14919)
* test TDS calculation

* fix failing test cases

* fix codacy
2018-07-19 14:34:05 +05:30
Saurabh
a8e24cba46 Merge patch and delete fields from subscription (#14941)
* Delete subscription records after migrating all records to auto-repeat

* delete old fields from subscription
2018-07-19 14:33:31 +05:30
Saurabh
139d165258 Merge pull request #14962 from saurabh6790/staging_version_1
Update staging version to support semantic versioning
2018-07-19 13:38:34 +05:30
Saurabh
dfdad651ea Update staging version to support symentic versioning 2018-07-19 13:36:32 +05:30
Saurabh
63f87441c8 Update hooks.py 2018-07-19 13:13:15 +05:30
Nabin Hait
9c5afc3620 website permission for support portal 2018-07-19 13:02:36 +05:30
Nabin Hait
47ce481394 Minor fix 2018-07-19 11:10:46 +05:30
Prateeksha Singh
627d0d58be [fiscal-year] use to_date property 2018-07-18 18:09:28 +05:30
Prateeksha Singh
8ecfaaa707 [fix] format fiscal year docname to proper date before using 🤦 (#14955) 2018-07-18 18:03:27 +05:30
Saurabh
d9d8dda5da Merge pull request #14954 from saurabh6790/conflict_fixes
[minor] remove conflicts
2018-07-18 17:21:54 +05:30
Saurabh
0bfbf8aa6f [minor] remove conflicts 2018-07-18 17:21:07 +05:30
Saurabh
d7897f1c53 Resolved merge conflicts 2018-07-18 17:08:16 +05:30
Shreya Shah
9baa3bef8b [Portal] Display issues raised by all users of a customer (#14947)
* Display issues raised by all users of a customer

* Fixed as per review
2018-07-18 12:25:38 +05:30
Faris Ansari
9e874af9ba Query report print (#14935)
* QueryReport

- Only print visible columns in report
- Use get_columns_for_print method instead of directly
accessing report.columns

* Query Report

- Replace frappe.query_report_filters_by_name with new API
2018-07-18 09:28:44 +05:30
Charles-Henri Decultot
9d09343e57 Gocardless improvement and payment request correction 2018-07-17 16:15:30 +00:00
Rushabh Mehta
69fa808def [minor] fixes + patch (#14937) 2018-07-17 18:22:51 +05:30
Shreya Shah
3c9839f832 Defaults in Item Group (#14874)
* Add Defaults table in Item Group

* Fetch defaults from Item group if not found in Item

* Add patch

* Remove default fields from Item Group

* Set query for defaults

* Fix Codacy

* Modify test records

* Modify budget.py and sales_order.py

* Remove join from query

* Else condition to avoid error if no defaults found

* refrain from making item test records before item_group

* default cost center fetch correction

* Remove tab item group from query
2018-07-17 18:01:44 +05:30
Saurabh
af479c8192 set valid delivery date (#14890)
* set valid delivery date

* calculate delivery date based on diffrence in transation date and delivery date of ref doc
2018-07-17 16:49:32 +05:30
Shreya Shah
663b435919 Update modified time to fix patch (#14931) 2018-07-17 16:47:18 +05:30
Saurabh
e78a877202 patch fixes (#14936) 2018-07-17 16:38:11 +05:30
Nabin Hait
1e693fe6c9 Replaced spaces with tabs 2018-07-17 16:08:39 +05:30
Nabin Hait
26786bd35d minor route fix for general ledger 2018-07-17 15:59:15 +05:30
Ameya Shenoy
8ba1310915 [fix] Location test (#14921) 2018-07-17 11:57:49 +05:30
Zarrar
fc0a5833a5 run set query if doctype exist (#14929) 2018-07-17 11:57:06 +05:30
Faris Ansari
107dbcdff8 Merge pull request #14917 from frappe/surajshetty3416-patch-1
Fix typo
2018-07-16 18:42:34 +05:30
Suraj Shetty
a6f984366a Fix typo 2018-07-16 18:39:01 +05:30
Zarrar
26c9b94cc6 [ Improv ] Loyalty Program more fixes and test case (#14888)
* remove console statements

* set account & cost center for redemption

* add test case for single/multi tier & is_return scenario

* reset tier when changing loyalty program

* make loyalty fields non copy type

* fix test case - delete si after every test to avoid interference
2018-07-16 18:11:53 +05:30
Suraj Shetty
6dfc165193 Add patch to skip user perm check for doctype (#14873)
* Add patch to skip user perm check for doctype

Skip user permission check for doctypes where
department link field was recently added

* Remove new doctype entries

* Skip doctypes if department field already exists (custom field)

* Add patch to set department value based on employee

* Update set_department_for_doctypes.py

* Update skip_user_permission_check_for_department.py
2018-07-16 18:10:16 +05:30
Jamsheer
f926911399 [Enhance][Fix] Healthcare - DocType and Fields renaming (#14861)
* Rename DT - Physician Schedule Time Slot to Healthcare Schedule Time Slot

* Role name change

* Rename DT - Physician Schedule to Practitioner Schedule

* Rename DT - Physician Service Unit Schedule

* Rename DT - Physician to Practitioner

* Lab Test Template - field disabled in standard filter

* Patient - customer creation fix

* Rename DT - Consultation - Encounter

* Patches.txt updated for rename doctypes and fields in Healthcare

* Patch - Rename doctypes and fields in Healthcare Domain

* Fix - Patch - rename_healthcare_doctype_and_fields

* Vital Signs - New Fields - Abdomen, Tongue and Reflexes

* Web Form - Patient - Personal Details

* Rename DocType Physician to Healthcare Practitioner

* Rename DocType Consultation to Patient Encounter

* Web Form - Personal Details - Fix

* Web Form - Personal Details - Codacy Fix

* Healthcare patch run for all domain

* Rename label Practitioner to Healthcare Practitioner

* Rename Encounter to Patient Encounter
2018-07-16 18:08:53 +05:30
Ranjith Kurungadam
14e94f824e fix - HRA India (#14911) 2018-07-16 16:12:46 +05:30
Shreya Shah
ffd2254944 Make item defaults non-collapsible (#14908) 2018-07-16 14:55:54 +05:30
Nabin Hait
656016b4e0 Reloaded location doctype in patch 2018-07-15 20:10:23 +05:30
rohitwaghchaure
526ab2ca30 [enhance] Allow transfer for manufacture in the BOM (#14891)
* [enhance] Allow transfer for maufacture in the BOM

* Added patch

* Fix codacy

* Fixed typo and added test cases
2018-07-15 20:04:41 +05:30
Zarrar
f579a2bd5d [Minor] Fix Crop Cycle test record (#14901)
* fix crop cycle test record

* load crop cycle doc if not yet loaded

* create test records for location

* land unit -> location , update in patch for tree index
2018-07-15 20:04:24 +05:30
Charles-Henri Decultot
3fa3104dcc Debug cleanup 2018-07-13 14:00:42 +00:00
Charles-Henri Decultot
c047bf88db Rebase following Subscription corrections 2018-07-13 13:25:53 +00:00
Charles-Henri Decultot
7722b81c8e Variable correction 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
a0b7236f66 Corrections following Saurabh's comments 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
90669a03b3 Test correction 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
da8b11fd12 Travis correction 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
8b3e841fbf Travis correction 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
cde1f08af6 Review corrections 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
5a2ee41af3 Test correction 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
19a47c3e0a Codacy corrections 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
bbed5d41ca Remove remaining images 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
63e1dd5993 Remove doc 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
244b638fe3 Dev cleanup 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
a8d766f5f7 Remove payment plan reference 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
0134e13631 Subscription integration 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
f7ca908ea9 Corrections to Subscriptions 2018-07-13 13:15:59 +00:00
Charles-Henri Decultot
ba6f6d976d Stripe integration corrections 2018-07-13 13:05:54 +00:00
Charles-Henri Decultot
a45ea63b5d Codacy correction 2018-07-13 13:05:54 +00:00
Charles-Henri Decultot
6c2ad66522 Codacy corrections 2018-07-13 13:05:54 +00:00
Charles-Henri Decultot
a27673ecfe Travis correction 2018-07-13 13:05:54 +00:00
Charles-Henri Decultot
79380c6a74 Travis correction 2018-07-13 13:05:54 +00:00
Charles-Henri Decultot
30da37fbb8 Move Stripe to ERPNext 2018-07-13 13:05:54 +00:00
Charles-Henri Decultot
e25d2ee66d Update Stripe Documentation 2018-07-13 13:05:54 +00:00
Charles-Henri Decultot
6a40164dad Payment Request modifications 2018-07-13 13:05:54 +00:00
Nabin Hait
03b597418a Patch order fixed 2018-07-13 17:45:27 +05:30
Saurabh
3d825e5689 Subscription test and fixes (#14875)
* Add dashboard on subscriber screen

* Add Subscription and Subscription Plan to Account Dashboard

* Fetch customer name while creating subscriber

* [fix] add section for Subscription Period

* minor fixes

* optimization
2018-07-13 17:41:36 +05:30
Nabin Hait
d2e42d3d86 Merge branch 'update_qty_rate' into develop 2018-07-13 17:02:40 +05:30
Nabin Hait
b2da082798 Fixed logic and tests 2018-07-13 17:02:08 +05:30
Doridel Cahanap
6f06cc27e6 Update Qty and Rate in PO and SO 2018-07-13 17:02:08 +05:30
Alchez
df1eae8981 Merge the Land Unit doctype with the Location doctype (#14613)
* Merge Land Unit with the Location doctype

* Fix patch

* [minor] modification to Location structure

- Create a group node "All Land Units" and place all the land units
under it
- Remove "Linked Analysis" from location
2018-07-13 12:50:04 +05:30
KanchanChauhan
09e680b4aa [Fix] Should not get approvers for disabled Departments (#14868) 2018-07-13 12:26:56 +05:30
Faris Ansari
b86e5cbc42 Update travis badge (#14869) 2018-07-13 12:25:45 +05:30
Ameya Shenoy
a559b0de5a Role modifications for Shareholder (#14872)
- Added roles: Accounts User, Accounts Manager, Sales Manager, Sales
User, Sales Master Manager to Shareholder, Share Type and Share
Transfer doctype
2018-07-13 11:34:19 +05:30
Saurabh
b6d5f1fea1 [fix] add staging version (#14871) 2018-07-13 11:33:31 +05:30
Prateeksha Singh
0c51d40ad0 Merge pull request #14889 from pratu16x7/support-portal
[fix][minor] search help alignment
2018-07-12 16:06:49 +05:30
Prateeksha Singh
4cc7957a2a [fix][minor] search help alignment 2018-07-12 16:05:57 +05:30
Zarrar
5899d98077 [ Major ] Loyalty Program Fixes (#14863)
* fix checking of customer_group & territory of customer in loyalty program

* fetch and set applicable loyalty program
- in customer.py if found 1 program, set it or show a message to set it manually
- in sales invoice, if found 1 program for selected customer with no program set, set it else open a dialog with applicable options

* removed disabled field, added from_date & to_date

* loyalty program section made collapsible, added redeem check in it

* setting loyalty program improvised, manual selection if multiple found

* get_query added, amount calculation updated

* args passed rectified for expiry_date

* get loyalty_points logic improv, redemption_details logic added

* improv based on from/to date and other rectification

* code rectified based on different scenarios
- is_return, cancel, make loyalty points entry improv
2018-07-11 14:35:43 +05:30
Zarrar
9a3b785a03 [Minor] Employee Separation Fix (#14867)
* delete associated task & project forcefully
in Employee Seapration cancel trigger

* remove leftover print statement

* remove console statements
2018-07-11 14:34:55 +05:30
Saurabh
e8345f9ae0 add key to trace beta version (#14859) 2018-07-10 19:05:38 +05:30
Alchez
9155e40bc7 [Fix] Set default CF in case none exist (#14829) 2018-07-09 16:57:42 +05:30
Frappe PR Bot
b48c769588 [Translation] Updated Translations (#14849) 2018-07-09 16:56:49 +05:30
Saurabh
db7324890f Merge branch 'master' into develop 2018-07-09 15:53:51 +05:30
Ranjith Kurungadam
ea089d67ce Employee Benefit Application - fix (#14837) 2018-07-09 14:01:18 +05:30
rohitwaghchaure
e4a53f961a [Fix] Unable to print Salary Register (#14844) 2018-07-09 09:28:56 +05:30
Shreya Shah
21d3352aa2 Merge pull request #14835 from shreyashah115/print-hide
Print hide loyalty program related fields
2018-07-06 18:36:47 +05:30
Zarrar
8111705f82 Merge pull request #14833 from Zlash65/min-ac-fix
[Minor] Change field name in Accounts utils
2018-07-06 18:24:55 +05:30
Shreya
9bcb959f81 Print hide loyalty program related fields 2018-07-06 18:17:02 +05:30
Shreya Shah
c8c17ff5cf Return if Item Defaults exist (#14834) 2018-07-06 18:07:28 +05:30
Zlash65
1aeca1d349 change name that fetches numbered value from acc & cc 2018-07-06 17:15:33 +05:30
Zarrar
17705f932d [ Minor ] Cost Center Number field added in field's dialog (#14781)
* cost center number field when creating new
added field in the tree's dialog, necessary changes in the autoname function

* rename function's name appropriately
2018-07-06 14:44:44 +05:30
Alchez
8f2a0f3d79 [Fix] Incorrect assignment of Serial No in POS Invoice (#14772)
* Fix incorrect assignment of serial no in Sales Invoice through POS

* Add conversion factor to quantity check
2018-07-06 14:36:52 +05:30
Ranjith Kurungadam
6429ba9ed9 Payroll Entry - fix query, get assignment by end date (#14827) 2018-07-06 13:30:40 +05:30
Saurabh
1cfcf70905 Resolved merge conflicts 2018-07-06 13:18:44 +05:30
Manas Solanki
da486eeebd Loyalty Program (#12631)
* First Cut for the Loyalty Program

* finished the collection part

* redmeption for the loyalty point

	update the loyalty point entry in the FIFO style
	make the accounting entry knocking the debtors account against the expense account selected in the loyalty program
	update the outstanding balance in the client side

* completed for the desk viewe

* wrap up for the desk and shopping cart

* pos

* fix and test the travis
2018-07-06 12:36:57 +05:30
Ranjith Kurungadam
5d134e0465 TDS Calculate tax for whole period on deduct checkboxes (#14824)
* Tax Exemption Proof Submission - fields submission_date, exemption_amount

* Salary Detail - field tax_on_flexible_benefit, tax_on_additional_salary

* Salary Slip - save tax for benefit, additional salary in Salary Detail, recalculate tax for whole period on deduct checkboxes
2018-07-06 11:57:32 +05:30
rohitwaghchaure
839320dca5 [Fix] Original Invoice outstanding is not updating after making Debit Note (#14821) 2018-07-06 10:42:15 +05:30
Andrew McLeod
686284261d Added check to get_parent_item_groups; if called without an item group, return a default parents list of 'Home' only. (#14811) 2018-07-06 10:41:37 +05:30
bobzz-zone
58236ffc1e Update budget_variance_report.py (#14798)
Make sure GL Entry only called once in each row
2018-07-06 10:39:00 +05:30
Rushabh Mehta
df23c7dc0c [cleanup] bunch of UX fixes (#14787)
* [cleanup] add dashboard to leave policy, employee form cleanup

* [test] first_name in employee

* [fix] tests

* [fix] tests

* [fix] tests

* [hr] add more dashboards

* [minor] fixes + ux
2018-07-05 15:19:28 +05:30
Rushabh Mehta
c1b430c8bd [enhance] added priority to issue (#14815) 2018-07-05 11:38:02 +05:30
Rushabh Mehta
2a5dc911e6 [github] remove issue template 2018-07-05 10:47:59 +05:30
Rushabh Mehta
b9b2bc9ace Update PULL_REQUEST_TEMPLATE.md 2018-07-05 10:45:48 +05:30
Zarrar
a3f6856d81 python 3 fix for sorted (#14814) 2018-07-05 10:37:39 +05:30
Nabin Hait
d4453aef68 Fixed permission issue 2018-07-04 16:38:10 +05:30
Shreya Shah
430810f64c Fix typo (#14802) 2018-07-04 10:17:36 +05:30
Aditya Hase
69711d2df2 Remove a redundant for loop that uses dict.iteritems() instead of six.iteritems(dict) (#14803)
This should also fix #13909 as a side effect.
2018-07-04 10:17:17 +05:30
Nabin Hait
24ee7e5eb1 Patch fix 2018-07-03 13:15:47 +05:30
Nabin Hait
9911309631 Patch fixes 2018-07-03 13:06:49 +05:30
Nabin Hait
f4660d2479 Ignore calculating tds if amount/formula is mentioned in salary structure 2018-07-03 13:06:49 +05:30
Zarrar
c1225a84cc fix css for coa dialog in setup wizard (#14793) 2018-07-03 10:35:31 +05:30
Britlog
4412f10918 Add missing fields in select, the same as in get_product_list_for_group (#14789) 2018-07-03 10:33:49 +05:30
Charles-Henri Decultot
6d97ab6f78 Make fields translatable (#14786) 2018-07-03 10:32:53 +05:30
Vishal Dhayagude
0e027a14a7 [minor] Link to Employee Separation template and Onbording template added in HR Module Page (#14748)
* [minor] Link to Employee Separation template and Onbording template added in HR Module Page

* [minor] Employee templated added in Employee Life Cycle Section
2018-07-03 10:20:02 +05:30
Shridhar Patil
4987c4ef53 on delete contact update issue (#14770)
* on delete contact update isuue

remove contact from issue if the deleted contact exists

* moved issue update function to issue.py

* Update formatting and comment
2018-07-03 10:10:04 +05:30
Suraj Shetty
27067b34e1 Rename (#14771)
- Daily Work Summary Settings to Daily Work Summary Group
in hr.py
2018-07-03 10:08:45 +05:30
Shreya Shah
93d60869ed Fix patch (#14769)
Income account instead of expense account
2018-07-03 10:07:32 +05:30
Ranjith Kurungadam
273e8e59ca fix Salary Component (#14783) 2018-07-03 10:05:01 +05:30
Pawan Mehta
e734b7c17b Add filters to show Draft salary slips in salary register (#14780)
* [fix] #14778

* replace if-elif block with inline block
2018-07-03 10:01:19 +05:30
Frappe PR Bot
1baa811a40 [Translation] Updated Translations (#14776) 2018-07-03 09:59:57 +05:30
rohitwaghchaure
afe764264d [Fix] Employee advance issues (#14750) 2018-07-01 16:48:00 +05:30
Charles-Henri Decultot
f02bef78f0 FEC report corrections (#14741)
* Report corrections to match government requirements

* Untranslatable headers

* Remove unused onchange logic
2018-07-01 16:46:48 +05:30
Zarrar
dfe897b888 [ Fix ] UOM Conversion fix (#14768)
* increase precision for conversion value

* inverse the conversion data

* update uom data

* rectify conversion logic according to inversion of values

* rectify test case for uom conversion

* patch improv to correct conversion data
2018-07-01 16:45:53 +05:30
Ranjith Kurungadam
4dc5721ba5 fix - Benefit Application query (#14767) 2018-07-01 16:44:37 +05:30
Mohammed R Abukhamseen
8662a4f677 POS - Translate some text & numpad (#14765)
* make label & placeholder translatable

* numpad translatable

* Update point_of_sale.js

remove debugger
2018-07-01 16:44:09 +05:30
Nabin Hait
e3daaa63f0 Payroll fixes (#14758)
* Ignore calculating tds if amount/formula is mentioned in salary structure

* [fix] Paid amount in Journal Entry from Payroll Entry

* fix codacy
2018-07-01 16:43:34 +05:30
Ranjith Kurungadam
b1a756cc9f HRA Indian regional - field basic in company, calc changes (#14757) 2018-07-01 16:42:38 +05:30
rohitwaghchaure
1501a6e58e [Fix] Data missing issue in stock ledger report (#14755) 2018-07-01 16:42:00 +05:30
rohitwaghchaure
01fe4a3726 [Fix] Consider the cancelled purchase receipt in backflush raw materials (#14753) 2018-07-01 16:41:39 +05:30
Manas Solanki
644f404c1b Merge pull request #14759 from ESS-LLP/fix_typo
fix typo
2018-06-29 23:50:39 +05:30
Ranjith
69b03a3b53 fix typo 2018-06-29 20:14:20 +05:30
rohitwaghchaure
c5183b7c2a Merge pull request #14756 from rohitwaghchaure/fix_patch_for_set_salary_component_properties
[Fix] Patch
2018-06-29 19:02:38 +05:30
Rohit Waghchaure
4178030c99 [Fix] Patch 2018-06-29 17:54:25 +05:30
Ranjith Kurungadam
fd7ef2e15c Salary Component - field display, value dependency (#14747) 2018-06-29 16:53:56 +05:30
Ranjith Kurungadam
b402ccc0b5 Payroll Entry - make only one JE, separate JE for Flexi (#14752) 2018-06-29 16:48:49 +05:30
Nabin Hait
b192a4af77 reload doc in patch 2018-06-29 15:30:41 +05:30
Nabin Hait
6e86fb2540 Set user permissions for new departments based on company 2018-06-29 14:36:45 +05:30
Nabin Hait
c114ceb67d Set salary component properties in existing components and salary structures 2018-06-29 14:36:45 +05:30
Manas Solanki
f184e35a4a Merge pull request #14746 from frappe/manassolanki-patch-1
Update bom_stock_calculated.py
2018-06-29 13:33:51 +05:30
Manas Solanki
ee32a78e9f Update bom_stock_calculated.py 2018-06-29 13:33:32 +05:30
Himanshu Mishra
7aabef2026 Add configurable frequency in Selling Settings for update of project … (#14670)
* Add configurable frequency in Selling Settings for update of project and company

* remove redundant code

* remove redundant code, only trigger calculation if order/invoice is present

* removed dangling commas as per common convention in hooks

* fix:handling multiple documents

* Update selling_settings.json
2018-06-28 23:43:23 +05:30
Nabin Hait
d0c6184e24 minor patch fixes 2018-06-28 23:42:55 +05:30
rohitwaghchaure
191876f51b [Fix] Bank Account mandatory (#14734) 2018-06-28 23:28:58 +05:30
Ranjith Kurungadam
a10f118ddd Payroll Entry - Validate Attendance (#14738) 2018-06-28 23:28:07 +05:30
Nabin Hait
7324815fdb map payment terms template from SO to SI 2018-06-28 23:12:02 +05:30
Charles-Henri Decultot
52fb43fc4f Add no copy to payment terms template (#14725) 2018-06-28 23:06:30 +05:30
Charles-Henri Decultot
97fa94e77d Journal and Entry number correction (#14720) 2018-06-28 23:05:58 +05:30
Cadmandata
d673afccf2 Updated comment in make_stock_entry() function (#14726)
Purpose flag is used in make_stock_entry(**args) function, but it was not included in the comment inside the function.
2018-06-28 23:05:32 +05:30
Ranjith Kurungadam
f6e654eccc Payroll Entry - fix deduct taxes (#14730) 2018-06-28 23:04:51 +05:30
rohitwaghchaure
cae945e743 Added validation and fixes UX for asset (#14727) 2018-06-28 23:04:25 +05:30
Ranjith Kurungadam
6ceed038e6 Fix benefits (#14735)
* Employee Benefit Application - fix typo

* Employee Benefits - fix field renamed
2018-06-28 23:02:58 +05:30
rohitwaghchaure
631cc30a8b Merge pull request #14736 from rohitwaghchaure/subcontracted_pr_issue
[Fix] Not able to save subcontracted purchase receipt
2018-06-28 18:38:32 +05:30
Rohit Waghchaure
ed71c36748 [Fix] Not able to save subcontracted purchase receipt 2018-06-28 18:36:35 +05:30
Ranjith Kurungadam
b66bde32f8 Payroll Entry - fix only one employee fetched (#14718) 2018-06-28 14:40:29 +05:30
Charles-Henri Decultot
8b22310d66 Allow auto repeat update (#14706)
* Allow auto repeat update

* Allow auto-repeat reference update
2018-06-28 14:27:58 +05:30
Zarrar
254ce645b1 [ Enhance ] Setup Wizard - Chart of Accounts (#14698)
* enable selection of coa for user
Give user option to select coa that's been verified along with standard and standard with numbers. Also added a button that opens a dialog and renders the selected chart

* read chart from file and make a tree render-able dict of it

* tree method to return node data for coa setup wizard
2018-06-28 14:15:34 +05:30
Pawan Mehta
c7897e491d [fix] #14714 (#14715) 2018-06-28 14:13:56 +05:30
KanchanChauhan
168e66b107 Blanket Order translation fix for DE (#14711) 2018-06-28 14:13:24 +05:30
rohitwaghchaure
e27b85de4f Added test cases for Overproduction against Work Order / Sales Order (#14704) 2018-06-28 12:48:28 +05:30
rohitwaghchaure
4c23be1821 Added test cases for subcontract (#14702) 2018-06-28 11:18:37 +05:30
Prateeksha Singh
4bd6547de8 Merge pull request #14710 from frappe/revert-14708-hub-fixes
Revert "[hub] add link in modules"
2018-06-28 09:59:56 +05:30
Prateeksha Singh
5d227c9028 Revert "[hub] add link in modules" 2018-06-28 09:59:46 +05:30
Prateeksha Singh
84d358bd0a Merge pull request #14708 from pratu16x7/hub-fixes
[hub] add link in modules
2018-06-28 03:23:03 +05:30
Prateeksha Singh
2e0b5140e7 [hub] add link in modules 2018-06-28 03:17:39 +05:30
Manas Solanki
4933e6bfeb Update test_finance_book.py (#14703) 2018-06-27 17:30:09 +05:30
Ranjith Kurungadam
23e235395e Salary Slip - remove check query limited to one (#14699) 2018-06-27 17:29:40 +05:30
Shreya Shah
f2f54e741b Merge pull request #14701 from shreyashah115/testing-1
[minor] Blanket order
2018-06-27 16:00:02 +05:30
Shreya
32b57da335 Make supplier_name and customer_name fields read only 2018-06-27 15:20:33 +05:30
Manas Solanki
1b52a94e8c Merge pull request #14700 from manassolanki/test_finance_book
[test] check the finance book via the journal entry
2018-06-27 15:16:58 +05:30
Shreya
18bed504dc Set target qty 0
If the ordered qty exceeds the quantity in blanket order items, on routing to a new Purchase order or Sales order, set target qty as 0 to avoid negative qty.
2018-06-27 15:14:43 +05:30
Manas Solanki
b912374b96 [test] check the finance book via the journal entry 2018-06-27 15:07:15 +05:30
Ranjith Kurungadam
53cdbe960e Salary Slip - fix query (#14693) 2018-06-27 11:15:39 +05:30
Jamsheer
86aed90a5c [Fix] - Get payroll period days (#14686)
* Fix - get_payroll_period_days

* Fix - get_payroll_period_days
2018-06-27 11:13:20 +05:30
Nabin Hait
e2a8120ef8 ignore user permissions for some fields 2018-06-26 15:27:34 +05:30
Manas Solanki
7707cee6b7 Merge pull request #14676 from KanchanChauhan/allow-only-submitted-bo
Allow only submitted Blanket Order in PO/SO
2018-06-26 11:46:23 +05:30
Manas Solanki
860e169081 Update sales_order.js 2018-06-26 11:45:04 +05:30
Manas Solanki
0ebd0f0d62 Update purchase_order.js 2018-06-26 11:44:29 +05:30
Kanchan Chauhan
bddebb52d6 Allow only submitted Blanket Order in PO/SO 2018-06-26 09:31:27 +05:30
Rushabh Mehta
096b943b0c [minor] fixes to moment.defaultDateFormat and daily work summary eplies 2018-06-25 22:38:20 +05:30
Frappe PR Bot
5c13cb3221 [Translation] Updated Translations (#14669) 2018-06-25 15:08:15 +05:30
mnaim-cloude8
56e4346ead To fixed if if no schedule and disposal is NOT within the period. (#14637)
* To fixed if if no schedule and disposal is NOT within the period, then opening accumulated depreciation not included.
If no schedule, and disposal is within period, accumulated dep is the amount eliminated.

* Update asset_depreciations_and_balances.py
2018-06-25 15:05:26 +05:30
Jamsheer
4f8deb92cc [Fix] - Leave Perid - Grant Allocations (#14668)
* Leave Perid - Grant Allocations - Fix

* Codacy - string statement has no effect
2018-06-25 14:49:54 +05:30
Prateeksha Singh
f845e749f2 Update stale-bot config 2018-06-25 11:06:32 +05:30
rohitwaghchaure
34c187706d [Enhance] Added Budget exception approver role in company (#14645)
* [Enhance] Added Budget exception approver role in company

* Added test cases for budget
2018-06-25 10:31:08 +05:30
Ranjith Kurungadam
b4ad3c3f77 Salary Structure Assignment - remove to_date (#14642)
* Salary Structure Assignment - remove to_date

* fix Salary Assignment - remove to_date

* Salary Slip - fix codacy remove sting based query, add end_date to condition
2018-06-25 10:29:54 +05:30
Jamsheer
8044d09d50 [Enhance] Refactor (#14647)
* Payroll Entry - Make Bank Entry button routes to Journal Entry list view

* Salary Component - additional component and flexi not comes in same component

* Salary Structure - refactor validation messages
2018-06-25 10:29:06 +05:30
rohitwaghchaure
3a595d07d0 [Fix] POS Closing Voucher, on save collected amount becomes zero issue and added test cases (#14649)
* [Fix] POS Closing Voucher, on save collected amount becomes zero

* Added test cases for the POS Closing Voucher
2018-06-25 10:10:29 +05:30
Jamsheer
648728f330 Fix - depends on lwp - employee benefit (#14644) 2018-06-22 17:28:29 +05:30
Jamsheer
b64161a389 Employee benefit - Last payroll period benefit (#14634)
* Employee benefit - Last payroll period benefit

* Method name refactor
2018-06-22 17:27:54 +05:30
Sushant Nadkar
00f0f0f5fc Added adational filters to Tax Rule doctype (#14639) 2018-06-22 15:57:19 +05:30
Shreya Shah
5b64e98c5b Fetch company on employee selection (#14633) 2018-06-22 15:41:57 +05:30
rohitwaghchaure
d3fb0fbb20 Added test cases for asset accounting, asset value adjustment (#14572)
* Added test cases for asset accounting, asset value adjustment

* Accounting entry for the asset created manually

* Added asset movement test cases and validation

* Added validation to make asset from purchase receupt, invoice only
2018-06-22 15:40:59 +05:30
Ranjith Kurungadam
ce26610d39 Fix tax calculation (#14635)
* Salary Detail - field is_additional_component

* TDS fix - exclude additional component from monthly salary, but add to annual income to calculate tax

* fix indentation
2018-06-22 15:39:49 +05:30
Ameya Shenoy
4e96f55eff Merge branch 'master' into develop 2018-06-22 05:10:29 +00:00
Prateeksha Singh
c92bbcb9fa Merge pull request #14629 from pratu16x7/css-fixes
[portal] fix item-preview column #13077
2018-06-21 22:47:41 +05:30
Prateeksha Singh
9a138f07f7 [portal] fix item-preview column #13077 2018-06-21 22:42:03 +05:30
Nabin Hait
3ebc15cc8f test fixes 2018-06-21 17:55:32 +05:30
Nabin Hait
e5b3a56cea Test case fixes 2018-06-21 15:21:17 +05:30
rohitwaghchaure
ae276bcaa1 Don't allow to sale asset item from POS (#14623) 2018-06-21 13:18:01 +05:30
Shreya Shah
c8a40f3ef0 [Tests] Employee Onboarding & Separation (#14606)
* Set query on department

* Add test for Employee Onboarding

* Add fetch for Employee Separation fields

* Add test for Employee Separation

* Fix Staffing Plan test case
2018-06-21 13:06:47 +05:30
Sachin Mane
19a5a5dcf4 improve performance of stock_value retrieval using tabBin instead of … (#14584)
* improve performance of stock_value retrieval using tabBin instead of stock ledger

* rename fn

* rename fn

* Update warehouse.py
2018-06-21 13:01:48 +05:30
rohitwaghchaure
79e5b07e62 [Fix] Subscription method (#14604)
* [Fix] Subscription method path

* [Fix] Condition
2018-06-21 12:58:14 +05:30
rohitwaghchaure
4d80c05125 [Fix] Deferred account must be liability account (#14612) 2018-06-21 11:55:49 +05:30
Shreya Shah
22bb61b58c Merge pull request #14608 from shreyashah115/fix-onboard
[Enhance] Employee Onboarding & Separation
2018-06-21 11:51:39 +05:30
Jamsheer
f76dbbae68 Compensatory Leave Request (#14611)
* Compensatory Leave Request - Validate Holidays and Attendance

* Compensatory Leave Request - Cancel

* Half Day in Compensatory Leave Request

* Leave allocation on Compensatory Leave Request - Fix

* Unused import
2018-06-21 11:38:38 +05:30
Nabin Hait
227489193b Test case fixes 2018-06-21 11:36:13 +05:30
umaepoch
0484547150 BOM Stock Calculation Report (#14561)
* BOM Stock Calculated

* BOM Stock Calculated

* BOM Stock Calculated

* BOM Stock Calculated

* BOM Stock Calculated

* Update bom_stock_calculated.json
2018-06-21 11:27:54 +05:30
Zarrar
e25dcd2737 [Minor] Report related fixes (#14620)
* fix in query incase list is empty

* periodicity not found error
when called from consolidated financial statements and custom cash flow is activated

* unset currency filter to apply default currency or so

* python 2 - 3 fix
2018-06-21 10:53:12 +05:30
Siddhi Sawant
51e4d641c8 Job Applicant Source (#14543)
* New doctype - Job Applicant Source

* Source and source name field in job applicant

* Updated install_fixtures with default options

* Update install_fixtures.py

* Fixes codacy
2018-06-21 10:47:54 +05:30
Prateeksha Singh
ab37c6912c Merge pull request #14621 from pratu16x7/probot
[probot-stale][config] Mark and close inactive PRs
2018-06-21 10:38:16 +05:30
Frappe PR Bot
748c0240db [Translation] Updated Translations (#14615) 2018-06-21 10:34:28 +05:30
Prateeksha Singh
f9284228f1 [probot-stale] add config 2018-06-21 10:28:44 +05:30
Charles-Henri Decultot
fc2292f08c Email alert renamed to Notification (#14618) 2018-06-21 09:17:52 +05:30
Nabin Hait
3946b77555 changed fieldname of inventory section break in Item 2018-06-20 22:33:34 +05:30
Shreya Shah
b125ba9ed8 Update status if tasks have been completed (#14601) 2018-06-20 17:52:21 +05:30
Manas Solanki
616a6d2bc2 Test leave management (#14587)
* test max allowed days in leave policy

* test the leave period

* test leave encashment
2018-06-20 17:47:45 +05:30
Suraj Shetty
be3ce16352 Daily work summary reply report (#14583)
* Add daily work summary reply report

* Show user name instead of email

* Remove print statement

* Change field datatype

* ReRun Travis
2018-06-20 17:46:03 +05:30
Nabin Hait
7aae0e66df minor fix 2018-06-20 17:45:39 +05:30
Bassam Ramadan
45725c2c7b add missing brand filter to stock balance report (#14597)
add missing brand filter to stock balance report
2018-06-20 17:41:29 +05:30
Shreya
3fd21d4273 Fix codacy 2018-06-20 16:09:16 +05:30
Shreya
5c6ade4bd8 Update and set status on the basis of project completion 2018-06-20 15:55:27 +05:30
Shreya
a5afd96019 Employee Onboarding and Separation lists 2018-06-20 15:55:14 +05:30
Saurabh
59798b4e88 resolved merge conflict 2018-06-20 15:23:25 +05:30
Ranjith Kurungadam
c1030a3958 fix - Employee Transfer, Promotion (#14603) 2018-06-20 12:42:58 +05:30
Jamsheer
a1bb94e59d Pro-rata component consistency for monthly Salary slip (#14595)
* Pro-rata component consistency for monthly Salary slip

* Resolve merge conflict
2018-06-20 12:41:32 +05:30
Ranjith Kurungadam
05d00397d0 Update tax calculation (#14564)
* Tax Slab remove to_amt mandatory, condition data type Code

* Salary Slip - consider condition in tax slab

* Payroll Period - help text for tax slab condition
2018-06-20 12:33:02 +05:30
Ranjith Kurungadam
4f9744a56d HRA fix (#14589)
* hra - fix var ref before assignment

* Tax Exemption Category - remove deduction component
2018-06-20 11:10:56 +05:30
Jamsheer
55a2f4da71 Employee Benefit (#14571)
* Rename - filed is_pro_rata_applicable to pay_against_benefit_claim

* Employee Benefit Application - Validate previous benefit claim

* Employee Benefit Claim - Code refactor

* Salary Slip - additional salary - fix
2018-06-20 11:04:21 +05:30
Jamsheer
c526cad183 [Fix] Additional Salary Component and tax calculation (#14581)
* Additional salary not include in tax calculation

* Additional salary get doubled in salary slip via Payroll Entry - Fix

* Salary Component - if is_additional_component hide flexi
2018-06-20 10:52:20 +05:30
Shreya Shah
222c550c29 Parse left out time (#14586) 2018-06-20 10:51:32 +05:30
Shreya Shah
0cb0c0b642 [Tests] Staffing Plan (#14585)
* Add test case for Staffing Plan

* Fix codacy
2018-06-20 10:50:54 +05:30
Ranjith Kurungadam
f972e7b259 Staffing Plan - remove department filter, query by dates (#14590) 2018-06-20 10:48:40 +05:30
rohitwaghchaure
fd5ac45775 [Fix] Not able to make invoice in the subscription (#14594) 2018-06-20 10:47:55 +05:30
Shreya Shah
b0575265fb Test case for Attendance Request (#14566)
* Add test case for Attendance Request

* Add a message if attendance not submitted

* Add test for cancelled document
2018-06-19 10:47:40 +05:30
Shreya Shah
97124e92fa [Fixes] Tax withholding category and Bank Guarantee (#14576)
* Fetch withheld percentage

* Set query for accounts on the basis of company

* Fix bank guarantee error on submit

* Remove errors caused by fields which are removed
2018-06-19 10:46:41 +05:30
Shreya Shah
cbff30f718 [Tests] Shift Planning (#14570)
* Cancel shift assignment on cancellation of shift request

* [minor] Fix shift type test

* Modify test for shift request

* Add test case for shift assignment

* Fix syntax

* Fix codacy
2018-06-19 10:45:33 +05:30
asbasawaraj
b0fafa9774 Additional fields in Certified Consultant DocType (#14573) 2018-06-19 10:43:55 +05:30
Shreya Shah
77de8dc102 Change Restaurant icon type to module (#14578) 2018-06-19 10:43:08 +05:30
Shreya Shah
5c3929c5ea Fix positioning of fields (#14562) 2018-06-18 15:49:59 +05:30
Shreya Shah
1ac5585151 Bug - Add batch while creating serial nos (#14559) 2018-06-18 15:44:10 +05:30
Ranjith Kurungadam
5f7c7bfc78 remove patch to add hra fields (#14552) 2018-06-18 15:43:45 +05:30
Ranjith Kurungadam
6cca03195f fix- Salary Structure filter (#14558) 2018-06-18 15:42:38 +05:30
Ranjith Kurungadam
28f49a5a8e fix - link validation error (#14547) 2018-06-18 10:40:23 +05:30
Zarrar
80ff296e97 data not filled in acc. receivable report for some field fix (#14546) 2018-06-17 11:21:10 +05:30
rohitwaghchaure
83a2612a18 [Fix] Consolidated Financial Statement report (#14537) 2018-06-15 18:03:50 +05:30
rohitwaghchaure
77a45b43aa Added expense account, cost center in the purchase order and material request item doctype and fix the code (#14535) 2018-06-15 18:03:31 +05:30
Shreya Shah
27eff99190 [minor] Fixes for Exchange rate revaluation doctype (#14533)
* Add set query for account and party_type

* Fix asset category error
2018-06-15 16:30:15 +05:30
Shreya Shah
5f855d5da4 Add test case for Inter company Journal Entry (#14531) 2018-06-15 15:33:21 +05:30
Ameya Shenoy
22c2f472e3 Merge branch 'master' into develop 2018-06-15 09:35:06 +00:00
Nabin Hait
380a74732c salary structure related test case fixes 2018-06-15 14:42:12 +05:30
Nabin Hait
2f89a04511 create user permissions on save of employee 2018-06-15 13:16:44 +05:30
rohitwaghchaure
e647c1f3cb Renamed asset adjustment to asset value adjustment (#14532) 2018-06-15 13:06:28 +05:30
Nabin Hait
fcaeea70d2 Update employee.py 2018-06-15 12:47:45 +05:30
Nabin Hait
5bc533f65d Test case fixes 2018-06-15 11:59:58 +05:30
asbasawaraj
4c263480c9 Certfication Application Doctype and webform,Certfied Consultant DocType (#14528) 2018-06-15 10:04:19 +05:30
Ranjith Kurungadam
0e5c8283fa Salary Slip - update period factor for tax calc (#14527) 2018-06-15 10:03:57 +05:30
Nabin Hait
2737b08f0f blanket order related fixes 2018-06-14 18:07:34 +05:30
Shreya Shah
0b9b8d6826 Remove unused code (#14526) 2018-06-14 17:57:39 +05:30
Shreya Shah
02575d1f2c Merge pull request #14205 from Alchez/frappe-contract
[Feature] Managing Contracts in ERPNext
2018-06-14 17:57:02 +05:30
Ranjith Kurungadam
a8e047afc8 HRA tax exemption Indian regional (#14520)
* remove HRA fields fom declaration, proof submission

* HRA fields, methods India regional

* Company - remove Payroll Settings

* HRA India regional, override methods

* Patch to add HRA fields for India
2018-06-14 17:56:16 +05:30
Nabin Hait
d1f40ad0b6 minor fix 2018-06-14 17:09:55 +05:30
Shreya
cdd3982b44 [minor] Fix 2018-06-14 16:43:47 +05:30
Shreya
f333536446 Remove test_records.json and modify test 2018-06-14 16:43:07 +05:30
Nabin Hait
44341c1637 removed blanket order docs 2018-06-14 15:58:41 +05:30
Nabin Hait
b2d3c0f040 Update ordered qty in blanket order 2018-06-14 15:56:29 +05:30
Manas Solanki
9a31dd7062 test + documentation 2018-06-14 15:56:29 +05:30
Manas Solanki
2df1b31707 [minor] minor fixes along with the codacy 2018-06-14 15:55:38 +05:30
Manas Solanki
e5e87f7137 [feature] Blanket Order
- Creaete Sales or Purchase order from the blanket order
- If there is any blanket order for the customer/supplier rates will be fetched from that order
- Manually selecting the Blanket order will change the rates accordingly
- Upon submission of the order, the ordered qty will be updated in the Blanket Order
2018-06-14 15:55:38 +05:30
Manas Solanki
2fb63e1724 init the blanket order 2018-06-14 15:55:37 +05:30
Rushabh Mehta
1198d94904 [rename] Email Alert -> Notification 2018-06-14 13:18:21 +05:30
Shreya Shah
c3d1353ab5 Merge pull request #14518 from shreyashah115/patch-fix
Check if table exists else return
2018-06-14 13:08:49 +05:30
Shreya
df385ac3c0 Check if table exists else return 2018-06-14 13:07:52 +05:30
Zarrar
14a9c0706b Merge pull request #14461 from mntechnique/sales_partner_type
Partner Type as Link field added in Sales Partner
2018-06-14 12:48:24 +05:30
Zarrar
6ffdf94003 [Fixes] Defaults and User-Permission based fixes in treeview (#14501)
* utility function added for treeview
function to distinguish defaults from user permission and return appropriate data

* make use of utility function for treeview
2018-06-14 12:24:16 +05:30
Shreya Shah
06ef4270f2 Merge pull request #14447 from zerodhatech/loan_application
[Enhancement] toggle required fields on select of repayment option in loan application
2018-06-14 12:05:46 +05:30
Jamsheer
c7743932ab [Fix] HR Fixes (#14511)
* Payroll Entry - fix in db query

* Salary Structure Assignment - Company read_only = 1

* Fixes in hr util and benefit claim

* Employee Benefit Application - Late application - fix
2018-06-14 11:55:17 +05:30
Zarrar
17089eeac3 [Minor] Fetching and appending items in Stock Reconciliation fix (#14509)
* minor fix in get_list of items in stock reconciliation

* reload doc fails because of backdated modified date

* item and item defaults should load prior to shopify refactor

* attribute value should't be none or empty, could be zero though

* Update item.py
2018-06-14 11:54:18 +05:30
Rushabh Mehta
0d19744b17 [fix] for notification 2018-06-14 09:23:32 +05:30
IOWEB TECHNOLOGIES
62805e2101 Fix unicode literal issue that prevents payment entries to be created (#14515) 2018-06-14 09:14:07 +05:30
rohitwaghchaure
fb997d6539 [Fix] Woocommerce test cases (#14513) 2018-06-14 09:13:39 +05:30
Prateeksha Singh
0738483343 [docs] remove docs folder 💥, update docs app to foundation (#14516) 2018-06-14 09:11:05 +05:30
Manas Solanki
687c6bb002 Merge pull request #14510 from rohitwaghchaure/test_cases_for_material_consumption
[Fix] Travis for the test case test_material_consumption
2018-06-13 18:41:12 +05:30
Rohit Waghchaure
80d4477d1e [Fix] Travis for test_material_consumption 2018-06-13 18:37:03 +05:30
Shreya Shah
a2056a39bd Fix patch (#14503)
* Modify patch to move leave approvers from Employee master to Department master

* Rename child table names

- Rename leave approver to leave approvers
- Rename expense approver to expense approvers

* Import cstr

* Fix a condition
2018-06-13 17:11:17 +05:30
Manas Solanki
aa17294979 Update utils.py 2018-06-13 16:47:41 +05:30
Jamsheer
30f37b2eb1 Payroll Entry - Separate JE for flexi salary component (#14502)
* Payroll Entry - Accrual entry - exclude only tax impact - and separate JE for Flexi in Bank Entry

* Journal Entry - validate cheque info on submit

* Payroll Entry - Make Bamk Entry - Separate JE for benefit component
2018-06-13 15:29:38 +05:30
Jamsheer
cc25eb00b5 Employee benefit application depends on lwp (#14494)
* Employee benefit - pro-rata amount - depends on lwp and working days

* HR Util - get holidays for employee

* Employee Benefit Application - calculate remainig on max benefit

* Employee benefit - late application - depends on lwp

* missing semicolon
2018-06-13 15:14:24 +05:30
rohitwaghchaure
93e8bbac84 [Fix] Travis for employee_tax_exemption_declaration (#14500) 2018-06-13 15:12:32 +05:30
Shreya Shah
4fe2a91b9f Remove docstatus=1 to show pending leaves as well (#14498) 2018-06-13 15:11:43 +05:30
Manas Solanki
9385cd5203 Merge pull request #14496 from rohitwaghchaure/stock_entry_test_cases
[Fix] Travis for stock entry
2018-06-13 14:06:20 +05:30
Rohit Waghchaure
0eef3f665d [Fix] Travis for stock entry 2018-06-13 13:06:25 +05:30
Manas Solanki
2304dc435a Merge pull request #14493 from manassolanki/travis-3
fix the timesheet test cases
2018-06-13 12:30:54 +05:30
Manas Solanki
b12f0d90af fix the timesheet 2018-06-13 12:30:02 +05:30
Jamsheer
f6d7b5d0c8 Salary slip - additional salary - deductions (#14476) 2018-06-13 11:36:43 +05:30
Tom Price
32c984cd3c Fix fields being hidden by default. (#14490)
Modify the title property to be sensible for general usage, unique and translatable.

Add allow_in_quick_entry properties appropriately.
2018-06-13 11:14:44 +05:30
Manas Solanki
176e7c5ce2 fix the test case for the payroll (#14480)
* fix the test case for the payroll

* fix the shopify and stock entry

* more structured test cases for payroll
2018-06-13 11:13:01 +05:30
Prateeksha Singh
d1fffb6ba1 Merge pull request #14484 from pratu16x7/help-portal
[help-portal] don't show issues to guest
2018-06-12 17:40:36 +05:30
Prateeksha Singh
8d58429b69 [help-portal] don't show issues to guest 2018-06-12 17:39:12 +05:30
Nabin Hait
76c51b3068 minor ux fix 2018-06-12 16:29:10 +05:30
deepak-mnt
b95f60c6f3 minor changes 2018-06-12 16:04:49 +05:30
rohitwaghchaure
6c4fa1e917 Merge pull request #14478 from rohitwaghchaure/test_cases_fix_for_purchase_receipt
[Fix] Purchase receipt test cases
2018-06-12 13:55:02 +05:30
Rohit Waghchaure
b6381c66d8 [Fix] Purchase receipt test cases 2018-06-12 13:54:40 +05:30
rohitwaghchaure
a6b346f827 Merge pull request #14475 from rohitwaghchaure/asset_test_cases_fixes
[Fix] Test cases for asset
2018-06-12 12:21:11 +05:30
Rohit Waghchaure
f270567c45 [Fix] Test cases for asset 2018-06-12 12:20:52 +05:30
Ranjith Kurungadam
138e6abaff Salary Slip - update tax calculation, deduct tax for unsubmitted exemption proof (#14428) 2018-06-12 12:19:36 +05:30
Suraj Shetty
e06ecd2494 Check if user permission for employee exists (#14474)
- Also check if user has permission to
add user permission to avoid insufficient
permission error while updating user profile
2018-06-12 12:06:41 +05:30
Jamsheer
8d66f1e45d Employee benefit - Late employee benefit application (#14465)
* HR Utils - get salary slip total benefit given for a payroll period

* Late employee benefit application

* Additional Salary - code refactor - get_amount

* new line in salary detail json

* Employee benefit late application - validation refactor

* Codacy fix
2018-06-12 11:30:59 +05:30
rohitwaghchaure
2354c1eba3 Merge pull request #14467 from rohitwaghchaure/update_location_in_serial_no
Code cleanup and fixes for the asset
2018-06-12 11:19:01 +05:30
Manas Solanki
65b55a53a6 Update test_leave_application.py 2018-06-12 11:18:01 +05:30
rohitwaghchaure
26943184e6 Merge pull request #14471 from rohitwaghchaure/fix_patch_update_total_qty_field
[Fix] patch
2018-06-12 01:16:52 +05:30
Rohit Waghchaure
ec2a2ac47e [Fix] patch 2018-06-12 01:16:28 +05:30
Manas Solanki
b81e384753 Merge pull request #14466 from frappe/manassolanki-patch-12
Only run the ERPNext tests
2018-06-11 19:30:01 +05:30
Manas Solanki
d7f6d45e28 Merge pull request #14468 from manassolanki/fix-travis-1
fix the salary slip test cases
2018-06-11 19:29:28 +05:30
Manas Solanki
f226b50d6d fix the salary slip test cases 2018-06-11 19:27:46 +05:30
Rohit Waghchaure
647d595158 Code cleanup and fixes for the asset 2018-06-11 19:15:08 +05:30
Shridhar Patil
c3f5849ac0 typo fixed 2018-06-11 18:26:45 +05:30
Manas Solanki
fde28a284e Update .travis.yml 2018-06-11 18:07:49 +05:30
Manas Solanki
e832aa4fe2 Merge pull request #14436 from shreyashah115/fix-trav
Travis again
2018-06-11 17:45:11 +05:30
Shreya Shah
157815ff0c Patch for total quantity (#14458)
* Add path to patches.txt

* Modify patch
2018-06-11 17:32:17 +05:30
Jamsheer
0ca76323af Clinical Procedure Template - get_item_details - fix (#14449) 2018-06-11 17:25:49 +05:30
Prateeksha Singh
252d0bf255 Merge pull request #14455 from frappe/kennethsequeira-patch-3
Fix minor div issue in Accounts index page
2018-06-11 16:33:51 +05:30
rohitwaghchaure
7cd59a2089 Merge pull request #14453 from rohitwaghchaure/item_alternative_fixes_for_backflush
[Fix] Alternative item, transferred qty issue for backflush method
2018-06-11 15:44:37 +05:30
Shreya
9680dc476f Remove commented code 2018-06-11 15:40:09 +05:30
deepak-mnt
bb6753f206 Merge branch 'develop' of https://github.com/frappe/erpnext into sales_partner_type 2018-06-11 15:01:43 +05:30
deepak-mnt
4ec283d775 patch for sales partner type field 2018-06-11 14:53:25 +05:30
Manas Solanki
3bfe7b9148 Merge pull request #14454 from frappe/manassolanki-patch-11
Update cost_center.py
2018-06-11 14:25:50 +05:30
Manas Solanki
7e8cbf288c Update cost_center.py 2018-06-11 14:25:27 +05:30
Kenneth Sequeira
061492a9af Fix minor div issue in Accounts 2018-06-11 14:24:19 +05:30
Rohit Waghchaure
86026d31cf [Fix] Alternative item, transferred qty issue for backflush method 2018-06-11 14:11:00 +05:30
rohitwaghchaure
b2fc349026 Merge pull request #14450 from rohitwaghchaure/removed_company_data_from_test_item_records
Removed company data from test item records
2018-06-11 13:35:14 +05:30
Rohit Waghchaure
cdec44ee81 Removed company data from test item records 2018-06-11 13:32:34 +05:30
Shridhar Patil
6a00a17c14 toggle required fields on select of repayment option in loan application 2018-06-11 12:48:31 +05:30
rohitwaghchaure
7048925016 [Enhance] Standalone debit/credit note (#14269)
* [Enhance] Standalone debit/credit note

* Test cases

* Test cases and documentation

* Removed credit, debit note links from accounts module
2018-06-11 12:02:14 +05:30
Manas Solanki
3639b85663 Merge pull request #14363 from frappe/manassolanki-patch-10
PR to check the current state of Travis
2018-06-11 11:40:40 +05:30
Ranjith Kurungadam
e46639f47c Employee Transfer allow same company, update internal work history (#14430) 2018-06-11 11:24:44 +05:30
Zarrar
88a90ff3b5 minor fix in account and account utils (#14432) 2018-06-11 11:21:17 +05:30
Shreya
83d5dc119b Fix Employee tax declaration test case 2018-06-11 10:31:40 +05:30
Shreya
664f30a018 Fix asset maintenance json 2018-06-11 10:31:40 +05:30
Shreya
77662eb5f4 Fix shopify test case 2018-06-11 10:31:40 +05:30
Shreya
294238abfd Fix shopify test case 2018-06-11 10:31:39 +05:30
Shreya
3b201cc2fd Remove python 3 stage from travis 2018-06-11 10:31:39 +05:30
Shreya
956277b121 Fix tests 2018-06-11 10:31:39 +05:30
Zarrar
65994210f6 fix patch to add email template in hr settings (#14427) 2018-06-08 16:57:06 +05:30
Zarrar
44175904c6 Tree fix (#14425)
* use frm.set_value instead of this.set_value

* generic methods moved to accounts/utils

* clean up code, and make use of methods added in utils
2018-06-08 16:35:21 +05:30
Suraj Shetty
f553b53fbf Add patch to set update_field and update_value (#14421)
* Add patch to set update_field and update_value

- set update_field and update_value if empty
since expense claim workflow is dependent on it.

* Set update_field for workflow state of leave application

* Update patch entry

* Fix bug

* Update set_update_field_and_value_in_workflow_state.py
2018-06-08 16:28:36 +05:30
Alchez
ca8138fd13 [Agriculture] Sort crop tasks chronologically and optimize disease task creation (#14367)
* Improve max crop period check and sort agriculture tasks chronologically

* Reformat crop cycle logic and add field to optimize task creation
2018-06-08 14:55:07 +05:30
Doridel Cahanap
ebb530385a Add Employee Status Temporary Leave (#14423) 2018-06-08 14:54:31 +05:30
rohitwaghchaure
8fc64a9717 [Fix] Travis data (#14422) 2018-06-08 14:43:50 +05:30
Zarrar
7ab70ca2d7 [ Fixes ] v11 Tree based doctype testing (#14419)
* location tree fixes
validate if child present while deleting, filter lists down only group enabled node

* department tree fixes
Adding child fix if added from rootnode with company filter applied. Rename consistency added. Validation added in on_trash

* Company tree fix
Check if child exist while deleting a node validation added.

* Supplier Group tree fixes
on_trash validation added if child node present

* Cost Center tree fixes
Adding child to root node throws error because parent_cost_center picks up root name
2018-06-08 14:33:15 +05:30
Gaurav Naik
094617d29a Fix to allow migration of individual sites (#14413) 2018-06-08 11:44:27 +05:30
Zarrar
13f9851609 [Docs] Update doc for Supplier Group (#14373)
* add breadcrumb for Supplier Group tree

* change occurrences of supplier-type to supplier-group

* update supplier-group doc, update pngs
2018-06-07 16:47:30 +05:30
Zarrar
209d8f36f7 doctype was not reloaded to pickup changes (#14371) 2018-06-07 16:43:55 +05:30
Prateeksha Singh
50ae6b891b Merge pull request #14410 from pratu16x7/hub-fixes
Hub fixes
2018-06-07 14:19:01 +05:30
rohitwaghchaure
2704bef0b3 Merge pull request #14368 from shreyashah115/fix-trav
Some more travis fixes
2018-06-07 14:14:33 +05:30
Prateeksha Singh
00ab78d768 [hub] set page title dynamically 2018-06-07 14:13:00 +05:30
Shreya
88591314b0 Fix Leave Application test cases 2018-06-07 13:56:27 +05:30
Faris Ansari
25625f4092 Merge pull request #14408 from rohitwaghchaure/purchase_invoice_supplier_gstin_issue
[Fix] Code cleanup, if supplier gstin is none
2018-06-07 13:48:51 +05:30
Rohit Waghchaure
de82ad1c5f [Fix] Clenaup code if supplier gstin is none 2018-06-07 13:24:25 +05:30
Prateeksha Singh
9a7f957ace [hub] fix item page recursion 2018-06-07 12:40:40 +05:30
Shreya
88fe0d59d9 Fix daily work summary test 2018-06-07 11:22:26 +05:30
Shreya
4638d1ab97 Fix POS Profile test 2018-06-06 16:23:16 +05:30
Shreya
71316aaec8 Modify asset movement test cases and files 2018-06-06 15:55:30 +05:30
Saurabh
78a2d9785e add gudelines to report Security Vulnerabilities (#14364) 2018-06-06 15:08:20 +05:30
Saurabh
eb579a11e1 Fix demo (#14365)
* fix demo

* Update asset.json
2018-06-06 15:05:31 +05:30
Shreya
90bdfed3db Modify all asset test cases 2018-06-06 14:27:55 +05:30
Manas Solanki
3504a2342e PR to check the current state of Travis 2018-06-06 12:46:06 +05:30
Ranjith Kurungadam
cff14793d8 Salary Structure, Slip - make fields readonly (#14358)
* Salary Structure, Slip - make fields readonly

* codacy fixes

* Salary Component - reorder fields, removed is_group for flexi

* Update salary_structure.js
2018-06-06 12:04:25 +05:30
Ameya Shenoy
873e28d9b8 Merge branch 'master' into develop 2018-06-06 05:53:19 +00:00
Charles-Henri Decultot
a774f3d7a0 POS closing voucher (#14270)
* POS closing voucher

* Codacy corrections + improvements

* Codacy corrections

* POS Closing Voucher improvements
2018-06-06 10:22:13 +05:30
Alchez
eb0ac37587 Fix ISO standard references in Agriculture (#14361) 2018-06-06 10:10:56 +05:30
Shreya Shah
59af3a0296 [Enhancement] UOM Conversion Factors (#13853)
* new doctype UOM category

* new doctype UOM Conversion Factor

* bootstrap json data for uom conversions

* uom conversion in item

* Patch to add all conversions and categories

* Fetch conversions multi-way

* fix codacy

* Rebase with develop

* [minor] Fix

* Add a test case

* Improvise as per review comment

* Add json data for UOMs

* Commonify function and call from patch

* Update uom_conversion_data.py
2018-06-06 09:44:46 +05:30
Sushant Nadkar
d458f7710f [UX Improvement] Removed uri encoding from search results on front end (#14266)
* removed uri encoding from search results on front end

* decode search string using html2text
2018-06-06 09:23:38 +05:30
Shreya Shah
c37fd050c5 Remove unnecessary variable (#14352)
* Remove unnecessary variable

* Replace cur_frm with frm

* Update material_request.js
2018-06-06 09:19:48 +05:30
Shreya
9aa7d8fe5f Update asset related test cases 2018-06-06 04:27:59 +05:30
Shreya
80a1e156cb Create location for asset test 2018-06-06 03:11:18 +05:30
Shreya
9c801b976d Fix share transfer test 2018-06-06 02:58:23 +05:30
Shreya
8f692f9a27 Fix batch test 2018-06-06 02:09:17 +05:30
Shreya
2ad81726d5 Fix utils.py 2018-06-06 02:09:17 +05:30
Manas Solanki
dabe21051c Update test_company.py (#14360) 2018-06-05 16:28:27 +05:30
Nabin Hait
1389030739 Merge branch 'mnaim-cloude8-develop' into develop 2018-06-05 14:41:07 +05:30
Nabin Hait
2f273e73b2 minor fixes 2018-06-05 14:40:48 +05:30
Nabin Hait
e0a2ea64c0 Merge branch 'develop' of https://github.com/mnaim-cloude8/erpnext into mnaim-cloude8-develop 2018-06-05 14:21:57 +05:30
Shreya Shah
0cf4ee6bf2 Fix sentence structure (#14357) 2018-06-05 14:18:16 +05:30
rohitwaghchaure
2da6b3d628 [enhance] Provision to backflush raw materials based on stock entries for subcontracted items (#14296) 2018-06-05 13:06:52 +05:30
Shreya Shah
630721aacc Travis (#14354)
* Fix Purchase Receipt tests

* Fix Item test

* Fix daily work summary test

* Modify currency exchange test cases

* Fix Leave Application test

* Update working hours when making salary slip from timesheet

* Replace fixer.io with exchangeratesapi

* Fix codacy
2018-06-05 12:56:10 +05:30
Nabin Hait
81d12cc9c8 Get default income account from Item 2018-06-05 12:49:03 +05:30
Ranjith Kurungadam
d580c92377 Staffing Plan (#14346)
* validate staffing plan

* staffing plan docs

* get_active_staffing_plan_and_vacancies now returns dict, mandatory fields set

* validate with parent and child company plans, plan now considers open job openings

* Failure details in validate error messages

* Fixed sql injection
2018-06-05 11:40:58 +05:30
Shreya Shah
4fa600a8dd Apply GST based on Origin and Place of supply GST Code (#14288)
* Add new gst field in Taxes and Charges template - is_inter_state

* Add a patch

* Add a regional function to fetch taxes on the basis of GSTin

* Add regional function to hooks.py

* Fetch taxes for Purchase Invoice on the basis of Supplier GSTIN

* Fixes in the setup.py for India region

* Set is_inter_state field

For the existing Taxes and Charges templates, if an account_head with igst account (which is set in GST Settings) is found, set the checkbox and also check if it doesn't have a cgst account.

* Fix as per review comment
2018-06-05 11:27:53 +05:30
Shreya Shah
5103454642 New Report Address and Contacts (#14307)
* New Report Address and Contacts

* Fix codacy

* Add links to report in module pages
2018-06-05 10:44:36 +05:30
Sushant Nadkar
565bf203e5 [Improvement] Added display settings for item price, availibility and stock levels (#14308)
* display item price on website even when cart is disabled

* added display settings for item price, availibility and stock levels

* Update shopping_cart_settings.json
2018-06-05 10:43:11 +05:30
Alchez
31ab64822c Make the item UOM more visible (#14315) 2018-06-05 10:35:55 +05:30
Shreya Shah
f1e54836cb Remove hardcoded workflow patches (#14340) 2018-06-05 10:35:07 +05:30
Shreya Shah
b75e77a2cc Fix syntax (#14342) 2018-06-05 10:33:29 +05:30
Sushant Nadkar
64907e5083 Validate response message for frappe call (#14343) 2018-06-05 10:33:04 +05:30
asbasawaraj
1b16b772ab Report to Track Expiring Memberships - Monthwise (#14207) 2018-06-05 10:30:03 +05:30
Nabin Hait
c4eec99bc4 minor fix 2018-06-05 09:06:30 +05:30
Prateeksha Singh
03644f2a9d Merge pull request #14345 from pratu16x7/members-patch
[patch][update] naming_series field in member patch
2018-06-04 16:37:57 +05:30
Prateeksha Singh
2141bfab89 [patch][update] naming_series field in member patch 2018-06-04 16:36:12 +05:30
Rohan Bansal
841d54c49d Start adding tests for contracts 2018-06-04 15:56:38 +05:30
Rohan Bansal
bf0f0aaf6f Add Contract-related doctypes to ERPNext 2018-06-04 15:56:38 +05:30
Prateeksha Singh
37678d4838 [patch][new] rename old members as per naming series (#14339) 2018-06-04 14:25:51 +05:30
Sushant Nadkar
ebf76163ad show uom in list view of material request (#14338) 2018-06-04 14:23:25 +05:30
Ranjith Kurungadam
f576c570c9 Salary Slip - fix when no pyroll period found for tax calc (#14335) 2018-06-04 12:53:23 +05:30
Nabin Hait
8c33587003 Merge branch 'ESS-LLP-dev_hra' into develop 2018-06-04 11:23:48 +05:30
Nabin Hait
8c7af497a0 Fixed merge conflict 2018-06-04 11:23:36 +05:30
Ranjith Kurungadam
ed4e49c6b2 Salary Slip - Deduct Tax (#14255)
* Salary Slip - Deduct Tax For Unclaimed Employee Benefits, Unsubmitted Tax Exemption Proof

* fix - missing return statement
2018-06-04 11:17:55 +05:30
Nabin Hait
df7e0ed1e3 Merge branch 'ESS-LLP-jam_ent_emp_benefits' into develop 2018-06-04 11:15:13 +05:30
Nabin Hait
a55090dc88 Fixed merge conflict 2018-06-04 11:14:50 +05:30
Jamsheer
398f15754d Rename - Additional Salary Component to Additional Salary (#14302)
* Rename Doctype Additional Salary Component to Additional Salary

* Remove unused import
2018-06-04 11:02:53 +05:30
Prateeksha Singh
8ac7dfee36 Merge pull request #14329 from pratu16x7/hub-fixes
[hub][minor] remove links #14309
2018-06-04 10:28:47 +05:30
Prateeksha Singh
e73df88863 [hub][minor] remove links #14309 2018-06-04 10:26:49 +05:30
Nabin Hait
953ea93f7b Update leave_type.json 2018-06-03 15:31:35 +05:30
Shreya Shah
d3255b1d3d Add docs for Inter Company Invoice creation (#14314) 2018-06-03 10:28:51 +05:30
Tropicalrambler
8b38e57af2 Correcting typo in the User Documentation (#14326)
This corrects a simple typo in the Pricing rule topic for documentation
2018-06-03 10:27:38 +05:30
Ranjith Kurungadam
375db6181d Earned Leave (#14143)
* Earned Leave Allocations will be initially zero, escaped validation in leave allocation to allow this

* Earned Leave monthly scheduler method, test

* remove whitelist of method
2018-06-01 16:09:28 +05:30
Saurabh
f9f35d0b76 Merge pull request #14305 from saurabh6790/release_fix
typo fix
2018-05-31 18:11:53 +05:30
Saurabh
824e068d0a typo fix 2018-05-31 18:11:05 +05:30
Saurabh
0eb622f7da [fix] resolve conflicts 2018-05-31 17:32:17 +05:30
Ranjith
590bf4ce3a codacy fixes 2018-05-31 12:08:14 +05:30
Shreya Shah
c55f774fbf Address filter in gstr1 report (#14290) 2018-05-31 09:33:36 +05:30
AMS Fauzi
f3a6d95634 Develop: Batch Number Series (#14251) 2018-05-31 09:31:57 +05:30
rohitwaghchaure
780952ea03 Show actual qty in warehouse link search (#14258) 2018-05-31 09:29:18 +05:30
Ahmad M Abdelrahman
f12b446dc8 Bank Account #13714 PR (#14295) 2018-05-31 08:58:23 +05:30
Saurabh
e5d076d495 [minor][fix] fix query syntax (#14294)
* [minor][fix] fix query syntax

* Update pos.py
2018-05-31 08:54:31 +05:30
Umair Sayed
5225c0e541 May docs (#14298)
* manual update

* Added new videos in learn section. Updated other help pages.

* project module rewrite

* employee and supplier master

* employee and supplier master fixes
2018-05-31 08:43:22 +05:30
rohitwaghchaure
26833cf506 Merge pull request #14299 from rohitwaghchaure/field_rearrange_for_budget
Rearrange fields
2018-05-31 00:27:45 +05:30
Rohit Waghchaure
7c0dd7a142 Rearrange fields 2018-05-31 00:27:05 +05:30
Ranjith
0cb2684130 Tax Exemption Proof Submission - validations, eligible hra calc 2018-05-30 20:51:37 +05:30
Ranjith
793f8e8caa Tax Exemption Declaration - update fields, move generic methods to utils 2018-05-30 20:50:48 +05:30
Prateeksha Singh
c62de0831e Merge pull request #14291 from pratu16x7/help-page
[fix] help page issue listing
2018-05-30 17:27:49 +05:30
Prateeksha Singh
66425c6e7f [fix] help page issue listing 2018-05-30 17:26:03 +05:30
Shreya Shah
47335e5e60 Stocking out items with expired batches (#14249)
* Add dropdown in Stock Entry to get expired batch items

* Fetch all the items with expired batches

* Add the fetched item details to stock entry details

* Modify as per the review comments
2018-05-30 15:44:41 +05:30
rohitwaghchaure
05152dad0b [Enhance] Provision to set overproduction percentage for work order (#14248) 2018-05-30 15:28:09 +05:30
Prateeksha Singh
09e46a4e5f Hub fixes (#14281)
* [hub] remove list freeze

* [hub] fix svg in icon

* [hub] implement route options in hub list view
2018-05-30 15:12:20 +05:30
Jignesh Greycube
9aca025be2 Documentation to Fetch value in Child Table for a field (#14282)
* Fetch value in Child Table for a field

Sample Script to fetch value in child table

* Update fetch value in child table field
2018-05-30 15:08:55 +05:30
Ranjith
806cd93791 Merge remote-tracking branch 'frappe/develop' into dev_hra 2018-05-30 13:37:47 +05:30
Ranjith
155ecc1b4a Tax Exemption Declaration - HRA Calculation 2018-05-30 13:37:15 +05:30
Faris Ansari
6ac9c0f71e Merge pull request #14267 from surajshetty3416/workflow-doc-changes
Add doc related to workflow action
2018-05-30 12:34:21 +05:30
Prateeksha Singh
865e16621c [docs] fix embed issues (#14268) 2018-05-29 17:09:56 +05:30
Suraj Shetty
e51e51e138 Add requested changes 2018-05-29 16:46:19 +05:30
Nabin Hait
348a6a8b17 patch fixes 2018-05-29 16:17:15 +05:30
Suraj Shetty
77aed9d58b Move video section to bottom 2018-05-29 15:45:22 +05:30
Suraj Shetty
16d3494efc Add doc related to workflow action 2018-05-29 15:29:18 +05:30
Vladyslav Baidak
13d4391e70 Fixed SQL syntax error in Get Loan Details (#14265) 2018-05-29 15:22:05 +05:30
Ranjith
7bb621d2bf Tax Exemption Declaration, Proof Submission HRA fields 2018-05-29 13:58:31 +05:30
Ranjith
fb257ba19c Company - Payroll Settings- fields 2018-05-29 13:57:27 +05:30
Nabin Hait
4d0c73a5c8 Submit auto created salary structure assignments 2018-05-29 13:25:28 +05:30
Nabin Hait
3aa205f19d Fixes related to department tree 2018-05-29 13:08:48 +05:30
Saurabh
d3a8c9308b [fix] add ignore validate flag (#14238) 2018-05-29 13:07:27 +05:30
Nabin Hait
288cbcafce Create demo data for salary structure 2018-05-29 11:04:11 +05:30
Nabin Hait
153536bf70 minor test fixes 2018-05-29 10:58:57 +05:30
rohitwaghchaure
bd2989a541 Merge pull request #14254 from rohitwaghchaure/leave_application_issue_for_leave_approver
[Fix] Leave application, leave approver not fetching
2018-05-28 15:11:08 +05:30
Rohit Waghchaure
81302a8b12 [Fix] Leave application, leave approver not fetching 2018-05-28 15:10:19 +05:30
rohitwaghchaure
65684564c2 Merge pull request #14253 from rohitwaghchaure/financial_report_issue
[Fix] Data not displaying in financial reports
2018-05-28 15:03:43 +05:30
Rohit Waghchaure
c89a84b61e Fixed data not displaying in financial reports 2018-05-28 15:01:57 +05:30
rohitwaghchaure
30c88fe1a5 Merge pull request #14247 from rohitwaghchaure/patch_fixed_for_asset_warehouse
Fixed patch, checked warehouse available in the asset
2018-05-28 12:30:55 +05:30
Rohit Waghchaure
ad184f62e3 Fixed patch, checked warehouse available in the asset 2018-05-28 12:29:42 +05:30
Shreya Shah
e329038aaa Total Quantity in Sales and Purchase DocTypes (#14114)
* Add  field to all sales and purchase doctypes

* Add patch to update existing records

* Modify taxes_and_totals.py
2018-05-28 11:49:08 +05:30
tundebabzy
3eb235a53b Sales Payment Summart Report Improvement (#14243)
* fix iteritems() takes exactly 1 argument (2 given)

* adds new helper functions

* use new functions to make POS invoices filterable on warehouse and cost center

* more PEP8 fixes
2018-05-28 10:26:45 +05:30
Kenneth Sequeira
119cc5dec6 Documentation - Open Divs and Video Resolutions (#14242)
* fixed open div tag in edu docs

* fixed open div tag in projects page

* fixed open div for item variants, serialized inventory article

* fixed video aspect ratio and open div for Selling, Workflow, and Material Request
2018-05-28 10:24:43 +05:30
Ameya Shenoy
67c9566e77 Duct tape for demo (#14241)
The demo is just too old and needs a complete refactor. This is just a
workaroud to keep the demo working
2018-05-27 12:45:32 +05:30
Solufyin
64d02f917a [ADD] Department Analytics Bar Chart Feature (#14217) 2018-05-26 09:26:03 +05:30
Kenneth Sequeira
089a41c679 Fixed code in Embed Link (#14228) 2018-05-26 09:22:43 +05:30
Suraj Shetty
084b0b3a67 Treeview permission (#14232)
* Replace frappe.db.sql to frappe.get_list to apply permissions (#14037)

* Replace frappe.db.sql to frappe.get_list to apply permission
- All get_children method had frappe.db.sql in them which
had no permission check, now its replaced with frappe.get_list
which will check permission based on the user.

* Fix codacy
- Remove trailing whitespace

* Add parent filter

* Add ifnull checks
2018-05-26 09:12:59 +05:30
Suraj Shetty
aadfaa4493 Minor fixes (#14231)
* Parse date using getdate to avoid TypeError

* Fix alignment of application dashboard table text

* Use `user` instead of `email` to get value from user table
2018-05-26 09:10:47 +05:30
Nabin Hait
33df0b4fbf Test case fixes (#14219)
* Test case fixes

* fetch_from fixes
2018-05-26 09:09:02 +05:30
Jamsheer
e6eef3085c Remove unused imports 2018-05-25 15:20:50 +05:30
Manas Solanki
d09a6c9ccb Merge pull request #14225 from frappe/manassolanki-patch-8
Update employee.py
2018-05-25 14:47:49 +05:30
Rushabh Mehta
92bb786320 [fix] .travis.yml 2018-05-25 14:47:01 +05:30
Jamsheer
9416ac4ad4 Leave Priod - fix - grant leave allocation filter by grade 2018-05-25 14:46:31 +05:30
Manas Solanki
730cb3b547 Update employee.py 2018-05-25 14:46:21 +05:30
Jamsheer
fca88a6b22 Employee benefits - get_assigned_salary_structure 2018-05-25 14:35:02 +05:30
Jamsheer
79a6b42353 Salary Slip - options to fetch from migration 2018-05-25 12:56:22 +05:30
Jamsheer
ce89199abb taxable salary slabs remove from Salary Component and add to Payroll Period 2018-05-25 12:52:23 +05:30
Jamsheer
f1d10bf286 Salary Component - remove flexi_default 2018-05-25 12:52:23 +05:30
Jamsheer
620c3a872c Employee Benefit Claim - non pro-rata claim validation updated 2018-05-25 12:52:23 +05:30
Jamsheer
dc698a891d options to fetch from migration 2018-05-25 12:52:23 +05:30
Jamsheer
8eec40cb8a Employee Benefits in Salary Slip - Application and Claim 2018-05-25 12:46:31 +05:30
Jamsheer
16e924333e get payroll period days - fix 2018-05-25 12:46:31 +05:30
Jamsheer
47d865baa0 Calculate remaining benefit amount in Employee Benefit Application 2018-05-25 12:46:31 +05:30
Jamsheer
8a953ba516 Validate remaining benefit amount in Employee Benefit Application 2018-05-25 12:46:31 +05:30
Jamsheer
772f257ff3 Employee Benefit Claim - date default to Today 2018-05-25 12:46:31 +05:30
Jamsheer
eacaad3aec Max benefit amount in Employee Benefit Application Detail 2018-05-25 12:42:21 +05:30
Jamsheer
c1ae88ba02 Employee Benefit Calim - earning component filter updated 2018-05-25 12:42:20 +05:30
Jamsheer
c5629efe0e Employee Benefit Application - refactor validation 2018-05-25 12:42:20 +05:30
Jamsheer
9d5d328a4f Salary Structure - validate flexi with max benefit 2018-05-25 12:42:20 +05:30
Jamsheer
65a5e47e68 Payroll Period - validate dates and overlap 2018-05-25 12:37:36 +05:30
Jamsheer
cf414cc499 Payroll Period - fields refactor 2018-05-25 12:37:36 +05:30
Jamsheer
2ee211ad21 Salary Structure - validate max benefits with flexi 2018-05-25 12:37:36 +05:30
Jamsheer
ce7310255e Salary Structure - filter for earnings 2018-05-25 12:37:36 +05:30
Jamsheer
43e191289c Employee Benefit Application - earning component filter by salary structure flexi component 2018-05-25 12:37:36 +05:30
Jamsheer
77a91f0d01 Salary Component - account mandatory for separate payment entry 2018-05-25 12:37:36 +05:30
Jamsheer
1248f6a752 Codacy fix 2018-05-25 12:37:36 +05:30
Jamsheer
0493c22f3c Additional Salary Component - filter updated - salary_component 2018-05-25 12:37:35 +05:30
Jamsheer
f647aa15af Salary Component - fields - refactor fields behaviour 2018-05-25 12:37:35 +05:30
Jamsheer
334bd189a7 Employee Benefit Application - filter updated - earning component 2018-05-25 12:37:35 +05:30
Jamsheer
da24722beb Employee Benefit Claim - filter for earning component 2018-05-25 12:37:35 +05:30
Jamsheer
ce88bdf005 Employee Benefit Claim - Validation Updated - Code refactor 2018-05-25 12:37:35 +05:30
Nabin Hait
f87ec61043 Test case fixes for item defaults 2018-05-24 18:19:21 +05:30
Nabin Hait
b903fc4e71 Item defaults query fixes 2018-05-24 17:07:51 +05:30
Prateeksha Singh
05283b8af0 [fix] distribution page embed 2018-05-24 16:17:22 +05:30
Zarrar
ea064d4c5c module import fix in patch (#14203) 2018-05-24 15:54:48 +05:30
Achilles Rasquinha
2ec5b5ed8e bench init with preferred Python EXEC for CI (#13336)
* bench_init.sh added python executable flag for environment setup

* Added future python build matrix

* udpate build matrix

* Update .travis.yml

* Update .travis.yml
2018-05-24 15:16:12 +05:30
Ameya Shenoy
95e60927b4 Merge branch 'master' into develop 2018-05-24 08:45:14 +00:00
neckos
7663bb91c5 return list(filter()) not filter() (#14191)
filter constructs an iterator that is iterable only once
2018-05-23 19:45:34 +05:30
neckos
225af4a4cb unicode error in python3 (#14192) 2018-05-23 19:43:53 +05:30
Nabin Hait
5f861756a2 Item Default fixes 2018-05-23 19:37:06 +05:30
Nabin Hait
d5cb4c10a1 Set parent department if missing and not root itself 2018-05-23 18:36:18 +05:30
Rushabh Mehta
315dbd2ed1 [minor] chart_of_accounts.py for python3 2018-05-23 16:14:35 +05:30
Rushabh Mehta
f7414519bb [fix] set default supplier group in test 2018-05-23 16:14:35 +05:30
Rushabh Mehta
8788688431 [fix] inconsistent indentation 2018-05-23 16:14:35 +05:30
Nabin Hait
46600406b8 Update rename_field_max_days_allowed.py 2018-05-23 13:12:24 +05:30
Achilles Rasquinha
efb731941d ran 2to3, evaluation (#13499)
* ran 2to3, evaluation

* Update update_gstin.py

* Update accounts_receivable_summary.py
2018-05-23 11:31:24 +05:30
Zarrar
c141eb00ee [Enhance] Department added wherever applicable (#14121)
* set All Department as default parent_department

* add department field in employee_transfer

* copied data from options to fetch_from

* add department field wherever employee's link field present

* empty options field where fetch_from is added
2018-05-23 11:11:36 +05:30
Deepak kumar
e4c2ef03e1 Link Share Transfer to Account (#14127)
* Link Share Transfer to Account

* minor changes

* minoor changes
2018-05-23 10:50:22 +05:30
OSS Technolab
4fb4ca6b10 Project Budget does not filter per Project (#14179)
* Project Budget does not filter per Project

Project Budget does not filter per Project and always return actual expense amount of all entries tagged to a project.

* Update budget.py
2018-05-23 10:47:53 +05:30
Prateeksha Singh
2f69254e56 [company][dashboard] implement heatmap with linked doctypes (#14185)
* [company][dashboard] implement heatmap with linked doctypes

* [company][dashboard] cache transaction history data, schedule query daily
2018-05-23 10:41:26 +05:30
Suraj Shetty
e03937fd6a Send daily work summary alert to only enabled users (#14175)
* Send daily work summary alert to only enabled users

* Fix import
2018-05-23 10:32:55 +05:30
Faris Ansari
26eb513274 Rename occurences of max_days_allowed to max_continuous allowed (#14180) 2018-05-23 10:31:39 +05:30
Faris Ansari
83149644e3 Merge pull request #14160 from shreyashah115/patches-fixes-travis
Fix patches for Travis
2018-05-22 15:26:49 +05:30
Faris Ansari
7a5221bd95 Add rename_field 2018-05-22 15:26:21 +05:30
Ameya Shenoy
1cc7500be9 Merge branch 'master' into develop 2018-05-22 09:18:38 +00:00
Prateeksha Singh
b44ea4c8dc [website] Support Portal (#14144)
* [init] support portal

* [support-portal] Get started sections and forum activity

* [support-portal] integrate API search for forums, docs, etc

* [support-portal] integrate doctype docs search via global search

* [support-portal] /help page UI
2018-05-22 11:57:21 +05:30
rohitwaghchaure
24a169efb6 Merge pull request #14176 from rohitwaghchaure/inter_company_invoice_reference_issue
[Fix] 'SalesInvoice' object has no attribute 'inter_company_invoice_reference'
2018-05-22 11:56:33 +05:30
Rohit Waghchaure
7529bbb7b4 [Fix] 'SalesInvoice' object has no attribute 'inter_company_invoice_reference' 2018-05-22 11:55:48 +05:30
mnatalia
5f0e8d6e09 Added possibility to translate (#14173) 2018-05-22 09:08:50 +05:30
rohitwaghchaure
b1036e5582 Merge pull request #14171 from rohitwaghchaure/fixed_patch_v11_salary_structure_assignment
[Fix] Patch
2018-05-21 18:52:48 +05:30
Rohit Waghchaure
8e12a59d9b [Fix] Patch 2018-05-21 18:52:07 +05:30
rohitwaghchaure
3ec43966da Merge pull request #14170 from codingCoffee/sal
salary structure patch run if active employee
2018-05-21 18:39:10 +05:30
Ameya Shenoy
a7d402132f salary structure patch run if active employee 2018-05-21 18:38:18 +05:30
Manas Solanki
6488d740c6 Merge pull request #14167 from frappe/manassolanki-patch-7
Remove the debugger from the material_request.js
2018-05-21 17:29:03 +05:30
Manas Solanki
a96421279d Remove the debugger from the material_request.js 2018-05-21 17:27:01 +05:30
rohitwaghchaure
734b874f3e Merge pull request #14166 from rohitwaghchaure/version_11_patch_budget
[Fix] Patch, default cost center, expense account for the item
2018-05-21 17:18:58 +05:30
Faris Ansari
d2b4ec5044 [fix] Set null values to '0' before changing column type 2018-05-21 16:55:31 +05:30
Zlash65
004bf218a0 remove changes for max_days_allowed patch 2018-05-21 16:52:08 +05:30
Rohit Waghchaure
0ca7ba3247 [Fix] Patch, default cost center, expense account for the item 2018-05-21 16:43:50 +05:30
Faris Ansari
e479057148 Merge pull request #14165 from codingCoffee/min
relieving_date wasnt of type datetime
2018-05-21 16:42:41 +05:30
Ameya Shenoy
35984daf72 relieving_date wasnt of type datetime 2018-05-21 16:37:27 +05:30
rohitwaghchaure
22619a8e0c Merge pull request #14164 from rohitwaghchaure/fixed_alias_issue
[Fix] Unknown column 'i.stock_uom' in 'field list'
2018-05-21 16:22:23 +05:30
Rohit Waghchaure
abc6cf0aa5 [Fix] Unknown column 'i.stock_uom' in 'field list' 2018-05-21 16:18:37 +05:30
Faris Ansari
44528cb618 Merge pull request #14161 from Zlash65/travis-fix
[Minor] Department patch fix
2018-05-21 15:13:55 +05:30
Zlash65
41cb6cc491 patch fix - skip query if no when_then case 2018-05-21 15:10:06 +05:30
Shreya
70f9d07df8 Fix patches for Travis 2018-05-21 15:04:13 +05:30
Faris Ansari
6d2dfac44e [fix][patch] Shopify (#14159) 2018-05-21 14:41:11 +05:30
Nabin Hait
19ce904030 Report added in Selling module 2018-05-21 11:07:04 +05:30
Nabin Hait
8d1f1765a9 Merge branch 'asbasawaraj-erpnext_issue_13818' into develop 2018-05-21 11:03:22 +05:30
Nabin Hait
2cfc247d88 customers without any sales transactions 2018-05-21 11:03:02 +05:30
Nabin Hait
1bf2576e0e Merge branch 'erpnext_issue_13818' of https://github.com/asbasawaraj/erpnext into asbasawaraj-erpnext_issue_13818 2018-05-21 10:47:40 +05:30
Valmik
bfb8a73377 Append company after (#14119) 2018-05-21 10:44:35 +05:30
asbasawaraj
5f6b44e142 Formatted chapter member display (#14128) 2018-05-21 10:31:45 +05:30
Shridhar Patil
4c790488ea job opening designation made mandatory (#14153) 2018-05-21 10:30:17 +05:30
Valmik
c28378f448 [fix] get barcode string instead of dict (#14139)
* [fix] get barcode string instead of dict

* Update pos.py
2018-05-21 10:06:05 +05:30
Manas Solanki
f87762887a fetch defualt supplier from the item table (#14113) 2018-05-20 10:58:26 +05:30
Zarrar
42231df33a [Minor] Supplier Group test fix & default supplier in item fix (#14150)
* fix supplier group test

* item - default_supplier fix
2018-05-20 10:46:10 +05:30
Zarrar
1f3f18534b [Fix] Leave Application & Expense Claim query fix | Leave Balance Report fix (#14149)
* move set_query to setup function

* rectify leave balance report according to deparmtent changes
2018-05-20 10:45:14 +05:30
rohitwaghchaure
d08ac1fe79 Merge pull request #14136 from rohitwaghchaure/multiple_fixes_for_v11
Fixes in material request, asset maintenance
2018-05-18 16:39:48 +05:30
Rohit Waghchaure
73a99441ca Fixed get_query for default data in item 2018-05-18 16:39:08 +05:30
Rohit Waghchaure
6cdaa6e861 Fixes in material request, asset maintenance 2018-05-18 16:30:14 +05:30
Manas Solanki
d976c04b69 Merge pull request #14134 from manassolanki/fix-salary-patch
[fix] patch for the salary structure assignment for old employees
2018-05-18 15:47:14 +05:30
Manas Solanki
33c1a38dc8 [fix] patch for the salary structure assignment for old employees 2018-05-18 15:46:35 +05:30
rohitwaghchaure
7d834b946f Merge pull request #14117 from shreyashah115/fixes
Fix patch
2018-05-18 12:45:06 +05:30
rohitwaghchaure
f445298e7a Merge pull request #14132 from rohitwaghchaure/asset_finance_book_enhance
Changed condition of finance book in reports
2018-05-18 09:10:53 +05:30
Rohit Waghchaure
f61e94e162 Changed condition of finance book in reports 2018-05-18 09:10:07 +05:30
rohitwaghchaure
7d6cad2c67 Merge pull request #14130 from rohitwaghchaure/fixed_financial_report
Added finance book in Asset Depreciation Ledger report, fixed asset issue
2018-05-17 23:31:17 +05:30
Rohit Waghchaure
f689d01a0c Added finance book in Asset Depreciation Ledger report, fixed asset issue 2018-05-17 23:29:37 +05:30
Basawaraj
6d334b8135 Added Report : Customers Without Any Sales Transactions 2018-05-17 16:54:03 +05:30
Shreya
362e0a9f6e Fix patch 2018-05-17 15:43:03 +05:30
rohitwaghchaure
967d04ed0d Merge pull request #14096 from ESS-LLP/jam_enterprise_emp_benefit
Employee Benefit
2018-05-17 14:09:04 +05:30
rohitwaghchaure
8c6b7557db Merge branch 'develop' into jam_enterprise_emp_benefit 2018-05-17 14:08:06 +05:30
rohitwaghchaure
4444430200 Merge pull request #14108 from ESS-LLP/tax_deduction
Variable tax deduction
2018-05-17 13:55:52 +05:30
rohitwaghchaure
4c82ede9e1 Merge pull request #14112 from vjFaLk/item-uom
Add UOM to POS Item Template
2018-05-17 12:51:10 +05:30
Valmik Jangla
b52d5b21a1 Add UOM to Item View with Price 2018-05-17 00:09:21 -07:00
rohitwaghchaure
d2f0d08234 Merge pull request #14105 from Zlash65/fix-dept
[Minor] Typo in Employee Transfer
2018-05-17 11:23:52 +05:30
rohitwaghchaure
509847a674 Merge pull request #14109 from rohitwaghchaure/asset_adjustment_fixes
[Fix] Asset adjustment issues
2018-05-17 11:23:26 +05:30
Rohit Waghchaure
992fb34c95 [Fix] Asset adjustment issues 2018-05-17 11:22:59 +05:30
Ranjith
fcfb5a3769 Merge remote-tracking branch 'frappe/develop' into develop 2018-05-17 10:07:23 +05:30
Ranjith
58363e6bbd get_payroll_period return name, fix hard coded leave period 2018-05-17 10:00:33 +05:30
Zlash65
e3f7e8b101 typo in frappe.throw in employee_transfer 2018-05-17 01:34:35 +05:30
rohitwaghchaure
de6ce587d0 Merge pull request #14104 from rohitwaghchaure/asset_wrong_account_linking_issue
Allow to select Asset Received But Not Billed in expense account head
2018-05-17 00:24:46 +05:30
Rohit Waghchaure
585945e65d Allow to select Asset Received But Not Billed in expense account head 2018-05-17 00:23:27 +05:30
rohitwaghchaure
e8ef69ec33 Merge pull request #14103 from rohitwaghchaure/asset_validation_issue_for_multiple_qty
[Fix] Validation issue
2018-05-16 23:58:09 +05:30
Rohit Waghchaure
2868840e6b [Fix] Validation issue 2018-05-16 23:57:28 +05:30
rohitwaghchaure
627c0a3acb Merge pull request #14102 from rohitwaghchaure/company_not_found_issue_v11
[Fix] Company mandatory issue
2018-05-16 23:32:33 +05:30
Rohit Waghchaure
44fda65b1d [Fix] Company mandatory issue 2018-05-16 23:31:09 +05:30
Ranjith
31eeff00f7 merge frappe/develop 2018-05-16 23:24:34 +05:30
rohitwaghchaure
39223e0341 Merge pull request #14100 from rohitwaghchaure/tds_issue
[Fix] TDS issue
2018-05-16 23:13:41 +05:30
Rohit Waghchaure
a91765707a [Fix] TDS issue 2018-05-16 23:13:02 +05:30
Ranjith
b485b1ef80 Salary Slip calc tax, except for flexi benefits 2018-05-16 23:01:40 +05:30
Ranjith
c6b2575a9c fields in salary detail, copy data from salary component on change 2018-05-16 22:59:21 +05:30
rohitwaghchaure
274f890246 Merge pull request #14099 from rohitwaghchaure/fixed_asset_date
Multiple fixes in asset
2018-05-16 22:13:15 +05:30
Rohit Waghchaure
e6acd4c57a Multiple fixes in asset 2018-05-16 22:12:39 +05:30
rohitwaghchaure
64e81b436e Merge pull request #14098 from rohitwaghchaure/minor_button_not_showing
[Fix] Custom buttons not showing
2018-05-16 21:45:12 +05:30
Rohit Waghchaure
976af6b422 [Fix] Cystom buttons not showing 2018-05-16 21:43:16 +05:30
rohitwaghchaure
660ca9b6c0 Merge pull request #14097 from rohitwaghchaure/purchase_invoice_gl_entry_issue
[Fix] Gl Enrty issue
2018-05-16 21:34:44 +05:30
Rohit Waghchaure
1a328d02d2 [Fix] Gl Enrty issue 2018-05-16 21:34:06 +05:30
rohitwaghchaure
513cd189f0 Merge pull request #14095 from rohitwaghchaure/leave_application_issue_v11
[Fix] onload set default employee, leave approver, company
2018-05-16 19:57:09 +05:30
Rohit Waghchaure
8e4f676c8c [Fix] onload set default employee, leave approver, company 2018-05-16 19:55:52 +05:30
Jamsheer
8b86d18f73 Remove unused imports 2018-05-16 19:50:30 +05:30
Jamsheer
3434aabc28 Employee Benefit Claim in Salary Slip 2018-05-16 19:50:30 +05:30
Jamsheer
3abae9c1ba Employee Benefit Application - whitlist method get_max_benefits 2018-05-16 19:50:30 +05:30
Jamsheer
3e64297a3d Employee Benefit Application - validate maximun benefit 2018-05-16 19:50:30 +05:30
Jamsheer
3cd0ad4c98 Codacy fixes 2018-05-16 19:50:30 +05:30
Jamsheer
c9287b5b88 Manage grouping of salary component for flexible benefit 2018-05-16 19:50:30 +05:30
Jamsheer
6410022cab minor fixes 2018-05-16 19:49:39 +05:30
Jamsheer
c678d037e7 Salary slip - throw if no default flexi component 2018-05-16 19:49:39 +05:30
Jamsheer
5f6e274505 Salary slip - default flexi component 2018-05-16 19:49:39 +05:30
Jamsheer
43740a6511 Employee Benefit Application - employee benefit in salary slip 2018-05-16 19:49:39 +05:30
Jamsheer
0bc665c0a5 Salary Copmonent - Default flexible componnent 2018-05-16 19:49:39 +05:30
Jamsheer
15613e46ad Salary Copmonent - Defualt flexible componnent 2018-05-16 19:48:47 +05:30
Jamsheer
d63c39a514 Payroll Period - get payroll period days 2018-05-16 19:47:18 +05:30
Jamsheer
d66fb842c1 Employee Benefit Application - validate max benefit for employee 2018-05-16 19:47:18 +05:30
Jamsheer
2d6901d5dc Employee Benefit Application - validate max benefit amount for component 2018-05-16 19:47:18 +05:30
Jamsheer
9cb2fc2766 Employee Benefit Application - calcluate benefit amount 2018-05-16 19:47:18 +05:30
Jamsheer
d48998bae1 Employee Benefit Application - Calculate benefit amounts 2018-05-16 19:47:18 +05:30
Jamsheer
779f8ebbb3 Employee Benefit Application - get max benefit 2018-05-16 19:47:18 +05:30
Jamsheer
41616de9cc Employee Benefit Application - validate duplicate 2018-05-16 19:47:18 +05:30
Jamsheer
9cd292b187 Employee Benefit Application - filter updated 2018-05-16 19:47:18 +05:30
Jamsheer
4d93d339f7 Employee benefit - filters fro earning component 2018-05-16 19:47:18 +05:30
Ranjith
29e0ed3da1 Exemption Declaration - field total_amount 2018-05-16 19:10:35 +05:30
Manas Solanki
df0ffab16c Merge pull request #14093 from manassolanki/poc-fixes-1
[ui] more fields in the list view of assets
2018-05-16 18:25:37 +05:30
Manas Solanki
f3f1ba37b9 [ui] more fields in the list view of assets 2018-05-16 18:24:35 +05:30
rohitwaghchaure
4ea97c84ac Merge pull request #14092 from rohitwaghchaure/enterprise_develop_asset_fixes_for_perpetual
[Fix] Asset gl entry not creating for non perpetual
2018-05-16 18:21:20 +05:30
Rohit Waghchaure
421697250b [Fix] Asset gl entry not creating for non perpetual 2018-05-16 18:20:52 +05:30
Manas Solanki
2684593af0 Merge pull request #14091 from manassolanki/poc-fixes-1
Added the travel request on the config page
2018-05-16 18:10:57 +05:30
Manas Solanki
5b34c00ba6 Added the travel request on the config page 2018-05-16 18:09:43 +05:30
Manas Solanki
fa57cdd86d Merge pull request #14090 from manassolanki/poc-fixes
create item default on making of invoice
2018-05-16 17:46:53 +05:30
Manas Solanki
5b93562ce3 create default on making of invoice 2018-05-16 17:44:51 +05:30
rohitwaghchaure
19a2260ce7 Merge pull request #14089 from shreyashah115/fixes
[Fix] General Ledger report filters error
2018-05-16 17:41:19 +05:30
Shreya
63d14cfac8 Instead of throwing error, just return 2018-05-16 17:30:58 +05:30
Shreya
df9516e906 Add Finance Book to route options 2018-05-16 17:30:35 +05:30
Manas Solanki
efae732370 Merge pull request #14088 from manassolanki/item-fixes
more fixes for the item defaults
2018-05-16 17:16:25 +05:30
Manas Solanki
e3bb1d0e3b more fixes for the item defaults 2018-05-16 17:14:59 +05:30
rohitwaghchaure
64076730a1 Merge pull request #14087 from manassolanki/item-fixes
return defaults according to the company
2018-05-16 17:02:32 +05:30
Manas Solanki
38667ab8da return defaults according to the company 2018-05-16 17:00:05 +05:30
rohitwaghchaure
adc5b128b6 Merge pull request #14086 from rohitwaghchaure/multiple_fixes
Multiple fixes
2018-05-16 16:42:25 +05:30
Rohit Waghchaure
b233e9d643 [Fix] Multiple fixes 2018-05-16 16:41:34 +05:30
Manas Solanki
028e2ad246 Merge pull request #14083 from frappe/codingCoffee-patch-3
spaces to tabs
2018-05-16 16:25:25 +05:30
rohitwaghchaure
de796266f2 Merge pull request #14084 from shreyashah115/fixes
[minor] Fix error
2018-05-16 16:21:14 +05:30
rohitwaghchaure
9c0a87e804 Merge pull request #14082 from manassolanki/item-fixes
[fixes] fix in the item defaults
2018-05-16 16:19:39 +05:30
Manas Solanki
e3910fb2a6 [fixes] fix in the item defaults 2018-05-16 16:16:34 +05:30
Shreya
fda15702bc Fix error 2018-05-16 16:14:34 +05:30
Ameya Shenoy
6e92958578 spaces to tabs 2018-05-16 16:11:20 +05:30
rohitwaghchaure
a7559be5b2 Merge pull request #14080 from rohitwaghchaure/po_pi_issue
[Fix] 'PurchaseInvoiceItem' object has no attribute 'company'
2018-05-16 15:42:53 +05:30
Rohit Waghchaure
23942701f1 [Fix] 'PurchaseInvoiceItem' object has no attribute 'company' 2018-05-16 15:41:00 +05:30
Manas Solanki
8e184569a1 Update item.json 2018-05-16 15:11:52 +05:30
rohitwaghchaure
9122f19e69 Merge pull request #14079 from saurabh6790/TDS_sprint
[fix] calculate withholding only on invoice
2018-05-16 15:01:46 +05:30
Saurabh
3c204122cd [fix] calculate withholding only on invoice 2018-05-16 15:00:19 +05:30
Manas Solanki
4534df36a9 Merge pull request #14078 from manassolanki/pos-fix
[enterprise] minor fixes
2018-05-16 14:53:21 +05:30
Manas Solanki
4256a34220 [enterprise] minor fixes
make the employee name mandatory in the employee onboarding
added the retention bonus amount
2018-05-16 14:51:25 +05:30
Manas Solanki
9b53b93e37 Merge pull request #14077 from manassolanki/travel-request
[rename] Photo ID -> Identification Document
2018-05-16 14:13:13 +05:30
Manas Solanki
6eb7f346bd [rename] Photo ID -> Identification Document 2018-05-16 14:12:22 +05:30
rohitwaghchaure
9ad0ac9557 Merge pull request #14068 from manassolanki/travel-request
[feature] added travel request doctype in HR
2018-05-16 14:05:26 +05:30
rohitwaghchaure
eff678d2d6 Merge pull request #13918 from manassolanki/item-level-defualts
[enhancement] add the item defaults in the child-table for multi-company
2018-05-16 14:04:47 +05:30
Suraj Shetty
fbb6b3da5f Undo replace of frappe.db.sql with frappe.get_list (#14074) 2018-05-16 13:53:31 +05:30
lasalesi
265005d30d apply sorting for make multiple variant attributes (#14073) 2018-05-16 13:10:25 +05:30
Ranjith Kurungadam
cdd4704485 Fixes, fields in Salary Component (#14071)
* remove duplicate fields

* Salary Component - fields is_tax_applicable, is_payable

* fix intendation
2018-05-16 13:10:08 +05:30
Rushabh Mehta
e07b332514 fix for tests 2018-05-16 13:05:13 +05:30
Manas Solanki
64614374d8 fix codacy 2018-05-16 13:00:56 +05:30
Manas Solanki
bbd8508783 optimize the patch 2018-05-16 13:00:56 +05:30
Manas Solanki
b16a4ec79e changes for the default cost center 2018-05-16 13:00:56 +05:30
Rushabh Mehta
0b628386de [minor] remove in_dialog old property 2018-05-16 12:51:22 +05:30
Manas Solanki
087a2259d9 update for default warehouse 2018-05-16 12:44:07 +05:30
Manas Solanki
c760222a6c add the item defaults in the childtable for multicompany 2018-05-16 12:44:06 +05:30
rohitwaghchaure
778841f399 Merge pull request #14072 from rohitwaghchaure/on_hold_issue
[Fix] 'Supplier' object has no attribute 'on_hold'
2018-05-16 12:26:33 +05:30
Rohit Waghchaure
909069fa20 [Fix] 'Supplier' object has no attribute 'on_hold' 2018-05-16 12:25:51 +05:30
rohitwaghchaure
b13a4480db Merge pull request #14070 from rohitwaghchaure/budget_validation_project_condition
Added project condition in budget validation
2018-05-16 12:19:31 +05:30
Ranjith
4bbf705e58 fix intendation 2018-05-16 12:17:57 +05:30
Ranjith
db120fb0bc Salary Component - fields is_tax_applicable, is_payable 2018-05-16 12:17:16 +05:30
Rohit Waghchaure
144e9b178a Added project condition in budget validation 2018-05-16 12:15:57 +05:30
Ranjith
447f0e495a remove duplicate fields 2018-05-16 12:13:46 +05:30
Rushabh Mehta
b56f3d0689 [fix] syntax errors 2018-05-16 12:03:39 +05:30
Saurabh
d60c0f2292 Refactor shopify (#13588)
* move shopify settings to ERPNext

* [fix] setup webhook for order and validate webhook request

* validate webhook request

* sync customer and item if not exists while syncing order from shopify

* pull item from shopify and minor fixes

* fix method naming, mechanisim to register and withdraw webhooks, patch

* minor fix

* minor fixes

* [Patch][fix] use remove_from_installed_apps instead of remove app

* log exceptions

* add shopify logging for failed requests

* minor fixes

* fix test case

* codecy fixes

* check shared secret exists

* Test Case fixes

* UX fixes and patch fixes

* Documentation

* fixes

* [fix] dump webhooks request data into doctype

* Provision to resync the order if error occured in sync

* [fix] set default host
2018-05-16 11:33:47 +05:30
tundebabzy
ad08d4ce96 Ability to hold payment for disputed invoices #12048 (#13298)
* add new fields to Supplier Master:
- on_hold: To signal the Customer is blocked from completing certain transactions
- hold_type: 3 options - All, invoices and payments

* sanitize `on_hold` field input

* show hold status in list view

* add `release_date` field to Supplier Master:
- specifies the date when transaction restraint will be removed

* reset release date if supplier is not on hold

* add validation to stop transactions when Supplier is blocked

* add test cases

* return empty list for outstanding references if supplier is blocked

* block make button:payment if supplier is blocked

* adjust test cases

* PEP 8 clean up

* more tests

* adds new fields to Purchase Invoice:
- release_date: once set, invoice will be on hold until set date
- hold_comment: so user can add comment pertaining to why invoice is on hold

* implement individual purchase invoice on hold logic

* allow user to change release date

* update manual

* final cleanup including more validation and tests

* update supplier manual

* make default for release_date argument todays date

* remove Auto Repeat added by mistake

* add on_hold_field to purchase invoice

* add 'On Hold' or 'Temporarily on Hold' status for purchase invoice in list view

* implement explicit payment hold in purchase invoice

* update manual

* add dialog for saving comment

* bug fix, refactor, clean up

* more test cases
2018-05-16 11:31:41 +05:30
Shreya Shah
1906cadd94 [Fix] Currency field in Pricing rule (#14004)
* some minor changes

* Set query for price list based on currency

* Validate Price list with currency
2018-05-16 11:20:30 +05:30
rohitwaghchaure
557f40465b Merge pull request #14067 from shreyashah115/fixes
[minor] Fix typo
2018-05-16 11:12:11 +05:30
rohitwaghchaure
e48b47fc0c Production Plan, do not consider the sales orders against which work order has been created (#13800)
* Production Plan, do not consider the sales orders against which work order has been created

* Added test cases
2018-05-16 11:07:55 +05:30
Shreya
2a1bcf285b [minor] Fix typo 2018-05-16 11:06:02 +05:30
Manas Solanki
d11b5d398d [feature] added travel request doctype in HR 2018-05-16 11:02:28 +05:30
rohitwaghchaure
e8358f33a3 Refactor party type (#13831) 2018-05-16 11:02:26 +05:30
Doridel Cahanap
e42192bb6c [WIP] Alternative items (#13705)
* Alternative Items in BOM

* Alternative Items in Work Order
2018-05-16 10:58:39 +05:30
Jamsheer
0cde6ae3c5 Clinical procedure (#13540)
* Clinical Procesdure Template and Clinical Procedure Doctype

* Consultation - Create procedure and procedure prescription

* Patient Appointment - Create Procedure and Procedure appointment invoice

* Physician Schedule - Validate slot overlap

* Clinical Procedure Item - batch_no for Clinical Procedure not for Template

* Clinical Procedure - manage item batch_no

* Codacy - fixes

* Yet another Codacy and travic-ci fix

* Codacy - fixes

* Clinical Procedure - Codacy fix

* Permissions updated

* fixed Qty Indicators, Minor fixes

* Patient appointment for procedure prescription

* Doctype Patient Service Unit to Healthcare Service Unit

* Add healthcare service unit tree root

* Healthcare Service Unit - Tree view script

* Healthcare Service Unit - allow appointments check

* Clinical Procedure - remove unused variable

* Clinical Procedure - Get actual quantity from ledger - fix

* Clinical Procedure - apply transilation for message

* Warehouse in Healthcare Service Unit

* Service Unit in Clinical Procedure

* Codacy fix

* Missing semicolon
2018-05-16 10:54:00 +05:30
Rushabh Mehta
bc5c04f438 Update job_offer.js
cur_frm is deprecated
2018-05-16 10:51:15 +05:30
rohitwaghchaure
915877553a Merge pull request #14066 from rohitwaghchaure/minor_asset_fix
[Minor] Is fixed asset checkbox not set at server side if duplicate
2018-05-16 10:49:52 +05:30
Rohit Waghchaure
a02640e249 [Minor] Is fixed asset checkbox not set at server side if duplicate 2018-05-16 10:49:12 +05:30
Frappe PR Bot
b2a64d6344 [Translation] Updated Translations (#14021) 2018-05-16 10:46:11 +05:30
Charles-Henri Decultot
471dea0d10 Digest translation improvement (#14026) 2018-05-16 10:45:03 +05:30
Suraj Shetty
8501010f12 Replace frappe.db.sql to frappe.get_list to apply permissions (#14037)
* Replace frappe.db.sql to frappe.get_list to apply permission
- All get_children method had frappe.db.sql in them which
had no permission check, now its replaced with frappe.get_list
which will check permission based on the user.

* Fix codacy
- Remove trailing whitespace
2018-05-16 10:44:38 +05:30
Shreya Shah
11f3e8155b Import nowdate (#14064) 2018-05-16 10:42:09 +05:30
rohitwaghchaure
b749acf3fb Merge pull request #14063 from rohitwaghchaure/leaves_encashed_code_cleanup
[Fix] Issue, local variable 'leaves_encashed' referenced before assignment
2018-05-16 09:41:00 +05:30
Rohit Waghchaure
d3e84a6944 [Fix] Issue, local variable 'leaves_encashed' referenced before assignment 2018-05-16 09:39:44 +05:30
rohitwaghchaure
4671c53eb0 Merge pull request #14056 from ESS-LLP/retention_bonus
Retention bonus
2018-05-15 22:27:04 +05:30
rohitwaghchaure
29517c10af Merge pull request #14057 from ESS-LLP/enterprise_fix
Additional Salary Component - naming and date fix
2018-05-15 22:26:45 +05:30
rohitwaghchaure
41b457076d Merge branch 'develop' into enterprise_fix 2018-05-15 22:26:11 +05:30
rohitwaghchaure
043aae7293 Merge pull request #14058 from ESS-LLP/encashment
Leave Encashment
2018-05-15 22:24:52 +05:30
rohitwaghchaure
f9fa588ddc Merge pull request #14061 from rohitwaghchaure/budget_validation_enhance_in_mr_po
[Enhance] Budget validation on material request, purchase order
2018-05-15 22:18:17 +05:30
Rohit Waghchaure
4d4fb6dcbc [Enhance] Budget validation on material request, purchase order 2018-05-15 22:12:44 +05:30
Ranjith
d43e068a5b fix Leave Encashment unlink additional component, readonly encashed days 2018-05-15 20:11:30 +05:30
Ranjith
c60c6981a5 Merge remote-tracking branch 'frappe/develop' into encash 2018-05-15 20:00:26 +05:30
Jamsheer
3beeb7255f Compensatory Leave Request - add link to leave allocation 2018-05-15 19:42:27 +05:30
Jamsheer
ebb68afecb Leave Allocation - remove link to compensatory leave request 2018-05-15 19:41:25 +05:30
Jamsheer
a46ce11af9 Additional Salary Component - naming and date fix 2018-05-15 19:20:51 +05:30
Ranjith
819c3b1bf6 Retention Bonus - menu, validate 2018-05-15 19:17:31 +05:30
Ranjith
7d394c14ce Email Alert for Retention Bonus 2018-05-15 19:15:58 +05:30
Manas Solanki
120b393cf5 Merge pull request #14055 from frappe/manassolanki-patch-6
Update utils.py
2018-05-15 18:52:50 +05:30
Manas Solanki
70899f5a60 Update utils.py 2018-05-15 18:52:14 +05:30
anoop
bb629de49b doctype retention bonus 2018-05-15 18:41:46 +05:30
rohitwaghchaure
02f0bcdbd9 Merge pull request #14053 from Zlash65/fix-dept
[Minor] Remove unused module import
2018-05-15 18:29:13 +05:30
Zlash65
b8bd6644fd remove unused module import and error classes 2018-05-15 18:23:41 +05:30
anoop
504855e1a0 on submit: create additional salary component, revert on cancel 2018-05-15 18:11:49 +05:30
rohitwaghchaure
0e47837dab Merge pull request #14051 from shreyashah115/min-fix
[Fix] Supplier Doctype
2018-05-15 17:55:32 +05:30
rohitwaghchaure
c3b9eabe5e Merge pull request #14048 from shreyashah115/exchange-rate
[Enhancement] Buying and Selling checkboxes in Currency Exchange
2018-05-15 17:55:09 +05:30
Shreya
acc4ceceb7 Add Patch to update existing records 2018-05-15 17:54:10 +05:30
Shreya
da5163da2f Fix Supplier Doctype 2018-05-15 17:43:50 +05:30
rohitwaghchaure
ec54cb1810 Merge pull request #14050 from Zlash65/fix-dept
[Minor] Account_type dropdown was hard coded in tree's quick entry
2018-05-15 17:39:37 +05:30
Zlash65
36cb8fb153 removed hard coded account_type from tree's add_child entry 2018-05-15 17:36:01 +05:30
Shreya
3f77852e93 Pass buying or selling as filter parameters
Wherever get_exchange_rate is called, pass filter buying or selling on the basis of doctype.
2018-05-15 17:22:06 +05:30
Shreya
b547cdd8fa Add buying or selling to filters in get_exchange_rate 2018-05-15 16:58:45 +05:30
Ranjith
4c721cbe0f Leave Encashment - submit, cancel Additional Salary Component 2018-05-15 16:39:20 +05:30
rohitwaghchaure
c0b15cf41a Merge pull request #14041 from manassolanki/deferred-account
Deferred account
2018-05-15 16:31:05 +05:30
rohitwaghchaure
9a0aea8abc Merge pull request #14046 from shreyashah115/min-fix
[Minor] Fixes for Customer DocType
2018-05-15 16:30:46 +05:30
rohitwaghchaure
9cf250ccba Merge pull request #14047 from rohitwaghchaure/enterprise_s_minor_changes
HR Fixes
2018-05-15 16:30:18 +05:30
Rohit Waghchaure
e0b515066e [Fix] Employee mandatory validation issue 2018-05-15 16:18:05 +05:30
Shreya
8e386167b8 Set Mandatory from client-side 2018-05-15 16:09:53 +05:30
Rohit Waghchaure
e2a7f86636 Navigation added for Employee Separation, Onboarding 2018-05-15 16:04:39 +05:30
Shreya
f636503dc1 [minor] Fix customer doctype 2018-05-15 15:57:27 +05:30
rohitwaghchaure
6bcf48a70e Merge pull request #14043 from Zlash65/fix-dept
[Minor] Remove duplicate from HR config file
2018-05-15 15:28:16 +05:30
rohitwaghchaure
66ece67d41 Merge pull request #14044 from shreyashah115/fix-promotion-doc
[Fix] Updation of new values in Employee Property History
2018-05-15 15:27:16 +05:30
Manas Solanki
2f4e5ee2c2 Update hooks.py 2018-05-15 15:25:14 +05:30
Zlash65
44146e0cda remove duplicates 2018-05-15 15:21:49 +05:30
Manas Solanki
1879f08c7c Merge branch 'develop' into deferred-account 2018-05-15 15:20:44 +05:30
Shreya
14069c9395 Fix updation of new values
While changing the property of an employee, if the new value is selected from the available values in the link field, it worked properly but on creation of a new linked field value, the new value didn't get updated in the child table.
2018-05-15 15:19:24 +05:30
Saurabh
ac2692711b Merge branch 'master' into develop 2018-05-15 14:59:38 +05:30
Manas Solanki
183dc731c2 Update employee_onboarding.py 2018-05-15 14:32:37 +05:30
rohitwaghchaure
6cf8a6c5f7 Merge pull request #14040 from Zlash65/fix-dept
[Minor] Department tree fixes
2018-05-15 14:05:15 +05:30
Zlash65
7f5ebbe494 call post company fixture after setting up company 2018-05-15 13:53:40 +05:30
Zlash65
667f846bdb bifurcate data into pre & post company fixtures 2018-05-15 13:53:40 +05:30
Zlash65
99e72af089 skip abbr, reload doc, disable edit for root department node' 2018-05-15 13:53:40 +05:30
Manas Solanki
0b7f64924d booking via the schedular 2018-05-15 13:04:01 +05:30
Manas Solanki
0393848f60 deferred account in the item and company master 2018-05-15 13:04:01 +05:30
Saurabh
62a59301ef [fix] resolved merge conflicts 2018-05-15 13:02:40 +05:30
Shreya
0db85067b2 Add For Buying and For Selling checkboxes in Currency Exchange 2018-05-15 12:48:10 +05:30
rohitwaghchaure
686d5f219e Merge pull request #14039 from rohitwaghchaure/code_clanup_hr
Code cleaup
2018-05-15 12:47:33 +05:30
Rohit Waghchaure
4a126947f5 Code cleaup 2018-05-15 12:43:21 +05:30
anoop
6119b7337c updated get_leave_balance_on to consider encashed leaves by default. 2018-05-15 12:36:43 +05:30
anoop
1e1b7fc74f 13615 - Leave Encashment, creating Additional Salary Component on submit and validations pending 2018-05-15 12:36:43 +05:30
anoop
0780fd1e0b helper method to get employees assigned salary structure 2018-05-15 12:36:42 +05:30
anoop
161b3b2979 added field Total Leaves Encashed 2018-05-15 12:35:51 +05:30
anoop
067b5574ce duplicate field is_encash removed, fixed in install fixtures 2018-05-15 12:27:23 +05:30
Saurabh
12f708d155 Merge pull request #14035 from saurabh6790/v11_patch_fix
[fix] reload Leave Period and Staffing Plan doctypes
2018-05-15 10:49:53 +05:30
rohitwaghchaure
ae41e5ffae Merge pull request #14036 from rohitwaghchaure/hcl_leave_application_issue
[Fix] Global name 'Approved' is not defined
2018-05-15 10:44:14 +05:30
Rohit Waghchaure
3f02820384 [Fix] Global name 'Approved' is not defined 2018-05-15 10:30:06 +05:30
Saurabh
d217fbaa45 [fix] reload Leave Period and Staffing Plan doctypes 2018-05-15 08:35:25 +05:30
Saurabh
ff85c49330 Merge pull request #14030 from saurabh6790/field_fixes
remove duplicate fields occurred due to merge conflicts
2018-05-14 22:14:17 +05:30
Saurabh
99400bd958 remove duplicate fields occured due to merge conflicts 2018-05-14 22:11:17 +05:30
rohitwaghchaure
4f2e39cd09 Merge pull request #14028 from rohitwaghchaure/get_approved_leaves_for_period_issue
[Fix] get_approved_leaves_for_period module import failed
2018-05-14 21:39:09 +05:30
Rohit Waghchaure
9ba72f7897 [Fix] get_approved_leaves_for_period module import failed 2018-05-14 21:37:55 +05:30
Saurabh
2ca83d61ea Resolve merge conflicts from enterprise_sprint branch 2018-05-14 21:15:46 +05:30
Saurabh
8b04d431c0 Merge pull request #13951 from ESS-LLP/jam_enterprise_sprint
Attendance Request, Leave Period, Compensatory Leave Request, Leave Policy
2018-05-14 20:57:55 +05:30
Saurabh
1f1dd96f57 Merge branch 'enterprise_sprint' into jam_enterprise_sprint 2018-05-14 20:57:40 +05:30
rohitwaghchaure
451bc04d4c Merge pull request #13982 from ESS-LLP/tax_exemption
Employee Tax Exemption Declaration, Proof Submission
2018-05-14 20:47:51 +05:30
rohitwaghchaure
3f0c735e53 Merge branch 'enterprise_sprint' into tax_exemption 2018-05-14 20:47:35 +05:30
rohitwaghchaure
2b8fc49205 Merge pull request #14027 from saurabh6790/TDS_sprint
Tds sprint
2018-05-14 20:43:33 +05:30
Saurabh
4ae089d6a1 Provision to deduct TDS on Advance 2018-05-14 20:42:08 +05:30
Saurabh
f3f438ad18 tds fixed for PI 2018-05-14 20:42:08 +05:30
Saurabh
b9d3385fec calculate TDS on Sales Invoice Amount 2018-05-14 20:42:08 +05:30
Saurabh
3b4a6be4d0 Supplier Tax Withholding Config 2018-05-14 20:42:08 +05:30
Saurabh
2d8a7ee81f Bootstrap 'TDS' via fixture 2018-05-14 20:41:38 +05:30
rohitwaghchaure
d9faba962b Merge pull request #13746 from Zlash65/supplier-group
[Enhance] Rename Supplier Type to Supplier Group - tree structure implemented
2018-05-14 20:40:30 +05:30
rohitwaghchaure
7c6bef4905 Merge branch 'enterprise_sprint' into supplier-group 2018-05-14 20:39:01 +05:30
rohitwaghchaure
8137f0402a Merge pull request #13984 from manassolanki/employee-boarding
[feature] added the employee onboarding and separation doctype
2018-05-14 20:35:49 +05:30
Manas Solanki
094e1841e0 minor changes and fixed the conflicts 2018-05-14 20:33:28 +05:30
rohitwaghchaure
67da5f7671 Merge pull request #14023 from mntechnique/accounting_period
Accounting Period
2018-05-14 20:33:09 +05:30
rohitwaghchaure
3282191aae Merge pull request #14025 from shreyashah115/html-table
Show pending leaves as an HTML table in leave application
2018-05-14 20:32:26 +05:30
Manas Solanki
b698846c30 [feature] added the employee onboarding and separation doctype 2018-05-14 20:27:00 +05:30
rohitwaghchaure
48199842aa Merge pull request #13750 from rohitwaghchaure/asset_purchase_link
Asset linked to purchase and serial no
2018-05-14 20:24:37 +05:30
rohitwaghchaure
8d626e6888 Merge pull request #14024 from ESS-LLP/jam_additional_sal_comp
Additional Salary Component
2018-05-14 20:24:10 +05:30
Shreya
4bd5583e11 Make Available Leave HTML Table 2018-05-14 19:32:59 +05:30
Jamsheer
75c53e5022 Fix - missing semicolon 2018-05-14 19:17:16 +05:30
Rohit Waghchaure
d644e6da16 Code cleanup 2018-05-14 19:09:44 +05:30
Rohit Waghchaure
11679884e4 Patch to move asset fields to Asset Finance Book table 2018-05-14 19:08:57 +05:30
Rohit Waghchaure
352df95976 Patch to make location 2018-05-14 19:08:56 +05:30
Rohit Waghchaure
16bc853f6a Reschedule for future depreciations and booked difference amount in accumulated depreciation account 2018-05-14 19:07:40 +05:30
Rohit Waghchaure
aa7b434270 Create asset adjustment doctype, post gl entry for the asset 2018-05-14 19:07:40 +05:30
Rohit Waghchaure
0ea6fe4397 Added new doctype Finance Book Detail in asset, asset category 2018-05-14 19:07:40 +05:30
Rohit Waghchaure
f2684ae83a Commonify get_asset_category_account and get_fixed_asset_account method 2018-05-14 19:07:40 +05:30
Rohit Waghchaure
f41e1ed191 Added default asset accounts in COA, CWIP account in asset category 2018-05-14 19:07:40 +05:30
Rohit Waghchaure
255cd44aba Treeview for Location 2018-05-14 19:07:39 +05:30
Rohit Waghchaure
af05995418 Asset accounting 2018-05-14 19:07:39 +05:30
Rohit Waghchaure
c6deb13fb4 Added account fields in the company, fixes in auto creation of the asset from PR 2018-05-14 19:07:39 +05:30
Rohit Waghchaure
ab84254188 Asset linked to purchase receipt and serial no 2018-05-14 19:07:39 +05:30
Jamsheer
47039e801e Remove unused import 2018-05-14 18:54:10 +05:30
Jamsheer
70a998d428 Remove unused variable 2018-05-14 18:51:04 +05:30
rohitwaghchaure
17aec2d16c Merge pull request #13808 from mntechnique/cost-center-number
Cost center number
2018-05-14 18:35:38 +05:30
Jamsheer
f5e67213fd Attendance Request - half day check is enabled 2018-05-14 18:34:34 +05:30
rohitwaghchaure
044d6908cf Merge pull request #13564 from sathishpy/develop
Bank Statement Import
2018-05-14 18:27:53 +05:30
rohitwaghchaure
3069943bce Merge pull request #13718 from Zlash65/enterprise
Department tree improv and moved Currency field up the list in Company
2018-05-14 18:26:37 +05:30
Gaurav Naik
21b2df41ac [Fix] len() instead of .length 2018-05-14 18:15:47 +05:30
Gaurav Naik
caaebb9d2a [WIP] Accounting Period Test cases 2018-05-14 18:11:09 +05:30
Jamsheer
ead858b4de Compensatory Leave Request - fix 2018-05-14 18:08:31 +05:30
Gaurav Naik
52571a80da Bootstrap documents for closing (js) 2018-05-14 18:06:50 +05:30
Gaurav Naik
2fe38c3ff5 Bootstrap documents for closing 2018-05-14 18:06:34 +05:30
Gaurav Naik
32b3aa257c [Fix] Indentation for accounting_period overlap 2018-05-14 18:02:24 +05:30
Jamsheer
b848c51592 Compensatory Leave Request - leave allocation create and update - fix 2018-05-14 17:56:22 +05:30
Zlash65
06fd51bf69 patch fix for instructor 2018-05-14 17:16:27 +05:30
Zlash65
d25a264e5b create and update department records patch 2018-05-14 16:07:28 +05:30
Zlash65
03ad0f2f4a set query for department based on company 2018-05-14 16:07:28 +05:30
Zlash65
9a8f5bd6c7 set department name with company abbr 2018-05-14 16:07:27 +05:30
Zlash65
39668609ce improv department tree 2018-05-14 16:07:27 +05:30
Zlash65
366ca92ba7 move default_currency on top 2018-05-14 16:07:27 +05:30
Zlash65
513f13df27 patch fix 2018-05-14 16:05:16 +05:30
rohitwaghchaure
c7ccd3ca2e Merge pull request #13985 from saurabh6790/leave_period_fix
add get leave period method
2018-05-14 15:47:15 +05:30
Zlash65
39097c7fbe codacy fix 2018-05-14 15:34:45 +05:30
Manas Solanki
661332dab5 [fix] honour the shopping cart setting when showing the stock and non-stock item (#13988) 2018-05-14 14:30:30 +05:30
Zarrar
8646ed45bc button triggers not working in tasks table (#13973) 2018-05-14 14:29:01 +05:30
Suraj Shetty
f93cc57e8a Ignore user permission for 'variant Of' in Item (#14013)
- Since mostly variant of is null it gets filtered out if
user permission is applied.
And since variant is a link to item itself there is no need to check
user permission for it as user permission gets applied on Item anyways.
2018-05-14 14:07:20 +05:30
Shreya Shah
ba6cb8ae4b [Healthcare] Fix UI (#14011)
* Fix UI

* Fix Calendar View
2018-05-14 14:06:31 +05:30
Faris Ansari
a7387b45ec [fix] Get items from BOM error in python 3 (#14012) 2018-05-14 14:05:52 +05:30
Jamsheer
236be22648 Payroll entry - get employee fix 2018-05-14 13:32:50 +05:30
Jamsheer
d0b0c87f40 get additional salary component in salary slip 2018-05-14 12:16:46 +05:30
Jamsheer
08b60a1a62 New Doctype - Additional Salary Component 2018-05-14 12:16:46 +05:30
Jamsheer
a5028c8e54 Salary Structure - filter updated, Salary Component - fields re-arranged 2018-05-14 12:16:45 +05:30
Jamsheer
b5c5c471b4 Formula on Salary Component Master 2018-05-14 12:16:45 +05:30
Jamsheer
4bd7cdb018 Salary Structure Assignment - filters applied 2018-05-14 12:13:47 +05:30
Manas Solanki
a27d29b349 enable deferred revenue in the item master 2018-05-14 12:07:14 +05:30
Zlash65
f665189ab3 tree based changes 2018-05-14 11:45:38 +05:30
Zlash65
93d6b555d7 added fixtures for supplier-group, changed analytics report accordingly 2018-05-14 11:45:38 +05:30
Zlash65
c88ce364ce treeview implemented for supplier group 2018-05-14 11:45:38 +05:30
Zlash65
540d7aa635 patch to reload_doc and rename field 2018-05-14 11:45:38 +05:30
Zlash65
2e0809801d controller and other changes 2018-05-14 11:45:38 +05:30
Zlash65
890707854d config/utility level changes 2018-05-14 11:45:38 +05:30
Zlash65
0a50554417 doctype level changes 2018-05-14 11:45:38 +05:30
Zlash65
4437a5ed18 json level changes 2018-05-14 11:45:38 +05:30
Zlash65
3387a35fed rename supplier-type to supplier-group 2018-05-14 11:42:30 +05:30
rohitwaghchaure
a8c49f26d3 Merge pull request #14002 from rohitwaghchaure/search_item_spelling_issue
Fixed spelling
2018-05-14 00:44:29 +05:30
Rohit Waghchaure
eee830eafe Fixed spelling 2018-05-13 16:17:18 +05:30
Saurabh
c1acbdfb69 [fix] overlapping dates 2018-05-12 17:45:39 +05:30
Saurabh
a35dad7610 add get leave period method 2018-05-12 17:45:39 +05:30
Jamsheer
46b23f8e6e Salary Structure Refactor, Formula on Salary Component Master (#13967)
* Salary structure refactor

* Salary Structure Assignment - filters applied

* Formula on Salary Component Master

* Salary Structure - filter updated, Salary Component - fields re-arranged

* Payroll Entry - get_employee_list fix

* Salary Structure Assignment - Validate Duplicate Assignment

* Salary Structure Assignment - filters for salary structure
2018-05-11 21:05:24 +05:30
Pawan Mehta
c53e35368d Shift Management - Documentation and Tests (#13997)
* [fix] #13996

* codacy fix
2018-05-11 21:03:50 +05:30
Gaurav Naik
9502476c67 Accounting Period overlap validation 2018-05-11 07:53:12 +05:30
Gaurav Naik
6c92cff226 Accounting Period autoname 2018-05-11 07:52:50 +05:30
Ranjith
ded636097e Tax Declaration, Proof Submission tests 2018-05-10 15:42:04 +05:30
Ranjith
5a8e6427f4 Tax Declaration, Proof Submission, validation 2018-05-10 15:06:49 +05:30
Ranjith
85d2d571c5 update hr menu, field subcategory in child table 2018-05-10 15:04:32 +05:30
Ranjith
e1c556b7e0 Doctype Employee Tax Exemption Sub Category 2018-05-10 15:02:57 +05:30
Ranjith
96121c598e Tax Declaration, Proof Submission, field company 2018-05-10 15:02:00 +05:30
rohitwaghchaure
fdb7156c0b Merge pull request #13979 from KanchanChauhan/driver-filter
[Minor] Show only active driver in Delivery Trip
2018-05-10 12:36:42 +05:30
Kanchan Chauhan
d560da950d [Minor] Show only active driver in Delivery Trip 2018-05-10 10:42:56 +05:30
Jamsheer
9032c9d91d Documentation - updated 2018-05-09 19:19:34 +05:30
Nabin Hait
56f0328bed Merge branch 'finance-book' into enterprise_sprint 2018-05-09 15:10:52 +05:30
Nabin Hait
b9fed2aa38 Removed company from Finance Book and related changes 2018-05-09 15:10:29 +05:30
Gaurav Naik
a78a0e241f Added finance book filtering logic to financial_statements.py 2018-05-09 15:03:40 +05:30
Gaurav Naik
8cbbdfdf30 Added finance book filter to financial_statements.js 2018-05-09 15:03:05 +05:30
Gaurav Naik
40559d5f5c Added finance book filter logic to ReceivablePayable 2018-05-09 15:02:55 +05:30
Gaurav Naik
70ac2d2c51 Added finance book filter in accounts_receivable.js 2018-05-09 15:02:23 +05:30
Gaurav Naik
cddda8ac5f Added finance book filter in accounts_payable.js 2018-05-09 15:02:11 +05:30
Gaurav Naik
57856b475c Added finance book filter logic in general_ledger.py 2018-05-09 14:58:15 +05:30
Gaurav Naik
460d96f16d Added finance book filter to General Ledger 2018-05-09 14:57:36 +05:30
Gaurav Naik
a6d3cbfbc5 Added finance book field to GL Entry doctype 2018-05-09 14:56:52 +05:30
Gaurav Naik
30f9e0f547 Set finance book in make_gl_entries 2018-05-09 14:56:39 +05:30
Gaurav Naik
a948726ddd Added Finance Book doctype 2018-05-09 14:53:51 +05:30
Manas Solanki
fbe548e4be [Enterprise] Bank Guarantee Enhancements (#13960) 2018-05-09 14:49:53 +05:30
Jamsheer
63a8f83076 Leaves - Documentation 2018-05-08 18:45:41 +05:30
Nabin Hait
2b16712c83 Merge branch 'ESS-LLP-staffing' into enterprise_sprint 2018-05-08 18:36:53 +05:30
Nabin Hait
3881e98000 Staffing plan for group company 2018-05-08 18:36:14 +05:30
Jamsheer
4573e6609f Leave Type - remove field is_parental_leave 2018-05-08 18:33:49 +05:30
Nabin Hait
b2800eeb2a Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2018-05-08 16:34:35 +05:30
Nabin Hait
9036b9ee85 Merge branch 'master' into develop 2018-05-08 16:31:42 +05:30
Nabin Hait
247bd94824 Merge branch 'staffing' of https://github.com/ESS-LLP/erpnext-healthcare into ESS-LLP-staffing 2018-05-08 16:30:18 +05:30
Zarrar
f2df7f32fa update subscription to auto_repeat across dashboards (#13956) 2018-05-08 16:06:36 +05:30
Nabin Hait
3e47fbb2f0 assign salary structure custom button 2018-05-08 16:05:04 +05:30
Jamsheer
bec950428c HR Utils - Trailing whitespace 2018-05-08 12:50:14 +05:30
Jamsheer
fe882bc68a Leave Application - Test - Leave allowed, applicable after, maximum continuos days 2018-05-08 12:36:51 +05:30
Jamsheer
3153734e7e Leave Application - validate applicable after for leave type 2018-05-08 12:36:51 +05:30
Jamsheer
62a93533fc Leave Policy - Validate Annual alloction for leave type 2018-05-08 12:36:51 +05:30
Jamsheer
d7bfa2303f Leave allocation - validate max leave allocation days for a leave type 2018-05-08 12:36:51 +05:30
Jamsheer
b42f3d41ab Compensatory Leave Request - Validate and Create leave allocation for compnsatory leave type 2018-05-08 12:36:51 +05:30
Jamsheer
b408b158dd Leave allocation - link to leave period and compensatory leave request 2018-05-08 12:35:40 +05:30
Jamsheer
8c4386f016 Leave Type - new field is_compensatory 2018-05-08 12:35:40 +05:30
Jamsheer
c7aaf0ba67 Leave Period - Validate and Create Leave Allocation 2018-05-08 12:35:40 +05:30
Jamsheer
0e2cc5574d HR Util methods 2018-05-08 12:35:40 +05:30
Jamsheer
9d857579af Attendance Request - validate and create attendance 2018-05-08 12:35:40 +05:30
Jamsheer
b41baa228c Attendance Request - link to company 2018-05-08 12:35:40 +05:30
Jamsheer
a9c82b6464 Attendance - link to attendance request 2018-05-08 12:35:40 +05:30
Shreya Shah
204c3bc37e Remove Production Planning Tool docs (#13946)
* Remove Production Planning Tool docs

* Remove Offer Letter Occurrences

* Rename Employee Loan Occurrences
2018-05-07 18:21:03 +05:30
bghayad
1184a7300a Adding Payments View for Fees (#13939)
* Adding View Payments For Fees

* Adding View Payments For Fees

* Adding Payments View For Fees
2018-05-07 18:20:37 +05:30
Nabin Hait
b7613af73c Merge branch 'enterprise_sprint' of https://github.com/frappe/erpnext into enterprise_sprint 2018-05-07 16:13:33 +05:30
Nabin Hait
be10cfed92 Merge branch 'shreyashah115-multi-company-transations' into enterprise_sprint 2018-05-07 16:12:23 +05:30
Nabin Hait
330fae8652 minor fixes 2018-05-07 16:11:35 +05:30
Shreya Shah
7bd83f3d8e Rename occurrences for Production Order to Work Order (#13944) 2018-05-07 15:27:21 +05:30
Ranjith
c36578e8d3 Job Opening - display vacancies only on staffing plan 2018-05-07 14:19:40 +05:30
Ranjith
f220e89d9f Job Opening - get planned opening, validate vacancies by Staffing Plan 2018-05-07 13:58:54 +05:30
Ranjith
e4cda0380a Staffing Plan - validations, get employee count on designation change, calc estimated cost 2018-05-07 13:54:49 +05:30
Nabin Hait
fdc67a577f Merge branch 'multi-company-transations' of https://github.com/shreyashah115/erpnext into shreyashah115-multi-company-transations 2018-05-07 13:12:16 +05:30
Ranjith Kurungadam
95c5c055f8 Optional leave (#13931)
* Optional Holiday - move holiday list from leave type to leave period

* Optional Leave - validate on Leave Application

* test Optional Leaves
2018-05-07 12:43:08 +05:30
Nabin Hait
420c140c48 Merge branch 'ESS-LLP-employee_promotion_transfer' into enterprise_sprint 2018-05-07 12:23:22 +05:30
Nabin Hait
d5220c0ff4 minor fix 2018-05-07 12:22:57 +05:30
Nabin Hait
01f5df72cc Merge branch 'employee_promotion_transfer' of https://github.com/ESS-LLP/erpnext-healthcare into ESS-LLP-employee_promotion_transfer 2018-05-07 11:55:52 +05:30
Rah Yuliantoro
b3882cacd9 update coa and company default (#13937)
* Update standard_chart_of_accounts.py

adding account for employee advances

* Update standard_chart_of_accounts_with_account_number.py

adding account for employee advances

* Update company.py

adding accounts for default fields in company doctypes

* Update company.py

Missing some default accounts for fields in company doctype
2018-05-07 11:39:35 +05:30
Nabin Hait
ba70ff0904 Exchange rate revaluation (#13932)
* Added account data on child table

* Added Journal Entry button and functionality

* Add docs

* Refactoring and cleanup of Exchange Rate Revaluation
2018-05-05 18:22:56 +05:30
Ranjith
86b81e99e5 codacy fixes 2018-05-05 16:49:51 +05:30
Nabin Hait
338e1b6e91 Merge branch 'master' into develop 2018-05-05 14:33:35 +05:30
Ranjith
9505ea93cf codacy fixes 2018-05-05 14:32:42 +05:30
Ranjith
715780b78b Employee Promotion, Transfer - documentation 2018-05-05 13:51:34 +05:30
Ranjith
a68a108234 Employee Promotion, Transfer - test submit before date, create new employee 2018-05-05 13:43:15 +05:30
Ranjith
56b58017d1 Employee Promotion, Transfer - validate, submit, cancel workflow 2018-05-05 13:41:48 +05:30
Ranjith
fddfffd3e6 Employee Promotion, Transfer - modal to add details to child table 2018-05-05 13:27:26 +05:30
Ranjith
ea60225760 Employee Promotion, Transfer - update child table, added fields 2018-05-05 13:25:46 +05:30
Nabin Hait
4bbe5fbefc Fixes related to auto repeat 2018-05-05 12:32:59 +05:30
Nabin Hait
abd0325acd Fixed merge conflict 2018-05-05 12:19:14 +05:30
mnaim-cloude8
c3b4464df8 Remove unnecessary field. 2018-05-04 22:06:35 +08:00
Shreya Shah
88aa3ec275 [Report] HSN-wise-summary of outward supplies (#13803)
* hsn wise summary report

* renamed

* added total amount column

* moved total amount column
2018-05-04 18:33:14 +05:30
Pawan Mehta
5e7b2eb338 Add Calendar View to Attendance doctype (#13919)
* [fix] #13917

* codacy fixes

* remove company

* add status

* fix date issue

* code optimizations

* change sql
2018-05-04 18:12:35 +05:30
creador30
dae8f1b353 Search for item_code (#13912)
Item query can be called from custom script to search for an additional field. In this case the item_name, item_group and item_description are still searchable, but not item_code. As the item code is a must have field in search results, I have added this to the non-changable search fields in this query.
2018-05-04 18:12:03 +05:30
Suraj Shetty
dcc90e3312 Add fix to support changes in user permission (#13923)
https://github.com/frappe/frappe/pull/5494
2018-05-04 17:52:57 +05:30
Shreya Shah
eec0209e3c Fetch mandatory reqd from server side (#13924) 2018-05-04 17:51:10 +05:30
KanchanChauhan
f4feedace4 Allow changing of Address after Submit (#13747) 2018-05-03 19:08:54 +05:30
Suraj Shetty
57fbebb630 Update user permission doc (#13695) 2018-05-03 19:07:07 +05:30
Suraj Shetty
00cced12a0 Success Action (#13666)
* success action config for  sales invoice

* remove "Notification Control" doctype and its usage

* add default success action after_install or while migration (patch)

* rename for_doctype to ref_doctype

* case change

* minor fix

* Remove unnecessary code

* Replace message with translatable message

* Fix 'cannot import error'
2018-05-03 19:06:32 +05:30
Shreya Shah
ecb9315ea1 Inter Company Journal Entry (#13683)
* rebase with enterprise_sprint

* Add Inter company account checkbox in Account master

* Add Inter Company Journal Entry Voucher Type in Journal Entry

* Make Inter Company Journal Entry button

* Dialog to select company for Inter Company Journal Entry

* Map relevant fields in the Inter Company Journal Entry and reference links

* Rebase

* Add Documentation
2018-05-03 19:04:36 +05:30
Zarrar
6f3594b2e4 [Enhance] GL Entry - ability to multiselect party (#13769)
* change dynamic link to multiselect field and improv

* print based fix

* refactor changes according to multiselect changes
2018-05-03 19:00:43 +05:30
rohitwaghchaure
1aa3a11546 On auto-creation of new Fiscal Year, send Email notification to the account users (#13789) 2018-05-03 18:59:26 +05:30
rohitwaghchaure
125c0caf12 Added brand in item price doctype, item prices report (#13900) 2018-05-03 16:23:57 +05:30
Shreya Shah
c4323cb6ba remove set query (#13908) 2018-05-03 16:19:56 +05:30
Shreya Shah
c10820e93e fix error (#13907) 2018-05-03 16:09:34 +05:30
mnaim-cloude8
e21ad0e641 Add printing details section for Job Offer. To fetch correct letter head for company selected at Job Offer. 2018-05-03 15:43:25 +08:00
Prateeksha Singh
a7c6ff8f3e Merge pull request #13837 from shreyashah115/serial-batch-linking
Serial No. and Batch No. linking
2018-05-02 15:11:19 +05:30
Saurabh
e85a43c1c6 Merge branch 'master' into develop 2018-05-02 14:48:10 +05:30
Shreya
27e4e244b6 fix codacy 2018-05-02 14:34:14 +05:30
Shreya
ae0b31c31d changes as per the reviews 2018-05-02 14:34:14 +05:30
Shreya
b47302dd52 unlink reference on cancellation of any invoice 2018-05-02 14:34:14 +05:30
Shreya
c804f424ab update reference fields on both invoices 2018-05-02 14:34:14 +05:30
Shreya
79584b1cbd validations to check price list and currencies 2018-05-02 14:34:14 +05:30
Shreya
99ae0439d7 mapping of relevant fields 2018-05-02 14:34:14 +05:30
Shreya
0bd987ab03 validations before routing to invoice 2018-05-02 14:34:14 +05:30
Shreya
ed80cf1f2e Inter company invoice reference link field 2018-05-02 14:34:14 +05:30
Shreya
30b2480cfe make inter company invoice button on Invoices 2018-05-02 14:34:14 +05:30
Shreya
462e18ad2e Allowed To Transact With child table in Customer & Supplier 2018-05-02 14:34:14 +05:30
Shreya
59512aaaaa Internal Supplier check in Supplier 2018-05-02 14:34:14 +05:30
Shreya
7946ca216e Internal Customer check in Customer 2018-05-02 14:34:14 +05:30
Nabin Hait
d2861df939 Renamed Health Insurance to Employee Health Insurance 2018-05-02 14:34:14 +05:30
Nabin Hait
43274de5df Removed employee table from Salary Structure and added employee name in all forms 2018-05-02 14:33:37 +05:30
Nabin Hait
e9ad03e23e Documents order in hr page 2018-05-02 14:31:27 +05:30
Nabin Hait
501a64becd Added links in HR module 2018-05-02 14:31:03 +05:30
Shreya Shah
24e8f31be1 [Enterprise] Patch and child table changes (#13656)
* [patch] rename field

* Employee Property History child table

* remove child tables
2018-05-02 14:29:44 +05:30
Nabin Hait
2f77ccce1b New doctypes for HR and Accounting (#13652) 2018-05-02 14:27:19 +05:30
Umair Sayed
cd00f8f458 Updated domain pages (only content) and added few new help pages. (#13835)
* domain pages update

* domain docs

* domain pages

* help and domain pages
2018-05-02 12:21:35 +05:30
rohitwaghchaure
0065624fe0 Tax amount showing under wrong tax header in the report (#13843) 2018-05-02 12:20:55 +05:30
Zarrar
284de4c15a updated modified time - reload issue in patch (#13881) 2018-05-02 12:14:59 +05:30
Prateeksha Singh
9f97c97e25 Merge pull request #13832 from shreyashah115/color-field
Ability to add colour to all calendar type views
2018-05-01 19:00:41 +05:30
Shreya
0456ced796 remove unused code 2018-05-01 19:00:06 +05:30
Shreya
eb54331d5f removed color field from sales order and work order 2018-05-01 18:56:06 +05:30
Shreya
fd47b92138 renamed color field 2018-05-01 18:55:17 +05:30
Shreya
9c688f6dbf color field for calendar in leave application 2018-05-01 18:55:17 +05:30
Shreya
a7b2fc9250 color field for calendar in sales order and work order 2018-05-01 18:55:17 +05:30
Shreya
62907472f3 color field for calendar in task 2018-05-01 18:54:20 +05:30
Shreya
d71c0c1720 color field for calendar in holiday list 2018-05-01 18:54:20 +05:30
Shreya
4c8a08effb color field for calendar in course schedule 2018-05-01 18:54:20 +05:30
Nabin Hait
48c0b3b328 Merge branch 'tundebabzy-new-subscription' into develop 2018-04-30 19:33:15 +05:30
Nabin Hait
3652a62b55 minor fixes 2018-04-30 19:32:29 +05:30
Nabin Hait
d39386bd55 Renamed some salary related fields 2018-04-30 16:21:37 +05:30
Shreya
96e45902fd codacy 2018-04-30 15:54:34 +05:30
Shreya
14bd43d5eb minor changes 2018-04-30 15:30:42 +05:30
Ameya Shenoy
da33b14f78 removed bad code and made compatible with pip 10 (#13805) 2018-04-30 11:17:12 +05:30
Shreya Shah
05ad2802c6 Travis test fixes for leave application (#13790)
* test fix

* expense claim test fix

* fix payroll entry test case
2018-04-30 11:14:56 +05:30
Adam Dawoodjee
3cd4fce710 Typo fix (#13809) 2018-04-30 11:13:18 +05:30
Manas Solanki
5cc41907a4 Merge pull request #13811 from frappe/manassolanki-patch-5
Remove the duplicate description
2018-04-27 12:47:24 +05:30
Manas Solanki
0536baacc2 Remove the duplicate description 2018-04-27 12:46:56 +05:30
Faris Ansari
9f739fe87d Handle item_wise_tax_detail invalid value while item renaming (#13778) 2018-04-26 18:48:01 +05:30
Kenneth Sequeira
b01f998b49 Update tracking-project-profitability-using-cost-center.md (#13792)
Fixed typo in the title.
2018-04-26 18:40:14 +05:30
AravindPranera
805f09a3fe Accounts receivable aging based on supplier due date (#13801) 2018-04-26 18:02:37 +05:30
deepak-mnt
b712d1905d Override after_rename method to fetch cost center number on changing from title 2018-04-26 17:04:06 +05:30
deepak-mnt
b379998961 Added Update Cost Center Number button and it's functionality 2018-04-26 17:00:08 +05:30
Nabin Hait
2f82bce387 minor fix 2018-04-26 16:32:17 +05:30
rohitwaghchaure
7e8a7ac6ee Provision to select opening stock in stock reconciliation (#13802) 2018-04-26 16:30:35 +05:30
Shreya
a20157af17 on item, warehouse and batch triggers, fetch serial nos based on batch 2018-04-26 14:39:21 +05:30
Shreya
7461d28ae0 add batch when creating serial nos 2018-04-26 14:39:21 +05:30
Shreya
4a2fe605b3 batch no field in serial no doctype 2018-04-26 14:39:21 +05:30
Nabin Hait
25ccd1acbb minor fix in asset 2018-04-26 12:16:38 +05:30
Nabin Hait
dc75be8b6c Show company column in order in consolidated financial statement 2018-04-26 12:16:38 +05:30
Siddhi Sawant
a16c8d0a2b Establishment / Effective Date field in the Company master (#13723) 2018-04-26 12:16:38 +05:30
Rohit Waghchaure
4110e00b2d [Fix] general ledger group by validation 2018-04-26 12:16:38 +05:30
Rohit Waghchaure
26decaad6c [Fix] Profit and loss statment 2018-04-26 12:16:38 +05:30
Nabin Hait
074928cf6c Company field added in department 2018-04-26 12:16:38 +05:30
Nabin Hait
f164203520 Fixed merge conflict 2018-04-26 12:16:18 +05:30
Nabin Hait
ee09408dcc Minor fixes 2018-04-26 12:16:18 +05:30
Pawan Mehta
2215d4c593 Shift Management (#13667)
* [fix] #13634

* review_changes

* rename function

* rename function
2018-04-26 12:16:18 +05:30
rohitwaghchaure
efff6e53de Consolidated financial statement (#13678)
* added fields to support treeview

* tree file added, nestedset implemented

* patch added to reload doc and configure lft rgt

* Added consolidated financial statement report
2018-04-26 12:16:18 +05:30
rohitwaghchaure
fb9af38106 Group by party in general ledger report (#13649)
* Group wise Ledger for Customer and Supplier

* commonify group by fields
2018-04-26 12:16:18 +05:30
Pawan Mehta
0a17f8d51b remove shift schedule tool (#13658) 2018-04-26 12:16:18 +05:30
Nabin Hait
8076d6ddc8 Renamed Health Insurance to Employee Health Insurance 2018-04-26 12:16:17 +05:30
Nabin Hait
265426a5a6 Minor fixes 2018-04-26 12:14:02 +05:30
Nabin Hait
81706fdb46 Update rename_field_max_days_allowed.py 2018-04-26 12:14:02 +05:30
Nabin Hait
551844881b Removed employee table from Salary Structure and added employee name in all forms 2018-04-26 12:14:01 +05:30
Nabin Hait
fcdca7f2a0 Documents order in hr page 2018-04-26 12:13:46 +05:30
Nabin Hait
f914bd374d Added links in HR module 2018-04-26 12:13:24 +05:30
Shreya Shah
b15ef8450f [Enterprise] Patch and child table changes (#13656)
* [patch] rename field

* Employee Property History child table

* remove child tables
2018-04-26 12:13:06 +05:30
Pawan Mehta
8f14cb590c Add grade to employee master (#13654) 2018-04-26 12:12:45 +05:30
Nabin Hait
1c13e70d13 New doctypes for HR and Accounting (#13652) 2018-04-26 12:12:29 +05:30
Shreya Shah
ec38044fe2 New DocTypes for HR Module (#13650)
* New DocType Employee Incentive

* New DocType Shift Type

* New DocType Shift Assignment

* New DocType Shift Assignment Tool

* New DocType Shift Request

* New DocType Salary Structure Assignment

* Added Permissions

* New DocType Employee Lifecycle Process

* New DocType Employee Lifecycle Activity Type

* New DocType Employee Lifecycle Activity

* New DocType Employee Lifecycle Process Template

* New DocType Employee Lifecycle Process Template Detail

* Permissions and Auto Name

* New DocType Staffing Plan

* New DocType Staffing Plan Detail

* Added fields in Job Opening

* New DocType Employee Transfer

* New DocType Employee Promotion

* [minor]
2018-04-26 12:10:13 +05:30
Rushabh Mehta
369afce43c [patch] ignore validations while creating custom fields for gst via patch 2018-04-26 10:10:03 +05:30
Manas Solanki
30c267bec6 Merge pull request #13784 from KanchanChauhan/typo-fix
[Typo Fix] in Work Order
2018-04-25 17:23:36 +05:30
Kanchan Chauhan
7826dd1aeb Typo Fix in Work Order 2018-04-25 13:48:47 +05:30
Saurabh
1d5bbe1081 Merge branch 'master' into develop 2018-04-25 12:46:50 +05:30
Saurabh
63590496c1 [fix] resolved merge conflicts 2018-04-25 11:32:54 +05:30
Nabin Hait
5643c3ead2 Minor fix in reloading email template 2018-04-24 17:51:13 +05:30
Shridhar Patil
02c93a3d05 [bug] Leave application ui issues fixed (#13740)
* validate to_date in leave application

if to_date is less than from_date show message to user
reset to_date value to ''

* var declaration and semicolon missed

* Updated popup message
2018-04-24 14:45:11 +05:30
Kenneth Sequeira
70330e8379 fixed user permission video link (#13774) 2018-04-24 14:12:41 +05:30
Shreya Shah
3cf35f2496 fix syntax (#13773) 2018-04-24 12:20:21 +05:30
Shreya Shah
4dc453d131 Loan Management for the Members (Non Profit Module) (#13149)
* Renamed - Employee Loan Application to Loan Application, Employee Loan to Loan and field Employee Loan Account to Loan Account

* Patch added

* Dynamic link fields 'applicant' and 'applicant_type'

* Member link visible only if domain non profit is active

* Modified loan_dashboard

* Make Repayment Entry button

* Common file loan_common.js for loan and loan_application

* repayment schedule rows selection in dialog

* validation if repayment amount > total paid amount

* repayment only if disbursement is done, make repayment by selecting the installment which falls in the current month

* fetch nowdate if disbursement date not found

* Rebased with develop

* updated non-profit module page

* updated patch for renamed fields

* dialog to select repayment entries

* hidden field to store reschedule paid status

* update paid check in loan on journal entry updation

* calculate total paid

* updated docs

* codacy fix
2018-04-24 12:19:36 +05:30
bghayad
1c3830c53f Student Account Ledger Button (#13591)
* Student Account Ledger Button

* Student Account Ledger Button

* Student Account Ledger Button

* Student Account Ledger Button
2018-04-24 12:12:11 +05:30
Kenneth Sequeira
5becde7a45 embedded social login keys set up videos (#13659) 2018-04-24 12:11:29 +05:30
hiousi
38de994788 do not copy template description to variant if not in allow fields (#13726) 2018-04-24 12:10:45 +05:30
Saurabh
9738d52d5f Merge branch 'master' into develop 2018-04-24 12:09:40 +05:30
Shreya Shah
6db3d84cc0 remove unused code (#13765) 2018-04-24 12:07:40 +05:30
Saurabh
2e7a45dbb4 resolved merge conflicts 2018-04-24 11:16:13 +05:30
Deepak kumar
022ac50160 Reverse Journal Entry (#13637)
* [Fix] #13605

* fixes codacy

* minor changes

* Added naming series for reverse journal entry

* added reference_type and reference_name
2018-04-24 10:52:28 +05:30
Manas Solanki
276a92539d Update move_leave_approvers_from_employee.py 2018-04-23 14:55:19 +05:30
Zarrar
68a7ee22f2 order_by for gantt error fix (#13752) 2018-04-23 13:22:03 +05:30
Shreya Shah
828f5ab29e Patch fixes (#13754)
* reload doc

* remove unused code
2018-04-23 13:21:35 +05:30
Kenneth Sequeira
d4991cc49f Assets Docs Update (#13749)
* asset depreciation auto booking image added

* commit 3
2018-04-23 11:35:24 +05:30
tundebabzy
dbdf462e56 fix conflict 2018-04-22 23:49:26 +01:00
tundebabzy
f65ee888c0 spelling: canceled --> cancelled 2018-04-22 23:43:08 +01:00
Shreya Shah
44e719d64c [Enhancement] Leave Application and Expense Claim (#13645)
* child table employee expense approver

* set query in department

* mandatory approver check in hr settings

* triggers on leave and expense approver

* fetch all parent approvers from department hierarchy

* fixes

* patch to move employee approvers from employee to department

* removed hard coding of roles

* modify approvers list query

* commonified functions

* patch

* renamed standard reply occurrences

* removed leave approvers table from Employee master

* email templates for leave application notification

* set default email templates for leave in hr settings

* notify by email template

* approval status in expense claim

* render template in patch

* removed unused code

* Single child table department approver

* read instead of render template
2018-04-19 20:58:52 -08:00
tundebabzy
280c7a410a code review: make use of db_insert and change Auto Repeat to auto_repeat 2018-04-17 11:32:17 +01:00
tundebabzy
20721942ad code review: use delete from to delete records 2018-04-17 11:31:23 +01:00
tundebabzy
5988da9a31 code review: revert changes 2018-04-17 11:30:35 +01:00
tundebabzy
caae0f4dcc Merge branch 'develop' into new-subscription 2018-04-17 09:34:04 +01:00
matmyers
742da8cfce removed duplicate keys (#13675) 2018-04-17 12:20:57 +05:30
Saurabh
46743d00d6 Merge branch 'master' into develop 2018-04-17 12:00:21 +05:30
Faris Ansari
d7a3b78fdf [py3] Cast dict_keys to list (#13663) 2018-04-16 14:39:37 +05:30
Sanjay Kumar
bc83daf0fa #13478 : Default Accounts in Item from Item Group (#13635)
* remove external app reference and update get_warehouse_list

* resolve #13478 : Default Accounts in Item from Item Group
2018-04-15 21:36:37 -08:00
Saurabh
ea49deb315 Merge branch 'master' into develop 2018-04-15 12:54:50 +05:30
Sathisha Poojary
16ce8ed7d5 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2018-04-14 12:05:11 +05:30
Faris Ansari
ed34a442a8 Obey currency filter in financial statement prints #pdd (#13648) 2018-04-13 21:34:00 -08:00
Shreya Shah
a952e40b56 fix tab (#13651) 2018-04-13 19:33:40 +05:30
Shreya Shah
6bf4e5b73b Department Tree (#13567)
* Department Tree

* print hide fields

* create 'All Departments' as parent on setup

* patch to set lft rgt

* fix translatable string
2018-04-13 15:09:26 +05:30
Nabin Hait
642d39098a Fixed merge conflict 2018-04-13 14:38:57 +05:30
Nabin Hait
4566d1f60c Email Account field added in Issue 2018-04-13 13:26:06 +05:30
Faris Ansari
f8dd4c2d7b [fix] Financial report column values during print (#13627) 2018-04-12 17:28:40 +05:30
Siddhi Sawant
a0bbc0846b GST purchase invoice with tax breakup details (#13561) 2018-04-12 14:50:48 +05:30
Frappe PR Bot
59a2a653d0 [Translation] Updated Translations (#13570) 2018-04-12 13:36:55 +05:30
Pawan Mehta
c0727633e7 [fix] #13589 (#13590) 2018-04-12 13:31:08 +05:30
Ameya Shenoy
848d34f1a8 Minor fixes (#13609)
- typo renamed make_prod_order_test_record to make_wo_order_test_record,
whereever it was missed
2018-04-12 13:21:16 +05:30
Sanjay Kumar
6225b769a6 remove external app reference and update get_warehouse_list (#13597) 2018-04-11 02:19:36 -08:00
Rushabh Mehta
fb5d678b0c [minor] cache refactor and workflow docs (#13598) 2018-04-11 00:38:19 -08:00
Doridel Cahanap
ad76f9ad70 [Enhancement] Work Order Material Consumption (#13384)
* Work Order Material Consumption

* Test cases and other minor fixes

* Test cases fixes

* Travis Fixes

* Work Order Material Consumption Request Changes

* Update work_order.js
2018-04-09 10:31:28 +05:30
Sathisha Poojary
99e3ca0f67 Create a new doctype for bank so that we can suport other
bank statements dynamically.
2018-04-07 19:00:05 +05:30
Sathisha Poojary
6b8eb645c4 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2018-04-07 16:41:43 +05:30
Nabin Hait
e9638be032 fixed merge conflict 2018-04-06 15:18:27 +05:30
Dominik Ottenbreit
82eac06505 Add Order Confirmation to PO (#13421) 2018-04-06 11:51:18 +05:30
KanchanChauhan
4691af6348 Get Payment Schedule from Sales Order to Sales Invoice (#13497) 2018-04-06 11:23:19 +05:30
Kenneth Sequeira
2d79e46fbd updated images for print format (#13498) 2018-04-06 11:22:37 +05:30
Jamsheer
86fd8cbf68 Healthcare dashboard (#13533)
* Healthcare Dashboards

* Lab Test and Template - field marked in_filter = True
2018-04-06 10:29:23 +05:30
Saurabh
b0e409d4a8 syntax fix (#13542) 2018-04-06 10:28:40 +05:30
Rushabh Mehta
dccfb54a0f [fix] [ux] allow account to be created via form (#13509) 2018-04-06 10:28:08 +05:30
Zarrar
92109b01fd translate while creating items from user progress (#13530) 2018-04-06 10:27:55 +05:30
Manas Solanki
76cbf0a044 Merge pull request #13544 from frappe/manassolanki-patch-4
Update setup.py
2018-04-05 21:36:01 +05:30
Manas Solanki
b2f9af71d2 Update setup.py 2018-04-05 21:35:29 +05:30
Pawan Mehta
f41963536e Group email fields together and add IFSC Code (#13535)
* [fix] #13534

* change field order cell no
2018-04-05 14:54:51 +05:30
Prateeksha Singh
59147c0368 Merge pull request #13538 from pratu16x7/hub-fixes
[fix] company listing context
2018-04-05 14:53:11 +05:30
Prateeksha Singh
4b7dcfad54 [hub] add hub settings access regardless 2018-04-05 14:50:42 +05:30
Prateeksha Singh
420c79041e [fix] company listing context 2018-04-05 14:44:16 +05:30
Suraj Shetty
97d84eb509 remove apply user permission (#13505) 2018-04-05 12:10:46 +05:30
Zarrar
0e3b000e81 sql syntax fix (#13529) 2018-04-05 10:34:30 +05:30
rohitwaghchaure
d77e8e5b02 Merge pull request #13521 from rohitwaghchaure/pos_freeze_when_change_rate
[Fix] POS freeze when rate button pushed
2018-04-04 18:10:12 +05:30
Rohit Waghchaure
920a3ff0b8 [Fix] POS freeze when rate button pushed 2018-04-04 18:06:19 +05:30
Nabin Hait
2b682c82e8 Fixed merge conflict 2018-04-04 11:40:16 +05:30
Achilles Rasquinha
ecfc10e21c Merge pull request #13500 from frappe-pr-bot/translations-2018-04-03
[Translation] Updated Translations
2018-04-03 19:32:43 +05:30
frappe-pr-bot
6623cdc244 [Translation] Updated Translations 2018-04-03 15:49:16 +02:00
Vinayak Jethe
df83148d7c Woocommerce Integration (#13217)
* WIP for WooCommerce Integration

* WIP for WooComm Integration

* WIP WooComm

* Added Woocommerce Settings

* Woocommerce Settings

Enable Sync Makes fields mandatory

* Woocommerce whitelisted endpoints

* [Clean Up] Woocommerce Settings

* Verify Webhook Data

* Fix Verify Webhook

* WIP WooComm

* WIP and working few modules

* Customer creating partially

* Customer creation successful

* Refactored Customer code

* WIP Address

* Fixed address and customer bug. Now working fine

* WIP for products. Creation of items successful

* Handling json for product

* Products creating and updating properly

* Custom checkbox for required doctypes

* Product feature fully completed

* WIP orders

* Sales order working properly

* Orders mapping successfully

* New version Customer Working Properly

* Items creation properly

* Working on sales order

* Orders comming successfully

* Bug fixes

* Fixed date format for delivery date

* Code Cleanup

* Woo setting page modified

* Fixed minor bug

* Fixes

* Minimum Viable Product

* Cleanup

* Removed duplicate file from erpnext config

* Added more default changes to woo settings

* Fixes as per required

* Fixes

* Bug fix

* few changes and fix

* Fixing

* Fixes with test

* Added Test for Woocommerce - Emulates request

* Fix woocommerce test

* fix woocommerce test

* verify_request: py3 ready

* Codacy fixes

* WooCommerce Integration Docs

* Codacy changes

* Codacy fixes

* User set tax account

* Fixes for account

* Fix for warehouse issue

* Docs updated

* Codacy fix

* Updated Docs

* Minor changes

* Tested added for repeat order and cleanup

* Minor change

* docs and gifs renamed according to convention

* Doc updated
2018-04-03 11:17:03 +05:30
Prateeksha Singh
b60a52b194 Hub Market (#13325)
* [hub] enable hub with OAuth token from user's client ID

* [hub] settings schema for adding users

* [hub] image view style listing

* [hub] broken image link fallback

* [wip]

* [hub] bootstrap timeline

* [hub] setup quick view

* [hub] reformat ratings, add companies autocomplete filter

* [hub] common listing frames

* [hub] setup sort selector

* [hub] timeline

* [hub] customize list header

* [hub] genuine form fieldtypes

* [hub] review products

* [hub] suggest missing categories remotely

* [hub] Wishlist; header and title templates

* [hub] link wishlist, remove company migration

* [hub] calculate ratings
2018-04-03 10:44:13 +05:30
Suraj Shetty
c5effbf009 Data export tool doc (#13419)
* data export tool docs

* change doc gif path
2018-04-03 10:43:08 +05:30
Frappe PR Bot
dc0a92c8de updated translations (#13485) 2018-04-02 23:46:54 +05:30
Achilles Rasquinha
325ce05044 Merge pull request #13475 from rohitwaghchaure/fixed_travis
[Fix] Travis
2018-04-02 17:02:39 +05:30
Rohit Waghchaure
395d61b998 [Fix] Travis 2018-04-02 15:11:47 +05:30
rohitwaghchaure
eedc0ac681 [Fix] chart of accounts root type is mandatory issue in charts.erpnext.com (#13467) 2018-04-02 12:49:38 +05:30
Britlog
220864b4f7 Allow decimal quantities in pos (#13471) 2018-04-02 10:55:04 +05:30
Charles-Henri Decultot
6860036b01 Agriculture module corrections (#13438)
* Agriculture module corrections

* Update ternary_plot.js
2018-04-02 10:51:53 +05:30
Nabin Hait
c825e914d1 Added indexes for lft, rgt on nestedset doctypes (#13420) 2018-04-02 10:43:46 +05:30
Shreya Shah
5d71609f0b Timer fixes (#13443)
* alert for exceeded time only when dialog is open

* fetch row having an activity without from_time

* fixes if timesheet created from work order

* reset timer limit exceeded
2018-04-02 10:32:39 +05:30
Nabin Hait
edd320e338 Optimisation of warehouse_account_map (#13454) 2018-04-02 10:30:17 +05:30
Kenneth Sequeira
84fe32d05c removed pos-view article since it is deprecated (#13456) 2018-04-02 10:26:43 +05:30
Nabin Hait
af98f5d14d Sort accounts by account number in financial statements (#13423) 2018-04-02 10:14:32 +05:30
Sathisha Poojary
1de5669574 Rename Bank Statement Settings appropriately and allow auto
populating some settings for supported banks
2018-03-31 10:30:34 +05:30
Sathisha Poojary
f698a1bcbe Minor typo with major error 2018-03-31 01:19:52 +05:30
Sathisha Poojary
f069e1c83c Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2018-03-31 00:55:56 +05:30
rohitwaghchaure
456fdf09cb Merge pull request #13449 from rohitwaghchaure/pos_not_working_issue
[Fix] POS not opening
2018-03-30 14:29:56 +05:30
Rohit Waghchaure
5e0cabc538 [Fix] POS not opening 2018-03-30 14:29:18 +05:30
Nabin Hait
ff2e4c898a Fixed merge conflict 2018-03-29 13:57:39 +05:30
Nabin Hait
4d9e104284 Merge branch 'master' into develop 2018-03-28 15:51:18 +05:30
Dominik Ottenbreit
561e2a534b Add Project Standard Filters (#13417) 2018-03-28 14:25:51 +05:30
rohitwaghchaure
68ba4fd697 [Fix] Multi-batch selection issue in POS (#13407) 2018-03-28 12:33:15 +05:30
rohitwaghchaure
a3c3dec5a2 [enhance] Item Alternative (#13121)
* [enhance] Item Alternative

* Added two way provision in item alternative

* Test Cases

* documentation
2018-03-28 11:51:44 +05:30
Nabin Hait
6c35822a35 Merge branch 'master' into develop 2018-03-28 10:40:14 +05:30
Sathisha Poojary
148c4f9724 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2018-03-28 00:27:32 +05:30
Sathisha Poojary
0512eec54b Some minor changes addressing manual doctype renaming issues 2018-03-28 00:22:59 +05:30
Nabin Hait
9db28ef90d Minor fix in patch 2018-03-27 16:00:57 +05:30
Zarrar
7f4cd3f5ea Update Docs for Work Order (#13403)
* update docs

* rename files, update pngs

* update pngs for timesheet, leftover changes
2018-03-27 14:59:49 +05:30
Nabin Hait
b9c82b9790 Fixed merge conflict 2018-03-27 14:25:27 +05:30
Prateeksha Singh
ffaed1ce2e Merge pull request #13404 from pratu16x7/variants
Enumerate numeric values in variant dialog
2018-03-27 12:18:13 +05:30
Prateeksha Singh
be368fe94b Enumerate numeric values in variant dialog 2018-03-27 12:17:15 +05:30
Frappe PR Bot
7db805a031 [Translation] Updated Translations (#13394) 2018-03-27 11:21:08 +05:30
Prateeksha Singh
e45f957ad9 Merge pull request #13363 from shreyashah115/timer
Timer in Timesheets!
2018-03-27 10:28:50 +05:30
Sathisha Poojary
0b5fea1491 Initial changes to manually migrating bank statemet work from
app to erpnext
2018-03-26 01:12:18 +05:30
Nabin Hait
061d912749 Fixed merge conflict 2018-03-23 16:20:27 +05:30
Shreya
8bb0f05451 added task field 2018-03-23 11:46:45 +05:30
Shreya
7619cd2e14 updated docs for timesheet 2018-03-23 11:41:56 +05:30
Shreya
822ba21f38 codacy fix 2018-03-23 11:41:56 +05:30
Shreya
559011404a removed timesheet.html, appended it as a helper function 2018-03-23 11:41:56 +05:30
Shreya
5bf24be704 minor fixes 2018-03-23 11:41:56 +05:30
Shreya
8f06266838 all fields editable 2018-03-23 11:41:55 +05:30
Shreya
5714260af4 replaced status with completed checkbox 2018-03-23 11:41:55 +05:30
Shreya
09937f3753 modified timer start button 2018-03-23 11:41:55 +05:30
Shreya
faff9d3bb2 thanks to faris for the css 2018-03-23 11:41:55 +05:30
Shreya
68ec22a90c moved timer.js to public/js 2018-03-23 11:41:55 +05:30
Shreya
05e516efc4 Start the timer on the basis of time diff between now_time and timestamp 2018-03-23 11:41:55 +05:30
Shreya
7cc288a6db New activity dialog removed, read only fields editable if no rows found, add a new row on timer start 2018-03-23 11:41:55 +05:30
Shreya
36040ce5f9 new field actual_end_time to record completed time 2018-03-23 11:41:55 +05:30
Shreya
dcce87d4a8 CSS modifications 2018-03-23 11:41:55 +05:30
Shreya
cd140da3ec new dialog to create activity 2018-03-23 11:41:55 +05:30
Shreya
643528a3b8 added status field 2018-03-23 11:41:55 +05:30
Shreya
8f4e93f104 removed stop button and added a complete button 2018-03-23 11:41:55 +05:30
Shreya
eeaba29e5b read only fields project and hours 2018-03-23 11:41:55 +05:30
Shreya
6a1bf70627 alert sound when timer exceeds the given hours 2018-03-23 11:41:55 +05:30
Shreya
1cfd28d50d timer in timesheet 2018-03-23 11:41:55 +05:30
Faris Ansari
35397a1033 Salary Register (#13367)
- convert date range to from_date and to_date
2018-03-22 15:26:45 +05:30
rohitwaghchaure
6a2d073fe1 Merge pull request #13353 from PawanMeh/fixes_13352
Add total qty to offline POS
2018-03-22 11:36:32 +05:30
Faris Ansari
34dd079a68 Remove unnecessary columns Analytics Reports (#13344) 2018-03-22 11:12:02 +05:30
Faris Ansari
4fc74333bd Fix Icons for Expense Claim and Timesheet (#13359) 2018-03-21 17:54:09 +05:30
Kenneth Sequeira
6a92cdc358 Update cost-center.md (#13354)
Fixed link to missing image for cost centre.
2018-03-21 17:52:52 +05:30
pawan
53a4d2c430 [fix] #13352 2018-03-21 09:19:36 +05:30
Faris Ansari
ce08aabc84 Add Kanban Board button in project (#13345) 2018-03-20 19:03:32 +05:30
Prateeksha Singh
59057c6675 Merge pull request #13341 from Zlash65/min-fix
[Minor] Fix unindented code
2018-03-20 16:35:18 +05:30
Zlash65
0859018c48 unindented code 2018-03-20 16:29:27 +05:30
Britlog
e3a9b9fe49 [Website] Price in items list and sales uom management (#13335)
* Price in items list and sales uom management

* Price in product search page

* Display website stock in sales uom

* Add set_product_info_for_website to avoid duplicate code

* Add price uom in item list and page

* Update product.py
2018-03-20 14:28:44 +05:30
Zarrar
9a01baac1d explicitely provide order_by (#13338) 2018-03-20 14:08:44 +05:30
Achilles Rasquinha
0575b3e1c3 fixed inconsistent tab error (#13339) 2018-03-20 14:07:25 +05:30
Charles-Henri Decultot
d0ac69704f Chained log report doc (#13314) 2018-03-20 13:12:28 +05:30
Zarrar
13ddc7e188 [ Enhance ] Production to Work Order (#12902)
* remove occurrences of Production Order

* rename from report and jsons

* Change Production Order to Work Order

* change occurences of production order from other files

* resolve minor conflict issues and reports

* patch added

* codacy fix

* updated patches, leftover changes

* rename reports, rectify patches
2018-03-20 12:38:43 +05:30
Doridel Cahanap
c893268dea Add Health Insurance Doctype and link to Employee (#13257) 2018-03-20 12:37:02 +05:30
Deepak kumar
656ff36c76 [Feature] Advance Account Balance in Employee Advance (#13263)
* added due advance amount field to show due amount

* fixes codacy

* made whitelisted method

* Update employee_advance.js
2018-03-20 12:35:02 +05:30
Nabin Hait
d97c5a04b2 minor fix in item naming 2018-03-20 12:31:05 +05:30
Tom Price
cd525299ee [Feature] Add default duration and color to appointment type (#13296)
* Add default duration and color to appointment type

When creating a Patient Appointment, the Duration field will be populated when the Appointment Type is set. This is preserved when checking availability and booking an appointment.
`Appointment Type.color` is used in the calendar display.

* Remove accidental fixed date from git

* Update modified timestamp to ensure migrations.

Set to the timestamp of dd506a0961
2018-03-20 12:08:44 +05:30
Mark Walker
f572522f25 Copy source project into Purchase Order Item (#13321) 2018-03-20 12:06:04 +05:30
renzodemie
417dfed214 Daily Reminder (#12938)
* for email sending

* test commit for new branch

* Removed test changes

* test commit renzo

* Email sending

* Project Uo

* Project Update

* "My first commit"

* "My second commit"

* "My second commit"

* Holiday is included

* delete idea

* first pull

* first pull

* "My third commit"

* Delete idea

* delete again

* "Edit Time"

* "Edit Time"

* Naming series and bug fixing

* "Edit current day and time"

* "Proper naming series, hidden time and date"

* Project and Project Update dashboard

* dashboard

* Remove hooks for PR

* Remove hooks for PR

* Remove hooks for PR

* Deleted project_time.py

* Corrected indention

* Hook back to original

* Delete project_time.py

* "Modified time"

* Fix indention

* Sample

* FRM

* FRM

* Time fix

* Hooks original state

* "Modified time"

* Added permission to Project User

* Added function/method to be called in order to create project update for the specific project

* Naming series

* this is not included

* Fix minor bug

* Indent again

* "Reformat Code"

* "Check Indent"

* Indent again and again

* semi colon

* "Check Again Indent"

* "Check again Indent"

* "Check again Indent"

* ind

* "Check again Indent"

* "Check again Indent"

* Generate Project update
With button in email

* []

* "Erro Summary"

* "Add syntax for the communcation"

* "add summary code"

* "Modified Summary code"

* "Modified Summary code"

* "Fix update ID and set localhost"

* Fix time and date error in project_update
Fix naming series problem in project_update

* included "not updated" in project update

* Bug in Number of Drafts

* "add notes in summary"

* Correct code

* With error

* Removed the method

* Minor fixes

* Correction for daily summary
2018-03-20 11:58:15 +05:30
Achilles Rasquinha
aa4d7a3436 Update .travis.yml 2018-03-20 01:37:27 +05:30
Achilles Rasquinha
58606b643a Updated .travis.yml for Python 2 and 3 2018-03-20 01:35:50 +05:30
Achilles Rasquinha
b714643ca2 Merge pull request #13332 from achillesrasquinha/fixes
Check Set Sales Target Item exists in User Slides
2018-03-19 22:18:20 +05:30
Achilles Rasquinha
d0786b45c3 fix issue 2018-03-19 22:17:37 +05:30
Achilles Rasquinha
034834d671 Merge pull request #13326 from shreyashah115/fix-travis
[Fix] Travis
2018-03-19 17:00:34 +05:30
Shreya
f7b39438d2 travis fix 2018-03-19 14:19:55 +05:30
Achilles Rasquinha
3099ea67a1 Merge pull request #13303 from achillesrasquinha/py3
unordered types None vs int
2018-03-19 11:54:24 +05:30
Achilles Rasquinha
984ec2652e Merge pull request #13322 from achillesrasquinha/fixes
Fixed dict_keys concatenation
2018-03-18 10:09:48 +05:30
Achilles Rasquinha
1e95323679 Fixed dict_keys concatenation 2018-03-18 10:08:43 +05:30
Nabin Hait
c8cd4ba6f7 Merge branch 'master' into develop 2018-03-15 12:38:43 +05:30
Achilles Rasquinha
a4a62d5ea1 unordered types None vs int 2018-03-15 12:18:37 +05:30
Nabin Hait
bb5caf8fad Merge branch 'master' into develop 2018-03-14 13:33:38 +05:30
Nabin Hait
d21ad807b5 Merge branch 'master' into develop 2018-03-13 18:13:44 +05:30
Nabin Hait
e01dcc170c Merge branch 'master' into develop 2018-03-13 17:11:52 +05:30
Nabin Hait
3707242770 Fixed merge conflict 2018-03-13 16:15:41 +05:30
Ranjith Kurungadam
369ba85499 Physician Schedule fixes (#13284)
* move button add schedule to grid

* Physician Schedule- add slots for multiple days

* fix patient image view
2018-03-13 14:50:24 +05:30
Achilles Rasquinha
9fb7e2fe04 Merge pull request #13283 from achillesrasquinha/py3
string_types from basestirng
2018-03-12 19:16:55 +05:30
Achilles Rasquinha
cbfcb3e61d string_types from basestirng 2018-03-12 19:15:29 +05:30
Zarrar
0702f29860 Add Ends-On field in the Lead doctype (#13147)
* add ends_on date in lead to be mapped with calendar event

* set default ends_on to 1 hour from contact_time
2018-03-12 18:49:54 +05:30
tundebabzy
0125f7b130 rename to Subscription and transfer present Subscription records to Auto Repeat in frappe 2018-03-12 13:51:47 +01:00
Nabin Hait
2f493731ec Fixed merge conflict 2018-03-12 15:49:59 +05:30
Zarrar
c35665fa60 update physician patch fail (#13277) 2018-03-12 15:21:53 +05:30
Kenneth Sequeira
b48557fdc6 payment terms video tutorial in videos/learn (#13258)
* payment terms video tutorial in videos/learn

* Update payment-terms.md
2018-03-12 13:07:21 +05:30
Shreya Shah
ef4c3b8e2f add has variants in standard filter (#13251) 2018-03-12 11:20:49 +05:30
Prateeksha Singh
71166d46f9 Merge pull request #13270 from pratu16x7/charts-fix
Update Charts to v1
2018-03-12 10:56:49 +05:30
Prateeksha Singh
9362cf37e0 [charts] update charts API 2018-03-12 09:54:56 +05:30
tundebabzy
2970630ed2 Merge branch 'develop' into new-subscription 2018-03-12 02:00:34 +01:00
Nabin Hait
fd75d554d2 Payment Terms Template added in test_ignore for Company 2018-03-09 18:52:14 +05:30
Nabin Hait
5e63c265db Fixed merge conflict 2018-03-09 17:34:39 +05:30
Achilles Rasquinha
138a4850fe Merge pull request #13252 from achillesrasquinha/py3
sort by name accounts for trial balance.
2018-03-09 15:23:28 +05:30
Achilles Rasquinha
dc61c6b975 sort by name accounts 2018-03-09 15:23:08 +05:30
Achilles Rasquinha
1d7665fca1 sort by name accounts 2018-03-09 15:22:20 +05:30
tundebabzy
3d26003c1f add column breaks to Subscription 2018-03-09 09:37:06 +01:00
tundebabzy
8889b70ba1 Merge branch 'develop' into new-subscription 2018-03-09 09:10:48 +01:00
Nabin Hait
0357fbc9c1 commonfied regional function for checking delete permission 2018-03-09 13:19:52 +05:30
Nabin Hait
6d532a82ee Merge branch 'theopen-institute-nepal-localization' into develop 2018-03-09 13:11:19 +05:30
Nabin Hait
096c05ca6f Fixes for regional feature of Nepal 2018-03-09 13:11:00 +05:30
theopen-institute
38cbd71352 prevent deletion of sales invoices if country is nepal 2018-03-09 12:39:40 +05:30
Achilles Rasquinha
b4de7e3d07 removed has_key, used pythonic in (#13236)
* removed has_key, used pythonic in

* Update bom.py
2018-03-09 12:35:47 +05:30
Suraj Shetty
f2d28ebd6a Data import Tool bug fix (#13165)
* fixes #13064

* commonified naming series checks

* test fixes
replaced test employee names according to naming series
2018-03-09 12:33:13 +05:30
tundebabzy
e69747ca6d [Feature Request] Add Payment Mode field on Payment Terms Template #13117 (#13243)
* add mode of payment field to Payment Term

* add mode of payment field to Payment Terms Template Detail

* add mode of payment field to Payment Schedule

* add mode of payment in `get_payment_term_details`
2018-03-09 12:23:53 +05:30
Zarrar
3fd634783d [Enhance] Fetch Customer's Item code based on Customer Name or Customer Group (#13198)
* customer code can be assigned based on customer group

* improvise customer group selection

* requested changes made
2018-03-09 12:10:45 +05:30
Achilles Rasquinha
b2f7092f9e Merge pull request #13235 from achillesrasquinha/py3
removed has_key
2018-03-08 14:22:36 +05:30
Achilles Rasquinha
87dab14576 removed has_key 2018-03-08 14:21:48 +05:30
Achilles Rasquinha
30f6f7dd55 Merge pull request #13232 from codingCoffee/indentation_fix
indentation fix
2018-03-08 13:27:52 +05:30
Ameya Shenoy
d2eec91b2c indentation fix 2018-03-08 13:27:11 +05:30
Achilles Rasquinha
755d3782a5 Merge pull request #13230 from achillesrasquinha/develop
fixed tabs
2018-03-08 13:21:42 +05:30
Achilles Rasquinha
9efd6e80d2 fixed tabs 2018-03-08 13:20:48 +05:30
Achilles Rasquinha
ed710e2f2f Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2018-03-08 13:19:31 +05:30
Achilles Rasquinha
7df344409e Merge pull request #13229 from achillesrasquinha/py3
fixed tabs
2018-03-08 13:17:19 +05:30
Achilles Rasquinha
e96a5770f2 fixed tabs 2018-03-08 13:16:29 +05:30
Achilles Rasquinha
987934d8ee fixed tabs 2018-03-08 13:16:08 +05:30
Achilles Rasquinha
abd365fd90 Merge pull request #13228 from achillesrasquinha/py3
[FIX] filter to list
2018-03-08 13:11:58 +05:30
Achilles Rasquinha
908289d40a [FIX] filter to list 2018-03-08 13:10:51 +05:30
Jamsheer
665b48773f Healthcare - Patient Appointment - Service unit based scheduling and booking (#13211)
* New Document - Patient Service Unit

* Physician - schedule based on patient service unit

* Consultation - Remove validation on submit

* Consultation - Label changed from Drug Prescription to Medication

* Availability check and book appointment based on service unit, appointment invoice creation optimized

* patch fixes

* Patient Service Unit - field - overlap_appointments

* Patient Appointment - Service Unit based scheduling and booking

* Patient Appointment - issue fixed #13016 Healthcare Patient Appointment Save Button Issue - remove validation on save and enable save on book appointment

* Codacy fixes on PR #13211

* Codacy fixes on PR #13211

* Fee validity test -fixes

* Fee Validity - test - fixes
2018-03-08 13:08:35 +05:30
Achilles Rasquinha
11241044b2 Merge pull request #13227 from achillesrasquinha/py3
[FIX] use text_type instead of unicode, use cmp from past.builtins
2018-03-08 12:58:21 +05:30
Achilles Rasquinha
9050998e06 [FIX] use text_type instead of unicode, use cmp from past.builtins 2018-03-08 12:55:41 +05:30
theopen-institute
1bfa243190 fix patch that causes error on bench update (#13222) 2018-03-08 11:20:40 +05:30
lasalesi
470977fa13 corrected setup wizard tax rates for Switzerland 2018 (#13220) (#13221) 2018-03-08 11:19:56 +05:30
Shreya Shah
c3bf1fa009 [Fixes] Chapter DocType (#13213)
* fetch chapter head from member doctype instead of user

* add enabled in grid view and set default as 1
2018-03-07 16:27:30 +05:30
rohitwaghchaure
bbd9b71547 Provision to include exploded items while making transfer entry of raw materials for subcontrtacted item (#13043) 2018-03-07 15:39:40 +05:30
Nabin Hait
c50d7446b5 Merge branch 'master' into develop 2018-03-07 13:09:07 +05:30
Raghavendra Kamath
6193b92b70 Add new logo in splash image and optimise pngs (#13206) 2018-03-07 12:39:38 +05:30
Achilles Rasquinha
78064b7a45 Update patches.txt 2018-03-05 17:53:23 +05:30
Nabin Hait
c43c95e0aa Fixed merge conflict 2018-03-05 14:54:44 +05:30
Zarrar
950fff0ba1 changes according to the workflow (#13160) 2018-03-05 11:30:53 +05:30
Zarrar
4417cb0006 improve multiple add dialog, populate parent's depends on with child tasks (#13142) 2018-03-05 11:08:15 +05:30
Kenneth Sequeira
89795c3f69 Doc imp (#13148)
* added intro, item and prices video, fixed image links in item and prices

* update 2: first 5 videos added

* added all videos to the user manual

* updated .gitignore
2018-03-05 11:06:44 +05:30
Zarrar
1e4e004667 leave application assigned by naming_series (#13158) 2018-03-05 11:05:59 +05:30
tundebabzy
458a1fe61a codacy 2018-03-03 18:11:48 +01:00
tundebabzy
ef605d5f00 codacy 2018-03-03 18:03:04 +01:00
tundebabzy
3b1251ef47 codacy tinzz 2018-03-03 17:36:07 +01:00
tundebabzy
2379451b68 codacy tinzz 2018-03-03 17:18:47 +01:00
tundebabzy
fbdd5d30e9 more tests and bug fixes 2018-03-03 11:19:18 +01:00
tundebabzy
024c28acf7 fix proration logic to reduce possibility of rounding errors 2018-03-03 10:32:02 +01:00
tundebabzy
79a01561d5 enhancement: do nothing if cancel_sbscription is called for cancelled subscription 2018-03-03 07:39:44 +01:00
tundebabzy
d43422c18e enhancement: ensure subscription is cancelled before attempting to restart 2018-03-03 07:37:59 +01:00
tundebabzy
e13570f343 codacy review 2018-03-02 12:27:12 +01:00
tundebabzy
9e863b9572 Merge branch 'develop' into new-subscription 2018-03-02 11:10:27 +01:00
tundebabzy
c15dc21b7d clean up 2018-03-02 11:00:15 +01:00
tundebabzy
49d34df8f4 more tests 2018-03-02 10:16:57 +01:00
tundebabzy
688fd6b205 prorate invoice when cancelling subscription 2018-03-02 10:16:42 +01:00
tundebabzy
4499e5351c add article 2018-03-02 06:51:33 +01:00
tundebabzy
16afa8765e tiny refactor of invoice setting logic 2018-03-01 17:16:41 +01:00
tundebabzy
9df4f0bd43 fix: apply_discount_on field should be of type Select not Data 2018-03-01 17:12:43 +01:00
tundebabzy
8670c85827 make sure default apply_discount_on is set when creating invoice 2018-03-01 17:11:14 +01:00
tundebabzy
ca5cf35a99 fix: task should explicitly call commit and rollback if error 2018-03-01 17:06:39 +01:00
tundebabzy
36c18c913e docstrings 2018-03-01 16:44:10 +01:00
tundebabzy
0ec445214c hook to hourly scheduler 2018-03-01 11:54:32 +01:00
tundebabzy
78fb12663a fix test 2018-03-01 11:27:48 +01:00
tundebabzy
b91ec79494 update tests and more tweaks 2018-03-01 10:47:00 +01:00
tundebabzy
7eabbd93e1 update start date alone after restarting subscription 2018-03-01 09:09:23 +01:00
tundebabzy
2a11c18383 set initial invoice period based on subscription start 2018-03-01 08:47:38 +01:00
tundebabzy
a93fa16bce freeze screen while waiting for updates on subscription 2018-03-01 08:45:56 +01:00
tundebabzy
328adedbc8 adds start field to record subscrption start date 2018-03-01 08:45:01 +01:00
Harsh Patel
5bebbbe7a9 [Feature] Supplier warehouse link field on purchase order (#13051)
* Multiple Features:
[New] Supplier warehouse link field on purchase order for sub-contracting
[New] Auto select supplier warehouse while making purchase receipt from purchase order

* Set default to_warehouse in stock entry as the supplier warehouse
2018-03-01 11:33:25 +05:30
Charles-Henri Decultot
bc7a549fdb Gocardless integration (#13008)
* GoCardless integration

* Addition of a method for determining if the email should be sent or not

* Correction for Tests

* Codacy fix

* Documents moved to ERPNext

* Codacy fix

* Codacy fixes

* Remove method where not necessary and replace with hasattr
2018-03-01 10:59:21 +05:30
tundebabzy
3fecbb98c5 Make Expense Claim from Employee Advance #13053 (#13074)
* allow to make expense claim from employee advance

* make expense claim only if claimed amount < paid_amount

* expense claim made from employee advance is paid
2018-03-01 10:50:45 +05:30
tundebabzy
d9fec69a70 update test case, fix bugs 2018-03-01 05:34:02 +01:00
tundebabzy
8f37926ca8 add ability to cancel, restart and refresh subscription 2018-03-01 04:57:23 +01:00
Achilles Rasquinha
45522327b9 Merge pull request #13137 from achillesrasquinha/py3
Fix unittest
2018-02-28 22:01:35 +05:30
Achilles Rasquinha
646522886c self.assertEqual 2018-02-28 21:13:51 +05:30
Ameya Shenoy
c20901443e updated develop_version to 11 (#13133) 2018-02-28 17:38:23 +05:30
tundebabzy
2cccad0274 more tests and quick fix 2018-02-28 12:45:09 +01:00
tundebabzy
a5bc057ad4 adds missing 'translatability' 2018-02-28 12:24:16 +01:00
tundebabzy
86ee455cbc more tests and bug fix 2018-02-28 12:21:08 +01:00
tundebabzy
b3d5777e55 more test cases and bug fixes 2018-02-28 12:11:19 +01:00
Achilles Rasquinha
96698c9a77 Use range instead xrange (#13128)
* Use range instead of xrange

* convert float to int
2018-02-28 16:12:51 +05:30
Faris Ansari
72d8509b3d python 3 fix (#13127) 2018-02-28 12:53:34 +05:30
tundebabzy
3aaf693abd adds task -process 2018-02-28 05:12:18 +01:00
tundebabzy
95a4ca9429 update test cases 2018-02-27 18:09:06 +01:00
tundebabzy
9bf029a16e generate new invoice only when current_invoice_end is past 2018-02-27 15:19:02 +01:00
Achilles Rasquinha
11a5f78d3e Merge pull request #13070 from achillesrasquinha/py3
[FIX] sorting multiple compares
2018-02-27 19:48:25 +05:30
tundebabzy
45b6a1719f refactor:
- current_invoice _start and end should be determined by trial period or billing period
- adds new functions to get billing period data
2018-02-27 15:14:19 +01:00
tundebabzy
c634ca8737 adds validation to billing_interval_count in Subscription Plan 2018-02-27 14:12:39 +01:00
tundebabzy
3c26a7e862 adjusts query so multiple plans can be used to create single invoice 2018-02-27 09:36:29 +01:00
tundebabzy
559d01e176 allows to rename subscription plan 2018-02-27 09:13:35 +01:00
tundebabzy
07313c281a adds more assertions to test cases 2018-02-27 09:00:13 +01:00
Ameya Shenoy
3ee22f0137 rename valid_email to validate_email (#13103) 2018-02-27 12:59:12 +05:30
Frappe PR Bot
c6e2d750bb [Translation] Updated Translations (#13097) 2018-02-27 11:00:59 +05:30
Zarrar
033eb779d4 minor fixes for member (#13101) 2018-02-27 11:00:47 +05:30
tundebabzy
048bcbf080 more tests and code fixes 2018-02-26 22:17:06 +01:00
tundebabzy
b84e9519c2 Subscriptions doctype - subscriber should be set only once 2018-02-26 20:35:20 +01:00
tundebabzy
1ea5055967 fix another date comparison bug 2018-02-26 20:17:59 +01:00
tundebabzy
4d8175f9d9 adds test cases and fix resulting bugs 2018-02-26 18:56:05 +01:00
tundebabzy
cd700efc0b only generate invoice after_insert if subscription is not in trial period 2018-02-26 16:26:36 +01:00
tundebabzy
0091c86e80 fix date comparison bug 2018-02-26 16:18:55 +01:00
tundebabzy
08a11b4d1f sets default for days_until_due to 0 2018-02-26 16:13:45 +01:00
tundebabzy
d3fdcd9da5 set after_insert methods:
- if subscription is not in trial period, generate sales invoice
2018-02-26 16:10:47 +01:00
tundebabzy
b72aac6729 adds validation:
- ensure trial period dates are in order
2018-02-26 15:56:47 +01:00
tundebabzy
7a2c6df645 sets Subscription doc status in before_save 2018-02-26 15:55:32 +01:00
tundebabzy
3010996cc5 adds before_insert methods:
- set current_invoice_start
- set current_invoice_end
2018-02-26 15:51:32 +01:00
tundebabzy
35e92c7d29 removes start field from Subscriptions 2018-02-26 15:25:26 +01:00
tundebabzy
6e014331c5 removes end_date from Subscriptions doctype 2018-02-26 14:05:54 +01:00
tundebabzy
2b5298238e adds prorate field to Subscription Settings 2018-02-26 13:58:29 +01:00
tundebabzy
2dee342501 Subscriptions doctype - trial start and end are set_only_once 2018-02-26 13:34:25 +01:00
Zarrar
e53a238665 minor fix (#13095) 2018-02-26 15:59:20 +05:30
Shreya Shah
70a57e08fd New Report Employee Advance Summary (#13040)
* New Report Employee Advance Summary

* JSON style column definition
2018-02-26 15:58:57 +05:30
tundebabzy
cbe4f5b6b3 changes to subscription settings 2018-02-26 11:22:53 +01:00
tundebabzy
066958a794 subscription_invoice doctype changes 2018-02-26 11:22:05 +01:00
tundebabzy
8457bb2c7e change in Subscription Settings 2018-02-26 08:13:41 +01:00
rohitwaghchaure
8ffd5d40e3 [Fix] UX for delivery trip (#13046)
* [Fix] UX for delivery trip

* Fixed test cases
2018-02-26 12:25:39 +05:30
tundebabzy
9360f81b94 Validity of Quotation #12858 (#13078)
* add new setting for default valid_till date

* codacy cleanup
2018-02-26 12:23:41 +05:30
tundebabzy
9016890ecf adds Subscription Settings doctype 2018-02-26 06:15:31 +01:00
tundebabzy
988f5ca38b hide trial_period_end and invoices if empty 2018-02-26 05:14:10 +01:00
tundebabzy
bbac07d9d2 use naming series for Subscriptions 2018-02-26 05:07:56 +01:00
tundebabzy
dda6234cab remove subscription name and name by subscriber 2018-02-26 04:52:13 +01:00
tundebabzy
7c455ad4b6 display invoices section field only if there are invoices 2018-02-26 04:50:45 +01:00
tundebabzy
4ca5e81aa3 adds description for billing_interval_count in subscription plan 2018-02-26 04:47:19 +01:00
tundebabzy
4d31255d5c customer field in Subscriber should be Link 2018-02-26 04:40:53 +01:00
tundebabzy
a07811b67f adds new doctype - Subscriptions
- encapsulates subscription
- linked to a subscriber
- subscription can contain many plans
- contains history of generated invoices
2018-02-26 04:25:30 +01:00
Nabin Hait
2572b05b35 Update territory and customer_group patch optimization (#13076)
* Update territory and customer_group patch optimization

* Update update_territory_and_customer_group.py
2018-02-25 10:45:24 +05:30
tundebabzy
2581e2e5d7 New doctype - Subscription Plan:
- Plan is to be linked to a Product
- Plan will be used to create Invoice items
- Subscriber can have multiple plans
- Contains billing cycle information
2018-02-24 11:31:42 +01:00
tundebabzy
007919c03f New doctype - Subscriber:
- Encapsulates a subscriber to a service or product
- Contains subscription specific information
2018-02-24 11:19:06 +01:00
Zarrar
4a0d27078e optimize patch for faster execution (#13068) 2018-02-23 17:41:32 +05:30
Achilles Rasquinha
a3555aa7bd [FIX] sorting multiple compares 2018-02-23 17:22:07 +05:30
Nabin Hait
802819df9d Merge branch 'master' into develop 2018-02-23 16:59:44 +05:30
Nabin Hait
7570774ebe Merge branch 'master' into develop 2018-02-23 16:49:43 +05:30
Shreya Shah
70a68897cc auto name on the basis of naming series (#13056) 2018-02-23 16:24:59 +05:30
Frappe PR Bot
239c121f7d [Translation] Updated Translations (#13059) 2018-02-23 16:23:00 +05:30
Faris Ansari
97b212e348 Patch optimization (#13060)
* Patch fixes

* fix codacy

* Update item_barcode_childtable_migrate.py
2018-02-23 16:19:41 +05:30
Raghavendra Kamath
1a9388acbb Clean inline css found in chapter and grant for loops! (#13038)
* Clean inline css found in chapter and grant for loops!

* Remove redundant css

* remove unwanted ide files and append gitignore

* remove unnecessary line from build.json

* restore import for variable.less

* remove kdev from gitignore
2018-02-23 14:34:44 +05:30
Nabin Hait
5b9f3b0cd3 Merge branch 'master' into develop 2018-02-22 18:18:36 +05:30
Nabin Hait
0e3db275e5 Merge branch 'master' into develop 2018-02-22 18:10:39 +05:30
Suraj Shetty
8a41887f68 patch exception fixes (#13037)
* patch exception fixes

* reload daily_work_summary_group_user doctype
2018-02-22 15:56:33 +05:30
Nabin Hait
cf72d7f135 Fixed merge conflict 2018-02-22 14:47:26 +05:30
tundebabzy
cad22dbe39 Cutomisable Cash Flow Reports (#12969)
* add child doctype - Cash Flow Mapping Account

* adds new doctype - Cash Flow Mapping

* adds new doctype - Cash Flow Mapper

* adds new doctype Cash Flow Mapping Template

* adds new doctype Cash Flow Mapping Template

* adds adjustments to Cash Flow Mapper:
- remove fields from Cash Flow Mapping Template Details
- update in Cash FLow Mapper

* get cash_flow_accouts from Cash Flow Mapping

* change `tmp` to `mappers` and make sure `mappers` is sorted by its `position` field

* changes description from 'Net Profit/Loss' to 'Profit for the year'

* set `net_profit_loss` `parent_account` properly

* modify `get_account_type_based_data`:
- changed signature such that `account_type` parameter is now `account_name`
- where clause in query is now based on `name`

* remove zero rows

* de-duplicates row, summing similar accounts in the process

* makes gl sum calculation use `parent_account` as a condition

* add the `section_leader` immediately after adding net profit, sorts `accounts` by `is_working_capital` field

* adds `is_working_capital` to "account_types" so that we can use this to determine when to add "Changes in working capital" for operating activities

* add "Movement in working capital" subheader

* refactor code for readability

* adds new fields to `Cash Flow Mapping`:
- `is_interest_paid` to allow me recognise accounts for 'Interest Paid'
- `is_income_tax_paid` to allow me recognise accounts for 'Income Taxes Paid'

* allow `Cash Flow Mapping` to be renamable

* adds new field - `section_subtotal` useful for only Operating Activities

* changes `Cash Flow Mapping` doctype fields:
- remove `is_income_tax`_field
- add `is_income_tax_liability` field to identify tax payable accounts
- add `is_income_tax_expense` field to identify tax expense accounts in P or L

* calculates and shows tax paid adjustment in cash flow statement

* renames `is_interest_paid` to `is_finance_cost`

* - adds finance costs calculation
- correctly sets opening balance dates

* prevents users from selecting extra options in Cash Flow Mapping

* adds validation to prevent selecting multiple options

* adds new fields to Cash Flow Mapping

* calculate non cash p or l items (2nd pass)

* separates default cash flow generation from custom

* adds new setting to Accounts Settings:
- allow user elect to use customised cash flow report

* clean up

* removes mandatory constraint from accounts field

* allow rename, disallow create and delete

* adds patch to add default Cash Flow Mappers

* refactors custom_cashflow

* add article to explain configuration

* refactor

* further refactor

* final clean up (hopefully)

* clean up for codacy

* more codacy fixes

* more codacy fixes

* fix broken patch

* rename article to .md

* create default mappers after install

* PEP 8

* create the tables in `after_install` call
2018-02-22 11:08:36 +05:30
tundebabzy
27d558c9ef Optionally allow overlap on Timesheet #12893 (#13018)
* give user option to ignore time overlap validation

* move settings to new Projects Settings

* clean up - remove trailing space
2018-02-22 11:05:49 +05:30
rohitwaghchaure
4e8fdf7b3f [Enhance] Quality Inspection Template (#12988)
* [Enhance] Quality Inspection Template

* Test case and patch

* Update make_quality_inspection_template.py
2018-02-22 11:03:48 +05:30
Zarrar
79756c44c9 Update Territory & Customer Group across all transaction (#13004)
* added method for update query based on changes

* patch added

* updated function, moved util function
2018-02-22 10:57:49 +05:30
tundebabzy
637b242a34 Credit card default account should be debtors #12989 (#13029)
* allow receivable account type in mode of payment

* update `default_account` field description
2018-02-22 10:51:57 +05:30
Suraj Shetty
d3069fee4d Daily work summary refactor (#12944)
* added daily work summary setting doctype and code to support feature

this will allow multiple setting for daily work summary

* added daily work summary setting user doctype

* made changes in daily work summary code

* [minor] entry change in hr config file

* deleted previous daily work summary settings (and its company) doctype

* removed unwanted permission check

* toggled read_only option for enabled field

* removed print statements

* add patch for the changes

* doc changes

* [minor] indentation fix

* fixed tests

* indentation fixes

* codacy issue fix

* formatting fixes

* renamed doctype

Renamed Daily Work Summary Setting to  Daily Work Summary Group and did related code and doc changes

* fixed typo

* updated doc

* codacy issue fix

* [minor] renamed doctype name in json

* Renamed old doctype

* fixed indentation

* codacy fix

* indentation fix

* renamed doctype

* handled patch exception

* fixed exception

* Update daily_work_summary_group.py

* rename patch file

removed abbreviation in file name

* handled exception in patch code

* removed Unnecessary pass statement

* [minor] indentation fix
2018-02-21 15:15:43 +05:30
Charles-Henri Decultot
b8c088edb7 Transaction Log for France (#12795)
* Regional overrides for France

* Addition of tests and documentation
2018-02-21 11:07:33 +05:30
Faris Ansari
7c744acc49 Changes for Rollup (#12924)
* Changes for rollup

* remove variables.less
2018-02-20 14:21:50 +05:30
rohitwaghchaure
e2558308f6 [enhance] Production Plan (#12160)
* [enhance] Production plan

* Test cases

* Removed production planning tool

* Documentation

* Added actual qty in material request production item

* Renamed field 'Use Multilevel BOM' to 'Include Exploded Items'
2018-02-20 12:20:00 +05:30
Pawan Mehta
244e235c48 Sales Payment Summary - fix for change amount (#12981)
* [fix] #12980

* apply change amount to cash
2018-02-20 12:15:10 +05:30
Shreya Shah
f718b0c0df Currency filter in Pricing Rule (#11776)
* added currency filter

* modified files

* pull margin only if currency matches

* Renamed price to rate in pricing rule

* fetch rate only if currency matches

* rebase with develop

* rebase with develop

* patch to set currency in existing docs

* currency field mandatory in pricing rule

* modified test cases

* rebase with develop

* fixed test case
2018-02-20 11:26:46 +05:30
Achilles Rasquinha
9b74f8bd37 Update requirements.txt 2018-02-16 17:49:55 +05:30
joezsweet
16862f9051 Better handling of auto set barcode_type issue (#12970)
Get barcode_type options and check if value is included
2018-02-16 17:33:30 +05:30
Charles-Henri Decultot
894ab7a664 Braintree integration documentation (#12775)
* Braintree integration documentation

* Cleanup documentation
2018-02-16 15:16:47 +05:30
riyasrawther
d1134516c2 Warehouse wise Item Balance, Age and Value (#12879)
* Create warehouse_wise_item_balanace_age_and_value.py

* Create warehouse_wise_item_balance_age_and_value.js

* Create warehouse_wise_item_balance_age_and_value.json

* Update warehouse_wise_item_balance_age_and_value.json

* Update warehouse_wise_item_balance_age_and_value.json

* Update warehouse_wise_item_balance_age_and_value.json

* Update warehouse_wise_item_balance_age_and_value.js

* Rename warehouse_wise_item_balanace_age_and_value.py to warehouse_wise_item_balance_age_and_value.py

* Update warehouse_wise_item_balance_age_and_value.py
2018-02-16 14:53:53 +05:30
Shreya Shah
093e7e6e98 Refactor Expense Claim (#12883)
* patch for custom workflow

* deleted field approval_status

* replaced approval_status with workflow_state

* updated test cases

* validation to check expense approver

* check if workflow_state_name already exists

* fixes

* modified notifications.py

* removed field exp_approval and modified test cases
2018-02-16 14:49:39 +05:30
joezsweet
bd7c00c59e [Hot Fix] barcode_type auto set to a wrong value (#12957)
* Fix barcode_type auto set to a wrong value

This fix a problem that arise, for some weird reason that i can't figure out, when the barcode length == 8, 9,10 or 12,13 and barcode_type is not set; barcode_type become "ean8, ean9, ean10, ean11, ean12, ean13"

* codacy fix
2018-02-16 14:47:10 +05:30
Zarrar
441a1e1b8a Validate Bank name in Setup wizard on the same slide (#12968)
* validate bank name before moving on to next slide

* Update setup_wizard.js
2018-02-16 14:44:42 +05:30
Vishal Dhayagude
1e0ae07bff [fix] Validate Party in not present in Party Type (#12910)
* [fix] Validate Party in not present in Party Type

* [fix] Minor Changes

* [fix] Valid Customer and Supplier fetch

* [WIP] Allow and prevent for creating party

* [fix] minor changes

* [fix] Requested Changes

* [fix] Codacy issue

* Update opening_invoice_creation_tool.py
2018-02-16 13:13:37 +05:30
Shreya Shah
3a9eec2e92 Calculate due date in Purchase Invoice on the basis of Supplier invoice date (#12913)
* pass bill_date as parameter and calculate due_date on that basis

* calculate payment_schedule on the basis of bill_date if present else posting_date

* add bill_date as an argument to get_party_details

* pass bill_date on supplier trigger in purchase invoice
2018-02-16 13:05:21 +05:30
Shreya Shah
278af1befb remove deprecated processing payroll video links (#12947) 2018-02-16 12:58:04 +05:30
Shreya Shah
f4b271a02e Customer and Supplier link fields in Member DocType (#12942)
* added link fields customer and supplier

* fixed a typo
2018-02-16 12:56:01 +05:30
Shreya Shah
394b7a2fa3 Rename Offer Letter to Job Offer (#12934) 2018-02-16 10:49:34 +05:30
rohitwaghchaure
5a5f73e46a Merge pull request #12602 from PawanMeh/fixes_8540
Select multiple raw material items for Sub Contract Stock Entries
2018-02-15 18:54:29 +05:30
Nabin Hait
8a562266ad Update set_b2c_limit.py 2018-02-15 18:40:18 +05:30
Nabin Hait
0c7ce02e54 Update set_b2c_limit.py 2018-02-15 18:12:27 +05:30
Nabin Hait
44658d44c5 Update gstr_1.py 2018-02-15 17:24:15 +05:30
saurabh-bhosale
307063e64e [Fix] Invalid Syntax in gstr_1.py (#12946)
* [Fix] Added missing parenthesis in gstr_1.py

* Minor change
2018-02-15 17:13:35 +05:30
Saurabh
82ffdd7dc6 Merge branch 'master' into develop 2018-02-15 15:17:04 +05:30
Vishal Dhayagude
bd59a53173 [new] B2C limit fetch from GST Settings (#12905)
* [new] b2c limit fetch from gst setting

* [fix] Patch Added for b2c limit

* Update gstr_1.py
2018-02-15 14:22:11 +05:30
Achilles Rasquinha
0bf19a1ac5 Merge pull request #12931 from achillesrasquinha/py3-iteritems
Py3 iteritems
2018-02-15 13:49:43 +05:30
Achilles Rasquinha
c94df80d88 Merge pull request #12925 from netchampfaris/enable-translatable-patch
Patch to enable translatable
2018-02-15 12:18:26 +05:30
Achilles Rasquinha
d56b00f5fd Merge pull request #12932 from achillesrasquinha/py3-basestring
Py3 basestring
2018-02-15 12:16:12 +05:30
Achilles Rasquinha
dd8e1ff5ba Merge pull request #12930 from achillesrasquinha/py3-fixes
Py3 fixes
2018-02-15 12:15:56 +05:30
Achilles Rasquinha
5f0c70361a iteritems 2018-02-15 11:55:45 +05:30
Achilles Rasquinha
1697a7aa81 replaced string_types with basestring 2018-02-15 11:39:45 +05:30
Achilles Rasquinha
714c7465fb Updated Python 3 fixes 2018-02-15 11:31:05 +05:30
Shreya Shah
8b531c1ee6 Fix parenthesis in buying controller (#12923) 2018-02-15 11:21:49 +05:30
Prateeksha Singh
387a242232 Merge pull request #12928 from pratu16x7/hub-pages
Hub pages
2018-02-15 11:05:22 +05:30
Prateeksha Singh
9889899603 [hub] cleanups 2018-02-15 10:54:23 +05:30
Prateeksha Singh
1ad072f2a9 [hub] cleanups 2018-02-15 10:47:59 +05:30
Prateeksha Singh
2073959bb8 Update entity properties 2018-02-15 10:24:16 +05:30
Prateeksha Singh
6ee035ba5b tree parent working 2018-02-15 08:50:31 +05:30
Faris Ansari
1e422f2383 Patch to enable translatable 2018-02-14 22:18:55 +05:30
Prateeksha Singh
25d5a1d890 add company pages 2018-02-14 19:53:18 +05:30
Achilles Rasquinha
806a18b511 Merge branch 'develop' of https://github.com/frappe/erpnext into develop 2018-02-14 19:40:43 +05:30
Nabin Hait
e6d65bc2a1 Fixed translations and tests (#12900)
* Fixed translations and tests

* minor fixes

* minor test fixes
2018-02-14 17:44:06 +05:30
Achilles Rasquinha
361366ebe6 Python 3 fixes. (#12916)
* Fixed iteritems and exceptions

* python3-fixes

* fixed iteritems
2018-02-14 17:08:59 +05:30
Prateeksha Singh
8e84fa9f9e Merge pull request #12914 from achillesrasquinha/company-logo
Added Company Logo to DocType
2018-02-14 17:04:47 +05:30
Achilles Rasquinha
4b847f7897 fixed iteritems 2018-02-14 16:44:58 +05:30
Achilles Rasquinha
c67b1258dd python3-fixes 2018-02-14 16:14:52 +05:30
Achilles Rasquinha
b723033213 python3-fixes 2018-02-14 16:13:37 +05:30
Achilles Rasquinha
1c86d18837 Added Hub Company Logo 2018-02-14 16:05:32 +05:30
PrakashH
908af53fcd Update stock-reconciliation-for-non-serialized-item.md (#12908) 2018-02-14 13:16:25 +05:30
PrakashH
0c4c2981c8 Update journal-entry.md (#12909) 2018-02-14 13:15:53 +05:30
Saurabh
2735701aab resolved merge conflicts 2018-02-14 11:51:09 +05:30
Achilles Rasquinha
5cf536b39d Fixed iteritems and exceptions 2018-02-13 19:05:54 +05:30
Manas Solanki
ab70b53948 Delete .swp (#12894)
* Delete .swp

* updated gitignore to exclude temp vim files
2018-02-13 18:27:02 +05:30
Nabin Hait
bb821ec2af Fixed test dependencies 2018-02-13 14:49:09 +05:30
Achilles Rasquinha
56b2e12af8 Python 3 fixes [merge asap] (#12884)
* Python 3 fixes

* fixed compare
2018-02-13 14:42:40 +05:30
Prateeksha Singh
ecc6f86c7c Merge pull request #12885 from netchampfaris/setup-progress-deadlock-fix
[deadlock fix] Save if not set
2018-02-13 13:16:37 +05:30
Faris Ansari
f0056f7338 [deadlock fix] Save if not set 2018-02-13 12:18:24 +05:30
saurabh-bhosale
99eb30242d [Fix] Bug fix in customer_primary_address frappe call (#12880) 2018-02-13 07:58:47 +05:30
pawan
471a018e67 remove old stock entry method/rewrite test case 2018-02-12 21:15:46 +05:30
Nabin Hait
b005950ba7 Merge branch 'mntechnique-show_address_in_online_pos' into develop 2018-02-12 19:25:27 +05:30
Nabin Hait
662b23ce57 get address display in customer 2018-02-12 19:25:00 +05:30
Nabin Hait
4adcced9ae Merge branch 'show_address_in_online_pos' of https://github.com/mntechnique/erpnext into mntechnique-show_address_in_online_pos 2018-02-12 19:14:38 +05:30
sivankar
a4ff220769 removed duplicate function and other CLI fixes (#12876)
* merge shelf like and manufacturing date

* setting default manufacturing date as todays date

* setting default manufacturing date as todays date

* fix

* Improvements to batch auto naming (#12496)

* refactor:
add new function - batch_uses_naming_series
use batch_uses_naming_series in autoname method

* properly update naming series on delete:
- add new functions - get_batch_prefix, get_batch_naming_series_key, get_batch_naming_series
- refactor get_name_from_naming_series
- add after_delete method

* add documentation and rename some functions

* PEP 8 compliance

* test

* added support for jinja template and added validation if expiry date is set or not if item has_expiry_date is set

* bug fix, renamed item_code to item as in batch doctype we refer 'item code' by 'item'

* added manufacturing date wise sort

* added prefix to expiry date and manufacturing date

* Quality Review fixes
2018-02-12 17:24:26 +05:30
pawan
1b8c13b175 call make_rm_stock_entry 2018-02-12 16:59:59 +05:30
Nabin Hait
a8d10b7332 Update setup.py 2018-02-12 16:54:13 +05:30
Shreya Shah
d9a585bdad Leave workflow patch fixes (#12823)
* modified patch for leave application workflow

* removed leave approval field from leave application doctype

* fetch lwp and attendance only if workflow field exists

* modified test cases

* modified files with leave application

* docstatus draft for rejected applications

* modified leave application calendar

* test fixed

* run patch only if any record exists
2018-02-12 16:02:57 +05:30
Nabin Hait
c69f4c0c79 Merge branch 'joezsweet-multi-barcode' into develop 2018-02-12 16:00:56 +05:30
Nabin Hait
e21e59614f Fixed merge conflict 2018-02-12 15:59:55 +05:30
tundebabzy
c89782502c Report presentation currency (#12670)
* Add new Select to filters

* get the currencies from database rather than hardcoded

* label report columns:
- If presentation currency is available in filters, use it or
- If company is available in filters, use it or
- use default company currency

* add new function - get_currency

* tweak new function `get_currency`

* add new function `convert` to convert a value to another currency

* add new function `convert_to_presentation_currency`

* clean up `get_currency` first pass

* memoise the exchange rates

* limit fetched GL entries to to_date

* check if account type is p&l or not and use appropriate exchange rate based on that

* change EXCHANGE RATE to a dict, use for memoisation

* rename EXCHANGE_RATE

* cache exchange rates and use them as needed

* add docstrings

* add presentation currency logic to financial statement reports

* move new functions from `general_ledger.py` to new module

* clean up

* PEP 8 clean up

* move function to util.py

* PEP 8 clean up

* remove presentation currency option from cashflow

* adjust currency as needed

* allow users to save presentation currency in Accounts Settings

* add new function `get_presentation_currency_list`

* refactor query_report modules with no promises

* Revert "allow users to save presentation currency in Accounts Settings"

This reverts commit 3b58a6296c.

* show print page in correct currency

* Update utils.py
2018-02-12 15:04:50 +05:30
joezsweet
04338cfb4b removed extra spaces 2018-02-12 10:12:27 +01:00
joezsweet
f9cb7ea611 removed extra spaces 2018-02-12 10:05:59 +01:00
sivankar
621740efd9 Enhancement and bug fix in batch (#12753)
* merge shelf like and manufacturing date

* setting default manufacturing date as todays date

* setting default manufacturing date as todays date

* fix

* Improvements to batch auto naming (#12496)

* refactor:
add new function - batch_uses_naming_series
use batch_uses_naming_series in autoname method

* properly update naming series on delete:
- add new functions - get_batch_prefix, get_batch_naming_series_key, get_batch_naming_series
- refactor get_name_from_naming_series
- add after_delete method

* add documentation and rename some functions

* PEP 8 compliance

* test

* added support for jinja template and added validation if expiry date is set or not if item has_expiry_date is set

* bug fix, renamed item_code to item as in batch doctype we refer 'item code' by 'item'

* added manufacturing date wise sort

* added prefix to expiry date and manufacturing date
2018-02-12 14:33:40 +05:30
Fahim Ali Zain TP
277935be79 Deduct Rejected Item's Raw materials in SubContracting (#12837)
* Deduct Rejected Item's Raw materials in SubContracting frappe/erpnext#12752

* Travis Build Fix
2018-02-12 11:59:07 +05:30
Revant Nandgaonkar
2dee8fc255 Hotels (#11907)
* [new-module] hotels, start

* Multiple Changes

Hotel Settings Added
Make invoice on Hotel Reservation

* Hotel Room validation for overbooking

* Added test fixtures and test for Hotels

* Added Tests for Hotels

Overbooking
Pricing not set

* [WIP] Documentation

Hotel Room and Screenshot

* Added Calendar view for Hotel Room Reservation

* Added Report - Hotel Room Occupancy

* Added Hotel Reservation User in Hospitality domain
2018-02-12 11:57:12 +05:30
Jamsheer
be9eae06ec Physician - Set Details by User or Employee (#12558) 2018-02-12 11:33:44 +05:30
Ameya Shenoy
5c33a04043 Shareholder and related doctypes (#12215)
* Added doctypes related to shares

- Shareholder doctype, the entity who does the transaction
- Share doctype, a child table to kepp list of all shares
- Share Transfer doctype, Logs of all made transactions

* Added logic for share transfer

- update shareholder automatically on share transfer/issue/purchase
- purchase and transfer have method remove_share which doesn't get executed because of some bug

* Added report view for share ledger

* Removed share number tracking

- removed share number tracking from Share Ledger child table for Shareholder doctype
- new doctype Share Type created

* Share Balance report added

- math behind Share Balance report needs fixing

* Changes in shareholder

- Share numbers are not tracked in Shareholder
- Share Ledger doctype deleted
- Share Balance Report bug fixed

* Shareholder

- fixed report for share balance
- remove bug from share transfer by making share type mandatory
- added buttons to shareholder for direct link to report

* Added tests for Share Transfer

* minor codacy fixes

* Added Shareholder to Party Type

* rate in share ledger & balance report is currency

* First attempt at modelling shares after Item

* Share Manager changes

- on creation of shareholder party it should check if the same combo exists
- in shareholder party make report button visible iff folio no exists
- create folio no on creation of share transfer iff it doesnt already exist
- move reports from shareholder to shareholder party

* Shareholder chages

- delete share child table doctype
- autoname added to folio no
- modify tests for share transfer

* minor changes

* removed share_no child doctype

* Restructured Share Transfer Logic (not tested)

- Everything revolves around Share Balance child table in Shareholder Party
- is_company flag still to be utilized

* Tested Share Tranfer

* minor fixes

* started new shareholder structure

* modified shareholder

* renamed Shareholder Party to Shareholder

* Shareholder rewrite complete

* new tests for shareholder written

* codacy fixes

* Added documentation
2018-02-12 11:32:47 +05:30
Britlog
be9a7231d4 Fix bootstrap layout and move checkout button upper (#12063) 2018-02-12 11:28:57 +05:30
Jamsheer
00c1cf0a5a Healthcare Menu Fixes (#12830) 2018-02-12 11:24:12 +05:30
Nabin Hait
b0819b528f Minor fixes in gstr reports (#12848) 2018-02-09 15:30:55 +05:30
rohitwaghchaure
2bdc4ce70d Merge pull request #12831 from PawanMeh/fixes_12829
Add Total Qty to online POS
2018-02-09 14:49:21 +05:30
rohitwaghchaure
7e75165826 Merge branch 'develop' into fixes_12829 2018-02-09 12:01:41 +05:30
pawan
081f40c1bf readded pos.css 2018-02-09 11:56:32 +05:30
Saurabh
0f3c4fa7a7 Codacy fix - used classmethod decorator 2018-02-09 11:30:11 +05:30
Saurabh
c29f3c70dc Merge branch 'develop' of https://github.com/frappe/erpnext into show_address_in_online_pos 2018-02-09 10:51:49 +05:30
Saurabh
b4ab89e1da [Mod] Code refactored to remove dependency on 'complete_address' field 2018-02-09 10:49:30 +05:30
Achilles Rasquinha
05bf8abab0 Merge pull request #12835 from manassolanki/education-docs
updated the docs for education
2018-02-09 10:37:54 +05:30
Manas Solanki
458a4e13bd updated the docs for education 2018-02-08 20:12:41 +05:30
pawan
1583120a54 remove pos.css 2018-02-08 20:00:12 +05:30
pawan
83b1b802d1 print hide and pos.less changes 2018-02-08 19:56:12 +05:30
pawan
33571dc567 print hide changes 2018-02-08 19:35:48 +05:30
pawan
31d37f110a print hide changes 2018-02-08 19:25:30 +05:30
Pawan Mehta
e2bc8bb644 Update sales_invoice.json 2018-02-08 16:35:03 +05:30
pawan
735b8c6094 [fix] #12829 2018-02-08 16:20:46 +05:30
Saurabh
ab8c7e616e resolved merge conflicts 2018-02-08 15:17:15 +05:30
Prateeksha Singh
152bf37e7f Merge pull request #12813 from pratu16x7/hub-fixes
Hub listing and entity page
2018-02-08 10:47:16 +05:30
pawan
5f779eb805 validation fix 2018-02-08 09:07:58 +05:30
Saurabh
0de0861bb4 Merge branch 'develop' of https://github.com/frappe/erpnext into show_address_in_online_pos 2018-02-08 00:10:49 +05:30
Prateeksha Singh
4413ce1be1 company page, deprecate custom page 2018-02-07 23:50:01 +05:30
pawan
2b885beaee code changes for single stock entry 2018-02-07 19:06:18 +05:30
Bassam Ramadan
fd044a0d5e docs-fixes (#12805) 2018-02-07 18:59:06 +05:30
Nabin Hait
7ec8a2eae0 Merge branch 'chdecultot-asset_depreciation_based_on_fiscal_year' into develop 2018-02-07 18:25:57 +05:30
Nabin Hait
ed26028a93 Minor fixes for depr based on FY 2018-02-07 18:25:45 +05:30
Nabin Hait
82a61c3bd9 Deleted restaurant order entry test cases 2018-02-07 16:56:07 +05:30
Nabin Hait
c224d34a2c Merge branch 'master' into develop 2018-02-07 16:07:20 +05:30
Nabin Hait
e2aec86bfa Merge branch 'mntechnique-pos_pf_with_draft_status' into develop 2018-02-07 12:40:56 +05:30
Nabin Hait
4b1bd15f7e Draft status in pos print format 2018-02-07 12:40:45 +05:30
Saurabh
50f7e29814 [New] Added Draft status in POS Invoice print formats if a Draft POS Invoice is printed 2018-02-06 00:23:21 +05:30
joezsweet
097a98cc10 fixed spaces to tabs 2018-02-05 13:16:00 +01:00
joezsweet
a8d5ef4891 space to tabs 2018-02-05 13:06:30 +01:00
Saurabh
e26773d91e Merge branch 'develop' of https://github.com/frappe/erpnext into show_address_in_online_pos 2018-02-05 17:05:29 +05:30
joezsweet
5f473611bd space to tab 2018-02-05 12:05:11 +01:00
joezsweet
2f7ab065fb - removed barcodes from force_item_fields 2018-02-05 11:54:32 +01:00
Nabin Hait
211b6c1fd7 Merge branch 'vishdha-gstr2_report' into develop 2018-02-05 16:10:16 +05:30
Nabin Hait
b02c109e1d Cleanup and fixes on GSTR-2 2018-02-05 16:09:51 +05:30
Prateeksha Singh
3eaccffbd9 [hub] items searchable via core filters 2018-02-05 12:58:30 +05:30
Prateeksha Singh
b8e9c9be08 [hub] form (info) view for items 2018-02-05 12:58:30 +05:30
Faris Ansari
9b64620bc0 [hub] hub page using BaseList 2018-02-05 12:57:49 +05:30
Nabin Hait
2ef1f84041 Fixed merge conflict 2018-02-03 09:14:53 +05:30
rohitwaghchaure
151834d746 Merge pull request #12741 from Helkyd/develop
Update Trial balance
2018-02-02 22:29:21 +05:30
Helkyd
5e93b02c85 Update trial_balance.py
Assuming that Account_number has NUMBERs will sort.
2018-02-02 12:27:30 +00:00
Saurabh
70d972d92e [Mod] Added descriptions to alert about reselecting the option in 'primary_address_and_contact_detail' 2018-02-02 16:18:17 +05:30
Helkyd
b258686b00 Update trial_balance.py
Fix to order only if account starts with Number ... while for others not required....
2018-02-01 15:53:30 +00:00
rohitwaghchaure
441032d39c Merge branch 'develop' into develop 2018-02-01 16:54:10 +05:30
Saurabh
7c8d508e28 [Mod] Dependant on complete_address field and loads updated mobile_no,address in onload method 2018-02-01 14:40:49 +05:30
Saurabh
df8add272c Merge branch 'develop' of https://github.com/frappe/erpnext into show_address_in_online_pos 2018-02-01 14:02:09 +05:30
Raghavendra Kamath
2afa8277a7 Update Readme to add new erpnext logo (#12728) 2018-02-01 11:53:01 +05:30
Nabin Hait
7ba092eaf9 Fixes for making stock entry against Pro Order (#12721) 2018-02-01 10:51:27 +05:30
Saurabh
f16d45b0a0 Merge branch 'develop' of https://github.com/frappe/erpnext into show_address_in_online_pos
Resolved Conflicts:erpnext/selling/doctype/customer/customer.json
2018-02-01 02:05:30 +05:30
Saurabh
9f5c2002ff [Mod] Removed the Dependency on Frappe PR
[Fix] Fixed a possible bug
2018-01-31 17:43:58 +05:30
Saurabh
9f29f60707 Merge pull request #12581 from britlog/website-product-spinner
[Website] Add number spinner for quantities in product page
2018-01-31 15:58:04 +05:30
Nabin Hait
ec2c9ec897 Merge branch 'master' into develop 2018-01-31 15:39:16 +05:30
rohitwaghchaure
2056ea6fb4 Update customer.js 2018-01-31 14:48:53 +05:30
Kenneth Sequeira
f6daf56054 Added Tutorial Videos for Education in User Manual (#12678)
* added erpnext education tutorial videos to the manual

* testing with div

* Update program-enrollment.md

Properly ended YouTube video.

* removed group assessment criteria page
2018-01-31 12:49:58 +05:30
Achilles Rasquinha
6ceffbd2f8 Merge pull request #12710 from achillesrasquinha/12704
Python 3 Compatible Fixes.
2018-01-31 11:23:05 +05:30
saurabh-bhosale
0c9a99a953 Merge branch 'develop' into show_address_in_online_pos 2018-01-30 17:48:12 +05:30
Achilles Rasquinha
39f3d7e3aa local import 2018-01-30 16:58:49 +05:30
Achilles Rasquinha
ac57c87bc3 Fixed spacing 2018-01-30 14:05:18 +05:30
Achilles Rasquinha
244dcae110 Fixed spacing 2018-01-30 14:03:59 +05:30
Achilles Rasquinha
ef58be1302 Fixed education string 2018-01-30 13:58:43 +05:30
tundebabzy
df50a6f828 Merge pull request #12705 from achillesrasquinha/12704
Fix for python 3 compatibility
2018-01-30 09:26:51 +01:00
system19
4e195d97c7 Minor - Healthcare Desktop UI (#12657)
* Minor - Healthcare Desktop UI

Minor - Healthcare Desktop UI

* Update desktop.py
2018-01-30 13:48:24 +05:30
Achilles Rasquinha
2862e25f3e fixed python3 error 2018-01-30 13:47:18 +05:30
vishdha
1910530e41 [fix] CDNR negative value 2018-01-30 12:19:56 +05:30
vishdha
109b408d11 [fix] minor changes in gst field alignment 2018-01-30 12:11:13 +05:30
vishdha
963dd1e4bc [minor] ITC data append to row 2018-01-30 11:51:57 +05:30
vishdha
e03e4a581f [fix] Fetch correct Tax Details 2018-01-29 22:55:23 +05:30
vishdha
98e33c31cd [wip] Gstr2 2018-01-29 22:54:38 +05:30
Cesar
d8b1927e8d Allow no ZERO Payment
Allow no ZERO Payment
2018-01-29 15:39:52 +01:00
Helkyd
d6a61ad0c3 Trial Balance sort by Account Name
Trial Balance order by Account Name
Used Sorted under Prepare_data Function.
2018-01-29 13:47:12 +00:00
Saurabh
59c915f599 Merge branch 'master' into develop 2018-01-29 18:53:54 +05:30
Saurabh
d581ff40ea Merge branch 'master' into develop 2018-01-29 17:42:37 +05:30
Saurabh
61f85a8dbd Merge pull request #12691 from frappe/codingCoffee-patch-1
conflict fix
2018-01-29 17:08:49 +05:30
Ameya Shenoy
471e27559f conflict fix 2018-01-29 17:07:57 +05:30
Cesar
58c040cffb Revert "Sort by account name"
This reverts commit 5cf01d9702.
2018-01-29 11:57:15 +01:00
Saurabh
03f6b3e588 resolved merge conflicts 2018-01-29 16:25:33 +05:30
Cesar
5cf01d9702 Sort by account name
Trial balance not sorted .. by adding those changes fixes the problem.
2018-01-29 11:54:12 +01:00
rohitwaghchaure
c385017056 Merge pull request #12638 from adityaduggal/develop
Resolves Issue #12630 -Added Filters to AR
2018-01-29 12:37:39 +05:30
rohitwaghchaure
d36ac27f94 Update accounts_receivable.py 2018-01-29 12:35:19 +05:30
rohitwaghchaure
62b31bf708 Update accounts_receivable.py 2018-01-29 12:34:19 +05:30
tundebabzy
2d4b99917d Merge pull request #12664 from chdecultot/fec2
[Hotfix] Doc file rename
2018-01-26 23:17:46 +01:00
Charles-Henri Decultot
241b09ee11 Addition of index.txt 2018-01-26 07:53:59 +00:00
Charles-Henri Decultot
d0c2f7b754 Doc file rename 2018-01-26 07:09:11 +00:00
Vishal Dhayagude
c463c0684d [Report] GSTR - 1 CDNR Report (#12554)
* [wip] cdnr

* [WIP] cdnr with optional data

* [wip] Export GSTR-1

* [minor] Minor changes in export

* [new] Custom field added for GST

* [fix] Minor changes in GSTR1 Report

* [minor] Minor changes in gstr1

* [fix] Codacy Fixed

* Update setup.py
2018-01-26 11:27:22 +05:30
Andy Villiger
567623654b Resolve issue #10914 - Error when making Sales Invoice (#12656)
* Resolve issue #10914

An exception was raised when a Sales Order has been created to a Sales Invoice and one of the items had no Item Code.

* Update sales_order.py
2018-01-26 11:11:19 +05:30
tundebabzy
db4fd7f5b6 Improvements to batch auto naming (#12496)
* refactor:
add new function - batch_uses_naming_series
use batch_uses_naming_series in autoname method

* properly update naming series on delete:
- add new functions - get_batch_prefix, get_batch_naming_series_key, get_batch_naming_series
- refactor get_name_from_naming_series
- add after_delete method

* add documentation and rename some functions

* PEP 8 compliance

* test
2018-01-26 11:00:20 +05:30
Saurabh
aaaf5c62b6 [Mod] Minor changes in 'primary_address' field's property 2018-01-25 17:28:57 +05:30
rohitwaghchaure
ec3052cc8f Merge pull request #12652 from shreyashah115/patch-fix
Patch fix for Leave Application Workflow
2018-01-25 17:08:50 +05:30
Shreya
1416567139 patch fix for leave-workflow 2018-01-25 17:06:14 +05:30
Saurabh
6614d8aa01 Multiple changes:
[Mod] Added 'primary_address_and_contact_detail' in toggle_display
[Mod] Added a description for 'primary_address_and_contact_detail'
2018-01-25 12:27:00 +05:30
Saurabh
5a2354149c Merge branch 'develop' of https://github.com/frappe/erpnext into show_address_in_online_pos 2018-01-25 11:56:36 +05:30
rohitwaghchaure
8d4e63c1fd Merge pull request #12639 from shreyashah115/workflow-patch-fix
Leave Workflow patch fixes
2018-01-24 22:36:34 +05:30
Shreya
5f264fa364 fixes 2018-01-24 20:39:30 +05:30
Shreya
61cf49dd07 workflow patch fix 2018-01-24 18:50:01 +05:30
Aditya Duggal
2136a7bded Resolves Issue #12630 -Added Filters to AR
- Added Territory Filter to AR report
- Added Sales partner filter
- Added Sales person filter
-Terrtory filter is needed since if you need to see AR in North Inda you get with filter not with column
-Similarly there was a need for Sales Partner and sales person filter in the AR report which is being fulfilled now.
2018-01-24 18:16:08 +05:30
rohitwaghchaure
8df0556af5 Merge pull request #12587 from shreyashah115/leave-workflow
Refactor Leave Application
2018-01-24 15:04:17 +05:30
Shreya
a8a952deff check if workflow_state_name already exists 2018-01-24 15:00:54 +05:30
Rushabh Mehta
29bc14d242 [fix] ficher_des_ecritures patch 2018-01-24 14:39:04 +05:30
Shreya
a309a871b5 Codacy fix 2018-01-24 13:56:16 +05:30
Shreya
a400e7b568 Fixed as per the review 2018-01-24 13:30:20 +05:30
Saurabh
fb2f97391f resolved merge conflicts 2018-01-24 11:24:10 +05:30
rohitwaghchaure
56a4f9205a Merge pull request #12620 from mntechnique/draft-mode-print
Print Functionality in Online POS using allow print before pay check
2018-01-24 10:54:07 +05:30
Saurabh
9c6bf08e77 Merge pull request #12547 from joshreeder/patch-1
Update dropbox-backup.md
2018-01-24 07:57:15 +05:30
Saurabh
b665baec72 Used cint instead of int 2018-01-23 18:28:05 +05:30
Saurabh
a5c9fc3705 Removed commented code 2018-01-23 17:36:41 +05:30
Saurabh
6c5f5b20cf Merge branch 'develop' of https://github.com/frappe/erpnext into draft-mode-print 2018-01-23 17:33:21 +05:30
Charles-Henri Decultot
e31e1239ba FEC report for France (#12446)
* FEC report for France

* Codacy correction
2018-01-23 17:23:27 +05:30
Jamsheer
58af1db0d7 Patient Appointment - Check appointment day is holiday or physician on leave (#12556) 2018-01-23 17:23:27 +05:30
Shreya Shah
673b59b114 Updated docs for Payroll Entry (#12552)
* updated docs for payroll entry

* fixed a link in employee-advance doc
2018-01-23 17:23:27 +05:30
Shreya
543feda2fb set posting date only if null 2018-01-23 17:23:27 +05:30
Saurabh
cbbee47625 [Fix] Resolved the type issue of 'is_saved' flag variable 2018-01-23 17:23:27 +05:30
Saurabh
a2076a1ff0 Multiple changes:
[Mod] Used async-await for asynchronous save in draft mode
[Fix] Fixed bug that din't allow to submit a new POS Invoice
2018-01-23 17:23:26 +05:30
Saurabh
c5a6cf3a0e [Mod] Allows print only when the check value exists and the cart isn't empty 2018-01-23 17:23:26 +05:30
Saurabh
3a609108ae Codacy changes 2018-01-23 17:23:26 +05:30
Saurabh
32695a938f [Mod] Refactored the code for fetching allow_print_before_pay check value 2018-01-23 17:23:26 +05:30
deepak-mnt
d7da89bf5a [Fix] Resolved issues suggested by Codacy 2018-01-23 17:21:44 +05:30
deepak-mnt
8f3d394485 Minor changes:Removed extra spaces in py code 2018-01-23 17:21:44 +05:30
deepak-mnt
cc813d2286 [Mod] Ensured that a single POS Sales Invoice is created even when its printed(saved) in Draft mode 2018-01-23 17:21:44 +05:30
deepak-mnt
1ccb0cfa2f [Mod] point_of_sale.js: Allowed print before pay and saved the invoice before print
[New] test_point_of_sale.js: Test Cases to check the print before pay functionality in Online POS
2018-01-23 17:21:44 +05:30
deepak-mnt
29abe291c9 Allow draft mode print in online POS 2018-01-23 17:21:44 +05:30
Rushabh Mehta
b5a3df920c [fix] primary button color for make 2018-01-23 16:08:52 +05:30
Charles-Henri Decultot
90657fb566 FEC report for France (#12446)
* FEC report for France

* Codacy correction
2018-01-23 15:40:14 +05:30
Jamsheer
d63b7e16af Patient Appointment - Check appointment day is holiday or physician on leave (#12556) 2018-01-23 15:38:34 +05:30
Shreya Shah
3191951bff Updated docs for Payroll Entry (#12552)
* updated docs for payroll entry

* fixed a link in employee-advance doc
2018-01-23 15:37:23 +05:30
rohitwaghchaure
881d32c4b8 Merge pull request #12540 from shreyashah115/posting-date
[Payroll Entry] Set posting date only if null
2018-01-23 15:10:26 +05:30
rohitwaghchaure
f8a98f5eeb Merge pull request #12609 from britlog/payment-request-translation
[Stripe] Translate payment request subject
2018-01-23 14:47:55 +05:30
rohitwaghchaure
b607c6f8b2 Merge pull request #12610 from MaxMorais/patch-7
Serial No, wont relates to the warehouse
2018-01-23 14:46:46 +05:30
Frappe PR Bot
48d4a0a438 [Translation] Updated Translations (#12613) 2018-01-23 14:35:52 +05:30
pawan
9b7093e4d6 validation code improvement 2018-01-23 11:39:53 +05:30
Maxwell Morais
7cffd618ab Serial No, wont relates to the warehouse
The serial no, picker wont follow the target serial no
2018-01-22 22:33:28 -02:00
britlog
ddd2bc9aac Translate payment request subject 2018-01-22 23:23:31 +01:00
pawan
6a8eba891e Move target warehouse validation to submit 2018-01-23 00:57:44 +05:30
pawan
afab0a64e5 code alignment 2018-01-22 17:34:27 +05:30
pawan
4ab6ef89a1 code alignment 2018-01-22 17:31:40 +05:30
pawan
67867529c0 [fix] #8540 2018-01-22 17:08:39 +05:30
Saurabh
ef31637549 Merge branch 'master' into develop 2018-01-22 15:29:15 +05:30
Shreya
5164997db7 delete column status 2018-01-22 14:13:03 +05:30
Shreya
dd66bc03c7 fixes 2018-01-22 12:28:38 +05:30
Shreya
fc0e8e5c6a modified patches.txt 2018-01-22 12:26:41 +05:30
Shreya
4298bcfa40 modified leave application tests 2018-01-22 12:26:41 +05:30
Shreya
05f7e14b5a replaced status with workflow_state 2018-01-22 12:26:41 +05:30
Shreya
117ddac033 patch to create workflow for existing leave applications 2018-01-22 12:26:41 +05:30
Josh Reeder
c8b9648c53 Changed instructions
No need to copy and paste into text editor, problems with error message have to do with the form needing saved before Allow Access button is used.
2018-01-20 15:56:15 -06:00
Saurabh
24946ee4e0 Codacy fix 2018-01-20 04:28:35 +05:30
Saurabh
b664488d98 [Fix] Clears off the read-only fields in 'Primary Address and Contact Details' Section on blank link fields 2018-01-20 03:12:45 +05:30
Saurabh
24cae1cad6 Made Primary address field searchable and is displayed in Customer Link field options 2018-01-20 02:47:19 +05:30
britlog
d13985d1d0 Add number spinner for quantity 2018-01-19 18:31:25 +01:00
Rohit Waghchaure
abc0632925 Merge branch 'master' into develop 2018-01-19 15:49:29 +05:30
Rohit Waghchaure
c987500e08 Merge branch 'master' into develop 2018-01-19 13:29:57 +05:30
Josh Reeder
4c38e67f1a Update dropbox-backup.md
Steps for open source users were wrong and there were many work arounds. i have updated the instructions with the most streamlined process.
2018-01-18 15:38:59 -06:00
Shreya
d0b60e8254 set posting date only if null 2018-01-18 17:35:29 +05:30
Nabin Hait
570e29d5e7 Fixed merge conflict 2018-01-17 18:56:02 +05:30
Kenneth Sequeira
7030817bf2 fixed image links in role based permissions and user permisissions. Fixed a spelling mistake in user permissions (#12500) 2018-01-17 16:13:28 +05:30
Gaurav Naik
dc0db3a652 Exploded view for BOM Stock Report (#12506)
* Multilevel BOM Stock Report prototype

* Rechristened multilevel to exploded view

* Removed trailing whitespace in line 16. Replaced spaces with tabs for indentation

* Used BOM Explosion item in query for exploded view

* Removed trailing whitespaces for Codacy compliance
2018-01-17 16:12:55 +05:30
Umair Sayed
d8b4c8bd5b Update index.txt (#12507) 2018-01-17 16:12:00 +05:30
Raghavendra Kamath
2967ec3d45 Add desk icons for healthcare - fixes 11838 (#12518)
* Add desk icons for healtcare - fixes 11838

* Remove unnecessary white spaces
2018-01-17 16:11:09 +05:30
tundebabzy
d0cde99743 Merge pull request #12505 from frappe-pr-bot/translations-2018-01-16
[Translation] Updated Translations
2018-01-16 09:59:16 +01:00
frappe-pr-bot
f12dfe7b7c [Translation] Updated Translations 2018-01-16 09:37:11 +02:00
Saurabh
4b0dd8a159 Merge branch 'master' into develop 2018-01-15 18:36:35 +05:30
umaepoch
832453a757 Added Delay days field to Ordered Items to be Delivered report (#12439)
* Added Delay Days to Ordered Items to be Delivered Report

* Ordered Items to be Delivered
2018-01-15 15:43:16 +05:30
Achilles Rasquinha
b6365b729e Deleted Previous Chat Reference for Leave Application Approval (#12482)
* deleted previous chat reference

* txt to messge

* removed comment
2018-01-15 14:12:41 +05:30
ci2014
58dfc0782f Update agriculture_analysis_criteria.json (#12478) 2018-01-15 12:33:03 +05:30
Manas Solanki
8f085dc606 Merge pull request #12483 from frappe/manassolanki-patch-1
Update utils.py
2018-01-15 12:24:18 +05:30
Manas Solanki
e5e5d8271f Update utils.py 2018-01-15 12:22:28 +05:30
rohitwaghchaure
0a2d83d40c [Fix] gst_state field issue (#12481) 2018-01-15 11:55:25 +05:30
Saurabh
35d8ce4fbd resolved merge conflicts 2018-01-12 16:58:32 +05:30
tundebabzy
e1e38a4bb9 Autoname for Batch DocType #12302 (#12461)
* add new fields:
check: use naming series
data: series prefix

* refactor autoname:
use new function - get_name_from_hash

* add new function - get_name_from_naming_series

* refactor autoname to generate name from naming series

* PEP 8 compliance
2018-01-12 16:30:02 +05:30
tundebabzy
df023bff7f add posting_date/transaction_date to list_view (#12453) 2018-01-12 16:27:29 +05:30
Nabin Hait
a49f720ee3 GSTR1 for B2B, B2CL and B2CS (#12459) 2018-01-12 11:59:59 +05:30
joezsweet
3aaed03dfb reload item_barcode 2018-01-11 11:31:31 +01:00
Prateeksha Singh
b76202f1a4 Merge pull request #12447 from codingCoffee/travis-fix
mongodb removed from travis
2018-01-11 15:27:17 +05:30
Ameya Shenoy
4674b172aa mongodb removed from travis 2018-01-11 15:12:29 +05:30
joezsweet
1be684fd87 codici fix 2018-01-11 09:03:26 +01:00
joezsweet
b6fb8d2143 fix patch, reload doc 2018-01-11 08:44:59 +01:00
Sachin Mane
24e2735e19 Add 'Shelf Life' (Item) and Manufacturing date (Batch) (#12381)
* fix bug in batch number selector. fetch and display batch numbers only for the given item code.

* remove print statement

* Fix error on selecting Chattisgarh in address

Fix error on selecting Chattisgarh in address because of spelling mistake

* Revert "Fix error on selecting Chattisgarh in address"

* Add Shelf Life (Item) and Manufacturing Date (Batch) fields

* remove console.log

* fix ci issues

* Update batch.js
2018-01-11 12:45:50 +05:30
Charles-Henri Decultot
47ad7fb129 Multiple variant correction (#12424) 2018-01-11 12:29:45 +05:30
Vishal Dhayagude
a48f69eb83 [minor] Modified GSTR1 report to identify missing GST Account in GST Settings (#12426)
* [minor] Modified GSTR1 report to identify missing GST Account in GST Settings

* Update gstr_1.py
2018-01-11 12:26:52 +05:30
Rushabh Mehta
8be6d74655 [minor] company.js buttons should be primary! 2018-01-11 11:20:16 +05:30
joezsweet
9116666288 fix patch 2018-01-10 23:11:13 +01:00
tundebabzy
c95675c074 Merge branch 'develop' into multi-barcode 2018-01-10 21:51:41 +01:00
tundebabzy
76dddbf26e Merge branch 'develop' into multi-barcode 2018-01-10 21:49:27 +01:00
Nabin Hait
619c42b934 GSTR1 for B2B (#12296) 2018-01-10 17:48:03 +05:30
Vishal Dhayagude
0099a09e9b [fix] fix print hide weight details in quotation print format (#12412) 2018-01-10 16:30:09 +05:30
Zarrar
94f9f48d70 set from_warehouse only if purchase_order and purpose found (#12398) 2018-01-10 16:29:40 +05:30
Nabin Hait
687dc6a424 patch fixed 2018-01-10 14:51:19 +05:30
tundebabzy
5c6e038769 Merge pull request #12396 from frappe-pr-bot/translations-2018-01-09
[Translation] Updated Translations
2018-01-09 16:32:17 +01:00
frappe-pr-bot
a20ef08ebf [Translation] Updated Translations 2018-01-09 13:29:17 +02:00
Pawan Mehta
d0e7367525 [fix] #12390 (#12391) 2018-01-09 14:33:25 +05:30
Saurabh
892a7a6980 resolved merge conflicts 2018-01-09 12:05:20 +05:30
Vishal Dhayagude
d2d54826ab [minor] Minor Changes in Membership Doctype (#12384) 2018-01-09 10:56:17 +05:30
Pawan Mehta
5b069a4e25 Added Payment Details to Sales Payment Summary Report (#12358)
* [fix] #12357

* label changes
2018-01-09 10:53:13 +05:30
Sachin Mane
64f48db406 Batch number selector bug fix (#12346)
* fix bug in batch number selector. fetch and display batch numbers only for the given item code.

* remove print statement

* Fix error on selecting Chattisgarh in address

Fix error on selecting Chattisgarh in address because of spelling mistake

* Revert "Fix error on selecting Chattisgarh in address"
2018-01-08 17:57:32 +05:30
Manas Solanki
c82d7fb110 Merge pull request #12352 from ci2014/patch-1
Fix english typo in source code
2018-01-08 11:27:02 +05:30
Charles-Henri Decultot
57187860f8 Codacy error fixes 2018-01-06 15:32:01 +00:00
Charles-Henri Decultot
356839a54b Codacy erro fixes 2018-01-06 15:22:40 +00:00
ci2014
5d3e486415 Fix english typo in source code
Fix english typo in source code
2018-01-06 04:04:06 +01:00
Charles-Henri Decultot
34e335ba34 Prorated Asset Depreciation 2018-01-05 17:49:06 +00:00
Prateeksha Singh
620e0981cb Merge pull request #12347 from pratu16x7/buying-fix
[minor][buying] fix schedule date check
2018-01-05 21:31:58 +05:30
Prateeksha Singh
cbd06fd3c6 [minor][buying] fix schedule date check 2018-01-05 21:28:01 +05:30
Nabin Hait
54229ca66e Merge branch 'PawanMeh-fixes_8427' into develop 2018-01-05 18:21:40 +05:30
Nabin Hait
2f51c6900b Fixes and cleanups of reserve qty for subcontracting 2018-01-05 18:20:05 +05:30
Nabin Hait
07e5376043 Fixes and cleanups of reserve qty for subcontracting 2018-01-05 18:19:59 +05:30
Nabin Hait
cab8dfc5fb Fixed merge conflict 2018-01-05 14:15:39 +05:30
Nabin Hait
cb495fb33b Merge branch 'master' into develop 2018-01-05 13:17:00 +05:30
James Robertson
46196c4ad3 Setup Wizard Updates (#12337)
Changes to support v10 ERPNext Setup Wizard
2018-01-05 12:50:04 +05:30
Doridel Cahanap
291b26ad04 Training Documentation in DE (#12309) 2018-01-05 12:47:40 +05:30
tundebabzy
8f44d1c63d Payment Terms in Delivery Note #12167 (#12293)
* add Payment Terms Template field to delivery note:
- This helps for users who create invoice from Sales Invoice
- Field is hidden in print
- Field is not coupled to Payment Schedule table.

* do nothing in payment_terms_template trigger if doctype is Delivery Note
2018-01-05 12:46:50 +05:30
Shreya Shah
48351e0339 cancelled sales invoice totals shouldn't be reflected in leaderboard for customer (#12292) 2018-01-05 12:45:43 +05:30
Manas Solanki
76ea7a9227 Merge pull request #12301 from kennethsequeira/cust-report-vid
Updated youtube video link for custom reports article
2018-01-02 21:53:47 +05:30
Kenneth Sequeira
82bd3302ee updated youtube video link for custom reports article 2018-01-02 21:41:48 +05:30
Saurabh
14506d7878 Merge branch 'master' into develop 2018-01-02 12:09:25 +05:30
Manas Solanki
15b880154a Merge pull request #12283 from kennethsequeira/cust-doc-img
Updated the image paths for Custom Doctype manual
2018-01-01 20:16:01 +05:30
Kenneth Sequeira
13e5689bd9 Updated the image paths for Custom Doctype manual 2018-01-01 17:33:57 +05:30
Nabin Hait
c33788a91b Show standard rate only in unsaved Item 2017-12-29 15:42:50 +05:30
Jamsheer
c90195de29 Patient medical record and Consulatation (#12198)
* Patient Medical Record - Subject field reqd=0, Subject text formated

* Consultation - remove patient details section

* Search fields are updated for Consultation and Appointment

* Translations applied on menu
2017-12-29 14:32:13 +05:30
Javier Wong
2469095a13 Check Meta before Toggling Conversion Factor (#12237)
If it has been customized so as to set the conversion factor to read only, `toggle_conversion_factor` should respect that setting.
2017-12-29 14:06:47 +05:30
Shreya Shah
df0dd8be5f Travis fix for client side tests (#12224)
* salary slip test fix

* attendance tool test fix

* timeout after routing
2017-12-29 14:04:46 +05:30
Nabin Hait
ddd5bf736b Merge branch 'master' into develop 2017-12-28 18:46:52 +05:30
Nabin Hait
b820174b18 Merge branch 'master' into develop 2017-12-28 14:22:59 +05:30
Frappe PR Bot
efd9086579 [Translation] Updated Translations (#12212) 2017-12-28 11:49:37 +05:30
Giovanni
da40999ed8 - fix patch 2017-12-11 10:01:45 +01:00
Giovanni
dd37ceb707 patch to migrade barcodes into Item Barcode 2017-12-11 09:54:18 +01:00
Giovanni
43372d3333 - make barcode mandatory if child row is added
- check valid barcode only if exists
2017-12-10 20:56:48 +01:00
Giovanni
ff7d73e418 - query fix 2017-12-10 20:46:46 +01:00
Giovanni
2a098ada7c - bug fix 2017-12-10 20:33:20 +01:00
Giovanni
4c848ee14f - codacy fix 2017-12-10 20:06:56 +01:00
Giovanni
8f8a485e07 - autoname field:barcode 2017-12-10 19:46:01 +01:00
Giovanni
ff6d0a5260 - clean code - console logs 2017-12-10 19:36:42 +01:00
Giovanni
01953135c5 - code clean 2017-12-10 18:54:19 +01:00
Giovanni
a04c756913 - validate EAN or UPC-A code
- made Item Barcode Doctpye standard
- added stdnum to requirements
2017-12-10 18:54:08 +01:00
Giovanni
9b7e52cafb - added barcode validation against Item Barcode 2017-12-10 18:11:48 +01:00
Giovanni
2144e02d3c - Added multiple barcode feature per item 2017-12-10 17:27:09 +01:00
pawan
990277a0de patch 2017-12-01 16:45:47 +05:30
pawan
14d570ed9e fix 2017-11-30 18:41:09 +05:30
pawan
2ff844e740 default warehouse / remove validation / change sql 2017-11-30 18:14:55 +05:30
pawan
e4aaff6686 message changes 2017-11-30 15:49:54 +05:30
pawan
f5bb2af92c test case 2017-11-30 15:20:00 +05:30
pawan
e43cd915e8 alignment 2017-11-30 12:31:32 +05:30
pawan
abc5523405 code improvements 2017-11-30 12:23:46 +05:30
pawan
11398fd572 Validation for reserved warhouse 2017-11-29 21:16:02 +05:30
pawan
54465f5df1 review comments changes 2017-11-29 10:18:38 +05:30
pawan
f5279a0d67 [fix] #8427 2017-11-24 11:21:47 +05:30
Helkyd
6e3f789f82 code fixe
fixed })
2017-11-22 16:12:27 +01:00
Helkyd
3264c13545 No ZERO payment
If no payment mode selected does not process ... to avoid having SI with payment pending as POS for sure was paid..
2017-11-22 16:06:22 +01:00
Helkyd
0195528798 Merge branch 'develop' of https://github.com/Helkyd/erpnext-1 into develop 2017-11-22 14:51:18 +01:00
Helkyd
2b6bf82d61 Default Payment Mode
POS drafted, user retrieves the record and sets the default payment mode so that Zero payment is not done.
2017-11-22 14:49:51 +01:00
Nabin Hait
cfb68dee34 Merge branch 'develop' into develop 2017-10-18 11:16:17 +05:30
Helkyd
e9f2b176bc Salary Detail Abbr
When processing via Process Salary Abbr is not filled unless if Hourly pay ... this is required for later check what Component is or was added for Employee
2017-10-11 15:02:27 +01:00
4461 changed files with 403758 additions and 212499 deletions

View File

@@ -51,8 +51,7 @@
"globals": {
"frappe": true,
"erpnext": true,
"schools": true,
"education": true,
"hub": true,
"$": true,
"jQuery": true,

View File

@@ -1,68 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
---
Issue: Bug report
Our project, as you've probably heard, is getting really popular and truth is we're getting a bit overwhelmed by the activity surrounding it. There are just too many issues for us to manage properly.
**Do the checklist before filing an issue:**
- [ ] Have a usage question? Ask your question on [Discuss Forum](https://discuss.erpnext.com). We use [Discuss Forum](https://discuss.erpnext.com) for usage question and GitHub for bugs.
- [ ] Can you replicate the issue?
- [ ] Is this something you can debug and fix? Send a pull request! Bug fixes and documentation fixes are welcome
**Describe the bug** :chart_with_downwards_trend:
A clear and concise description of what the bug is.
**To Reproduce** :page_with_curl:
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior** :chart_with_upwards_trend:
A clear and concise description of what you expected to happen.
**Screenshots** :crystal_ball:
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):** :cyclone:
- OS:
- [ ] Linux
- [ ] macOS
- [ ] Windows
- [ ] Others? Please mention:
- Browser:
- [ ] Safari
- [ ] Chrome
- [ ] Firefox
- [ ] Other? Please mention:
**Smartphone (please complete the following information):** :iphone: :computer:
- Device:
- [ ] iPhone
- [ ] Android
- Browser:
- [ ] Safari
- [ ] Chrome
- [ ] Firefox
- [ ] Other? Please mention:
**Version Information**
- Which branch are you on?
- [ ] `master` :star2:
- [ ] `develop` :fire:
- Frappe Version:
- ERPNext Version:
**Additional context** :page_facing_up:
Add any other context about the problem here.
**Possible Solution** :bookmark_tabs:
Any idea what might be causing the issue. Or if you have a proposed solution to the problem,
**Please don't be intimidated by the long list of options you've fill. Try to fill out as much as you can. Remember, the more the information the easier it is for us to replicate and fix the issue** :grin:

View File

@@ -1,21 +0,0 @@
---
name: Feature request
about: Suggest an idea for this project
---
Issue: Feature Request
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@@ -1,28 +1,2 @@
Pull-Request
- [ ] Have you followed the guidelines in our Contributing document?
- [ ] Have you checked to ensure there aren't other open [Pull Requests](../pulls) for the same update/change?
- [ ] Have you lint your code locally prior to submission?
- [ ] Have you successfully run tests with your changes locally?
- [ ] Does your commit message have an explanation for your changes and why you'd like us to include them?
- [ ] Docs have been added / updated
- [ ] Tests for the changes have been added (for bug fixes / features)
- [ ] Did you modify the existing test cases? If yes, why?
---
What type of a PR is this?
- [ ] Changes to Existing Features
- [ ] New Feature Submissions
- [ ] Bug Fix
- [ ] Breaking Change
---
- Motivation and Context (What existing problem does the pull request solve):
- Related Issue:
- Screenshots (if applicable, remember, a picture tells a thousand words):
**Please don't be intimidated by the long list of options you've fill. Try to fill out as much as you can. Remember, the more the information the easier it is for us to test and get your pull request merged** :grin:
Please read the pull request checklist to make sure your changes are merged: https://github.com/frappe/erpnext/wiki/Pull-Request-Checklist

34
.github/stale.yml vendored Normal file
View File

@@ -0,0 +1,34 @@
# Configuration for probot-stale - https://github.com/probot/stale
# Number of days of inactivity before an Issue or Pull Request becomes stale
daysUntilStale: 30
# Number of days of inactivity before a stale Issue or Pull Request is closed.
# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
daysUntilClose: 7
# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
exemptLabels:
- hotfix
# Set to true to ignore issues in a project (defaults to false)
exemptProjects: false
# Set to true to ignore issues in a milestone (defaults to false)
exemptMilestones: true
# Label to use when marking as stale
staleLabel: inactive
# Comment to post when marking as stale. Set to `false` to disable
markComment: >
This pull request has been automatically marked as stale because it has not had
recent activity. It will be closed within a week if no further activity occurs, but it
only takes a comment to keep a contribution alive :) Also, even if it is closed,
you can always reopen the PR when you're ready. Thank you for contributing.
# Limit the number of actions per hour, from 1-30. Default is 30
limitPerRun: 30
# Limit to only `issues` or `pulls`
only: pulls

3
.gitignore vendored
View File

@@ -9,3 +9,6 @@ latest_updates.json
dist/
erpnext/docs/current
*.swp
*.swo
__pycache__
*~

View File

@@ -8,12 +8,15 @@ services:
- mysql
install:
# fix mongodb travis error
- sudo rm /etc/apt/sources.list.d/mongodb*.list
- pip install flake8==3.3.0
- flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
- sudo rm /etc/apt/sources.list.d/docker.list
- sudo apt-get install hhvm && rm -rf /home/travis/.kiex/
- sudo apt-get purge -y mysql-common mysql-server mysql-client
- nvm install v7.10.0
- pip install python-coveralls
- wget https://raw.githubusercontent.com/frappe/bench/master/playbooks/install.py
- sudo python install.py --develop --user travis --without-bench-setup
- sudo pip install -e ~/bench
@@ -30,7 +33,8 @@ before_script:
- cd ~/frappe-bench
- bench get-app erpnext $TRAVIS_BUILD_DIR
- bench use test_site
- bench reinstall --yes
- bench reinstall --mariadb-root-username root --mariadb-root-password travis --yes
- bench build
- bench scheduler disable
- sed -i 's/9000/9001/g' sites/common_site_config.json
- bench start &
@@ -41,7 +45,9 @@ jobs:
- stage: test
script:
- set -e
- bench run-tests
- bench run-tests --app erpnext --coverage
after_script:
- coveralls -b apps/erpnext -d ../../sites/.coverage
env: Server Side Test
- # stage
script:

View File

@@ -1,12 +1,22 @@
# ERPNext - ERP made simple
<div align="center">
<img src="https://github.com/frappe/design/blob/master/logos/erpnext-logo.svg" height="128">
<h2>ERPNext</h2>
<p align="center">
<p>ERP made simple</p>
</p>
[![Build Status](https://travis-ci.org/frappe/erpnext.png)](https://travis-ci.org/frappe/erpnext) [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/frappe/erpnext?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Build Status](https://travis-ci.com/frappe/erpnext.png)](https://travis-ci.com/frappe/erpnext)
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/frappe/erpnext?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![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)
[https://erpnext.com](https://erpnext.com)
</div>
Includes: Accounting, Inventory, Manufacturing, CRM, Sales, Purchase, Project Management, HRMS. Requires MariaDB.
ERPNext is built on the [Frappé](https://github.com/frappe/frappe) Framework, a full-stack web app framework in Python & JavaScript.
ERPNext is built on the [Frappe](https://github.com/frappe/frappe) Framework, a full-stack web app framework in Python & JavaScript.
- [User Guide](https://erpnext.org/docs/user)
- [Discussion Forum](https://discuss.erpnext.com/)
@@ -31,15 +41,16 @@ System and user credentials are listed on the download page.
## License
GNU/General Public License (see LICENSE.txt)
GNU/General Public License (see [license.txt](license.txt))
The ERPNext code is licensed as GNU General Public License (v3) and the Documentation is licensed as Creative Commons (CC-BY-SA-3.0) and the copyright is owned by Frappé Technologies Pvt Ltd (Frappé) and Contributors.
The ERPNext code is licensed as GNU General Public License (v3) and the Documentation is licensed as Creative Commons (CC-BY-SA-3.0) and the copyright is owned by Frappe Technologies Pvt Ltd (Frappe) and Contributors.
---
## Contributing
1. [Issue Guidelines](https://github.com/frappe/erpnext/wiki/Issue-Guidelines)
1. [Report Security Vulnerabilities](https://erpnext.com/report)
1. [Pull Request Requirements](https://github.com/frappe/erpnext/wiki/Contribution-Guidelines)
1. [Translations](https://translate.erpnext.com)
1. [Chart of Accounts](https://charts.erpnext.com)
@@ -48,19 +59,19 @@ The ERPNext code is licensed as GNU General Public License (v3) and the Document
## Logo and Trademark
The brand name ERPNext and the logo are trademarks of Frappé Technologies Pvt. Ltd.
The brand name ERPNext and the logo are trademarks of Frappe Technologies Pvt. Ltd.
### Introduction
Frappé Technologies Pvt. Ltd. (Frappé) owns and oversees the trademarks for the ERPNext name and logos. We have developed this trademark usage policy with the following goals in mind:
Frappe Technologies Pvt. Ltd. (Frappe) owns and oversees the trademarks for the ERPNext name and logos. We have developed this trademark usage policy with the following goals in mind:
- Wed like to make it easy for anyone to use the ERPNext name or logo for community-oriented efforts that help spread and improve ERPNext.
- Wed like to make it clear how ERPNext-related businesses and projects can (and cannot) use the ERPNext name and logo.
- Wed like to make it hard for anyone to use the ERPNext name and logo to unfairly profit from, trick or confuse people who are looking for official ERPNext resources.
### Frappé Trademark Usage Policy
### Frappe Trademark Usage Policy
Permission from Frappé is required to use the ERPNext name or logo as part of any project, product, service, domain or company name.
Permission from Frappe is required to use the ERPNext name or logo as part of any project, product, service, domain or company name.
We will grant permission to use the ERPNext name and logo for projects that meet the following criteria:
@@ -71,7 +82,7 @@ Your project neither promotes nor is associated with entities that currently fai
Use of the ERPNext name and logo is additionally allowed in the following situations:
All other ERPNext-related businesses or projects can use the ERPNext name and logo to refer to and explain their services, but they cannot use them as part of a product, project, service, domain, or company name and they cannot use them in any way that suggests an affiliation with or endorsement by ERPNext or Frappé Technologies or the ERPNext open source project. For example, a consulting company can describe its business as “123 Web Services, offering ERPNext consulting for small businesses,” but cannot call its business “The ERPNext Consulting Company.”
All other ERPNext-related businesses or projects can use the ERPNext name and logo to refer to and explain their services, but they cannot use them as part of a product, project, service, domain, or company name and they cannot use them in any way that suggests an affiliation with or endorsement by ERPNext or Frappe Technologies or the ERPNext open source project. For example, a consulting company can describe its business as “123 Web Services, offering ERPNext consulting for small businesses,” but cannot call its business “The ERPNext Consulting Company.”
Similarly, its OK to use the ERPNext logo as part of a page that describes your products or services, but it is not OK to use it as part of your company or product logo or branding itself. Under no circumstances is it permitted to use ERPNext as part of a top-level domain name.
@@ -79,6 +90,6 @@ We do not allow the use of the trademark in advertising, including AdSense/AdWor
Please note that it is not the goal of this policy to limit commercial activity around ERPNext. We encourage ERPNext-based businesses, and we would love to see hundreds of them.
When in doubt about your use of the ERPNext name or logo, please contact Frappé Technologies for clarification.
When in doubt about your use of the ERPNext name or logo, please contact Frappe Technologies for clarification.
(inspired by WordPress)

View File

@@ -1,6 +1,6 @@
## ERPNext includes these public works
For Frappé Framework, please see attributions.md at https://github.com/frappe/frappe/
For Frappe Framework, please see attributions.md at https://github.com/frappe/frappe/
#### Images

View File

@@ -5,7 +5,7 @@ import frappe
from erpnext.hooks import regional_overrides
from frappe.utils import getdate
__version__ = '10.1.80'
__version__ = '10.1.76'
def get_default_company(user=None):
'''Get default company for user'''
@@ -27,7 +27,7 @@ def get_default_currency():
'''Returns the currency of the default company'''
company = get_default_company()
if company:
return frappe.db.get_value('Company', company, 'default_currency')
return frappe.get_cached_value('Company', company, 'default_currency')
def get_default_cost_center(company):
'''Returns the default cost center of the company'''
@@ -37,7 +37,7 @@ def get_default_cost_center(company):
if not frappe.flags.company_cost_center:
frappe.flags.company_cost_center = {}
if not company in frappe.flags.company_cost_center:
frappe.flags.company_cost_center[company] = frappe.db.get_value('Company', company, 'cost_center')
frappe.flags.company_cost_center[company] = frappe.get_cached_value('Company', company, 'cost_center')
return frappe.flags.company_cost_center[company]
def get_company_currency(company):
@@ -45,7 +45,7 @@ def get_company_currency(company):
if not frappe.flags.company_currency:
frappe.flags.company_currency = {}
if not company in frappe.flags.company_currency:
frappe.flags.company_currency[company] = frappe.db.get_value('Company', company, 'default_currency')
frappe.flags.company_currency[company] = frappe.db.get_value('Company', company, 'default_currency', cache=True)
return frappe.flags.company_currency[company]
def set_perpetual_inventory(enable=1, company=None):
@@ -58,7 +58,7 @@ def set_perpetual_inventory(enable=1, company=None):
def encode_company_abbr(name, company):
'''Returns name encoded with company abbreviation'''
company_abbr = frappe.db.get_value("Company", company, "abbr")
company_abbr = frappe.get_cached_value('Company', company, "abbr")
parts = name.rsplit(" - ", 1)
if parts[-1].lower() != company_abbr.lower():
@@ -74,19 +74,42 @@ def is_perpetual_inventory_enabled(company):
frappe.local.enable_perpetual_inventory = {}
if not company in frappe.local.enable_perpetual_inventory:
frappe.local.enable_perpetual_inventory[company] = frappe.db.get_value("Company",
company, "enable_perpetual_inventory") or 0
frappe.local.enable_perpetual_inventory[company] = frappe.get_cached_value('Company',
company, "enable_perpetual_inventory") or 0
return frappe.local.enable_perpetual_inventory[company]
def get_default_finance_book(company=None):
if not company:
company = get_default_company()
if not hasattr(frappe.local, 'default_finance_book'):
frappe.local.default_finance_book = {}
if not company in frappe.local.default_finance_book:
frappe.local.default_finance_book[company] = frappe.get_cached_value('Company',
company, "default_finance_book")
return frappe.local.default_finance_book[company]
def get_party_account_type(party_type):
if not hasattr(frappe.local, 'party_account_types'):
frappe.local.party_account_types = {}
if not party_type in frappe.local.party_account_types:
frappe.local.party_account_types[party_type] = frappe.db.get_value("Party Type",
party_type, "account_type") or ''
return frappe.local.party_account_types[party_type]
def get_region(company=None):
'''Return the default country based on flag, company or global settings
You can also set global company flag in `frappe.flags.company`
'''
if company or frappe.flags.company:
return frappe.db.get_value('Company',
company or frappe.flags.company, 'country')
return frappe.get_cached_value('Company',
company or frappe.flags.company, 'country')
elif frappe.flags.country:
return frappe.flags.country
else:

View File

@@ -0,0 +1,180 @@
from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.utils import date_diff, add_months, today, getdate, add_days, flt
from erpnext.accounts.utils import get_account_currency
from erpnext.accounts.general_ledger import make_gl_entries
def validate_service_stop_date(doc):
''' Validates service_stop_date for Purchase Invoice and Sales Invoice '''
enable_check = "enable_deferred_revenue" \
if doc.doctype=="Sales Invoice" else "enable_deferred_expense"
old_stop_dates = {}
old_doc = frappe.db.get_all("{0} Item".format(doc.doctype),
{"parent": doc.name}, ["name", "service_stop_date"])
for d in old_doc:
old_stop_dates[d.name] = d.service_stop_date or ""
for item in doc.items:
if not item.get(enable_check): continue
if item.service_stop_date:
if date_diff(item.service_stop_date, item.service_start_date) < 0:
frappe.throw(_("Service Stop Date cannot be before Service Start Date"))
if date_diff(item.service_stop_date, item.service_end_date) > 0:
frappe.throw(_("Service Stop Date cannot be after Service End Date"))
if old_stop_dates and old_stop_dates[item.name] and item.service_stop_date!=old_stop_dates[item.name]:
frappe.throw(_("Cannot change Service Stop Date for item in row {0}".format(item.idx)))
def convert_deferred_expense_to_expense(start_date=None, end_date=None):
# check for the purchase invoice for which GL entries has to be done
invoices = frappe.db.sql_list('''
select distinct parent from `tabPurchase Invoice Item` where service_start_date<=%s and service_end_date>=%s
and enable_deferred_expense = 1 and docstatus = 1 and ifnull(amount, 0) > 0
''', (end_date or today(), start_date or add_months(today(), -1)))
# For each invoice, book deferred expense
for invoice in invoices:
doc = frappe.get_doc("Purchase Invoice", invoice)
book_deferred_income_or_expense(doc, start_date, end_date)
def convert_deferred_revenue_to_income(start_date=None, end_date=None):
# check for the sales invoice for which GL entries has to be done
invoices = frappe.db.sql_list('''
select distinct parent from `tabSales Invoice Item` where service_start_date<=%s and service_end_date>=%s
and enable_deferred_revenue = 1 and docstatus = 1 and ifnull(amount, 0) > 0
''', (end_date or today(), start_date or add_months(today(), -1)))
# For each invoice, book deferred revenue
for invoice in invoices:
doc = frappe.get_doc("Sales Invoice", invoice)
book_deferred_income_or_expense(doc, start_date, end_date)
def get_booking_dates(doc, item, start_date=None, end_date=None):
deferred_account = "deferred_revenue_account" if doc.doctype=="Sales Invoice" else "deferred_expense_account"
last_gl_entry, skip = False, False
booking_end_date = getdate(add_days(today(), -1)) if not end_date else end_date
if booking_end_date < item.service_start_date or \
(item.service_stop_date and booking_end_date.month > item.service_stop_date.month):
return None, None, None, True
elif booking_end_date >= item.service_end_date:
last_gl_entry = True
booking_end_date = item.service_end_date
elif item.service_stop_date and item.service_stop_date <= booking_end_date:
last_gl_entry = True
booking_end_date = item.service_stop_date
booking_start_date = getdate(add_months(today(), -1)) if not start_date else start_date
booking_start_date = booking_start_date \
if booking_start_date > item.service_start_date else item.service_start_date
prev_gl_entry = frappe.db.sql('''
select name, posting_date from `tabGL Entry` where company=%s and account=%s and
voucher_type=%s and voucher_no=%s and voucher_detail_no=%s
order by posting_date desc limit 1
''', (doc.company, item.get(deferred_account), doc.doctype, doc.name, item.name), as_dict=True)
if not prev_gl_entry and item.service_start_date < booking_start_date:
booking_start_date = item.service_start_date
elif prev_gl_entry:
booking_start_date = getdate(add_days(prev_gl_entry[0].posting_date, 1))
skip = True if booking_start_date > booking_end_date else False
return last_gl_entry, booking_start_date, booking_end_date, skip
def calculate_amount_and_base_amount(doc, item, last_gl_entry, total_days, total_booking_days):
account_currency = get_account_currency(item.expense_account)
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"
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"))
if account_currency==doc.company_currency:
amount = base_amount
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
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 book_deferred_income_or_expense(doc, start_date=None, end_date=None):
# book the expense/income on the last day, but it will be trigger on the 1st of month at 12:00 AM
# start_date: 1st of the last month or the start date
# end_date: end_date or today-1
gl_entries = []
for item in doc.get('items'):
skip = False
last_gl_entry, booking_start_date, booking_end_date, skip = \
get_booking_dates(doc, item, start_date, end_date)
if skip: continue
total_days = date_diff(item.service_end_date, item.service_start_date)
total_booking_days = date_diff(booking_end_date, booking_start_date) + 1
account_currency = get_account_currency(item.expense_account)
amount, base_amount = calculate_amount_and_base_amount(doc, item, last_gl_entry, total_days, total_booking_days)
if doc.doctype == "Sales Invoice":
against, project = doc.customer, doc.project
credit_account, debit_account = item.income_account, item.deferred_revenue_account
else:
against, project = doc.supplier, item.project
credit_account, debit_account = item.deferred_expense_account, item.expense_account
# GL Entry for crediting the amount in the deferred expense
gl_entries.append(
doc.get_gl_dict({
"account": credit_account,
"against": against,
"credit": base_amount,
"credit_in_account_currency": amount,
"cost_center": item.cost_center,
"voucher_detail_no": item.name,
'posting_date': booking_end_date,
'project': project
}, account_currency)
)
# GL Entry to debit the amount from the expense
gl_entries.append(
doc.get_gl_dict({
"account": debit_account,
"against": against,
"debit": base_amount,
"debit_in_account_currency": amount,
"cost_center": item.cost_center,
"voucher_detail_no": item.name,
'posting_date': booking_end_date,
'project': project
}, account_currency)
)
if gl_entries:
make_gl_entries(gl_entries, cancel=(doc.docstatus == 2), merge_entries=True)

View File

@@ -17,18 +17,13 @@ frappe.ui.form.on('Account', {
});
},
refresh: function(frm) {
if (frm.doc.__islocal) {
frappe.msgprint(__("Please create new account from Chart of Accounts."));
throw "cannot create";
}
frm.toggle_display('account_name', frm.doc.__islocal);
frm.toggle_display('account_name', frm.is_new());
// hide fields if group
frm.toggle_display(['account_type', 'tax_rate'], cint(frm.doc.is_group) == 0);
// disable fields
frm.toggle_enable(['account_name', 'is_group', 'company'], false);
frm.toggle_enable(['is_group', 'company'], false);
if (cint(frm.doc.is_group) == 0) {
frm.toggle_display('freeze_account', frm.doc.__onload
@@ -36,19 +31,17 @@ frappe.ui.form.on('Account', {
}
// read-only for root accounts
if (!frm.doc.parent_account) {
frm.set_read_only();
frm.set_intro(__("This is a root account and cannot be edited."));
} else {
// credit days and type if customer or supplier
frm.set_intro(null);
frm.trigger('account_type');
// show / hide convert buttons
frm.trigger('add_toolbar_buttons');
}
if(!frm.doc.__islocal) {
if (!frm.is_new()) {
if (!frm.doc.parent_account) {
frm.set_read_only();
frm.set_intro(__("This is a root account and cannot be edited."));
} else {
// credit days and type if customer or supplier
frm.set_intro(null);
frm.trigger('account_type');
// show / hide convert buttons
frm.trigger('add_toolbar_buttons');
}
frm.add_custom_button(__('Update Account Name / Number'), function () {
frm.trigger("update_account_number");
});

View File

@@ -1,5 +1,6 @@
{
"allow_copy": 1,
"allow_events_in_timeline": 0,
"allow_guest_to_view": 0,
"allow_import": 1,
"allow_rename": 0,
@@ -14,6 +15,7 @@
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -45,6 +47,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -75,6 +78,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -96,7 +100,7 @@
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
@@ -107,6 +111,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -138,6 +143,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -170,6 +176,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -203,6 +210,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -234,6 +242,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -265,6 +274,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -298,6 +308,40 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "inter_company_account",
"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": "Inter Company Account",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -328,6 +372,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -361,6 +406,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -380,7 +426,7 @@
"no_copy": 0,
"oldfieldname": "account_type",
"oldfieldtype": "Select",
"options": "\nAccumulated Depreciation\nBank\nCash\nChargeable\nCost of Goods Sold\nDepreciation\nEquity\nExpense Account\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\nTax\nTemporary",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
@@ -395,6 +441,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -428,6 +475,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -462,6 +510,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -493,6 +542,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -523,6 +573,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -553,6 +604,7 @@
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -593,7 +645,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-07-08 09:47:04.287841",
"modified": "2019-01-07 16:52:02.557837",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Account",
@@ -601,7 +653,6 @@
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
@@ -621,7 +672,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
@@ -641,7 +691,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
@@ -661,7 +710,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
@@ -681,7 +729,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
@@ -707,5 +754,6 @@
"show_name_in_global_search": 1,
"sort_order": "ASC",
"track_changes": 1,
"track_seen": 0
"track_seen": 0,
"track_views": 0
}

View File

@@ -12,6 +12,11 @@ class BalanceMismatchError(frappe.ValidationError): pass
class Account(NestedSet):
nsm_parent_field = 'parent_account'
def on_update(self):
if frappe.local.flags.ignore_on_update:
return
else:
super(Account, self).on_update()
def onload(self):
frozen_accounts_modifier = frappe.db.get_value("Accounts Settings", "Accounts Settings",
@@ -20,14 +25,16 @@ class Account(NestedSet):
self.set_onload("can_freeze_account", True)
def autoname(self):
self.name = get_account_autoname(self.account_number, self.account_name, self.company)
from erpnext.accounts.utils import get_autoname_with_number
self.name = get_autoname_with_number(self.account_number, self.account_name, None, self.company)
def validate(self):
from erpnext.accounts.utils import validate_field_number
if frappe.local.flags.allow_unverified_charts:
return
self.validate_parent()
self.validate_root_details()
validate_account_number(self.name, self.account_number, self.company)
validate_field_number("Account", self.name, self.account_number, self.company, "account_number")
self.validate_group_or_ledger()
self.set_root_and_report_type()
self.validate_mandatory()
@@ -117,7 +124,7 @@ class Account(NestedSet):
def validate_account_currency(self):
if not self.account_currency:
self.account_currency = frappe.db.get_value("Company", self.company, "default_currency")
self.account_currency = frappe.get_cached_value('Company', self.company, "default_currency")
elif self.account_currency != frappe.db.get_value("Account", self.name, "account_currency"):
if frappe.db.get_value("GL Entry", {"account": self.name}):
@@ -177,17 +184,20 @@ def get_account_currency(account):
if not account:
return
def generator():
account_currency, company = frappe.db.get_value("Account", account, ["account_currency", "company"])
account_currency, company = frappe.get_cached_value("Account", account, ["account_currency", "company"])
if not account_currency:
account_currency = frappe.db.get_value("Company", company, "default_currency")
account_currency = frappe.get_cached_value('Company', company, "default_currency")
return account_currency
return frappe.local_cache("account_currency", account, generator)
def on_doctype_update():
frappe.db.add_index("Account", ["lft", "rgt"])
def get_account_autoname(account_number, account_name, company):
# first validate if company exists
company = frappe.db.get_value("Company", company, ["abbr", "name"], as_dict=True)
company = frappe.get_cached_value('Company', company, ["abbr", "name"], as_dict=True)
if not company:
frappe.throw(_('Company {0} does not exist').format(company))

View File

@@ -7,9 +7,9 @@ frappe.treeview_settings["Account"] = {
filters: [{
fieldname: "company",
fieldtype:"Select",
options: $.map(locals[':Company'], function(c) { return c.name; }).sort(),
options: erpnext.utils.get_tree_options("company"),
label: __("Company"),
default: frappe.defaults.get_default('company') ? frappe.defaults.get_default('company'): ""
default: erpnext.utils.get_tree_default("company")
}],
root_label: "Accounts",
get_tree_nodes: 'erpnext.accounts.utils.get_children',
@@ -32,9 +32,7 @@ frappe.treeview_settings["Account"] = {
options: ['Asset', 'Liability', 'Equity', 'Income', 'Expense'].join('\n'),
depends_on: 'eval:doc.is_group && !doc.parent_account'},
{fieldtype:'Select', fieldname:'account_type', label:__('Account Type'),
options: ['', 'Accumulated Depreciation', 'Bank', 'Cash', 'Chargeable', 'Cost of Goods Sold', 'Depreciation',
'Equity', 'Expense Account', 'Expenses Included In Valuation', 'Fixed Asset', 'Income Account', 'Payable', 'Receivable',
'Round Off', 'Stock', 'Stock Adjustment', 'Stock Received But Not Billed', 'Tax', 'Temporary'].join('\n'),
options: frappe.get_meta("Account").fields.filter(d => d.fieldname=='account_type')[0].options,
description: __("Optional. This setting will be used to filter in various transactions.")
},
{fieldtype:'Float', fieldname:'tax_rate', label:__('Tax Rate'),
@@ -44,6 +42,8 @@ frappe.treeview_settings["Account"] = {
],
ignore_fields:["parent_account"],
onload: function(treeview) {
frappe.treeview_settings['Account'].page = {};
$.extend(frappe.treeview_settings['Account'].page, treeview.page);
function get_company() {
return treeview.page.fields_dict.company.get_value();
}
@@ -103,7 +103,7 @@ frappe.treeview_settings["Account"] = {
"account": node.label,
"from_date": frappe.sys_defaults.year_start_date,
"to_date": frappe.sys_defaults.year_end_date,
"company": frappe.defaults.get_default('company') ? frappe.defaults.get_default('company'): ""
"company": frappe.treeview_settings['Account'].page.fields_dict.company.get_value()
};
frappe.set_route("query-report", "General Ledger");
},

View File

@@ -1,10 +1,12 @@
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
# License: GNU General Public License v3. See license.txt
from __future__ import unicode_literals
import frappe, os, json
from frappe.utils import cstr
from unidecode import unidecode
from six import iteritems
from frappe.utils.nestedset import rebuild_tree
def create_charts(company, chart_template=None, existing_company=None):
chart = get_chart(chart_template, existing_company)
@@ -12,7 +14,7 @@ def create_charts(company, chart_template=None, existing_company=None):
accounts = []
def _import_accounts(children, parent, root_type, root_account=False):
for account_name, child in children.items():
for account_name, child in iteritems(children):
if root_account:
root_type = child.get("root_type")
@@ -37,22 +39,27 @@ def create_charts(company, chart_template=None, existing_company=None):
"report_type": report_type,
"account_number": account_number,
"account_type": child.get("account_type"),
"account_currency": frappe.db.get_value("Company", company, "default_currency"),
"account_currency": frappe.db.get_value('Company', company, "default_currency"),
"tax_rate": child.get("tax_rate")
})
if root_account or frappe.local.flags.allow_unverified_charts:
account.flags.ignore_mandatory = True
account.flags.ignore_permissions = True
account.insert()
accounts.append(account_name_in_db)
_import_accounts(child, account.name, root_type)
# Rebuild NestedSet HSM tree for Account Doctype
# after all accounts are already inserted.
frappe.local.flags.ignore_on_update = True
_import_accounts(chart, None, None, root_account=True)
rebuild_tree("Account", "parent_account")
frappe.local.flags.ignore_on_update = False
def add_suffix_if_duplicate(account_name, account_number, accounts):
if account_number:
@@ -81,7 +88,7 @@ def get_chart(chart_template, existing_company=None):
chart = {}
if existing_company:
return get_account_tree_from_existing_company(existing_company)
elif chart_template == "Standard":
from erpnext.accounts.doctype.account.chart_of_accounts.verified import standard_chart_of_accounts
return standard_chart_of_accounts.get()
@@ -122,6 +129,8 @@ def get_charts_for_country(country, with_standard=False):
for folder in folders:
path = os.path.join(os.path.dirname(__file__), folder)
if not os.path.exists(path):
continue
for fname in os.listdir(path):
fname = frappe.as_unicode(fname)
@@ -129,6 +138,7 @@ def get_charts_for_country(country, with_standard=False):
with open(os.path.join(path, fname), "r") as f:
_get_chart_name(f.read())
# if more than one charts, returned then add the standard
if len(charts) != 1 or with_standard:
charts += ["Standard", "Standard with Numbers"]
@@ -153,7 +163,7 @@ def build_account_tree(tree, parent, all_accounts):
# find children
parent_account = parent.name if parent else ""
children = [acc for acc in all_accounts if cstr(acc.parent_account) == parent_account]
# if no children, but a group account
if not children and parent.is_group:
tree["is_group"] = 1
@@ -163,7 +173,7 @@ def build_account_tree(tree, parent, all_accounts):
for child in children:
# start new subtree
tree[child.account_name] = {}
# assign account_type and root_type
if child.account_number:
tree[child.account_name]["account_number"] = child.account_number
@@ -173,6 +183,51 @@ def build_account_tree(tree, parent, all_accounts):
tree[child.account_name]["tax_rate"] = child.tax_rate
if not parent:
tree[child.account_name]["root_type"] = child.root_type
# call recursively to build a subtree for current account
build_account_tree(tree[child.account_name], child, all_accounts)
@frappe.whitelist()
def validate_bank_account(coa, bank_account):
accounts = []
chart = get_chart(coa)
if chart:
def _get_account_names(account_master):
for account_name, child in iteritems(account_master):
if account_name not in ["account_number", "account_type",
"root_type", "is_group", "tax_rate"]:
accounts.append(account_name)
_get_account_names(child)
_get_account_names(chart)
return (bank_account in accounts)
@frappe.whitelist()
def build_tree_from_json(chart_template):
''' get chart template from its folder and parse the json to be rendered as tree '''
chart = get_chart(chart_template)
# if no template selected, return as it is
if not chart:
return
accounts = []
def _import_accounts(children, parent):
''' recursively called to form a parent-child based list of dict from chart template '''
for account_name, child in iteritems(children):
account = {}
if account_name in ["account_number", "account_type",\
"root_type", "is_group", "tax_rate"]: continue
account['parent_account'] = parent
account['expandable'] = True if identify_is_group(child) else False
account['value'] = (child.get('account_number') + ' - ' + account_name) \
if child.get('account_number') else account_name
accounts.append(account)
_import_accounts(child, account['value'])
_import_accounts(chart, None)
return accounts

View File

@@ -12,6 +12,8 @@ from xml.etree import ElementTree as ET
from frappe.utils.csvutils import read_csv_content
import frappe
from six import iteritems
path = "/Users/nabinhait/projects/odoo/addons"
accounts = {}
@@ -137,7 +139,7 @@ def get_account_types(root_list, csv_content, prefix=None):
def make_maps_for_xml(xml_roots, account_types, country_dir):
"""make maps for `charts` and `accounts`"""
for model, root_list in xml_roots.iteritems():
for model, root_list in iteritems(xml_roots):
for root in root_list:
for node in root[0].findall("record"):
if node.get("model")=="account.account.template":

View File

@@ -147,8 +147,9 @@
}
},
"Duties and Taxes": {
"account_type": "Tax",
"is_group": 1
"TDS": {
"account_type": "Tax"
}
},
"Loans (Liabilities)": {
"Secured Loans": {},

View File

@@ -24,7 +24,8 @@ def get():
"account_type": "Cash"
},
_("Loans and Advances (Assets)"): {
"is_group": 1
_("Employee Advances"): {
},
},
_("Securities and Deposits"): {
_("Earnest Money"): {}
@@ -63,7 +64,10 @@ def get():
},
_("Accumulated Depreciation"): {
"account_type": "Accumulated Depreciation"
}
},
_("CWIP Account"): {
"account_type": "Capital Work in Progress",
}
},
_("Investments"): {
"is_group": 1
@@ -81,6 +85,9 @@ def get():
_("Cost of Goods Sold"): {
"account_type": "Cost of Goods Sold"
},
_("Expenses Included In Asset Valuation"): {
"account_type": "Expenses Included In Asset Valuation"
},
_("Expenses Included In Valuation"): {
"account_type": "Expenses Included In Valuation"
},
@@ -146,6 +153,9 @@ def get():
_("Stock Received But Not Billed"): {
"account_type": "Stock Received But Not Billed"
},
_("Asset Received But Not Billed"): {
"account_type": "Asset Received But Not Billed"
}
},
_("Duties and Taxes"): {
"account_type": "Tax",

View File

@@ -29,7 +29,9 @@ def get():
"account_number": "1100"
},
_("Loans and Advances (Assets)"): {
"is_group": 1,
_("Employee Advances"): {
"account_number": "1610"
},
"account_number": "1600"
},
_("Securities and Deposits"): {
@@ -85,6 +87,10 @@ def get():
"account_type": "Accumulated Depreciation",
"account_number": "1780"
},
_("CWIP Account"): {
"account_type": "Capital Work in Progress",
"account_number": "1790"
},
"account_number": "1700"
},
_("Investments"): {
@@ -108,6 +114,10 @@ def get():
"account_type": "Cost of Goods Sold",
"account_number": "5111"
},
_("Expenses Included In Asset Valuation"): {
"account_type": "Expenses Included In Asset Valuation",
"account_number": "5112"
},
_("Expenses Included In Valuation"): {
"account_type": "Expenses Included In Valuation",
"account_number": "5118"
@@ -228,6 +238,10 @@ def get():
"account_type": "Stock Received But Not Billed",
"account_number": "2210"
},
_("Asset Received But Not Billed"): {
"account_type": "Asset Received But Not Billed",
"account_number": "2211"
},
"account_number": "2200"
},
_("Duties and Taxes"): {

View File

@@ -161,7 +161,7 @@ def _make_test_records(verbose):
def get_inventory_account(company, warehouse=None):
account = None
if warehouse:
account = get_warehouse_account(warehouse, company)
account = get_warehouse_account(frappe.get_doc("Warehouse", warehouse))
else:
account = get_company_default_inventory_account(company)

View File

@@ -0,0 +1,24 @@
// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
frappe.ui.form.on('Accounting Period', {
onload: function(frm) {
if(frm.doc.closed_documents.length === 0 || (frm.doc.closed_documents.length === 1 && frm.doc.closed_documents[0].document_type == undefined)) {
frappe.call({
method: "get_doctypes_for_closing",
doc:frm.doc,
callback: function(r) {
if(r.message) {
cur_frm.clear_table("closed_documents");
r.message.forEach(function(element) {
var c = frm.add_child("closed_documents");
c.document_type = element.document_type;
c.closed = element.closed;
});
refresh_field("closed_documents");
}
}
});
}
}
});

View File

@@ -0,0 +1,349 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "field:period_name",
"beta": 0,
"creation": "2018-04-13 18:50:14.672323",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "period_name",
"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": "Period Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "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": "Start 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": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "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": "End 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": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_4",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "company",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Company",
"length": 0,
"no_copy": 0,
"options": "Company",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "status",
"fieldtype": "Select",
"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": "Status",
"length": 0,
"no_copy": 0,
"options": "Open\nClosed",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_break_7",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "closed_documents",
"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": "Closed Documents",
"length": 0,
"no_copy": 0,
"options": "Closed Document",
"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
}
],
"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-04-13 19:14:47.593753",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounting Period",
"name_case": "",
"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,
"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,
"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 User",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,54 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2018, 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 AccountingPeriod(Document):
def validate(self):
self.validate_overlap()
def before_insert(self):
self.bootstrap_doctypes_for_closing()
def autoname(self):
company_abbr = frappe.get_cached_value('Company', self.company, "abbr")
self.name = " - ".join([self.period_name, company_abbr])
def validate_overlap(self):
existing_accounting_period = frappe.db.sql("""select name from `tabAccounting Period`
where (
(%(start_date)s between start_date and end_date)
or (%(end_date)s between start_date and end_date)
or (start_date between %(start_date)s and %(end_date)s)
or (end_date between %(start_date)s and %(end_date)s)
) and name!=%(name)s and company=%(company)s""",
{
"start_date": self.start_date,
"end_date": self.end_date,
"name": self.name,
"company": self.company
}, as_dict=True)
if len(existing_accounting_period) > 0:
frappe.throw("Accounting Period overlaps with {0}".format(existing_accounting_period[0].get("name")))
def get_doctypes_for_closing(self):
docs_for_closing = []
#if not self.closed_documents or len(self.closed_documents) == 0:
doctypes = ["Sales Invoice", "Purchase Invoice", "Journal Entry", "Payroll Entry", "Bank Reconciliation", "Asset", "Purchase Order", "Sales Order", "Leave Application", "Leave Allocation", "Stock Entry"]
closed_doctypes = [{"document_type": doctype, "closed": 1} for doctype in doctypes]
for closed_doctype in closed_doctypes:
docs_for_closing.append(closed_doctype)
return docs_for_closing
def bootstrap_doctypes_for_closing(self):
if len(self.closed_documents) == 0:
for doctype_for_closing in self.get_doctypes_for_closing():
self.append('closed_documents', {
"document_type": doctype_for_closing.document_type,
"closed": doctype_for_closing.closed
})

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Accounting Period", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Accounting Period
() => frappe.tests.make('Accounting Period', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

@@ -0,0 +1,27 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
# class TestAccountingPeriod(unittest.TestCase):
# def test_overlap(self):
# ap1 = create_accounting_period({"start_date":"2018-04-01", "end_date":"2018-06-30", "company":"Wind Power LLC"})
# ap1.save()
# ap2 = create_accounting_period({"start_date":"2018-06-30", "end_date":"2018-07-10", "company":"Wind Power LLC"})
# self.assertRaises(frappe.OverlapError, accounting_period_2.save())
#
# def tearDown(self):
# pass
#
#
# def create_accounting_period(**args):
# accounting_period = frappe.new_doc("Accounting Period")
# accounting_period.start_date = args.start_date or frappe.utils.datetime.date(2018, 4, 1)
# accounting_period.end_date = args.end_date or frappe.utils.datetime.date(2018, 6, 30)
# accounting_period.company = args.company
# accounting_period.period_name = "_Test_Period_Name_1"
#
# return accounting_period

View File

@@ -1,5 +1,6 @@
{
"allow_copy": 0,
"allow_events_in_timeline": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
@@ -15,6 +16,7 @@
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -42,10 +44,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -72,10 +76,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -103,10 +109,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -132,10 +140,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -163,10 +173,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -193,10 +205,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -223,10 +237,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -254,10 +270,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -285,10 +303,44 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "allow_cost_center_in_entry_of_bs_account",
"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": "Allow Cost Center In Entry of Balance Sheet Account",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -315,10 +367,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -345,10 +399,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -374,10 +430,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -404,10 +462,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -434,10 +494,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -465,10 +527,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -497,6 +561,73 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "report_settings_sb",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Report Settings",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"description": "Only select if you have setup Cash Flow Mapper documents",
"fieldname": "use_custom_cash_flow",
"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": "Use Custom Cash Flow Format",
"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
}
],
@@ -511,7 +642,7 @@
"issingle": 1,
"istable": 0,
"max_attachments": 0,
"modified": "2018-01-05 15:26:10.357085",
"modified": "2019-01-07 16:52:03.869199",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Accounts Settings",
@@ -519,7 +650,6 @@
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 0,
@@ -539,7 +669,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
@@ -559,7 +688,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
@@ -584,5 +712,6 @@
"show_name_in_global_search": 0,
"sort_order": "ASC",
"track_changes": 1,
"track_seen": 0
"track_seen": 0,
"track_views": 0
}

View File

@@ -12,11 +12,12 @@ from frappe.custom.doctype.property_setter.property_setter import make_property_
class AccountsSettings(Document):
def on_update(self):
pass
frappe.clear_cache()
def validate(self):
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:
@@ -28,4 +29,9 @@ class AccountsSettings(Document):
show_in_print = cint(self.show_payment_schedule_in_print)
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")
make_property_setter(doctype, "payment_schedule", "print_hide", 0 if show_in_print else 1, "Check")
def enable_fields_for_cost_center_settings(self):
show_field = 0 if cint(self.allow_cost_center_in_entry_of_bs_account) else 1
for doctype in ("Sales Invoice", "Purchase Invoice", "Payment Entry"):
make_property_setter(doctype, "cost_center", "hidden", show_field, "Check")

View File

@@ -0,0 +1,74 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"creation": "2018-04-16 21:50:05.860195",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "",
"fieldname": "company",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Company",
"length": 0,
"no_copy": 0,
"options": "Company",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2018-04-20 14:00:46.014502",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Allowed To Transact With",
"name_case": "",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

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

View File

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

View File

@@ -0,0 +1,94 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "field:bank_name",
"beta": 0,
"creation": "2018-04-07 16:59:59.496668",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_name",
"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": "Bank Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
}
],
"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-04-07 17:00:21.246202",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2018, 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 Bank(Document):
pass

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Bank", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Bank
() => frappe.tests.make('Bank', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

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

View File

@@ -0,0 +1,28 @@
// Copyright (c) 2016, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
frappe.ui.form.on('Bank Account', {
setup: function(frm) {
frm.set_query("account", function() {
return {
filters: {
'account_type': 'Bank',
'company': frm.doc.company,
'is_group': 0
}
};
});
},
refresh: function(frm) {
frappe.dynamic_link = { doc: frm.doc, fieldname: 'name', doctype: 'Bank Account' }
frm.toggle_display(['address_html','contact_html'], !frm.doc.__islocal);
if (frm.doc.__islocal) {
frappe.contacts.clear_address_and_contact(frm);
}
else {
frappe.contacts.render_address_and_contact(frm);
}
}
});

View File

@@ -0,0 +1,728 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 1,
"autoname": "field:account_name",
"beta": 0,
"creation": "2017-05-29 21:35:13.136357",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "Setup",
"editable_grid": 0,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "account_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 1,
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Account Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "account",
"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": "Account",
"length": 0,
"no_copy": 0,
"options": "Account",
"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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank",
"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": "Bank",
"length": 0,
"no_copy": 0,
"options": "Bank",
"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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "is_company_account",
"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": "Is Company Account",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "is_company_account",
"fieldname": "company",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 1,
"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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_7",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "",
"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": 1,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "is_default",
"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": "Is Default",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_account_no",
"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": "Bank Account No",
"length": 30,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "iban",
"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": "IBAN",
"length": 25,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "branch_code",
"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": "Branch Code",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "swift_number",
"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": "SWIFT number",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "eval:!doc.is_company_account",
"fieldname": "section_break_11",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "party_type",
"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": "Party Type",
"length": 0,
"no_copy": 0,
"options": "DocType",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_14",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "party",
"fieldtype": "Dynamic 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": "Party",
"length": 0,
"no_copy": 0,
"options": "party_type",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "address_and_contact",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Address and Contact",
"length": 0,
"no_copy": 0,
"options": "fa fa-map-marker",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "address_html",
"fieldtype": "HTML",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Address HTML",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "website",
"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": "Website",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_12",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "contact_html",
"fieldtype": "HTML",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Contact HTML",
"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
}
],
"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-07-20 13:55:36.996465",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Account",
"name_case": "",
"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": "Accounts Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"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 User",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"search_fields": "bank,account",
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0,
"track_views": 0
}

View File

@@ -0,0 +1,33 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.model.document import Document
from frappe.contacts.address_and_contact import load_address_and_contact, delete_contact_and_address
class BankAccount(Document):
def onload(self):
"""Load address and contacts in `__onload`"""
load_address_and_contact(self)
def on_trash(self):
delete_contact_and_address('BankAccount', self.name)
def validate(self):
self.validate_company()
def validate_company(self):
if self.is_company_account and not self.company:
frappe.throw(_("Company is manadatory for company account"))
@frappe.whitelist()
def make_bank_account(doctype, docname):
doc = frappe.new_doc("Bank Account")
doc.party_type = doctype
doc.party = docname
doc.is_default = 1
return doc

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Bank Account", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Bank Account
() => frappe.tests.make('Bank Account', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

@@ -0,0 +1,12 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
# test_records = frappe.get_test_records('Bank Account')
class TestBankAccount(unittest.TestCase):
pass

View File

@@ -1,24 +1,70 @@
// Copyright (c) 2016, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
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_account','branch_code','branch_code');
cur_frm.add_fetch('bank_account','swift_number','swift_number');
frappe.ui.form.on('Bank Guarantee', {
refresh: function(frm) {
cur_frm.set_query("account", function() {
setup: function(frm) {
frm.set_query("bank", function() {
return {
"filters": {
"account_type": "Bank",
"is_group": 0
filters: {
company: frm.doc.company
}
};
});
cur_frm.set_query("project", function() {
frm.set_query("bank_account", function() {
return {
"filters": {
"customer": cur_frm.doc.customer
filters: {
company: frm.doc.company,
bank: frm.doc.bank
}
}
});
frm.set_query("project", function() {
return {
filters: {
customer: frm.doc.customer
}
};
});
},
bg_type: function(frm) {
if (frm.doc.bg_type == "Receiving") {
frm.set_value("reference_doctype", "Sales Order");
} else if (frm.doc.bg_type == "Providing") {
frm.set_value("reference_doctype", "Purchase Order");
}
},
reference_docname: function(frm) {
if (frm.doc.reference_docname && frm.doc.reference_doctype) {
let fields_to_fetch = ["project", "grand_total"];
let party_field = frm.doc.reference_doctype == "Sales Order" ? "customer" : "supplier";
fields_to_fetch.push(party_field);
frappe.call({
method: "erpnext.accounts.doctype.bank_guarantee.bank_guarantee.get_vouchar_detials",
args: {
"column_list": fields_to_fetch,
"doctype": frm.doc.reference_doctype,
"docname": frm.doc.reference_docname
},
callback: function(r) {
if (r.message) {
if (r.message[party_field]) frm.set_value(party_field, r.message[party_field]);
if (r.message.project) frm.set_value("project", r.message.project);
if (r.message.grand_total) frm.set_value("amount", r.message.grand_total);
}
}
});
}
},
start_date: function(frm) {
var end_date = frappe.datetime.add_days(cur_frm.doc.start_date, cur_frm.doc.validity - 1);
cur_frm.set_value("end_date", end_date);
@@ -27,4 +73,4 @@ frappe.ui.form.on('Bank Guarantee', {
var end_date = frappe.datetime.add_days(cur_frm.doc.start_date, cur_frm.doc.validity - 1);
cur_frm.set_value("end_date", end_date);
}
});
});

View File

@@ -3,7 +3,7 @@
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "BG-.#####",
"autoname": "ACC-BG-.YYYY.-.#####",
"beta": 0,
"creation": "2016-12-17 10:43:35.731631",
"custom": 0,
@@ -15,10 +15,111 @@
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bg_type",
"fieldtype": "Select",
"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": "Bank Guarantee Type",
"length": 0,
"no_copy": 0,
"options": "\nReceiving\nProviding",
"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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "reference_doctype",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Reference Document Type",
"length": 0,
"no_copy": 0,
"options": "DocType",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "reference_docname",
"fieldtype": "Dynamic 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": "Reference Document Name",
"length": 0,
"no_copy": 0,
"options": "reference_doctype",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "eval: doc.bg_type == \"Receiving\"",
"fieldname": "customer",
"fieldtype": "Link",
"hidden": 0,
@@ -39,13 +140,49 @@
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "eval: doc.bg_type == \"Providing\"",
"fieldname": "supplier",
"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": "Supplier",
"length": 0,
"no_copy": 0,
"options": "Supplier",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
@@ -73,16 +210,18 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "account",
"fieldtype": "Link",
"fieldname": "column_break_6",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
@@ -90,10 +229,8 @@
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Bank Account",
"length": 0,
"no_copy": 0,
"options": "Account",
"permlevel": 0,
"precision": "",
"print_hide": 0,
@@ -101,13 +238,15 @@
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -134,39 +273,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_6",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -193,10 +305,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -221,13 +335,15 @@
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -251,13 +367,401 @@
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_account_info",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Bank Account Info",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank",
"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": "Bank",
"length": 0,
"no_copy": 0,
"options": "Bank",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_account",
"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": "Bank Account",
"length": 0,
"no_copy": 0,
"options": "Bank Account",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "account",
"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": "Account",
"length": 0,
"no_copy": 0,
"options": "Account",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_account_no",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Bank Account No",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_17",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "iban",
"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": "IBAN",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "branch_code",
"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": "Branch Code",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "swift_number",
"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": "SWIFT number",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_break_14",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "more_information",
"fieldtype": "Text Editor",
"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": "Clauses and Conditions",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "margin_details",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Other Details",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -281,49 +785,21 @@
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 1
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 1,
"columns": 0,
"fieldname": "section_break_10",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "More Information",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "more_information",
"fieldtype": "Text Editor",
"fieldname": "name_of_beneficiary",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
@@ -331,7 +807,7 @@
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Notes",
"label": "Name of Beneficiary",
"length": 0,
"no_copy": 0,
"permlevel": 0,
@@ -344,10 +820,142 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_19",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "margin_money",
"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": "Margin Money",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "",
"depends_on": "",
"fieldname": "charges",
"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": "Charges Incurred",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "",
"fieldname": "fixed_deposit_number",
"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": "Fixed Deposit Number",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -374,6 +982,7 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
}
],
@@ -387,7 +996,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2017-04-25 13:31:49.627831",
"modified": "2018-08-21 16:15:54.741746",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Guarantee",
@@ -396,7 +1005,6 @@
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 0,
@@ -416,7 +1024,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 1,
"create": 1,
"delete": 1,
@@ -444,5 +1051,6 @@
"sort_order": "DESC",
"title_field": "customer",
"track_changes": 0,
"track_seen": 0
"track_seen": 0,
"track_views": 0
}

View File

@@ -3,8 +3,26 @@
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
import frappe, json
from frappe.model.document import Document
from frappe import _
class BankGuarantee(Document):
pass
def validate(self):
if not (self.customer or self.supplier):
frappe.throw(_("Select the customer or supplier."))
def on_submit(self):
if not self.bank_guarantee_number:
frappe.throw(_("Enter the Bank Guarantee Number before submittting."))
if not self.name_of_beneficiary:
frappe.throw(_("Enter the name of the Beneficiary before submittting."))
if not self.bank:
frappe.throw(_("Enter the name of the bank or lending institution before submittting."))
@frappe.whitelist()
def get_vouchar_detials(column_list, doctype, docname):
print (column_list, doctype, docname)
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]

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Bank Guarantee", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Bank Guarantee
() => frappe.tests.make('Bank Guarantee', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

@@ -1,12 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
# test_records = frappe.get_test_records('Bank Guarantee')
class TestBankGuarantee(unittest.TestCase):
pass

View File

@@ -14,7 +14,7 @@ form_grid_templates = {
class BankReconciliation(Document):
def get_payment_entries(self):
if not (self.bank_account and self.from_date and self.to_date):
msgprint("Bank Account, From Date and To Date are Mandatory")
msgprint(_("Bank Account, From Date and To Date are Mandatory"))
return
condition = ""

View File

@@ -1,5 +1,6 @@
{
"allow_copy": 0,
"allow_events_in_timeline": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
@@ -12,6 +13,7 @@
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -39,10 +41,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -71,11 +75,13 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0,
"width": "50"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -103,11 +109,13 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0,
"width": "15"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -136,10 +144,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -165,11 +175,13 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0,
"width": "50%"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -197,10 +209,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -228,10 +242,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -259,10 +275,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -290,6 +308,7 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
}
],
@@ -304,7 +323,7 @@
"istable": 1,
"max_attachments": 0,
"menu_index": 0,
"modified": "2017-06-23 12:07:50.883515",
"modified": "2019-01-07 16:52:07.174687",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Reconciliation Detail",
@@ -316,5 +335,6 @@
"show_name_in_global_search": 0,
"sort_order": "ASC",
"track_changes": 0,
"track_seen": 0
"track_seen": 0,
"track_views": 0
}

View File

@@ -0,0 +1,8 @@
// Copyright (c) 2017, sathishpy@gmail.com and contributors
// For license information, please see license.txt
frappe.ui.form.on('Bank Statement Settings', {
refresh: function(frm) {
}
});

View File

@@ -0,0 +1,272 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 1,
"beta": 0,
"creation": "2017-11-13 13:38:10.863592",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank",
"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": "Bank Account",
"length": 0,
"no_copy": 0,
"options": "Bank",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "'%d/%m/%Y'",
"fieldname": "date_format",
"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": "Date Format",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "statement_header_mapping",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Statement Header Mapping",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "header_items",
"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": "Statement Headers",
"length": 0,
"no_copy": 0,
"options": "Bank Statement Settings Item",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "transaction_data_mapping",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Transaction Data Mapping",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "mapped_items",
"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": "Mapped Items",
"length": 0,
"no_copy": 0,
"options": "Bank Statement Transaction Settings Item",
"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
}
],
"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-04-07 18:57:04.048423",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Statement Settings",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,11 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe.model.document import Document
class BankStatementSettings(Document):
def autoname(self):
self.name = self.bank + "-Statement-Settings"

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Bank Statement Settings", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Bank Statement Settings
() => frappe.tests.make('Bank Statement Settings', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
class TestBankStatementSettings(unittest.TestCase):
pass

View File

@@ -0,0 +1,101 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"creation": "2018-01-08 00:16:42.762980",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "mapped_header",
"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": "Mapped Header",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "stmt_header",
"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": "Bank Header",
"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": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2018-01-08 00:19:14.841134",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Statement Settings Item",
"name_case": "",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2018, sathishpy@gmail.com and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe.model.document import Document
class BankStatementSettingsItem(Document):
pass

View File

@@ -0,0 +1,100 @@
// Copyright (c) 2017, sathishpy@gmail.com and contributors
// For license information, please see license.txt
frappe.ui.form.on('Bank Statement Transaction Entry', {
setup: function(frm) {
frm.events.account_filters(frm)
frm.events.invoice_filter(frm)
},
refresh: function(frm) {
frm.set_df_property("bank_account", "read_only", frm.doc.__islocal ? 0 : 1);
frm.set_df_property("from_date", "read_only", frm.doc.__islocal ? 0 : 1);
frm.set_df_property("to_date", "read_only", frm.doc.__islocal ? 0 : 1);
},
invoke_doc_function(frm, method) {
frappe.call({
doc: frm.doc,
method: method,
callback: function(r) {
if(!r.exe) {
frm.refresh_fields();
}
}
});
},
account_filters: function(frm) {
frm.fields_dict['bank_account'].get_query = function(doc, dt, dn) {
return {
filters:[
["Account", "account_type", "in", ["Bank"]]
]
}
};
frm.fields_dict['receivable_account'].get_query = function(doc, dt, dn) {
return {
filters: {"account_type": "Receivable"}
}
};
frm.fields_dict['payable_account'].get_query = function(doc, dt, dn) {
return {
filters: {"account_type": "Payable"}
}
};
},
invoice_filter: function(frm) {
frm.set_query("invoice", "payment_invoice_items", function(doc, cdt, cdn) {
let row = locals[cdt][cdn]
if (row.party_type == "Customer") {
return {
filters:[[row.invoice_type, "customer", "in", [row.party]],
[row.invoice_type, "status", "!=", "Cancelled" ],
[row.invoice_type, "posting_date", "<", row.transaction_date ],
[row.invoice_type, "outstanding_amount", ">", 0 ]]
}
} else if (row.party_type == "Supplier") {
return {
filters:[[row.invoice_type, "supplier", "in", [row.party]],
[row.invoice_type, "status", "!=", "Cancelled" ],
[row.invoice_type, "posting_date", "<", row.transaction_date ],
[row.invoice_type, "outstanding_amount", ">", 0 ]]
}
}
});
},
match_invoices: function(frm) {
frm.events.invoke_doc_function(frm, "populate_matching_invoices");
},
create_payments: function(frm) {
frm.events.invoke_doc_function(frm, "create_payment_entries");
},
submit_payments: function(frm) {
frm.events.invoke_doc_function(frm, "submit_payment_entries");
},
});
frappe.ui.form.on('Bank Statement Transaction Invoice Item', {
party_type: function(frm, cdt, cdn) {
let row = locals[cdt][cdn];
if (row.party_type == "Customer") {
row.invoice_type = "Sales Invoice";
} else if (row.party_type == "Supplier") {
row.invoice_type = "Purchase Invoice";
} else if (row.party_type == "Account") {
row.invoice_type = "Journal Entry";
}
refresh_field("invoice_type", row.name, "payment_invoice_items");
},
invoice_type: function(frm, cdt, cdn) {
let row = locals[cdt][cdn];
if (row.invoice_type == "Purchase Invoice") {
row.party_type = "Supplier";
} else if (row.invoice_type == "Sales Invoice") {
row.party_type = "Customer";
}
refresh_field("party_type", row.name, "payment_invoice_items");
}
});

View File

@@ -0,0 +1,792 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 1,
"beta": 0,
"creation": "2017-11-07 13:48:13.123185",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_account",
"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": "Bank Account",
"length": 0,
"no_copy": 0,
"options": "Account",
"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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "from_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": "From 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": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "to_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": "To 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": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_settings",
"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": "Bank Statement Settings",
"length": 0,
"no_copy": 0,
"options": "Bank Statement Settings",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_3",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank",
"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": "Bank",
"length": 0,
"no_copy": 0,
"options": "Bank",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "receivable_account",
"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": "Receivable Account",
"length": 0,
"no_copy": 0,
"options": "Account",
"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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "payable_account",
"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": "Payable Account",
"length": 0,
"no_copy": 0,
"options": "Account",
"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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_statement",
"fieldtype": "Attach",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Bank Statement",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "",
"fieldname": "section_break_6",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Bank Transaction Entries",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "new_transaction_items",
"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": "New Transactions",
"length": 0,
"no_copy": 0,
"options": "Bank Statement Transaction Payment Item",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "eval:doc.new_transaction_items && doc.new_transaction_items.length",
"fieldname": "section_break_9",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "",
"fieldname": "match_invoices",
"fieldtype": "Button",
"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": "Match Transaction to Invoices",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_14",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "create_payments",
"fieldtype": "Button",
"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": "Create New Payment/Journal Entry",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_16",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "submit_payments",
"fieldtype": "Button",
"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": "Submit/Reconcile Payments",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "eval:doc.new_transaction_items && doc.new_transaction_items.length",
"fieldname": "section_break_18",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Matching Invoices",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "payment_invoice_items",
"fieldtype": "Table",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Payment Invoice Items",
"length": 0,
"no_copy": 0,
"options": "Bank Statement Transaction Invoice Item",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "reconciled_transactions",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Reconciled Transactions",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "reconciled_transaction_items",
"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": "Reconciled Transactions",
"length": 0,
"no_copy": 0,
"options": "Bank Statement Transaction Payment Item",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "amended_from",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Amended From",
"length": 0,
"no_copy": 1,
"options": "Bank Statement Transaction Entry",
"permlevel": 0,
"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
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 1,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-09-14 18:04:44.170455",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Statement Transaction Entry",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 1,
"cancel": 1,
"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": 1,
"write": 1
},
{
"amend": 1,
"cancel": 1,
"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": 1,
"write": 1
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,442 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.model.document import Document
from erpnext.accounts.utils import get_outstanding_invoices
from frappe.utils import nowdate
from datetime import datetime
import csv, os, re, io
import difflib
import copy
class BankStatementTransactionEntry(Document):
def autoname(self):
self.name = self.bank_account + "-" + self.from_date + "-" + self.to_date
if self.bank:
mapper_name = self.bank + "-Statement-Settings"
if not frappe.db.exists("Bank Statement Settings", mapper_name):
self.create_settings(self.bank)
self.bank_settings = mapper_name
def create_settings(self, bank):
mapper = frappe.new_doc("Bank Statement Settings")
mapper.bank = bank
mapper.date_format = "%Y-%m-%d"
mapper.bank_account = self.bank_account
for header in ["Date", "Particulars", "Withdrawals", "Deposits", "Balance"]:
header_item = mapper.append("header_items", {})
header_item.mapped_header = header_item.stmt_header = header
mapper.save()
def on_update(self):
if (not self.bank_statement):
self.reconciled_transaction_items = self.new_transaction_items = []
return
if len(self.new_transaction_items + self.reconciled_transaction_items) == 0:
self.populate_payment_entries()
else:
self.match_invoice_to_payment()
def validate(self):
if not self.new_transaction_items:
self.populate_payment_entries()
def get_statement_headers(self):
if not self.bank_settings:
frappe.throw("Bank Data mapper doesn't exist")
mapper_doc = frappe.get_doc("Bank Statement Settings", self.bank_settings)
headers = {entry.mapped_header:entry.stmt_header for entry in mapper_doc.header_items}
return headers
def populate_payment_entries(self):
if self.bank_statement is None: return
filename = self.bank_statement.split("/")[-1]
if (len(self.new_transaction_items + self.reconciled_transaction_items) > 0):
frappe.throw("Transactions already retreived from the statement")
date_format = frappe.get_value("Bank Statement Settings", self.bank_settings, "date_format")
if (date_format is None):
date_format = '%Y-%m-%d'
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)
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"]))
if (not date): continue
transaction_date = datetime.strptime(date, date_format).date()
if (self.from_date and transaction_date < datetime.strptime(self.from_date, '%Y-%m-%d').date()): continue
if (self.to_date and transaction_date > datetime.strptime(self.to_date, '%Y-%m-%d').date()): continue
bank_entry = self.append('new_transaction_items', {})
bank_entry.transaction_date = transaction_date
bank_entry.description = entry[statement_headers["Particulars"]]
mapped_item = next((entry for entry in mapped_items if entry.mapping_type == "Transaction" and frappe.safe_decode(entry.bank_data.lower()) in frappe.safe_decode(bank_entry.description.lower())), None)
if (mapped_item is not None):
bank_entry.party_type = mapped_item.mapped_data_type
bank_entry.party = mapped_item.mapped_data
else:
bank_entry.party_type = "Supplier" if not entry[statement_headers["Deposits"]].strip() else "Customer"
party_list = frappe.get_all(bank_entry.party_type, fields=["name"])
parties = [party.name for party in party_list]
matches = difflib.get_close_matches(frappe.safe_decode(bank_entry.description.lower()), parties, 1, 0.4)
if len(matches) > 0: bank_entry.party = matches[0]
bank_entry.amount = -float(entry[statement_headers["Withdrawals"]]) if not entry[statement_headers["Deposits"]].strip() else float(entry[statement_headers["Deposits"]])
self.map_unknown_transactions()
self.map_transactions_on_journal_entry()
def map_transactions_on_journal_entry(self):
for entry in self.new_transaction_items:
vouchers = frappe.db.sql("""select name, posting_date from `tabJournal Entry`
where posting_date='{0}' and total_credit={1} and cheque_no='{2}' and docstatus != 2
""".format(entry.transaction_date, abs(entry.amount), frappe.safe_decode(entry.description)), as_dict=True)
if (len(vouchers) == 1):
entry.reference_name = vouchers[0].name
def populate_matching_invoices(self):
self.payment_invoice_items = []
self.map_unknown_transactions()
added_invoices = []
for entry in self.new_transaction_items:
if (not entry.party or entry.party_type == "Account"): continue
account = self.receivable_account if entry.party_type == "Customer" else self.payable_account
invoices = get_outstanding_invoices(entry.party_type, entry.party, account)
transaction_date = datetime.strptime(entry.transaction_date, "%Y-%m-%d").date()
outstanding_invoices = [invoice for invoice in invoices if invoice.posting_date <= transaction_date]
amount = abs(entry.amount)
matching_invoices = [invoice for invoice in outstanding_invoices if invoice.outstanding_amount == amount]
sorted(outstanding_invoices, key=lambda k: k['posting_date'])
for e in (matching_invoices + outstanding_invoices):
added = next((inv for inv in added_invoices if inv == e.get('voucher_no')), None)
if (added is not None): continue
ent = self.append('payment_invoice_items', {})
ent.transaction_date = entry.transaction_date
ent.payment_description = frappe.safe_decode(entry.description)
ent.party_type = entry.party_type
ent.party = entry.party
ent.invoice = e.get('voucher_no')
added_invoices += [ent.invoice]
ent.invoice_type = "Sales Invoice" if entry.party_type == "Customer" else "Purchase Invoice"
ent.invoice_date = e.get('posting_date')
ent.outstanding_amount = e.get('outstanding_amount')
ent.allocated_amount = min(float(e.get('outstanding_amount')), amount)
amount -= float(e.get('outstanding_amount'))
if (amount <= 5): break
self.match_invoice_to_payment()
self.populate_matching_vouchers()
self.map_transactions_on_journal_entry()
def match_invoice_to_payment(self):
added_payments = []
for entry in self.new_transaction_items:
if (not entry.party or entry.party_type == "Account"): continue
entry.account = self.receivable_account if entry.party_type == "Customer" else self.payable_account
amount = abs(entry.amount)
payment, matching_invoices = None, []
for inv_entry in self.payment_invoice_items:
if (inv_entry.payment_description != frappe.safe_decode(entry.description) or inv_entry.transaction_date != entry.transaction_date): continue
if (inv_entry.party != entry.party): continue
matching_invoices += [inv_entry.invoice_type + "|" + inv_entry.invoice]
payment = get_payments_matching_invoice(inv_entry.invoice, entry.amount, entry.transaction_date)
doc = frappe.get_doc(inv_entry.invoice_type, inv_entry.invoice)
inv_entry.invoice_date = doc.posting_date
inv_entry.outstanding_amount = doc.outstanding_amount
inv_entry.allocated_amount = min(float(doc.outstanding_amount), amount)
amount -= inv_entry.allocated_amount
if (amount < 0): break
amount = abs(entry.amount)
if (payment is None):
order_doctype = "Sales Order" if entry.party_type=="Customer" else "Purchase Order"
from erpnext.controllers.accounts_controller import get_advance_payment_entries
payment_entries = get_advance_payment_entries(entry.party_type, entry.party, entry.account, order_doctype, against_all_orders=True)
payment_entries += self.get_matching_payments(entry.party, amount, entry.transaction_date)
payment = next((payment for payment in payment_entries if payment.amount == amount and payment not in added_payments), None)
if (payment is None):
print("Failed to find payments for {0}:{1}".format(entry.party, amount))
continue
added_payments += [payment]
entry.reference_type = payment.reference_type
entry.reference_name = payment.reference_name
entry.mode_of_payment = "Wire Transfer"
entry.outstanding_amount = min(amount, 0)
if (entry.payment_reference is None):
entry.payment_reference = frappe.safe_decode(entry.description)
entry.invoices = ",".join(matching_invoices)
#print("Matching payment is {0}:{1}".format(entry.reference_type, entry.reference_name))
def get_matching_payments(self, party, amount, pay_date):
query = """select 'Payment Entry' as reference_type, name as reference_name, paid_amount as amount
from `tabPayment Entry` where party='{0}' and paid_amount={1} and posting_date='{2}' and docstatus != 2
""".format(party, amount, pay_date)
matching_payments = frappe.db.sql(query, as_dict=True)
return matching_payments
def map_unknown_transactions(self):
for entry in self.new_transaction_items:
if (entry.party): continue
inv_type = "Sales Invoice" if (entry.amount > 0) else "Purchase Invoice"
party_type = "customer" if (entry.amount > 0) else "supplier"
query = """select posting_date, name, {0}, outstanding_amount
from `tab{1}` where ROUND(outstanding_amount)={2} and posting_date < '{3}'
""".format(party_type, inv_type, round(abs(entry.amount)), entry.transaction_date)
invoices = frappe.db.sql(query, as_dict = True)
if(len(invoices) > 0):
entry.party = invoices[0].get(party_type)
def populate_matching_vouchers(self):
for entry in self.new_transaction_items:
if (not entry.party or entry.reference_name): continue
print("Finding matching voucher for {0}".format(frappe.safe_decode(entry.description)))
amount = abs(entry.amount)
invoices = []
vouchers = get_matching_journal_entries(self.from_date, self.to_date, entry.party, self.bank_account, amount)
if len(vouchers) == 0: continue
for voucher in vouchers:
added = next((entry.invoice for entry in self.payment_invoice_items if entry.invoice == voucher.voucher_no), None)
if (added):
print("Found voucher {0}".format(added))
continue
print("Adding voucher {0} {1} {2}".format(voucher.voucher_no, voucher.posting_date, voucher.debit))
ent = self.append('payment_invoice_items', {})
ent.invoice_date = voucher.posting_date
ent.invoice_type = "Journal Entry"
ent.invoice = voucher.voucher_no
ent.payment_description = frappe.safe_decode(entry.description)
ent.allocated_amount = max(voucher.debit, voucher.credit)
invoices += [ent.invoice_type + "|" + ent.invoice]
entry.reference_type = "Journal Entry"
entry.mode_of_payment = "Wire Transfer"
entry.reference_name = ent.invoice
#entry.account = entry.party
entry.invoices = ",".join(invoices)
break
def create_payment_entries(self):
for payment_entry in self.new_transaction_items:
if (not payment_entry.party): continue
if (payment_entry.reference_name): continue
print("Creating payment entry for {0}".format(frappe.safe_decode(payment_entry.description)))
if (payment_entry.party_type == "Account"):
payment = self.create_journal_entry(payment_entry)
invoices = [payment.doctype + "|" + payment.name]
payment_entry.invoices = ",".join(invoices)
else:
payment = self.create_payment_entry(payment_entry)
invoices = [entry.reference_doctype + "|" + entry.reference_name for entry in payment.references if entry is not None]
payment_entry.invoices = ",".join(invoices)
payment_entry.mode_of_payment = payment.mode_of_payment
payment_entry.account = self.receivable_account if payment_entry.party_type == "Customer" else self.payable_account
payment_entry.reference_name = payment.name
payment_entry.reference_type = payment.doctype
frappe.msgprint(_("Successfully created payment entries"))
def create_payment_entry(self, pe):
payment = frappe.new_doc("Payment Entry")
payment.posting_date = pe.transaction_date
payment.payment_type = "Receive" if pe.party_type == "Customer" else "Pay"
payment.mode_of_payment = "Wire Transfer"
payment.party_type = pe.party_type
payment.party = pe.party
payment.paid_to = self.bank_account if pe.party_type == "Customer" else self.payable_account
payment.paid_from = self.receivable_account if pe.party_type == "Customer" else self.bank_account
payment.paid_amount = payment.received_amount = abs(pe.amount)
payment.reference_no = pe.description
payment.reference_date = pe.transaction_date
payment.save()
for inv_entry in self.payment_invoice_items:
if (pe.description != inv_entry.payment_description or pe.transaction_date != inv_entry.transaction_date): continue
if (pe.party != inv_entry.party): continue
reference = payment.append("references", {})
reference.reference_doctype = inv_entry.invoice_type
reference.reference_name = inv_entry.invoice
reference.allocated_amount = inv_entry.allocated_amount
print ("Adding invoice {0} {1}".format(reference.reference_name, reference.allocated_amount))
payment.setup_party_account_field()
payment.set_missing_values()
#payment.set_exchange_rate()
#payment.set_amounts()
#print("Created payment entry {0}".format(payment.as_dict()))
payment.save()
return payment
def create_journal_entry(self, pe):
je = frappe.new_doc("Journal Entry")
je.is_opening = "No"
je.voucher_type = "Bank Entry"
je.cheque_no = pe.description
je.cheque_date = pe.transaction_date
je.remark = pe.description
je.posting_date = pe.transaction_date
if (pe.amount < 0):
je.append("accounts", {"account": pe.party, "debit_in_account_currency": abs(pe.amount)})
je.append("accounts", {"account": self.bank_account, "credit_in_account_currency": abs(pe.amount)})
else:
je.append("accounts", {"account": pe.party, "credit_in_account_currency": pe.amount})
je.append("accounts", {"account": self.bank_account, "debit_in_account_currency": pe.amount})
je.save()
return je
def update_payment_entry(self, payment):
lst = []
invoices = payment.invoices.strip().split(',')
if (len(invoices) == 0): return
amount = float(abs(payment.amount))
for invoice_entry in invoices:
if (not invoice_entry.strip()): continue
invs = invoice_entry.split('|')
invoice_type, invoice = invs[0], invs[1]
outstanding_amount = frappe.get_value(invoice_type, invoice, 'outstanding_amount')
lst.append(frappe._dict({
'voucher_type': payment.reference_type,
'voucher_no' : payment.reference_name,
'against_voucher_type' : invoice_type,
'against_voucher' : invoice,
'account' : payment.account,
'party_type': payment.party_type,
'party': frappe.get_value("Payment Entry", payment.reference_name, "party"),
'unadjusted_amount' : float(amount),
'allocated_amount' : min(outstanding_amount, amount)
}))
amount -= outstanding_amount
if lst:
from erpnext.accounts.utils import reconcile_against_document
try:
reconcile_against_document(lst)
except:
frappe.throw("Exception occurred while reconciling {0}".format(payment.reference_name))
def submit_payment_entries(self):
for payment in self.new_transaction_items:
if payment.reference_name is None: continue
doc = frappe.get_doc(payment.reference_type, payment.reference_name)
if doc.docstatus == 1:
if (payment.reference_type == "Journal Entry"): continue
if doc.unallocated_amount == 0: continue
print("Reconciling payment {0}".format(payment.reference_name))
self.update_payment_entry(payment)
else:
print("Submitting payment {0}".format(payment.reference_name))
if (payment.reference_type == "Payment Entry"):
if (payment.payment_reference):
doc.reference_no = payment.payment_reference
doc.mode_of_payment = payment.mode_of_payment
doc.save()
doc.submit()
self.move_reconciled_entries()
self.populate_matching_invoices()
def move_reconciled_entries(self):
idx = 0
while idx < len(self.new_transaction_items):
entry = self.new_transaction_items[idx]
try:
print("Checking transaction {0}: {2} in {1} entries".format(idx, len(self.new_transaction_items), frappe.safe_decode(entry.description)))
except UnicodeEncodeError:
pass
idx += 1
if entry.reference_name is None: continue
doc = frappe.get_doc(entry.reference_type, entry.reference_name)
if doc.docstatus == 1 and (entry.reference_type == "Journal Entry" or doc.unallocated_amount == 0):
self.remove(entry)
rc_entry = self.append('reconciled_transaction_items', {})
dentry = entry.as_dict()
dentry.pop('idx', None)
rc_entry.update(dentry)
idx -= 1
def get_matching_journal_entries(from_date, to_date, account, against, amount):
query = """select voucher_no, posting_date, account, against, debit_in_account_currency as debit, credit_in_account_currency as credit
from `tabGL Entry`
where posting_date between '{0}' and '{1}' and account = '{2}' and against = '{3}' and debit = '{4}'
""".format(from_date, to_date, account, against, amount)
jv_entries = frappe.db.sql(query, as_dict=True)
#print("voucher query:{0}\n Returned {1} entries".format(query, len(jv_entries)))
return jv_entries
def get_payments_matching_invoice(invoice, amount, pay_date):
query = """select pe.name as reference_name, per.reference_doctype as reference_type, per.outstanding_amount, per.allocated_amount
from `tabPayment Entry Reference` as per JOIN `tabPayment Entry` as pe on pe.name = per.parent
where per.reference_name='{0}' and (posting_date='{1}' or reference_date='{1}') and pe.docstatus != 2
""".format(invoice, pay_date)
payments = frappe.db.sql(query, as_dict=True)
if (len(payments) == 0): return
payment = next((payment for payment in payments if payment.allocated_amount == amount), payments[0])
#Hack: Update the reference type which is set to invoice type
payment.reference_type = "Payment Entry"
return payment
def is_headers_present(headers, row):
for header in headers:
if header not in row:
return False
return True
def get_header_index(headers, row):
header_index = {}
for header in headers:
if header in row:
header_index[header] = row.index(header)
return header_index
def get_transaction_info(headers, header_index, row):
transaction = {}
for header in headers:
transaction[header] = row[header_index[header]]
if (transaction[header] == None):
transaction[header] = ""
return transaction
def get_transaction_entries(filename, headers):
header_index = {}
rows, transactions = [], []
if (filename.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")):
from frappe.utils.file_manager import get_file_path
from frappe.utils.csvutils import read_csv_content
filepath = get_file_path(filename)
with open(filepath,'rb') as csvfile:
rows = read_csv_content(csvfile.read())
elif (filename.lower().endswith("xls")):
rows = get_rows_from_xls_file(filename)
else:
frappe.throw("Only .csv and .xlsx files are supported currently")
stmt_headers = headers.values()
for row in rows:
if len(row) == 0 or row[0] == None or not row[0]: continue
#print("Processing row {0}".format(row))
if header_index:
transaction = get_transaction_info(stmt_headers, header_index, row)
transactions.append(transaction)
elif is_headers_present(stmt_headers, row):
header_index = get_header_index(stmt_headers, row)
return transactions
def get_rows_from_xls_file(filename):
from frappe.utils.file_manager import get_file_path
filepath = get_file_path(filename)
import xlrd
book = xlrd.open_workbook(filepath)
sheets = book.sheets()
rows = []
for row in range(1, sheets[0].nrows):
row_values = []
for col in range(1, sheets[0].ncols):
row_values.append(sheets[0].cell_value(row, col))
rows.append(row_values)
return rows

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Bank Statement Transaction Entry", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Bank Statement Transaction Entry
() => frappe.tests.make('Bank Statement Transaction Entry', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
class TestBankStatementTransactionEntry(unittest.TestCase):
pass

View File

@@ -0,0 +1,365 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"creation": "2017-11-07 13:58:53.827058",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "transaction_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Transaction Date",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 4,
"fieldname": "payment_description",
"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": "Payment Description",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "party_type",
"fieldtype": "Select",
"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": "Party Type",
"length": 0,
"no_copy": 0,
"options": "Customer\nSupplier\nAccount",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "party",
"fieldtype": "Dynamic 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": "Party",
"length": 0,
"no_copy": 0,
"options": "party_type",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_4",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fieldname": "invoice_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": "Invoice Date",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "invoice_type",
"fieldtype": "Select",
"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": "Invoice Type",
"length": 0,
"no_copy": 0,
"options": "Sales Invoice\nPurchase Invoice\nJournal 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": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fieldname": "invoice",
"fieldtype": "Dynamic 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": "invoice",
"length": 0,
"no_copy": 0,
"options": "invoice_type",
"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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 1,
"fieldname": "outstanding_amount",
"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": "Outstanding 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
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 1,
"fieldname": "allocated_amount",
"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": "Allocated 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
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2018-09-14 19:03:30.949831",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Statement Transaction Invoice Item",
"name_case": "",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0,
"track_views": 0
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe.model.document import Document
class BankStatementTransactionInvoiceItem(Document):
pass

View File

@@ -0,0 +1,494 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"creation": "2017-11-07 14:03:05.651413",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 1,
"fieldname": "transaction_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Transaction Date",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 4,
"fieldname": "description",
"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": "Description",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 1,
"fieldname": "amount",
"fieldtype": "Currency",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Amount",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_3",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 1,
"fieldname": "party_type",
"fieldtype": "Select",
"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": "Party Type",
"length": 0,
"no_copy": 0,
"options": "Customer\nSupplier\nAccount",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fieldname": "party",
"fieldtype": "Dynamic 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": "Party",
"length": 0,
"no_copy": 0,
"options": "party_type",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_break_6",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "reference_type",
"fieldtype": "Select",
"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": "Reference Type",
"length": 0,
"no_copy": 0,
"options": "Payment Entry\nJournal 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,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "account",
"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": "Account",
"length": 0,
"no_copy": 0,
"options": "Account",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "mode_of_payment",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Mode of Payment",
"length": 0,
"no_copy": 0,
"options": "Mode of Payment",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "outstanding_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": "outstanding_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,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_10",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 2,
"fieldname": "reference_name",
"fieldtype": "Dynamic 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": "Reference Name",
"length": 0,
"no_copy": 0,
"options": "reference_type",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "payment_reference",
"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": "Payment Reference",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "invoices",
"fieldtype": "Text",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Invoices",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2017-11-15 19:18:52.876221",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Statement Transaction Payment Item",
"name_case": "",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe.model.document import Document
class BankStatementTransactionPaymentItem(Document):
pass

View File

@@ -0,0 +1,8 @@
// Copyright (c) 2017, sathishpy@gmail.com and contributors
// For license information, please see license.txt
frappe.ui.form.on('Bank Statement Settings', {
refresh: function(frm) {
}
});

View File

@@ -0,0 +1,266 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 1,
"beta": 0,
"creation": "2017-11-13 13:38:10.863592",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_account",
"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": "Bank Account",
"length": 0,
"no_copy": 0,
"options": "Account",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "'%d/%m/%Y'",
"fieldname": "date_format",
"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": "Date Format",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "statement_header_mapping",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Statement Header Mapping",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "header_items",
"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": "Statement Headers",
"length": 0,
"no_copy": 0,
"options": "Bank Statement Settings Item",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "transaction_data_mapping",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Transaction Data Mapping",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "mapped_items",
"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": "Mapped Items",
"length": 0,
"no_copy": 0,
"options": "Bank Statement Transaction Settings Item",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-01-12 10:34:32.840487",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Statement Settings",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "Accounts Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,11 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe.model.document import Document
class BankStatementSettings(Document):
def autoname(self):
self.name = self.bank_account + "-Mappings"

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Bank Statement Settings", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Bank Statement Settings
() => frappe.tests.make('Bank Statement Settings', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
class TestBankStatementSettings(unittest.TestCase):
pass

View File

@@ -0,0 +1,166 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"beta": 0,
"creation": "2017-11-13 13:42:00.335432",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Transaction",
"fieldname": "mapping_type",
"fieldtype": "Select",
"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": "Mapping Type",
"length": 0,
"no_copy": 0,
"options": "Transaction",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "bank_data",
"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": "Bank Data",
"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": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Account",
"fieldname": "mapped_data_type",
"fieldtype": "Select",
"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": "Mapped Data Type",
"length": 0,
"no_copy": 0,
"options": "Account\nCustomer\nSupplier\nAccount",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "mapped_data",
"fieldtype": "Dynamic 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": "Mapped Data",
"length": 0,
"no_copy": 0,
"options": "mapped_data_type",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,
"max_attachments": 0,
"modified": "2018-01-08 00:13:49.973501",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Statement Transaction Settings Item",
"name_case": "",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2017, sathishpy@gmail.com and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
import frappe
from frappe.model.document import Document
class BankStatementTransactionSettingsItem(Document):
pass

View File

@@ -1,5 +1,6 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 1,
"allow_rename": 0,
"beta": 0,
@@ -11,6 +12,8 @@
"editable_grid": 1,
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -23,7 +26,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Budget Against",
"length": 0,
@@ -39,9 +42,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -53,7 +59,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Company",
"length": 0,
@@ -69,9 +75,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -100,9 +109,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -131,9 +143,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -145,7 +160,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Fiscal Year",
"length": 0,
@@ -161,9 +176,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -189,77 +207,17 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Stop",
"fieldname": "action_if_annual_budget_exceeded",
"fieldtype": "Select",
"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": "Action if Annual Budget Exceeded",
"length": 0,
"no_copy": 0,
"options": "\nStop\nWarn\nIgnore",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Warn",
"description": "",
"fieldname": "action_if_accumulated_monthly_budget_exceeded",
"fieldtype": "Select",
"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": "Action if Accumulated Monthly Budget Exceeded",
"length": 0,
"no_copy": 0,
"options": "\nStop\nWarn\nIgnore",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "eval:in_list([\"Stop\", \"Warn\"], doc.action_if_accumulated_monthly_budget_exceeded)",
"depends_on": "eval:in_list([\"Stop\", \"Warn\"], doc.action_if_accumulated_monthly_budget_exceeded_on_po || doc.action_if_accumulated_monthly_budget_exceeded_on_mr || doc.action_if_accumulated_monthly_budget_exceeded_on_actual)",
"fieldname": "monthly_distribution",
"fieldtype": "Link",
"hidden": 0,
@@ -283,9 +241,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -312,9 +273,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -328,6 +292,273 @@
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Control Action",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "applicable_on_material_request",
"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": "Applicable on Material Request",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Stop",
"depends_on": "eval:doc.applicable_on_material_request == 1",
"fieldname": "action_if_annual_budget_exceeded_on_mr",
"fieldtype": "Select",
"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": "Action if Annual Budget Exceeded on MR",
"length": 0,
"no_copy": 0,
"options": "\nStop\nWarn\nIgnore",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Warn",
"depends_on": "eval:doc.applicable_on_material_request == 1",
"fieldname": "action_if_accumulated_monthly_budget_exceeded_on_mr",
"fieldtype": "Select",
"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": "Action if Accumulated Monthly Budget Exceeded on MR",
"length": 0,
"no_copy": 0,
"options": "\nStop\nWarn\nIgnore",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_13",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "applicable_on_purchase_order",
"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": "Applicable on Purchase Order",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Stop",
"depends_on": "eval:doc.applicable_on_purchase_order == 1",
"fieldname": "action_if_annual_budget_exceeded_on_po",
"fieldtype": "Select",
"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": "Action if Annual Budget Exceeded on PO",
"length": 0,
"no_copy": 0,
"options": "\nStop\nWarn\nIgnore",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Warn",
"depends_on": "eval:doc.applicable_on_purchase_order == 1",
"fieldname": "action_if_accumulated_monthly_budget_exceeded_on_po",
"fieldtype": "Select",
"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": "Action if Accumulated Monthly Budget Exceeded on PO",
"length": 0,
"no_copy": 0,
"options": "\nStop\nWarn\nIgnore",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_break_16",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
@@ -340,13 +571,150 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "applicable_on_booking_actual_expenses",
"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": "Applicable on booking actual expenses",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Stop",
"depends_on": "eval:doc.applicable_on_booking_actual_expenses == 1",
"fieldname": "action_if_annual_budget_exceeded",
"fieldtype": "Select",
"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": "Action if Annual Budget Exceeded on Actual",
"length": 0,
"no_copy": 0,
"options": "\nStop\nWarn\nIgnore",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "Warn",
"depends_on": "eval:doc.applicable_on_booking_actual_expenses == 1",
"fieldname": "action_if_accumulated_monthly_budget_exceeded",
"fieldtype": "Select",
"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": "Action if Accumulated Monthly Budget Exceeded on Actual",
"length": 0,
"no_copy": 0,
"options": "\nStop\nWarn\nIgnore",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_break_21",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "",
"fieldname": "accounts",
"fieldtype": "Table",
"hidden": 0,
@@ -367,23 +735,24 @@
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"in_dialog": 0,
"is_submittable": 1,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2017-02-17 16:25:32.342055",
"modified": "2018-09-12 11:02:41.825923",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Budget",
@@ -392,7 +761,6 @@
"permissions": [
{
"amend": 1,
"apply_user_permissions": 0,
"cancel": 1,
"create": 1,
"delete": 1,
@@ -417,6 +785,7 @@
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 0,
"track_seen": 0
"track_changes": 1,
"track_seen": 0,
"track_views": 0
}

View File

@@ -5,8 +5,9 @@
from __future__ import unicode_literals
import frappe
from frappe import _
from frappe.utils import flt, getdate, add_months, get_last_day, fmt_money
from frappe.utils import flt, getdate, add_months, get_last_day, fmt_money, nowdate
from frappe.model.naming import make_autoname
from erpnext.accounts.utils import get_fiscal_year
from frappe.model.document import Document
class BudgetError(frappe.ValidationError): pass
@@ -23,6 +24,7 @@ class Budget(Document):
self.validate_duplicate()
self.validate_accounts()
self.set_null_value()
self.validate_applicable_for()
def validate_duplicate(self):
budget_against_field = frappe.scrub(self.budget_against)
@@ -34,7 +36,7 @@ class Budget(Document):
b.name, ba.account from `tabBudget` b, `tabBudget Account` ba
where
ba.parent = b.name and b.docstatus < 2 and b.company = %s and %s=%s and
b.fiscal_year=%s and b.name != %sand ba.account in (%s) """
b.fiscal_year=%s and b.name != %s and ba.account in (%s) """
% ('%s', budget_against_field, '%s', '%s', '%s', ','.join(['%s'] * len(accounts))),
(self.company, budget_against, self.fiscal_year, self.name) + tuple(accounts), as_dict=1)
@@ -69,13 +71,39 @@ class Budget(Document):
else:
self.cost_center = None
def validate_applicable_for(self):
if (self.applicable_on_material_request
and not (self.applicable_on_purchase_order and self.applicable_on_booking_actual_expenses)):
frappe.throw(_("Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses"))
elif (self.applicable_on_purchase_order
and not (self.applicable_on_booking_actual_expenses)):
frappe.throw(_("Please enable Applicable on Booking Actual Expenses"))
elif not(self.applicable_on_material_request
or self.applicable_on_purchase_order or self.applicable_on_booking_actual_expenses):
self.applicable_on_booking_actual_expenses = 1
def validate_expense_against_budget(args):
args = frappe._dict(args)
if not args.cost_center and not args.project:
if args.get('company') and not args.fiscal_year:
args.fiscal_year = get_fiscal_year(args.get('posting_date'), company=args.get('company'))[0]
frappe.flags.exception_approver_role = frappe.get_cached_value('Company',
args.get('company'), 'exception_budget_approver_role')
if not args.account:
args.account = args.get("expense_account")
if not (args.get('account') and args.get('cost_center')) and args.item_code:
args.cost_center, args.account = get_item_details(args)
if not (args.cost_center or args.project) and not args.account:
return
for budget_against in ['project', 'cost_center']:
if args.get(budget_against) \
and frappe.db.get_value("Account", {"name": args.account, "root_type": "Expense"}):
if (args.get(budget_against) and args.account
and frappe.db.get_value("Account", {"name": args.account, "root_type": "Expense"})):
if args.project and budget_against == 'project':
condition = "and b.project='%s'" % frappe.db.escape(args.project)
@@ -92,8 +120,12 @@ def validate_expense_against_budget(args):
budget_records = frappe.db.sql("""
select
b.{budget_against_field} as budget_against, ba.budget_amount, b.monthly_distribution,
b.action_if_annual_budget_exceeded,
b.action_if_accumulated_monthly_budget_exceeded
ifnull(b.applicable_on_material_request, 0) as for_material_request,
ifnull(applicable_on_purchase_order,0) as for_purchase_order,
ifnull(applicable_on_booking_actual_expenses,0) as for_actual_expenses,
b.action_if_annual_budget_exceeded, b.action_if_accumulated_monthly_budget_exceeded,
b.action_if_annual_budget_exceeded_on_mr, b.action_if_accumulated_monthly_budget_exceeded_on_mr,
b.action_if_annual_budget_exceeded_on_po, b.action_if_accumulated_monthly_budget_exceeded_on_po
from
`tabBudget` b, `tabBudget Account` ba
where
@@ -103,35 +135,35 @@ def validate_expense_against_budget(args):
""".format(condition=condition,
budget_against_field=frappe.scrub(args.get("budget_against_field"))),
(args.fiscal_year, args.account), as_dict=True)
if budget_records:
validate_budget_records(args, budget_records)
def validate_budget_records(args, budget_records):
for budget in budget_records:
if flt(budget.budget_amount):
yearly_action = budget.action_if_annual_budget_exceeded
monthly_action = budget.action_if_accumulated_monthly_budget_exceeded
amount = get_amount(args, budget)
yearly_action, monthly_action = get_actions(args, budget)
if monthly_action in ["Stop", "Warn"]:
budget_amount = get_accumulated_monthly_budget(budget.monthly_distribution,
args.posting_date, args.fiscal_year, budget.budget_amount)
args["month_end_date"] = get_last_day(args.posting_date)
compare_expense_with_budget(args, budget_amount,
_("Accumulated Monthly"), monthly_action, budget.budget_against)
_("Accumulated Monthly"), monthly_action, budget.budget_against, amount)
if yearly_action in ("Stop", "Warn") and monthly_action != "Stop" \
and yearly_action != monthly_action:
compare_expense_with_budget(args, flt(budget.budget_amount),
_("Annual"), yearly_action, budget.budget_against)
_("Annual"), yearly_action, budget.budget_against, amount)
def compare_expense_with_budget(args, budget_amount, action_for, action, budget_against):
actual_expense = get_actual_expense(args)
def compare_expense_with_budget(args, budget_amount, action_for, action, budget_against, amount=0):
actual_expense = amount or get_actual_expense(args)
if actual_expense > budget_amount:
diff = actual_expense - budget_amount
currency = frappe.db.get_value('Company', args.company, 'default_currency')
currency = frappe.get_cached_value('Company', args.company, 'default_currency')
msg = _("{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5}").format(
_(action_for), frappe.bold(args.account), args.budget_against_field,
@@ -139,11 +171,80 @@ def compare_expense_with_budget(args, budget_amount, action_for, action, budget_
frappe.bold(fmt_money(budget_amount, currency=currency)),
frappe.bold(fmt_money(diff, currency=currency)))
if (frappe.flags.exception_approver_role
and frappe.flags.exception_approver_role in frappe.get_roles(frappe.session.user)):
action = "Warn"
if action=="Stop":
frappe.throw(msg, BudgetError)
else:
frappe.msgprint(msg, indicator='orange')
def get_actions(args, budget):
yearly_action = budget.action_if_annual_budget_exceeded
monthly_action = budget.action_if_accumulated_monthly_budget_exceeded
if args.get('doctype') == 'Material Request' and budget.for_material_request:
yearly_action = budget.action_if_annual_budget_exceeded_on_mr
monthly_action = budget.action_if_accumulated_monthly_budget_exceeded_on_mr
elif args.get('doctype') == 'Purchase Order' and budget.for_purchase_order:
yearly_action = budget.action_if_annual_budget_exceeded_on_po
monthly_action = budget.action_if_accumulated_monthly_budget_exceeded_on_po
return yearly_action, monthly_action
def get_amount(args, budget):
amount = 0
if args.get('doctype') == 'Material Request' and budget.for_material_request:
amount = (get_requested_amount(args, budget)
+ get_ordered_amount(args, budget) + get_actual_expense(args))
elif args.get('doctype') == 'Purchase Order' and budget.for_purchase_order:
amount = get_ordered_amount(args, budget) + get_actual_expense(args)
return amount
def get_requested_amount(args, budget):
item_code = args.get('item_code')
condition = get_other_condition(args, budget, 'Material Request')
data = frappe.db.sql(""" select ifnull((sum(mri.stock_qty - mri.ordered_qty) * rate), 0) as amount
from `tabMaterial Request Item` mri, `tabMaterial Request` mr where mr.name = mri.parent and
mri.item_code = %s and mr.docstatus = 1 and mri.stock_qty > mri.ordered_qty and {0} and
mr.material_request_type = 'Purchase' and mr.status != 'Stopped'""".format(condition), item_code, as_list=1)
return data[0][0] if data else 0
def get_ordered_amount(args, budget):
item_code = args.get('item_code')
condition = get_other_condition(args, budget, 'Purchase Order')
data = frappe.db.sql(""" select ifnull(sum(poi.amount - poi.billed_amt), 0) as amount
from `tabPurchase Order Item` poi, `tabPurchase Order` po where
po.name = poi.parent and poi.item_code = %s and po.docstatus = 1 and poi.amount > poi.billed_amt
and po.status != 'Closed' and {0}""".format(condition), item_code, as_list=1)
return data[0][0] if data else 0
def get_other_condition(args, budget, for_doc):
condition = "expense_account = '%s'" % (args.expense_account)
budget_against_field = frappe.scrub(args.get("budget_against_field"))
if budget_against_field and args.get(budget_against_field):
condition += " and %s = '%s'" %(budget_against_field, args.get(budget_against_field))
if args.get('fiscal_year'):
date_field = 'schedule_date' if for_doc == 'Material Request' else 'transaction_date'
start_date, end_date = frappe.db.get_value('Fiscal Year', args.get('fiscal_year'),
['year_start_date', 'year_end_date'])
alias = 'mr' if for_doc == 'Material Request' else 'po'
condition += """ and %s.%s
between '%s' and '%s' """ %(alias, date_field, start_date, end_date)
return condition
def get_actual_expense(args):
condition1 = " and gle.posting_date <= %(month_end_date)s" \
@@ -156,7 +257,7 @@ def get_actual_expense(args):
where lft>=%(lft)s and rgt<=%(rgt)s and name=gle.cost_center)"""
elif args.budget_against_field == "Project":
condition2 = "and exists(select name from `tabProject` where name=gle.project)"
condition2 = "and exists(select name from `tabProject` where name=gle.project and gle.project = %(budget_against)s)"
return flt(frappe.db.sql("""
select sum(gle.debit) - sum(gle.credit)
@@ -169,7 +270,6 @@ def get_actual_expense(args):
{condition2}
""".format(condition1=condition1, condition2=condition2), (args))[0][0])
def get_accumulated_monthly_budget(monthly_distribution, posting_date, fiscal_year, annual_budget):
distribution = {}
if monthly_distribution:
@@ -190,3 +290,40 @@ def get_accumulated_monthly_budget(monthly_distribution, posting_date, fiscal_ye
dt = add_months(dt, 1)
return annual_budget * accumulated_percentage / 100
def get_item_details(args):
cost_center, expense_account = None, None
if not args.get('company'):
return cost_center, expense_account
if args.item_code:
item_defaults = frappe.db.get_value('Item Default',
{'parent': args.item_code, 'company': args.get('company')},
['buying_cost_center', 'expense_account'])
if item_defaults:
cost_center, expense_account = item_defaults
if not (cost_center and expense_account):
for doctype in ['Item Group', 'Company']:
data = get_expense_cost_center(doctype, args)
if not cost_center and data:
cost_center = data[0]
if not expense_account and data:
expense_account = data[1]
if cost_center and expense_account:
return cost_center, expense_account
return cost_center, expense_account
def get_expense_cost_center(doctype, args):
if doctype == 'Item Group':
return frappe.db.get_value('Item Default',
{'parent': args.get(frappe.scrub(doctype)), 'company': args.get('company')},
['buying_cost_center', 'expense_account'])
else:
return frappe.db.get_value(doctype, args.get(frappe.scrub(doctype)),\
['cost_center', 'default_expense_account'])

View File

@@ -5,6 +5,9 @@ from __future__ import unicode_literals
import frappe
import unittest
from frappe.utils import nowdate
from erpnext.accounts.utils import get_fiscal_year
from erpnext.buying.doctype.purchase_order.test_purchase_order import create_purchase_order
from erpnext.accounts.doctype.budget.budget import get_actual_expense, BudgetError
from erpnext.accounts.doctype.journal_entry.test_journal_entry import make_journal_entry
@@ -12,10 +15,10 @@ class TestBudget(unittest.TestCase):
def test_monthly_budget_crossed_ignore(self):
set_total_expense_zero("2013-02-28", "Cost Center")
budget = make_budget("Cost Center")
budget = make_budget(budget_against="Cost Center")
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 40000, "_Test Cost Center - _TC", submit=True)
"_Test Bank - _TC", 40000, "_Test Cost Center - _TC", posting_date="2013-02-28", submit=True)
self.assertTrue(frappe.db.get_value("GL Entry",
{"voucher_type": "Journal Entry", "voucher_no": jv.name}))
@@ -25,27 +28,100 @@ class TestBudget(unittest.TestCase):
def test_monthly_budget_crossed_stop1(self):
set_total_expense_zero("2013-02-28", "Cost Center")
budget = make_budget("Cost Center")
budget = make_budget(budget_against="Cost Center")
frappe.db.set_value("Budget", budget.name, "action_if_accumulated_monthly_budget_exceeded", "Stop")
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 40000, "_Test Cost Center - _TC")
"_Test Bank - _TC", 40000, "_Test Cost Center - _TC", posting_date="2013-02-28")
self.assertRaises(BudgetError, jv.submit)
budget.load_from_db()
budget.cancel()
def test_exception_approver_role(self):
set_total_expense_zero("2013-02-28", "Cost Center")
budget = make_budget(budget_against="Cost Center")
frappe.db.set_value("Budget", budget.name, "action_if_accumulated_monthly_budget_exceeded", "Stop")
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 40000, "_Test Cost Center - _TC", posting_date="2013-03-02")
self.assertRaises(BudgetError, jv.submit)
frappe.db.set_value('Company', budget.company, 'exception_budget_approver_role', 'Accounts User')
jv.submit()
self.assertEqual(frappe.db.get_value('Journal Entry', jv.name, 'docstatus'), 1)
jv.cancel()
frappe.db.set_value('Company', budget.company, 'exception_budget_approver_role', '')
budget.load_from_db()
budget.cancel()
def test_monthly_budget_crossed_for_mr(self):
budget = make_budget(applicable_on_material_request=1,
applicable_on_purchase_order=1, action_if_accumulated_monthly_budget_exceeded_on_mr="Stop",
budget_against="Cost Center")
fiscal_year = get_fiscal_year(nowdate())[0]
frappe.db.set_value("Budget", budget.name, "action_if_accumulated_monthly_budget_exceeded", "Stop")
frappe.db.set_value("Budget", budget.name, "fiscal_year", fiscal_year)
mr = frappe.get_doc({
"doctype": "Material Request",
"material_request_type": "Purchase",
"transaction_date": nowdate(),
"company": budget.company,
"items": [{
'item_code': '_Test Item',
'qty': 1,
'uom': "_Test UOM",
'warehouse': '_Test Warehouse - _TC',
'schedule_date': nowdate(),
'rate': 100000,
'expense_account': '_Test Account Cost for Goods Sold - _TC',
'cost_center': '_Test Cost Center - _TC'
}]
})
mr.set_missing_values()
self.assertRaises(BudgetError, mr.submit)
budget.load_from_db()
budget.cancel()
def test_monthly_budget_crossed_for_po(self):
budget = make_budget(applicable_on_purchase_order=1,
action_if_accumulated_monthly_budget_exceeded_on_po="Stop", budget_against="Cost Center")
fiscal_year = get_fiscal_year(nowdate())[0]
frappe.db.set_value("Budget", budget.name, "action_if_accumulated_monthly_budget_exceeded", "Stop")
frappe.db.set_value("Budget", budget.name, "fiscal_year", fiscal_year)
po = create_purchase_order(transaction_date=nowdate(), do_not_submit=True)
po.set_missing_values()
self.assertRaises(BudgetError, po.submit)
budget.load_from_db()
budget.cancel()
def test_monthly_budget_crossed_stop2(self):
set_total_expense_zero("2013-02-28", "Project")
budget = make_budget("Project")
budget = make_budget(budget_against="Project")
frappe.db.set_value("Budget", budget.name, "action_if_accumulated_monthly_budget_exceeded", "Stop")
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 40000, "_Test Cost Center - _TC", project="_Test Project")
"_Test Bank - _TC", 40000, "_Test Cost Center - _TC", project="_Test Project", posting_date="2013-02-28")
self.assertRaises(BudgetError, jv.submit)
@@ -55,10 +131,10 @@ class TestBudget(unittest.TestCase):
def test_yearly_budget_crossed_stop1(self):
set_total_expense_zero("2013-02-28", "Cost Center")
budget = make_budget("Cost Center")
budget = make_budget(budget_against="Cost Center")
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 150000, "_Test Cost Center - _TC")
"_Test Bank - _TC", 150000, "_Test Cost Center - _TC", posting_date="2013-03-28")
self.assertRaises(BudgetError, jv.submit)
@@ -67,10 +143,10 @@ class TestBudget(unittest.TestCase):
def test_yearly_budget_crossed_stop2(self):
set_total_expense_zero("2013-02-28", "Project")
budget = make_budget("Project")
budget = make_budget(budget_against="Project")
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 150000, "_Test Cost Center - _TC", project="_Test Project")
"_Test Bank - _TC", 150000, "_Test Cost Center - _TC", project="_Test Project", posting_date="2013-03-28")
self.assertRaises(BudgetError, jv.submit)
@@ -79,16 +155,16 @@ class TestBudget(unittest.TestCase):
def test_monthly_budget_on_cancellation1(self):
set_total_expense_zero("2013-02-28", "Cost Center")
budget = make_budget("Cost Center")
budget = make_budget(budget_against="Cost Center")
jv1 = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", submit=True)
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", posting_date="2013-02-28", submit=True)
self.assertTrue(frappe.db.get_value("GL Entry",
{"voucher_type": "Journal Entry", "voucher_no": jv1.name}))
jv2 = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", submit=True)
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", posting_date="2013-02-28", submit=True)
self.assertTrue(frappe.db.get_value("GL Entry",
{"voucher_type": "Journal Entry", "voucher_no": jv2.name}))
@@ -103,16 +179,16 @@ class TestBudget(unittest.TestCase):
def test_monthly_budget_on_cancellation2(self):
set_total_expense_zero("2013-02-28", "Project")
budget = make_budget("Project")
budget = make_budget(budget_against="Project")
jv1 = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", submit=True, project="_Test Project")
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", posting_date="2013-02-28", submit=True, project="_Test Project")
self.assertTrue(frappe.db.get_value("GL Entry",
{"voucher_type": "Journal Entry", "voucher_no": jv1.name}))
jv2 = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", submit=True, project="_Test Project")
"_Test Bank - _TC", 20000, "_Test Cost Center - _TC", posting_date="2013-02-28", submit=True, project="_Test Project")
self.assertTrue(frappe.db.get_value("GL Entry",
{"voucher_type": "Journal Entry", "voucher_no": jv2.name}))
@@ -124,16 +200,15 @@ class TestBudget(unittest.TestCase):
budget.load_from_db()
budget.cancel()
def test_monthly_budget_against_group_cost_center(self):
set_total_expense_zero("2013-02-28", "Cost Center")
set_total_expense_zero("2013-02-28", "Cost Center", "_Test Cost Center 2 - _TC")
budget = make_budget("Cost Center", "_Test Company - _TC")
budget = make_budget(budget_against="Cost Center", cost_center="_Test Company - _TC")
frappe.db.set_value("Budget", budget.name, "action_if_accumulated_monthly_budget_exceeded", "Stop")
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 40000, "_Test Cost Center 2 - _TC")
"_Test Bank - _TC", 40000, "_Test Cost Center 2 - _TC", posting_date="2013-02-28")
self.assertRaises(BudgetError, jv.submit)
@@ -152,11 +227,11 @@ class TestBudget(unittest.TestCase):
'is_group': 0
}).insert(ignore_permissions=True)
budget = make_budget("Cost Center", cost_center)
budget = make_budget(budget_against="Cost Center", cost_center=cost_center)
frappe.db.set_value("Budget", budget.name, "action_if_accumulated_monthly_budget_exceeded", "Stop")
jv = make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", 40000, cost_center)
"_Test Bank - _TC", 40000, cost_center, posting_date="2013-02-28")
self.assertRaises(BudgetError, jv.submit)
@@ -185,12 +260,17 @@ def set_total_expense_zero(posting_date, budget_against_field=None, budget_again
if existing_expense:
if budget_against_field == "Cost Center":
make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", -existing_expense, "_Test Cost Center - _TC", submit=True)
"_Test Bank - _TC", -existing_expense, "_Test Cost Center - _TC", posting_date="2013-02-28", submit=True)
elif budget_against_field == "Project":
make_journal_entry("_Test Account Cost for Goods Sold - _TC",
"_Test Bank - _TC", -existing_expense, "_Test Cost Center - _TC", submit=True, project="_Test Project")
def make_budget(budget_against=None, cost_center=None):
"_Test Bank - _TC", -existing_expense, "_Test Cost Center - _TC", submit=True, project="_Test Project", posting_date="2013-02-28")
def make_budget(**args):
args = frappe._dict(args)
budget_against=args.budget_against
cost_center=args.cost_center
if budget_against == "Project":
budget_list = frappe.get_all("Budget", fields=["name"], filters = {"name": ("like", "_Test Project/_Test Fiscal Year 2013%")})
else:
@@ -211,6 +291,7 @@ def make_budget(budget_against=None, cost_center=None):
budget.fiscal_year = "_Test Fiscal Year 2013"
budget.monthly_distribution = "_Test Distribution"
budget.company = "_Test Company"
budget.applicable_on_booking_actual_expenses = 1
budget.action_if_annual_budget_exceeded = "Stop"
budget.action_if_accumulated_monthly_budget_exceeded = "Ignore"
budget.budget_against = budget_against
@@ -219,7 +300,17 @@ def make_budget(budget_against=None, cost_center=None):
"budget_amount": 100000
})
if args.applicable_on_material_request:
budget.applicable_on_material_request = 1
budget.action_if_annual_budget_exceeded_on_mr = args.action_if_annual_budget_exceeded_on_mr or 'Warn'
budget.action_if_accumulated_monthly_budget_exceeded_on_mr = args.action_if_accumulated_monthly_budget_exceeded_on_mr or 'Warn'
if args.applicable_on_purchase_order:
budget.applicable_on_purchase_order = 1
budget.action_if_annual_budget_exceeded_on_po = args.action_if_annual_budget_exceeded_on_po or 'Warn'
budget.action_if_accumulated_monthly_budget_exceeded_on_po = args.action_if_accumulated_monthly_budget_exceeded_on_po or 'Warn'
budget.insert()
budget.submit()
return budget
return budget

View File

@@ -73,7 +73,7 @@
"idx": 0,
"image_view": 0,
"in_create": 0,
"in_dialog": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,

View File

@@ -13,10 +13,12 @@
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "",
"fieldname": "naming_series",
"fieldtype": "Select",
"hidden": 0,
@@ -29,7 +31,7 @@
"label": "Series",
"length": 0,
"no_copy": 0,
"options": "C-FORM-",
"options": "ACC-CF-.YYYY.-",
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
@@ -39,10 +41,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 1,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -68,10 +72,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -97,10 +103,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -127,10 +135,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -156,11 +166,13 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0,
"width": "50%"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -187,10 +199,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -217,10 +231,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -247,10 +263,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -276,10 +294,12 @@
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -304,10 +324,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -334,10 +356,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -364,10 +388,12 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
@@ -394,6 +420,7 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
}
],
@@ -408,7 +435,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 3,
"modified": "2017-11-10 18:44:44.081464",
"modified": "2018-08-21 14:44:30.558767",
"modified_by": "Administrator",
"module": "Accounts",
"name": "C-Form",
@@ -416,7 +443,6 @@
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 0,
@@ -436,7 +462,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 0,
@@ -456,7 +481,6 @@
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
@@ -482,5 +506,6 @@
"sort_order": "DESC",
"timeline_field": "customer",
"track_changes": 0,
"track_seen": 0
"track_seen": 0,
"track_views": 0
}

View File

@@ -150,7 +150,7 @@
"idx": 1,
"image_view": 0,
"in_create": 0,
"in_dialog": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 1,

View File

@@ -0,0 +1,6 @@
// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
frappe.ui.form.on('Cash Flow Mapper', {
});

View File

@@ -0,0 +1,275 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 1,
"autoname": "field:section_name",
"beta": 0,
"creation": "2018-02-08 10:00:14.066519",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_name",
"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": "Section Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_header",
"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": "Section Header",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"description": "e.g Adjustments for:",
"fieldname": "section_leader",
"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": "Section Leader",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_subtotal",
"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": "Section Subtotal",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "section_footer",
"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": "Section Footer",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "accounts",
"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": "Accounts",
"length": 0,
"no_copy": 0,
"options": "Cash Flow Mapping Template Details",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "position",
"fieldtype": "Int",
"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": "Position",
"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": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
}
],
"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-02-15 18:28:55.034933",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Cash Flow Mapper",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 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": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "name",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

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

View File

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

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Cash Flow Mapper", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Cash Flow Mapper
() => frappe.tests.make('Cash Flow Mapper', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

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

View File

@@ -0,0 +1,43 @@
// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
frappe.ui.form.on('Cash Flow Mapping', {
refresh: function(frm) {
frm.events.disable_unchecked_fields(frm);
},
reset_check_fields: function(frm) {
frm.fields.filter(field => field.df.fieldtype === 'Check')
.map(field => frm.set_df_property(field.df.fieldname, 'read_only', 0));
},
has_checked_field(frm) {
const val = frm.fields.filter(field => field.value === 1);
return val.length ? 1 : 0;
},
_disable_unchecked_fields: function(frm) {
// get value of clicked field
frm.fields.filter(field => field.value === 0)
.map(field => frm.set_df_property(field.df.fieldname, 'read_only', 1));
},
disable_unchecked_fields: function(frm) {
frm.events.reset_check_fields(frm);
const checked = frm.events.has_checked_field(frm);
if (checked) {
frm.events._disable_unchecked_fields(frm);
}
},
is_working_capital: function(frm) {
frm.events.disable_unchecked_fields(frm);
},
is_finance_cost: function(frm) {
frm.events.disable_unchecked_fields(frm);
},
is_income_tax_liability: function(frm) {
frm.events.disable_unchecked_fields(frm);
},
is_income_tax_expense: function(frm) {
frm.events.disable_unchecked_fields(frm);
},
is_finance_cost_adjustment: function(frm) {
frm.events.disable_unchecked_fields(frm);
}
});

View File

@@ -0,0 +1,359 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 1,
"autoname": "field:mapping_name",
"beta": 0,
"creation": "2018-02-08 09:28:44.678364",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"fields": [
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "mapping_name",
"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": "Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "label",
"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": "Label",
"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": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "accounts",
"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": "Accounts",
"length": 0,
"no_copy": 0,
"options": "Cash Flow Mapping Accounts",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "sb_1",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Select Maximum Of 1",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "is_finance_cost",
"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": "Is Finance Cost",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "is_working_capital",
"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": "Is Working Capital",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "is_finance_cost_adjustment",
"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": "Is Finance Cost Adjustment",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "is_income_tax_liability",
"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": "Is Income Tax Liability",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_bulk_edit": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "is_income_tax_expense",
"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": "Is Income Tax Expense",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
}
],
"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-02-15 08:25:18.693533",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Cash Flow Mapping",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "Administrator",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 0,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "name",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0
}

View File

@@ -0,0 +1,22 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2018, 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 CashFlowMapping(Document):
def validate(self):
self.validate_checked_options()
def validate_checked_options(self):
checked_fields = [d for d in self.meta.fields if d.fieldtype == 'Check' and self.get(d.fieldname) == 1]
if len(checked_fields) > 1:
frappe.throw(
frappe._('You can only select a maximum of one option from the list of check boxes.'),
title='Error'
)

View File

@@ -0,0 +1,23 @@
/* eslint-disable */
// rename this file from _test_[name] to test_[name] to activate
// and remove above this line
QUnit.test("test: Cash Flow Mapping", function (assert) {
let done = assert.async();
// number of asserts
assert.expect(1);
frappe.run_serially([
// insert a new Cash Flow Mapping
() => frappe.tests.make('Cash Flow Mapping', [
// values to be set
{key: 'value'}
]),
() => {
assert.equal(cur_frm.doc.key, 'value');
},
() => done()
]);
});

View File

@@ -0,0 +1,32 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
# See license.txt
from __future__ import unicode_literals
import frappe
import unittest
class TestCashFlowMapping(unittest.TestCase):
def setUp(self):
if frappe.db.exists("Cash Flow Mapping", "Test Mapping"):
frappe.delete_doc('Cash Flow Mappping', 'Test Mapping')
def tearDown(self):
frappe.delete_doc('Cash Flow Mapping', 'Test Mapping')
def test_multiple_selections_not_allowed(self):
doc = frappe.new_doc('Cash Flow Mapping')
doc.mapping_name = 'Test Mapping'
doc.label = 'Test label'
doc.append(
'accounts',
{'account': 'Accounts Receivable - _TC'}
)
doc.is_working_capital = 1
doc.is_finance_cost = 1
self.assertRaises(frappe.ValidationError, doc.insert)
doc.is_finance_cost = 0
doc.insert()

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