feat(regional): Add master data to DATEV Export (#18755)

* Add master data to export

* add SQL statements to get customers and suppliers

* make data category a string

* fix SQL error

* fix SQL errors

* unique column names

* add encoding of constants

* get customer primary address and contact

* fix typo

* fix typo

* binary response

* add filename

* add filecontent

* rename account columns

* exclude account groups

* use compression, close file before transfer

* fix StringIO

* add basic tests

* fix assertion, merge test methods

* fix indentation

* relative import of constants

* fix path

* import os

* Add default currency to test company

* root accounts with parent = null

* move account-related things to setup()

* add: test headers

* company and filters become class properties

* add: test csv creation

* (fix): add missing account

* (fix): remove wrong space

* add items to sales invoice

* refactor: create test data

* fix: create cost center

* fix: doctype Accoutn

* fix: make sure account belongs to company

* fix: remove customer group and territory, save on a new line

* create default warehouses

* fix: make Item myself

* fix: item defaults are a list

* fix: use my own warehouse

* fix: use my own expense account

* fix: let you take care of the Sales Invoice Item

* fix: import zipfile

* add TODOs

* fix: workaround for pandas bug

* SQL: utf-8 everywhere to make conversion in tests unnecessary

* tests: zipfile must be encoded string

* fix(tests): invalid start byte

* fix(test): give is_zipfile() the file-like object it expects

* fix(test): fix encoding of colums

* fix(get_transactions): as_dict is 1 by default

* fix(tests): allow empty data

* refactor: rename columns in get_account_names

* fix(pandas): keep sorting columns

* fix: "lineterminator" must be a string

* fix(test): check if cost center exists

* fix: credit limit became a child table

* fix: save company after creation

* insert instead of save

* tests: setup_fiscal_year

* fix(test): import cstr

* fix(tests): fiscal year

* fix: can't concat str to bytes

* fix: make csv-encoding work for py2 and py3

* fix(test): use frappe.as_unicode instead of unicode

* fix: use BytesIO instead of StringIO for py3 compatibility

* fix(tests): use BytesIO instead of StringIO for py3 compatibility
3 files changed
tree: ff33f91e4105839112daeb1c7ac83732739373fb
  1. .github/
  2. .travis/
  3. cypress/
  4. erpnext/
  5. .eslintrc
  6. .gitignore
  7. .pylintrc
  8. .travis.yml
  9. attributions.md
  10. CODE_OF_CONDUCT.md
  11. cypress.json
  12. license.txt
  13. package.json
  14. README.md
  15. requirements.txt
  16. SECURITY.md
  17. setup.py
  18. sponsors.md
  19. yarn.lock
README.md

Build Status Open Source Helpers Coverage Status

https://erpnext.com

Includes: Accounting, Inventory, Manufacturing, CRM, Sales, Purchase, Project Management, HRMS. Requires MariaDB.

ERPNext is built on the Frappe Framework, a full-stack web app framework in Python & JavaScript.


Full Install

The Easy Way: our install script for bench will install all dependencies (e.g. MariaDB). See https://github.com/frappe/bench for more details.

New passwords will be created for the ERPNext "Administrator" user, the MariaDB root user, and the frappe user (the script displays the passwords and saves them to ~/frappe_passwords.txt).

Virtual Image

You can download a virtual image to run ERPNext in a virtual machine on your local system.

System and user credentials are listed on the download page.


License

GNU/General Public License (see license.txt)

The ERPNext code is licensed as GNU General Public License (v3) and the Documentation is licensed as Creative Commons (CC-BY-SA-3.0) and the copyright is owned by Frappe Technologies Pvt Ltd (Frappe) and Contributors.


Contributing

  1. Issue Guidelines
  2. Report Security Vulnerabilities
  3. Pull Request Requirements
  4. Translations
  5. Chart of Accounts

Logo and Trademark

The brand name ERPNext and the logo are trademarks of Frappe Technologies Pvt. Ltd.

Introduction

Frappe Technologies Pvt. Ltd. (Frappe) owns and oversees the trademarks for the ERPNext name and logos. We have developed this trademark usage policy with the following goals in mind:

  • We’d like to make it easy for anyone to use the ERPNext name or logo for community-oriented efforts that help spread and improve ERPNext.
  • We’d like to make it clear how ERPNext-related businesses and projects can (and cannot) use the ERPNext name and logo.
  • We’d like to make it hard for anyone to use the ERPNext name and logo to unfairly profit from, trick or confuse people who are looking for official ERPNext resources.

Frappe Trademark Usage Policy

Permission from Frappe is required to use the ERPNext name or logo as part of any project, product, service, domain or company name.

We will grant permission to use the ERPNext name and logo for projects that meet the following criteria:

  • The primary purpose of your project is to promote the spread and improvement of the ERPNext software.
  • Your project is non-commercial in nature (it can make money to cover its costs or contribute to non-profit entities, but it cannot be run as a for-profit project or business). Your project neither promotes nor is associated with entities that currently fail to comply with the GPL license under which ERPNext is distributed.
  • If your project meets these criteria, you will be permitted to use the ERPNext name and logo to promote your project in any way you see fit with one exception: Please do not use ERPNext as part of a domain name.

Use of the ERPNext name and logo is additionally allowed in the following situations:

All other ERPNext-related businesses or projects can use the ERPNext name and logo to refer to and explain their services, but they cannot use them as part of a product, project, service, domain, or company name and they cannot use them in any way that suggests an affiliation with or endorsement by ERPNext or Frappe Technologies or the ERPNext open source project. For example, a consulting company can describe its business as “123 Web Services, offering ERPNext consulting for small businesses,” but cannot call its business “The ERPNext Consulting Company.”

Similarly, it’s OK to use the ERPNext logo as part of a page that describes your products or services, but it is not OK to use it as part of your company or product logo or branding itself. Under no circumstances is it permitted to use ERPNext as part of a top-level domain name.

We do not allow the use of the trademark in advertising, including AdSense/AdWords.

Please note that it is not the goal of this policy to limit commercial activity around ERPNext. We encourage ERPNext-based businesses, and we would love to see hundreds of them.

When in doubt about your use of the ERPNext name or logo, please contact Frappe Technologies for clarification.

(inspired by WordPress)