File diff dcbef28844d4 → 71e3516c6e42
ExistingProjects/ERPNext.mdwn
Show inline comments
...
 
@@ -6,25 +6,25 @@ Links:
 

	
 
Demo: <https://demo.erpnext.com>
 

	
 
### Evaluation of codebase & development
 

	
 
The framework [wnframework](https://github.com/webnotes/wnframework) is used and seemingly developed in parallel.
 

	
 
The python code does not follow the guidelines in [PEP8](http://www.python.org/dev/peps/pep-0008/).
 

	
 

	
 
#### Database
 

	
 
wnframework contains a database model abstraction which is used in some places, though there are > 2000 places where raw SQL is composed using python's `'foo %' % ('bar')` string formatting. I have managed to cause some minor SQL injections, I have not yet found any places where I can cause significant damage / data loss.
 
wnframework contains a database model abstraction which is used in some places, though there are > 2000 places where raw SQL is composed using python's `'foo %s' % ('bar')` string formatting. I have managed to cause some minor SQL injections, I have not yet found any places where I can cause significant damage / data loss.
 

	
 
Not using a database abstraction model such as SQLAlchemy reduces storage portability and adds security overhead to ensure that no malicious queries can be executed.
 

	
 
In those places I have seen, no input sanitation was performed, although they were only SELECT queries. I suspect that you could alter database contents by modifiying a SELECT query, but I have not managed to do so myself.
 

	
 
### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases
 
- [[Trial Balance Report|UseCases/GeneratingReports#trial-balance]]: [Yes](https://demo.erpnext.com/app.html#trial-balance)
 
- [[Bank Reconciliation Report|UseCases/GeneratingReports#bank-reconcilation]]: [Yes](https://demo.erpnext.com/app.html#Form/Bank%20Reconciliation/Bank%20Reconciliation)
 
- [[Chart of Accounts|UseCases/GeneratingReports#chart-of-accounts]]: [Yes](https://demo.erpnext.com/app.html#Accounts%20Browser/Account)
 
- [[Cash Disbursements Journal|UseCases/GeneratingReports#cash-disbursements]]: FIXME
 
- [[Income Report|UseCases/GeneratingReports#income-report]]: [Kind of](https://demo.erpnext.com/app.html#financial-analytics)
 
- [[Expense Report|UseCases/GeneratingReports#expense-report]]: Yes, shown together with "Income Report" and a graph.