Compare commits

...

166 Commits

Author SHA1 Message Date
Anand Doshi
7670c9f07d Merge branch 'develop' 2016-03-09 15:47:14 +05:30
Anand Doshi
1d0c5896c0 bumped to version 6.25.0 2016-03-09 16:17:14 +06:00
Anand Doshi
27e9b77a3d [translations] 2016-03-09 14:50:38 +05:30
Anand Doshi
71ea34a0ba [change log] 2016-03-09 14:50:37 +05:30
Anand Doshi
065d24b26d Merge pull request #4951 from shreyasp/gross-profit-wn-sup17486
[Minor] Remove Warehouse column while user groups by 'Item code' in Gross profit report
2016-03-09 14:22:16 +05:30
shreyas
7c42995949 [Minor] Remove Warehouse column while user groups by 'Item code' in Gross profit report 2016-03-09 13:15:38 +05:30
Anand Doshi
3fb67c7c3b Merge pull request #4945 from shreyasp/mr-wn-sup17487
[Minor] Displaying 'for warehouse' while creating Material request from BOM
2016-03-09 10:32:15 +05:30
Anand Doshi
c62927ad5d Merge branch 'neilLasrado-drip-emails' into develop 2016-03-08 20:22:45 +05:30
Neil Trini Lasrado
1b03e0a6d0 Added Other as a Domain in Company/setup wizard 2016-03-08 20:22:24 +05:30
Neil Trini Lasrado
342895c9df Added Domain to setup wizard 2016-03-08 19:55:57 +05:30
shreyas
007e87b8a5 [Minor] Whitespace fixes 2016-03-08 19:01:50 +05:30
shreyas
405b66898e [Minor] Displaying 'for warehouse' while creating Material request from BOM 2016-03-08 18:39:20 +05:30
Anand Doshi
b073cf4fa1 [fix] POS amount_paid when not cash - Fixes #4686, #4828, #4289 2016-03-08 17:59:19 +05:30
Anand Doshi
20b2a75603 Merge pull request #4943 from strixaluco/develop
Minor typo fix in bulk-rename.md
2016-03-08 17:40:48 +05:30
Anand Doshi
f9148f3a6f Merge branch 'bohlian-develop' into develop 2016-03-08 17:40:10 +05:30
Javier Wong
102f9062e8 Whitelist get_month_details
This is useful when manually pulling the salary structure in custom scripts for processing of other customized deductables or perhaps contributions.
2016-03-08 17:39:58 +05:30
strixaluco
184f0fa264 Minor typo fix in bulk-rename.md 2016-03-08 16:57:04 +08:00
Anand Doshi
ba7b05ad27 Merge branch 'emakis-in_words_configurable' into develop 2016-03-07 20:00:54 +05:30
emakis
b5b3d478a2 Made In Words configurable 2016-03-07 20:00:41 +05:30
Anand Doshi
44f777eeec [fix] Material Request notifications docstatus < 2 2016-03-07 19:35:54 +05:30
Anand Doshi
a2bd145d68 Merge pull request #4935 from shreyasp/sales-inv-WN-SUP17465
[Minor] Fix print settings for custom print format
2016-03-07 19:21:51 +05:30
Anand Doshi
40b230ea9e Merge pull request #4926 from nabinhait/balance_sheet
[fix][report] Show group rows with zero values if there are values against children
2016-03-07 19:15:46 +05:30
shreyas
6f8dfa4c8d [Minor] Fix print settings for custom print format 2016-03-07 18:22:40 +05:30
Anand Doshi
dab167791c Merge pull request #4934 from anandpdoshi/fix/stock-balance-filters
[fix] Run Stock Balance report only after one of the filters is set
2016-03-07 14:31:08 +05:30
Anand Doshi
0902fb2e3d [fix] Run Stock Balance report only after one of the filters is set 2016-03-07 13:11:59 +05:30
Rushabh Mehta
5a700820e7 [fix] [minor] autoload chart of accounts 2016-03-07 11:57:54 +05:30
Anand Doshi
9a2dc8332b Merge pull request #4930 from frehu01/patch-3
Update journal-entry.md
2016-03-07 11:28:01 +05:30
frehu01
eb5ad3f793 Update journal-entry.md 2016-03-06 17:52:29 +01:00
Nabin Hait
acb28954ff [fix][report] Show group rows with zero values if there are values against children 2016-03-04 12:32:44 +05:30
Rushabh Mehta
a0b21235d7 Merge branch 'develop' 2016-03-03 16:48:45 +05:30
Rushabh Mehta
d3c04a3eda bumped to version 6.24.5 2016-03-03 17:18:45 +06:00
Rushabh Mehta
0c1b8f4334 [fix] [minor] autoload chart of accounts 2016-03-03 16:47:36 +05:30
Rushabh Mehta
571a9d0f19 [fix] [tests] 2016-03-03 15:03:40 +05:30
Rushabh Mehta
3d101c3fd2 Merge branch 'develop' 2016-03-03 13:57:45 +05:30
Rushabh Mehta
563f023c11 bumped to version 6.24.4 2016-03-03 14:27:45 +06:00
Rushabh Mehta
1396b776bc [fix] print hide for submit_on_creation 2016-03-03 13:57:15 +05:30
Rushabh Mehta
c47d03cf8a Merge branch 'develop' 2016-03-03 13:13:21 +05:30
Rushabh Mehta
369b9cf928 bumped to version 6.24.3 2016-03-03 13:43:21 +06:00
Rushabh Mehta
7114b7786e [fix] print hide for submit_on_create 2016-03-03 13:12:21 +05:30
Rushabh Mehta
2c8dc1d273 Merge branch 'develop' 2016-03-03 13:02:23 +05:30
Rushabh Mehta
a8d04b11c3 bumped to version 6.24.2 2016-03-03 13:32:23 +06:00
Rushabh Mehta
756e518bc1 [fix] recurring 2016-03-03 13:00:30 +05:30
Rushabh Mehta
c72267b98b Merge pull request #4919 from agusputra/patch-24
Update item-price.md
2016-03-03 11:30:01 +05:30
Rushabh Mehta
526f042bb7 Merge pull request #4915 from jayala/patch-1
Update concepts-and-terms.md
2016-03-03 11:29:54 +05:30
Rushabh Mehta
a289ab75bf Merge branch 'develop' 2016-03-03 11:27:42 +05:30
Rushabh Mehta
14b83cf391 bumped to version 6.24.1 2016-03-03 11:57:42 +06:00
Rushabh Mehta
d627af2c97 [translations] 2016-03-03 11:25:46 +05:30
Rushabh Mehta
fe3f78b0f6 Merge branch 'develop' 2016-03-03 11:05:22 +05:30
Rushabh Mehta
cf6b786950 bumped to version 6.24.0 2016-03-03 11:35:22 +06:00
Rushabh Mehta
a12eb686a5 [change-log] 6.24.0 2016-03-03 11:03:38 +05:30
Rushabh Mehta
07263462f6 [minor] add translated get_formatted 2016-03-03 10:48:45 +05:30
Rushabh Mehta
69cfab8559 [fix] [patch] recurring 2016-03-03 10:37:45 +05:30
Agus Syahputra
32362f14f4 Update item-price.md 2016-03-03 08:03:59 +07:00
Jesús Ayala
18bfad5a66 Update concepts-and-terms.md 2016-03-02 10:05:45 -03:00
Rushabh Mehta
5839a8d7f0 [fixes] usability cleanup of recurring document and added explicit submit_on_creation 2016-03-02 17:51:52 +05:30
Rushabh Mehta
f1ad694356 Merge pull request #4912 from ShashaQin/patch-31
minor improvement on item query
2016-03-02 16:19:21 +05:30
Rushabh Mehta
aac4dcedc8 [fix] print language and contact_email fields and removed translations 2016-03-02 15:45:09 +05:30
Rushabh Mehta
b0f0aaf5b1 [minor] added chart of accounts, cost centers buttons on Company 2016-03-02 13:08:40 +05:30
Rushabh Mehta
fe6eadfe22 [cleanup] job opening and job applicant 2016-03-02 12:53:19 +05:30
ShashaQin
425ab6bb1e Update queries.py 2016-03-02 13:07:58 +08:00
Rushabh Mehta
cbed331047 Merge pull request #4909 from rohitwaghchaure/multilingual_print_format_test
Multilingual print format test
2016-03-01 17:10:50 +05:30
rohitwaghchaure
4151e3dc92 [enhancement] Multi-lingual print format 2016-03-01 16:33:08 +05:30
Rushabh Mehta
6020e9ceb3 Merge pull request #4906 from smorele/doc_fixes
fixe broken links
2016-03-01 16:15:56 +05:30
Rushabh Mehta
5b9d6494a6 Merge pull request #4900 from rmehta/minor-fixes
[minor] fix notification for material request, splash icon, cleanup project form layout
2016-03-01 16:15:25 +05:30
Rushabh Mehta
e670525c55 Merge pull request #4899 from nabinhait/seriailized_stock_valuation
Seriailized stock valuation
2016-03-01 16:13:09 +05:30
Rushabh Mehta
39a6f804bf Merge pull request #4871 from ShashaQin/patch-27
Improvements about recurring documents
2016-03-01 16:06:33 +05:30
Rushabh Mehta
ddeb576d52 Merge pull request #4849 from rasos/patch-1
Create at_austria_chart_Einheitskontenrahmen.json
2016-03-01 16:05:13 +05:30
smorele
0a58d9e0f4 fixe broken links 2016-03-01 09:53:23 +01:00
Rushabh Mehta
7bdd9979aa Merge pull request #4905 from KanchanChauhan/web-forms
[fix] added web form fixtures
2016-03-01 11:42:40 +05:30
Kanchan Chauhan
1f3d5b7ee9 [fix] added web form fixtures 2016-03-01 11:33:49 +05:30
Rushabh Mehta
45fd073094 Merge pull request #4897 from agusputra/patch-23
Update withdrawing-salary-from-owners-equity-account.md
2016-02-29 17:35:18 +05:30
Rushabh Mehta
980a00d9d7 Merge pull request #4892 from agusputra/patch-22
Update update-stock-option-in-sales-invoice.md
2016-02-29 17:34:54 +05:30
Rushabh Mehta
95ffe3bc7b [docs] added work-in-progress for Spanish manual 2016-02-29 17:22:25 +05:30
paulocoronado
18d465dc0d Adding WORK IN PROGRESS 2016-02-29 17:22:25 +05:30
paulocoronado
23ef60a467 work in progress
Spanish Transalation
2016-02-29 17:22:24 +05:30
paulocoronado
8f6b1e0549 Páginas de inicio de la traducción al español.
First commit of Spanish translation
2016-02-29 17:22:24 +05:30
Rushabh Mehta
ae7dc31d14 Merge pull request #4846 from KanchanChauhan/job-applicant
Added feature to allow people to apply for job from website
2016-02-29 17:22:01 +05:30
Rushabh Mehta
aabefe4b7c Merge branch 'develop' 2016-02-29 14:50:54 +05:30
Rushabh Mehta
6fa497c87a bumped to version 6.23.7 2016-02-29 15:20:54 +06:00
Rushabh Mehta
a4decc2c59 [minor] [test] fix for leap year 2016-02-29 14:44:20 +05:30
Rushabh Mehta
f1083c9a74 [minor] fix messages in material request 2016-02-29 14:38:25 +05:30
Rushabh Mehta
e1f68b9904 Merge pull request #4901 from nabinhait/time_log_overlap_fix
[fix] Time Log overlap validation and test cases
2016-02-29 14:16:59 +05:30
Nabin Hait
94a1f3eb90 [fix] Time Log overlap validation and test cases 2016-02-29 13:15:27 +05:30
Nabin Hait
5a4c7d3b62 [patch] repost valuation rate for serialized items 2016-02-29 12:07:42 +05:30
Nabin Hait
2620bf402f [fix] Stock Valuation for serialized items 2016-02-29 12:07:42 +05:30
Agus Syahputra
1b28f58829 Update withdrawing-salary-from-owners-equity-account.md 2016-02-29 08:04:02 +07:00
Agus Syahputra
034fcb3410 Update update-stock-option-in-sales-invoice.md 2016-02-28 11:49:00 +07:00
Rushabh Mehta
4403853828 [minor] fix notification for material request, splash icon, cleanup project form layout 2016-02-27 16:24:34 +05:30
ShashaQin
8d1dea6aad Update recurring_document.py 2016-02-27 14:00:58 +08:00
Nabin Hait
f34e63123f Merge pull request #4877 from agusputra/patch-18
Update period-closing-voucher.md
2016-02-27 10:11:20 +05:30
Nabin Hait
598c9c4679 Merge pull request #4884 from umairsy/feb-2nd
updated manual
2016-02-27 10:10:34 +05:30
Nabin Hait
2174790545 Merge pull request #4886 from saurabh6790/add_projected_qty_on_quotation
[fixes] set projected qty in Quotaion Item table
2016-02-27 10:04:20 +05:30
Nabin Hait
f9103b1b0b Merge pull request #4887 from sbkolate/patch-3
enable uom in BOM Table View
2016-02-27 10:02:59 +05:30
Nabin Hait
e0cc597f70 Merge pull request #4888 from agusputra/patch-19
Update freeze-accounting-entries.md
2016-02-27 10:02:24 +05:30
Nabin Hait
ab40cd8d08 Merge pull request #4889 from agusputra/patch-21
Update managing-transactions-in-multiple-currency.md
2016-02-27 10:02:10 +05:30
Agus Syahputra
8fa6f79f7e Update managing-transactions-in-multiple-currency.md 2016-02-27 07:22:50 +07:00
Agus Syahputra
f7face6384 Update freeze-accounting-entries.md 2016-02-27 07:08:20 +07:00
Anand Doshi
3ef8d066b9 Merge branch 'develop' 2016-02-26 20:58:26 +05:30
Anand Doshi
18e988e4ce bumped to version 6.23.6 2016-02-26 21:28:26 +06:00
Anand Doshi
7b52dc9f32 [hotfix] added back comment_feed_communication patch 2016-02-26 20:51:33 +05:30
sbkolate
a897882434 enable uom in BOM Table View
reference 
https://discuss.erpnext.com/t/uom-in-item-tables/10733/4
2016-02-26 19:32:11 +05:30
Saurabh
cc7132763f [fixes] set projected qty in Quotaion Item table 2016-02-26 18:33:53 +05:30
Nabin Hait
593bfddb74 Merge branch 'develop' 2016-02-26 17:34:46 +05:30
Nabin Hait
658b3260c2 bumped to version 6.23.5 2016-02-26 18:04:46 +06:00
Nabin Hait
6c30972931 Merge pull request #4883 from nabinhait/time_log_fix
[fix] Time log overlap validation
2016-02-26 17:33:11 +05:30
Umair Sayyed
d1029b54c2 updated manual 2016-02-26 17:32:44 +05:30
Nabin Hait
56f7fa66ad [fix] Time log overlap validation 2016-02-26 17:19:11 +05:30
Nabin Hait
bdf0f0a08d [fix] Show debit note button in purchase invoice 2016-02-26 16:26:28 +05:30
Nabin Hait
8f810c55d2 Merge branch 'develop' 2016-02-26 15:21:02 +05:30
Nabin Hait
eb0c08f328 bumped to version 6.23.4 2016-02-26 15:51:02 +06:00
Nabin Hait
c37c7ed5c6 Merge pull request #4881 from nabinhait/develop
[fix] Show credit note button in sales invoice
2016-02-26 15:18:52 +05:30
Nabin Hait
0f6eac3b35 [fix] Show credit note button in sales invoice 2016-02-26 13:01:32 +05:30
Agus Syahputra
91bd4ce3e1 Update period-closing-voucher.md 2016-02-26 07:45:14 +07:00
Nabin Hait
36c0faa744 Merge branch 'develop' 2016-02-25 19:13:31 +05:30
Nabin Hait
cd3b37dcfe bumped to version 6.23.3 2016-02-25 19:43:31 +06:00
Nabin Hait
55f0834e99 [fix] Show payment button in purchase invoice 2016-02-25 19:12:37 +05:30
ShashaQin
ed71e6cea6 Update test_recurring_document.py 2016-02-25 15:47:25 +08:00
ShashaQin
5afca21571 Update test_recurring_document.py 2016-02-25 15:21:14 +08:00
ShashaQin
6071ddc3dd Update recurring_document.py 2016-02-25 11:25:24 +08:00
ShashaQin
73c71f9dd5 Update sales_order.json 2016-02-25 11:22:27 +08:00
ShashaQin
2f0a14bda0 Update purchase_order.json 2016-02-25 11:19:56 +08:00
ShashaQin
ae629ad29f Update purchase_invoice.json 2016-02-25 11:17:13 +08:00
ShashaQin
02a38e8b5e Update sales_invoice.json
Add 'Notify by Email' check box and set next_date can be changed by user
2016-02-25 11:13:19 +08:00
saurabh
64ec677cf7 deleted extra doctype 2016-02-24 01:07:49 +05:30
saurabh
42d5d8390d Resolved conflicts 2016-02-23 13:15:02 +05:30
saurabh
fb71f32ebf conflicts resolved 2016-02-23 02:26:37 +05:30
saurabh
2e2dd0fb42 Documentation of multilingual print format and minor fixes 2016-02-23 02:17:04 +05:30
rohit waghchaure
da321b44cb removed translator 2016-02-23 02:17:04 +05:30
saurabh
9364f35a2c fixed issue of stock_uom translator 2016-02-23 02:17:04 +05:30
saurabh
724b4b17a5 changed method to set code of language 2016-02-23 02:17:03 +05:30
saurabh
fbcf44657c test case for translation doctype 2016-02-23 02:17:03 +05:30
saurabh
c422c23813 import method to load all languages in language field on customer form 2016-02-23 02:17:03 +05:30
saurabh
f703198082 replaced methd 2016-02-23 02:17:03 +05:30
saurabh
ca3e7152d6 removed add fetch method 2016-02-23 02:17:03 +05:30
saurabh
8e49951821 fetch customer or supplier language and set on sales and purchase flow's form 2016-02-23 02:17:03 +05:30
saurabh
65820ed013 added new field language for users 2016-02-23 02:17:03 +05:30
saurabh
533a0f6527 created new file 2016-02-23 02:17:03 +05:30
saurabh
60def66644 added translator into print format 2016-02-23 02:17:02 +05:30
saurabh
24358db7bf changed fieldname from print_language to language 2016-02-23 02:17:02 +05:30
saurabh
648fd33576 removed languages filled methods, added this methods into new file 2016-02-23 02:17:02 +05:30
saurabh
5265aa43e4 added add_fetch method 2016-02-23 02:17:02 +05:30
saurabh
4db3b3cf1e removed add_fetch method 2016-02-23 02:17:02 +05:30
saurabh
29d77be648 pulled languages into the field print language 2016-02-23 02:17:02 +05:30
saurabh
cc7c9e4d0f on selection of supplier pulled default print language 2016-02-23 02:17:02 +05:30
saurabh
b1efceccd4 added field print languages 2016-02-23 02:17:02 +05:30
Roland
ed2849adf9 Create at_austria_chart_Einheitskontenrahmen.json
Austrian Chart of Accounts compiled by fairkom.eu from various sources, among them the official "Österreichishcer Kontenrahmen" published by ÖPWZ - Fachsenat für Betriebswirtschaft und Organisation der Kammer der Wirtschaftstreuhänder Version May 2014. Numbering scheme has been slightly adapted to fit best with ERPnext setup of a company, where the most important accounts are automatically assigned. When using this chart of accounts, feel free to reduce / adapt the accounts - it is not legally binding.
2016-02-22 09:26:54 +01:00
Kanchan Chauhan
49c4aa6ce3 Minor fix 2016-02-19 17:36:52 +05:30
Kanchan Chauhan
2e8cc89e34 Added webform for Job Opening 2016-02-19 17:31:13 +05:30
rohit waghchaure
ff321763cf removed translator 2016-02-19 12:02:02 +05:30
saurabh
5a265408a3 fixed issue of stock_uom translator 2016-02-19 11:46:29 +05:30
saurabh
c26c6c368c changed method to set code of language 2016-02-19 11:46:29 +05:30
saurabh
f1949781d6 test case for translation doctype 2016-02-19 11:46:29 +05:30
saurabh
755fefbfd4 import method to load all languages in language field on customer form 2016-02-19 11:46:29 +05:30
saurabh
3c2a10bf9f replaced methd 2016-02-19 11:46:28 +05:30
saurabh
49c9746816 removed add fetch method 2016-02-19 11:46:28 +05:30
saurabh
c2dae35966 fetch customer or supplier language and set on sales and purchase flow's form 2016-02-19 11:46:28 +05:30
saurabh
a1c3ea2f86 added new field language for users 2016-02-19 11:46:28 +05:30
saurabh
3dcd4f3682 created new file 2016-02-19 11:46:28 +05:30
saurabh
a6f57e1c4b added translator into print format 2016-02-19 11:46:28 +05:30
saurabh
2192ffe5af changed fieldname from print_language to language 2016-02-19 11:46:28 +05:30
saurabh
6b6977a090 removed languages filled methods, added this methods into new file 2016-02-19 11:46:28 +05:30
saurabh
c14f2c29b9 added add_fetch method 2016-02-19 11:46:27 +05:30
saurabh
5d45176a1d removed add_fetch method 2016-02-19 11:46:27 +05:30
saurabh
b4079095fb pulled languages into the field print language 2016-02-19 11:46:27 +05:30
saurabh
3ec7649bae on selection of supplier pulled default print language 2016-02-19 11:46:27 +05:30
saurabh
844cb5c810 added field print languages 2016-02-19 11:46:27 +05:30
220 changed files with 21735 additions and 19223 deletions

View File

@@ -1,2 +1,2 @@
from __future__ import unicode_literals
__version__ = '6.23.2'
__version__ = '6.25.0'

View File

@@ -0,0 +1,414 @@
{
"country_code": "at",
"name": "Austria - Chart of Accounts - Einheitskontenrahmen provided by fairkom.eu",
"tree": {
"Klasse 0 Aktiva: Anlageverm\u00f6gen": {
"0100 Konzessionen ": {"account_type": "Fixed Asset"},
"0110 Patentrechte und Lizenzen ": {"account_type": "Fixed Asset"},
"0120 Datenverarbeitungsprogramme ": {"account_type": "Fixed Asset"},
"0130 Marken, Warenzeichen und Musterschutzrechte, sonstige Urheberrechte ": {"account_type": "Fixed Asset"},
"0140 Pacht- und Mietrechte ": {"account_type": "Fixed Asset"},
"0150 Bezugs- und ähnliche Rechte ": {"account_type": "Fixed Asset"},
"0160 Geschäfts-/Firmenwert ": {"account_type": "Fixed Asset"},
"0170 Umgründungsmehrwert ": {"account_type": "Fixed Asset"},
"0180 Geleistete Anzahlungen auf immaterielle Vermögensgegenstände": {"account_type": "Fixed Asset"},
"0190 Kumulierte Abschreibungen zu immateriellen Vermögensgegenständen ": {"account_type": "Fixed Asset"},
"0200 Unbebaute Grundstücke, soweit nicht landwirtschaftlich genutzt ": {"account_type": "Fixed Asset"},
"0210 Bebaute Grundstücke (Grundwert) ": {"account_type": "Fixed Asset"},
"0220 Landwirtschaftlich genutzte Grundstücke ": {"account_type": "Fixed Asset"},
"0230 Grundstücksgleiche Rechte ": {"account_type": "Fixed Asset"},
"0300 Betriebs- und Geschäftsgebäude auf eigenem Grund ": {"account_type": "Fixed Asset"},
"0310 Wohn- und Sozialgebäude auf eigenem Grund ": {"account_type": "Fixed Asset"},
"0320 Betriebs- und Geschäftsgebäude auf fremdem Grund ": {"account_type": "Fixed Asset"},
"0330 Wohn- und Sozialgebäude auf fremdem Grund ": {"account_type": "Fixed Asset"},
"0340 Grundstückseinrichtungen auf eigenem Grund ": {"account_type": "Fixed Asset"},
"0350 Grundstückseinrichtungen auf fremdem Grund ": {"account_type": "Fixed Asset"},
"0360 Bauliche Investitionen in fremden (gepachteten) Betriebs- und Geschäftsgebäuden": {"account_type": "Fixed Asset"},
"0370 Bauliche Investitionen in fremden (gepachteten) Wohn- und Sozialgebäuden": {"account_type": "Fixed Asset"},
"0390 Kumulierte Abschreibungen zu Grundstücken ": {"account_type": "Fixed Asset"},
"0400 Maschinen und Geräte ": {"account_type": "Fixed Asset"},
"0500 Maschinenwerkzeuge ": {"account_type": "Fixed Asset"},
"0510 Allgemeine Werkzeuge und Handwerkzeuge ": {"account_type": "Fixed Asset"},
"0520 Prototypen, Formen, Modelle ": {"account_type": "Fixed Asset"},
"0530 Andere Erzeugungshilfsmittel (auch Softwarewerkzeuge)": {"account_type": "Fixed Asset"},
"0540 Hebezeuge und Montageanlagen ": {"account_type": "Fixed Asset"},
"0550 Geringwertige Vermögensgegenstände, soweit im Erzeugungsprozess ": {"account_type": "Fixed Asset"},
"0560 Festwerte technische Anlagen und Maschinen ": {"account_type": "Fixed Asset"},
"0590 Kumulierte Abschreibungen zu technischen Anlagen und Maschinen ": {"account_type": "Fixed Asset"},
"0600 Betriebs- und Geschäftsausstattung, soweit nicht gesondert angeführt ": {"account_type": "Fixed Asset"},
"0610 Andere Anlagen, soweit nicht gesondert angeführt ": {"account_type": "Fixed Asset"},
"0620 Büromaschinen, EDV-Anlagen ": {"account_type": "Fixed Asset"},
"0630 PKW und Kombis ": {"account_type": "Fixed Asset"},
"0640 LKW ": {"account_type": "Fixed Asset"},
"0650 Andere Beförderungsmittel ": {"account_type": "Fixed Asset"},
"0660 Gebinde ": {"account_type": "Fixed Asset"},
"0670 Geringwertige Vermögensgegenstände, soweit nicht im Erzeugungssprozess verwendet": {"account_type": "Fixed Asset"},
"0680 Festwerte außer technische Anlagen und Maschinen ": {"account_type": "Fixed Asset"},
"0690 Kumulierte Abschreibungen zu anderen Anlagen, Betriebs- und Geschäftsausstattung": {"account_type": "Fixed Asset"},
"0700 Geleistete Anzahlungen auf Sachanlagen ": {"account_type": "Fixed Asset"},
"0710 Anlagen in Bau ": {"account_type": "Fixed Asset"},
"0790 Kumulierte Abschreibungen zu geleisteten Anzahlungen auf Sachanlagen ": {"account_type": "Fixed Asset"},
"0800 Anteile an verbundenen Unternehmen ": {"account_type": "Fixed Asset"},
"0810 Beteiligungen an Gemeinschaftsunternehmen ": {"account_type": "Fixed Asset"},
"0820 Beteiligungen an angeschlossenen (assoziierten) Unternehmen ": {"account_type": "Fixed Asset"},
"0830 Eigene Anteile, Anteile an herrschenden oder mit Mehrheit beteiligten ": {"account_type": "Fixed Asset"},
"0840 Sonstige Beteiligungen ": {"account_type": "Fixed Asset"},
"0850 Ausleihungen an verbundene Unternehmen ": {"account_type": "Fixed Asset"},
"0860 Ausleihungen an Unternehmen mit Beteiligungsverhältnis": {"account_type": "Fixed Asset"},
"0870 Ausleihungen an Gesellschafter ": {"account_type": "Fixed Asset"},
"0880 Sonstige Ausleihungen ": {"account_type": "Fixed Asset"},
"0890 Anteile an Kapitalgesellschaften ohne Beteiligungscharakter ": {"account_type": "Fixed Asset"},
"0900 Anteile an Personengesellschaften ohne Beteiligungscharakter ": {"account_type": "Fixed Asset"},
"0910 Genossenschaftsanteile ohne Beteiligungscharakter ": {"account_type": "Fixed Asset"},
"0920 Anteile an Investmentfonds ": {"account_type": "Fixed Asset"},
"0930 Festverzinsliche Wertpapiere des Anlagevermögens ": {"account_type": "Fixed Asset"},
"0980 Geleistete Anzahlungen auf Finanzanlagen ": {"account_type": "Fixed Asset"},
"0990 Kumulierte Abschreibungen zu Finanzanlagen ": {"account_type": "Fixed Asset"},
"root_type": "Asset"
},
"Klasse 1 Aktiva: Vorr\u00e4te": {
"1000 Bezugsverrechnung": {"account_type": "Stock"},
"1100 Rohstoffe": {"account_type": "Stock"},
"1200 Bezogene Teile": {"account_type": "Stock"},
"1300 Hilfsstoffe": {"account_type": "Stock"},
"1350 Betriebsstoffe": {"account_type": "Stock"},
"1360 Vorrat Energietraeger": {"account_type": "Stock"},
"1400 Unfertige Erzeugnisse": {"account_type": "Stock"},
"1500 Fertige Erzeugnisse": {"account_type": "Stock"},
"1600 Handelswarenvorrat": {"account_type": "Stock Received But Not Billed"},
"1700 Noch nicht abrechenbare Leistungen": {"account_type": "Stock"},
"1900 Wertberichtigungen": {"account_type": "Stock"},
"1800 Geleistete Anzahlungen": {"account_type": "Stock"},
"root_type": "Asset"
},
"Klasse 3 Passiva: Verbindlichkeiten": {
"3020 Steuerr\u00fcckstellungen": {"account_type": "Tax"},
"3040 Sonstige R\u00fcckstellungen": {"account_type": "Payable"},
"3110 Verbindlichkeiten gegen\u00fcber Bank": {"account_type": "Payable"},
"3150 Verbindlichkeiten Darlehen": {"account_type": "Payable"},
"3185 Verbindlichkeiten Kreditkarte": {"account_type": "Payable"},
"3380 Verbindlichkeiten aus der Annahme gezogener Wechsel u. d. Ausstellungen eigener Wechsel": {
"account_type": "Payable"
},
"3400 Verbindlichkeiten gegen\u00fc. verb. Untern., Verbindl. gegen\u00fc. Untern., mit denen eine Beteiligungsverh\u00e4lnis besteht": {},
"3460 Verbindlichkeiten gegenueber Gesellschaftern": {"account_type": "Payable"},
"3470 Einlagen stiller Gesellschafter": {"account_type": "Payable"},
"3590 Verbindlichkeiten Kommunalabgaben": {"account_type": "Tax"},
"3600 Verbindlichkeiten Sozialversicherung": {"account_type": "Payable"},
"3000 Allgemeine Verbindlichkeiten (Schuld)": {"account_type": "Payable"},
"3700 Sonstige Verbindlichkeiten": {"account_type": "Payable"},
"3900 Passive Rechnungsabgrenzungsposten": {"account_type": "Payable"},
"3100 Anleihen (einschlie\u00dflich konvertibler)": {"account_type": "Payable"},
"3200 Erhaltene Anzahlungen auf Bestellungen": {"account_type": "Payable"},
"3040 R\u00fcckstellungen f\u00fcr Abfertigung": {"account_type": "Payable"},
"3010 R\u00fcckstellungen f\u00fcr Pensionen": {"account_type": "Payable"},
"3530 USt. \u00a719 (reverse charge)": {
"account_type": "Tax"
},
"3500 Verbindlichkeiten aus Umsatzsteuer": {"account_type": "Tax"},
"3580 Umsatzsteuer Zahllast": {
"account_type": "Tax"
},
"3510 Umsatzsteuer aus i.g. Erwerb 10%": {
"account_type": "Tax"
},
"3520 Umsatzsteuer aus i.g. Erwerb 20%": {
"account_type": "Tax"
},
"3560 Umsatzsteuer-Evidenzkonto f\u00fcr erhaltene Anzahlungen auf Bestellungen": {},
"3360 Verbindlichkeiten aus Lieferungen u. Leistungen EU": {
"account_type": "Payable"
},
"3000 Verbindlichkeiten aus Lieferungen u. Leistungen Inland": {
"account_type": "Payable"
},
"3370 Verbindlichkeiten aus Lieferungen u. Leistungen sonst. Ausland": {
"account_type": "Payable"
},
"3400 Verbindlichkeiten gegen\u00fcber verbundenen Unternehmen": {},
"3570 Verrechnung Finanzamt": {
"account_type": "Tax"
},
"root_type": "Liability"
},
"Klasse 2 Aktiva: Umlaufverm\u00f6gen, Rechnungsabgrenzungen": {
"2030 Forderungen aus Lieferungen und Leistungen Inland (0% USt, umsatzsteuerfrei)": {
"account_type": "Receivable"
},
"2010 Forderungen aus Lieferungen und Leistungen Inland (10% USt, umsatzsteuerfrei)": {
"account_type": "Receivable"
},
"2000 Forderungen aus Lieferungen und Leistungen Inland (20% USt, umsatzsteuerfrei)": {
"account_type": "Receivable"
},
"2040 Forderungen aus Lieferungen und Leistungen Inland (sonstiger USt-Satz)": {
"account_type": "Receivable"
},
"2100 Forderungen aus Lieferungen und Leistungen EU": {
"account_type": "Receivable"
},
"2150 Forderungen aus Lieferungen und Leistungen Ausland (Nicht-EU)": {
"account_type": "Receivable"
},
"2200 Forderungen gegen\u00fcber verbundenen Unternehmen": {
"account_type": "Receivable"
},
"2250 Forderungen gegen\u00fcber Unternehmen, mit denen ein Beteiligungsverh\u00e4ltnis besteht": {
"account_type": "Receivable"
},
"2300 Sonstige Forderungen und Verm\u00f6gensgegenst\u00e4nde": {
"account_type": "Receivable"
},
"2630 Sonstige Wertpapiere": {
"account_type": "Stock"
},
"2750 Kassenbest\u00e4nde in Fremdw\u00e4hrung": {
"account_type": "Cash"
},
"2900 Aktive Rechnungsabrenzungsposten": {
"account_type": "Receivable"
},
"2600 Anteile an verbundenen Unternehmen": {
"account_type": "Equity"
},
"2680 Besitzwechsel ohne Forderungen": {
"account_type": "Receivable"
},
"2950 Aktiviertes Disagio": {
"account_type": "Receivable"
},
"2610 Eigene Anteile und Wertpapiere an mit Mehrheit beteiligten Unternehmen": {
"account_type": "Receivable"
},
"2570 Einfuhrumsatzsteuer (bezahlt)": {"account_type": "Tax"},
"2460 Eingeforderte aber noch nicht eingezahlte Einlagen": {
"account_type": "Receivable"
},
"2180 Einzelwertberichtigungen zu Forderungen aus Lief. und Leist. Ausland": {
"account_type": "Receivable"
},
"2130 Einzelwertberichtigungen zu Forderungen aus Lief. und Leist. EU": {
"account_type": "Receivable"
},
"2080 Einzelwertberichtigungen zu Forderungen aus Lief. und Leist. Inland ": {
"account_type": "Receivable"
},
"2270 Einzelwertberichtigungen zu Forderungen gegen\u00fcber Unternehmen mit denen ein Beteiligungsverh\u00e4ltnis besteht": {
"account_type": "Receivable"
},
"2230 Einzelwertberichtigungen zu Forderungen gegen\u00fcber verbundenen Unternehmen": {
"account_type": "Receivable"
},
"2470 Einzelwertberichtigungen zu sonstigen Forderungen und Verm\u00f6gensgegenst\u00e4nden": {
"account_type": "Receivable"
},
"2700 Kassenbestand": {
"account_type": "Cash"
},
"2190 Pauschalwertberichtigungen zu Forderungen aus Lief. und Leist. sonstiges Ausland": {
"account_type": "Receivable"
},
"2130 Pauschalwertberichtigungen zu Forderungen aus Lief. und Leist. EU": {
"account_type": "Receivable"
},
"2100 Pauschalwertberichtigungen zu Forderungen aus Lief. und Leist. Inland ": {
"account_type": "Receivable"
},
"2280 Pauschalwertberichtigungen zu Forderungen gegen\u00fcber Unternehmen mit denen ein Beteiligungsverh\u00e4ltnis besteht": {
"account_type": "Receivable"
},
"2240 Pauschalwertberichtigungen zu Forderungen gegen\u00fcber verbundenen Unternehmen": {
"account_type": "Receivable"
},
"2480 Pauschalwertberichtigungen zu sonstigen Forderungen und Verm\u00f6gensgegenst\u00e4nden": {
"account_type": "Receivable"
},
"2740 Postwertzeichen": {
"account_type": "Cash"
},
"2780 Schecks in Euro": {
"account_type": "Cash"
},
"2800 Guthaben bei Kreditinstitut": {
"account_type": "Bank"
},
"2810 Guthaben bei Paypal": {
"account_type": "Bank"
},
"2930 Mietvorauszahlungen": {
"account_type": "Receivable"
},
"2980 Abgrenzung latenter Steuern": {
"account_type": "Receivable"
},
"2500 Vorsteuer": {
"account_type": "Receivable"
},
"2510 Vorsteuer aus innergemeinschaftlichem Erwerb 10%": {
"account_type": "Tax"
},
"2520 Vorsteuer aus innergemeinschaftlichem Erwerb 20%": {
"account_type": "Tax"
},
"2530 Vorsteuer \u00a719/Art 19 ( reverse charge ) ": {
"account_type": "Tax"
},
"2690 Wertberichtigungen zu Wertpapieren und Anteilen": {
"account_type": "Receivable"
},
"root_type": "Asset"
},
"Klasse 4: Betriebliche Erträge": {
"4000 Erlöse 20 %": {"account_type": "Income Account"},
"4020 Erl\u00f6se 0 % steuerbefreit": {"account_type": "Income Account"},
"4010 Erl\u00f6se 10 %": {"account_type": "Income Account"},
"4030 Erl\u00f6se 13 %": {"account_type": "Income Account"},
"4040 Erl\u00f6se 0 % innergemeinschaftliche Lieferungen": {"account_type": "Income Account"},
"4400 Erl\u00f6sreduktion 0 % steuerbefreit": {"account_type": "Expense Account"},
"4410 Erl\u00f6sreduktion 10 %": {"account_type": "Expense Account"},
"4420 Erl\u00f6sreduktion 20 %": {"account_type": "Expense Account"},
"4430 Erl\u00f6sreduktion 13 %": {"account_type": "Expense Account"},
"4440 Erl\u00f6sreduktion 0 % innergemeinschaftliche Lieferungen": {"account_type": "Expense Account"},
"4500 Ver\u00e4nderungen des Bestandes an fertigen und unfertigen Erzeugn. sowie an noch nicht abrechenbaren Leistungen": {"account_type": "Income Account"},
"4580 Aktivierte Eigenleistungen": {"account_type": "Income Account"},
"4600 Erl\u00f6se aus dem Abgang vom Anlageverm\u00f6gen, ausgen. Finanzanlagen": {"account_type": "Income Account"},
"4630 Ertr\u00e4ge aus dem Abgang vom Anlageverm\u00f6gen, ausgen. Finanzanlagen": {"account_type": "Income Account"},
"4660 Ertr\u00e4ge aus der Zuschreibung zum Anlageverm\u00f6gen, ausgen. Finanzanlagen": {"account_type": "Income Account"},
"4700 Ertr\u00e4ge aus der Aufl\u00f6sung von R\u00fcckstellungen": {"account_type": "Income Account"},
"4800 \u00dcbrige betriebliche Ertr\u00e4ge": {"account_type": "Income Account"},
"root_type": "Income"
},
"Klasse 5: Aufwand f\u00fcr Material und Leistungen": {
"5000 Einkauf Partnerleistungen": {"account_type": "Cost of Goods Sold"},
"5100 Verbrauch an Rohstoffen": {"account_type": "Cost of Goods Sold"},
"5200 Verbrauch von bezogenen Fertig- und Einzelteilen": {"account_type": "Cost of Goods Sold"},
"5300 Verbrauch von Hilfsstoffen": {"account_type": "Cost of Goods Sold"},
"5340 Verbrauch Verpackungsmaterial": {"account_type": "Cost of Goods Sold"},
"5470 Verbrauch von Kleinmaterial": {"account_type": "Cost of Goods Sold"},
"5450 Verbrauch von Reinigungsmaterial": {"account_type": "Cost of Goods Sold"},
"5400 Verbrauch von Betriebsstoffen": {"account_type": "Cost of Goods Sold"},
"5500 Verbrauch von Werkzeugen und anderen Erzeugungshilfsmittel": {"account_type": "Cost of Goods Sold"},
"5600 Verbrauch von Brenn- und Treibstoffen, Energie und Wasser": {"account_type": "Cost of Goods Sold"},
"5700 Bearbeitung durch Dritte": {"account_type": "Cost of Goods Sold"},
"5900 Aufwandsstellenrechnung Material": {"account_type": "Cost of Goods Sold"},
"5820 Skontoertr\u00e4ge (20% USt.)": {"account_type": "Income Account"},
"5810 Skontoertr\u00e4ge (10% USt.)": {"account_type": "Income Account"},
"5010 Handelswareneinkauf 10 %": {"account_type": "Cost of Goods Sold"},
"5020 Handelswareneinkauf 20 %": {"account_type": "Cost of Goods Sold"},
"5040 Handelswareneinkauf innergemeinschaftlicher Erwerb 10 % VSt/10 % USt": {"account_type": "Cost of Goods Sold"},
"5050 Handelswareneinkauf innergemeinschaftlicher Erwerb 20 % VSt/20 % USt": {"account_type": "Cost of Goods Sold"},
"5070 Handelswareneinkauf innergemeinschaftlicher Erwerb ohne Vorsteuerabzug und 10 % USt": {"account_type": "Cost of Goods Sold"},
"5080 Handelswareneinkauf innergemeinschaftlicher Erwerb ohne Vorsteuerabzug und 20 % USt": {"account_type": "Cost of Goods Sold"},
"root_type": "Expense"
},
"Klasse 6: Personalaufwand": {
"6000 L\u00f6hne": {"account_type": "Payable"},
"6200 Geh\u00e4lter": {"account_type": "Payable"},
"6400 Aufwendungen f\u00fcr Abfertigungen": {"account_type": "Payable"},
"6450 Aufwendungen f\u00fcr Altersversorgung": {"account_type": "Payable"},
"6500 Gesetzlicher Sozialaufwand Arbeiter": {"account_type": "Payable"},
"6560 Gesetzlicher Sozialaufwand Angestellte": {"account_type": "Payable"},
"6600 Lohnabh\u00e4ngige Abgaben und Pflichtbeitr\u00e4gte": {"account_type": "Payable"},
"6660 Gehaltsabh\u00e4ngige Abgaben und Pflichtbeitr\u00e4gte": {"account_type": "Payable"},
"6700 Sonstige Sozialaufwendungen": {"account_type": "Payable"},
"6900 Aufwandsstellenrechnung Personal": {"account_type": "Payable"},
"root_type": "Expense"
},
"Klasse 7: Abschreibungen und sonstige betriebliche Aufwendungen": {
"7010 Abschreibungen auf das Anlageverm\u00f6gen (ausgenommen Finanzanlagen)": {"account_type": "Depreciation"},
"7100 Sonstige Steuern und Geb\u00fchren": {"account_type": "Tax"},
"7200 Instandhaltung u. Reinigung durch Dritte, Entsorgung, Energie": {"account_type": "Expense Account"},
"7300 Transporte durch Dritte": {"account_type": "Expense Account"},
"7310 Fahrrad - Aufwand": {"account_type": "Expense Account"},
"7320 Kfz - Aufwand": {"account_type": "Expense Account"},
"7330 LKW - Aufwand": {"account_type": "Expense Account"},
"7340 Lastenrad - Aufwand": {"account_type": "Expense Account"},
"7350 Reise- und Fahraufwand": {"account_type": "Expense Account"},
"7360 Tag- und N\u00e4chtigungsgelder": {"account_type": "Expense Account"},
"7380 Nachrichtenaufwand": {"account_type": "Expense Account"},
"7400 Miet- und Pachtaufwand": {"account_type": "Expense Account"},
"7440 Leasingaufwand": {"account_type": "Expense Account"},
"7480 Lizenzaufwand": {"account_type": "Expense Account"},
"7500 Aufwand f\u00fcr beigestelltes Personal": {"account_type": "Expense Account"},
"7540 Provisionen an Dritte": {"account_type": "Expense Account"},
"7580 Aufsichtsratsverg\u00fctungen": {"account_type": "Expense Account"},
"7610 Druckerzeugnisse und Vervielf\u00e4ltigungen": {"account_type": "Expense Account"},
"7650 Werbung und Repr\u00e4sentationen": {"account_type": "Expense Account"},
"7700 Versicherungen": {"account_type": "Expense Account"},
"7750 Beratungs- und Pr\u00fcfungsaufwand": {"account_type": "Expense Account"},
"7800 Forderungsverluste und Schadensf\u00e4lle": {"account_type": "Expense Account"},
"7840 Verschiedene betriebliche Aufwendungen": {"account_type": "Expense Account"},
"7910 Aufwandsstellenrechung der Hersteller": {"account_type": "Expense Account"},
"7060 Sofortabschreibungen geringwertig": {"account_type": "Expense Account"},
"7070 Abschreibungen vom Umlaufverm\u00f6gen, soweit diese die im Unternehmen \u00fcblichen Abschreibungen \u00fcbersteigen": {"account_type": "Depreciation"},
"7900 Aufwandsstellenrechnung": {"account_type": "Expense Account"},
"7770 Aus- und Fortbildung": {"account_type": "Expense Account"},
"7820 Buchwert abgegangener Anlagen, ausgenommen Finanzanlagen": {"account_type": "Expense Account"},
"7600 B\u00fcromaterial und Drucksorten": {"account_type": "Expense Account"},
"7630 Fachliteratur und Zeitungen ": {"account_type": "Expense Account"},
"7960 Herstellungskosten der zur Erzielung der Umsatzerl\u00f6se erbrachten Leistungen": {"account_type": "Expense Account"},
"7780 Mitgliedsbeitr\u00e4ge": {"account_type": "Expense Account"},
"7880 Skontoertr\u00e4ge auf sonstige betriebliche Aufwendungen": {"account_type": "Expense Account"},
"7990 Sonstige betrieblichen Aufwendungen": {"account_type": "Expense Account"},
"7680 Spenden und Trinkgelder": {"account_type": "Expense Account"},
"7790 Spesen des Geldverkehrs": {"account_type": "Expense Account"},
"7830 Verluste aus dem Abgang vom Anlageverm\u00f6gen, ausgenommen Finanzanlagen": {"account_type": "Expense Account"},
"7970 Vertriebskosten": {"account_type": "Expense Account"},
"7980 Verwaltungskosten": {"account_type": "Expense Account"},
"root_type": "Expense"
},
"Klasse 8: Finanz- und ausserordentliche Ertr\u00e4ge und Aufwendungen": {
"8000 Ertr\u00e4ge aus Beteiligungen": {"account_type": "Income Account"},
"8050 Ertr\u00e4ge aus anderen Wertpapieren und Ausleihungen des Finanzanlageverm\u00f6gens": {"account_type": "Income Account"},
"8100 Zinsen aus Bankguthaben": {"account_type": "Income Account"},
"8110 Zinsen aus gewaehrten Darlehen": {"account_type": "Income Account"},
"8130 Verzugszinsenertraege": {"account_type": "Income Account"},
"8220 Aufwendungen aus Beteiligungen": {"account_type": "Expense Account"},
"8260 Aufwendungen aus sonst. Fiananzanlagen und aus Wertpapieren des Umlaufverm\u00f6gens": {},
"8280 Zinsen und \u00e4hnliche Aufwendungem": {"account_type": "Expense Account"},
"8400 Au\u00dferordentliche Ertr\u00e4ge": {"account_type": "Income Account"},
"8450 Au\u00dferordentliche Aufwendungen": {"account_type": "Expense Account"},
"8500 Steuern vom Einkommen und vom Ertrag": {
"account_type": "Tax"
},
"8600 Aufl\u00f6sung unversteuerten R\u00fccklagen": {"account_type": "Income Account"},
"8700 Aufl\u00f6sung von Kapitalr\u00fccklagen": {"account_type": "Income Account"},
"8750 Aufl\u00f6sung von Gewinnr\u00fccklagen": {"account_type": "Income Account"},
"8800 Zuweisung zu unversteuerten R\u00fccklagen": {"account_type": "Expense Account"},
"8900 Zuweisung zu Gewinnr\u00fccklagen": {"account_type": "Expense Account"},
"8100 Buchwert abgegangener Beteiligungen": {"account_type": "Expense Account"},
"8130 Buchwert abgegangener Wertpapiere des Umlaufverm\u00f6gens": {"account_type": "Expense Account"},
"8120 Buchwert abgegangener sonstiger Finanzanlagen": {"account_type": "Expense Account"},
"8990 Gewinnabfuhr bzw. Verlust\u00fcberrechnung aus Ergebnisabf\u00fchrungsvertr\u00e4gen": {"account_type": "Expense Account"},
"8350 nicht ausgenutzte Lieferantenskonti": {"account_type": "Expense Account"},
"root_type": "Income"
},
"Klasse 9 Passiva: Eigenkapital, R\u00fccklagen, stille Einlagen, Abschlusskonten": {
"9000 Gezeichnetes bzw. gewidmetes Kapital": {
"account_type": "Equity"
},
"9200 Kapitalr\u00fccklagen": {
"account_type": "Equity"
},
"9300 Gewinnr\u00fccklagen": {
"account_type": "Equity"
},
"9400 Bewertungsreserven uns sonst. unversteuerte R\u00fccklagen": {
"account_type": "Equity"
},
"9600 Private Entnahmen": {"account_type": "Equity"},
"9610 Privatsteuern": {"account_type": "Equity"},
"9700 Einlagen stiller Gesellschafter ": {"account_type": "Equity"},
"9900 Evidenzkonto": {"account_type": "Equity"},
"9800 Er\u00f6ffnungsbilanzkonto (EBK)": {"account_type": "Equity"},
"9880 Jahresergebnis laut Gewinn- und Verlustrechnung (G+V)": {"account_type": "Equity"},
"9850 Schlussbilanzkonto (SBK)": {"account_type": "Round Off"},
"9190 nicht eingeforderte ausstehende Einlagen und berechtigte Entnahmen von Gesellschaftern": {
"account_type": "Equity"
},
"root_type": "Equity"
}
}
}

View File

@@ -24,11 +24,11 @@ erpnext.accounts.PurchaseInvoice = erpnext.buying.BuyingController.extend({
if(!doc.is_return) {
if(doc.docstatus==1) {
if(doc.outstanding_amount < 0) {
if(doc.outstanding_amount > 0) {
this.frm.add_custom_button(__('Payment'), this.make_bank_entry, __("Make"));
cur_frm.page.set_inner_btn_group_as_primary(__("Make"));
}
if(Math.abs(flt(doc.outstanding_amount)) < flt(doc.grand_total)) {
if(doc.outstanding_amount >= 0 || Math.abs(flt(doc.outstanding_amount)) < flt(doc.grand_total)) {
cur_frm.add_custom_button(__('Debit Note'), this.make_debit_note, __("Make"));
}
}

View File

@@ -193,7 +193,7 @@
"bold": 0,
"collapsible": 0,
"fieldname": "contact_email",
"fieldtype": "Code",
"fieldtype": "Data",
"hidden": 1,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
@@ -1946,6 +1946,31 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "language",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Print Language",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
@@ -2316,12 +2341,39 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "recurring_id",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Reference Document",
"length": 0,
"no_copy": 1,
"options": "Purchase Invoice",
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "Select the period when the invoice will be generated automatically",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "recurring_type",
"fieldtype": "Select",
"hidden": 0,
@@ -2329,7 +2381,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Recurring Type",
"label": "Frequency",
"length": 0,
"no_copy": 1,
"options": "Monthly\nQuarterly\nHalf-yearly\nYearly",
@@ -2347,60 +2399,8 @@
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "Start date of current invoice's period",
"fieldname": "from_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "From Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "End date of current invoice's period",
"fieldname": "to_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "To Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The day of the month on which auto invoice will be generated e.g. 05, 28 etc",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "repeat_on_day_of_month",
"fieldtype": "Int",
"hidden": 0,
@@ -2425,8 +2425,8 @@
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The date on which recurring invoice will be stop",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "end_date",
"fieldtype": "Date",
"hidden": 0,
@@ -2434,7 +2434,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "End Date",
"label": "Recurring Ends On",
"length": 0,
"no_copy": 1,
"permlevel": 0,
@@ -2447,6 +2447,113 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"fieldname": "submit_on_creation",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Submit on creation",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "notify_by_email",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Notify by email",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring && doc.notify_by_email && doc.recurring_id === doc.name",
"description": "",
"fieldname": "notification_email_address",
"fieldtype": "Code",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Notification Email Address",
"length": 0,
"no_copy": 1,
"options": "Email",
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring && doc.notify_by_email && doc.recurring_id === doc.name",
"fieldname": "recurring_print_format",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Recurring Print Format",
"length": 0,
"no_copy": 0,
"options": "Print Format",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
@@ -2472,11 +2579,63 @@
"width": "50%"
},
{
"allow_on_submit": 0,
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The date on which next invoice will be generated. It is generated on submit.",
"depends_on": "is_recurring",
"description": "",
"fieldname": "from_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "From Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "to_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "To Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "next_date",
"fieldtype": "Date",
"hidden": 0,
@@ -2496,86 +2655,6 @@
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The unique id for tracking all recurring invoices. It is generated on submit.",
"fieldname": "recurring_id",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Recurring Id",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "Enter email id separated by commas, invoice will be mailed automatically on particular date",
"fieldname": "notification_email_address",
"fieldtype": "Code",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Notification Email Address",
"length": 0,
"no_copy": 1,
"options": "Email",
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"fieldname": "recurring_print_format",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Recurring Print Format",
"length": 0,
"no_copy": 0,
"options": "Print Format",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
}
],
"hide_heading": 0,
@@ -2589,7 +2668,7 @@
"istable": 0,
"max_attachments": 0,
"menu_index": 0,
"modified": "2016-02-22 09:32:04.196291",
"modified": "2016-03-03 03:26:44.180505",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Purchase Invoice",
@@ -2714,26 +2793,6 @@
"share": 0,
"submit": 0,
"write": 1
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 1,
"print": 0,
"read": 1,
"report": 0,
"role": "All",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
}
],
"read_only": 0,

View File

@@ -57,7 +57,7 @@ erpnext.accounts.SalesInvoiceController = erpnext.selling.SellingController.exte
return item.is_delivered_by_supplier ? true : false;
})
if(Math.abs(flt(doc.outstanding_amount)) < flt(doc.grand_total)) {
if(doc.outstanding_amount >= 0 || Math.abs(flt(doc.outstanding_amount)) < flt(doc.grand_total)) {
cur_frm.add_custom_button(doc.update_stock ? __('Sales Return') : __('Credit Note'),
this.make_sales_return, __("Make"));
cur_frm.page.set_inner_btn_group_as_primary(__("Make"));

View File

@@ -219,7 +219,7 @@
"bold": 0,
"collapsible": 0,
"fieldname": "contact_email",
"fieldtype": "Code",
"fieldtype": "Data",
"hidden": 1,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
@@ -2257,6 +2257,31 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "language",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Print Language",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
@@ -3026,6 +3051,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Settings",
"length": 0,
"no_copy": 0,
"permlevel": 0,
@@ -3044,7 +3070,7 @@
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.docstatus<2",
"description": "Check if recurring invoice, uncheck to stop recurring or put proper End Date",
"description": "",
"fieldname": "is_recurring",
"fieldtype": "Check",
"hidden": 0,
@@ -3065,12 +3091,39 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "recurring_id",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Reference Document",
"length": 0,
"no_copy": 1,
"options": "Sales Invoice",
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "Select the period when the invoice will be generated automatically",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "recurring_type",
"fieldtype": "Select",
"hidden": 0,
@@ -3078,7 +3131,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Recurring Type",
"label": "Frequency",
"length": 0,
"no_copy": 1,
"options": "\nMonthly\nQuarterly\nHalf-yearly\nYearly",
@@ -3096,60 +3149,8 @@
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "Start date of current invoice's period",
"fieldname": "from_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "From Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "End date of current invoice's period",
"fieldname": "to_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "To Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The day of the month on which auto invoice will be generated e.g. 05, 28 etc ",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "repeat_on_day_of_month",
"fieldtype": "Int",
"hidden": 0,
@@ -3174,8 +3175,8 @@
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The date on which recurring invoice will be stop",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "end_date",
"fieldtype": "Date",
"hidden": 0,
@@ -3200,16 +3201,19 @@
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "column_break12",
"fieldtype": "Column Break",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"fieldname": "submit_on_creation",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Submit on creation",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
@@ -3217,67 +3221,41 @@
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0,
"width": "50%"
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The date on which next invoice will be generated. It is generated on submit.\n",
"fieldname": "next_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Next Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The unique id for tracking all recurring invoices.\u00a0It is generated on submit.",
"fieldname": "recurring_id",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Recurring Id",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "Enter email id separated by commas, invoice will be mailed automatically on particular date",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "notify_by_email",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Notify by email",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring && doc.notify_by_email && doc.recurring_id === doc.name",
"description": "",
"fieldname": "notification_email_address",
"fieldtype": "Code",
"hidden": 0,
@@ -3303,7 +3281,7 @@
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"depends_on": "eval:doc.is_recurring && doc.notify_by_email && doc.recurring_id === doc.name",
"fieldname": "recurring_print_format",
"fieldtype": "Link",
"hidden": 0,
@@ -3326,6 +3304,109 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "column_break12",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "This Document",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0,
"width": "50%"
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "from_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "From Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "to_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "To Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "next_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Next Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
@@ -3364,7 +3445,7 @@
"istable": 0,
"max_attachments": 0,
"menu_index": 0,
"modified": "2016-02-22 09:34:35.695558",
"modified": "2016-03-03 03:26:22.556219",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Sales Invoice",
@@ -3412,7 +3493,7 @@
},
{
"amend": 0,
"apply_user_permissions": 1,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
@@ -3428,7 +3509,6 @@
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"user_permission_doctypes": "[\"Company\"]",
"write": 0
},
{

View File

@@ -50,36 +50,32 @@ frappe.pages["Accounts Browser"].on_page_load = function(wrapper){
erpnext.account_chart && erpnext.account_chart.make_new();
}, "octicon octicon-plus");
var company_list = $.map(locals[':Company'], function(c) { return c.name; }).sort();
// company-select
wrapper.$company_select = wrapper.page.add_select("Company", [])
wrapper.$company_select = wrapper.page.add_select("Company", company_list)
.change(function() {
var ctype = frappe.get_route()[1] || 'Account';
erpnext.account_chart = new erpnext.AccountsChart(ctype, $(this).val(),
chart_area.get(0), wrapper.page);
})
// load up companies
return frappe.call({
method: 'erpnext.accounts.page.accounts_browser.accounts_browser.get_companies',
callback: function(r) {
wrapper.$company_select.empty();
$.each(r.message, function(i, v) {
$('<option>').html(v).attr('value', v).appendTo(wrapper.$company_select);
});
wrapper.$company_select.val(frappe.defaults.get_user_default("Company") || r.message[0]).change();
}
});
wrapper.$company_select.change();
}
frappe.pages["Accounts Browser"].on_page_show = function(wrapper){
// set route
var ctype = frappe.get_route()[1] || 'Account';
if(erpnext.account_chart && erpnext.account_chart.ctype != ctype) {
if(frappe.route_options) {
if(frappe.route_options.company) {
wrapper.$company_select.val(frappe.route_options.company).change();
}
frappe.route_options = null;
} else if(erpnext.account_chart && erpnext.account_chart.ctype != ctype) {
wrapper.$company_select.change();
}
}
erpnext.AccountsChart = Class.extend({

View File

@@ -92,9 +92,9 @@ def set_contact_details(out, party, party_type):
def set_other_values(out, party, party_type):
# copy
if party_type=="Customer":
to_copy = ["customer_name", "customer_group", "territory"]
to_copy = ["customer_name", "customer_group", "territory", "language"]
else:
to_copy = ["supplier_name", "supplier_type"]
to_copy = ["supplier_name", "supplier_type", "language"]
for f in to_copy:
out[f] = party.get(f)

View File

@@ -19,7 +19,7 @@ def execute(filters=None):
data = []
data.extend(asset or [])
data.extend(liability or [])
data.extend(liability or [])
data.extend(equity or [])
if provisional_profit_loss:
data.append(provisional_profit_loss)
@@ -43,11 +43,11 @@ def get_provisional_profit_loss(asset, liability, equity, period_list, company):
for period in period_list:
effective_liability = 0.0
if liability:
effective_liability += flt(liability[-2][period.key])
effective_liability += flt(liability[-2].get(period.key))
if equity:
effective_liability += flt(equity[-2][period.key])
effective_liability += flt(equity[-2].get(period.key))
provisional_profit_loss[period.key] = flt(asset[-2][period.key]) - effective_liability
provisional_profit_loss[period.key] = flt(asset[-2].get(period.key)) - effective_liability
if provisional_profit_loss[period.key]:
has_value = True

View File

@@ -92,7 +92,7 @@ def get_data(company, root_type, balance_must_be, period_list,
if not accounts:
return None
accounts, accounts_by_name = filter_accounts(accounts)
accounts, accounts_by_name, parent_children_map = filter_accounts(accounts)
company_currency = frappe.db.get_value("Company", company, "default_currency")
@@ -109,6 +109,7 @@ def get_data(company, root_type, balance_must_be, period_list,
calculate_values(accounts_by_name, gl_entries_by_account, period_list, accumulated_values)
accumulate_values_into_parents(accounts, accounts_by_name, period_list, accumulated_values)
out = prepare_data(accounts, balance_must_be, period_list, company_currency)
out = filter_out_zero_value_rows(out, parent_children_map)
if out:
add_total_row(out, balance_must_be, period_list, company_currency)
@@ -134,15 +135,15 @@ def accumulate_values_into_parents(accounts, accounts_by_name, period_list, accu
d.get(period.key, 0.0)
def prepare_data(accounts, balance_must_be, period_list, company_currency):
out = []
data = []
year_start_date = period_list[0]["year_start_date"].strftime("%Y-%m-%d")
year_end_date = period_list[-1]["year_end_date"].strftime("%Y-%m-%d")
for d in accounts:
# add to output
has_value = False
total = 0
row = {
row = frappe._dict({
"account_name": d.account_name,
"account": d.name,
"parent_account": d.parent_account,
@@ -150,7 +151,7 @@ def prepare_data(accounts, balance_must_be, period_list, company_currency):
"year_start_date": year_start_date,
"year_end_date": year_end_date,
"currency": company_currency
}
})
for period in period_list:
if d.get(period.key):
# change sign based on Debit or Credit, since calculation is done using (debit - credit)
@@ -163,11 +164,25 @@ def prepare_data(accounts, balance_must_be, period_list, company_currency):
has_value = True
total += flt(row[period.key])
if has_value:
row["total"] = total
out.append(row)
row["has_value"] = has_value
row["total"] = total
data.append(row)
return data
def filter_out_zero_value_rows(data, parent_children_map):
data_with_value = []
for d in data:
if d.get("has_value"):
data_with_value.append(d)
else:
children = [child.name for child in parent_children_map.get(d.account) or []]
for row in data:
if row.account in children and row.get("has_value"):
data_with_value.append(d)
break
return out
return data_with_value
def add_total_row(out, balance_must_be, period_list, company_currency):
total_row = {
@@ -187,10 +202,11 @@ def add_total_row(out, balance_must_be, period_list, company_currency):
total_row["total"] += flt(row["total"])
row["total"] = ""
out.append(total_row)
if total_row.has_key("total"):
out.append(total_row)
# blank row after Total
out.append({})
# blank row after Total
out.append({})
def get_accounts(company, root_type):
return frappe.db.sql("""select name, parent_account, lft, rgt, root_type, report_type, account_name from `tabAccount`
@@ -218,7 +234,7 @@ def filter_accounts(accounts, depth=10):
add_to_list(None, 0)
return filtered_accounts, accounts_by_name
return filtered_accounts, accounts_by_name, parent_children_map
def sort_root_accounts(roots):
"""Sort root types as Asset, Liability, Equity, Income, Expense"""

View File

@@ -9,7 +9,7 @@ from frappe.utils import flt
def execute(filters=None):
if not filters: filters = frappe._dict()
company_currency = frappe.db.get_value("Company", filters.company, "default_currency")
gross_profit_data = GrossProfitGenerator(filters)
data = []
@@ -19,7 +19,7 @@ def execute(filters=None):
"invoice": ["parent", "customer", "posting_date","item_code", "item_name","item_group", "brand", "description", \
"warehouse", "qty", "base_rate", "buying_rate", "base_amount",
"buying_amount", "gross_profit", "gross_profit_percent", "project_name"],
"item_code": ["item_code", "item_name", "brand", "description", "warehouse", "qty", "base_rate",
"item_code": ["item_code", "item_name", "brand", "description", "qty", "base_rate",
"buying_rate", "base_amount", "buying_amount", "gross_profit", "gross_profit_percent"],
"warehouse": ["warehouse", "qty", "base_rate", "buying_rate", "base_amount", "buying_amount",
"gross_profit", "gross_profit_percent"],
@@ -45,7 +45,7 @@ def execute(filters=None):
row = []
for col in group_wise_columns.get(scrub(filters.group_by)):
row.append(src.get(col))
row.append(company_currency)
data.append(row)
@@ -80,7 +80,7 @@ def get_columns(group_wise_columns, filters):
for col in group_wise_columns.get(scrub(filters.group_by)):
columns.append(column_map.get(col))
columns.append({
"fieldname": "currency",
"label" : _("Currency"),

View File

@@ -269,7 +269,7 @@
"bold": 0,
"collapsible": 0,
"fieldname": "contact_email",
"fieldtype": "Code",
"fieldtype": "Data",
"hidden": 1,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
@@ -2237,6 +2237,33 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"default": "",
"fieldname": "language",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Print Language",
"length": 0,
"no_copy": 0,
"options": "",
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
@@ -2329,7 +2356,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "",
"label": "Settings",
"length": 0,
"no_copy": 0,
"permlevel": 0,
@@ -2368,11 +2395,39 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "recurring_id",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Reference Document",
"length": 0,
"no_copy": 1,
"options": "Purchase Order",
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "recurring_type",
"fieldtype": "Select",
"hidden": 0,
@@ -2380,7 +2435,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Recurring Type",
"label": "Frequency",
"length": 0,
"no_copy": 1,
"options": "Monthly\nQuarterly\nHalf-yearly\nYearly",
@@ -2398,60 +2453,8 @@
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "Start date of current order's period",
"fieldname": "from_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "From Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "End date of current order's period",
"fieldname": "to_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "To Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The day of the month on which auto order will be generated e.g. 05, 28 etc",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "repeat_on_day_of_month",
"fieldtype": "Int",
"hidden": 0,
@@ -2476,8 +2479,8 @@
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The date on which recurring order will be stop",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "end_date",
"fieldtype": "Date",
"hidden": 0,
@@ -2502,17 +2505,19 @@
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "column_break83",
"fieldtype": "Column Break",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"fieldname": "submit_on_creation",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "",
"label": "Submit on creation",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
@@ -2523,50 +2528,26 @@
"unique": 0
},
{
"allow_on_submit": 0,
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "The date on which next invoice will be generated. It is generated on submit.",
"fieldname": "next_date",
"fieldtype": "Date",
"depends_on": "eval:doc.is_recurring && doc.recurring_id === doc.name",
"description": "",
"fieldname": "notify_by_email",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Next Date",
"label": "Notify by email",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"fieldname": "recurring_id",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Recurring Id",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
@@ -2577,8 +2558,8 @@
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"description": "Enter email id separated by commas, order will be mailed automatically on particular date",
"depends_on": "eval:doc.is_recurring && doc.notify_by_email && doc.recurring_id === doc.name",
"description": "",
"fieldname": "notification_email_address",
"fieldtype": "Code",
"hidden": 0,
@@ -2604,7 +2585,7 @@
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"depends_on": "eval:doc.is_recurring==1",
"depends_on": "eval:doc.is_recurring && doc.notify_by_email && doc.recurring_id === doc.name",
"fieldname": "recurring_print_format",
"fieldtype": "Link",
"hidden": 0,
@@ -2626,6 +2607,108 @@
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "column_break83",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "This Document",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "from_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "From Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "to_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "To Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 1,
"bold": 0,
"collapsible": 0,
"depends_on": "is_recurring",
"description": "",
"fieldname": "next_date",
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Next Date",
"length": 0,
"no_copy": 1,
"permlevel": 0,
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
}
],
"hide_heading": 0,
@@ -2638,7 +2721,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2016-02-22 09:32:53.191526",
"modified": "2016-03-03 03:25:59.791729",
"modified_by": "Administrator",
"module": "Buying",
"name": "Purchase Order",
@@ -2743,26 +2826,6 @@
"share": 0,
"submit": 0,
"write": 1
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 1,
"print": 0,
"read": 1,
"report": 0,
"role": "All",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
}
],
"read_only": 0,

View File

@@ -2,6 +2,9 @@
// License: GNU General Public License v3. See license.txt
frappe.ui.form.on("Supplier", {
before_load: function(frm) {
frappe.setup_language_field(frm);
},
refresh: function(frm) {
frm.cscript.make_dashboard(frm.doc);

File diff suppressed because it is too large Load Diff

View File

@@ -216,7 +216,7 @@
"bold": 0,
"collapsible": 0,
"fieldname": "contact_email",
"fieldtype": "Code",
"fieldtype": "Data",
"hidden": 1,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
@@ -1642,6 +1642,31 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"fieldname": "language",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Print Language",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 1,
"print_hide_if_no_value": 0,
"read_only": 1,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
@@ -1783,7 +1808,7 @@
"istable": 0,
"max_attachments": 0,
"menu_index": 0,
"modified": "2016-02-22 09:36:33.641326",
"modified": "2016-03-02 05:09:20.534046",
"modified_by": "Administrator",
"module": "Buying",
"name": "Supplier Quotation",
@@ -1908,26 +1933,6 @@
"share": 0,
"submit": 0,
"write": 1
},
{
"amend": 0,
"apply_user_permissions": 0,
"cancel": 0,
"create": 0,
"delete": 0,
"email": 0,
"export": 0,
"if_owner": 0,
"import": 0,
"permlevel": 1,
"print": 0,
"read": 1,
"report": 0,
"role": "All",
"set_user_permissions": 0,
"share": 0,
"submit": 0,
"write": 0
}
],
"read_only": 0,

View File

@@ -0,0 +1,9 @@
- **Multilingual Print Formats**
- Select language in Customer/Supplier
- Select print language in translations
- Language selector in Print Format preview
- Item name, description translatable via **Custom Translations**
- Publish **Job Openings** on the website and let applicants apply directly from the website
- Cleanup of **recurring orders and invoices**
- Email notifications are now optional
- Auto submit on creation is now also optional

View File

@@ -0,0 +1,5 @@
- Improved logic to hide accounts with zero values in Balance Sheet and Profit & Loss
- Item Code or Warehouse filter mandatory in Stock Balance Report
- For Item table print, combine Item Code, Item Name, Description and additional columns in Description only if **Compact Item Print** is checked in **Features Setup**
- **Disable 'In Words'** from all documents via Setup > Global Settings
- Bug fix: Paid Amount in POS view when the default Mode of Payment is not Cash

View File

@@ -8,22 +8,22 @@ from frappe.utils import cint
def print_settings_for_item_table(doc):
doc.print_templates = {
"description": "templates/print_formats/includes/item_table_description.html",
"qty": "templates/print_formats/includes/item_table_qty.html"
}
doc.hide_in_print_layout = ["item_code", "item_name", "image", "uom", "stock_uom"]
doc.hide_in_print_layout = ["uom", "stock_uom"]
doc.flags.compact_item_print = cint(frappe.db.get_value("Features Setup", None, "compact_item_print"))
doc.flags.compact_item_fields = doc.hide_in_print_layout + ["description", "qty", "rate", "amount"]
doc.flags.show_in_description = []
if doc.flags.compact_item_print:
doc.print_templates["description"] = "templates/print_formats/includes/item_table_description.html"
doc.hide_in_print_layout += ["item_code", "item_name", "image"]
doc.flags.compact_item_fields = ["description", "qty", "rate", "amount"]
doc.flags.show_in_description = []
for df in doc.meta.fields:
if df.fieldtype not in ("Section Break", "Column Break", "Button"):
if not doc.is_print_hide(df.fieldname):
if df.fieldname not in doc.hide_in_print_layout and df.fieldname not in doc.flags.compact_item_fields:
doc.hide_in_print_layout.append(df.fieldname)
doc.flags.show_in_description.append(df.fieldname)

View File

@@ -169,6 +169,7 @@ def item_query(doctype, txt, searchfield, start, page_len, filters):
and tabItem.disabled=0
and (tabItem.end_of_life > %(today)s or ifnull(tabItem.end_of_life, '0000-00-00')='0000-00-00')
and (tabItem.`{key}` LIKE %(txt)s
or tabItem.item_group LIKE %(txt)s
or tabItem.item_name LIKE %(txt)s
or tabItem.description LIKE %(txt)s)
{fcond} {mcond}

View File

@@ -3,13 +3,10 @@ import frappe
import frappe.utils
import frappe.defaults
from frappe.utils import add_days, cint, cstr, date_diff, flt, getdate, nowdate, \
get_first_day, get_last_day, comma_and, split_emails
from frappe.model.naming import make_autoname
from frappe.utils import cint, cstr, getdate, nowdate, \
get_first_day, get_last_day, split_emails
from frappe import _, msgprint, throw
from erpnext.accounts.party import get_party_account, get_due_date, get_party_details
from frappe.model.mapper import get_mapped_doc
month_map = {'Monthly': 1, 'Quarterly': 3, 'Half-yearly': 6, 'Yearly': 12}
date_field_map = {
@@ -38,18 +35,19 @@ def manage_recurring_documents(doctype, next_date=None, commit=True):
recurring_documents = frappe.db.sql("""select name, recurring_id
from `tab{0}` where is_recurring=1
and docstatus=1 and next_date=%s
and (docstatus=1 or docstatus=0) and next_date=%s
and next_date <= ifnull(end_date, '2199-12-31') {1}""".format(doctype, condition), next_date)
exception_list = []
for ref_document, recurring_id in recurring_documents:
if not frappe.db.sql("""select name from `tab%s`
where %s=%s and recurring_id=%s and docstatus=1"""
where %s=%s and recurring_id=%s and (docstatus=1 or docstatus=0)"""
% (doctype, date_field, '%s', '%s'), (next_date, recurring_id)):
try:
reference_doc = frappe.get_doc(doctype, ref_document)
new_doc = make_new_document(reference_doc, date_field, next_date)
send_notification(new_doc)
if reference_doc.notify_by_email:
send_notification(new_doc)
if commit:
frappe.db.commit()
except:
@@ -92,14 +90,15 @@ def make_new_document(reference_doc, date_field, posting_date):
date_field: posting_date,
"from_date": from_date,
"to_date": to_date,
"fiscal_year": get_fiscal_year(posting_date)[0]
"fiscal_year": get_fiscal_year(posting_date)[0],
"next_date": get_next_date(from_date, mcount,cint(reference_doc.repeat_on_day_of_month))
})
# copy document fields
for fieldname in ("owner", "recurring_type", "repeat_on_day_of_month",
"recurring_id", "notification_email_address", "is_recurring", "end_date",
"title", "naming_series", "select_print_heading", "ignore_pricing_rule",
"posting_time", "remarks"):
"posting_time", "remarks", 'submit_on_creation'):
if new_document.meta.get_field(fieldname):
new_document.set(fieldname, reference_doc.get(fieldname))
@@ -110,7 +109,11 @@ def make_new_document(reference_doc, date_field, posting_date):
new_document.run_method("on_recurring", reference_doc=reference_doc)
new_document.submit()
if reference_doc.submit_on_creation:
new_document.submit()
else:
new_document.docstatus=0
new_document.insert()
return new_document
@@ -160,6 +163,9 @@ def validate_recurring_document(doc):
if doc.is_recurring:
validate_notification_email_id(doc)
if not doc.recurring_id and not doc.is_new():
doc.recurring_id = doc.name
if not doc.recurring_type:
msgprint(_("Please select {0}").format(doc.meta.get_label("recurring_type")),
raise_exception=1)
@@ -170,9 +176,6 @@ def validate_recurring_document(doc):
#
def convert_to_recurring(doc, posting_date):
if doc.is_recurring:
if not doc.recurring_id:
frappe.db.set(doc, "recurring_id", doc.name)
set_next_date(doc, posting_date)
elif doc.recurring_id:
@@ -181,18 +184,19 @@ def convert_to_recurring(doc, posting_date):
#
def validate_notification_email_id(doc):
if doc.notification_email_address:
email_list = split_emails(doc.notification_email_address.replace("\n", ""))
if doc.notify_by_email:
if doc.notification_email_address:
email_list = split_emails(doc.notification_email_address.replace("\n", ""))
from frappe.utils import validate_email_add
for email in email_list:
if not validate_email_add(email):
throw(_("{0} is an invalid email address in 'Notification \
Email Address'").format(email))
from frappe.utils import validate_email_add
for email in email_list:
if not validate_email_add(email):
throw(_("{0} is an invalid email address in 'Notification \
Email Address'").format(email))
else:
frappe.throw(_("'Notification Email Addresses' not specified for recurring %s") \
% doc.doctype)
else:
frappe.throw(_("'Notification Email Addresses' not specified for recurring %s") \
% doc.doctype)
def set_next_date(doc, posting_date):
""" Set next date on which recurring document will be created"""
@@ -200,7 +204,7 @@ def set_next_date(doc, posting_date):
if not doc.repeat_on_day_of_month:
msgprint(_("Please enter 'Repeat on Day of Month' field value"), raise_exception=1)
next_date = get_next_date(posting_date, month_map[doc.recurring_type],
next_date = doc.next_date or get_next_date(doc.from_date, month_map[doc.recurring_type],
cint(doc.repeat_on_day_of_month))
frappe.db.set(doc, 'next_date', next_date)

View File

@@ -15,6 +15,7 @@ def test_recurring_document(obj, test_records):
base_doc.update({
"is_recurring": 1,
"submit_on_create": 1,
"recurring_type": "Monthly",
"notification_email_address": "test@example.com, test1@example.com, test2@example.com",
"repeat_on_day_of_month": getdate(today).day,
@@ -112,7 +113,7 @@ def _test_recurring_document(obj, base_doc, date_field, first_and_last_day):
def _test(i):
obj.assertEquals(i+1, frappe.db.sql("""select count(*) from `tab%s`
where recurring_id=%s and docstatus=1""" % (base_doc.doctype, '%s'),
where recurring_id=%s and (docstatus=1 or docstatus=0)""" % (base_doc.doctype, '%s'),
(base_doc.recurring_id))[0][0])
next_date = get_next_date(base_doc.get(date_field), no_of_months,
@@ -121,7 +122,7 @@ def _test_recurring_document(obj, base_doc, date_field, first_and_last_day):
manage_recurring_documents(base_doc.doctype, next_date=next_date, commit=False)
recurred_documents = frappe.db.sql("""select name from `tab%s`
where recurring_id=%s and docstatus=1 order by name desc"""
where recurring_id=%s and (docstatus=1 or docstatus=0) order by name desc"""
% (base_doc.doctype, '%s'), (base_doc.recurring_id))
obj.assertEquals(i+2, len(recurred_documents))

View File

@@ -18,6 +18,7 @@
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "",
@@ -42,6 +43,7 @@
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Series",
@@ -68,6 +70,7 @@
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Opportunity From",
@@ -95,6 +98,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 0,
"label": "Customer",
@@ -122,6 +126,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 0,
"label": "Lead",
@@ -149,6 +154,7 @@
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Customer / Lead Name",
@@ -172,6 +178,7 @@
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"length": 0,
@@ -196,6 +203,7 @@
"fieldtype": "Data",
"hidden": 1,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Title",
@@ -221,6 +229,7 @@
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Opportunity Type",
@@ -248,6 +257,7 @@
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Status",
@@ -275,6 +285,7 @@
"fieldtype": "Small Text",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Lost Reason",
@@ -298,6 +309,7 @@
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "With Items",
@@ -323,6 +335,7 @@
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "",
@@ -349,6 +362,7 @@
"fieldtype": "Table",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Items",
@@ -377,6 +391,7 @@
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Contact Info",
@@ -402,6 +417,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 0,
"label": "Customer / Lead Address",
@@ -426,6 +442,7 @@
"fieldtype": "Small Text",
"hidden": 1,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Address",
@@ -453,6 +470,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 1,
"label": "Territory",
@@ -479,6 +497,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 0,
"label": "Customer Group",
@@ -505,6 +524,7 @@
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"length": 0,
@@ -528,6 +548,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 0,
"label": "Contact Person",
@@ -553,6 +574,7 @@
"fieldtype": "Small Text",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Contact",
@@ -574,9 +596,10 @@
"collapsible": 0,
"depends_on": "eval:doc.lead || doc.customer",
"fieldname": "contact_email",
"fieldtype": "Small Text",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Contact Email",
@@ -601,6 +624,7 @@
"fieldtype": "Small Text",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Contact Mobile No",
@@ -625,6 +649,7 @@
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Source",
@@ -650,6 +675,7 @@
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Source",
@@ -677,6 +703,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Campaign",
@@ -703,6 +730,7 @@
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"length": 0,
@@ -727,6 +755,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 0,
"label": "Company",
@@ -754,6 +783,7 @@
"fieldtype": "Date",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Opportunity Date",
@@ -780,6 +810,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 0,
"label": "Fiscal Year",
@@ -807,6 +838,7 @@
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Next Contact",
@@ -832,6 +864,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 1,
"in_list_view": 0,
"label": "Next Contact By",
@@ -860,6 +893,7 @@
"fieldtype": "Datetime",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Next Contact Date",
@@ -885,6 +919,7 @@
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"length": 0,
@@ -909,6 +944,7 @@
"fieldtype": "Small Text",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "To Discuss",
@@ -934,6 +970,7 @@
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 1,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Amended From",
@@ -964,7 +1001,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2016-02-03 01:10:50.963569",
"modified": "2016-03-02 05:12:15.429804",
"modified_by": "Administrator",
"module": "CRM",
"name": "Opportunity",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 564 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 632 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 284 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 627 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 592 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 769 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 680 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 367 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -10,6 +10,7 @@ Um einen neuen Buchungssatz zu erstellen, gehen Sie zu:
<img class="screenshot" alt="Buchungssatz" src="{{docs_base_url}}/assets/img/accounts/journal-entry.png">
In einem Buchungssatz müssen Sie folgendes tun:
* Die Belegart über das DropDown-Menü auswählen.
* Zeilen für die einzelnen Buchungen hinzufügen. In jeder Zeile müssen Sie folgendes Angeben:
* Das Konto, das betroffen ist.

View File

@@ -23,6 +23,6 @@ Um Ärgernisse bei der Installation von Instanzen zu vermeiden, ist ERPNext als
### 4\. Installieren Sie ERPNext auf Ihrem Unix/Linux/Mac-Rechner
Wenn Sie sich mit der Installation von Anwendungen auf *nix-Plattformen auskennen, lesen Sie die Anweisungen zur Installation des [Frappe Bench](https://github.com/frappe/frappe-bench).
Wenn Sie sich mit der Installation von Anwendungen auf *nix-Plattformen auskennen, lesen Sie die Anweisungen zur Installation des [Frappe Bench](https://github.com/frappe/bench).
{next}

View File

@@ -16,6 +16,6 @@ Now, the system will not allow to make any accounting entries before set date. I
<img alt="Frozen Date Error" class="screenshot" src="{{docs_base_url}}/assets/img/articles/frozen-date-2.png">
You can still allow user with certain role to create/edit entries beyound accounts frozen date. You can set that Role in the Account Settings itself.
You can still allow user with certain role to create/edit entries within accounts frozen date. You can set that Role in the Account Settings itself.
<img alt="Frozen Date Error" class="screenshot" src="{{docs_base_url}}/assets/img/articles/frozen-date-3.png">
<img alt="Frozen Date Error" class="screenshot" src="{{docs_base_url}}/assets/img/articles/frozen-date-3.png">

View File

@@ -1,6 +1,6 @@
#Managing Transactions In Multiple Currency
In ERPNext, transactions can be created in the base currency as well as in parties (customer or supplier) currency. In transaction is created in the parties currency, their currency symbol is updated in the print foramt as well.
In ERPNext, transactions can be created in the base currency as well as in parties (customer or supplier) currency. If transaction is created in the parties currency, their currency symbol is updated in the print format as well.
Let's consider a Sales Invoice, where your base currency is of a Company is USD and party currency is EUR.
@@ -14,7 +14,7 @@ Select Customer from the Customer master. If default Currency is updated in the
#### Step 3: Exchange Rate
Currenct Exchange between between base currency and customer currency will auto-fetch.
Currency Exchange between base currency and customer currency will auto-fetch.
<img alt="Accounts Frozen Date" class="screenshot" src="{{docs_base_url}}/assets/img/articles/multiple-currency-1.gif">
@@ -34,5 +34,5 @@ If you have come to terms with party to follow standard exchange rate throughout
`Accounts > Setup > Currency Exchange`
If system find Exchange Rate master for any cuurrecy, it is given preference over currency exchnage rate.
If system find Exchange Rate master for any currency, it is given preference over currency exchange rate.

View File

@@ -1,9 +1,9 @@
#Delivery from Sales Invoice
If you have items delivery and invoicing happening at the same time, you can create delivery from with Sales Invocice itself. Sales Invoice has field called **Update Stock**, just before Item table. If this field is checked, on submission of Sales Invoice, stock of Item will be deducted from selected Warehouse.
If you have items delivery and invoicing happening at the same time, you can create delivery from with Sales Invoice itself. Sales Invoice has field called **Update Stock**, just before Item table. If this field is checked, on submission of Sales Invoice, stock of Item will be deducted from selected Warehouse.
<img alt="Update Stock" class="screenshot" src="{{docs_base_url}}/assets/img/articles/update-stock.png">
On checking Update Stock, Sales Invoice Item will show relevant fields like Warehouse, Serial No., Batch No., Item valuation etc.
On submission of Sales Invoice, with general ledger posting, stock ledger posting will happen as well.
On submission of Sales Invoice, with general ledger posting, stock ledger posting will happen as well.

View File

@@ -1,4 +1,4 @@
#WIthdrawing Salary from Owner's Equity Account
#Withdrawing Salary from Owner's Equity Account
### Question
@@ -18,4 +18,4 @@ Example journal entry (using Journal Voucher in ERPNext) for a withdrawal of $10
1. Credit **Cash** $1000
2. Debit **Owner's Draws** $1000
<!-- markdown -->
<!-- markdown -->

View File

@@ -21,7 +21,7 @@ In ERPNext after making all the special entries via Journal Entry for the curren
<img class="screenshot" alt="Period Closing Voucher" src="{{docs_base_url}}/assets/img/accounts/period-closing-voucher.png">
This voucher will transfer Profit or Loss (availed from P&L statment) to Closing Account Head. You should select a libility account like Reserves and Surplus, or Capital Fund account as Closing Account.
This voucher will transfer Profit or Loss (availed from P&L statment) to Closing Account Head. You should select a liability account like Reserves and Surplus, or Capital Fund account as Closing Account.
The Period Closing Voucher will make accounting entries (GL Entry) making all your Income and Expense Accounts zero and transferring Profit/Loss balance to the Closing Account.

View File

@@ -16,7 +16,7 @@ share the Customer, Supplier and Item records.
#### Customer
Represents a customer. A Customer can be an individual or an organizations.
Represents a customer. A Customer can be an individual or an organization.
You can create multiple Contacts and Addresses for each Customer.
> Selling > Customer

View File

@@ -30,6 +30,6 @@ Image](https://erpnext.com/download)
### 4\. Install ERPNext on your Unix/Linux/Mac machine
If you are familiar to installing applications on *nix platforms, read the instructions on how to install using [Frappe Bench](https://github.com/frappe/frappe-bench).
If you are familiar to installing applications on *nix platforms, read the instructions on how to install using [Frappe Bench](https://github.com/frappe/bench).
{next}

View File

@@ -2,7 +2,7 @@
In each document, you can group fields by "levels". Each group of field is denoted by a unique number (0, 1, 2, 3 etc.). A separate set of permission rules can be applied to each field group. By default all fields are of level 0.
Perm Level for a field can be defined in the [Customize Form](docs_base_url}}/user/manual/en/customize-erpnext/customize-form.html).
Perm Level for a field can be defined in the [Customize Form]({{docs_base_url}}/user/manual/en/customize-erpnext/customize-form.html).
<img alt="Perm Level Field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/perm-level-1.gif">

View File

@@ -1,6 +1,6 @@
# Bulk Renaming of Records
You can rename a document if ERPNext (if it is allowed) by going to **Menu > Rename** in the document.
You can rename a document in ERPNext (if it is allowed) by going to **Menu > Rename** in the document.
Alternatively, if you want to rename a whole bunch of records, just go to:

View File

@@ -1,4 +1,4 @@
Item Price is the record in which you can log sellig and buying rate of an item.
Item Price is the record in which you can log selling and buying rate of an item.
There are two ways to reach to new Item Price form.

View File

@@ -1,10 +1,9 @@
#Adding Attachments to Outgoing Messages
ERPNext has in-built file manage system. Click [here](https://erpnext.com/kb/tools/managing-attachments) to learn more on how attachments are managed in ERPNext.
ERPNext has in-built file manager. Click [here]({{docs_base_url}}/user/videos/learn/file-manager.html) to learn more on how attachments are managed in ERPNext.
If you have some files attached in your transaction (say Purchase Order), which needs to be emailed with Purchase Order details. When click on Email option, at the end of the Communication dialog box, you will find all the attachments listed with check-box option. You should check files which needs to be emailed as an attachment to recipient.
![Emailing Attachments]({{docs_base_url}}/assets/img/articles/$SGrab_422.png)
If you have file attached to the document (say Purchase Order), and same file needs to be emailed as attachment, following is how you can achieve it.
<img alt="Emailing Attachments" class="screenshot" src="{{docs_base_url}}/assets/img/articles/email-file-attachment.gif">
<!-- markdown -->

View File

@@ -0,0 +1,36 @@
#Adding File as a Attachment
ERPNext allows to attach files with documents. User with a read permission on particular document will also be able to access files attached with it.
###Attach New File
There are several ways to attach file to the document.
####From Browser
<img alt="Sales Order File Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/attach-file-1.gif">
####By drag and drop
<img alt="Sales Order File Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/attach-file-2.gif">
Click on Attach to browse and select the file.
####Link
If you use separate server for files, or use online service like Dropbox, you can attach file by providing link of a particular file.
<img alt="Sales Order Select File" class="screenshot" src="{{docs_base_url}}/assets/img/articles/attach-file-3.gif">
`For hosted users, limit of 5 MB is applied on file size.`
To ensure there are not many files attached to a document, which can affect your accounts performance, you can set limit as how many files can be attached to a particular document. Click [here]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/increase-max-attachments.html) to learn more about it.
####File Manager
Check following link to learn how files are managed in ERPNext.
<iframe width="660" height="371" src="https://www.youtube.com/embed/4-osLW3E_Rk" frameborder="0" allowfullscreen></iframe>
<!-- markdown -->

View File

@@ -0,0 +1,25 @@
#Bulk Rename
Using renaming tool, you can to rectify/change multiple document ids at once. This tool is only accessible to the User who has System Manager role assigned.
###Rename Tool
You can rename ids of upto 500 records at a time. Following are step to bulk rename bulk records. Let's assume we are renaming Item Codes for the existing items.
#### Step 1: Open Excel File
In a spreadsheet file, enter old Item IDs in the first column, and new Item Ids in the second column. Save spreadsheet file in a CSV format.
<img alt="Data File" class="screenshot" src="{{docs_base_url}}/assets/img/articles/rename-docs-1.png">
#### Step 2: Upload Data File
To upload data file go to,
`Setup > Data > Rename Tool`
Select DocType which you want to rename. Here DocType will be Item. Then Browse and Upload data file.
![Upload Data]({{docs_base_url}}/assets/img/articles/Selection_0173436a8.png)
<!-- markdown -->

View File

@@ -1,27 +1,23 @@
#Checking Link Between Documents
Linked With function in ERPNext allows you checking a document is linked with which other documents. You will find Linked With function in the every document.
Links option shows one document is linked to which other documents. Check Menu for the Links options.
![linked with icon]({{docs_base_url}}/assets/img/articles/Screen Shot 2015-02-10 at 5.32.56 pm.png)
<img alt="Cancel Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/links-1.gif">
####Scenario
If you need to check which Delivery Note and Sales Invoice has been created against Sales Order, you should open Sales Order document, and click on Linked With in it.
![Sales Order Links]({{docs_base_url}}/assets/img/articles/Screen Shot 2015-02-10 at 5.35.44 pm.png)
Since Sales Order is a centralize transaction, using linked-with option in the Sales Order, you can track complete deal, like billing done, purchases made, manufacturing development against this particular order.
If you need that against Sales Order, which Delivery Note and Sales Invoice has been created, you should open Sales Order document, and check Links. Same way, you can also check Purchase Order, and find which Purchase Receipt and Purchase Ivoice is linked with it.
####How It Works?
When you check Linked With in for a Sales Order, it lists all the record where this Sales Order ID is updated. It will not show documents where this Sales Order Id is entered as text, and not in the link field.
When you check Links for a Sales Order, it lists all the record where this Sales Order ID is linked. When Delivery Note is created against Sales Order, then Sales Order link is updated in the Delivery Note Item table.
####Backward Links
If I check Linked With in the Delivery Note, will it list Sales Order created before this delivery note?
If I check Links in the Purchase Receipt, will it list Purchase Order from which this Purchase Receipt was created?
Linked With function works only for the forward linkages. For the backward linkages, you should check current document itself. In the Delivery Note, you can check Item table to see which Sales Order it is linked with.
Links only shows forward linkages. For the backward links, you should check current document itself. In the Purchase Receipt Item table table, you can check which Purchase Order it is linked to.
![Linked With Backward]({{docs_base_url}}/assets/img/articles/Screen Shot 2015-02-10 at 5.36.23 pm.png)
<img alt="Cancel Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/links-2.gif">
<!-- markdown -->

View File

@@ -1,27 +1,29 @@
#Delete Submitted Document
ERPNext allows you to assign deletion permission exclusively to User. Only those users will be able to delete records. Click [here](/user-guide/setting-up/permissions/role-based-permissions) to learn more about permissions.
To be able to delete Submitted document, you should first Cancel. Once canceled, you can delete that document from Menu or from the List View of that Document Type.
To delete any document from system you should cancel all linked documents. For example if you need to delete Sales Order, but Delivery Note and Sales Invoice has already been created against that Sales Order. Then you should cancel and delete documents in reverse order, i.e. Sales Invoice, Delivery Note and then Sales Order. If payment entry was also made against Sales Invoice, then you should first Cancel and Delete that Journal Voucher, and then come to Sales Invoice.
If document which needs to be deleted is also linked to other documents, then you should first Cancel document those document as well. For example if you need to delete Sales Order, but Delivery Note and Sales Invoice has already been created against it. Then you should first cancel and delete documents in reverse order, i.e. Sales Invoice, Delivery Note and then Sales Order.
Delete option is only visible to user having related permission. From Role Permission Manager, you can control and define Delete permission and Role for each Document Type.
Following are step to delete submitted documents.
####1. Cancel Document
####Step 1: Cancel Document
To be able to delete Submitted document, it must be cancelled first. After document is cancelled, you will find option to delete it.
You will find option to Cancel in the submitted document. If document is at draft stage, it can delete directly. Also if document is not submittable, but only save, it can be deleted directly.
![Cancel Sales Order]({{docs_base_url}}/assets/img/articles/Selection_064.png)
<img alt="Cancel Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-submitted-doc-1.png">
####2. Delete Document
####Step 2: Delete Document
After cancellation, go to File menu and click on Delete option.
After cancellation, go to Menu and click on Delete.
![Cancel Sales Order]({{docs_base_url}}/assets/img/articles/Selection_066.png)
<img alt="Delete Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-submitted-doc-2.png">
#### Deleting from List
####Step 3: Deleting from List
For bulk deletion, you can select multiple Cancelled records and delete them at once from the list.
For bulk deletion, you can select multiple Cancelled records and delete at once from the List View.
![Cancel Sales Order List]({{docs_base_url}}/assets/img/articles/Selection_069.png)
<img alt="Delete Doc from List" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-submitted-doc-3.gif">
<!-- markdown -->

View File

@@ -1,17 +1,15 @@
#Duplicate a Record
ERPNext allows you to duplicate existing record. With this, you get values of existing record into new form, and create entries faster.
Duplicate feature helps you to copy values of existing document into new document.
####Scenario
An electronic supplier receives a repeat order from an existing customer. Since new order will have details just like previous order, you can open previous order, and Copy it to create new order faster. On copying, details of the previous transaction will be updated in the new form. You can make changes where needed and submit the transaction.
An electronic supplier receives a repeat order from an existing customer. Since new order will have details just like previous order, you should open previous order, and Duplciate it to create new order faster. On Duplicating, values of the previous transaction will be updated in a new document. You can make changes where needed and submit the document.
You will find Copy option under:
File > Copy
`Menu > Copy`
![Copy]({{docs_base_url}}/assets/img/articles/Order Copy.png)
When Copy function is executed, values are mapped field-by-field from existing to new form.
<img alt="Duplicate" class="screenshot" src="{{docs_base_url}}/assets/img/articles/duplicate.gif">
<!-- markdown -->

View File

@@ -1,11 +1,11 @@
adding-attachments-to-outgoing-messages
adding-attachment-to-outgoing-messages
check-link-between-documents
delete-submitted-document
duplicate-record
managing-attachments
adding-file-as-a-attachment
merging-documents
rename-tool
bulk-rename
renaming-documents
search-filters
search-filter
tree-master-renaming
pos-view

View File

@@ -1,20 +0,0 @@
#Adding Attachments in a Documents
ERPNext allows to attach files with documents like Order, Invoices, Items etc. User with a read permission on particular document will also be able to access files attached with it. For example, Sales Order can have text file attached detailing item description and specification as decided with customers. Also it can be image file of drawing as per which product is to be manufactured.
Open to attach file is at the footer of a form.
![Sales Order File Attachment]({{docs_base_url}}/assets/img/articles/$SGrab_406.png)
Click on Attach to browse and select the file.
![Sales Order Select File]({{docs_base_url}}/assets/img/articles/$SGrab_407.png)
If you maintain separate server for the files, or use online service like Dropbox, you can provide link of a particular file in the document in ERPNext.
![Sales Order File Link]({{docs_base_url}}/assets/img/articles/$SGrab_408.png)
`For hosted users, limit of 1 MB is applied on file size.`
To ensure there are not many files attached against the document, which can lead to your system slowing down, you can set limit as how many files can be attached against particular document. Click [here](https://erpnext.com/kb/customize/increase-max-attachments) to learn more about it.
<!-- markdown -->

View File

@@ -1,32 +1,31 @@
#Merging Documents
Document merging feature is available in ERPNext. You can done this via 'Rename' feature in ERPNext.
For a document, of you have two records which are identical, and meant for common purpose, you can merge them into one record.
Following are step to merge document in existing document. Let's assume we are merging Account Ledger.
Following are step to merge documents. Let's assume we are merging two Accounts.
#### 1: Go to Chart of Account
#### Step 1: Go to Chart of Account
`Accounts > Setup > Chart of Accounts`
`Accounts > Documents > Chart of Accounts`
#### 2: Go to Account
#### Step 2: Go to Account
Click on Rename option of that account, which you want to merge in existing account.
For an Account to be merge, click on "Rename" option.
#### 3: Merge Account
<img alt="Sales Order File Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/merge-docs-1.png">
Enter existing account name in New Name field and check Mark on "Merge with existing" option. Then press 'Rename' button to merge.
#### Step 3: Merge Account
![Account]({{docs_base_url}}/assets/img/articles/Selection_043.png)
In the New Name field, enter another account name with which this account will be merged. Check "Merge with existing" option. Then press 'Rename' button to merge.
Following is how merged account will appear in the Chart of Account master.
![New Account]({{docs_base_url}}/assets/img/articles/Selection_044.png)
<img alt="Sales Order File Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/merge-docs-2.gif">
###Effect of Merging
###Effect of Merging
Merging document affects existing transaction where this record is selected. As well as it will affected on existing document balance.
<div class="well"> Note: You can't merge Group into Ledger documents. As well as Ledger into Group documents. Also this feature is applicable for few documents only.</div>
After Account is merged, new name is updated in the existing transactions where old account was selected.
<div class="well"> Note: Group Account cannot be merged into Child Account and vice versa.</div>
<!-- markdown -->

View File

@@ -1,37 +0,0 @@
#Rename Tool
ERPNext has Renaming Tool which allows you to rectify/change record id for existing records. This facility can be only performed by User with System Manager's role.
There are two ways you can rename records in your account. You can follow the approach based on how many records needs to be renamed.
###Rename Record via Rename Tool
Using this tool you can correct/rectify primary ids of 500 records at a time.
Following are step to rename bulk records in ERPNext. Let's assume we are renaming Item Codes for existing Items.
#### Step 1: Open Excel File
In new excel file enter old Item Ids in one column and enter new Item Ids in exact next column. Then save data file in .csv format.
![Data File]({{docs_base_url}}/assets/img/articles/Selection_018ef32b6.png)
#### Step 2: Upload Data File
To upload data file go to,
`Setup > Data > Rename Tool`
Select DocType which you want to rename. Here DocType will be Item. Then Browse and Upload data file.
![Upload Data]({{docs_base_url}}/assets/img/articles/Selection_0173436a8.png)
Following are the renamed Item Codes.
![New Name]({{docs_base_url}}/assets/img/articles/Selection_019bf0547.png)
###Rename Individual Document
Click [here](https://erpnext.com/kb/tools/renaming-documents) for detailed steps on how to rename document one by one.
<!-- markdown -->

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