Shareholder and related doctypes (#12215)

* Added doctypes related to shares

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

* Added logic for share transfer

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

* Added report view for share ledger

* Removed share number tracking

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

* Share Balance report added

- math behind Share Balance report needs fixing

* Changes in shareholder

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

* Shareholder

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

* Added tests for Share Transfer

* minor codacy fixes

* Added Shareholder to Party Type

* rate in share ledger & balance report is currency

* First attempt at modelling shares after Item

* Share Manager changes

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

* Shareholder chages

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

* minor changes

* removed share_no child doctype

* Restructured Share Transfer Logic (not tested)

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

* Tested Share Tranfer

* minor fixes

* started new shareholder structure

* modified shareholder

* renamed Shareholder Party to Shareholder

* Shareholder rewrite complete

* new tests for shareholder written

* codacy fixes

* Added documentation
44 files changed
tree: a3361c7a71f49b84883da37cb3b20b178cf1ada6
  1. .github/
  2. erpnext/
  3. test_sites/
  4. travis/
  5. .eslintrc
  6. .gitignore
  7. .swp
  8. .travis.yml
  9. __init__.py
  10. attributions.md
  11. CODE_OF_CONDUCT.md
  12. license.txt
  13. MANIFEST.in
  14. README.md
  15. requirements.txt
  16. setup.py
  17. sponsors.md
README.md

Build Status Gitter

https://erpnext.com

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

ERPNext is built on the Frappé 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 Frappé Technologies Pvt Ltd (Frappé) and Contributors.


Contributing

  1. Issue Guidelines
  2. Pull Request Requirements
  3. Translations
  4. Chart of Accounts

Logo and Trademark

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

Introduction

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

  • 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.

Frappé Trademark Usage Policy

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

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 Frappé Technologies or the ERPNext open source project. For example, a consulting company can describe its business as “123 Web Services, offering ERPNext consulting for small businesses,” but cannot call its business “The ERPNext Consulting Company.”

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 Frappé Technologies for clarification.

(inspired by WordPress)