diff --git a/accounts/search_criteria/general_ledger/general_ledger.sql b/erpnext/accounts/search_criteria/general_ledger/general_ledger.sql
similarity index 100%
rename from accounts/search_criteria/general_ledger/general_ledger.sql
rename to erpnext/accounts/search_criteria/general_ledger/general_ledger.sql
diff --git a/accounts/search_criteria/general_ledger/general_ledger.txt b/erpnext/accounts/search_criteria/general_ledger/general_ledger.txt
similarity index 100%
rename from accounts/search_criteria/general_ledger/general_ledger.txt
rename to erpnext/accounts/search_criteria/general_ledger/general_ledger.txt
diff --git a/accounts/search_criteria/lease_monthly_future_installment_inflows/__init__.py b/erpnext/accounts/search_criteria/itemwise_purchase_register/__init__.py
similarity index 100%
rename from accounts/search_criteria/lease_monthly_future_installment_inflows/__init__.py
rename to erpnext/accounts/search_criteria/itemwise_purchase_register/__init__.py
diff --git a/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js b/erpnext/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
similarity index 100%
rename from accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
rename to erpnext/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.js
diff --git a/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt b/erpnext/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
similarity index 100%
rename from accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
rename to erpnext/accounts/search_criteria/itemwise_purchase_register/itemwise_purchase_register.txt
diff --git a/accounts/search_criteria/lease_over_due_list/__init__.py b/erpnext/accounts/search_criteria/itemwise_sales_register/__init__.py
similarity index 100%
rename from accounts/search_criteria/lease_over_due_list/__init__.py
rename to erpnext/accounts/search_criteria/itemwise_sales_register/__init__.py
diff --git a/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js b/erpnext/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
similarity index 100%
rename from accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
rename to erpnext/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.js
diff --git a/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt b/erpnext/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
similarity index 100%
rename from accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
rename to erpnext/accounts/search_criteria/itemwise_sales_register/itemwise_sales_register.txt
diff --git a/accounts/search_criteria/lease_overdue_age_wise/__init__.py b/erpnext/accounts/search_criteria/lease_agreement_list/__init__.py
similarity index 100%
rename from accounts/search_criteria/lease_overdue_age_wise/__init__.py
rename to erpnext/accounts/search_criteria/lease_agreement_list/__init__.py
diff --git a/accounts/search_criteria/lease_agreement_list/lease_agreement_list.js b/erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.js
similarity index 100%
rename from accounts/search_criteria/lease_agreement_list/lease_agreement_list.js
rename to erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.js
diff --git a/accounts/search_criteria/lease_agreement_list/lease_agreement_list.py b/erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.py
similarity index 100%
rename from accounts/search_criteria/lease_agreement_list/lease_agreement_list.py
rename to erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.py
diff --git a/accounts/search_criteria/lease_agreement_list/lease_agreement_list.sql b/erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.sql
similarity index 100%
rename from accounts/search_criteria/lease_agreement_list/lease_agreement_list.sql
rename to erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.sql
diff --git a/accounts/search_criteria/lease_agreement_list/lease_agreement_list.txt b/erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.txt
similarity index 92%
rename from accounts/search_criteria/lease_agreement_list/lease_agreement_list.txt
rename to erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.txt
index f47c6095fd..5e84916ffd 100644
--- a/accounts/search_criteria/lease_agreement_list/lease_agreement_list.txt
+++ b/erpnext/accounts/search_criteria/lease_agreement_list/lease_agreement_list.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2011-08-29 13:45:35',
+ 'creation': '2011-07-27 16:17:04',
'docstatus': 0,
- 'modified': '2011-08-29 13:45:35',
+ 'modified': '2011-07-27 16:17:04',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -27,4 +27,4 @@
'doctype': 'Search Criteria',
'name': 'lease_agreement_list'
}
-]
\ No newline at end of file
+]
diff --git a/accounts/search_criteria/lease_receipt_summary_month_wise/__init__.py b/erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/__init__.py
similarity index 100%
rename from accounts/search_criteria/lease_receipt_summary_month_wise/__init__.py
rename to erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/__init__.py
diff --git a/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.js b/erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.js
similarity index 100%
rename from accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.js
rename to erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.js
diff --git a/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.py b/erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.py
similarity index 100%
rename from accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.py
rename to erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.py
diff --git a/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.sql b/erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.sql
similarity index 100%
rename from accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.sql
rename to erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.sql
diff --git a/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.txt b/erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.txt
similarity index 100%
rename from accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.txt
rename to erpnext/accounts/search_criteria/lease_monthly_future_installment_inflows/lease_monthly_future_installment_inflows.txt
diff --git a/accounts/search_criteria/lease_receipts_client_wise/__init__.py b/erpnext/accounts/search_criteria/lease_over_due_list/__init__.py
similarity index 100%
rename from accounts/search_criteria/lease_receipts_client_wise/__init__.py
rename to erpnext/accounts/search_criteria/lease_over_due_list/__init__.py
diff --git a/accounts/search_criteria/lease_over_due_list/lease_over_due_list.js b/erpnext/accounts/search_criteria/lease_over_due_list/lease_over_due_list.js
similarity index 100%
rename from accounts/search_criteria/lease_over_due_list/lease_over_due_list.js
rename to erpnext/accounts/search_criteria/lease_over_due_list/lease_over_due_list.js
diff --git a/accounts/search_criteria/lease_over_due_list/lease_over_due_list.py b/erpnext/accounts/search_criteria/lease_over_due_list/lease_over_due_list.py
similarity index 100%
rename from accounts/search_criteria/lease_over_due_list/lease_over_due_list.py
rename to erpnext/accounts/search_criteria/lease_over_due_list/lease_over_due_list.py
diff --git a/accounts/search_criteria/lease_over_due_list/lease_over_due_list.sql b/erpnext/accounts/search_criteria/lease_over_due_list/lease_over_due_list.sql
similarity index 100%
rename from accounts/search_criteria/lease_over_due_list/lease_over_due_list.sql
rename to erpnext/accounts/search_criteria/lease_over_due_list/lease_over_due_list.sql
diff --git a/accounts/search_criteria/lease_over_due_list/lease_over_due_list.txt b/erpnext/accounts/search_criteria/lease_over_due_list/lease_over_due_list.txt
similarity index 100%
rename from accounts/search_criteria/lease_over_due_list/lease_over_due_list.txt
rename to erpnext/accounts/search_criteria/lease_over_due_list/lease_over_due_list.txt
diff --git a/accounts/search_criteria/lease_yearly_future_installment_inflows/__init__.py b/erpnext/accounts/search_criteria/lease_overdue_age_wise/__init__.py
similarity index 100%
rename from accounts/search_criteria/lease_yearly_future_installment_inflows/__init__.py
rename to erpnext/accounts/search_criteria/lease_overdue_age_wise/__init__.py
diff --git a/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.js b/erpnext/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.js
similarity index 100%
rename from accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.js
rename to erpnext/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.js
diff --git a/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.py b/erpnext/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.py
similarity index 100%
rename from accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.py
rename to erpnext/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.py
diff --git a/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.sql b/erpnext/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.sql
similarity index 100%
rename from accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.sql
rename to erpnext/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.sql
diff --git a/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.txt b/erpnext/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.txt
similarity index 100%
rename from accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.txt
rename to erpnext/accounts/search_criteria/lease_overdue_age_wise/lease_overdue_age_wise.txt
diff --git a/accounts/search_criteria/monthly_ledger_summary_report/__init__.py b/erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/__init__.py
similarity index 100%
rename from accounts/search_criteria/monthly_ledger_summary_report/__init__.py
rename to erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/__init__.py
diff --git a/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.js b/erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.js
similarity index 100%
rename from accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.js
rename to erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.js
diff --git a/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.py b/erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.py
similarity index 100%
rename from accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.py
rename to erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.py
diff --git a/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.sql b/erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.sql
similarity index 100%
rename from accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.sql
rename to erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.sql
diff --git a/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.txt b/erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.txt
similarity index 93%
rename from accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.txt
rename to erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.txt
index 6e1b266ea5..e6da15c270 100644
--- a/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.txt
+++ b/erpnext/accounts/search_criteria/lease_receipt_summary_month_wise/lease_receipt_summary_month_wise.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2011-07-27 18:48:29',
+ 'creation': '2011-07-27 16:17:04',
'docstatus': 0,
- 'modified': '2011-07-28 12:56:35',
+ 'modified': '2011-07-27 16:17:04',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -27,4 +27,4 @@
'doctype': 'Search Criteria',
'name': 'lease_receipt_summary_month_wise'
}
-]
\ No newline at end of file
+]
diff --git a/accounts/search_criteria/payment_receipt_report/__init__.py b/erpnext/accounts/search_criteria/lease_receipts_client_wise/__init__.py
similarity index 100%
rename from accounts/search_criteria/payment_receipt_report/__init__.py
rename to erpnext/accounts/search_criteria/lease_receipts_client_wise/__init__.py
diff --git a/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.js b/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.js
similarity index 100%
rename from accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.js
rename to erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.js
diff --git a/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.py b/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.py
similarity index 100%
rename from accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.py
rename to erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.py
diff --git a/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.sql b/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.sql
similarity index 100%
rename from accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.sql
rename to erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.sql
diff --git a/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.txt b/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.txt
similarity index 99%
rename from accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.txt
rename to erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.txt
index b155b39a6a..71c9b0ead7 100644
--- a/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.txt
+++ b/erpnext/accounts/search_criteria/lease_receipts_client_wise/lease_receipts_client_wise.txt
@@ -28,4 +28,4 @@
'doctype': 'Search Criteria',
'name': 'lease_receipts_client_wise'
}
-]
\ No newline at end of file
+]
diff --git a/accounts/search_criteria/payment_report/__init__.py b/erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/__init__.py
similarity index 100%
rename from accounts/search_criteria/payment_report/__init__.py
rename to erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/__init__.py
diff --git a/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.js b/erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.js
similarity index 100%
rename from accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.js
rename to erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.js
diff --git a/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.py b/erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.py
similarity index 100%
rename from accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.py
rename to erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.py
diff --git a/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.sql b/erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.sql
similarity index 100%
rename from accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.sql
rename to erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.sql
diff --git a/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.txt b/erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.txt
similarity index 100%
rename from accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.txt
rename to erpnext/accounts/search_criteria/lease_yearly_future_installment_inflows/lease_yearly_future_installment_inflows.txt
diff --git a/accounts/search_criteria/progressive_total_excise_duty/__init__.py b/erpnext/accounts/search_criteria/monthly_ledger_summary_report/__init__.py
similarity index 100%
rename from accounts/search_criteria/progressive_total_excise_duty/__init__.py
rename to erpnext/accounts/search_criteria/monthly_ledger_summary_report/__init__.py
diff --git a/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.js b/erpnext/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.js
similarity index 100%
rename from accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.js
rename to erpnext/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.js
diff --git a/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.py b/erpnext/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.py
similarity index 100%
rename from accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.py
rename to erpnext/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.py
diff --git a/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.txt b/erpnext/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.txt
similarity index 100%
rename from accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.txt
rename to erpnext/accounts/search_criteria/monthly_ledger_summary_report/monthly_ledger_summary_report.txt
diff --git a/accounts/search_criteria/purchase_register/__init__.py b/erpnext/accounts/search_criteria/payment_receipt_report/__init__.py
similarity index 100%
rename from accounts/search_criteria/purchase_register/__init__.py
rename to erpnext/accounts/search_criteria/payment_receipt_report/__init__.py
diff --git a/accounts/search_criteria/payment_receipt_report/payment_receipt_report.py b/erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.py
similarity index 100%
rename from accounts/search_criteria/payment_receipt_report/payment_receipt_report.py
rename to erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.py
diff --git a/accounts/search_criteria/payment_receipt_report/payment_receipt_report.sql b/erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.sql
similarity index 100%
rename from accounts/search_criteria/payment_receipt_report/payment_receipt_report.sql
rename to erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.sql
diff --git a/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt b/erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
similarity index 100%
rename from accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
rename to erpnext/accounts/search_criteria/payment_receipt_report/payment_receipt_report.txt
diff --git a/accounts/search_criteria/sales_register/__init__.py b/erpnext/accounts/search_criteria/payment_report/__init__.py
similarity index 100%
rename from accounts/search_criteria/sales_register/__init__.py
rename to erpnext/accounts/search_criteria/payment_report/__init__.py
diff --git a/accounts/search_criteria/payment_report/payment_report.js b/erpnext/accounts/search_criteria/payment_report/payment_report.js
similarity index 100%
rename from accounts/search_criteria/payment_report/payment_report.js
rename to erpnext/accounts/search_criteria/payment_report/payment_report.js
diff --git a/accounts/search_criteria/payment_report/payment_report.py b/erpnext/accounts/search_criteria/payment_report/payment_report.py
similarity index 100%
rename from accounts/search_criteria/payment_report/payment_report.py
rename to erpnext/accounts/search_criteria/payment_report/payment_report.py
diff --git a/accounts/search_criteria/payment_report/payment_report.sql b/erpnext/accounts/search_criteria/payment_report/payment_report.sql
similarity index 100%
rename from accounts/search_criteria/payment_report/payment_report.sql
rename to erpnext/accounts/search_criteria/payment_report/payment_report.sql
diff --git a/accounts/search_criteria/payment_report/payment_report.txt b/erpnext/accounts/search_criteria/payment_report/payment_report.txt
similarity index 100%
rename from accounts/search_criteria/payment_report/payment_report.txt
rename to erpnext/accounts/search_criteria/payment_report/payment_report.txt
diff --git a/accounts/search_criteria/service_tax_credit_account___inputs/__init__.py b/erpnext/accounts/search_criteria/progressive_total_excise_duty/__init__.py
similarity index 100%
rename from accounts/search_criteria/service_tax_credit_account___inputs/__init__.py
rename to erpnext/accounts/search_criteria/progressive_total_excise_duty/__init__.py
diff --git a/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.js b/erpnext/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.js
similarity index 100%
rename from accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.js
rename to erpnext/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.js
diff --git a/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.py b/erpnext/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.py
similarity index 100%
rename from accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.py
rename to erpnext/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.py
diff --git a/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.sql b/erpnext/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.sql
similarity index 100%
rename from accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.sql
rename to erpnext/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.sql
diff --git a/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.txt b/erpnext/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.txt
similarity index 100%
rename from accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.txt
rename to erpnext/accounts/search_criteria/progressive_total_excise_duty/progressive_total_excise_duty.txt
diff --git a/accounts/search_criteria/tds_return/__init__.py b/erpnext/accounts/search_criteria/purchase_register/__init__.py
similarity index 100%
rename from accounts/search_criteria/tds_return/__init__.py
rename to erpnext/accounts/search_criteria/purchase_register/__init__.py
diff --git a/accounts/search_criteria/purchase_register/purchase_register.py b/erpnext/accounts/search_criteria/purchase_register/purchase_register.py
similarity index 100%
rename from accounts/search_criteria/purchase_register/purchase_register.py
rename to erpnext/accounts/search_criteria/purchase_register/purchase_register.py
diff --git a/accounts/search_criteria/purchase_register/purchase_register.txt b/erpnext/accounts/search_criteria/purchase_register/purchase_register.txt
similarity index 100%
rename from accounts/search_criteria/purchase_register/purchase_register.txt
rename to erpnext/accounts/search_criteria/purchase_register/purchase_register.txt
diff --git a/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/__init__.py b/erpnext/accounts/search_criteria/sales_register/__init__.py
similarity index 100%
rename from accounts/search_criteria/total_amout_collection_for_a_period___customerwise/__init__.py
rename to erpnext/accounts/search_criteria/sales_register/__init__.py
diff --git a/accounts/search_criteria/sales_register/sales_register.js b/erpnext/accounts/search_criteria/sales_register/sales_register.js
similarity index 100%
rename from accounts/search_criteria/sales_register/sales_register.js
rename to erpnext/accounts/search_criteria/sales_register/sales_register.js
diff --git a/accounts/search_criteria/sales_register/sales_register.py b/erpnext/accounts/search_criteria/sales_register/sales_register.py
similarity index 100%
rename from accounts/search_criteria/sales_register/sales_register.py
rename to erpnext/accounts/search_criteria/sales_register/sales_register.py
diff --git a/accounts/search_criteria/sales_register/sales_register.txt b/erpnext/accounts/search_criteria/sales_register/sales_register.txt
similarity index 100%
rename from accounts/search_criteria/sales_register/sales_register.txt
rename to erpnext/accounts/search_criteria/sales_register/sales_register.txt
diff --git a/accounts/search_criteria/trial_balance/__init__.py b/erpnext/accounts/search_criteria/service_tax_credit_account___inputs/__init__.py
similarity index 100%
rename from accounts/search_criteria/trial_balance/__init__.py
rename to erpnext/accounts/search_criteria/service_tax_credit_account___inputs/__init__.py
diff --git a/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.js b/erpnext/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.js
similarity index 100%
rename from accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.js
rename to erpnext/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.js
diff --git a/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.py b/erpnext/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.py
similarity index 100%
rename from accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.py
rename to erpnext/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.py
diff --git a/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.sql b/erpnext/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.sql
similarity index 100%
rename from accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.sql
rename to erpnext/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.sql
diff --git a/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.txt b/erpnext/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.txt
similarity index 100%
rename from accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.txt
rename to erpnext/accounts/search_criteria/service_tax_credit_account___inputs/service_tax_credit_account___inputs.txt
diff --git a/analysis/__init__.py b/erpnext/accounts/search_criteria/tds_return/__init__.py
similarity index 100%
rename from analysis/__init__.py
rename to erpnext/accounts/search_criteria/tds_return/__init__.py
diff --git a/accounts/search_criteria/tds_return/tds_return.js b/erpnext/accounts/search_criteria/tds_return/tds_return.js
similarity index 100%
rename from accounts/search_criteria/tds_return/tds_return.js
rename to erpnext/accounts/search_criteria/tds_return/tds_return.js
diff --git a/accounts/search_criteria/tds_return/tds_return.py b/erpnext/accounts/search_criteria/tds_return/tds_return.py
similarity index 100%
rename from accounts/search_criteria/tds_return/tds_return.py
rename to erpnext/accounts/search_criteria/tds_return/tds_return.py
diff --git a/accounts/search_criteria/tds_return/tds_return.sql b/erpnext/accounts/search_criteria/tds_return/tds_return.sql
similarity index 100%
rename from accounts/search_criteria/tds_return/tds_return.sql
rename to erpnext/accounts/search_criteria/tds_return/tds_return.sql
diff --git a/accounts/search_criteria/tds_return/tds_return.txt b/erpnext/accounts/search_criteria/tds_return/tds_return.txt
similarity index 100%
rename from accounts/search_criteria/tds_return/tds_return.txt
rename to erpnext/accounts/search_criteria/tds_return/tds_return.txt
diff --git a/analysis/doctype/__init__.py b/erpnext/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/__init__.py
similarity index 100%
rename from analysis/doctype/__init__.py
rename to erpnext/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/__init__.py
diff --git a/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.js b/erpnext/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.js
similarity index 100%
rename from accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.js
rename to erpnext/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.js
diff --git a/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.py b/erpnext/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.py
similarity index 100%
rename from accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.py
rename to erpnext/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.py
diff --git a/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.txt b/erpnext/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.txt
similarity index 100%
rename from accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.txt
rename to erpnext/accounts/search_criteria/total_amout_collection_for_a_period___customerwise/total_amout_collection_for_a_period___customerwise.txt
diff --git a/analysis/doctype/mis_control/__init__.py b/erpnext/accounts/search_criteria/trial_balance/__init__.py
similarity index 100%
rename from analysis/doctype/mis_control/__init__.py
rename to erpnext/accounts/search_criteria/trial_balance/__init__.py
diff --git a/accounts/search_criteria/trial_balance/trial_balance.js b/erpnext/accounts/search_criteria/trial_balance/trial_balance.js
similarity index 100%
rename from accounts/search_criteria/trial_balance/trial_balance.js
rename to erpnext/accounts/search_criteria/trial_balance/trial_balance.js
diff --git a/accounts/search_criteria/trial_balance/trial_balance.py b/erpnext/accounts/search_criteria/trial_balance/trial_balance.py
similarity index 52%
rename from accounts/search_criteria/trial_balance/trial_balance.py
rename to erpnext/accounts/search_criteria/trial_balance/trial_balance.py
index fb168e57af..994a5b8baa 100644
--- a/accounts/search_criteria/trial_balance/trial_balance.py
+++ b/erpnext/accounts/search_criteria/trial_balance/trial_balance.py
@@ -1,13 +1,13 @@
# Columns
#----------
-cl = [['Account','Data', '200px'],['Debit/Credit', 'Data', '100px'], ['Group/Ledger', 'Data', '100px'], ['Is PL Account', 'Data', '100px'], ['Opening','Data', '100px'],['Debit', 'Data', '100px'],['Credit', 'Data', '100px'],['Closing', 'Data', '100px']]
+cl = [['Account','Data', '200px'],['Debit/Credit', 'Data', '100px'], ['Group/Ledger', 'Data', '100px'], ['Is PL Account', 'Data', '100px'], ['Opening (Dr)','Data', '100px'], ['Opening (Cr)','Data', '100px'],['Debit', 'Data', '100px'],['Credit', 'Data', '100px'],['Closing (Dr)', 'Data', '100px'],['Closing (Cr)', 'Data', '100px']]
for c in cl:
colnames.append(c[0])
coltypes.append(c[1])
colwidths.append(c[2])
coloptions.append('')
col_idx[c[0]] = len(colnames)-1
-
+
# transaction date
# ------------------
if not filter_values.get('transaction_date') or not filter_values.get('transaction_date1'):
@@ -23,7 +23,7 @@ if not sql("select name from `tabFiscal Year` where %s between year_start_date a
msgprint("From Date and To Date must be within same year")
raise Exception
-# get year of the from date and to date
+# get year of the from date and to date
# --------------------------------------
from_date_year = sql("select name from `tabFiscal Year` where %s between year_start_date and date_sub(date_add(year_start_date,interval 1 year), interval 1 day)",add_days(from_date, -1))
from_date_year = from_date_year and from_date_year[0][0] or ''
@@ -33,11 +33,17 @@ to_date_year = to_date_year and to_date_year[0][0] or ''
# if output is more than 500 lines then it will ask to export
# ------------------------------------------------------------
-if len(res) > 500 and from_export == 0:
+if len(res) > 1000 and from_export == 0:
msgprint("This is a very large report and cannot be shown in the browser as it is likely to make your browser very slow.Please click on 'Export' to open in a spreadsheet")
raise Exception
+
-total_debit, total_credit = 0,0
+acc_dict = {}
+for t in sql("select name, debit_or_credit, is_pl_account, lft, rgt, group_or_ledger from tabAccount where docstatus != 2 and company = %s", filter_values['company']):
+ acc_dict[t[0]] = [t[1], t[2], t[3], t[4], t[5]]
+
+
+total_debit, total_credit, total_opening_dr, total_opening_cr, total_closing_dr, total_closing_cr = 0, 0, 0, 0, 0, 0
glc = get_obj('GL Control')
# Main logic
@@ -45,47 +51,55 @@ glc = get_obj('GL Control')
for r in res:
# Fetch account details
acc = r[col_idx['Account']].strip()
- acc_det = sql("select debit_or_credit, is_pl_account, lft, rgt, group_or_ledger from tabAccount where name = '%s'" % acc)
- r.append(acc_det[0][0])
- r.append(acc_det[0][4])
- r.append(acc_det[0][1])
+ r.append(acc_dict[acc][0])
+ r.append(acc_dict[acc][4])
+ r.append(acc_dict[acc][1])
#if shows group and ledger both but without group balance
- if filter_values.get('show_group_ledger') == 'Both But Without Group Balance' and acc_det[0][4] == 'Group':
+ if filter_values.get('show_group_ledger') == 'Both But Without Group Balance' and acc_dict[acc][4] == 'Group':
for i in range(4):
r.append('')
continue
- # opening balance
- if from_date_year:
- debit_on_fromdate, credit_on_fromdate, opening = glc.get_as_on_balance(acc, from_date_year, add_days(from_date, -1), acc_det[0][0], acc_det[0][2], acc_det[0][3])
- else: # if there is no previous year in system
- debit_on_fromdate, credit_on_fromdate, opening = 0, 0, 0
+ # Opening Balance
+ #-----------------------------
+ if from_date_year == to_date_year:
+ debit_on_fromdate, credit_on_fromdate, opening = glc.get_as_on_balance(acc, from_date_year, add_days(from_date, -1), acc_dict[acc][0], acc_dict[acc][2], acc_dict[acc][3]) # opening = closing of prev_date
+ elif acc_dict[acc][1] == 'No': # if there is no previous year in system and not pl account
+ opening = sql("select opening from `tabAccount Balance` where account = %s and period = %s", (acc, to_date_year))
+ debit_on_fromdate, credit_on_fromdate, opening = 0, 0, flt(opening[0][0])
+ else: # if pl account and there is no previous year in system
+ debit_on_fromdate, credit_on_fromdate, opening = 0,0,0
# closing balance
- debit_on_todate, credit_on_todate, closing = glc.get_as_on_balance(acc, to_date_year, to_date, acc_det[0][0], acc_det[0][2], acc_det[0][3])
+ #--------------------------------
+ debit_on_todate, credit_on_todate, closing = glc.get_as_on_balance(acc, to_date_year, to_date, acc_dict[acc][0], acc_dict[acc][2], acc_dict[acc][3])
# transaction betn the period
- if from_date_year == to_date_year:
- debit = flt(debit_on_todate) - flt(debit_on_fromdate)
- credit = flt(credit_on_todate) - flt(credit_on_fromdate)
- else: # if from date is start date of the year
- debit = flt(debit_on_todate)
- credit = flt(credit_on_todate)
-
+ #----------------------------------------
+
+ debit = flt(debit_on_todate) - flt(debit_on_fromdate)
+ credit = flt(credit_on_todate) - flt(credit_on_fromdate)
+
+ # Debit / Credit
+ if acc_dict[acc][0] == 'Credit':
+ opening, closing = -1*opening, -1*closing
+
+ # Totals
+ total_opening_dr += opening>0 and flt(opening) or 0
+ total_opening_cr += opening<0 and -1*flt(opening) or 0
total_debit += debit
total_credit += credit
-
- if acc_det[0][1] == 'Yes' and from_date_year != to_date_year:
- opening = 0
-
- if acc_det[0][0] == 'Credit':
- opening, closing = -1*opening, -1*closing
+ total_closing_dr += closing>0 and flt(closing) or 0
+ total_closing_cr += closing<0 and -1*flt(closing) or 0
- r.append(flt(opening))
+ # Append in rows
+ r.append(flt(opening>0 and opening or 0))
+ r.append(flt(opening<0 and -opening or 0))
r.append(flt(debit))
r.append(flt(credit))
- r.append(flt(closing))
+ r.append(flt(closing>0 and closing or 0))
+ r.append(flt(closing<0 and -closing or 0))
out =[]
@@ -94,14 +108,18 @@ for r in res:
# ------------------------------------------------------------------
if filter_values.get('show_zero_balance') != 'No':
out.append(r)
- elif r[col_idx['Opening']] or r[col_idx['Debit']] or r[col_idx['Credit']] or r[col_idx['Closing']] or (r[col_idx['Group/Ledger']] == 'Group' and filter_values.get('show_group_ledger') == 'Both But Without Group Balance'):
+ elif r[col_idx['Opening (Dr)']] or r[col_idx['Opening (Cr)']] or r[col_idx['Debit']] or r[col_idx['Credit']] or r[col_idx['Closing (Dr)']] or r[col_idx['Closing (Cr)']] or (r[col_idx['Group/Ledger']] == 'Group' and filter_values.get('show_group_ledger') == 'Both But Without Group Balance'):
out.append(r)
-
+
# Total Debit / Credit
# --------------------------
if filter_values.get('show_group_ledger') in ['Only Ledgers', 'Both But Without Group Balance']:
t_row = ['' for i in range(len(colnames))]
t_row[col_idx['Account']] = 'Total'
- t_row[col_idx['Debit']] = total_debit
- t_row[col_idx['Credit']] = total_credit
+ t_row[col_idx['Opening (Dr)']] = '%.2f' % total_opening_dr
+ t_row[col_idx['Opening (Cr)']] = '%.2f' % total_opening_cr
+ t_row[col_idx['Debit']] = '%.2f' % total_debit
+ t_row[col_idx['Credit']] = '%.2f' % total_credit
+ t_row[col_idx['Closing (Dr)']] = '%.2f' % total_closing_dr
+ t_row[col_idx['Closing (Cr)']] = '%.2f' % total_closing_cr
out.append(t_row)
diff --git a/accounts/search_criteria/trial_balance/trial_balance.txt b/erpnext/accounts/search_criteria/trial_balance/trial_balance.txt
similarity index 100%
rename from accounts/search_criteria/trial_balance/trial_balance.txt
rename to erpnext/accounts/search_criteria/trial_balance/trial_balance.txt
diff --git a/analysis/doctype/ta_control/__init__.py b/erpnext/accounts/search_criteria/voucher_wise_tax_details/__init__.py
old mode 100755
new mode 100644
similarity index 100%
rename from analysis/doctype/ta_control/__init__.py
rename to erpnext/accounts/search_criteria/voucher_wise_tax_details/__init__.py
diff --git a/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.js b/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.js
new file mode 100644
index 0000000000..a89fa86083
--- /dev/null
+++ b/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.js
@@ -0,0 +1,47 @@
+report.customize_filters = function() {
+ this.hide_all_filters();
+
+ //Add filter
+ this.add_filter({fieldname:'based_on', label:'Based On', fieldtype:'Select', options:'Sales Order'+NEWLINE+'Delivery Note'+NEWLINE+'Sales Invoice', report_default:'Sales Invoice', ignore : 1,parent:'RV Tax Detail', single_select :1, in_first_page:1});
+
+ this.add_filter({fieldname:'posting_date', label:'Date', fieldtype:'Date', options:'', ignore : 1,parent:'RV Tax Detail', in_first_page:1});
+
+ this.add_filter({fieldname:'voucher_id', label:'Voucher Id', fieldtype:'Data', options:'', ignore : 1,parent:'RV Tax Detail', in_first_page:1});
+
+ this.add_filter({fieldname:'tax_account', label:'Tax Account', fieldtype:'Link', options:'Account', ignore : 1,parent:'RV Tax Detail', in_first_page:1});
+}
+
+
+// hide sections
+//--------------------------------------
+this.mytabs.items['More Filters'].hide();
+this.mytabs.items['Select Columns'].hide();
+
+// Get query
+//--------------------------------------
+report.get_query = function() {
+ based_on = this.get_filter('RV Tax Detail', 'Based On').get_value();
+ from_date = this.get_filter('RV Tax Detail', 'From Date').get_value();
+ to_date = this.get_filter('RV Tax Detail', 'To Date').get_value();
+ vid = this.get_filter('RV Tax Detail', 'Voucher Id').get_value();
+ acc = this.get_filter('RV Tax Detail', 'Tax Account').get_value();
+
+ date_fld = 'transaction_date';
+ if(based_on == 'Sales Invoice') {
+ based_on = 'Receivable Voucher';
+ date_fld = 'voucher_date';
+ }
+
+ sp_cond = '';
+ if (from_date) sp_cond += repl(' AND t1.%(dt)s >= "%(from_date)s"', {dt:date_fld, from_date:from_date});
+ if (to_date) sp_cond += repl(' AND t1.%(dt)s <= "%(to_date)s"', {dt:date_fld, to_date:to_date});
+ if (vid) sp_cond += repl(' AND t1.name LIKE "%%(voucher)s%"', {voucher:vid});
+ if (acc) sp_cond += repl(' AND t2.account_head = "%(acc)s"', {acc:acc});
+
+ return repl('SELECT t1.`name`, t1.`%(dt)s`, t1.`customer_name`, t1.net_total, t2.account_head, t2.description, t2.rate, t2.tax_amount \
+ FROM `tab%(parent)s` t1, `tabRV Tax Detail` t2 \
+ WHERE t1.docstatus=1 AND t2.`parenttype` = "%(parent)s" \
+ AND t2.`parent` = t1.`name` \
+ %(cond)s ORDER BY t1.`name` DESC, t1.%(dt)s DESC', {parent:based_on, cond:sp_cond, dt:date_fld});
+}
+
diff --git a/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.py b/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.py
new file mode 100644
index 0000000000..91e90f2fe4
--- /dev/null
+++ b/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.py
@@ -0,0 +1,22 @@
+if filter_values.get('based_on') == 'Sales Invoice':
+ based_on_dt = 'Receivable Voucher'
+else:
+ based_on_dt = filter_values.get('based_on')
+
+cols = [
+ [filter_values.get('based_on'), 'Link','150px', based_on_dt],
+ ['Transaction Date', 'Date', '120px', ''],
+ ['Customer', 'Link','150px','Customer'],
+ ['Net Total', 'Currency', '80px', ''],
+ ['Tax Account', 'Link','150px','Account'],
+ ['Description', 'Text','120px',''],
+ ['Tax Rate', 'Currency', '80px', ''],
+ ['Tax Amount', 'Currency', '80px', '']
+]
+
+for c in cols:
+ colnames.append(c[0])
+ coltypes.append(c[1])
+ colwidths.append(c[2])
+ coloptions.append(c[3])
+ col_idx[c[0]] = len(colnames)-1
diff --git a/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt b/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt
new file mode 100644
index 0000000000..c152c7905f
--- /dev/null
+++ b/erpnext/accounts/search_criteria/voucher_wise_tax_details/voucher_wise_tax_details.txt
@@ -0,0 +1,34 @@
+# Search Criteria, voucher_wise_tax_details
+[
+
+ # These values are common in all dictionaries
+ {
+ 'creation': '2011-09-06 15:36:58',
+ 'docstatus': 0,
+ 'modified': '2011-09-06 15:50:28',
+ 'modified_by': 'Administrator',
+ 'owner': 'Administrator'
+ },
+
+ # These values are common for all Search Criteria
+ {
+ 'columns': 'RV Tax Detail\x01Type,RV Tax Detail\x01Account Head,RV Tax Detail\x01Cost Center,RV Tax Detail\x01Description,RV Tax Detail\x01Rate,RV Tax Detail\x01Amount*,RV Tax Detail\x01Total*',
+ 'criteria_name': 'Voucher wise tax details',
+ 'doc_type': 'RV Tax Detail',
+ 'doctype': 'Search Criteria',
+ 'filters': "{'Delivery Note\x01Submitted':1,'Delivery Note\x01Status':'','Delivery Note\x01Fiscal Year':''}",
+ 'module': 'Accounts',
+ 'name': '__common__',
+ 'page_len': 50,
+ 'parent_doc_type': 'Delivery Note',
+ 'sort_by': '`tabRV Tax Detail`.`parent`',
+ 'sort_order': 'DESC',
+ 'standard': 'Yes'
+ },
+
+ # Search Criteria, voucher_wise_tax_details
+ {
+ 'doctype': 'Search Criteria',
+ 'name': 'voucher_wise_tax_details'
+ }
+]
\ No newline at end of file
diff --git a/accounts/utils/__init__.py b/erpnext/accounts/utils/__init__.py
similarity index 100%
rename from accounts/utils/__init__.py
rename to erpnext/accounts/utils/__init__.py
diff --git a/analysis/Module Def/Analysis/Analysis.txt b/erpnext/analysis/Module Def/Analysis/Analysis.txt
similarity index 100%
rename from analysis/Module Def/Analysis/Analysis.txt
rename to erpnext/analysis/Module Def/Analysis/Analysis.txt
diff --git a/analysis/page/__init__.py b/erpnext/analysis/__init__.py
similarity index 100%
rename from analysis/page/__init__.py
rename to erpnext/analysis/__init__.py
diff --git a/analysis/search_criteria/__init__.py b/erpnext/analysis/doctype/__init__.py
similarity index 100%
rename from analysis/search_criteria/__init__.py
rename to erpnext/analysis/doctype/__init__.py
diff --git a/analysis/search_criteria/monthly_transaction_summary/__init__.py b/erpnext/analysis/doctype/mis_control/__init__.py
similarity index 100%
rename from analysis/search_criteria/monthly_transaction_summary/__init__.py
rename to erpnext/analysis/doctype/mis_control/__init__.py
diff --git a/analysis/doctype/mis_control/mis_control.py b/erpnext/analysis/doctype/mis_control/mis_control.py
similarity index 100%
rename from analysis/doctype/mis_control/mis_control.py
rename to erpnext/analysis/doctype/mis_control/mis_control.py
diff --git a/analysis/doctype/mis_control/mis_control.txt b/erpnext/analysis/doctype/mis_control/mis_control.txt
similarity index 100%
rename from analysis/doctype/mis_control/mis_control.txt
rename to erpnext/analysis/doctype/mis_control/mis_control.txt
diff --git a/analysis/search_criteria/trend_analyzer/__init__.py b/erpnext/analysis/doctype/ta_control/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from analysis/search_criteria/trend_analyzer/__init__.py
rename to erpnext/analysis/doctype/ta_control/__init__.py
diff --git a/analysis/doctype/ta_control/ta_control.py b/erpnext/analysis/doctype/ta_control/ta_control.py
similarity index 100%
rename from analysis/doctype/ta_control/ta_control.py
rename to erpnext/analysis/doctype/ta_control/ta_control.py
diff --git a/analysis/doctype/ta_control/ta_control.txt b/erpnext/analysis/doctype/ta_control/ta_control.txt
similarity index 100%
rename from analysis/doctype/ta_control/ta_control.txt
rename to erpnext/analysis/doctype/ta_control/ta_control.txt
diff --git a/analysis/search_criteria/yearly_transaction_summary/__init__.py b/erpnext/analysis/page/__init__.py
similarity index 100%
rename from analysis/search_criteria/yearly_transaction_summary/__init__.py
rename to erpnext/analysis/page/__init__.py
diff --git a/buying/__init__.py b/erpnext/analysis/search_criteria/__init__.py
similarity index 100%
rename from buying/__init__.py
rename to erpnext/analysis/search_criteria/__init__.py
diff --git a/buying/doctype/__init__.py b/erpnext/analysis/search_criteria/monthly_transaction_summary/__init__.py
similarity index 100%
rename from buying/doctype/__init__.py
rename to erpnext/analysis/search_criteria/monthly_transaction_summary/__init__.py
diff --git a/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.js b/erpnext/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.js
similarity index 100%
rename from analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.js
rename to erpnext/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.js
diff --git a/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.py b/erpnext/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.py
similarity index 100%
rename from analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.py
rename to erpnext/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.py
diff --git a/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.sql b/erpnext/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.sql
similarity index 100%
rename from analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.sql
rename to erpnext/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.sql
diff --git a/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt b/erpnext/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
similarity index 100%
rename from analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
rename to erpnext/analysis/search_criteria/monthly_transaction_summary/monthly_transaction_summary.txt
diff --git a/buying/doctype/indent/__init__.py b/erpnext/analysis/search_criteria/trend_analyzer/__init__.py
similarity index 100%
rename from buying/doctype/indent/__init__.py
rename to erpnext/analysis/search_criteria/trend_analyzer/__init__.py
diff --git a/analysis/search_criteria/trend_analyzer/trend_analyzer.js b/erpnext/analysis/search_criteria/trend_analyzer/trend_analyzer.js
similarity index 97%
rename from analysis/search_criteria/trend_analyzer/trend_analyzer.js
rename to erpnext/analysis/search_criteria/trend_analyzer/trend_analyzer.js
index 72334df1b4..9a87abbd11 100644
--- a/analysis/search_criteria/trend_analyzer/trend_analyzer.js
+++ b/erpnext/analysis/search_criteria/trend_analyzer/trend_analyzer.js
@@ -13,8 +13,8 @@ report.customize_filters = function() {
this.add_filter({fieldname:'company', label:'Company', fieldtype:'Link', options:'Company', report_default:sys_defaults.company, ignore : 1, parent:'Profile'});
- this.set_filter_properties('Profile','Fiscal Year',{filter_hide:0, in_first_page:1, report_default: sys_defaults.fiscal_year});
- this.get_filter('Profile', 'Fiscal Year').set_as_single();
+ this.add_filter({fieldname:'fiscal_year', label:'Fiscal Year', fieldtype:'Link', options:'Fiscal Year', report_default:sys_defaults.fiscal_year, ignore : 1, parent:'Profile', in_first_page:1});
+
// Add Filters
this.add_filter({fieldname:'item', label:'Item', fieldtype:'Link', options:'Item', ignore : 1, parent:'Profile'});
@@ -118,4 +118,4 @@ report.get_query = function() {
return q;
}
-}
\ No newline at end of file
+}
diff --git a/analysis/search_criteria/trend_analyzer/trend_analyzer.py b/erpnext/analysis/search_criteria/trend_analyzer/trend_analyzer.py
similarity index 100%
rename from analysis/search_criteria/trend_analyzer/trend_analyzer.py
rename to erpnext/analysis/search_criteria/trend_analyzer/trend_analyzer.py
diff --git a/analysis/search_criteria/trend_analyzer/trend_analyzer.txt b/erpnext/analysis/search_criteria/trend_analyzer/trend_analyzer.txt
similarity index 100%
rename from analysis/search_criteria/trend_analyzer/trend_analyzer.txt
rename to erpnext/analysis/search_criteria/trend_analyzer/trend_analyzer.txt
diff --git a/buying/doctype/indent_detail/__init__.py b/erpnext/analysis/search_criteria/yearly_transaction_summary/__init__.py
similarity index 100%
rename from buying/doctype/indent_detail/__init__.py
rename to erpnext/analysis/search_criteria/yearly_transaction_summary/__init__.py
diff --git a/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.js b/erpnext/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.js
similarity index 100%
rename from analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.js
rename to erpnext/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.js
diff --git a/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.py b/erpnext/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.py
similarity index 100%
rename from analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.py
rename to erpnext/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.py
diff --git a/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.sql b/erpnext/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.sql
similarity index 100%
rename from analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.sql
rename to erpnext/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.sql
diff --git a/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt b/erpnext/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
similarity index 100%
rename from analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
rename to erpnext/analysis/search_criteria/yearly_transaction_summary/yearly_transaction_summary.txt
diff --git a/buying/DocType Mapper/Indent-Purchase Order/Indent-Purchase Order.txt b/erpnext/buying/DocType Mapper/Indent-Purchase Order/Indent-Purchase Order.txt
similarity index 98%
rename from buying/DocType Mapper/Indent-Purchase Order/Indent-Purchase Order.txt
rename to erpnext/buying/DocType Mapper/Indent-Purchase Order/Indent-Purchase Order.txt
index 30412182fd..fe49f4901e 100644
--- a/buying/DocType Mapper/Indent-Purchase Order/Indent-Purchase Order.txt
+++ b/erpnext/buying/DocType Mapper/Indent-Purchase Order/Indent-Purchase Order.txt
@@ -5,7 +5,7 @@
{
'creation': '2010-08-08 17:09:34',
'docstatus': 0,
- 'modified': '2009-12-30 16:55:33',
+ 'modified': '2011-09-15 15:04:42',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
diff --git a/buying/DocType Mapper/Sales Order-Indent/Sales Order-Indent.txt b/erpnext/buying/DocType Mapper/Sales Order-Indent/Sales Order-Indent.txt
similarity index 96%
rename from buying/DocType Mapper/Sales Order-Indent/Sales Order-Indent.txt
rename to erpnext/buying/DocType Mapper/Sales Order-Indent/Sales Order-Indent.txt
index d32aeb63ce..b4dafc9a2f 100755
--- a/buying/DocType Mapper/Sales Order-Indent/Sales Order-Indent.txt
+++ b/erpnext/buying/DocType Mapper/Sales Order-Indent/Sales Order-Indent.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2011-05-05 15:58:13',
+ 'creation': '2011-05-20 10:07:55',
'docstatus': 0,
- 'modified': '2011-05-05 16:20:10',
+ 'modified': '2011-09-14 12:36:25',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
diff --git a/buying/Module Def/Buying/Buying.txt b/erpnext/buying/Module Def/Buying/Buying.txt
similarity index 100%
rename from buying/Module Def/Buying/Buying.txt
rename to erpnext/buying/Module Def/Buying/Buying.txt
diff --git a/buying/Role/Purchase Manager/Purchase Manager.txt b/erpnext/buying/Role/Purchase Manager/Purchase Manager.txt
similarity index 100%
rename from buying/Role/Purchase Manager/Purchase Manager.txt
rename to erpnext/buying/Role/Purchase Manager/Purchase Manager.txt
diff --git a/buying/Role/Purchase Master Manager/Purchase Master Manager.txt b/erpnext/buying/Role/Purchase Master Manager/Purchase Master Manager.txt
similarity index 100%
rename from buying/Role/Purchase Master Manager/Purchase Master Manager.txt
rename to erpnext/buying/Role/Purchase Master Manager/Purchase Master Manager.txt
diff --git a/buying/Role/Purchase User/Purchase User.txt b/erpnext/buying/Role/Purchase User/Purchase User.txt
similarity index 100%
rename from buying/Role/Purchase User/Purchase User.txt
rename to erpnext/buying/Role/Purchase User/Purchase User.txt
diff --git a/buying/Role/Supplier/Supplier.txt b/erpnext/buying/Role/Supplier/Supplier.txt
similarity index 100%
rename from buying/Role/Supplier/Supplier.txt
rename to erpnext/buying/Role/Supplier/Supplier.txt
diff --git a/buying/doctype/po_detail/__init__.py b/erpnext/buying/__init__.py
similarity index 100%
rename from buying/doctype/po_detail/__init__.py
rename to erpnext/buying/__init__.py
diff --git a/buying/doctype/po_raw_material_detail/__init__.py b/erpnext/buying/doctype/__init__.py
similarity index 100%
rename from buying/doctype/po_raw_material_detail/__init__.py
rename to erpnext/buying/doctype/__init__.py
diff --git a/buying/doctype/pr_raw_material_detail/__init__.py b/erpnext/buying/doctype/indent/__init__.py
similarity index 100%
rename from buying/doctype/pr_raw_material_detail/__init__.py
rename to erpnext/buying/doctype/indent/__init__.py
diff --git a/buying/doctype/indent/indent.js b/erpnext/buying/doctype/indent/indent.js
similarity index 100%
rename from buying/doctype/indent/indent.js
rename to erpnext/buying/doctype/indent/indent.js
diff --git a/buying/doctype/indent/indent.py b/erpnext/buying/doctype/indent/indent.py
similarity index 100%
rename from buying/doctype/indent/indent.py
rename to erpnext/buying/doctype/indent/indent.py
diff --git a/buying/doctype/indent/indent.txt b/erpnext/buying/doctype/indent/indent.txt
similarity index 100%
rename from buying/doctype/indent/indent.txt
rename to erpnext/buying/doctype/indent/indent.txt
diff --git a/buying/doctype/purchase_common/__init__.py b/erpnext/buying/doctype/indent_detail/__init__.py
similarity index 100%
rename from buying/doctype/purchase_common/__init__.py
rename to erpnext/buying/doctype/indent_detail/__init__.py
diff --git a/buying/doctype/indent_detail/indent_detail.txt b/erpnext/buying/doctype/indent_detail/indent_detail.txt
similarity index 100%
rename from buying/doctype/indent_detail/indent_detail.txt
rename to erpnext/buying/doctype/indent_detail/indent_detail.txt
diff --git a/buying/doctype/purchase_order/__init__.py b/erpnext/buying/doctype/po_detail/__init__.py
similarity index 100%
rename from buying/doctype/purchase_order/__init__.py
rename to erpnext/buying/doctype/po_detail/__init__.py
diff --git a/buying/doctype/po_detail/po_detail.txt b/erpnext/buying/doctype/po_detail/po_detail.txt
similarity index 100%
rename from buying/doctype/po_detail/po_detail.txt
rename to erpnext/buying/doctype/po_detail/po_detail.txt
diff --git a/buying/doctype/purchase_other_charges/__init__.py b/erpnext/buying/doctype/po_raw_material_detail/__init__.py
similarity index 100%
rename from buying/doctype/purchase_other_charges/__init__.py
rename to erpnext/buying/doctype/po_raw_material_detail/__init__.py
diff --git a/buying/doctype/po_raw_material_detail/po_raw_material_detail.txt b/erpnext/buying/doctype/po_raw_material_detail/po_raw_material_detail.txt
similarity index 100%
rename from buying/doctype/po_raw_material_detail/po_raw_material_detail.txt
rename to erpnext/buying/doctype/po_raw_material_detail/po_raw_material_detail.txt
diff --git a/buying/doctype/qa_inspection_report/__init__.py b/erpnext/buying/doctype/pr_raw_material_detail/__init__.py
similarity index 100%
rename from buying/doctype/qa_inspection_report/__init__.py
rename to erpnext/buying/doctype/pr_raw_material_detail/__init__.py
diff --git a/buying/doctype/pr_raw_material_detail/pr_raw_material_detail.txt b/erpnext/buying/doctype/pr_raw_material_detail/pr_raw_material_detail.txt
similarity index 100%
rename from buying/doctype/pr_raw_material_detail/pr_raw_material_detail.txt
rename to erpnext/buying/doctype/pr_raw_material_detail/pr_raw_material_detail.txt
diff --git a/buying/doctype/qa_specification_detail/__init__.py b/erpnext/buying/doctype/purchase_common/__init__.py
similarity index 100%
rename from buying/doctype/qa_specification_detail/__init__.py
rename to erpnext/buying/doctype/purchase_common/__init__.py
diff --git a/buying/doctype/purchase_common/purchase_common.js b/erpnext/buying/doctype/purchase_common/purchase_common.js
similarity index 100%
rename from buying/doctype/purchase_common/purchase_common.js
rename to erpnext/buying/doctype/purchase_common/purchase_common.js
diff --git a/buying/doctype/purchase_common/purchase_common.py b/erpnext/buying/doctype/purchase_common/purchase_common.py
similarity index 100%
rename from buying/doctype/purchase_common/purchase_common.py
rename to erpnext/buying/doctype/purchase_common/purchase_common.py
diff --git a/buying/doctype/purchase_common/purchase_common.txt b/erpnext/buying/doctype/purchase_common/purchase_common.txt
similarity index 100%
rename from buying/doctype/purchase_common/purchase_common.txt
rename to erpnext/buying/doctype/purchase_common/purchase_common.txt
diff --git a/buying/doctype/raw_materials_supplied/__init__.py b/erpnext/buying/doctype/purchase_order/__init__.py
similarity index 100%
rename from buying/doctype/raw_materials_supplied/__init__.py
rename to erpnext/buying/doctype/purchase_order/__init__.py
diff --git a/buying/doctype/purchase_order/purchase_order.js b/erpnext/buying/doctype/purchase_order/purchase_order.js
similarity index 100%
rename from buying/doctype/purchase_order/purchase_order.js
rename to erpnext/buying/doctype/purchase_order/purchase_order.js
diff --git a/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py
similarity index 100%
rename from buying/doctype/purchase_order/purchase_order.py
rename to erpnext/buying/doctype/purchase_order/purchase_order.py
diff --git a/buying/doctype/purchase_order/purchase_order.txt b/erpnext/buying/doctype/purchase_order/purchase_order.txt
similarity index 100%
rename from buying/doctype/purchase_order/purchase_order.txt
rename to erpnext/buying/doctype/purchase_order/purchase_order.txt
diff --git a/buying/doctype/supplier/__init__.py b/erpnext/buying/doctype/purchase_other_charges/__init__.py
similarity index 100%
rename from buying/doctype/supplier/__init__.py
rename to erpnext/buying/doctype/purchase_other_charges/__init__.py
diff --git a/buying/doctype/purchase_other_charges/purchase_other_charges.js b/erpnext/buying/doctype/purchase_other_charges/purchase_other_charges.js
similarity index 100%
rename from buying/doctype/purchase_other_charges/purchase_other_charges.js
rename to erpnext/buying/doctype/purchase_other_charges/purchase_other_charges.js
diff --git a/buying/doctype/purchase_other_charges/purchase_other_charges.py b/erpnext/buying/doctype/purchase_other_charges/purchase_other_charges.py
similarity index 100%
rename from buying/doctype/purchase_other_charges/purchase_other_charges.py
rename to erpnext/buying/doctype/purchase_other_charges/purchase_other_charges.py
diff --git a/buying/doctype/purchase_other_charges/purchase_other_charges.txt b/erpnext/buying/doctype/purchase_other_charges/purchase_other_charges.txt
similarity index 100%
rename from buying/doctype/purchase_other_charges/purchase_other_charges.txt
rename to erpnext/buying/doctype/purchase_other_charges/purchase_other_charges.txt
diff --git a/buying/doctype/supplier_quotation/__init__.py b/erpnext/buying/doctype/qa_inspection_report/__init__.py
old mode 100755
new mode 100644
similarity index 100%
rename from buying/doctype/supplier_quotation/__init__.py
rename to erpnext/buying/doctype/qa_inspection_report/__init__.py
diff --git a/erpnext/buying/doctype/qa_inspection_report/qa_inspection_report.js b/erpnext/buying/doctype/qa_inspection_report/qa_inspection_report.js
new file mode 100644
index 0000000000..a0ee1dcd6f
--- /dev/null
+++ b/erpnext/buying/doctype/qa_inspection_report/qa_inspection_report.js
@@ -0,0 +1,44 @@
+cur_frm.cscript.item_code = function(doc, cdt, cdn) {
+ if (doc.item_code)
+ get_server_fields('get_purchase_receipt_item_details','','',doc,cdt,cdn,1);
+}
+
+cur_frm.cscript.inspection_type = function(doc, cdt, cdn) {
+ if(doc.inspection_type == 'Incoming'){
+ doc.delivery_note_no = '';
+ hide_field('delivery_note_no');
+ unhide_field('purchase_receipt_no');
+ }
+ else if(doc.inspection_type == 'Outgoing'){
+ doc.purchase_receipt_no = '';
+ unhide_field('delivery_note_no');
+ hide_field('purchase_receipt_no');
+
+ }
+ else {
+ doc.purchase_receipt_no = '';
+ doc.delivery_note_no = '';
+ hide_field('purchase_receipt_no');
+ hide_field('delivery_note_no');
+ }
+}
+
+cur_frm.cscript.refresh = cur_frm.cscript.inspection_type;
+
+// item code based on GRN/DN
+cur_frm.fields_dict['item_code'].get_query = function(doc, cdt, cdn) {
+ if (doc.purchase_receipt_no)
+ return 'SELECT item_code, item_name, description FROM `tabPurchase Receipt Detail` WHERE parent = "'+ doc.purchase_receipt_no +'" and docstatus != 2 AND item_code LIKE "%s" ORDER BY item_code ASC LIMIT 50';
+ else if (doc.delivery_note_no)
+ return 'SELECT item_code, item_name, description FROM `tabDelivery Note Detail` WHERE parent = "'+ doc.delivery_note_no +'" and docstatus != 2 AND item_code LIKE "%s" ORDER BY item_code ASC LIMIT 50';
+ else
+ return 'SELECT name, item_name, description FROM tabItem WHERE docstatus != 2 AND %(key)s LIKE "%s" ORDER BY name ASC LIMIT 50';
+}
+
+// Serial No based on item_code
+cur_frm.fields_dict['item_serial_no'].get_query = function(doc, cdt, cdn) {
+ if (doc.item_code)
+ return 'SELECT name, item_code, warehouse FROM `tabSerial No` WHERE docstatus != 2 AND item_code = "' + doc.item_code +'" AND status = "In Store" AND %(key)s LIKE "%s" ORDER BY name ASC LIMIT 50';
+ else
+ return 'SELECT name, item_code, warehouse FROM `tabSerial No` WHERE docstatus != 2 AND status = "In Store" AND %(key)s LIKE "%s" ORDER BY name ASC LIMIT 50';
+}
diff --git a/buying/doctype/qa_inspection_report/qa_inspection_report.py b/erpnext/buying/doctype/qa_inspection_report/qa_inspection_report.py
similarity index 100%
rename from buying/doctype/qa_inspection_report/qa_inspection_report.py
rename to erpnext/buying/doctype/qa_inspection_report/qa_inspection_report.py
diff --git a/buying/doctype/qa_inspection_report/qa_inspection_report.txt b/erpnext/buying/doctype/qa_inspection_report/qa_inspection_report.txt
similarity index 93%
rename from buying/doctype/qa_inspection_report/qa_inspection_report.txt
rename to erpnext/buying/doctype/qa_inspection_report/qa_inspection_report.txt
index 10890dc846..de88e1621e 100644
--- a/buying/doctype/qa_inspection_report/qa_inspection_report.txt
+++ b/erpnext/buying/doctype/qa_inspection_report/qa_inspection_report.txt
@@ -5,14 +5,17 @@
{
'creation': '2010-08-08 17:09:17',
'docstatus': 0,
- 'modified': '2011-04-08 10:53:33',
+ 'modified': '2011-10-06 10:22:41',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
# These values are common for all DocType
{
+ '_last_update': '1317365120',
+ 'autoname': 'QAI/.######',
'colour': 'White:FFF',
+ 'default_print_format': 'Standard',
'doctype': 'DocType',
'module': 'Buying',
'name': '__common__',
@@ -21,7 +24,7 @@
'section_style': 'Simple',
'server_code_error': ' ',
'show_in_menu': 0,
- 'version': 37
+ 'version': 38
},
# These values are common for all DocField
@@ -56,7 +59,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 1,
'permlevel': 0,
'submit': 1,
'write': 1
@@ -65,7 +67,6 @@
# DocPerm
{
'doctype': 'DocPerm',
- 'idx': 2,
'permlevel': 1
},
@@ -73,7 +74,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Section Break',
- 'idx': 1,
'label': 'QA Inspection',
'no_copy': 0,
'oldfieldtype': 'Section Break',
@@ -84,7 +84,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Column Break',
- 'idx': 2,
'oldfieldtype': 'Column Break',
'permlevel': 0,
'width': '50%'
@@ -95,7 +94,6 @@
'doctype': 'DocField',
'fieldname': 'naming_series',
'fieldtype': 'Select',
- 'idx': 3,
'label': 'Naming Series',
'no_copy': 1,
'options': '\nQAI/11-12/',
@@ -109,7 +107,6 @@
'doctype': 'DocField',
'fieldname': 'inspection_type',
'fieldtype': 'Select',
- 'idx': 4,
'in_filter': 1,
'label': 'Inspection Type',
'oldfieldname': 'inspection_type',
@@ -125,7 +122,6 @@
'doctype': 'DocField',
'fieldname': 'report_date',
'fieldtype': 'Date',
- 'idx': 5,
'in_filter': 1,
'label': 'Report Date',
'oldfieldname': 'report_date',
@@ -142,7 +138,6 @@
'fieldname': 'item_code',
'fieldtype': 'Link',
'hidden': 0,
- 'idx': 6,
'in_filter': 1,
'label': 'Item Code',
'oldfieldname': 'item_code',
@@ -159,7 +154,6 @@
'doctype': 'DocField',
'fieldname': 'sample_size',
'fieldtype': 'Currency',
- 'idx': 7,
'in_filter': 0,
'label': 'Sample Size',
'oldfieldname': 'sample_size',
@@ -174,7 +168,6 @@
'doctype': 'DocField',
'fieldname': 'description',
'fieldtype': 'Small Text',
- 'idx': 8,
'in_filter': 1,
'label': 'Description',
'oldfieldname': 'description',
@@ -188,7 +181,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Column Break',
- 'idx': 9,
'oldfieldtype': 'Column Break',
'permlevel': 0,
'width': '50%'
@@ -200,14 +192,12 @@
'fieldname': 'item_serial_no',
'fieldtype': 'Link',
'hidden': 0,
- 'idx': 10,
'label': 'Item Serial No',
'oldfieldname': 'item_serial_no',
'oldfieldtype': 'Link',
'options': 'Serial No',
'permlevel': 0,
- 'print_hide': 0,
- 'search_index': 0
+ 'print_hide': 0
},
# DocField
@@ -215,13 +205,11 @@
'doctype': 'DocField',
'fieldname': 'batch_no',
'fieldtype': 'Link',
- 'idx': 11,
'label': 'Batch No',
'oldfieldname': 'batch_no',
'oldfieldtype': 'Link',
'options': 'Batch',
- 'permlevel': 0,
- 'search_index': 0
+ 'permlevel': 0
},
# DocField
@@ -231,7 +219,6 @@
'fieldname': 'purchase_receipt_no',
'fieldtype': 'Link',
'hidden': 0,
- 'idx': 12,
'in_filter': 1,
'label': 'Purchase Receipt No',
'oldfieldname': 'purchase_receipt_no',
@@ -249,7 +236,6 @@
'fieldname': 'delivery_note_no',
'fieldtype': 'Link',
'hidden': 0,
- 'idx': 13,
'in_filter': 1,
'label': 'Delivery Note No',
'oldfieldname': 'delivery_note_no',
@@ -257,7 +243,7 @@
'options': 'Delivery Note',
'permlevel': 0,
'print_hide': 0,
- 'search_index': 0
+ 'search_index': 1
},
# DocField
@@ -265,7 +251,6 @@
'doctype': 'DocField',
'fieldname': 'inspected_by',
'fieldtype': 'Data',
- 'idx': 14,
'label': 'Inspected By',
'oldfieldname': 'inspected_by',
'oldfieldtype': 'Data',
@@ -278,7 +263,6 @@
'doctype': 'DocField',
'fieldname': 'remarks',
'fieldtype': 'Text',
- 'idx': 15,
'label': 'Remarks',
'no_copy': 1,
'oldfieldname': 'remarks',
@@ -291,7 +275,6 @@
'doctype': 'DocField',
'fieldname': 'verified_by',
'fieldtype': 'Data',
- 'idx': 16,
'label': 'Verified By',
'oldfieldname': 'verified_by',
'oldfieldtype': 'Data',
@@ -303,8 +286,8 @@
'doctype': 'DocField',
'fieldname': 'amended_from',
'fieldtype': 'Data',
- 'idx': 17,
'label': 'Amended From',
+ 'no_copy': 1,
'oldfieldname': 'amended_from',
'oldfieldtype': 'Data',
'permlevel': 1,
@@ -316,8 +299,8 @@
'doctype': 'DocField',
'fieldname': 'amendment_date',
'fieldtype': 'Date',
- 'idx': 18,
'label': 'Amendment Date',
+ 'no_copy': 1,
'oldfieldname': 'amendment_date',
'oldfieldtype': 'Date',
'permlevel': 1,
@@ -328,7 +311,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Section Break',
- 'idx': 19,
'label': 'Specification Details',
'oldfieldtype': 'Section Break',
'options': 'Simple',
@@ -339,9 +321,7 @@
{
'doctype': 'DocField',
'fieldtype': 'Button',
- 'idx': 20,
'label': 'Get Specification Details',
- 'oldfieldtype': 'Button',
'options': 'get_item_specification_details',
'permlevel': 0
},
@@ -351,7 +331,6 @@
'doctype': 'DocField',
'fieldname': 'qa_specification_details',
'fieldtype': 'Table',
- 'idx': 21,
'label': 'QA Specification Details',
'oldfieldname': 'qa_specification_details',
'oldfieldtype': 'Table',
diff --git a/buying/page/__init__.py b/erpnext/buying/doctype/qa_specification_detail/__init__.py
similarity index 100%
rename from buying/page/__init__.py
rename to erpnext/buying/doctype/qa_specification_detail/__init__.py
diff --git a/buying/doctype/qa_specification_detail/qa_specification_detail.txt b/erpnext/buying/doctype/qa_specification_detail/qa_specification_detail.txt
similarity index 100%
rename from buying/doctype/qa_specification_detail/qa_specification_detail.txt
rename to erpnext/buying/doctype/qa_specification_detail/qa_specification_detail.txt
diff --git a/buying/search_criteria/__init__.py b/erpnext/buying/doctype/raw_materials_supplied/__init__.py
similarity index 100%
rename from buying/search_criteria/__init__.py
rename to erpnext/buying/doctype/raw_materials_supplied/__init__.py
diff --git a/buying/doctype/raw_materials_supplied/raw_materials_supplied.txt b/erpnext/buying/doctype/raw_materials_supplied/raw_materials_supplied.txt
similarity index 100%
rename from buying/doctype/raw_materials_supplied/raw_materials_supplied.txt
rename to erpnext/buying/doctype/raw_materials_supplied/raw_materials_supplied.txt
diff --git a/buying/search_criteria/itemwise_purchase_details/__init__.py b/erpnext/buying/doctype/supplier/__init__.py
similarity index 100%
rename from buying/search_criteria/itemwise_purchase_details/__init__.py
rename to erpnext/buying/doctype/supplier/__init__.py
diff --git a/buying/doctype/supplier/supplier.js b/erpnext/buying/doctype/supplier/supplier.js
similarity index 100%
rename from buying/doctype/supplier/supplier.js
rename to erpnext/buying/doctype/supplier/supplier.js
diff --git a/buying/doctype/supplier/supplier.py b/erpnext/buying/doctype/supplier/supplier.py
similarity index 100%
rename from buying/doctype/supplier/supplier.py
rename to erpnext/buying/doctype/supplier/supplier.py
diff --git a/buying/doctype/supplier/supplier.txt b/erpnext/buying/doctype/supplier/supplier.txt
similarity index 100%
rename from buying/doctype/supplier/supplier.txt
rename to erpnext/buying/doctype/supplier/supplier.txt
diff --git a/buying/search_criteria/itemwise_receipt_details/__init__.py b/erpnext/buying/doctype/supplier_quotation/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from buying/search_criteria/itemwise_receipt_details/__init__.py
rename to erpnext/buying/doctype/supplier_quotation/__init__.py
diff --git a/buying/doctype/supplier_quotation/supplier_quotation.js b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.js
similarity index 100%
rename from buying/doctype/supplier_quotation/supplier_quotation.js
rename to erpnext/buying/doctype/supplier_quotation/supplier_quotation.js
diff --git a/buying/doctype/supplier_quotation/supplier_quotation.py b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.py
similarity index 100%
rename from buying/doctype/supplier_quotation/supplier_quotation.py
rename to erpnext/buying/doctype/supplier_quotation/supplier_quotation.py
diff --git a/buying/doctype/supplier_quotation/supplier_quotation.txt b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.txt
similarity index 100%
rename from buying/doctype/supplier_quotation/supplier_quotation.txt
rename to erpnext/buying/doctype/supplier_quotation/supplier_quotation.txt
diff --git a/buying/search_criteria/pending_po_items_to_bill/__init__.py b/erpnext/buying/page/__init__.py
similarity index 100%
rename from buying/search_criteria/pending_po_items_to_bill/__init__.py
rename to erpnext/buying/page/__init__.py
diff --git a/buying/search_criteria/pending_po_items_to_receive/__init__.py b/erpnext/buying/search_criteria/__init__.py
similarity index 100%
rename from buying/search_criteria/pending_po_items_to_receive/__init__.py
rename to erpnext/buying/search_criteria/__init__.py
diff --git a/buying/search_criteria/purchase_in_transit/__init__.py b/erpnext/buying/search_criteria/itemwise_purchase_details/__init__.py
similarity index 100%
rename from buying/search_criteria/purchase_in_transit/__init__.py
rename to erpnext/buying/search_criteria/itemwise_purchase_details/__init__.py
diff --git a/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.js b/erpnext/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.js
similarity index 100%
rename from buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.js
rename to erpnext/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.js
diff --git a/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt b/erpnext/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
similarity index 100%
rename from buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
rename to erpnext/buying/search_criteria/itemwise_purchase_details/itemwise_purchase_details.txt
diff --git a/home/doctype/__init__.py b/erpnext/buying/search_criteria/itemwise_receipt_details/__init__.py
similarity index 100%
rename from home/doctype/__init__.py
rename to erpnext/buying/search_criteria/itemwise_receipt_details/__init__.py
diff --git a/buying/search_criteria/itemwise_receipt_details/itemwise_receipt_details.js b/erpnext/buying/search_criteria/itemwise_receipt_details/itemwise_receipt_details.js
similarity index 100%
rename from buying/search_criteria/itemwise_receipt_details/itemwise_receipt_details.js
rename to erpnext/buying/search_criteria/itemwise_receipt_details/itemwise_receipt_details.js
diff --git a/buying/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt b/erpnext/buying/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
similarity index 100%
rename from buying/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
rename to erpnext/buying/search_criteria/itemwise_receipt_details/itemwise_receipt_details.txt
diff --git a/home/doctype/company_control/__init__.py b/erpnext/buying/search_criteria/pending_po_items_to_bill/__init__.py
similarity index 100%
rename from home/doctype/company_control/__init__.py
rename to erpnext/buying/search_criteria/pending_po_items_to_bill/__init__.py
diff --git a/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.js b/erpnext/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.js
similarity index 100%
rename from buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.js
rename to erpnext/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.js
diff --git a/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt b/erpnext/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
similarity index 100%
rename from buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
rename to erpnext/buying/search_criteria/pending_po_items_to_bill/pending_po_items_to_bill.txt
diff --git a/home/doctype/feed/__init__.py b/erpnext/buying/search_criteria/pending_po_items_to_receive/__init__.py
similarity index 100%
rename from home/doctype/feed/__init__.py
rename to erpnext/buying/search_criteria/pending_po_items_to_receive/__init__.py
diff --git a/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.js b/erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.js
similarity index 100%
rename from buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.js
rename to erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.js
diff --git a/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.py b/erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.py
similarity index 100%
rename from buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.py
rename to erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.py
diff --git a/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt b/erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
similarity index 100%
rename from buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
rename to erpnext/buying/search_criteria/pending_po_items_to_receive/pending_po_items_to_receive.txt
diff --git a/home/doctype/home_control/__init__.py b/erpnext/buying/search_criteria/purchase_in_transit/__init__.py
similarity index 100%
rename from home/doctype/home_control/__init__.py
rename to erpnext/buying/search_criteria/purchase_in_transit/__init__.py
diff --git a/buying/search_criteria/purchase_in_transit/purchase_in_transit.js b/erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.js
similarity index 100%
rename from buying/search_criteria/purchase_in_transit/purchase_in_transit.js
rename to erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.js
diff --git a/buying/search_criteria/purchase_in_transit/purchase_in_transit.py b/erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.py
similarity index 100%
rename from buying/search_criteria/purchase_in_transit/purchase_in_transit.py
rename to erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.py
diff --git a/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt b/erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
similarity index 100%
rename from buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
rename to erpnext/buying/search_criteria/purchase_in_transit/purchase_in_transit.txt
diff --git a/erpnext_version.py b/erpnext/erpnext_version.py
similarity index 100%
rename from erpnext_version.py
rename to erpnext/erpnext_version.py
diff --git a/home/Module Def/Home/Home.txt b/erpnext/home/Module Def/Home/Home.txt
similarity index 100%
rename from home/Module Def/Home/Home.txt
rename to erpnext/home/Module Def/Home/Home.txt
diff --git a/home/__init__.py b/erpnext/home/__init__.py
similarity index 100%
rename from home/__init__.py
rename to erpnext/home/__init__.py
diff --git a/home/doctype/widget_control/__init__.py b/erpnext/home/doctype/__init__.py
similarity index 100%
rename from home/doctype/widget_control/__init__.py
rename to erpnext/home/doctype/__init__.py
diff --git a/home/page/__init__.py b/erpnext/home/doctype/company_control/__init__.py
similarity index 100%
rename from home/page/__init__.py
rename to erpnext/home/doctype/company_control/__init__.py
diff --git a/home/doctype/company_control/company_control.py b/erpnext/home/doctype/company_control/company_control.py
similarity index 91%
rename from home/doctype/company_control/company_control.py
rename to erpnext/home/doctype/company_control/company_control.py
index cab8e7c17e..9c055a706a 100644
--- a/home/doctype/company_control/company_control.py
+++ b/erpnext/home/doctype/company_control/company_control.py
@@ -53,6 +53,15 @@ class DocType:
pr.role = r
pr.parentfield = 'userroles'
pr.save(1)
+
+ # Update Membership Type at Gateway
+ if cint(webnotes.conn.get_value('Control Panel', None, 'sync_with_gateway')):
+ if 'System Manager' in role_list : membership_type = 'Administrator'
+ else : membership_type = 'Member'
+
+ import server_tools.gateway_utils
+ server_tools.gateway_utils.update_membership_type(cstr(arg['usr']), membership_type)
+
sql("delete from __SessionCache where user=%s", cstr(arg['usr']))
# Save profile
@@ -63,10 +72,6 @@ class DocType:
p.fields[k] = arg[k]
p.save()
- def update_profile_image(self, fid, fname):
- sql("update tabProfile set file_list = '%s,%s' where name='%s'" % (fname, fid, session['user']))
-
-
def get_login_url(self):
return session['data']['login_from']
diff --git a/home/doctype/company_control/company_control.txt b/erpnext/home/doctype/company_control/company_control.txt
similarity index 100%
rename from home/doctype/company_control/company_control.txt
rename to erpnext/home/doctype/company_control/company_control.txt
diff --git a/home/page/dashboard/__init__.py b/erpnext/home/doctype/feed/__init__.py
similarity index 100%
rename from home/page/dashboard/__init__.py
rename to erpnext/home/doctype/feed/__init__.py
diff --git a/home/doctype/feed/feed.py b/erpnext/home/doctype/feed/feed.py
similarity index 100%
rename from home/doctype/feed/feed.py
rename to erpnext/home/doctype/feed/feed.py
diff --git a/home/doctype/feed/feed.txt b/erpnext/home/doctype/feed/feed.txt
similarity index 100%
rename from home/doctype/feed/feed.txt
rename to erpnext/home/doctype/feed/feed.txt
diff --git a/home/page/event_updates/__init__.py b/erpnext/home/doctype/home_control/__init__.py
similarity index 100%
rename from home/page/event_updates/__init__.py
rename to erpnext/home/doctype/home_control/__init__.py
diff --git a/home/doctype/home_control/home_control.js b/erpnext/home/doctype/home_control/home_control.js
similarity index 100%
rename from home/doctype/home_control/home_control.js
rename to erpnext/home/doctype/home_control/home_control.js
diff --git a/home/doctype/home_control/home_control.py b/erpnext/home/doctype/home_control/home_control.py
similarity index 91%
rename from home/doctype/home_control/home_control.py
rename to erpnext/home/doctype/home_control/home_control.py
index 1f58a5e236..8242e74431 100644
--- a/home/doctype/home_control/home_control.py
+++ b/erpnext/home/doctype/home_control/home_control.py
@@ -33,9 +33,6 @@ class DocType:
ml = sql("select distinct t1.name, t1.module_icon, t1.module_label, t1.module_desc, t1.module_page from `tabModule Def` t1, `tabModule Def Role` t2 where t2.role in ('%s') and t1.disabled !='Yes' and ifnull(t1.is_hidden, 'No') != 'Yes' and t1.name = t2.parent order by t1.module_seq asc" % "','".join(rl), as_dict=1)
return ml
- def get_login_url(self):
- return session['data'].get('login_from', '')
-
def get_module_details(self,m):
ret = {}
ret['il'] = sql('select doc_type, doc_name, display_name, icon, description, fields, click_function, idx from `tabModule Def Item` where parent=%s and ifnull(`hide`,0)=0 order by idx asc', m, as_dict=1)
@@ -50,6 +47,9 @@ class DocType:
AND t2.read=1
AND t2.role IN ("%s")
AND ifnull(standard,"No")="No"''' % (m, '", "'.join(webnotes.user.get_roles())), as_dict=1)
+
+ ret['login_url'] = session['data'].get('login_from', '')
+
return ret
# ----------------------------------------------------------------------------------------------------------------
@@ -121,24 +121,6 @@ class DocType:
def get_dt_help(self,dt):
return sql("select description from tabDocType where name=%s",dt)[0][0] or ''
-
- # ----------------------------------------------------------------------------------------
- def welcome_done(self):
- if cint(get_defaults().get('welcome_done')):
- return 'Yes'
- else:
- return 'No'
-
- def set_welcome_done(self):
- set_default('welcome_done', '1')
-
- # Check Complete Registration
- # ----------------------
- def registration_complete(self):
- if cint(get_defaults().get('registration_complete')):
- return 'Yes'
- else:
- return 'No'
# get dashboard counts
# --------------------
@@ -235,24 +217,6 @@ class DocType:
# -------------------------------------------------------------------------------------------------------
- def get_status_details(self, arg=''):
- # no of users online
- count = sql("select count(distinct user) from tabSessions t2 where user not in ('Guest','Administrator') and TIMESTAMPDIFF(HOUR,t2.lastupdate,NOW()) <= 1")
-
- # unread messages
- unread = sql("select count(t1.name) from `tabMail` t1, `tabMail Participant Details` t2 where t2.participant_name = '%s' and t2.parent = t1.name and (t2.read_status = 'No' or t2.read_status is NULL) and (t2.delete_status = 'No' or t2.delete_status is NULL) and t1.last_updated_by != t2.participant_name" % arg)
-
- # system messages
- msg_id = webnotes.conn.get_global('system_message_id')
- msg = ''
-
- if msg_id and msg_id != webnotes.conn.get_global('system_message_id', session['user']):
- msg = webnotes.conn.get_global('system_message')
-
- return {'user_count': count and cint(count[0][0]) or 0, 'unread': unread and cint(unread[0][0]) or 0, 'system_message':msg}
-
- # -------------------------------------------------------------------------------------------------------
-
def dismiss_message(self, arg=''):
msg_id = webnotes.conn.get_global('system_message_id')
webnotes.conn.set_global('system_message_id', msg_id, session['user'])
diff --git a/home/doctype/home_control/home_control.txt b/erpnext/home/doctype/home_control/home_control.txt
similarity index 100%
rename from home/doctype/home_control/home_control.txt
rename to erpnext/home/doctype/home_control/home_control.txt
diff --git a/home/page/my_company/__init__.py b/erpnext/home/doctype/widget_control/__init__.py
similarity index 100%
rename from home/page/my_company/__init__.py
rename to erpnext/home/doctype/widget_control/__init__.py
diff --git a/home/doctype/widget_control/widget_control.py b/erpnext/home/doctype/widget_control/widget_control.py
similarity index 78%
rename from home/doctype/widget_control/widget_control.py
rename to erpnext/home/doctype/widget_control/widget_control.py
index fa41cc9db2..d6bb9d1c45 100644
--- a/home/doctype/widget_control/widget_control.py
+++ b/erpnext/home/doctype/widget_control/widget_control.py
@@ -27,11 +27,6 @@ class DocType:
cmt.comment_date = nowdate()
cmt.comment_time = time.strftime('%H:%M')
cmt.save(1)
-
- try:
- get_obj('Feed Control').upate_comment_in_feed(args['comment_doctype'], args['comment_docname'])
- except:
- pass
else:
raise Exception
@@ -39,7 +34,3 @@ class DocType:
def remove_comment(self, args):
args = json.loads(args)
sql("delete from `tabComment Widget Record` where name=%s",args['id'])
-
- try:
- get_obj('Feed Control').upate_comment_in_feed(args['dt'], args['dn'])
- except: pass
diff --git a/home/doctype/widget_control/widget_control.txt b/erpnext/home/doctype/widget_control/widget_control.txt
similarity index 100%
rename from home/doctype/widget_control/widget_control.txt
rename to erpnext/home/doctype/widget_control/widget_control.txt
diff --git a/home/page/.DS_Store b/erpnext/home/page/.DS_Store
similarity index 100%
rename from home/page/.DS_Store
rename to erpnext/home/page/.DS_Store
diff --git a/home/page/profile_settings/__init__.py b/erpnext/home/page/__init__.py
similarity index 100%
rename from home/page/profile_settings/__init__.py
rename to erpnext/home/page/__init__.py
diff --git a/home/search_criteria/__init__.py b/erpnext/home/page/dashboard/__init__.py
similarity index 100%
rename from home/search_criteria/__init__.py
rename to erpnext/home/page/dashboard/__init__.py
diff --git a/home/page/dashboard/dashboard.css b/erpnext/home/page/dashboard/dashboard.css
similarity index 100%
rename from home/page/dashboard/dashboard.css
rename to erpnext/home/page/dashboard/dashboard.css
diff --git a/home/page/dashboard/dashboard.html b/erpnext/home/page/dashboard/dashboard.html
similarity index 100%
rename from home/page/dashboard/dashboard.html
rename to erpnext/home/page/dashboard/dashboard.html
diff --git a/home/page/dashboard/dashboard.js b/erpnext/home/page/dashboard/dashboard.js
similarity index 89%
rename from home/page/dashboard/dashboard.js
rename to erpnext/home/page/dashboard/dashboard.js
index 15e7cf3fdc..08be0af675 100644
--- a/home/page/dashboard/dashboard.js
+++ b/erpnext/home/page/dashboard/dashboard.js
@@ -1,11 +1,11 @@
pscript.onload_dashboard = function() {
// load jqplot
$.scriptPath = 'js/'
- $.require(['jquery/jquery.jqplot.min.js',
- 'jquery/jqplot-plugins/jqplot.barRenderer.js',
- 'jquery/jqplot-plugins/jqplot.canvasAxisTickRenderer.min.js',
- 'jquery/jqplot-plugins/jqplot.canvasTextRenderer.min.js',
- 'jquery/jqplot-plugins/jqplot.categoryAxisRenderer.min.js']);
+ wn.require('lib/js/legacy/jquery/jquery.jqplot.min.js');
+ wn.require('lib/js/legacy/jquery/jqplot-plugins/jqplot.barRenderer.js');
+ wn.require('lib/js/legacy/jquery/jqplot-plugins/jqplot.canvasAxisTickRenderer.min.js');
+ wn.require('lib/js/legacy/jquery/jqplot-plugins/jqplot.canvasTextRenderer.min.js');
+ wn.require('lib/js/legacy/jquery/jqplot-plugins/jqplot.categoryAxisRenderer.min.js');
pscript.dashboard_settings = {
diff --git a/home/page/dashboard/dashboard.py b/erpnext/home/page/dashboard/dashboard.py
similarity index 100%
rename from home/page/dashboard/dashboard.py
rename to erpnext/home/page/dashboard/dashboard.py
diff --git a/home/page/dashboard/dashboard.txt b/erpnext/home/page/dashboard/dashboard.txt
similarity index 100%
rename from home/page/dashboard/dashboard.txt
rename to erpnext/home/page/dashboard/dashboard.txt
diff --git a/home/page/event_updates/.DS_Store b/erpnext/home/page/event_updates/.DS_Store
similarity index 100%
rename from home/page/event_updates/.DS_Store
rename to erpnext/home/page/event_updates/.DS_Store
diff --git a/home/search_criteria/bills_to_be_paid/__init__.py b/erpnext/home/page/event_updates/__init__.py
similarity index 100%
rename from home/search_criteria/bills_to_be_paid/__init__.py
rename to erpnext/home/page/event_updates/__init__.py
diff --git a/home/page/event_updates/event_updates.css b/erpnext/home/page/event_updates/event_updates.css
similarity index 100%
rename from home/page/event_updates/event_updates.css
rename to erpnext/home/page/event_updates/event_updates.css
diff --git a/home/page/event_updates/event_updates.html b/erpnext/home/page/event_updates/event_updates.html
similarity index 100%
rename from home/page/event_updates/event_updates.html
rename to erpnext/home/page/event_updates/event_updates.html
diff --git a/home/page/event_updates/event_updates.js b/erpnext/home/page/event_updates/event_updates.js
similarity index 92%
rename from home/page/event_updates/event_updates.js
rename to erpnext/home/page/event_updates/event_updates.js
index e93ed9db63..b58a0c0914 100644
--- a/home/page/event_updates/event_updates.js
+++ b/erpnext/home/page/event_updates/event_updates.js
@@ -39,9 +39,6 @@ pscript.home_pre_process = function(wrapper) {
var banner = $a(wrapper.banner_area, 'div', '', {paddingBottom:'4px'})
banner.innerHTML = cp.client_name;
}
-
- // complete registration
- if(in_list(user_roles,'System Manager')) { pscript.complete_registration(); }
}
// Widgets
@@ -78,16 +75,8 @@ pscript.home_make_widgets = function() {
}
}
]
- })
- sidebar.refresh()
-
- /*$y(cell,{padding:'0px 8px'});
-
- new HomeCalendar(new HomeWidget(cell, 'Calendar', 'Event'));
-
-
- new HomeToDo(new HomeWidget(cell, 'To Do', 'Item'));*/
-
+ });
+
new FeedList(wrapper.body);
}
@@ -134,7 +123,7 @@ HomeWidget = function(parent, heading, item) {
this.footer = $a(this.wrapper,'div');
// add button
- this.add_btn = $btn(this.footer,'+ Add ' + item,function(){me.add()});
+ this.add_btn = $btn(this.footer,'+ Add ' + item,function(){me.add()},null,'cupid-blue');
// refresh
this.refresh_btn = $ln(this.footer,'Refresh',function() { me.refresh(); },{fontSize:'11px',marginLeft:'7px',color:'#888'});
@@ -442,7 +431,7 @@ FeedList.prototype.make_head = function() {
);
if(has_common(user_roles, ['System Manager','Accounts Manager'])) {
- $btn(this.head, 'Dashboard', function() {loadpage('dashboard'); }, {marginLeft:'7px'})
+ $btn(this.head, 'Dashboard', function() {loadpage('dashboard'); }, {marginLeft:'7px'}, 'cupid-blue')
}
}
@@ -618,6 +607,11 @@ pscript.home_make_status = function() {
// render online users
pscript.online_users_obj.render(r.message.online_users);
pscript.online_users = r.message.online_users;
+
+ // complete registration
+ if(in_list(user_roles,'System Manager')) {
+ pscript.complete_registration(r.message.registration_complete);
+ }
// setup wizard
if(r.message.setup_status) {
@@ -629,54 +623,57 @@ pscript.home_make_status = function() {
// complete my company registration
// --------------------------------
-pscript.complete_registration = function()
-{
- var reg_callback = function(r, rt){
- if(r.message == 'No'){
- var d = new Dialog(400, 200, "Please Complete Your Registration");
- if(user != 'Administrator'){
- d.no_cancel(); // Hide close image
- $dh(page_body.wntoolbar.wrapper);
- }
- $($a(d.body,'div','', {margin:'8px', color:'#888'})).html('Company Name : '+locals['Control Panel']['Control Panel'].company_name);
-
- d.make_body(
- [
- ['Data','Company Abbreviation'],
- ['Select','Fiscal Year Start Date'],
- ['Select','Default Currency'],
- ['Button','Save'],
- ]);
-
- //d.widgets['Save'].disabled = true; // disable Save button
- pscript.make_dialog_field(d);
-
- // submit details
- d.widgets['Save'].onclick = function()
- {
- d.widgets['Save'].set_working();
-
- flag = pscript.validate_fields(d);
- if(flag)
- {
- var args = [
- locals['Control Panel']['Control Panel'].company_name,
- d.widgets['Company Abbreviation'].value,
- d.widgets['Fiscal Year Start Date'].value,
- d.widgets['Default Currency'].value
- ];
-
- $c_obj('Setup Control','setup_account',JSON.stringify(args),function(r, rt){
- sys_defaults = r.message;
- d.hide();
- $ds(page_body.wntoolbar.wrapper);
- });
- }
- }
- d.show();
+pscript.complete_registration = function(is_complete) {
+ if(is_complete == 'No'){
+ var d = new Dialog(400, 200, "Please Complete Your Registration");
+ if(user != 'Administrator'){
+ d.no_cancel(); // Hide close image
+ $dh(page_body.wntoolbar.wrapper);
}
+
+ d.make_body([
+ ['Data','Company Name','Example: Your Company LLC'],
+ ['Data','Company Abbreviation', 'Example: YC (all your acconts will have this as a suffix)'],
+ ['Select','Fiscal Year Start Date'],
+ ['Select','Default Currency'],
+ ['Button','Save'],
+ ]);
+
+ // if company name is set, set the input value
+ // and disable it
+ if(locals['Control Panel']['Control Panel'].company_name) {
+ d.widgets['Company Name'].value = locals['Control Panel']['Control Panel'].company_name;
+ d.widgets['Company Name'].disabled = 1;
+ }
+
+
+ //d.widgets['Save'].disabled = true; // disable Save button
+ pscript.make_dialog_field(d);
+
+ // submit details
+ d.widgets['Save'].onclick = function()
+ {
+ d.widgets['Save'].set_working();
+
+ flag = pscript.validate_fields(d);
+ if(flag)
+ {
+ var args = [
+ d.widgets['Company Name'].value,
+ d.widgets['Company Abbreviation'].value,
+ d.widgets['Fiscal Year Start Date'].value,
+ d.widgets['Default Currency'].value
+ ];
+
+ $c_obj('Setup Control','setup_account',JSON.stringify(args),function(r, rt){
+ sys_defaults = r.message;
+ d.hide();
+ $ds(page_body.wntoolbar.wrapper);
+ });
+ }
+ }
+ d.show();
}
- $c_obj('Home Control','registration_complete','',reg_callback);
}
// make dialog fields
diff --git a/home/page/event_updates/event_updates.py b/erpnext/home/page/event_updates/event_updates.py
similarity index 89%
rename from home/page/event_updates/event_updates.py
rename to erpnext/home/page/event_updates/event_updates.py
index 1134273490..1d1d1b2040 100644
--- a/home/page/event_updates/event_updates.py
+++ b/erpnext/home/page/event_updates/event_updates.py
@@ -24,7 +24,7 @@ def get_unread_messages():
# Get toolbar items
#
def get_status_details(arg=None):
- from webnotes.utils import cint, date_diff, nowdate
+ from webnotes.utils import cint, date_diff, nowdate, get_defaults
online = get_online_users()
@@ -35,7 +35,8 @@ def get_status_details(arg=None):
'online_users': online or [],
'is_trial': webnotes.conn.get_global('is_trial'),
'days_to_expiry': (webnotes.conn.get_global('days_to_expiry') or '0'),
- 'setup_status': get_setup_status()
+ 'setup_status': get_setup_status(),
+ 'registration_complete': cint(get_defaults('registration_complete')) and 'Yes' or 'No'
}
return ret
@@ -53,7 +54,7 @@ def get_setup_status():
header = webnotes.conn.get_value('Control Panel', None, 'client_name') or ''
if header.startswith(' '\
- +webnotes.conn.get_value('Control Panel', None, 'company_name')):
+ +(webnotes.conn.get_value('Control Panel', None, 'company_name') or '')):
return False
elif 'Banner Comes Here' in header:
diff --git a/home/page/event_updates/event_updates.txt b/erpnext/home/page/event_updates/event_updates.txt
similarity index 100%
rename from home/page/event_updates/event_updates.txt
rename to erpnext/home/page/event_updates/event_updates.txt
diff --git a/home/page/event_updates/event_updates_static.html b/erpnext/home/page/event_updates/event_updates_static.html
similarity index 100%
rename from home/page/event_updates/event_updates_static.html
rename to erpnext/home/page/event_updates/event_updates_static.html
diff --git a/home/search_criteria/bills_to_be_submitted/__init__.py b/erpnext/home/page/my_company/__init__.py
similarity index 100%
rename from home/search_criteria/bills_to_be_submitted/__init__.py
rename to erpnext/home/page/my_company/__init__.py
diff --git a/home/page/my_company/my_company.css b/erpnext/home/page/my_company/my_company.css
similarity index 100%
rename from home/page/my_company/my_company.css
rename to erpnext/home/page/my_company/my_company.css
diff --git a/home/page/my_company/my_company.html b/erpnext/home/page/my_company/my_company.html
similarity index 100%
rename from home/page/my_company/my_company.html
rename to erpnext/home/page/my_company/my_company.html
diff --git a/home/page/my_company/my_company.js b/erpnext/home/page/my_company/my_company.js
similarity index 94%
rename from home/page/my_company/my_company.js
rename to erpnext/home/page/my_company/my_company.js
index 9da7e9bd2d..40bf155585 100644
--- a/home/page/my_company/my_company.js
+++ b/erpnext/home/page/my_company/my_company.js
@@ -322,7 +322,7 @@ MemberProfile = function(parent, uid, member_item) {
// show securty settings
this.set_security = function() {
- var d = new wn.widgets.Dialog({
+ var sd = new wn.widgets.Dialog({
title: 'Set User Security',
width: 500,
fields: [
@@ -362,30 +362,72 @@ MemberProfile = function(parent, uid, member_item) {
}
]
});
- d.onshow = function() {
- d.set_values({
+
+ me.sec_dialog = sd
+
+ sd.onshow = function() {
+ me.sec_dialog.set_values({
restrict_ip: me.profile.restrict_ip || '',
login_before: me.profile.login_before || '',
login_after: me.profile.login_after || '',
new_password: ''
- })
- }
- d.fields_dict.update.input.onclick = function() {
+ });
+ };
+ sd.fields_dict.update.input.onclick = function() {
var btn = this;
this.set_working();
- var args = d.get_values();
+ var args = me.sec_dialog.get_values();
args.user = me.profile.name;
- $c_page('home', 'my_company', 'update_security', JSON.stringify(args), function(r,rt) {
- if(r.exc) {
- msgprint(r.exc);
+
+ if (args.new_password) {
+ var pass_d = new wn.widgets.Dialog({
+ title: 'Your Password',
+ width: 300,
+ fields: [
+ {
+ label: 'Please Enter Your Password',
+ description: "Your password is required to update the concerned user's password",
+ fieldtype: 'Password',
+ fieldname: 'sys_admin_pwd',
+ reqd: 1
+ },
+
+ {
+ label: 'Continue',
+ fieldtype: 'Button',
+ fieldname: 'continue'
+ }
+ ]
+ });
+
+ pass_d.fields_dict.continue.input.onclick = function() {
+ btn.pwd_dialog.hide();
+ args.sys_admin_pwd = btn.pwd_dialog.get_values().sys_admin_pwd;
+ btn.set_working();
+ me.update_security(args);
btn.done_working();
- return;
}
- $.extend(me.profile, d.get_values());
- d.hide();
- });
- }
- d.show();
+
+ pass_d.show();
+ btn.pwd_dialog = pass_d;
+ btn.done_working();
+ } else {
+ btn.done_working();
+ me.update_security(args);
+ }
+ };
+ sd.show();
+ }
+
+ this.update_security = function(args) {
+ $c_page('home', 'my_company', 'update_security', JSON.stringify(args), function(r,rt) {
+ if(r.exc) {
+ msgprint(r.exc);
+ return;
+ }
+ me.sec_dialog.hide();
+ $.extend(me.profile, me.sec_dialog.get_values());
+ });
}
// delete user
diff --git a/home/page/my_company/my_company.py b/erpnext/home/page/my_company/my_company.py
similarity index 97%
rename from home/page/my_company/my_company.py
rename to erpnext/home/page/my_company/my_company.py
index 5d5ed800a8..3ff1482e9f 100644
--- a/home/page/my_company/my_company.py
+++ b/erpnext/home/page/my_company/my_company.py
@@ -140,8 +140,7 @@ def update_security(args=''):
if 'new_password' in args:
if cint(webnotes.conn.get_value('Control Panel',None,'sync_with_gateway')):
import server_tools.gateway_utils
- webnotes.msgprint(server_tools.gateway_utils.change_password('', args['new_password'])['message'])
+ webnotes.msgprint(server_tools.gateway_utils.change_password('', args['new_password'], args['user'], args['sys_admin_pwd'])['message'])
else:
webnotes.conn.sql("update tabProfile set password=password(%s) where name=%s", (args['new_password'], args['user']))
-
- webnotes.msgprint('Settings Updated')
\ No newline at end of file
+ else: webnotes.msgprint('Settings Updated')
\ No newline at end of file
diff --git a/home/page/my_company/my_company.txt b/erpnext/home/page/my_company/my_company.txt
similarity index 100%
rename from home/page/my_company/my_company.txt
rename to erpnext/home/page/my_company/my_company.txt
diff --git a/home/search_criteria/delivery_note_to_be_billed/__init__.py b/erpnext/home/page/profile_settings/__init__.py
similarity index 100%
rename from home/search_criteria/delivery_note_to_be_billed/__init__.py
rename to erpnext/home/page/profile_settings/__init__.py
diff --git a/home/page/profile_settings/profile_settings.html b/erpnext/home/page/profile_settings/profile_settings.html
similarity index 100%
rename from home/page/profile_settings/profile_settings.html
rename to erpnext/home/page/profile_settings/profile_settings.html
diff --git a/home/page/profile_settings/profile_settings.js b/erpnext/home/page/profile_settings/profile_settings.js
similarity index 95%
rename from home/page/profile_settings/profile_settings.js
rename to erpnext/home/page/profile_settings/profile_settings.js
index 10b06d422a..425626b162 100644
--- a/home/page/profile_settings/profile_settings.js
+++ b/erpnext/home/page/profile_settings/profile_settings.js
@@ -97,7 +97,7 @@ MyProfile = function(wrapper) {
]);
var w = d.widgets['wrapper'];
- me.uploader = new Uploader(w, {thumbnail:'80px', server_obj:'Company Control', method:'update_profile_image'}, pscript.user_image_upload)
+ me.uploader = new Uploader(w, {cmd:'home.page.profile_settings.profile_settings.set_user_image'}, pscript.user_image_upload, 1)
me.change_dialog = d;
}
me.change_dialog.show();
diff --git a/home/page/profile_settings/profile_settings.py b/erpnext/home/page/profile_settings/profile_settings.py
similarity index 64%
rename from home/page/profile_settings/profile_settings.py
rename to erpnext/home/page/profile_settings/profile_settings.py
index 56f7f15eb2..d1e091cad4 100644
--- a/home/page/profile_settings/profile_settings.py
+++ b/erpnext/home/page/profile_settings/profile_settings.py
@@ -2,7 +2,6 @@ import webnotes
from webnotes.utils import load_json, cint, nowdate
-
def change_password(arg):
"""
Change password
@@ -21,15 +20,40 @@ def change_password(arg):
webnotes.msgprint('Password Updated');
def get_user_details(arg=None):
- "Returns user first name, last name and bio"
-
+ """
+ Returns user first name, last name and bio
+ """
return webnotes.conn.sql("select first_name, last_name, bio from tabProfile where name=%s", webnotes.user.name, as_dict=1)[0]
def set_user_details(arg=None):
- "updates user details given in argument"
+ """
+ updates user details given in argument
+ """
from webnotes.model.doc import Document
p = Document('Profile', webnotes.user.name)
p.fields.update(load_json(arg))
p.save()
webnotes.msgprint('Updated')
+
+def set_user_image(arg=None):
+ """
+ Set uploaded image as user image
+ """
+ from webnotes.utils.upload_handler import UploadHandler
+
+ uh = UploadHandler()
+ if not uh.file_name:
+ # do nothing - no file found
+ return
+ else:
+ # save the file
+ from webnotes.utils.file_manager import FileAttachments
+
+ fa = FileAttachments('Profile', webnotes.session['user'])
+ fa.delete_all()
+ fa.add(uh.file_name, uh.content)
+ fa.save()
+
+ uh.set_callback('window.parent.upload_callback("%s", "%s")' \
+ % (webnotes.form_dict['uploader_id'], fa.get_fid(0)))
diff --git a/home/page/profile_settings/profile_settings.txt b/erpnext/home/page/profile_settings/profile_settings.txt
similarity index 100%
rename from home/page/profile_settings/profile_settings.txt
rename to erpnext/home/page/profile_settings/profile_settings.txt
diff --git a/home/search_criteria/delivery_note_to_be_submitted/__init__.py b/erpnext/home/search_criteria/__init__.py
similarity index 100%
rename from home/search_criteria/delivery_note_to_be_submitted/__init__.py
rename to erpnext/home/search_criteria/__init__.py
diff --git a/home/search_criteria/enquiry_quotations_to_be_sent/__init__.py b/erpnext/home/search_criteria/bills_to_be_paid/__init__.py
similarity index 100%
rename from home/search_criteria/enquiry_quotations_to_be_sent/__init__.py
rename to erpnext/home/search_criteria/bills_to_be_paid/__init__.py
diff --git a/home/search_criteria/bills_to_be_paid/bills_to_be_paid.txt b/erpnext/home/search_criteria/bills_to_be_paid/bills_to_be_paid.txt
similarity index 100%
rename from home/search_criteria/bills_to_be_paid/bills_to_be_paid.txt
rename to erpnext/home/search_criteria/bills_to_be_paid/bills_to_be_paid.txt
diff --git a/home/search_criteria/enquiry_to_follow_up/__init__.py b/erpnext/home/search_criteria/bills_to_be_submitted/__init__.py
similarity index 100%
rename from home/search_criteria/enquiry_to_follow_up/__init__.py
rename to erpnext/home/search_criteria/bills_to_be_submitted/__init__.py
diff --git a/home/search_criteria/bills_to_be_submitted/bills_to_be_submitted.txt b/erpnext/home/search_criteria/bills_to_be_submitted/bills_to_be_submitted.txt
similarity index 100%
rename from home/search_criteria/bills_to_be_submitted/bills_to_be_submitted.txt
rename to erpnext/home/search_criteria/bills_to_be_submitted/bills_to_be_submitted.txt
diff --git a/home/search_criteria/indent_purchase_order_to_be_made/__init__.py b/erpnext/home/search_criteria/delivery_note_to_be_billed/__init__.py
similarity index 100%
rename from home/search_criteria/indent_purchase_order_to_be_made/__init__.py
rename to erpnext/home/search_criteria/delivery_note_to_be_billed/__init__.py
diff --git a/home/search_criteria/delivery_note_to_be_billed/delivery_note_to_be_billed.txt b/erpnext/home/search_criteria/delivery_note_to_be_billed/delivery_note_to_be_billed.txt
similarity index 100%
rename from home/search_criteria/delivery_note_to_be_billed/delivery_note_to_be_billed.txt
rename to erpnext/home/search_criteria/delivery_note_to_be_billed/delivery_note_to_be_billed.txt
diff --git a/home/search_criteria/indent_to_be_submitted/__init__.py b/erpnext/home/search_criteria/delivery_note_to_be_submitted/__init__.py
similarity index 100%
rename from home/search_criteria/indent_to_be_submitted/__init__.py
rename to erpnext/home/search_criteria/delivery_note_to_be_submitted/__init__.py
diff --git a/home/search_criteria/delivery_note_to_be_submitted/delivery_note_to_be_submitted.txt b/erpnext/home/search_criteria/delivery_note_to_be_submitted/delivery_note_to_be_submitted.txt
similarity index 100%
rename from home/search_criteria/delivery_note_to_be_submitted/delivery_note_to_be_submitted.txt
rename to erpnext/home/search_criteria/delivery_note_to_be_submitted/delivery_note_to_be_submitted.txt
diff --git a/home/search_criteria/invoices_overdue/__init__.py b/erpnext/home/search_criteria/enquiry_quotations_to_be_sent/__init__.py
similarity index 100%
rename from home/search_criteria/invoices_overdue/__init__.py
rename to erpnext/home/search_criteria/enquiry_quotations_to_be_sent/__init__.py
diff --git a/home/search_criteria/enquiry_quotations_to_be_sent/enquiry_quotations_to_be_sent.txt b/erpnext/home/search_criteria/enquiry_quotations_to_be_sent/enquiry_quotations_to_be_sent.txt
similarity index 100%
rename from home/search_criteria/enquiry_quotations_to_be_sent/enquiry_quotations_to_be_sent.txt
rename to erpnext/home/search_criteria/enquiry_quotations_to_be_sent/enquiry_quotations_to_be_sent.txt
diff --git a/home/search_criteria/invoices_to_be_submitted/__init__.py b/erpnext/home/search_criteria/enquiry_to_follow_up/__init__.py
similarity index 100%
rename from home/search_criteria/invoices_to_be_submitted/__init__.py
rename to erpnext/home/search_criteria/enquiry_to_follow_up/__init__.py
diff --git a/home/search_criteria/enquiry_to_follow_up/enquiry_to_follow_up.js b/erpnext/home/search_criteria/enquiry_to_follow_up/enquiry_to_follow_up.js
similarity index 100%
rename from home/search_criteria/enquiry_to_follow_up/enquiry_to_follow_up.js
rename to erpnext/home/search_criteria/enquiry_to_follow_up/enquiry_to_follow_up.js
diff --git a/home/search_criteria/enquiry_to_follow_up/enquiry_to_follow_up.txt b/erpnext/home/search_criteria/enquiry_to_follow_up/enquiry_to_follow_up.txt
similarity index 100%
rename from home/search_criteria/enquiry_to_follow_up/enquiry_to_follow_up.txt
rename to erpnext/home/search_criteria/enquiry_to_follow_up/enquiry_to_follow_up.txt
diff --git a/home/search_criteria/invoices_to_receive_payment/__init__.py b/erpnext/home/search_criteria/indent_purchase_order_to_be_made/__init__.py
similarity index 100%
rename from home/search_criteria/invoices_to_receive_payment/__init__.py
rename to erpnext/home/search_criteria/indent_purchase_order_to_be_made/__init__.py
diff --git a/home/search_criteria/indent_purchase_order_to_be_made/indent_purchase_order_to_be_made.txt b/erpnext/home/search_criteria/indent_purchase_order_to_be_made/indent_purchase_order_to_be_made.txt
similarity index 100%
rename from home/search_criteria/indent_purchase_order_to_be_made/indent_purchase_order_to_be_made.txt
rename to erpnext/home/search_criteria/indent_purchase_order_to_be_made/indent_purchase_order_to_be_made.txt
diff --git a/home/search_criteria/lead_to_follow_up/__init__.py b/erpnext/home/search_criteria/indent_to_be_submitted/__init__.py
similarity index 100%
rename from home/search_criteria/lead_to_follow_up/__init__.py
rename to erpnext/home/search_criteria/indent_to_be_submitted/__init__.py
diff --git a/home/search_criteria/indent_to_be_submitted/indent_to_be_submitted.txt b/erpnext/home/search_criteria/indent_to_be_submitted/indent_to_be_submitted.txt
similarity index 100%
rename from home/search_criteria/indent_to_be_submitted/indent_to_be_submitted.txt
rename to erpnext/home/search_criteria/indent_to_be_submitted/indent_to_be_submitted.txt
diff --git a/home/search_criteria/purchase_order_to_be_billed/__init__.py b/erpnext/home/search_criteria/invoices_overdue/__init__.py
similarity index 100%
rename from home/search_criteria/purchase_order_to_be_billed/__init__.py
rename to erpnext/home/search_criteria/invoices_overdue/__init__.py
diff --git a/home/search_criteria/invoices_overdue/invoices_overdue.txt b/erpnext/home/search_criteria/invoices_overdue/invoices_overdue.txt
similarity index 100%
rename from home/search_criteria/invoices_overdue/invoices_overdue.txt
rename to erpnext/home/search_criteria/invoices_overdue/invoices_overdue.txt
diff --git a/home/search_criteria/purchase_order_to_be_submitted/__init__.py b/erpnext/home/search_criteria/invoices_to_be_submitted/__init__.py
similarity index 100%
rename from home/search_criteria/purchase_order_to_be_submitted/__init__.py
rename to erpnext/home/search_criteria/invoices_to_be_submitted/__init__.py
diff --git a/home/search_criteria/invoices_to_be_submitted/invoices_to_be_submitted.txt b/erpnext/home/search_criteria/invoices_to_be_submitted/invoices_to_be_submitted.txt
similarity index 100%
rename from home/search_criteria/invoices_to_be_submitted/invoices_to_be_submitted.txt
rename to erpnext/home/search_criteria/invoices_to_be_submitted/invoices_to_be_submitted.txt
diff --git a/home/search_criteria/purchase_order_to_receive_items/__init__.py b/erpnext/home/search_criteria/invoices_to_receive_payment/__init__.py
similarity index 100%
rename from home/search_criteria/purchase_order_to_receive_items/__init__.py
rename to erpnext/home/search_criteria/invoices_to_receive_payment/__init__.py
diff --git a/home/search_criteria/invoices_to_receive_payment/invoices_to_receive_payment.txt b/erpnext/home/search_criteria/invoices_to_receive_payment/invoices_to_receive_payment.txt
similarity index 100%
rename from home/search_criteria/invoices_to_receive_payment/invoices_to_receive_payment.txt
rename to erpnext/home/search_criteria/invoices_to_receive_payment/invoices_to_receive_payment.txt
diff --git a/home/search_criteria/sales_order_overdue/__init__.py b/erpnext/home/search_criteria/lead_to_follow_up/__init__.py
similarity index 100%
rename from home/search_criteria/sales_order_overdue/__init__.py
rename to erpnext/home/search_criteria/lead_to_follow_up/__init__.py
diff --git a/home/search_criteria/lead_to_follow_up/lead_to_follow_up.js b/erpnext/home/search_criteria/lead_to_follow_up/lead_to_follow_up.js
similarity index 100%
rename from home/search_criteria/lead_to_follow_up/lead_to_follow_up.js
rename to erpnext/home/search_criteria/lead_to_follow_up/lead_to_follow_up.js
diff --git a/home/search_criteria/lead_to_follow_up/lead_to_follow_up.txt b/erpnext/home/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
similarity index 100%
rename from home/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
rename to erpnext/home/search_criteria/lead_to_follow_up/lead_to_follow_up.txt
diff --git a/home/search_criteria/lead_to_follow_up/sales_order_overdue.js b/erpnext/home/search_criteria/lead_to_follow_up/sales_order_overdue.js
similarity index 100%
rename from home/search_criteria/lead_to_follow_up/sales_order_overdue.js
rename to erpnext/home/search_criteria/lead_to_follow_up/sales_order_overdue.js
diff --git a/home/search_criteria/sales_order_to_be_billed/__init__.py b/erpnext/home/search_criteria/purchase_order_to_be_billed/__init__.py
similarity index 100%
rename from home/search_criteria/sales_order_to_be_billed/__init__.py
rename to erpnext/home/search_criteria/purchase_order_to_be_billed/__init__.py
diff --git a/home/search_criteria/purchase_order_to_be_billed/purchase_order_to_be_billed.txt b/erpnext/home/search_criteria/purchase_order_to_be_billed/purchase_order_to_be_billed.txt
similarity index 100%
rename from home/search_criteria/purchase_order_to_be_billed/purchase_order_to_be_billed.txt
rename to erpnext/home/search_criteria/purchase_order_to_be_billed/purchase_order_to_be_billed.txt
diff --git a/home/search_criteria/sales_order_to_be_delivered/__init__.py b/erpnext/home/search_criteria/purchase_order_to_be_submitted/__init__.py
similarity index 100%
rename from home/search_criteria/sales_order_to_be_delivered/__init__.py
rename to erpnext/home/search_criteria/purchase_order_to_be_submitted/__init__.py
diff --git a/home/search_criteria/purchase_order_to_be_submitted/purchase_order_to_be_submitted.txt b/erpnext/home/search_criteria/purchase_order_to_be_submitted/purchase_order_to_be_submitted.txt
similarity index 100%
rename from home/search_criteria/purchase_order_to_be_submitted/purchase_order_to_be_submitted.txt
rename to erpnext/home/search_criteria/purchase_order_to_be_submitted/purchase_order_to_be_submitted.txt
diff --git a/home/search_criteria/sales_order_to_be_submitted/__init__.py b/erpnext/home/search_criteria/purchase_order_to_receive_items/__init__.py
similarity index 100%
rename from home/search_criteria/sales_order_to_be_submitted/__init__.py
rename to erpnext/home/search_criteria/purchase_order_to_receive_items/__init__.py
diff --git a/home/search_criteria/purchase_order_to_receive_items/purchase_order_to_receive_items.txt b/erpnext/home/search_criteria/purchase_order_to_receive_items/purchase_order_to_receive_items.txt
similarity index 100%
rename from home/search_criteria/purchase_order_to_receive_items/purchase_order_to_receive_items.txt
rename to erpnext/home/search_criteria/purchase_order_to_receive_items/purchase_order_to_receive_items.txt
diff --git a/home/search_criteria/serial_no_amc_expiring_this_month/__init__.py b/erpnext/home/search_criteria/sales_order_overdue/__init__.py
similarity index 100%
rename from home/search_criteria/serial_no_amc_expiring_this_month/__init__.py
rename to erpnext/home/search_criteria/sales_order_overdue/__init__.py
diff --git a/home/search_criteria/sales_order_overdue/sales_order_overdue.txt b/erpnext/home/search_criteria/sales_order_overdue/sales_order_overdue.txt
similarity index 100%
rename from home/search_criteria/sales_order_overdue/sales_order_overdue.txt
rename to erpnext/home/search_criteria/sales_order_overdue/sales_order_overdue.txt
diff --git a/home/search_criteria/serial_no_warranty_expiring_this_month/__init__.py b/erpnext/home/search_criteria/sales_order_to_be_billed/__init__.py
similarity index 100%
rename from home/search_criteria/serial_no_warranty_expiring_this_month/__init__.py
rename to erpnext/home/search_criteria/sales_order_to_be_billed/__init__.py
diff --git a/home/search_criteria/sales_order_to_be_billed/sales_order_to_be_billed.txt b/erpnext/home/search_criteria/sales_order_to_be_billed/sales_order_to_be_billed.txt
similarity index 100%
rename from home/search_criteria/sales_order_to_be_billed/sales_order_to_be_billed.txt
rename to erpnext/home/search_criteria/sales_order_to_be_billed/sales_order_to_be_billed.txt
diff --git a/home/search_criteria/task_open/__init__.py b/erpnext/home/search_criteria/sales_order_to_be_delivered/__init__.py
similarity index 100%
rename from home/search_criteria/task_open/__init__.py
rename to erpnext/home/search_criteria/sales_order_to_be_delivered/__init__.py
diff --git a/home/search_criteria/sales_order_to_be_delivered/sales_order_to_be_delivered.txt b/erpnext/home/search_criteria/sales_order_to_be_delivered/sales_order_to_be_delivered.txt
similarity index 100%
rename from home/search_criteria/sales_order_to_be_delivered/sales_order_to_be_delivered.txt
rename to erpnext/home/search_criteria/sales_order_to_be_delivered/sales_order_to_be_delivered.txt
diff --git a/hr/__init__.py b/erpnext/home/search_criteria/sales_order_to_be_submitted/__init__.py
similarity index 100%
rename from hr/__init__.py
rename to erpnext/home/search_criteria/sales_order_to_be_submitted/__init__.py
diff --git a/home/search_criteria/sales_order_to_be_submitted/sales_order_to_be_submitted.txt b/erpnext/home/search_criteria/sales_order_to_be_submitted/sales_order_to_be_submitted.txt
similarity index 100%
rename from home/search_criteria/sales_order_to_be_submitted/sales_order_to_be_submitted.txt
rename to erpnext/home/search_criteria/sales_order_to_be_submitted/sales_order_to_be_submitted.txt
diff --git a/hr/doctype/__init__.py b/erpnext/home/search_criteria/serial_no_amc_expiring_this_month/__init__.py
similarity index 100%
rename from hr/doctype/__init__.py
rename to erpnext/home/search_criteria/serial_no_amc_expiring_this_month/__init__.py
diff --git a/home/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt b/erpnext/home/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
similarity index 100%
rename from home/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
rename to erpnext/home/search_criteria/serial_no_amc_expiring_this_month/serial_no_amc_expiring_this_month.txt
diff --git a/hr/doctype/absent_days_detail/__init__.py b/erpnext/home/search_criteria/serial_no_warranty_expiring_this_month/__init__.py
similarity index 100%
rename from hr/doctype/absent_days_detail/__init__.py
rename to erpnext/home/search_criteria/serial_no_warranty_expiring_this_month/__init__.py
diff --git a/home/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt b/erpnext/home/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
similarity index 100%
rename from home/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
rename to erpnext/home/search_criteria/serial_no_warranty_expiring_this_month/serial_no_warranty_expiring_this_month.txt
diff --git a/hr/doctype/appraisal/__init__.py b/erpnext/home/search_criteria/task_open/__init__.py
similarity index 100%
rename from hr/doctype/appraisal/__init__.py
rename to erpnext/home/search_criteria/task_open/__init__.py
diff --git a/home/search_criteria/task_open/task_open.txt b/erpnext/home/search_criteria/task_open/task_open.txt
similarity index 100%
rename from home/search_criteria/task_open/task_open.txt
rename to erpnext/home/search_criteria/task_open/task_open.txt
diff --git a/hr/Deduction Type/Income Tax/Income Tax.txt b/erpnext/hr/Deduction Type/Income Tax/Income Tax.txt
similarity index 100%
rename from hr/Deduction Type/Income Tax/Income Tax.txt
rename to erpnext/hr/Deduction Type/Income Tax/Income Tax.txt
diff --git a/hr/Deduction Type/Professional Tax/Professional Tax.txt b/erpnext/hr/Deduction Type/Professional Tax/Professional Tax.txt
similarity index 100%
rename from hr/Deduction Type/Professional Tax/Professional Tax.txt
rename to erpnext/hr/Deduction Type/Professional Tax/Professional Tax.txt
diff --git a/hr/Deduction Type/Provident Fund/Provident Fund.txt b/erpnext/hr/Deduction Type/Provident Fund/Provident Fund.txt
similarity index 100%
rename from hr/Deduction Type/Provident Fund/Provident Fund.txt
rename to erpnext/hr/Deduction Type/Provident Fund/Provident Fund.txt
diff --git a/hr/DocType Mapper/KRA Template-Appraisal/KRA Template-Appraisal.txt b/erpnext/hr/DocType Mapper/KRA Template-Appraisal/KRA Template-Appraisal.txt
similarity index 93%
rename from hr/DocType Mapper/KRA Template-Appraisal/KRA Template-Appraisal.txt
rename to erpnext/hr/DocType Mapper/KRA Template-Appraisal/KRA Template-Appraisal.txt
index b3081bfb52..aed40029e2 100644
--- a/hr/DocType Mapper/KRA Template-Appraisal/KRA Template-Appraisal.txt
+++ b/erpnext/hr/DocType Mapper/KRA Template-Appraisal/KRA Template-Appraisal.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2010-09-01 15:48:10',
+ 'creation': '2010-09-01 15:47:59',
'docstatus': 0,
- 'modified': '2010-09-01 14:25:40',
+ 'modified': '2011-09-15 15:04:42',
'modified_by': 'Administrator',
'owner': 'ashwini@webnotestech.com'
},
diff --git a/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt b/erpnext/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
similarity index 95%
rename from hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
rename to erpnext/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
index 03318a1c2d..0a365d10aa 100644
--- a/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
+++ b/erpnext/hr/DocType Mapper/Salary Structure-Salary Slip/Salary Structure-Salary Slip.txt
@@ -3,10 +3,10 @@
# These values are common in all dictionaries
{
- 'creation': '2010-12-14 10:23:25',
+ 'creation': '2010-12-14 10:33:11',
'docstatus': 0,
- 'modified': '2011-02-12 18:31:40',
- 'modified_by': 'umair@iwebnotes.com',
+ 'modified': '2011-09-15 15:04:44',
+ 'modified_by': 'Administrator',
'owner': 'harshada@webnotestech.com'
},
diff --git a/hr/Earning Type/Basic/Basic.txt b/erpnext/hr/Earning Type/Basic/Basic.txt
similarity index 100%
rename from hr/Earning Type/Basic/Basic.txt
rename to erpnext/hr/Earning Type/Basic/Basic.txt
diff --git a/hr/Earning Type/House Rent Allowance/House Rent Allowance.txt b/erpnext/hr/Earning Type/House Rent Allowance/House Rent Allowance.txt
similarity index 100%
rename from hr/Earning Type/House Rent Allowance/House Rent Allowance.txt
rename to erpnext/hr/Earning Type/House Rent Allowance/House Rent Allowance.txt
diff --git a/hr/Expense Type/Calls/Calls.txt b/erpnext/hr/Expense Type/Calls/Calls.txt
similarity index 100%
rename from hr/Expense Type/Calls/Calls.txt
rename to erpnext/hr/Expense Type/Calls/Calls.txt
diff --git a/hr/Expense Type/Food/Food.txt b/erpnext/hr/Expense Type/Food/Food.txt
similarity index 100%
rename from hr/Expense Type/Food/Food.txt
rename to erpnext/hr/Expense Type/Food/Food.txt
diff --git a/hr/Expense Type/Medical/Medical.txt b/erpnext/hr/Expense Type/Medical/Medical.txt
similarity index 100%
rename from hr/Expense Type/Medical/Medical.txt
rename to erpnext/hr/Expense Type/Medical/Medical.txt
diff --git a/hr/Expense Type/Others/Others.txt b/erpnext/hr/Expense Type/Others/Others.txt
similarity index 100%
rename from hr/Expense Type/Others/Others.txt
rename to erpnext/hr/Expense Type/Others/Others.txt
diff --git a/hr/Expense Type/Travel/Travel.txt b/erpnext/hr/Expense Type/Travel/Travel.txt
similarity index 100%
rename from hr/Expense Type/Travel/Travel.txt
rename to erpnext/hr/Expense Type/Travel/Travel.txt
diff --git a/hr/Leave Type/Casual Leave/Casual Leave.txt b/erpnext/hr/Leave Type/Casual Leave/Casual Leave.txt
similarity index 100%
rename from hr/Leave Type/Casual Leave/Casual Leave.txt
rename to erpnext/hr/Leave Type/Casual Leave/Casual Leave.txt
diff --git a/hr/Leave Type/Compensatory Off/Compensatory Off.txt b/erpnext/hr/Leave Type/Compensatory Off/Compensatory Off.txt
similarity index 100%
rename from hr/Leave Type/Compensatory Off/Compensatory Off.txt
rename to erpnext/hr/Leave Type/Compensatory Off/Compensatory Off.txt
diff --git a/hr/Leave Type/Leave Without Pay/Leave Without Pay.txt b/erpnext/hr/Leave Type/Leave Without Pay/Leave Without Pay.txt
similarity index 100%
rename from hr/Leave Type/Leave Without Pay/Leave Without Pay.txt
rename to erpnext/hr/Leave Type/Leave Without Pay/Leave Without Pay.txt
diff --git a/hr/Leave Type/Privilege Leave/Privilege Leave.txt b/erpnext/hr/Leave Type/Privilege Leave/Privilege Leave.txt
similarity index 100%
rename from hr/Leave Type/Privilege Leave/Privilege Leave.txt
rename to erpnext/hr/Leave Type/Privilege Leave/Privilege Leave.txt
diff --git a/hr/Leave Type/Sick Leave/Sick Leave.txt b/erpnext/hr/Leave Type/Sick Leave/Sick Leave.txt
similarity index 100%
rename from hr/Leave Type/Sick Leave/Sick Leave.txt
rename to erpnext/hr/Leave Type/Sick Leave/Sick Leave.txt
diff --git a/hr/Module Def/HR/HR.txt b/erpnext/hr/Module Def/HR/HR.txt
similarity index 100%
rename from hr/Module Def/HR/HR.txt
rename to erpnext/hr/Module Def/HR/HR.txt
diff --git a/hr/Role/Employee/Employee.txt b/erpnext/hr/Role/Employee/Employee.txt
similarity index 100%
rename from hr/Role/Employee/Employee.txt
rename to erpnext/hr/Role/Employee/Employee.txt
diff --git a/hr/Role/HR Manager/HR Manager.txt b/erpnext/hr/Role/HR Manager/HR Manager.txt
similarity index 100%
rename from hr/Role/HR Manager/HR Manager.txt
rename to erpnext/hr/Role/HR Manager/HR Manager.txt
diff --git a/hr/Role/HR User/HR User.txt b/erpnext/hr/Role/HR User/HR User.txt
similarity index 100%
rename from hr/Role/HR User/HR User.txt
rename to erpnext/hr/Role/HR User/HR User.txt
diff --git a/hr/doctype/appraisal_detail/__init__.py b/erpnext/hr/__init__.py
similarity index 100%
rename from hr/doctype/appraisal_detail/__init__.py
rename to erpnext/hr/__init__.py
diff --git a/hr/doctype/attendance/__init__.py b/erpnext/hr/doctype/__init__.py
similarity index 100%
rename from hr/doctype/attendance/__init__.py
rename to erpnext/hr/doctype/__init__.py
diff --git a/hr/doctype/attendance_control_panel/__init__.py b/erpnext/hr/doctype/absent_days_detail/__init__.py
similarity index 100%
rename from hr/doctype/attendance_control_panel/__init__.py
rename to erpnext/hr/doctype/absent_days_detail/__init__.py
diff --git a/hr/doctype/absent_days_detail/absent_days_detail.txt b/erpnext/hr/doctype/absent_days_detail/absent_days_detail.txt
similarity index 100%
rename from hr/doctype/absent_days_detail/absent_days_detail.txt
rename to erpnext/hr/doctype/absent_days_detail/absent_days_detail.txt
diff --git a/hr/doctype/branch/__init__.py b/erpnext/hr/doctype/appraisal/__init__.py
similarity index 100%
rename from hr/doctype/branch/__init__.py
rename to erpnext/hr/doctype/appraisal/__init__.py
diff --git a/erpnext/hr/doctype/appraisal/appraisal.js b/erpnext/hr/doctype/appraisal/appraisal.js
new file mode 100644
index 0000000000..b2683d82de
--- /dev/null
+++ b/erpnext/hr/doctype/appraisal/appraisal.js
@@ -0,0 +1,150 @@
+cur_frm.add_fetch('employee', 'company', 'company');
+
+cur_frm.cscript.onload = function(doc,cdt,cdn){
+ if(!doc.status) set_multiple(dt,dn,{status:'Draft'});
+ if(doc.employee) cur_frm.cscript.employee(doc,cdt,cdn);
+ if(doc.amended_from && doc.__islocal) cur_frm.cscript.refresh_appraisal_details(doc, cdt, cdn);
+}
+
+cur_frm.cscript.refresh = function(doc,cdt,cdn){
+ if(user == doc.kra_approver && doc.status == 'Submitted') unhide_field(['Update', 'Declare Completed', 'Calculate Total Score']);
+ else hide_field(['Update', 'Declare Completed', 'Calculate Total Score']);
+
+ if(!doc.docstatus) unhide_field('Fetch Template');
+ else hide_field('Fetch Template');
+}
+
+
+cur_frm.cscript.refresh_appraisal_details = function(doc, cdt, cdn){
+ var val = getchildren('Appraisal Detail', doc.name, 'appraisal_details', doc.doctype);
+ for(var i = 0; i '],
+ ['HTML', 'Response', ''],
+ ['HTML', 'Declare Completed', '']
+ ]);
+
+ var declare_completed_btn1 = $a($i(declare_completed_dialog.widgets['Declare Completed']), 'button', 'button');
+ declare_completed_btn1.innerHTML = 'Yes';
+ declare_completed_btn1.onclick = function(){ declare_completed_dialog.add(); }
+
+ var declare_completed_btn2 = $a($i(declare_completed_dialog.widgets['Declare Completed']), 'button', 'button');
+ declare_completed_btn2.innerHTML = 'No';
+ $y(declare_completed_btn2,{marginLeft:'4px'});
+ declare_completed_btn2.onclick = function(){ declare_completed_dialog.hide();}
+
+ declare_completed_dialog.onshow = function() {
+ $i('declare_completed_dialog_response').innerHTML = '';
+ }
+
+ declare_completed_dialog.refresh_dt = function(){
+ cur_frm.cscript.refresh(this.doc, this.cdt, this.cdn);
+ msgprint("refersh done");
+ $c('webnotes.widgets.form.form_header.refresh_labels',this.doc,function(r,rt){});
+ }
+
+ declare_completed_dialog.add = function() {
+ // sending...
+ $i('declare_completed_dialog_response').innerHTML = 'Processing...';
+ var m_arg = user+ '~~' + this.msg_nm_lst;
+
+ $c_obj(make_doclist(this.doc.doctype, this.doc.name),'declare_completed','', function(r,rt){
+
+ if(r.message.status == 'Completed'){
+ $i('declare_completed_dialog_response').innerHTML = 'Done';
+ refresh_field('status');
+ declare_completed_dialog.refresh_dt();
+ hide_field(['Update', 'Declare Completed', 'Calculate Total Score']);
+ declare_completed_dialog.hide();
+ }
+ else if(r.message.status == 'Incomplete'){
+ $i('declare_completed_dialog_response').innerHTML = 'Incomplete Appraisal';
+ }
+ else if(r.message.status == 'No Score'){
+ $i('declare_completed_dialog_response').innerHTML = 'Calculate total score';
+ }
+ });
+ }
+ }
+
+ if(!declare_completed_dialog){
+ set_declare_completed_dialog();
+ }
+ declare_completed_dialog.doc = doc;
+ declare_completed_dialog.cdt = cdt;
+ declare_completed_dialog.cdn = cdn;
+ declare_completed_dialog.show();
+}
+
+cur_frm.cscript.score = function(doc,cdt,cdn){
+ var d = locals[cdt][cdn];
+ if (d.score){
+ if (flt(d.score) > 5) {
+ msgprint("Score must be less than or equal to 5");
+ d.score = 0;
+ refresh_field('score', d.name, 'appraisal_details');
+ }
+ total = flt(d.per_weightage*d.score)/100;
+ d.score_earned = total.toPrecision(2);
+ refresh_field('score_earned', d.name, 'appraisal_details');
+ }
+ else{
+ d.score_earned = '';
+ refresh_field('score_earned', d.name, 'appraisal_details');
+ }
+ cur_frm.cscript.calculate_total(doc,cdt,cdn);
+}
+
+cur_frm.cscript.calculate_total = function(doc,cdt,cdn){
+ var val = getchildren('Appraisal Detail', doc.name, 'appraisal_details', doc.doctype);
+ var total =0;
+ for(var i = 0; i getdate(self.doc.end_date):
+ msgprint("End Date can not be less than Start Date")
+ raise Exception
+
+ def validate_existing_appraisal(self):
+ chk = sql("select name from `tabAppraisal` where employee=%s and (status='Submitted' or status='Completed') and ((start_date>=%s and start_date<=%s) or (end_date>=%s and end_date<=%s))",(self.doc.employee,self.doc.start_date,self.doc.end_date,self.doc.start_date,self.doc.end_date))
+ if chk:
+ msgprint("You have already created Appraisal "+cstr(chk[0][0])+" in the current date range for employee "+cstr(self.doc.employee_name))
+ raise Exception
+
+ def validate_curr_appraisal(self):
+ for d in getlist(self.doclist, 'appraisal_details'):
+ if d.target_achieved or d.score:
+ if self.doc.status == 'Draft':
+ msgprint("Target achieved or Score can be added only for submitted Appraisal")
+ raise Exception
+ elif self.doc.status == 'Submitted' and session['user'] != self.doc.kra_approver:
+ msgprint("Target achieved or Score can be added only by Appraisal Approver")
+ raise Exception
+
+
+ def validate_fiscal_year(self):
+ fy=sql("select year_start_date from `tabFiscal Year` where name='%s'"%self.doc.fiscal_year)
+ ysd=fy and fy[0][0] or ""
+ yed=add_days(str(ysd),365)
+ if str(self.doc.start_date) < str(ysd) or str(self.doc.start_date) > str(yed) or str(self.doc.end_date) < str(ysd) or str(self.doc.end_date) > str(yed):
+ msgprint("Appraisal date range is not within the Fiscal Year selected")
+ raise Exception
+
+ def validate(self):
+ self.validate_dates()
+ self.validate_existing_appraisal()
+ self.validate_curr_appraisal()
+ self.validate_fiscal_year()
+
+ def set_approver(self):
+ ret={}
+ approver_lst =[]
+ emp_nm = self.get_employee_name()
+ approver_lst1 = get_obj('Authorization Control').get_approver_name(self.doc.doctype,0,self)
+ if approver_lst1:
+ approver_lst=approver_lst1
+ else:
+ approver_lst = [x[0] for x in sql("select distinct name from `tabProfile` where enabled=1 and name!='Administrator' and name!='Guest' and docstatus!=2")]
+ ret = {'app_lst':"\n" + "\n".join(approver_lst), 'emp_nm':cstr(emp_nm)}
+ return ret
+
+ def calculate_total(self):
+ total = 0
+ for d in getlist(self.doclist, 'appraisal_details'):
+ if d.score:
+ total = total + flt(d.score_earned)
+ ret={'total_score':flt(total)}
+ return ret
+
+ def declare_completed(self):
+ ret={}
+ for d in getlist(self.doclist, 'appraisal_details'):
+ if not d.target_achieved or not d.score or not d.score_earned:
+ msgprint("Please add 'Target Achieved' and 'Score' for all KPI")
+ ret = {'status':'Incomplete'}
+ return ret
+
+ if not self.doc.total_score:
+ msgprint("Please calculate total score using button 'Calculate Total Score'")
+ ret = {'status':'No Score'}
+ return ret
+ self.update_appraisal()
+ #set(self.doc, 'status', 'Completed')
+ ret = {'status':'Completed'}
+ return ret
+
+ def update_appraisal(self):
+ for d in getlist(self.doclist, 'appraisal_details'):
+ if not d.kra or not d.per_weightage:
+ msgprint("Please remove the extra blank row added")
+ raise Exception
+ d.save()
+ if self.doc.total_score:
+ set(self.doc,'total_score',self.doc.total_score)
+
+ def on_update(self):
+ set(self.doc, 'status', 'Draft')
+
+ def validate_total_weightage(self):
+ total_w = 0
+ for d in getlist(self.doclist, 'appraisal_details'):
+ total_w = flt(total_w) + flt(d.per_weightage)
+
+ if flt(total_w)>100 or flt(total_w)<100:
+ msgprint("Total of weightage assigned to KPI is "+cstr(total_w)+".It should be 100(%)")
+ raise Exception
+
+ def validate_appraisal_detail(self):
+ if not self.doc.kra_approver:
+ msgprint("Please mention the name of Approver")
+ raise Exception
+
+ if not getlist(self.doclist, 'appraisal_details'):
+ msgprint("Please add KRA Details")
+ raise Exception
+
+ self.validate_total_weightage()
+
+ def on_submit(self):
+ self.validate_appraisal_detail()
+ set(self.doc, 'status', 'Submitted')
+
+ def on_cancel(self):
+ set(self.doc, 'status', 'Cancelled')
diff --git a/hr/doctype/appraisal/appraisal.txt b/erpnext/hr/doctype/appraisal/appraisal.txt
similarity index 93%
rename from hr/doctype/appraisal/appraisal.txt
rename to erpnext/hr/doctype/appraisal/appraisal.txt
index 3521c6f867..e2abb35d33 100644
--- a/hr/doctype/appraisal/appraisal.txt
+++ b/erpnext/hr/doctype/appraisal/appraisal.txt
@@ -5,16 +5,17 @@
{
'creation': '2010-09-01 15:48:05',
'docstatus': 0,
- 'modified': '2011-06-27 14:39:10',
+ 'modified': '2011-09-22 10:59:43',
'modified_by': 'Administrator',
'owner': 'ashwini@webnotestech.com'
},
# These values are common for all DocType
{
- '_last_update': '1308808105',
+ '_last_update': '1316075905',
'autoname': 'APRSL.#####',
'colour': 'White:FFF',
+ 'default_print_format': 'Standard',
'doctype': 'DocType',
'module': 'HR',
'name': '__common__',
@@ -22,7 +23,7 @@
'section_style': 'Simple',
'server_code_error': ' ',
'show_in_menu': 0,
- 'version': 160
+ 'version': 161
},
# These values are common for all DocField
@@ -56,7 +57,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 1,
'permlevel': 0,
'role': 'System Manager',
'submit': 1,
@@ -66,7 +66,6 @@
# DocPerm
{
'doctype': 'DocPerm',
- 'idx': 2,
'permlevel': 1,
'role': 'System Manager'
},
@@ -77,7 +76,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 3,
'permlevel': 0,
'role': 'System Manager',
'submit': 1,
@@ -87,7 +85,6 @@
# DocPerm
{
'doctype': 'DocPerm',
- 'idx': 4,
'permlevel': 1,
'role': 'System Manager'
},
@@ -98,7 +95,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 5,
'permlevel': 0,
'role': 'HR Manager',
'submit': 1,
@@ -111,7 +107,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 6,
'permlevel': 0,
'role': 'HR User',
'submit': 1,
@@ -121,7 +116,6 @@
# DocPerm
{
'doctype': 'DocPerm',
- 'idx': 7,
'permlevel': 1,
'role': 'HR Manager'
},
@@ -129,7 +123,6 @@
# DocPerm
{
'doctype': 'DocPerm',
- 'idx': 8,
'permlevel': 1,
'role': 'HR User'
},
@@ -138,7 +131,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Section Break',
- 'idx': 1,
'label': 'Employee Details',
'oldfieldtype': 'Section Break',
'permlevel': 0
@@ -151,9 +143,9 @@
'doctype': 'DocField',
'fieldname': 'status',
'fieldtype': 'Select',
- 'idx': 2,
'in_filter': 1,
'label': 'Status',
+ 'no_copy': 1,
'oldfieldname': 'status',
'oldfieldtype': 'Select',
'options': '\nDraft\nSubmitted\nCompleted\nCancelled',
@@ -168,7 +160,6 @@
'doctype': 'DocField',
'fieldname': 'employee',
'fieldtype': 'Link',
- 'idx': 3,
'in_filter': 1,
'label': 'Employee',
'oldfieldname': 'employee',
@@ -185,7 +176,6 @@
'doctype': 'DocField',
'fieldname': 'employee_name',
'fieldtype': 'Data',
- 'idx': 4,
'in_filter': 1,
'label': 'Employee Name',
'oldfieldname': 'employee_name',
@@ -198,7 +188,6 @@
'doctype': 'DocField',
'fieldname': 'fiscal_year',
'fieldtype': 'Select',
- 'idx': 5,
'in_filter': 1,
'label': 'Fiscal Year',
'oldfieldname': 'fiscal_year',
@@ -213,7 +202,6 @@
'doctype': 'DocField',
'fieldname': 'company',
'fieldtype': 'Select',
- 'idx': 6,
'in_filter': 1,
'label': 'Company',
'oldfieldname': 'company',
@@ -227,7 +215,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Column Break',
- 'idx': 7,
'oldfieldtype': 'Column Break',
'permlevel': 0,
'width': '50%'
@@ -238,7 +225,6 @@
'doctype': 'DocField',
'fieldname': 'start_date',
'fieldtype': 'Date',
- 'idx': 8,
'in_filter': 1,
'label': 'Start Date',
'oldfieldname': 'start_date',
@@ -252,7 +238,6 @@
'doctype': 'DocField',
'fieldname': 'end_date',
'fieldtype': 'Date',
- 'idx': 9,
'in_filter': 1,
'label': 'End Date',
'oldfieldname': 'end_date',
@@ -267,7 +252,6 @@
'doctype': 'DocField',
'fieldname': 'kra_approver',
'fieldtype': 'Select',
- 'idx': 10,
'in_filter': 0,
'label': 'Approver',
'oldfieldname': 'kra_approver',
@@ -282,7 +266,6 @@
'fieldname': 'amended_from',
'fieldtype': 'Data',
'hidden': 1,
- 'idx': 11,
'label': 'Amended From',
'no_copy': 1,
'oldfieldname': 'amended_from',
@@ -299,7 +282,6 @@
'fieldname': 'amendment_date',
'fieldtype': 'Date',
'hidden': 1,
- 'idx': 12,
'label': 'Amendment Date',
'no_copy': 1,
'oldfieldname': 'amendment_date',
@@ -316,7 +298,6 @@
'colour': 'White:FFF',
'doctype': 'DocField',
'fieldtype': 'Button',
- 'idx': 13,
'label': 'Declare Completed',
'oldfieldtype': 'Button',
'permlevel': 0,
@@ -327,7 +308,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Section Break',
- 'idx': 14,
'oldfieldtype': 'Section Break',
'options': 'Simple',
'permlevel': 0
@@ -340,7 +320,6 @@
'doctype': 'DocField',
'fieldname': 'kra_template',
'fieldtype': 'Link',
- 'idx': 15,
'label': 'KRA Template',
'oldfieldname': 'kra_template',
'oldfieldtype': 'Link',
@@ -352,7 +331,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Button',
- 'idx': 16,
'label': 'Fetch Template',
'oldfieldtype': 'Button',
'options': 'fetch_kra',
@@ -366,7 +344,6 @@
'doctype': 'DocField',
'fieldtype': 'Button',
'hidden': 1,
- 'idx': 17,
'label': 'Update',
'oldfieldtype': 'Button',
'permlevel': 0,
@@ -380,7 +357,6 @@
'doctype': 'DocField',
'fieldname': 'appraisal_details',
'fieldtype': 'Table',
- 'idx': 18,
'label': 'Appraisal Details',
'oldfieldname': 'appraisal_details',
'oldfieldtype': 'Table',
@@ -393,7 +369,6 @@
'allow_on_submit': 1,
'doctype': 'DocField',
'fieldtype': 'Button',
- 'idx': 19,
'label': 'Calculate Total Score',
'oldfieldtype': 'Button',
'options': 'calculate_total',
@@ -405,8 +380,7 @@
'doctype': 'DocField',
'fieldname': 'total_score',
'fieldtype': 'Currency',
- 'idx': 20,
- 'label': 'Total Score',
+ 'label': 'Total Score (Out of 5)',
'no_copy': 1,
'oldfieldname': 'total_score',
'oldfieldtype': 'Currency',
diff --git a/hr/doctype/chapter_vi_a_detail/__init__.py b/erpnext/hr/doctype/appraisal_detail/__init__.py
similarity index 100%
rename from hr/doctype/chapter_vi_a_detail/__init__.py
rename to erpnext/hr/doctype/appraisal_detail/__init__.py
diff --git a/hr/doctype/appraisal_detail/appraisal_detail.txt b/erpnext/hr/doctype/appraisal_detail/appraisal_detail.txt
similarity index 90%
rename from hr/doctype/appraisal_detail/appraisal_detail.txt
rename to erpnext/hr/doctype/appraisal_detail/appraisal_detail.txt
index fa57bef30e..771bf4e201 100644
--- a/hr/doctype/appraisal_detail/appraisal_detail.txt
+++ b/erpnext/hr/doctype/appraisal_detail/appraisal_detail.txt
@@ -5,8 +5,8 @@
{
'creation': '2010-09-01 15:48:05',
'docstatus': 0,
- 'modified': '2010-09-20 14:06:57',
- 'modified_by': 'rahul@webnotestech.com',
+ 'modified': '2011-09-22 10:45:37',
+ 'modified_by': 'Administrator',
'owner': 'ashwini@webnotestech.com'
},
@@ -14,13 +14,14 @@
{
'autoname': 'APRSLD.#####',
'colour': 'White:FFF',
+ 'default_print_format': 'Standard',
'doctype': 'DocType',
'istable': 1,
'module': 'HR',
'name': '__common__',
'section_style': 'Simple',
'server_code_error': ' ',
- 'version': 13
+ 'version': 15
},
# These values are common for all DocField
@@ -45,7 +46,6 @@
'doctype': 'DocField',
'fieldname': 'kra',
'fieldtype': 'Small Text',
- 'idx': 1,
'label': 'KRA',
'oldfieldname': 'kra',
'oldfieldtype': 'Small Text',
@@ -58,7 +58,6 @@
'doctype': 'DocField',
'fieldname': 'per_weightage',
'fieldtype': 'Currency',
- 'idx': 2,
'label': 'Weightage (%)',
'oldfieldname': 'per_weightage',
'oldfieldtype': 'Currency',
@@ -72,7 +71,6 @@
'doctype': 'DocField',
'fieldname': 'target_achieved',
'fieldtype': 'Small Text',
- 'idx': 3,
'label': 'Target Achieved',
'no_copy': 1,
'oldfieldname': 'target_achieved',
@@ -86,15 +84,15 @@
'colour': 'White:FFF',
'doctype': 'DocField',
'fieldname': 'score',
- 'fieldtype': 'Select',
- 'idx': 4,
+ 'fieldtype': 'Currency',
'label': 'Score (0-5)',
'no_copy': 1,
'oldfieldname': 'score',
'oldfieldtype': 'Select',
'options': '\n0\n1\n2\n3\n4\n5',
'permlevel': 0,
- 'trigger': 'Client'
+ 'trigger': 'Client',
+ 'width': '60px'
},
# DocField
@@ -102,7 +100,6 @@
'doctype': 'DocField',
'fieldname': 'score_earned',
'fieldtype': 'Currency',
- 'idx': 5,
'label': 'Score Earned',
'no_copy': 1,
'oldfieldname': 'score_earned',
diff --git a/hr/doctype/declaration_detail/__init__.py b/erpnext/hr/doctype/attendance/__init__.py
similarity index 100%
rename from hr/doctype/declaration_detail/__init__.py
rename to erpnext/hr/doctype/attendance/__init__.py
diff --git a/hr/doctype/attendance/attendance.js b/erpnext/hr/doctype/attendance/attendance.js
similarity index 100%
rename from hr/doctype/attendance/attendance.js
rename to erpnext/hr/doctype/attendance/attendance.js
diff --git a/hr/doctype/attendance/attendance.py b/erpnext/hr/doctype/attendance/attendance.py
similarity index 100%
rename from hr/doctype/attendance/attendance.py
rename to erpnext/hr/doctype/attendance/attendance.py
diff --git a/hr/doctype/attendance/attendance.txt b/erpnext/hr/doctype/attendance/attendance.txt
similarity index 100%
rename from hr/doctype/attendance/attendance.txt
rename to erpnext/hr/doctype/attendance/attendance.txt
diff --git a/hr/doctype/deduction_detail/__init__.py b/erpnext/hr/doctype/attendance_control_panel/__init__.py
similarity index 100%
rename from hr/doctype/deduction_detail/__init__.py
rename to erpnext/hr/doctype/attendance_control_panel/__init__.py
diff --git a/hr/doctype/attendance_control_panel/attendance_control_panel.js b/erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.js
similarity index 100%
rename from hr/doctype/attendance_control_panel/attendance_control_panel.js
rename to erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.js
diff --git a/hr/doctype/attendance_control_panel/attendance_control_panel.py b/erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.py
similarity index 100%
rename from hr/doctype/attendance_control_panel/attendance_control_panel.py
rename to erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.py
diff --git a/hr/doctype/attendance_control_panel/attendance_control_panel.txt b/erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.txt
similarity index 100%
rename from hr/doctype/attendance_control_panel/attendance_control_panel.txt
rename to erpnext/hr/doctype/attendance_control_panel/attendance_control_panel.txt
diff --git a/hr/doctype/deduction_type/__init__.py b/erpnext/hr/doctype/branch/__init__.py
similarity index 100%
rename from hr/doctype/deduction_type/__init__.py
rename to erpnext/hr/doctype/branch/__init__.py
diff --git a/hr/doctype/branch/branch.js b/erpnext/hr/doctype/branch/branch.js
similarity index 100%
rename from hr/doctype/branch/branch.js
rename to erpnext/hr/doctype/branch/branch.js
diff --git a/hr/doctype/branch/branch.txt b/erpnext/hr/doctype/branch/branch.txt
similarity index 100%
rename from hr/doctype/branch/branch.txt
rename to erpnext/hr/doctype/branch/branch.txt
diff --git a/hr/doctype/department/__init__.py b/erpnext/hr/doctype/chapter_vi_a_detail/__init__.py
similarity index 100%
rename from hr/doctype/department/__init__.py
rename to erpnext/hr/doctype/chapter_vi_a_detail/__init__.py
diff --git a/hr/doctype/chapter_vi_a_detail/chapter_vi_a_detail.txt b/erpnext/hr/doctype/chapter_vi_a_detail/chapter_vi_a_detail.txt
similarity index 100%
rename from hr/doctype/chapter_vi_a_detail/chapter_vi_a_detail.txt
rename to erpnext/hr/doctype/chapter_vi_a_detail/chapter_vi_a_detail.txt
diff --git a/hr/doctype/designation/__init__.py b/erpnext/hr/doctype/declaration_detail/__init__.py
similarity index 100%
rename from hr/doctype/designation/__init__.py
rename to erpnext/hr/doctype/declaration_detail/__init__.py
diff --git a/hr/doctype/declaration_detail/declaration_detail.txt b/erpnext/hr/doctype/declaration_detail/declaration_detail.txt
similarity index 100%
rename from hr/doctype/declaration_detail/declaration_detail.txt
rename to erpnext/hr/doctype/declaration_detail/declaration_detail.txt
diff --git a/hr/doctype/earn_deduction_detail/__init__.py b/erpnext/hr/doctype/deduction_detail/__init__.py
similarity index 100%
rename from hr/doctype/earn_deduction_detail/__init__.py
rename to erpnext/hr/doctype/deduction_detail/__init__.py
diff --git a/hr/doctype/deduction_detail/deduction_detail.txt b/erpnext/hr/doctype/deduction_detail/deduction_detail.txt
similarity index 100%
rename from hr/doctype/deduction_detail/deduction_detail.txt
rename to erpnext/hr/doctype/deduction_detail/deduction_detail.txt
diff --git a/hr/doctype/earning_detail/__init__.py b/erpnext/hr/doctype/deduction_type/__init__.py
similarity index 100%
rename from hr/doctype/earning_detail/__init__.py
rename to erpnext/hr/doctype/deduction_type/__init__.py
diff --git a/hr/doctype/deduction_type/deduction_type.js b/erpnext/hr/doctype/deduction_type/deduction_type.js
similarity index 100%
rename from hr/doctype/deduction_type/deduction_type.js
rename to erpnext/hr/doctype/deduction_type/deduction_type.js
diff --git a/hr/doctype/deduction_type/deduction_type.txt b/erpnext/hr/doctype/deduction_type/deduction_type.txt
similarity index 100%
rename from hr/doctype/deduction_type/deduction_type.txt
rename to erpnext/hr/doctype/deduction_type/deduction_type.txt
diff --git a/hr/doctype/earning_type/__init__.py b/erpnext/hr/doctype/department/__init__.py
similarity index 100%
rename from hr/doctype/earning_type/__init__.py
rename to erpnext/hr/doctype/department/__init__.py
diff --git a/hr/doctype/department/department.js b/erpnext/hr/doctype/department/department.js
similarity index 100%
rename from hr/doctype/department/department.js
rename to erpnext/hr/doctype/department/department.js
diff --git a/hr/doctype/department/department.txt b/erpnext/hr/doctype/department/department.txt
similarity index 100%
rename from hr/doctype/department/department.txt
rename to erpnext/hr/doctype/department/department.txt
diff --git a/hr/doctype/educational_qualifications/__init__.py b/erpnext/hr/doctype/designation/__init__.py
similarity index 100%
rename from hr/doctype/educational_qualifications/__init__.py
rename to erpnext/hr/doctype/designation/__init__.py
diff --git a/hr/doctype/designation/designation.js b/erpnext/hr/doctype/designation/designation.js
similarity index 100%
rename from hr/doctype/designation/designation.js
rename to erpnext/hr/doctype/designation/designation.js
diff --git a/hr/doctype/designation/designation.txt b/erpnext/hr/doctype/designation/designation.txt
similarity index 100%
rename from hr/doctype/designation/designation.txt
rename to erpnext/hr/doctype/designation/designation.txt
diff --git a/hr/doctype/educational_qualifications_detail/__init__.py b/erpnext/hr/doctype/earn_deduction_detail/__init__.py
similarity index 100%
rename from hr/doctype/educational_qualifications_detail/__init__.py
rename to erpnext/hr/doctype/earn_deduction_detail/__init__.py
diff --git a/hr/doctype/earn_deduction_detail/earn_deduction_detail.txt b/erpnext/hr/doctype/earn_deduction_detail/earn_deduction_detail.txt
similarity index 100%
rename from hr/doctype/earn_deduction_detail/earn_deduction_detail.txt
rename to erpnext/hr/doctype/earn_deduction_detail/earn_deduction_detail.txt
diff --git a/hr/doctype/employee/__init__.py b/erpnext/hr/doctype/earning_detail/__init__.py
similarity index 100%
rename from hr/doctype/employee/__init__.py
rename to erpnext/hr/doctype/earning_detail/__init__.py
diff --git a/hr/doctype/earning_detail/earning_detail.txt b/erpnext/hr/doctype/earning_detail/earning_detail.txt
similarity index 100%
rename from hr/doctype/earning_detail/earning_detail.txt
rename to erpnext/hr/doctype/earning_detail/earning_detail.txt
diff --git a/hr/doctype/employee_profile/__init__.py b/erpnext/hr/doctype/earning_type/__init__.py
similarity index 100%
rename from hr/doctype/employee_profile/__init__.py
rename to erpnext/hr/doctype/earning_type/__init__.py
diff --git a/hr/doctype/earning_type/earning_type.js b/erpnext/hr/doctype/earning_type/earning_type.js
similarity index 100%
rename from hr/doctype/earning_type/earning_type.js
rename to erpnext/hr/doctype/earning_type/earning_type.js
diff --git a/hr/doctype/earning_type/earning_type.txt b/erpnext/hr/doctype/earning_type/earning_type.txt
similarity index 100%
rename from hr/doctype/earning_type/earning_type.txt
rename to erpnext/hr/doctype/earning_type/earning_type.txt
diff --git a/hr/doctype/employment_type/__init__.py b/erpnext/hr/doctype/educational_qualifications/__init__.py
similarity index 100%
rename from hr/doctype/employment_type/__init__.py
rename to erpnext/hr/doctype/educational_qualifications/__init__.py
diff --git a/hr/doctype/educational_qualifications/educational_qualifications.txt b/erpnext/hr/doctype/educational_qualifications/educational_qualifications.txt
similarity index 100%
rename from hr/doctype/educational_qualifications/educational_qualifications.txt
rename to erpnext/hr/doctype/educational_qualifications/educational_qualifications.txt
diff --git a/hr/doctype/expense_type/__init__.py b/erpnext/hr/doctype/educational_qualifications_detail/__init__.py
similarity index 100%
rename from hr/doctype/expense_type/__init__.py
rename to erpnext/hr/doctype/educational_qualifications_detail/__init__.py
diff --git a/hr/doctype/educational_qualifications_detail/educational_qualifications_detail.txt b/erpnext/hr/doctype/educational_qualifications_detail/educational_qualifications_detail.txt
similarity index 100%
rename from hr/doctype/educational_qualifications_detail/educational_qualifications_detail.txt
rename to erpnext/hr/doctype/educational_qualifications_detail/educational_qualifications_detail.txt
diff --git a/hr/doctype/expense_voucher/__init__.py b/erpnext/hr/doctype/employee/__init__.py
similarity index 100%
rename from hr/doctype/expense_voucher/__init__.py
rename to erpnext/hr/doctype/employee/__init__.py
diff --git a/hr/doctype/employee/employee.js b/erpnext/hr/doctype/employee/employee.js
similarity index 100%
rename from hr/doctype/employee/employee.js
rename to erpnext/hr/doctype/employee/employee.js
diff --git a/hr/doctype/employee/employee.py b/erpnext/hr/doctype/employee/employee.py
similarity index 98%
rename from hr/doctype/employee/employee.py
rename to erpnext/hr/doctype/employee/employee.py
index 01ff32df66..ba602cf575 100644
--- a/hr/doctype/employee/employee.py
+++ b/erpnext/hr/doctype/employee/employee.py
@@ -46,7 +46,7 @@ class DocType:
# check if salary structure exists
#========================================================================================================
def check_sal_structure(self, nm):
- ret_sal_struct=sql("select name from `tabSalary Structure` where employee='%s' and is_active = 'Yes'"%nm)
+ ret_sal_struct=sql("select name from `tabSalary Structure` where employee='%s' and is_active = 'Yes' and docstatus!= 2"%nm)
return ret_sal_struct and ret_sal_struct[0][0] or ''
#========================================================================================================
diff --git a/hr/doctype/employee/employee.txt b/erpnext/hr/doctype/employee/employee.txt
similarity index 100%
rename from hr/doctype/employee/employee.txt
rename to erpnext/hr/doctype/employee/employee.txt
diff --git a/hr/doctype/expense_voucher_detail/__init__.py b/erpnext/hr/doctype/employee_profile/__init__.py
similarity index 100%
rename from hr/doctype/expense_voucher_detail/__init__.py
rename to erpnext/hr/doctype/employee_profile/__init__.py
diff --git a/hr/doctype/employee_profile/employee_profile.js b/erpnext/hr/doctype/employee_profile/employee_profile.js
similarity index 100%
rename from hr/doctype/employee_profile/employee_profile.js
rename to erpnext/hr/doctype/employee_profile/employee_profile.js
diff --git a/hr/doctype/employee_profile/employee_profile.py b/erpnext/hr/doctype/employee_profile/employee_profile.py
similarity index 100%
rename from hr/doctype/employee_profile/employee_profile.py
rename to erpnext/hr/doctype/employee_profile/employee_profile.py
diff --git a/hr/doctype/employee_profile/employee_profile.txt b/erpnext/hr/doctype/employee_profile/employee_profile.txt
similarity index 100%
rename from hr/doctype/employee_profile/employee_profile.txt
rename to erpnext/hr/doctype/employee_profile/employee_profile.txt
diff --git a/hr/doctype/experience_in_company_detail/__init__.py b/erpnext/hr/doctype/employment_type/__init__.py
similarity index 100%
rename from hr/doctype/experience_in_company_detail/__init__.py
rename to erpnext/hr/doctype/employment_type/__init__.py
diff --git a/hr/doctype/employment_type/employment_type.js b/erpnext/hr/doctype/employment_type/employment_type.js
similarity index 100%
rename from hr/doctype/employment_type/employment_type.js
rename to erpnext/hr/doctype/employment_type/employment_type.js
diff --git a/hr/doctype/employment_type/employment_type.txt b/erpnext/hr/doctype/employment_type/employment_type.txt
similarity index 100%
rename from hr/doctype/employment_type/employment_type.txt
rename to erpnext/hr/doctype/employment_type/employment_type.txt
diff --git a/hr/doctype/grade/__init__.py b/erpnext/hr/doctype/expense_type/__init__.py
similarity index 100%
rename from hr/doctype/grade/__init__.py
rename to erpnext/hr/doctype/expense_type/__init__.py
diff --git a/hr/doctype/expense_type/expense_type.js b/erpnext/hr/doctype/expense_type/expense_type.js
similarity index 100%
rename from hr/doctype/expense_type/expense_type.js
rename to erpnext/hr/doctype/expense_type/expense_type.js
diff --git a/hr/doctype/expense_type/expense_type.txt b/erpnext/hr/doctype/expense_type/expense_type.txt
similarity index 100%
rename from hr/doctype/expense_type/expense_type.txt
rename to erpnext/hr/doctype/expense_type/expense_type.txt
diff --git a/hr/doctype/holiday_list/__init__.py b/erpnext/hr/doctype/expense_voucher/__init__.py
similarity index 100%
rename from hr/doctype/holiday_list/__init__.py
rename to erpnext/hr/doctype/expense_voucher/__init__.py
diff --git a/hr/doctype/expense_voucher/expense_voucher.js b/erpnext/hr/doctype/expense_voucher/expense_voucher.js
similarity index 100%
rename from hr/doctype/expense_voucher/expense_voucher.js
rename to erpnext/hr/doctype/expense_voucher/expense_voucher.js
diff --git a/hr/doctype/expense_voucher/expense_voucher.py b/erpnext/hr/doctype/expense_voucher/expense_voucher.py
similarity index 100%
rename from hr/doctype/expense_voucher/expense_voucher.py
rename to erpnext/hr/doctype/expense_voucher/expense_voucher.py
diff --git a/hr/doctype/expense_voucher/expense_voucher.txt b/erpnext/hr/doctype/expense_voucher/expense_voucher.txt
similarity index 100%
rename from hr/doctype/expense_voucher/expense_voucher.txt
rename to erpnext/hr/doctype/expense_voucher/expense_voucher.txt
diff --git a/hr/doctype/holiday_list_detail/__init__.py b/erpnext/hr/doctype/expense_voucher_detail/__init__.py
similarity index 100%
rename from hr/doctype/holiday_list_detail/__init__.py
rename to erpnext/hr/doctype/expense_voucher_detail/__init__.py
diff --git a/hr/doctype/expense_voucher_detail/expense_voucher_detail.txt b/erpnext/hr/doctype/expense_voucher_detail/expense_voucher_detail.txt
similarity index 100%
rename from hr/doctype/expense_voucher_detail/expense_voucher_detail.txt
rename to erpnext/hr/doctype/expense_voucher_detail/expense_voucher_detail.txt
diff --git a/hr/doctype/invest_80_declaration_detail/__init__.py b/erpnext/hr/doctype/experience_in_company_detail/__init__.py
similarity index 100%
rename from hr/doctype/invest_80_declaration_detail/__init__.py
rename to erpnext/hr/doctype/experience_in_company_detail/__init__.py
diff --git a/hr/doctype/experience_in_company_detail/experience_in_company_detail.txt b/erpnext/hr/doctype/experience_in_company_detail/experience_in_company_detail.txt
similarity index 100%
rename from hr/doctype/experience_in_company_detail/experience_in_company_detail.txt
rename to erpnext/hr/doctype/experience_in_company_detail/experience_in_company_detail.txt
diff --git a/hr/doctype/it_checklist/__init__.py b/erpnext/hr/doctype/grade/__init__.py
similarity index 100%
rename from hr/doctype/it_checklist/__init__.py
rename to erpnext/hr/doctype/grade/__init__.py
diff --git a/hr/doctype/grade/grade.js b/erpnext/hr/doctype/grade/grade.js
similarity index 100%
rename from hr/doctype/grade/grade.js
rename to erpnext/hr/doctype/grade/grade.js
diff --git a/hr/doctype/grade/grade.txt b/erpnext/hr/doctype/grade/grade.txt
similarity index 100%
rename from hr/doctype/grade/grade.txt
rename to erpnext/hr/doctype/grade/grade.txt
diff --git a/hr/doctype/kra_sheet/__init__.py b/erpnext/hr/doctype/holiday_list/__init__.py
similarity index 100%
rename from hr/doctype/kra_sheet/__init__.py
rename to erpnext/hr/doctype/holiday_list/__init__.py
diff --git a/hr/doctype/holiday_list/holiday_list.js b/erpnext/hr/doctype/holiday_list/holiday_list.js
similarity index 100%
rename from hr/doctype/holiday_list/holiday_list.js
rename to erpnext/hr/doctype/holiday_list/holiday_list.js
diff --git a/hr/doctype/holiday_list/holiday_list.py b/erpnext/hr/doctype/holiday_list/holiday_list.py
similarity index 100%
rename from hr/doctype/holiday_list/holiday_list.py
rename to erpnext/hr/doctype/holiday_list/holiday_list.py
diff --git a/hr/doctype/holiday_list/holiday_list.txt b/erpnext/hr/doctype/holiday_list/holiday_list.txt
similarity index 100%
rename from hr/doctype/holiday_list/holiday_list.txt
rename to erpnext/hr/doctype/holiday_list/holiday_list.txt
diff --git a/hr/doctype/kra_template/__init__.py b/erpnext/hr/doctype/holiday_list_detail/__init__.py
similarity index 100%
rename from hr/doctype/kra_template/__init__.py
rename to erpnext/hr/doctype/holiday_list_detail/__init__.py
diff --git a/hr/doctype/holiday_list_detail/holiday_list_detail.txt b/erpnext/hr/doctype/holiday_list_detail/holiday_list_detail.txt
similarity index 100%
rename from hr/doctype/holiday_list_detail/holiday_list_detail.txt
rename to erpnext/hr/doctype/holiday_list_detail/holiday_list_detail.txt
diff --git a/hr/doctype/leave_allocation/__init__.py b/erpnext/hr/doctype/invest_80_declaration_detail/__init__.py
old mode 100755
new mode 100644
similarity index 100%
rename from hr/doctype/leave_allocation/__init__.py
rename to erpnext/hr/doctype/invest_80_declaration_detail/__init__.py
diff --git a/hr/doctype/invest_80_declaration_detail/invest_80_declaration_detail.txt b/erpnext/hr/doctype/invest_80_declaration_detail/invest_80_declaration_detail.txt
similarity index 100%
rename from hr/doctype/invest_80_declaration_detail/invest_80_declaration_detail.txt
rename to erpnext/hr/doctype/invest_80_declaration_detail/invest_80_declaration_detail.txt
diff --git a/hr/doctype/leave_application/__init__.py b/erpnext/hr/doctype/it_checklist/__init__.py
old mode 100755
new mode 100644
similarity index 100%
rename from hr/doctype/leave_application/__init__.py
rename to erpnext/hr/doctype/it_checklist/__init__.py
diff --git a/hr/doctype/it_checklist/it_checklist.js b/erpnext/hr/doctype/it_checklist/it_checklist.js
similarity index 100%
rename from hr/doctype/it_checklist/it_checklist.js
rename to erpnext/hr/doctype/it_checklist/it_checklist.js
diff --git a/hr/doctype/it_checklist/it_checklist.py b/erpnext/hr/doctype/it_checklist/it_checklist.py
similarity index 99%
rename from hr/doctype/it_checklist/it_checklist.py
rename to erpnext/hr/doctype/it_checklist/it_checklist.py
index abed301573..182e171746 100644
--- a/hr/doctype/it_checklist/it_checklist.py
+++ b/erpnext/hr/doctype/it_checklist/it_checklist.py
@@ -411,9 +411,3 @@ class DocType:
new_tot_income = cint(self.doc.tax_tot_income) + cint(self.doc.edu_cess) - (cint(ret_income_tax[0][0]) or 0)
self.doc.tax_per_month = new_tot_income/cint(self.doc.rem_months)
-
- # on update
- def on_update(self):
- obj = get_obj('Feed Control', 'Feed Control')
-
- obj.make_feed(self.doc)
\ No newline at end of file
diff --git a/hr/doctype/it_checklist/it_checklist.txt b/erpnext/hr/doctype/it_checklist/it_checklist.txt
similarity index 100%
rename from hr/doctype/it_checklist/it_checklist.txt
rename to erpnext/hr/doctype/it_checklist/it_checklist.txt
diff --git a/hr/doctype/leave_control_panel/__init__.py b/erpnext/hr/doctype/kra_sheet/__init__.py
similarity index 100%
rename from hr/doctype/leave_control_panel/__init__.py
rename to erpnext/hr/doctype/kra_sheet/__init__.py
diff --git a/hr/doctype/kra_sheet/kra_sheet.txt b/erpnext/hr/doctype/kra_sheet/kra_sheet.txt
similarity index 100%
rename from hr/doctype/kra_sheet/kra_sheet.txt
rename to erpnext/hr/doctype/kra_sheet/kra_sheet.txt
diff --git a/hr/doctype/leave_type/__init__.py b/erpnext/hr/doctype/kra_template/__init__.py
similarity index 100%
rename from hr/doctype/leave_type/__init__.py
rename to erpnext/hr/doctype/kra_template/__init__.py
diff --git a/hr/doctype/kra_template/kra_template.js b/erpnext/hr/doctype/kra_template/kra_template.js
similarity index 100%
rename from hr/doctype/kra_template/kra_template.js
rename to erpnext/hr/doctype/kra_template/kra_template.js
diff --git a/hr/doctype/kra_template/kra_template.txt b/erpnext/hr/doctype/kra_template/kra_template.txt
similarity index 100%
rename from hr/doctype/kra_template/kra_template.txt
rename to erpnext/hr/doctype/kra_template/kra_template.txt
diff --git a/hr/doctype/other_income_detail/__init__.py b/erpnext/hr/doctype/leave_allocation/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from hr/doctype/other_income_detail/__init__.py
rename to erpnext/hr/doctype/leave_allocation/__init__.py
diff --git a/hr/doctype/leave_allocation/leave_allocation.js b/erpnext/hr/doctype/leave_allocation/leave_allocation.js
similarity index 100%
rename from hr/doctype/leave_allocation/leave_allocation.js
rename to erpnext/hr/doctype/leave_allocation/leave_allocation.js
diff --git a/hr/doctype/leave_allocation/leave_allocation.py b/erpnext/hr/doctype/leave_allocation/leave_allocation.py
similarity index 100%
rename from hr/doctype/leave_allocation/leave_allocation.py
rename to erpnext/hr/doctype/leave_allocation/leave_allocation.py
diff --git a/hr/doctype/leave_allocation/leave_allocation.txt b/erpnext/hr/doctype/leave_allocation/leave_allocation.txt
similarity index 100%
rename from hr/doctype/leave_allocation/leave_allocation.txt
rename to erpnext/hr/doctype/leave_allocation/leave_allocation.txt
diff --git a/hr/doctype/payroll_rule/__init__.py b/erpnext/hr/doctype/leave_application/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from hr/doctype/payroll_rule/__init__.py
rename to erpnext/hr/doctype/leave_application/__init__.py
diff --git a/hr/doctype/leave_application/leave_application.js b/erpnext/hr/doctype/leave_application/leave_application.js
similarity index 100%
rename from hr/doctype/leave_application/leave_application.js
rename to erpnext/hr/doctype/leave_application/leave_application.js
diff --git a/hr/doctype/leave_application/leave_application.py b/erpnext/hr/doctype/leave_application/leave_application.py
similarity index 100%
rename from hr/doctype/leave_application/leave_application.py
rename to erpnext/hr/doctype/leave_application/leave_application.py
diff --git a/hr/doctype/leave_application/leave_application.txt b/erpnext/hr/doctype/leave_application/leave_application.txt
similarity index 100%
rename from hr/doctype/leave_application/leave_application.txt
rename to erpnext/hr/doctype/leave_application/leave_application.txt
diff --git a/hr/doctype/previous_experience_detail/__init__.py b/erpnext/hr/doctype/leave_control_panel/__init__.py
similarity index 100%
rename from hr/doctype/previous_experience_detail/__init__.py
rename to erpnext/hr/doctype/leave_control_panel/__init__.py
diff --git a/hr/doctype/leave_control_panel/leave_control_panel.js b/erpnext/hr/doctype/leave_control_panel/leave_control_panel.js
similarity index 100%
rename from hr/doctype/leave_control_panel/leave_control_panel.js
rename to erpnext/hr/doctype/leave_control_panel/leave_control_panel.js
diff --git a/hr/doctype/leave_control_panel/leave_control_panel.py b/erpnext/hr/doctype/leave_control_panel/leave_control_panel.py
similarity index 100%
rename from hr/doctype/leave_control_panel/leave_control_panel.py
rename to erpnext/hr/doctype/leave_control_panel/leave_control_panel.py
diff --git a/hr/doctype/leave_control_panel/leave_control_panel.txt b/erpnext/hr/doctype/leave_control_panel/leave_control_panel.txt
similarity index 100%
rename from hr/doctype/leave_control_panel/leave_control_panel.txt
rename to erpnext/hr/doctype/leave_control_panel/leave_control_panel.txt
diff --git a/hr/doctype/professional_training_details/__init__.py b/erpnext/hr/doctype/leave_type/__init__.py
similarity index 100%
rename from hr/doctype/professional_training_details/__init__.py
rename to erpnext/hr/doctype/leave_type/__init__.py
diff --git a/hr/doctype/leave_type/leave_type.js b/erpnext/hr/doctype/leave_type/leave_type.js
similarity index 100%
rename from hr/doctype/leave_type/leave_type.js
rename to erpnext/hr/doctype/leave_type/leave_type.js
diff --git a/hr/doctype/leave_type/leave_type.txt b/erpnext/hr/doctype/leave_type/leave_type.txt
similarity index 100%
rename from hr/doctype/leave_type/leave_type.txt
rename to erpnext/hr/doctype/leave_type/leave_type.txt
diff --git a/hr/doctype/salary_slip/__init__.py b/erpnext/hr/doctype/other_income_detail/__init__.py
similarity index 100%
rename from hr/doctype/salary_slip/__init__.py
rename to erpnext/hr/doctype/other_income_detail/__init__.py
diff --git a/hr/doctype/other_income_detail/other_income_detail.txt b/erpnext/hr/doctype/other_income_detail/other_income_detail.txt
similarity index 100%
rename from hr/doctype/other_income_detail/other_income_detail.txt
rename to erpnext/hr/doctype/other_income_detail/other_income_detail.txt
diff --git a/hr/doctype/salary_structure/__init__.py b/erpnext/hr/doctype/payroll_rule/__init__.py
similarity index 100%
rename from hr/doctype/salary_structure/__init__.py
rename to erpnext/hr/doctype/payroll_rule/__init__.py
diff --git a/hr/doctype/payroll_rule/payroll_rule.js b/erpnext/hr/doctype/payroll_rule/payroll_rule.js
similarity index 100%
rename from hr/doctype/payroll_rule/payroll_rule.js
rename to erpnext/hr/doctype/payroll_rule/payroll_rule.js
diff --git a/hr/doctype/payroll_rule/payroll_rule.py b/erpnext/hr/doctype/payroll_rule/payroll_rule.py
similarity index 100%
rename from hr/doctype/payroll_rule/payroll_rule.py
rename to erpnext/hr/doctype/payroll_rule/payroll_rule.py
diff --git a/hr/doctype/payroll_rule/payroll_rule.txt b/erpnext/hr/doctype/payroll_rule/payroll_rule.txt
similarity index 100%
rename from hr/doctype/payroll_rule/payroll_rule.txt
rename to erpnext/hr/doctype/payroll_rule/payroll_rule.txt
diff --git a/hr/doctype/ss_deduction_detail/__init__.py b/erpnext/hr/doctype/previous_experience_detail/__init__.py
similarity index 100%
rename from hr/doctype/ss_deduction_detail/__init__.py
rename to erpnext/hr/doctype/previous_experience_detail/__init__.py
diff --git a/hr/doctype/previous_experience_detail/previous_experience_detail.txt b/erpnext/hr/doctype/previous_experience_detail/previous_experience_detail.txt
similarity index 100%
rename from hr/doctype/previous_experience_detail/previous_experience_detail.txt
rename to erpnext/hr/doctype/previous_experience_detail/previous_experience_detail.txt
diff --git a/hr/doctype/ss_earning_detail/__init__.py b/erpnext/hr/doctype/professional_training_details/__init__.py
similarity index 100%
rename from hr/doctype/ss_earning_detail/__init__.py
rename to erpnext/hr/doctype/professional_training_details/__init__.py
diff --git a/hr/doctype/professional_training_details/professional_training_details.txt b/erpnext/hr/doctype/professional_training_details/professional_training_details.txt
similarity index 100%
rename from hr/doctype/professional_training_details/professional_training_details.txt
rename to erpnext/hr/doctype/professional_training_details/professional_training_details.txt
diff --git a/hr/doctype/salary_manager/__init__.py b/erpnext/hr/doctype/salary_manager/__init__.py
similarity index 100%
rename from hr/doctype/salary_manager/__init__.py
rename to erpnext/hr/doctype/salary_manager/__init__.py
diff --git a/hr/doctype/salary_manager/salary_manager.js b/erpnext/hr/doctype/salary_manager/salary_manager.js
similarity index 100%
rename from hr/doctype/salary_manager/salary_manager.js
rename to erpnext/hr/doctype/salary_manager/salary_manager.js
diff --git a/hr/doctype/salary_manager/salary_manager.py b/erpnext/hr/doctype/salary_manager/salary_manager.py
similarity index 100%
rename from hr/doctype/salary_manager/salary_manager.py
rename to erpnext/hr/doctype/salary_manager/salary_manager.py
diff --git a/hr/doctype/salary_manager/salary_manager.txt b/erpnext/hr/doctype/salary_manager/salary_manager.txt
similarity index 100%
rename from hr/doctype/salary_manager/salary_manager.txt
rename to erpnext/hr/doctype/salary_manager/salary_manager.txt
diff --git a/hr/doctype/salary_manager/test_salary_manager.py b/erpnext/hr/doctype/salary_manager/test_salary_manager.py
similarity index 100%
rename from hr/doctype/salary_manager/test_salary_manager.py
rename to erpnext/hr/doctype/salary_manager/test_salary_manager.py
diff --git a/hr/page/__init__.py b/erpnext/hr/doctype/salary_slip/__init__.py
similarity index 100%
rename from hr/page/__init__.py
rename to erpnext/hr/doctype/salary_slip/__init__.py
diff --git a/hr/doctype/salary_slip/salary_slip.js b/erpnext/hr/doctype/salary_slip/salary_slip.js
similarity index 100%
rename from hr/doctype/salary_slip/salary_slip.js
rename to erpnext/hr/doctype/salary_slip/salary_slip.js
diff --git a/hr/doctype/salary_slip/salary_slip.py b/erpnext/hr/doctype/salary_slip/salary_slip.py
similarity index 100%
rename from hr/doctype/salary_slip/salary_slip.py
rename to erpnext/hr/doctype/salary_slip/salary_slip.py
diff --git a/hr/doctype/salary_slip/salary_slip.txt b/erpnext/hr/doctype/salary_slip/salary_slip.txt
similarity index 100%
rename from hr/doctype/salary_slip/salary_slip.txt
rename to erpnext/hr/doctype/salary_slip/salary_slip.txt
diff --git a/hr/search_criteria/__init__.py b/erpnext/hr/doctype/salary_structure/__init__.py
similarity index 100%
rename from hr/search_criteria/__init__.py
rename to erpnext/hr/doctype/salary_structure/__init__.py
diff --git a/hr/doctype/salary_structure/salary_structure.js b/erpnext/hr/doctype/salary_structure/salary_structure.js
similarity index 100%
rename from hr/doctype/salary_structure/salary_structure.js
rename to erpnext/hr/doctype/salary_structure/salary_structure.js
diff --git a/hr/doctype/salary_structure/salary_structure.py b/erpnext/hr/doctype/salary_structure/salary_structure.py
similarity index 100%
rename from hr/doctype/salary_structure/salary_structure.py
rename to erpnext/hr/doctype/salary_structure/salary_structure.py
diff --git a/hr/doctype/salary_structure/salary_structure.txt b/erpnext/hr/doctype/salary_structure/salary_structure.txt
similarity index 100%
rename from hr/doctype/salary_structure/salary_structure.txt
rename to erpnext/hr/doctype/salary_structure/salary_structure.txt
diff --git a/hr/search_criteria/employee_appraisals/__init__.py b/erpnext/hr/doctype/ss_deduction_detail/__init__.py
similarity index 100%
rename from hr/search_criteria/employee_appraisals/__init__.py
rename to erpnext/hr/doctype/ss_deduction_detail/__init__.py
diff --git a/hr/doctype/ss_deduction_detail/ss_deduction_detail.txt b/erpnext/hr/doctype/ss_deduction_detail/ss_deduction_detail.txt
similarity index 100%
rename from hr/doctype/ss_deduction_detail/ss_deduction_detail.txt
rename to erpnext/hr/doctype/ss_deduction_detail/ss_deduction_detail.txt
diff --git a/hr/search_criteria/employee_details/__init__.py b/erpnext/hr/doctype/ss_earning_detail/__init__.py
similarity index 100%
rename from hr/search_criteria/employee_details/__init__.py
rename to erpnext/hr/doctype/ss_earning_detail/__init__.py
diff --git a/hr/doctype/ss_earning_detail/ss_earning_detail.txt b/erpnext/hr/doctype/ss_earning_detail/ss_earning_detail.txt
similarity index 100%
rename from hr/doctype/ss_earning_detail/ss_earning_detail.txt
rename to erpnext/hr/doctype/ss_earning_detail/ss_earning_detail.txt
diff --git a/hr/search_criteria/employee_in_company_experience/__init__.py b/erpnext/hr/page/__init__.py
similarity index 100%
rename from hr/search_criteria/employee_in_company_experience/__init__.py
rename to erpnext/hr/page/__init__.py
diff --git a/hr/search_criteria/employee_information/__init__.py b/erpnext/hr/search_criteria/__init__.py
similarity index 100%
rename from hr/search_criteria/employee_information/__init__.py
rename to erpnext/hr/search_criteria/__init__.py
diff --git a/hr/search_criteria/employees_birthday/__init__.py b/erpnext/hr/search_criteria/employee_appraisals/__init__.py
similarity index 100%
rename from hr/search_criteria/employees_birthday/__init__.py
rename to erpnext/hr/search_criteria/employee_appraisals/__init__.py
diff --git a/hr/search_criteria/employee_appraisals/employee_appraisals.txt b/erpnext/hr/search_criteria/employee_appraisals/employee_appraisals.txt
similarity index 100%
rename from hr/search_criteria/employee_appraisals/employee_appraisals.txt
rename to erpnext/hr/search_criteria/employee_appraisals/employee_appraisals.txt
diff --git a/hr/search_criteria/employeewise_balance_leave_report/__init__.py b/erpnext/hr/search_criteria/employee_details/__init__.py
similarity index 100%
rename from hr/search_criteria/employeewise_balance_leave_report/__init__.py
rename to erpnext/hr/search_criteria/employee_details/__init__.py
diff --git a/hr/search_criteria/employee_details/employee_details.txt b/erpnext/hr/search_criteria/employee_details/employee_details.txt
similarity index 100%
rename from hr/search_criteria/employee_details/employee_details.txt
rename to erpnext/hr/search_criteria/employee_details/employee_details.txt
diff --git a/hr/search_criteria/employeewise_leave_transaction_details/__init__.py b/erpnext/hr/search_criteria/employee_in_company_experience/__init__.py
similarity index 100%
rename from hr/search_criteria/employeewise_leave_transaction_details/__init__.py
rename to erpnext/hr/search_criteria/employee_in_company_experience/__init__.py
diff --git a/hr/search_criteria/employee_in_company_experience/employee_in_company_experience.txt b/erpnext/hr/search_criteria/employee_in_company_experience/employee_in_company_experience.txt
similarity index 100%
rename from hr/search_criteria/employee_in_company_experience/employee_in_company_experience.txt
rename to erpnext/hr/search_criteria/employee_in_company_experience/employee_in_company_experience.txt
diff --git a/hr/search_criteria/expense_vouchers/__init__.py b/erpnext/hr/search_criteria/employee_information/__init__.py
similarity index 100%
rename from hr/search_criteria/expense_vouchers/__init__.py
rename to erpnext/hr/search_criteria/employee_information/__init__.py
diff --git a/hr/search_criteria/employee_information/employee_information.py b/erpnext/hr/search_criteria/employee_information/employee_information.py
similarity index 100%
rename from hr/search_criteria/employee_information/employee_information.py
rename to erpnext/hr/search_criteria/employee_information/employee_information.py
diff --git a/hr/search_criteria/employee_information/employee_information.txt b/erpnext/hr/search_criteria/employee_information/employee_information.txt
similarity index 100%
rename from hr/search_criteria/employee_information/employee_information.txt
rename to erpnext/hr/search_criteria/employee_information/employee_information.txt
diff --git a/hr/search_criteria/monthly_attendance_details/__init__.py b/erpnext/hr/search_criteria/employees_birthday/__init__.py
similarity index 100%
rename from hr/search_criteria/monthly_attendance_details/__init__.py
rename to erpnext/hr/search_criteria/employees_birthday/__init__.py
diff --git a/hr/search_criteria/employees_birthday/employees_birthday.txt b/erpnext/hr/search_criteria/employees_birthday/employees_birthday.txt
similarity index 100%
rename from hr/search_criteria/employees_birthday/employees_birthday.txt
rename to erpnext/hr/search_criteria/employees_birthday/employees_birthday.txt
diff --git a/hr/search_criteria/monthly_salary_register/__init__.py b/erpnext/hr/search_criteria/employeewise_balance_leave_report/__init__.py
similarity index 100%
rename from hr/search_criteria/monthly_salary_register/__init__.py
rename to erpnext/hr/search_criteria/employeewise_balance_leave_report/__init__.py
diff --git a/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.js b/erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.js
similarity index 100%
rename from hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.js
rename to erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.js
diff --git a/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.py b/erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.py
similarity index 100%
rename from hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.py
rename to erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.py
diff --git a/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.txt b/erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.txt
similarity index 100%
rename from hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.txt
rename to erpnext/hr/search_criteria/employeewise_balance_leave_report/employeewise_balance_leave_report.txt
diff --git a/hr/search_criteria/new_or_left_employees_for_a_month/__init__.py b/erpnext/hr/search_criteria/employeewise_leave_transaction_details/__init__.py
similarity index 100%
rename from hr/search_criteria/new_or_left_employees_for_a_month/__init__.py
rename to erpnext/hr/search_criteria/employeewise_leave_transaction_details/__init__.py
diff --git a/hr/search_criteria/employeewise_leave_transaction_details/employeewise_leave_transaction_details.txt b/erpnext/hr/search_criteria/employeewise_leave_transaction_details/employeewise_leave_transaction_details.txt
similarity index 100%
rename from hr/search_criteria/employeewise_leave_transaction_details/employeewise_leave_transaction_details.txt
rename to erpnext/hr/search_criteria/employeewise_leave_transaction_details/employeewise_leave_transaction_details.txt
diff --git a/hr/search_criteria/pending_appraisals/__init__.py b/erpnext/hr/search_criteria/expense_vouchers/__init__.py
similarity index 100%
rename from hr/search_criteria/pending_appraisals/__init__.py
rename to erpnext/hr/search_criteria/expense_vouchers/__init__.py
diff --git a/hr/search_criteria/expense_vouchers/expense_vouchers.txt b/erpnext/hr/search_criteria/expense_vouchers/expense_vouchers.txt
similarity index 100%
rename from hr/search_criteria/expense_vouchers/expense_vouchers.txt
rename to erpnext/hr/search_criteria/expense_vouchers/expense_vouchers.txt
diff --git a/hr/search_criteria/pending_expense_vouchers/__init__.py b/erpnext/hr/search_criteria/monthly_attendance_details/__init__.py
similarity index 100%
rename from hr/search_criteria/pending_expense_vouchers/__init__.py
rename to erpnext/hr/search_criteria/monthly_attendance_details/__init__.py
diff --git a/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.js b/erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.js
similarity index 100%
rename from hr/search_criteria/monthly_attendance_details/monthly_attendance_details.js
rename to erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.js
diff --git a/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.py b/erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.py
similarity index 100%
rename from hr/search_criteria/monthly_attendance_details/monthly_attendance_details.py
rename to erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.py
diff --git a/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.sql b/erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.sql
similarity index 100%
rename from hr/search_criteria/monthly_attendance_details/monthly_attendance_details.sql
rename to erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.sql
diff --git a/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt b/erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
similarity index 100%
rename from hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
rename to erpnext/hr/search_criteria/monthly_attendance_details/monthly_attendance_details.txt
diff --git a/hr/search_criteria/salary_register/__init__.py b/erpnext/hr/search_criteria/monthly_salary_register/__init__.py
similarity index 100%
rename from hr/search_criteria/salary_register/__init__.py
rename to erpnext/hr/search_criteria/monthly_salary_register/__init__.py
diff --git a/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt b/erpnext/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
similarity index 100%
rename from hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
rename to erpnext/hr/search_criteria/monthly_salary_register/monthly_salary_register.txt
diff --git a/hr/search_criteria/salary_slips/__init__.py b/erpnext/hr/search_criteria/new_or_left_employees_for_a_month/__init__.py
similarity index 100%
rename from hr/search_criteria/salary_slips/__init__.py
rename to erpnext/hr/search_criteria/new_or_left_employees_for_a_month/__init__.py
diff --git a/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.js b/erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.js
similarity index 100%
rename from hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.js
rename to erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.js
diff --git a/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.py b/erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.py
similarity index 100%
rename from hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.py
rename to erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.py
diff --git a/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt b/erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
similarity index 100%
rename from hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
rename to erpnext/hr/search_criteria/new_or_left_employees_for_a_month/new_or_left_employees_for_a_month.txt
diff --git a/hr/search_criteria/salary_structure_details/__init__.py b/erpnext/hr/search_criteria/pending_appraisals/__init__.py
similarity index 100%
rename from hr/search_criteria/salary_structure_details/__init__.py
rename to erpnext/hr/search_criteria/pending_appraisals/__init__.py
diff --git a/hr/search_criteria/pending_appraisals/pending_appraisals.js b/erpnext/hr/search_criteria/pending_appraisals/pending_appraisals.js
similarity index 100%
rename from hr/search_criteria/pending_appraisals/pending_appraisals.js
rename to erpnext/hr/search_criteria/pending_appraisals/pending_appraisals.js
diff --git a/hr/search_criteria/pending_appraisals/pending_appraisals.txt b/erpnext/hr/search_criteria/pending_appraisals/pending_appraisals.txt
similarity index 100%
rename from hr/search_criteria/pending_appraisals/pending_appraisals.txt
rename to erpnext/hr/search_criteria/pending_appraisals/pending_appraisals.txt
diff --git a/knowledge_base/__init__.py b/erpnext/hr/search_criteria/pending_expense_vouchers/__init__.py
similarity index 100%
rename from knowledge_base/__init__.py
rename to erpnext/hr/search_criteria/pending_expense_vouchers/__init__.py
diff --git a/hr/search_criteria/pending_expense_vouchers/pending_expense_vouchers.js b/erpnext/hr/search_criteria/pending_expense_vouchers/pending_expense_vouchers.js
similarity index 100%
rename from hr/search_criteria/pending_expense_vouchers/pending_expense_vouchers.js
rename to erpnext/hr/search_criteria/pending_expense_vouchers/pending_expense_vouchers.js
diff --git a/hr/search_criteria/pending_expense_vouchers/pending_expense_vouchers.txt b/erpnext/hr/search_criteria/pending_expense_vouchers/pending_expense_vouchers.txt
similarity index 100%
rename from hr/search_criteria/pending_expense_vouchers/pending_expense_vouchers.txt
rename to erpnext/hr/search_criteria/pending_expense_vouchers/pending_expense_vouchers.txt
diff --git a/knowledge_base/doctype/__init__.py b/erpnext/hr/search_criteria/salary_register/__init__.py
similarity index 100%
rename from knowledge_base/doctype/__init__.py
rename to erpnext/hr/search_criteria/salary_register/__init__.py
diff --git a/hr/search_criteria/salary_register/salary_register.js b/erpnext/hr/search_criteria/salary_register/salary_register.js
similarity index 100%
rename from hr/search_criteria/salary_register/salary_register.js
rename to erpnext/hr/search_criteria/salary_register/salary_register.js
diff --git a/hr/search_criteria/salary_register/salary_register.py b/erpnext/hr/search_criteria/salary_register/salary_register.py
similarity index 100%
rename from hr/search_criteria/salary_register/salary_register.py
rename to erpnext/hr/search_criteria/salary_register/salary_register.py
diff --git a/hr/search_criteria/salary_register/salary_register.txt b/erpnext/hr/search_criteria/salary_register/salary_register.txt
similarity index 100%
rename from hr/search_criteria/salary_register/salary_register.txt
rename to erpnext/hr/search_criteria/salary_register/salary_register.txt
diff --git a/knowledge_base/doctype/answer/__init__.py b/erpnext/hr/search_criteria/salary_slips/__init__.py
similarity index 100%
rename from knowledge_base/doctype/answer/__init__.py
rename to erpnext/hr/search_criteria/salary_slips/__init__.py
diff --git a/hr/search_criteria/salary_slips/salary_slips.txt b/erpnext/hr/search_criteria/salary_slips/salary_slips.txt
similarity index 100%
rename from hr/search_criteria/salary_slips/salary_slips.txt
rename to erpnext/hr/search_criteria/salary_slips/salary_slips.txt
diff --git a/knowledge_base/doctype/question/__init__.py b/erpnext/hr/search_criteria/salary_structure_details/__init__.py
similarity index 100%
rename from knowledge_base/doctype/question/__init__.py
rename to erpnext/hr/search_criteria/salary_structure_details/__init__.py
diff --git a/hr/search_criteria/salary_structure_details/salary_structure_details.txt b/erpnext/hr/search_criteria/salary_structure_details/salary_structure_details.txt
similarity index 100%
rename from hr/search_criteria/salary_structure_details/salary_structure_details.txt
rename to erpnext/hr/search_criteria/salary_structure_details/salary_structure_details.txt
diff --git a/knowledge_base/Module Def/Knowledge Base/Knowledge Base.txt b/erpnext/knowledge_base/Module Def/Knowledge Base/Knowledge Base.txt
similarity index 100%
rename from knowledge_base/Module Def/Knowledge Base/Knowledge Base.txt
rename to erpnext/knowledge_base/Module Def/Knowledge Base/Knowledge Base.txt
diff --git a/knowledge_base/doctype/question_control/__init__.py b/erpnext/knowledge_base/__init__.py
similarity index 100%
rename from knowledge_base/doctype/question_control/__init__.py
rename to erpnext/knowledge_base/__init__.py
diff --git a/knowledge_base/doctype/question_tag/__init__.py b/erpnext/knowledge_base/doctype/__init__.py
similarity index 100%
rename from knowledge_base/doctype/question_tag/__init__.py
rename to erpnext/knowledge_base/doctype/__init__.py
diff --git a/knowledge_base/page/__init__.py b/erpnext/knowledge_base/doctype/answer/__init__.py
similarity index 100%
rename from knowledge_base/page/__init__.py
rename to erpnext/knowledge_base/doctype/answer/__init__.py
diff --git a/knowledge_base/doctype/answer/answer.txt b/erpnext/knowledge_base/doctype/answer/answer.txt
similarity index 100%
rename from knowledge_base/doctype/answer/answer.txt
rename to erpnext/knowledge_base/doctype/answer/answer.txt
diff --git a/knowledge_base/page/question_view/__init__.py b/erpnext/knowledge_base/doctype/question/__init__.py
similarity index 100%
rename from knowledge_base/page/question_view/__init__.py
rename to erpnext/knowledge_base/doctype/question/__init__.py
diff --git a/knowledge_base/doctype/question/question.py b/erpnext/knowledge_base/doctype/question/question.py
similarity index 100%
rename from knowledge_base/doctype/question/question.py
rename to erpnext/knowledge_base/doctype/question/question.py
diff --git a/knowledge_base/doctype/question/question.txt b/erpnext/knowledge_base/doctype/question/question.txt
similarity index 100%
rename from knowledge_base/doctype/question/question.txt
rename to erpnext/knowledge_base/doctype/question/question.txt
diff --git a/knowledge_base/page/questions/__init__.py b/erpnext/knowledge_base/doctype/question_control/__init__.py
similarity index 100%
rename from knowledge_base/page/questions/__init__.py
rename to erpnext/knowledge_base/doctype/question_control/__init__.py
diff --git a/knowledge_base/doctype/question_control/question_control.txt b/erpnext/knowledge_base/doctype/question_control/question_control.txt
similarity index 100%
rename from knowledge_base/doctype/question_control/question_control.txt
rename to erpnext/knowledge_base/doctype/question_control/question_control.txt
diff --git a/patches/__init__.py b/erpnext/knowledge_base/doctype/question_tag/__init__.py
similarity index 100%
rename from patches/__init__.py
rename to erpnext/knowledge_base/doctype/question_tag/__init__.py
diff --git a/knowledge_base/doctype/question_tag/question_tag.txt b/erpnext/knowledge_base/doctype/question_tag/question_tag.txt
similarity index 100%
rename from knowledge_base/doctype/question_tag/question_tag.txt
rename to erpnext/knowledge_base/doctype/question_tag/question_tag.txt
diff --git a/patches/old_patches/__init__.py b/erpnext/knowledge_base/page/__init__.py
similarity index 100%
rename from patches/old_patches/__init__.py
rename to erpnext/knowledge_base/page/__init__.py
diff --git a/knowledge_base/page/kb_common/kb_common.js b/erpnext/knowledge_base/page/kb_common/kb_common.js
similarity index 100%
rename from knowledge_base/page/kb_common/kb_common.js
rename to erpnext/knowledge_base/page/kb_common/kb_common.js
diff --git a/production/__init__.py b/erpnext/knowledge_base/page/question_view/__init__.py
similarity index 100%
rename from production/__init__.py
rename to erpnext/knowledge_base/page/question_view/__init__.py
diff --git a/knowledge_base/page/question_view/question_view.css b/erpnext/knowledge_base/page/question_view/question_view.css
similarity index 100%
rename from knowledge_base/page/question_view/question_view.css
rename to erpnext/knowledge_base/page/question_view/question_view.css
diff --git a/knowledge_base/page/question_view/question_view.js b/erpnext/knowledge_base/page/question_view/question_view.js
similarity index 100%
rename from knowledge_base/page/question_view/question_view.js
rename to erpnext/knowledge_base/page/question_view/question_view.js
diff --git a/knowledge_base/page/question_view/question_view.py b/erpnext/knowledge_base/page/question_view/question_view.py
similarity index 100%
rename from knowledge_base/page/question_view/question_view.py
rename to erpnext/knowledge_base/page/question_view/question_view.py
diff --git a/knowledge_base/page/question_view/question_view.txt b/erpnext/knowledge_base/page/question_view/question_view.txt
similarity index 100%
rename from knowledge_base/page/question_view/question_view.txt
rename to erpnext/knowledge_base/page/question_view/question_view.txt
diff --git a/production/doctype/__init__.py b/erpnext/knowledge_base/page/questions/__init__.py
similarity index 100%
rename from production/doctype/__init__.py
rename to erpnext/knowledge_base/page/questions/__init__.py
diff --git a/knowledge_base/page/questions/questions.css b/erpnext/knowledge_base/page/questions/questions.css
similarity index 100%
rename from knowledge_base/page/questions/questions.css
rename to erpnext/knowledge_base/page/questions/questions.css
diff --git a/knowledge_base/page/questions/questions.html b/erpnext/knowledge_base/page/questions/questions.html
similarity index 100%
rename from knowledge_base/page/questions/questions.html
rename to erpnext/knowledge_base/page/questions/questions.html
diff --git a/knowledge_base/page/questions/questions.js b/erpnext/knowledge_base/page/questions/questions.js
similarity index 100%
rename from knowledge_base/page/questions/questions.js
rename to erpnext/knowledge_base/page/questions/questions.js
diff --git a/knowledge_base/page/questions/questions.py b/erpnext/knowledge_base/page/questions/questions.py
similarity index 100%
rename from knowledge_base/page/questions/questions.py
rename to erpnext/knowledge_base/page/questions/questions.py
diff --git a/knowledge_base/page/questions/questions.txt b/erpnext/knowledge_base/page/questions/questions.txt
similarity index 100%
rename from knowledge_base/page/questions/questions.txt
rename to erpnext/knowledge_base/page/questions/questions.txt
diff --git a/production/doctype/bill_of_materials/__init__.py b/erpnext/patches/__init__.py
similarity index 100%
rename from production/doctype/bill_of_materials/__init__.py
rename to erpnext/patches/__init__.py
diff --git a/erpnext/patches/delivery_billing_status_patch.py b/erpnext/patches/delivery_billing_status_patch.py
new file mode 100644
index 0000000000..1fcd8bfdda
--- /dev/null
+++ b/erpnext/patches/delivery_billing_status_patch.py
@@ -0,0 +1,55 @@
+import webnotes
+sql = webnotes.conn.sql
+
+test=1
+
+# Update SO and DN Detail
+#--------------------------
+def update_delivered_billed_qty():
+ # update billed amt in item table in so and dn
+ sql(""" update `tabSales Order Detail` so
+ set billed_amt = (select sum(amount) from `tabRV Detail` where `so_detail`= so.name and docstatus=1 and parent not like 'old%%'),
+ delivered_qty = (select sum(qty) from `tabDelivery Note Detail` where `prevdoc_detail_docname`= so.name and docstatus=1 and parent not like 'old%%'),
+ modified = now()
+ where docstatus = 1
+ """)
+
+ sql(""" update `tabDelivery Note Detail` dn
+ set billed_amt = (select sum(amount) from `tabRV Detail` where `dn_detail`= dn.name and docstatus=1 and parent not like 'old%%'),
+ modified = now()
+ where docstatus = 1
+ """)
+
+# update SO
+#---------------
+def update_percent():
+ # calculate % billed based on item table
+ sql(""" update `tabSales Order` so
+ set per_delivered = (select sum(if(qty > ifnull(delivered_qty, 0), delivered_qty, qty))/sum(qty)*100 from `tabSales Order Detail` where parent=so.name),
+ per_billed = (select sum(if(amount > ifnull(billed_amt, 0), billed_amt, amount))/sum(amount)*100 from `tabSales Order Detail` where parent = so.name),
+ modified = now()
+ where docstatus = 1
+ """)
+
+ # update DN
+ # ---------
+ sql(""" update `tabDelivery Note` dn
+ set per_billed = (select sum(if(amount > ifnull(billed_amt, 0), billed_amt, amount))/sum(amount)*100 from `tabDelivery Note Detail` where parent = dn.name),
+ modified = now()
+ where docstatus=1
+ """)
+
+# update delivery/billing status
+#-------------------------------
+def update_status():
+ sql("""update `tabSales Order` set delivery_status = if(ifnull(per_delivered,0) < 0.001, 'Not Delivered',
+ if(per_delivered >= 99.99, 'Fully Delivered', 'Partly Delivered'))""")
+ sql("""update `tabSales Order` set billing_status = if(ifnull(per_billed,0) < 0.001, 'Not Billed',
+ if(per_billed >= 99.99, 'Fully Billed', 'Partly Billed'))""")
+ sql("""update `tabDelivery Note` set billing_status = if(ifnull(per_billed,0) < 0.001, 'Not Billed',
+ if(per_billed >= 99.99, 'Fully Billed', 'Partly Billed'))""")
+
+def run_patch():
+ update_delivered_billed_qty()
+ update_percent()
+ update_status()
diff --git a/patches/erpnext_structure_cleanup.py b/erpnext/patches/erpnext_structure_cleanup.py
similarity index 100%
rename from patches/erpnext_structure_cleanup.py
rename to erpnext/patches/erpnext_structure_cleanup.py
diff --git a/patches/index_patch.py b/erpnext/patches/index_patch.py
similarity index 100%
rename from patches/index_patch.py
rename to erpnext/patches/index_patch.py
diff --git a/production/doctype/bom_control/__init__.py b/erpnext/patches/old_patches/__init__.py
similarity index 100%
rename from production/doctype/bom_control/__init__.py
rename to erpnext/patches/old_patches/__init__.py
diff --git a/patches/old_patches/customer_address.py b/erpnext/patches/old_patches/customer_address.py
similarity index 100%
rename from patches/old_patches/customer_address.py
rename to erpnext/patches/old_patches/customer_address.py
diff --git a/patches/old_patches/doctype_permission_patch.py b/erpnext/patches/old_patches/doctype_permission_patch.py
similarity index 100%
rename from patches/old_patches/doctype_permission_patch.py
rename to erpnext/patches/old_patches/doctype_permission_patch.py
diff --git a/patches/old_patches/feed_patch.py b/erpnext/patches/old_patches/feed_patch.py
similarity index 100%
rename from patches/old_patches/feed_patch.py
rename to erpnext/patches/old_patches/feed_patch.py
diff --git a/patches/old_patches/patch_1.py b/erpnext/patches/old_patches/patch_1.py
similarity index 100%
rename from patches/old_patches/patch_1.py
rename to erpnext/patches/old_patches/patch_1.py
diff --git a/patches/old_patches/replacecode.py b/erpnext/patches/old_patches/replacecode.py
similarity index 100%
rename from patches/old_patches/replacecode.py
rename to erpnext/patches/old_patches/replacecode.py
diff --git a/patches/patch.py b/erpnext/patches/patch.py
similarity index 63%
rename from patches/patch.py
rename to erpnext/patches/patch.py
index cf9774bffe..a3093c1d2d 100644
--- a/patches/patch.py
+++ b/erpnext/patches/patch.py
@@ -1,7 +1,7 @@
# REMEMBER to update this
# ========================
-last_patch = 355
+last_patch = 384
#-------------------------------------------
@@ -251,6 +251,8 @@ def execute(patch_no):
reload_doc('stock','doctype','item_customer_detail')
elif patch_no == 344:
sql("delete from `tabDocFormat` where ifnull(format, '') = '' and parent = 'Delivery Note'")
+ reload_doc('stock', 'doctype', 'delivery_note_detail')
+ reload_doc('stock', 'doctype', 'item_customer_detail')
elif patch_no == 345:
# rerun 343 (merge confict)
reload_doc('stock','doctype','item_customer_detail')
@@ -289,9 +291,19 @@ def execute(patch_no):
ch.format = 'Delivery Note Packing List Wise'
ch.save(1)
elif patch_no == 353:
- reload_doc('hr', 'doctype', 'salary_manager')
+ reload_doc('core', 'doctype', 'doctype')
+ sql("update `tabDocType` set default_print_format = 'Standard' where name = 'Delivery Note'")
elif patch_no == 354:
- reload_doc('setup', 'doctype','feature_setup')
+ reload_doc('stock', 'doctype', 'delivery_note')
+ reload_doc('stock', 'doctype', 'delivery_note_detail')
+ elif patch_no == 355:
+ sql("update `tabDocField` set print_hide =1 where fieldname in ('pack_no', 'pack_gross_wt', 'weight_uom', 'pack_nett_wt') and parent = 'Delivery Note Detail'")
+ elif patch_no == 356:
+ sql("update `tabDocField` set print_hide =1 where fieldname = 'print_packing_slip' and parent = 'Delivery Note'")
+ elif patch_no == 357:
+ reload_doc('hr', 'doctype', 'salary_manager')
+ elif patch_no == 358:
+ reload_doc('setup', 'doctype','features_setup')
reload_doc('stock','doctype','item')
sql("update tabDocField set label='Produced Qty',description='Updated after finished goods are transferred to FG Warehouse through Stock Entry' where parent='Production Order' and fieldname='produced_qty'")
rs = sql("select fieldname from tabDocField where parent='Features Setup' and fieldname is not null")
@@ -300,7 +312,145 @@ def execute(patch_no):
for d in rs:
m.fields[d[0]] = 1
m.save()
- elif patch_no == 355:
+ elif patch_no == 359:
reload_doc('hr', 'doctype', 'salary_slip')
delete_doc('DocType', 'Salary Control Panel')
+ elif patch_no == 360:
+ sql("delete from `tabDocField` where (fieldname in ('client_string', 'server_code_error', 'server_code_compiled', 'server_code', 'server_code_core', 'client_script', 'client_script_core', 'dt_template', 'change_log') or label = 'Template') and parent = 'DocType'")
+ elif patch_no == 361:
+ sql("update `tabModule Def Item` set doc_name = 'GL Entry' where display_name in ('Lease Agreement List', 'Lease Monthly Future Installment Inflows', 'Lease Overdue Age Wise', 'Lease Overdue List', 'Lease Receipts Client Wise', 'Lease Receipt Summary Month Wise', 'Lease Yearly Future Installment Inflows') and parent = 'Accounts'")
+ elif patch_no == 362:
+ sql("update `tabDocField` set no_copy = 1 where fieldname in ('amended_from', 'amendment_date', 'file_list', 'naming_series', 'status')")
+ elif patch_no == 363:
+ reload_doc('accounts', 'search_criteria', 'voucher_wise_tax_details')
+ reload_doc('accounts', 'Module Def', 'Accounts')
+ mappers = sql("select name, module from `tabDocType Mapper`")
+ for d in mappers:
+ if d[0] and d[1]:
+ reload_doc(d[1].lower(), 'DocType Mapper', d[0])
+ elif patch_no == 364:
+ sql("""delete from `tabField Mapper Detail`
+ where to_field in ('qty', 'amount', 'export_amount')
+ and parent in ('Sales Order-Receivable Voucher', 'Delivery Note-Receivable Voucher')
+ """)
+ mappers = sql("select name, module from `tabDocType Mapper`")
+ for d in mappers:
+ if d[0] and d[1]:
+ reload_doc(d[1].lower(), 'DocType Mapper', d[0])
+ elif patch_no == 365:
+ from patches.delivery_billing_status_patch import run_patch
+ run_patch()
+ elif patch_no == 367:
+ bin = sql("select name from tabBin")
+ for b in bin:
+ bobj = get_obj('Bin',b[0])
+ prev_sle = bobj.get_prev_sle(posting_date = '2011-09-01', posting_time = '01:00')
+ bobj.update_item_valuation(posting_date = '2011-09-01', posting_time = '01:00', prev_sle = prev_sle)
+ elif patch_no == 368:
+ from webnotes.utils import nestedset
+ t = [
+ ['Account', 'parent_account'], ['Cost Center', 'parent_cost_center'],
+ ['Item Group', 'parent_item_group'], ['Territory', 'parent_territory'],
+ ['Customer Group', 'parent_customer_group'], ['Sales Person', 'parent_sales_person']
+ ]
+ for d in t:
+ nestedset.rebuild_tree(d[0], d[1])
+ elif patch_no == 369:
+ reload_doc('hr', 'doctype', 'appraisal')
+ reload_doc('hr', 'doctype', 'appraisal_detail')
+ elif patch_no == 370:
+ sql("update `tabDocField` set `hidden` = 0 where fieldname = 'group_or_ledger' and parent = 'Cost Center'")
+ elif patch_no == 371:
+ comp = sql("select name from tabCompany where docstatus!=2")
+ fy = sql("select name from `tabFiscal Year` order by year_start_date asc")
+ for c in comp:
+ prev_fy = ''
+ for f in fy:
+ fy_obj = get_obj('Fiscal Year', f[0])
+ fy_obj.doc.past_year = prev_fy
+ fy_obj.doc.company = c[0]
+ fy_obj.doc.save()
+ fy_obj.repost()
+ prev_fy = f[0]
+ sql("commit")
+ sql("start transaction")
+ elif patch_no == 372:
+ sql("update tabDocPerm set amend = 0 where parent = 'Salary Structure'")
+ sql("update tabDocPerm set cancel = 1 where parent = 'Company' and role = 'System Manager'")
+ elif patch_no == 373:
+ if sql("select count(name) from `tabDocField` where label = 'View Ledger Entry' and parent = 'Journal Voucher' and fieldtype = 'Button'")[0][0] > 1:
+ sql("delete from `tabDocField` where label = 'View Ledger Entry' and parent = 'Journal Voucher' and fieldtype = 'Button' limit 1")
+ if sql("select count(name) from `tabDocField` where label = 'Get Balance' and parent = 'Journal Voucher' and fieldtype = 'Button'")[0][0] > 1:
+ sql("delete from `tabDocField` where label = 'Get Balance' and parent = 'Journal Voucher' and fieldtype = 'Button' limit 1")
+ elif patch_no == 374:
+ reload_doc('accounts', 'doctype', 'internal_reconciliation')
+ reload_doc('accounts', 'doctype', 'ir_payment_detail')
+ reload_doc('accounts', 'Module Def', 'Accounts')
+ elif patch_no == 375:
+ from webnotes.modules.module_manager import reload_doc
+ reload_doc('setup', 'doctype','features_setup')
+ flds = ['page_break', 'projects', 'packing_details', 'discounts', 'brands', 'item_batch_nos', 'after_sales_installations', 'item_searial_nos', 'item_group_in_details', 'exports', 'imports', 'item_advanced', 'sales_extras', 'more_info', 'quality', 'manufacturing', 'pos', 'item_serial_nos']
+
+ for f in flds:
+ val = sql("select value from tabSingles where field = '%s' and doctype = 'Features Setup'" % f)
+ val = val and val[0][0] or 0
+ sql("update `tabSingles` set `value` = %s where `field` = '%s' and doctype = 'Features Setup'" % (val, '__'+f))
+
+ st = "'"+"', '".join(flds)+"'"
+ sql("delete from `tabDocField` where fieldname in (%s) and parent = 'Features Setup'" % st)
+ sql("delete from `tabDefaultValue` where defkey in (%s) and parent = 'Control Panel'" % st)
+
+ get_obj('Features Setup', 'Features Setup').doc.save()
+
+ elif patch_no == 376:
+ from webnotes.modules.module_manager import reload_doc
+
+ reload_doc('setup', 'doctype','features_setup')
+ flds = ['page_break', 'projects', 'packing_details', 'discounts', 'brands', 'item_batch_nos', 'after_sales_installations', 'item_searial_nos', 'item_group_in_details', 'exports', 'imports', 'item_advanced', 'sales_extras', 'more_info', 'quality', 'manufacturing', 'pos', 'item_serial_nos']
+
+ for f in flds:
+ val = sql("select value from tabSingles where field = '%s' and doctype = 'Features Setup'" % f)
+ val = val and val[0][0] or 0
+ sql("update `tabSingles` set `value` = %s where `field` = '%s' and doctype = 'Features Setup'" % (val, 'fs_'+f))
+
+ st = "'__"+"', '__".join(flds)+"'"
+
+ sql("delete from `tabDocField` where fieldname in (%s) and parent = 'Features Setup'" % st)
+ sql("delete from `tabDefaultValue` where defkey in (%s) and parent = 'Control Panel'" % st)
+
+ get_obj('Features Setup', 'Features Setup').doc.save()
+ elif patch_no == 377:
+ sql("delete from `tabDocField` where fieldname = 'item_searial_nos' and parent = 'Features Setup'")
+ sql("delete from `tabDefaultValue` where defkey = 'item_searial_nos' and parent = 'Control Panel'")
+ elif patch_no == 378:
+ rs = sql("select fieldname from tabDocField where parent='Features Setup' and fieldname is not null")
+ from webnotes.model.code import get_obj
+ m = get_obj('Features Setup')
+ for d in rs:
+ m.doc.fields[d[0]] = 1
+ m.doc.save()
+ m.validate()
+ elif patch_no == 379:
+ if sql("select count(name) from `tabDocField` where label = 'Get Specification Details' and parent = 'QA Inspection Report' and fieldtype = 'Button'")[0][0] > 1:
+ sql("delete from `tabDocField` where label = 'Get Specification Details' and parent = 'QA Inspection Report' and fieldtype = 'Button' limit 1")
+ elif patch_no == 380:
+ from webnotes.session_cache import clear_cache
+ clear_cache(webnotes.session['user'])
+ elif patch_no == 381:
+ reload_doc('stock', 'DocType Mapper', 'Purchase Order-Purchase Receipt')
+ elif patch_no == 382:
+ flds = ['page_break', 'projects', 'packing_details', 'discounts', 'brands', 'item_batch_nos', 'after_sales_installations', 'item_searial_nos', 'item_group_in_details', 'exports', 'imports', 'item_advanced', 'sales_extras', 'more_info', 'quality', 'manufacturing', 'pos', 'item_serial_nos']
+
+ st = "'"+"', '".join(flds)+"'"
+ sql("delete from `tabDocField` where fieldname in (%s) and parent = 'Features Setup'" % st)
+ sql("delete from `tabDefaultValue` where defkey in (%s) and parent = 'Control Panel'" % st)
+
+ from webnotes.session_cache import clear_cache
+ clear_cache(webnotes.session['user'])
+ elif patch_no == 383:
+ reload_doc('accounts', 'doctype', 'cost_center')
+ elif patch_no == 384:
+ reload_doc('stock', 'Module Def', 'Stock')
+ sql("delete from `tabModule Def Item` where display_name = 'Serial No' and parent = 'Support'")
+ sql("update `tabDocType` set subject = 'Item Code: %(item_code)s, Warehouse: %(warehouse)s' where name = 'Serial No'")
diff --git a/production/DocType Mapper/Production Forecast-Production Plan/Production Forecast-Production Plan.txt b/erpnext/production/DocType Mapper/Production Forecast-Production Plan/Production Forecast-Production Plan.txt
similarity index 98%
rename from production/DocType Mapper/Production Forecast-Production Plan/Production Forecast-Production Plan.txt
rename to erpnext/production/DocType Mapper/Production Forecast-Production Plan/Production Forecast-Production Plan.txt
index dfbef85dfc..7065fa6ecc 100644
--- a/production/DocType Mapper/Production Forecast-Production Plan/Production Forecast-Production Plan.txt
+++ b/erpnext/production/DocType Mapper/Production Forecast-Production Plan/Production Forecast-Production Plan.txt
@@ -5,7 +5,7 @@
{
'creation': '2010-08-08 17:09:35',
'docstatus': 0,
- 'modified': '2010-01-27 16:03:20',
+ 'modified': '2011-09-15 15:04:42',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
diff --git a/production/DocType Mapper/Production Forecast-Production Planning Tool/Production Forecast-Production Planning Tool.txt b/erpnext/production/DocType Mapper/Production Forecast-Production Planning Tool/Production Forecast-Production Planning Tool.txt
similarity index 98%
rename from production/DocType Mapper/Production Forecast-Production Planning Tool/Production Forecast-Production Planning Tool.txt
rename to erpnext/production/DocType Mapper/Production Forecast-Production Planning Tool/Production Forecast-Production Planning Tool.txt
index 6125d98192..3d6281195d 100644
--- a/production/DocType Mapper/Production Forecast-Production Planning Tool/Production Forecast-Production Planning Tool.txt
+++ b/erpnext/production/DocType Mapper/Production Forecast-Production Planning Tool/Production Forecast-Production Planning Tool.txt
@@ -5,7 +5,7 @@
{
'creation': '2010-08-08 17:09:35',
'docstatus': 0,
- 'modified': '2010-02-12 12:41:03',
+ 'modified': '2011-09-15 15:04:43',
'modified_by': 'Administrator',
'owner': 'jai@webnotestech.com'
},
diff --git a/production/DocType Mapper/Sales Order-Production Plan/Sales Order-Production Plan.txt b/erpnext/production/DocType Mapper/Sales Order-Production Plan/Sales Order-Production Plan.txt
similarity index 98%
rename from production/DocType Mapper/Sales Order-Production Plan/Sales Order-Production Plan.txt
rename to erpnext/production/DocType Mapper/Sales Order-Production Plan/Sales Order-Production Plan.txt
index 41c517376f..780b841208 100644
--- a/production/DocType Mapper/Sales Order-Production Plan/Sales Order-Production Plan.txt
+++ b/erpnext/production/DocType Mapper/Sales Order-Production Plan/Sales Order-Production Plan.txt
@@ -5,7 +5,7 @@
{
'creation': '2010-08-08 17:09:36',
'docstatus': 0,
- 'modified': '2009-12-21 13:16:59',
+ 'modified': '2011-09-15 15:04:45',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
diff --git a/production/Module Def/Production/Production.txt b/erpnext/production/Module Def/Production/Production.txt
similarity index 100%
rename from production/Module Def/Production/Production.txt
rename to erpnext/production/Module Def/Production/Production.txt
diff --git a/production/Role/Production Manager/Production Manager.txt b/erpnext/production/Role/Production Manager/Production Manager.txt
similarity index 100%
rename from production/Role/Production Manager/Production Manager.txt
rename to erpnext/production/Role/Production Manager/Production Manager.txt
diff --git a/production/Role/Production User/Production User.txt b/erpnext/production/Role/Production User/Production User.txt
similarity index 100%
rename from production/Role/Production User/Production User.txt
rename to erpnext/production/Role/Production User/Production User.txt
diff --git a/production/doctype/bom_material/__init__.py b/erpnext/production/__init__.py
similarity index 100%
rename from production/doctype/bom_material/__init__.py
rename to erpnext/production/__init__.py
diff --git a/production/doctype/bom_operation/__init__.py b/erpnext/production/doctype/__init__.py
similarity index 100%
rename from production/doctype/bom_operation/__init__.py
rename to erpnext/production/doctype/__init__.py
diff --git a/production/doctype/bom_replace_utility/__init__.py b/erpnext/production/doctype/bill_of_materials/__init__.py
similarity index 100%
rename from production/doctype/bom_replace_utility/__init__.py
rename to erpnext/production/doctype/bill_of_materials/__init__.py
diff --git a/production/doctype/bill_of_materials/bill_of_materials.js b/erpnext/production/doctype/bill_of_materials/bill_of_materials.js
similarity index 100%
rename from production/doctype/bill_of_materials/bill_of_materials.js
rename to erpnext/production/doctype/bill_of_materials/bill_of_materials.js
diff --git a/production/doctype/bill_of_materials/bill_of_materials.py b/erpnext/production/doctype/bill_of_materials/bill_of_materials.py
similarity index 95%
rename from production/doctype/bill_of_materials/bill_of_materials.py
rename to erpnext/production/doctype/bill_of_materials/bill_of_materials.py
index d287d2f9d5..9727a63fa8 100644
--- a/production/doctype/bill_of_materials/bill_of_materials.py
+++ b/erpnext/production/doctype/bill_of_materials/bill_of_materials.py
@@ -499,19 +499,19 @@ class DocType:
def get_child_flat_bom_items(self, item, d):
child_flat_bom_items=[]
- if item and (item[0]['is_sub_contracted_item'] == 'Yes' or item[0]['is_pro_applicable'] == 'Yes'):
+# if item and (item[0]['is_sub_contracted_item'] == 'Yes' or item[0]['is_pro_applicable'] == 'Yes'):
- child_flat_bom_items = sql("select item_code, description, qty_consumed_per_unit, stock_uom, moving_avg_rate, last_purchase_rate, standard_rate, '%s' as parent_bom, bom_mat_no, 'No' as is_pro_applicable from `tabFlat BOM Detail` where parent = '%s' and is_pro_applicable = 'No' and docstatus = 1" % ( d.bom_no, cstr(d.bom_no)))
- self.cur_flat_bom_items.append([d.item_code, d.description, flt(d.qty), d.stock_uom, flt(d.moving_avg_rate), flt(d.amount_as_per_mar), flt(d.last_purchase_rate), flt(d.amount_as_per_lpr), flt(d.standard_rate), flt(d.amount_as_per_sr), flt(d.qty_consumed_per_unit), (item[0]['is_sub_contracted_item'] == 'Yes') and d.parent or d.bom_no, d.name, (item[0]['is_sub_contracted_item'] == 'Yes') and 'No' or 'Yes'])
+ child_flat_bom_items = sql("select item_code, description, qty_consumed_per_unit, stock_uom, moving_avg_rate, last_purchase_rate, standard_rate, '%s' as parent_bom, bom_mat_no, 'No' as is_pro_applicable from `tabFlat BOM Detail` where parent = '%s' and is_pro_applicable = 'No' and docstatus = 1" % ( d.bom_no, cstr(d.bom_no)))
+ self.cur_flat_bom_items.append([d.item_code, d.description, flt(d.qty), d.stock_uom, flt(d.moving_avg_rate), flt(d.amount_as_per_mar), flt(d.last_purchase_rate), flt(d.amount_as_per_lpr), flt(d.standard_rate), flt(d.amount_as_per_sr), flt(d.qty_consumed_per_unit), (item[0]['is_sub_contracted_item'] == 'Yes') and d.parent or d.bom_no, d.name, (item[0]['is_sub_contracted_item'] == 'Yes') and 'No' or 'Yes'])
+ return child_flat_bom_items
- else:
- child_flat_bom_items = sql("select item_code, description, qty_consumed_per_unit, stock_uom, moving_avg_rate, last_purchase_rate, standard_rate, if(parent_bom = '%s', '%s', parent_bom) as parent_bom, bom_mat_no, is_pro_applicable from `tabFlat BOM Detail` where parent = '%s' and docstatus = 1" % ( d.bom_no, d.parent, cstr(d.bom_no)))
+# else:
+# child_flat_bom_items = sql("select item_code, description, qty_consumed_per_unit, stock_uom, moving_avg_rate, last_purchase_rate, standard_rate, if(parent_bom = '%s', '%s', parent_bom) as parent_bom, bom_mat_no, is_pro_applicable from `tabFlat BOM Detail` where parent = '%s' and docstatus = 1" % ( d.bom_no, d.parent, cstr(d.bom_no)))
- if not child_flat_bom_items:
- msgprint("Please Submit Child BOM := %s first." % cstr(d.bom_no))
- raise Exception
- else:
- return child_flat_bom_items
+# if not child_flat_bom_items:
+# msgprint("Please Submit Child BOM := %s first." % cstr(d.bom_no))
+# raise Exception
+# else:"""
# Get Current Flat BOM Items
diff --git a/production/doctype/bill_of_materials/bill_of_materials.txt b/erpnext/production/doctype/bill_of_materials/bill_of_materials.txt
similarity index 100%
rename from production/doctype/bill_of_materials/bill_of_materials.txt
rename to erpnext/production/doctype/bill_of_materials/bill_of_materials.txt
diff --git a/production/doctype/bom_replace_utility_detail/__init__.py b/erpnext/production/doctype/bom_control/__init__.py
similarity index 100%
rename from production/doctype/bom_replace_utility_detail/__init__.py
rename to erpnext/production/doctype/bom_control/__init__.py
diff --git a/production/doctype/bom_control/bom_control.py b/erpnext/production/doctype/bom_control/bom_control.py
similarity index 100%
rename from production/doctype/bom_control/bom_control.py
rename to erpnext/production/doctype/bom_control/bom_control.py
diff --git a/production/doctype/bom_control/bom_control.txt b/erpnext/production/doctype/bom_control/bom_control.txt
similarity index 100%
rename from production/doctype/bom_control/bom_control.txt
rename to erpnext/production/doctype/bom_control/bom_control.txt
diff --git a/production/doctype/bom_report_detail/__init__.py b/erpnext/production/doctype/bom_material/__init__.py
similarity index 100%
rename from production/doctype/bom_report_detail/__init__.py
rename to erpnext/production/doctype/bom_material/__init__.py
diff --git a/production/doctype/bom_material/bom_material.txt b/erpnext/production/doctype/bom_material/bom_material.txt
similarity index 100%
rename from production/doctype/bom_material/bom_material.txt
rename to erpnext/production/doctype/bom_material/bom_material.txt
diff --git a/production/doctype/flat_bom_detail/__init__.py b/erpnext/production/doctype/bom_operation/__init__.py
similarity index 100%
rename from production/doctype/flat_bom_detail/__init__.py
rename to erpnext/production/doctype/bom_operation/__init__.py
diff --git a/production/doctype/bom_operation/bom_operation.txt b/erpnext/production/doctype/bom_operation/bom_operation.txt
similarity index 100%
rename from production/doctype/bom_operation/bom_operation.txt
rename to erpnext/production/doctype/bom_operation/bom_operation.txt
diff --git a/production/doctype/pf_detail/__init__.py b/erpnext/production/doctype/bom_replace_utility/__init__.py
similarity index 100%
rename from production/doctype/pf_detail/__init__.py
rename to erpnext/production/doctype/bom_replace_utility/__init__.py
diff --git a/production/doctype/bom_replace_utility/bom_replace_utility.js b/erpnext/production/doctype/bom_replace_utility/bom_replace_utility.js
similarity index 100%
rename from production/doctype/bom_replace_utility/bom_replace_utility.js
rename to erpnext/production/doctype/bom_replace_utility/bom_replace_utility.js
diff --git a/production/doctype/bom_replace_utility/bom_replace_utility.py b/erpnext/production/doctype/bom_replace_utility/bom_replace_utility.py
similarity index 100%
rename from production/doctype/bom_replace_utility/bom_replace_utility.py
rename to erpnext/production/doctype/bom_replace_utility/bom_replace_utility.py
diff --git a/production/doctype/bom_replace_utility/bom_replace_utility.txt b/erpnext/production/doctype/bom_replace_utility/bom_replace_utility.txt
similarity index 100%
rename from production/doctype/bom_replace_utility/bom_replace_utility.txt
rename to erpnext/production/doctype/bom_replace_utility/bom_replace_utility.txt
diff --git a/production/doctype/pp_detail/__init__.py b/erpnext/production/doctype/bom_replace_utility_detail/__init__.py
similarity index 100%
rename from production/doctype/pp_detail/__init__.py
rename to erpnext/production/doctype/bom_replace_utility_detail/__init__.py
diff --git a/production/doctype/bom_replace_utility_detail/bom_replace_utility_detail.txt b/erpnext/production/doctype/bom_replace_utility_detail/bom_replace_utility_detail.txt
similarity index 100%
rename from production/doctype/bom_replace_utility_detail/bom_replace_utility_detail.txt
rename to erpnext/production/doctype/bom_replace_utility_detail/bom_replace_utility_detail.txt
diff --git a/production/doctype/pp_so_detail/__init__.py b/erpnext/production/doctype/bom_report_detail/__init__.py
similarity index 100%
rename from production/doctype/pp_so_detail/__init__.py
rename to erpnext/production/doctype/bom_report_detail/__init__.py
diff --git a/production/doctype/bom_report_detail/bom_report_detail.txt b/erpnext/production/doctype/bom_report_detail/bom_report_detail.txt
similarity index 100%
rename from production/doctype/bom_report_detail/bom_report_detail.txt
rename to erpnext/production/doctype/bom_report_detail/bom_report_detail.txt
diff --git a/production/doctype/ppw_detail/__init__.py b/erpnext/production/doctype/flat_bom_detail/__init__.py
similarity index 100%
rename from production/doctype/ppw_detail/__init__.py
rename to erpnext/production/doctype/flat_bom_detail/__init__.py
diff --git a/production/doctype/flat_bom_detail/flat_bom_detail.txt b/erpnext/production/doctype/flat_bom_detail/flat_bom_detail.txt
similarity index 100%
rename from production/doctype/flat_bom_detail/flat_bom_detail.txt
rename to erpnext/production/doctype/flat_bom_detail/flat_bom_detail.txt
diff --git a/production/doctype/pro_detail/__init__.py b/erpnext/production/doctype/pf_detail/__init__.py
similarity index 100%
rename from production/doctype/pro_detail/__init__.py
rename to erpnext/production/doctype/pf_detail/__init__.py
diff --git a/production/doctype/pf_detail/pf_detail.txt b/erpnext/production/doctype/pf_detail/pf_detail.txt
similarity index 100%
rename from production/doctype/pf_detail/pf_detail.txt
rename to erpnext/production/doctype/pf_detail/pf_detail.txt
diff --git a/production/doctype/pro_pp_detail/__init__.py b/erpnext/production/doctype/pp_detail/__init__.py
similarity index 100%
rename from production/doctype/pro_pp_detail/__init__.py
rename to erpnext/production/doctype/pp_detail/__init__.py
diff --git a/production/doctype/pp_detail/pp_detail.txt b/erpnext/production/doctype/pp_detail/pp_detail.txt
similarity index 100%
rename from production/doctype/pp_detail/pp_detail.txt
rename to erpnext/production/doctype/pp_detail/pp_detail.txt
diff --git a/production/doctype/production_control/__init__.py b/erpnext/production/doctype/pp_so_detail/__init__.py
similarity index 100%
rename from production/doctype/production_control/__init__.py
rename to erpnext/production/doctype/pp_so_detail/__init__.py
diff --git a/production/doctype/pp_so_detail/pp_so_detail.txt b/erpnext/production/doctype/pp_so_detail/pp_so_detail.txt
similarity index 100%
rename from production/doctype/pp_so_detail/pp_so_detail.txt
rename to erpnext/production/doctype/pp_so_detail/pp_so_detail.txt
diff --git a/production/doctype/production_order/__init__.py b/erpnext/production/doctype/ppw_detail/__init__.py
similarity index 100%
rename from production/doctype/production_order/__init__.py
rename to erpnext/production/doctype/ppw_detail/__init__.py
diff --git a/production/doctype/ppw_detail/ppw_detail.txt b/erpnext/production/doctype/ppw_detail/ppw_detail.txt
similarity index 100%
rename from production/doctype/ppw_detail/ppw_detail.txt
rename to erpnext/production/doctype/ppw_detail/ppw_detail.txt
diff --git a/production/doctype/production_planning_tool/__init__.py b/erpnext/production/doctype/pro_detail/__init__.py
similarity index 100%
rename from production/doctype/production_planning_tool/__init__.py
rename to erpnext/production/doctype/pro_detail/__init__.py
diff --git a/production/doctype/pro_detail/pro_detail.txt b/erpnext/production/doctype/pro_detail/pro_detail.txt
similarity index 100%
rename from production/doctype/pro_detail/pro_detail.txt
rename to erpnext/production/doctype/pro_detail/pro_detail.txt
diff --git a/production/doctype/update_delivery_date/__init__.py b/erpnext/production/doctype/pro_pp_detail/__init__.py
similarity index 100%
rename from production/doctype/update_delivery_date/__init__.py
rename to erpnext/production/doctype/pro_pp_detail/__init__.py
diff --git a/production/doctype/pro_pp_detail/pro_pp_detail.txt b/erpnext/production/doctype/pro_pp_detail/pro_pp_detail.txt
similarity index 100%
rename from production/doctype/pro_pp_detail/pro_pp_detail.txt
rename to erpnext/production/doctype/pro_pp_detail/pro_pp_detail.txt
diff --git a/production/doctype/update_delivery_date_detail/__init__.py b/erpnext/production/doctype/production_control/__init__.py
similarity index 100%
rename from production/doctype/update_delivery_date_detail/__init__.py
rename to erpnext/production/doctype/production_control/__init__.py
diff --git a/production/doctype/production_control/production_control.py b/erpnext/production/doctype/production_control/production_control.py
similarity index 100%
rename from production/doctype/production_control/production_control.py
rename to erpnext/production/doctype/production_control/production_control.py
diff --git a/production/doctype/production_control/production_control.txt b/erpnext/production/doctype/production_control/production_control.txt
similarity index 100%
rename from production/doctype/production_control/production_control.txt
rename to erpnext/production/doctype/production_control/production_control.txt
diff --git a/production/doctype/workstation/__init__.py b/erpnext/production/doctype/production_order/__init__.py
similarity index 100%
rename from production/doctype/workstation/__init__.py
rename to erpnext/production/doctype/production_order/__init__.py
diff --git a/production/doctype/production_order/production_order.js b/erpnext/production/doctype/production_order/production_order.js
similarity index 100%
rename from production/doctype/production_order/production_order.js
rename to erpnext/production/doctype/production_order/production_order.js
diff --git a/production/doctype/production_order/production_order.py b/erpnext/production/doctype/production_order/production_order.py
similarity index 100%
rename from production/doctype/production_order/production_order.py
rename to erpnext/production/doctype/production_order/production_order.py
diff --git a/production/doctype/production_order/production_order.txt b/erpnext/production/doctype/production_order/production_order.txt
similarity index 100%
rename from production/doctype/production_order/production_order.txt
rename to erpnext/production/doctype/production_order/production_order.txt
diff --git a/production/page/__init__.py b/erpnext/production/doctype/production_planning_tool/__init__.py
similarity index 100%
rename from production/page/__init__.py
rename to erpnext/production/doctype/production_planning_tool/__init__.py
diff --git a/production/doctype/production_planning_tool/production_planning_tool.js b/erpnext/production/doctype/production_planning_tool/production_planning_tool.js
similarity index 100%
rename from production/doctype/production_planning_tool/production_planning_tool.js
rename to erpnext/production/doctype/production_planning_tool/production_planning_tool.js
diff --git a/production/doctype/production_planning_tool/production_planning_tool.py b/erpnext/production/doctype/production_planning_tool/production_planning_tool.py
similarity index 100%
rename from production/doctype/production_planning_tool/production_planning_tool.py
rename to erpnext/production/doctype/production_planning_tool/production_planning_tool.py
diff --git a/production/doctype/production_planning_tool/production_planning_tool.txt b/erpnext/production/doctype/production_planning_tool/production_planning_tool.txt
similarity index 100%
rename from production/doctype/production_planning_tool/production_planning_tool.txt
rename to erpnext/production/doctype/production_planning_tool/production_planning_tool.txt
diff --git a/production/page/bill_of_materials/__init__.py b/erpnext/production/doctype/update_delivery_date/__init__.py
similarity index 100%
rename from production/page/bill_of_materials/__init__.py
rename to erpnext/production/doctype/update_delivery_date/__init__.py
diff --git a/production/doctype/update_delivery_date/update_delivery_date.js b/erpnext/production/doctype/update_delivery_date/update_delivery_date.js
similarity index 100%
rename from production/doctype/update_delivery_date/update_delivery_date.js
rename to erpnext/production/doctype/update_delivery_date/update_delivery_date.js
diff --git a/production/doctype/update_delivery_date/update_delivery_date.py b/erpnext/production/doctype/update_delivery_date/update_delivery_date.py
similarity index 100%
rename from production/doctype/update_delivery_date/update_delivery_date.py
rename to erpnext/production/doctype/update_delivery_date/update_delivery_date.py
diff --git a/production/doctype/update_delivery_date/update_delivery_date.txt b/erpnext/production/doctype/update_delivery_date/update_delivery_date.txt
similarity index 100%
rename from production/doctype/update_delivery_date/update_delivery_date.txt
rename to erpnext/production/doctype/update_delivery_date/update_delivery_date.txt
diff --git a/production/search_criteria/__init__.py b/erpnext/production/doctype/update_delivery_date_detail/__init__.py
similarity index 100%
rename from production/search_criteria/__init__.py
rename to erpnext/production/doctype/update_delivery_date_detail/__init__.py
diff --git a/production/doctype/update_delivery_date_detail/update_delivery_date_detail.txt b/erpnext/production/doctype/update_delivery_date_detail/update_delivery_date_detail.txt
similarity index 100%
rename from production/doctype/update_delivery_date_detail/update_delivery_date_detail.txt
rename to erpnext/production/doctype/update_delivery_date_detail/update_delivery_date_detail.txt
diff --git a/production/search_criteria/consumption_against_production/__init__.py b/erpnext/production/doctype/workstation/__init__.py
similarity index 100%
rename from production/search_criteria/consumption_against_production/__init__.py
rename to erpnext/production/doctype/workstation/__init__.py
diff --git a/production/doctype/workstation/workstation.js b/erpnext/production/doctype/workstation/workstation.js
similarity index 100%
rename from production/doctype/workstation/workstation.js
rename to erpnext/production/doctype/workstation/workstation.js
diff --git a/production/doctype/workstation/workstation.py b/erpnext/production/doctype/workstation/workstation.py
similarity index 100%
rename from production/doctype/workstation/workstation.py
rename to erpnext/production/doctype/workstation/workstation.py
diff --git a/production/doctype/workstation/workstation.txt b/erpnext/production/doctype/workstation/workstation.txt
similarity index 100%
rename from production/doctype/workstation/workstation.txt
rename to erpnext/production/doctype/workstation/workstation.txt
diff --git a/production/search_criteria/delivery_plan/__init__.py b/erpnext/production/page/__init__.py
similarity index 100%
rename from production/search_criteria/delivery_plan/__init__.py
rename to erpnext/production/page/__init__.py
diff --git a/production/search_criteria/itemwise_production_report/__init__.py b/erpnext/production/page/bill_of_materials/__init__.py
similarity index 100%
rename from production/search_criteria/itemwise_production_report/__init__.py
rename to erpnext/production/page/bill_of_materials/__init__.py
diff --git a/production/page/bill_of_materials/bill_of_materials.html b/erpnext/production/page/bill_of_materials/bill_of_materials.html
similarity index 100%
rename from production/page/bill_of_materials/bill_of_materials.html
rename to erpnext/production/page/bill_of_materials/bill_of_materials.html
diff --git a/production/page/bill_of_materials/bill_of_materials.js b/erpnext/production/page/bill_of_materials/bill_of_materials.js
similarity index 100%
rename from production/page/bill_of_materials/bill_of_materials.js
rename to erpnext/production/page/bill_of_materials/bill_of_materials.js
diff --git a/production/page/bill_of_materials/bill_of_materials.txt b/erpnext/production/page/bill_of_materials/bill_of_materials.txt
similarity index 100%
rename from production/page/bill_of_materials/bill_of_materials.txt
rename to erpnext/production/page/bill_of_materials/bill_of_materials.txt
diff --git a/production/search_criteria/production_orders_in_process/__init__.py b/erpnext/production/search_criteria/__init__.py
similarity index 100%
rename from production/search_criteria/production_orders_in_process/__init__.py
rename to erpnext/production/search_criteria/__init__.py
diff --git a/projects/__init__.py b/erpnext/production/search_criteria/consumption_against_production/__init__.py
similarity index 100%
rename from projects/__init__.py
rename to erpnext/production/search_criteria/consumption_against_production/__init__.py
diff --git a/production/search_criteria/consumption_against_production/consumption_against_production.txt b/erpnext/production/search_criteria/consumption_against_production/consumption_against_production.txt
similarity index 100%
rename from production/search_criteria/consumption_against_production/consumption_against_production.txt
rename to erpnext/production/search_criteria/consumption_against_production/consumption_against_production.txt
diff --git a/projects/doctype/__init__.py b/erpnext/production/search_criteria/delivery_plan/__init__.py
similarity index 100%
rename from projects/doctype/__init__.py
rename to erpnext/production/search_criteria/delivery_plan/__init__.py
diff --git a/production/search_criteria/delivery_plan/delivery_plan.js b/erpnext/production/search_criteria/delivery_plan/delivery_plan.js
similarity index 100%
rename from production/search_criteria/delivery_plan/delivery_plan.js
rename to erpnext/production/search_criteria/delivery_plan/delivery_plan.js
diff --git a/production/search_criteria/delivery_plan/delivery_plan.txt b/erpnext/production/search_criteria/delivery_plan/delivery_plan.txt
similarity index 100%
rename from production/search_criteria/delivery_plan/delivery_plan.txt
rename to erpnext/production/search_criteria/delivery_plan/delivery_plan.txt
diff --git a/projects/doctype/activity_type/__init__.py b/erpnext/production/search_criteria/itemwise_production_report/__init__.py
similarity index 100%
rename from projects/doctype/activity_type/__init__.py
rename to erpnext/production/search_criteria/itemwise_production_report/__init__.py
diff --git a/production/search_criteria/itemwise_production_report/itemwise_production_report.js b/erpnext/production/search_criteria/itemwise_production_report/itemwise_production_report.js
similarity index 100%
rename from production/search_criteria/itemwise_production_report/itemwise_production_report.js
rename to erpnext/production/search_criteria/itemwise_production_report/itemwise_production_report.js
diff --git a/production/search_criteria/itemwise_production_report/itemwise_production_report.txt b/erpnext/production/search_criteria/itemwise_production_report/itemwise_production_report.txt
similarity index 100%
rename from production/search_criteria/itemwise_production_report/itemwise_production_report.txt
rename to erpnext/production/search_criteria/itemwise_production_report/itemwise_production_report.txt
diff --git a/projects/doctype/project/__init__.py b/erpnext/production/search_criteria/production_orders_in_process/__init__.py
similarity index 100%
rename from projects/doctype/project/__init__.py
rename to erpnext/production/search_criteria/production_orders_in_process/__init__.py
diff --git a/production/search_criteria/production_orders_in_process/production_orders_in_process.txt b/erpnext/production/search_criteria/production_orders_in_process/production_orders_in_process.txt
similarity index 100%
rename from production/search_criteria/production_orders_in_process/production_orders_in_process.txt
rename to erpnext/production/search_criteria/production_orders_in_process/production_orders_in_process.txt
diff --git a/projects/Module Def/Projects/Projects.txt b/erpnext/projects/Module Def/Projects/Projects.txt
similarity index 100%
rename from projects/Module Def/Projects/Projects.txt
rename to erpnext/projects/Module Def/Projects/Projects.txt
diff --git a/projects/Role/Projects User/Projects User.txt b/erpnext/projects/Role/Projects User/Projects User.txt
similarity index 100%
rename from projects/Role/Projects User/Projects User.txt
rename to erpnext/projects/Role/Projects User/Projects User.txt
diff --git a/projects/doctype/project_activity/__init__.py b/erpnext/projects/__init__.py
similarity index 100%
rename from projects/doctype/project_activity/__init__.py
rename to erpnext/projects/__init__.py
diff --git a/projects/doctype/project_activity_update/__init__.py b/erpnext/projects/doctype/__init__.py
similarity index 100%
rename from projects/doctype/project_activity_update/__init__.py
rename to erpnext/projects/doctype/__init__.py
diff --git a/projects/doctype/project_control/__init__.py b/erpnext/projects/doctype/activity_type/__init__.py
similarity index 100%
rename from projects/doctype/project_control/__init__.py
rename to erpnext/projects/doctype/activity_type/__init__.py
diff --git a/projects/doctype/activity_type/activity_type.txt b/erpnext/projects/doctype/activity_type/activity_type.txt
similarity index 100%
rename from projects/doctype/activity_type/activity_type.txt
rename to erpnext/projects/doctype/activity_type/activity_type.txt
diff --git a/projects/doctype/project_milestone/__init__.py b/erpnext/projects/doctype/project/__init__.py
similarity index 100%
rename from projects/doctype/project_milestone/__init__.py
rename to erpnext/projects/doctype/project/__init__.py
diff --git a/projects/doctype/project/project.js b/erpnext/projects/doctype/project/project.js
similarity index 100%
rename from projects/doctype/project/project.js
rename to erpnext/projects/doctype/project/project.js
diff --git a/projects/doctype/project/project.py b/erpnext/projects/doctype/project/project.py
similarity index 100%
rename from projects/doctype/project/project.py
rename to erpnext/projects/doctype/project/project.py
diff --git a/projects/doctype/project/project.txt b/erpnext/projects/doctype/project/project.txt
similarity index 100%
rename from projects/doctype/project/project.txt
rename to erpnext/projects/doctype/project/project.txt
diff --git a/projects/doctype/ticket/__init__.py b/erpnext/projects/doctype/project_activity/__init__.py
similarity index 100%
rename from projects/doctype/ticket/__init__.py
rename to erpnext/projects/doctype/project_activity/__init__.py
diff --git a/projects/doctype/project_activity/project_activity.js b/erpnext/projects/doctype/project_activity/project_activity.js
similarity index 100%
rename from projects/doctype/project_activity/project_activity.js
rename to erpnext/projects/doctype/project_activity/project_activity.js
diff --git a/projects/doctype/project_activity/project_activity.py b/erpnext/projects/doctype/project_activity/project_activity.py
similarity index 100%
rename from projects/doctype/project_activity/project_activity.py
rename to erpnext/projects/doctype/project_activity/project_activity.py
diff --git a/projects/doctype/project_activity/project_activity.txt b/erpnext/projects/doctype/project_activity/project_activity.txt
similarity index 100%
rename from projects/doctype/project_activity/project_activity.txt
rename to erpnext/projects/doctype/project_activity/project_activity.txt
diff --git a/projects/doctype/timesheet/__init__.py b/erpnext/projects/doctype/project_activity_update/__init__.py
similarity index 100%
rename from projects/doctype/timesheet/__init__.py
rename to erpnext/projects/doctype/project_activity_update/__init__.py
diff --git a/projects/doctype/project_activity_update/project_activity_update.txt b/erpnext/projects/doctype/project_activity_update/project_activity_update.txt
similarity index 100%
rename from projects/doctype/project_activity_update/project_activity_update.txt
rename to erpnext/projects/doctype/project_activity_update/project_activity_update.txt
diff --git a/projects/doctype/timesheet_detail/__init__.py b/erpnext/projects/doctype/project_control/__init__.py
similarity index 100%
rename from projects/doctype/timesheet_detail/__init__.py
rename to erpnext/projects/doctype/project_control/__init__.py
diff --git a/projects/doctype/project_control/project_control.py b/erpnext/projects/doctype/project_control/project_control.py
similarity index 100%
rename from projects/doctype/project_control/project_control.py
rename to erpnext/projects/doctype/project_control/project_control.py
diff --git a/projects/doctype/project_control/project_control.txt b/erpnext/projects/doctype/project_control/project_control.txt
similarity index 100%
rename from projects/doctype/project_control/project_control.txt
rename to erpnext/projects/doctype/project_control/project_control.txt
diff --git a/projects/page/__init__.py b/erpnext/projects/doctype/project_milestone/__init__.py
similarity index 100%
rename from projects/page/__init__.py
rename to erpnext/projects/doctype/project_milestone/__init__.py
diff --git a/projects/doctype/project_milestone/project_milestone.txt b/erpnext/projects/doctype/project_milestone/project_milestone.txt
similarity index 100%
rename from projects/doctype/project_milestone/project_milestone.txt
rename to erpnext/projects/doctype/project_milestone/project_milestone.txt
diff --git a/projects/page/projects/__init__.py b/erpnext/projects/doctype/ticket/__init__.py
similarity index 100%
rename from projects/page/projects/__init__.py
rename to erpnext/projects/doctype/ticket/__init__.py
diff --git a/projects/doctype/ticket/ticket.js b/erpnext/projects/doctype/ticket/ticket.js
similarity index 100%
rename from projects/doctype/ticket/ticket.js
rename to erpnext/projects/doctype/ticket/ticket.js
diff --git a/projects/doctype/ticket/ticket.py b/erpnext/projects/doctype/ticket/ticket.py
similarity index 100%
rename from projects/doctype/ticket/ticket.py
rename to erpnext/projects/doctype/ticket/ticket.py
diff --git a/projects/doctype/ticket/ticket.txt b/erpnext/projects/doctype/ticket/ticket.txt
similarity index 100%
rename from projects/doctype/ticket/ticket.txt
rename to erpnext/projects/doctype/ticket/ticket.txt
diff --git a/projects/search_criteria/__init__.py b/erpnext/projects/doctype/timesheet/__init__.py
similarity index 100%
rename from projects/search_criteria/__init__.py
rename to erpnext/projects/doctype/timesheet/__init__.py
diff --git a/projects/doctype/timesheet/timesheet.js b/erpnext/projects/doctype/timesheet/timesheet.js
similarity index 100%
rename from projects/doctype/timesheet/timesheet.js
rename to erpnext/projects/doctype/timesheet/timesheet.js
diff --git a/projects/doctype/timesheet/timesheet.py b/erpnext/projects/doctype/timesheet/timesheet.py
similarity index 100%
rename from projects/doctype/timesheet/timesheet.py
rename to erpnext/projects/doctype/timesheet/timesheet.py
diff --git a/projects/doctype/timesheet/timesheet.txt b/erpnext/projects/doctype/timesheet/timesheet.txt
similarity index 100%
rename from projects/doctype/timesheet/timesheet.txt
rename to erpnext/projects/doctype/timesheet/timesheet.txt
diff --git a/projects/search_criteria/dispatch_report/__init__.py b/erpnext/projects/doctype/timesheet_detail/__init__.py
similarity index 100%
rename from projects/search_criteria/dispatch_report/__init__.py
rename to erpnext/projects/doctype/timesheet_detail/__init__.py
diff --git a/projects/doctype/timesheet_detail/timesheet_detail.txt b/erpnext/projects/doctype/timesheet_detail/timesheet_detail.txt
similarity index 100%
rename from projects/doctype/timesheet_detail/timesheet_detail.txt
rename to erpnext/projects/doctype/timesheet_detail/timesheet_detail.txt
diff --git a/projects/search_criteria/projectwise_delivered_qty_and_costs/__init__.py b/erpnext/projects/page/__init__.py
similarity index 100%
rename from projects/search_criteria/projectwise_delivered_qty_and_costs/__init__.py
rename to erpnext/projects/page/__init__.py
diff --git a/projects/search_criteria/projectwise_pending_qty_and_costs/__init__.py b/erpnext/projects/page/projects/__init__.py
similarity index 100%
rename from projects/search_criteria/projectwise_pending_qty_and_costs/__init__.py
rename to erpnext/projects/page/projects/__init__.py
diff --git a/projects/page/projects/projects.html b/erpnext/projects/page/projects/projects.html
similarity index 100%
rename from projects/page/projects/projects.html
rename to erpnext/projects/page/projects/projects.html
diff --git a/projects/page/projects/projects.js b/erpnext/projects/page/projects/projects.js
similarity index 100%
rename from projects/page/projects/projects.js
rename to erpnext/projects/page/projects/projects.js
diff --git a/projects/page/projects/projects.txt b/erpnext/projects/page/projects/projects.txt
similarity index 100%
rename from projects/page/projects/projects.txt
rename to erpnext/projects/page/projects/projects.txt
diff --git a/projects/page/projects/projects_static.html b/erpnext/projects/page/projects/projects_static.html
similarity index 100%
rename from projects/page/projects/projects_static.html
rename to erpnext/projects/page/projects/projects_static.html
diff --git a/projects/search_criteria/projectwise_purchase_details/__init__.py b/erpnext/projects/search_criteria/__init__.py
similarity index 100%
rename from projects/search_criteria/projectwise_purchase_details/__init__.py
rename to erpnext/projects/search_criteria/__init__.py
diff --git a/projects/search_criteria/projectwise_sales_details/__init__.py b/erpnext/projects/search_criteria/dispatch_report/__init__.py
similarity index 100%
rename from projects/search_criteria/projectwise_sales_details/__init__.py
rename to erpnext/projects/search_criteria/dispatch_report/__init__.py
diff --git a/projects/search_criteria/dispatch_report/dispatch_report.js b/erpnext/projects/search_criteria/dispatch_report/dispatch_report.js
similarity index 100%
rename from projects/search_criteria/dispatch_report/dispatch_report.js
rename to erpnext/projects/search_criteria/dispatch_report/dispatch_report.js
diff --git a/projects/search_criteria/dispatch_report/dispatch_report.txt b/erpnext/projects/search_criteria/dispatch_report/dispatch_report.txt
similarity index 100%
rename from projects/search_criteria/dispatch_report/dispatch_report.txt
rename to erpnext/projects/search_criteria/dispatch_report/dispatch_report.txt
diff --git a/projects/search_criteria/projectwise_sales_orders/__init__.py b/erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/__init__.py
similarity index 100%
rename from projects/search_criteria/projectwise_sales_orders/__init__.py
rename to erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/__init__.py
diff --git a/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.js b/erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.js
similarity index 100%
rename from projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.js
rename to erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.js
diff --git a/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt b/erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
similarity index 100%
rename from projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
rename to erpnext/projects/search_criteria/projectwise_delivered_qty_and_costs/projectwise_delivered_qty_and_costs.txt
diff --git a/projects/search_criteria/timesheet_report/__init__.py b/erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/__init__.py
similarity index 100%
rename from projects/search_criteria/timesheet_report/__init__.py
rename to erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/__init__.py
diff --git a/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.js b/erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.js
similarity index 100%
rename from projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.js
rename to erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.js
diff --git a/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt b/erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
similarity index 100%
rename from projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
rename to erpnext/projects/search_criteria/projectwise_pending_qty_and_costs/projectwise_pending_qty_and_costs.txt
diff --git a/selling/__init__.py b/erpnext/projects/search_criteria/projectwise_purchase_details/__init__.py
similarity index 100%
rename from selling/__init__.py
rename to erpnext/projects/search_criteria/projectwise_purchase_details/__init__.py
diff --git a/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.js b/erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.js
similarity index 100%
rename from projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.js
rename to erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.js
diff --git a/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.py b/erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.py
similarity index 100%
rename from projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.py
rename to erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.py
diff --git a/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt b/erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
similarity index 100%
rename from projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
rename to erpnext/projects/search_criteria/projectwise_purchase_details/projectwise_purchase_details.txt
diff --git a/selling/doctype/__init__.py b/erpnext/projects/search_criteria/projectwise_sales_details/__init__.py
similarity index 100%
rename from selling/doctype/__init__.py
rename to erpnext/projects/search_criteria/projectwise_sales_details/__init__.py
diff --git a/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.js b/erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.js
similarity index 100%
rename from projects/search_criteria/projectwise_sales_details/projectwise_sales_details.js
rename to erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.js
diff --git a/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.py b/erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.py
similarity index 100%
rename from projects/search_criteria/projectwise_sales_details/projectwise_sales_details.py
rename to erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.py
diff --git a/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt b/erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
similarity index 100%
rename from projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
rename to erpnext/projects/search_criteria/projectwise_sales_details/projectwise_sales_details.txt
diff --git a/selling/doctype/campaign/__init__.py b/erpnext/projects/search_criteria/projectwise_sales_orders/__init__.py
similarity index 100%
rename from selling/doctype/campaign/__init__.py
rename to erpnext/projects/search_criteria/projectwise_sales_orders/__init__.py
diff --git a/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt b/erpnext/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
similarity index 100%
rename from projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
rename to erpnext/projects/search_criteria/projectwise_sales_orders/projectwise_sales_orders.txt
diff --git a/selling/doctype/customer/__init__.py b/erpnext/projects/search_criteria/timesheet_report/__init__.py
similarity index 100%
rename from selling/doctype/customer/__init__.py
rename to erpnext/projects/search_criteria/timesheet_report/__init__.py
diff --git a/projects/search_criteria/timesheet_report/timesheet_report.js b/erpnext/projects/search_criteria/timesheet_report/timesheet_report.js
similarity index 100%
rename from projects/search_criteria/timesheet_report/timesheet_report.js
rename to erpnext/projects/search_criteria/timesheet_report/timesheet_report.js
diff --git a/projects/search_criteria/timesheet_report/timesheet_report.txt b/erpnext/projects/search_criteria/timesheet_report/timesheet_report.txt
similarity index 100%
rename from projects/search_criteria/timesheet_report/timesheet_report.txt
rename to erpnext/projects/search_criteria/timesheet_report/timesheet_report.txt
diff --git a/selling/doctype/enquiry/__init__.py b/erpnext/sandbox/__init__.py
similarity index 100%
rename from selling/doctype/enquiry/__init__.py
rename to erpnext/sandbox/__init__.py
diff --git a/erpnext/sandbox/test_stock_entry.py b/erpnext/sandbox/test_stock_entry.py
new file mode 100644
index 0000000000..f1035bc455
--- /dev/null
+++ b/erpnext/sandbox/test_stock_entry.py
@@ -0,0 +1,380 @@
+import unittest
+
+import webnotes
+import webnotes.profile
+webnotes.user = webnotes.profile.Profile()
+
+
+from webnotes.model.doc import Document
+from webnotes.model.code import get_obj
+from webnotes.utils import cstr, flt
+from webnotes.model.doclist import getlist
+sql = webnotes.conn.sql
+
+from sandbox.testdata.masters import *
+from sandbox.testdata import stock_entry
+#----------------------------------------------------------
+
+
+class TestStockEntry(unittest.TestCase):
+ #===========================================================================
+ def assertDoc(self, lst):
+ """assert all values"""
+ for d in lst:
+ cl, vl = [], []
+ for k in d.keys():
+ if k!='doctype':
+ cl.append('%s=%s' % (k, '%s'))
+ vl.append(d[k])
+
+ self.assertTrue(sql("select name from `tab%s` where %s limit 1" % (d['doctype'], ' and '.join(cl)), vl))
+
+ #===========================================================================
+ def assertCount(self, lst):
+ """assert all values"""
+ for d in lst:
+ cl, vl = [], []
+ for k in d[0].keys():
+ if k!='doctype':
+ cl.append('%s=%s' % (k, '%s'))
+ vl.append(d[0][k])
+
+ self.assertTrue(sql("select count(name) from `tab%s` where %s limit 1" % (d[0]['doctype'], ' and '.join(cl)), vl)[0][0] == d[1])
+
+ #===========================================================================
+ def setUp(self):
+ print "====================================="
+ webnotes.conn.begin()
+ create_master_records()
+ print 'Master Data Created'
+
+ #===========================================================================
+ # Purpose: Material Receipt
+ #===========================================================================
+ def test_mr_onsubmit(self):
+ print "Test Case: Material Receipt submission"
+ self.save_stock_entry('Material Receipt')
+
+ mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
+ self.submit_stock_entry(mr)
+
+ # stock ledger entry
+ print "Checking stock ledger entry........."
+ self.assertDoc(self.get_expected_sle('mr_submit'))
+
+ # bin qty
+ print "Checking Bin qty........."
+ self.assertDoc([{'doctype':'Bin', 'actual_qty':10, 'item_code':'it', 'warehouse':'wh1'}])
+
+ # serial no
+ self.assertCount([[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 10]])
+
+
+ #===========================================================================
+ def test_mr_oncancel(self):
+ print "Test Case: Material Receipt Cancellation"
+ self.save_stock_entry('Material Receipt')
+
+ mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
+ self.cancel_stock_entry(mr)
+
+ # stock ledger entry
+ print "Checking stock ledger entry........."
+ self.assertDoc(self.get_expected_sle('mr_cancel'))
+
+ # bin qty
+ print "Checking Bin qty........."
+ self.assertDoc([{'doctype':'Bin', 'actual_qty':0, 'item_code':'it', 'warehouse':'wh1'}])
+
+ # serial no
+ self.assertCount([[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': '', 'status': 'Not in Use', 'docstatus': 2}, 10]])
+
+ #===========================================================================
+ # Purpose: Material Transafer
+ #===========================================================================
+ def test_mtn_onsubmit(self):
+ print "Test Case: Material Transfer Note submission"
+
+ self.save_stock_entry('Material Receipt')
+ mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
+ mr = self.submit_stock_entry(mr)
+
+ self.save_stock_entry('Material Transfer')
+ mtn = get_obj('Stock Entry', stock_entry.mtn[0].name, with_children=1)
+ tn = self.submit_stock_entry(mtn)
+
+ # stock ledger entry
+ print "Checking stock ledger entry........."
+ self.assertDoc(self.get_expected_sle('mtn_submit'))
+
+ # bin qty
+ print "Checking Bin qty........."
+ self.assertDoc([
+ {'doctype':'Bin', 'actual_qty':5, 'item_code':'it', 'warehouse':'wh1'},
+ {'doctype':'Bin', 'actual_qty':5, 'item_code':'it', 'warehouse':'wh2'}
+ ])
+
+ # serial no
+ self.assertCount([
+ [{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 5],
+ [{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh2', 'status': 'In Store', 'docstatus': 0}, 5]
+ ])
+
+ #===========================================================================
+ def test_mtn_oncancel(self):
+ print "Test Case: Material Transfer Note Cancellation"
+
+ self.save_stock_entry('Material Receipt')
+ mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
+ mr = self.submit_stock_entry(mr)
+
+ self.save_stock_entry('Material Transfer')
+ mtn = get_obj('Stock Entry', stock_entry.mtn[0].name, with_children=1)
+ self.cancel_stock_entry(mtn)
+
+ # stock ledger entry
+ print "Checking stock ledger entry........."
+ self.assertDoc(self.get_expected_sle('mtn_cancel'))
+
+ # bin qty
+ print "Checking Bin qty........."
+ self.assertDoc([
+ {'doctype':'Bin', 'actual_qty':10, 'item_code':'it', 'warehouse':'wh1'},
+ {'doctype':'Bin', 'actual_qty':0, 'item_code':'it', 'warehouse':'wh2'}
+ ])
+
+ # serial no
+ self.assertCount([[{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 10]])
+
+#===========================================================================
+ # Purpose: Material Issue
+ #===========================================================================
+ def test_mi_onsubmit(self):
+ print "Test Case: Material Issue submission"
+
+ self.save_stock_entry('Material Receipt')
+ mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
+ mr = self.submit_stock_entry(mr)
+
+ self.save_stock_entry('Material Issue')
+ mi = get_obj('Stock Entry', stock_entry.mi[0].name, with_children=1)
+ mi = self.submit_stock_entry(mi)
+
+ # stock ledger entry
+ print "Checking stock ledger entry........."
+ self.assertDoc(self.get_expected_sle('mi_submit'))
+
+ # bin qty
+ print "Checking Bin qty........."
+ self.assertDoc([
+ {'doctype':'Bin', 'actual_qty':6, 'item_code':'it', 'warehouse':'wh1'}
+ ])
+
+ # serial no
+ self.assertCount([
+ [{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 6]
+ ])
+
+ #===========================================================================
+ def test_mi_oncancel(self):
+ print "Test Case: Material Issue Cancellation"
+
+ self.save_stock_entry('Material Receipt')
+ mr = get_obj('Stock Entry', stock_entry.mr[0].name, with_children=1)
+ mr = self.submit_stock_entry(mr)
+
+ self.save_stock_entry('Material Issue')
+ mi = get_obj('Stock Entry', stock_entry.mi[0].name, with_children=1)
+ self.cancel_stock_entry(mi)
+
+ # stock ledger entry
+ print "Checking stock ledger entry........."
+ self.assertDoc(self.get_expected_sle('mi_cancel'))
+
+ # bin qty
+ print "Checking Bin qty........."
+ self.assertDoc([
+ {'doctype':'Bin', 'actual_qty':10, 'item_code':'it', 'warehouse':'wh1'}
+ ])
+
+ # serial no
+ self.assertCount([
+ [{'doctype': 'Serial No', 'item_code': 'it', 'warehouse': 'wh1', 'status': 'In Store', 'docstatus': 0}, 10]
+ ])
+
+
+
+ #===========================================================================
+ def save_stock_entry(self, t):
+ if t == 'Material Receipt':
+ data = stock_entry.mr
+ elif t == 'Material Transfer':
+ data = stock_entry.mtn
+ elif t == 'Material Issue':
+ data = stock_entry.mi
+
+ for each in data:
+ each.save(1)
+
+ for t in data[1:]:
+ sql("update `tabStock Entry Detail` set parent = '%s' where name = '%s'" % (data[0].name, t.name))
+ print "Stock Entry Created"
+
+
+ #===========================================================================
+ def submit_stock_entry(self, ste):
+ ste.validate()
+ ste.on_submit()
+
+ ste.doc.docstatus = 1
+ ste.doc.save()
+
+ print "Stock Entry Submitted"
+ return ste
+
+ #===========================================================================
+ def cancel_stock_entry(self, ste):
+ ste = self.submit_stock_entry(ste)
+
+ ste.on_cancel()
+
+ ste.doc.cancel_reason = "testing"
+ ste.doc.docstatus = 2
+ ste.doc.save()
+
+ print "Stock Entry Cancelled"
+ return ste
+
+ #===========================================================================
+ def tearDown(self):
+ webnotes.conn.rollback()
+
+
+ # Expected Result Set
+ #===================================================================================================
+ def get_expected_sle(self, action):
+ expected_sle = {
+ 'mr_submit': [{
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mr[0].name,
+ 'actual_qty': 10,
+ 'bin_aqat': 10,
+ 'valuation_rate': 100,
+ 'is_cancelled': 'No'
+ }],
+ 'mr_cancel': [{
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mr[0].name,
+ 'actual_qty': 10,
+ 'bin_aqat': 10,
+ 'valuation_rate': 100,
+ 'is_cancelled': 'Yes'
+ },{
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mr[0].name,
+ 'actual_qty': -10,
+ 'ifnull(bin_aqat, 0)': 0,
+ 'ifnull(valuation_rate, 0)': 0,
+ "ifnull(is_cancelled, 'No')": 'Yes'
+ }],
+ 'mtn_submit': [{
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mtn[0].name,
+ 'actual_qty': -5,
+ 'bin_aqat': 5,
+ 'valuation_rate': 100,
+ 'is_cancelled': 'No'
+ }, {
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh2',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mtn[0].name,
+ 'actual_qty': 5,
+ 'bin_aqat': 5,
+ 'valuation_rate': 100,
+ 'is_cancelled': 'No'
+ }],
+ 'mtn_cancel': [{
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mtn[0].name,
+ 'actual_qty': -5,
+ 'bin_aqat': 5,
+ 'is_cancelled': 'Yes'
+ }, {
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh2',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mtn[0].name,
+ 'actual_qty': 5,
+ 'bin_aqat': 5,
+ 'valuation_rate': 100,
+ 'is_cancelled': 'Yes'
+ }, {
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mtn[0].name,
+ 'actual_qty': 5,
+ 'is_cancelled': 'Yes'
+ }, {
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh2',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mtn[0].name,
+ 'actual_qty': -5,
+ 'is_cancelled': 'Yes'
+ }],
+ 'mi_submit': [{'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mi[0].name,
+ 'actual_qty': -4,
+ 'bin_aqat': 6,
+ 'valuation_rate': 100,
+ 'is_cancelled': 'No'
+ }],
+ 'mi_cancel': [{
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mi[0].name,
+ 'actual_qty': -4,
+ 'bin_aqat': 6,
+ 'valuation_rate': 100,
+ 'is_cancelled': 'Yes'
+ },{
+ 'doctype': 'Stock Ledger Entry',
+ 'item_code':'it',
+ 'warehouse':'wh1',
+ 'voucher_type': 'Stock Entry',
+ 'voucher_no': stock_entry.mi[0].name,
+ 'actual_qty': 4,
+ 'ifnull(bin_aqat, 0)': 0,
+ 'ifnull(valuation_rate, 0)': 0,
+ "ifnull(is_cancelled, 'No')": 'Yes'
+ }]
+
+ }
+
+ return expected_sle[action]
diff --git a/selling/doctype/enquiry_detail/__init__.py b/erpnext/sandbox/testdata/__init__.py
similarity index 100%
rename from selling/doctype/enquiry_detail/__init__.py
rename to erpnext/sandbox/testdata/__init__.py
diff --git a/erpnext/sandbox/testdata/masters.py b/erpnext/sandbox/testdata/masters.py
new file mode 100644
index 0000000000..7f2d67c4da
--- /dev/null
+++ b/erpnext/sandbox/testdata/masters.py
@@ -0,0 +1,282 @@
+"""
+ All master data in one place, can be created by 1 function call
+
+"""
+
+import webnotes
+from webnotes.model.doc import Document
+
+
+master_groups = {
+ # Company
+ #----------------------------------
+ 'company': Document(
+ fielddata={
+ 'doctype':'Company',
+ 'abbr': 'co',
+ 'company_name' : 'comp',
+ 'name': 'comp'
+ }
+ ),
+
+ # Customer Group
+ #----------------------------------
+ 'customer_group': Document(
+ fielddata={
+ 'doctype':'Customer Group',
+ 'customer_group_name' : 'cg',
+ 'name': 'cg',
+ 'is_group': 'No',
+ 'parent_customer_group':'',
+ 'lft' : 1,
+ 'rgt': 2
+ }
+ ),
+
+ # Item Group
+ #----------------------------------
+ 'item_group': Document(
+ fielddata = {
+ 'doctype': 'Item Group',
+ 'item_group_name': 'ig',
+ 'lft': 1,
+ 'rgt': 2,
+ 'parent_item_group' : '',
+ 'is_group': 'No',
+ 'name': 'ig'
+ }
+ ),
+
+ # Warehouse Type
+ #-----------------------------
+ 'warehouse_type' : Document(
+ fielddata = {
+ 'doctype' : 'Warehouse Type',
+ 'name': 'normal',
+ 'warehouse_type' : 'normal'
+ }
+ ),
+
+ # Supplier Type
+ #-----------------------------
+ 'supplier_type' : Document(
+ fielddata = {
+ 'doctype': 'Supplier Type',
+ 'supplier_type': 'stype'
+ }
+ )
+
+}
+
+
+main_masters = {
+ # Customer
+ #----------------------------------
+ 'customer': Document(
+ fielddata={
+ 'doctype':'Customer',
+ 'docstatus':0,
+ 'customer_name' : 'cust',
+ 'company' : 'comp',
+ 'customer_group' : '',
+ 'name': 'cust'
+ }
+ ),
+
+
+ # Supplier
+ #----------------------------------
+ 'supplier': Document(
+ fielddata = {
+ 'doctype': 'Supplier',
+ 'supplier_name': 'supp',
+ 'name': 'supp',
+ 'supplier_type' : 'stype'
+ }
+ ),
+
+ # Customer Account
+ #----------------------------------
+ 'customer_acc': Document(
+ fielddata={
+ 'doctype':'Account',
+ 'docstatus':0,
+ 'account_name' : 'cust',
+ 'debit_or_credit': 'Debit',
+ 'company' : 'comp',
+ 'lft': 1,
+ 'rgt': 2,
+ 'group_or_ledger' : 'Ledger',
+ 'is_pl_account': 'No',
+ 'name' : 'cust - co'
+ }
+ ),
+
+ # Customer Account
+ #----------------------------------
+ 'supplier_acc': Document(
+ fielddata={
+ 'doctype':'Account',
+ 'docstatus':0,
+ 'account_name' : 'supp',
+ 'debit_or_credit': 'Credit',
+ 'company' : 'comp',
+ 'lft': 5,
+ 'rgt': 6,
+ 'group_or_ledger' : 'Ledger',
+ 'is_pl_account': 'No',
+ 'name' : 'supp - co'
+ }
+ ),
+
+ # Bank Account
+ #----------------------------------
+ 'bank_acc': Document(
+ fielddata={
+ 'doctype':'Account',
+ 'docstatus':0,
+ 'account_name' : 'icici',
+ 'parent_account': '',
+ 'debit_or_credit': 'Debit',
+ 'company' : 'comp',
+ 'lft': 3,
+ 'rgt': 4,
+ 'group_or_ledger' : 'Ledger',
+ 'is_pl_account': 'No',
+ 'name' : 'icici - co'
+ }
+ ),
+
+ # Income Account
+ #----------------------------------
+ 'income_acc': Document(
+ fielddata={
+ 'doctype':'Account',
+ 'docstatus':0,
+ 'account_name' : 'income',
+ 'debit_or_credit': 'Credit',
+ 'company' : 'comp',
+ 'lft': 7,
+ 'rgt': 8,
+ 'group_or_ledger' : 'Ledger',
+ 'is_pl_account': 'Yes',
+ 'name' : 'income - co'
+ }
+ ),
+
+ # Expense Account
+ #----------------------------------
+ 'expense_acc': Document(
+ fielddata={
+ 'doctype':'Account',
+ 'docstatus':0,
+ 'account_name' : 'expense',
+ 'debit_or_credit': 'Debit',
+ 'company' : 'comp',
+ 'lft': 9,
+ 'rgt': 10,
+ 'group_or_ledger' : 'Ledger',
+ 'is_pl_account': 'Yes',
+ 'name' : 'expense - co'
+ }
+ ),
+
+ # Cost Center
+ #----------------------------------
+ 'cost_center': Document(
+ fielddata={
+ 'doctype':'Cost Center',
+ 'docstatus':0,
+ 'cost_center_name' : 'cc',
+ 'lft': 1,
+ 'rgt': 2,
+ 'group_or_ledger' : 'Ledger',
+ 'name' : 'cc'
+ }
+ ),
+
+ # Item
+ #----------------------------------
+ # Stock item / non-serialized
+
+ 'item': [
+ Document(
+ fielddata = {
+ 'doctype': 'Item',
+ 'docstatus': 0,
+ 'name': 'it',
+ 'item_name': 'it',
+ 'item_code': 'it',
+ 'item_group': 'ig',
+ 'is_stock_item': 'Yes',
+ 'has_serial_no': 'Yes',
+ 'stock_uom': 'Nos',
+ 'is_sales_item': 'Yes',
+ 'is_purchase_item': 'Yes',
+ 'is_service_item': 'No',
+ 'is_sub_contracted_item': 'No',
+ 'is_pro_applicable': 'Yes',
+ 'is_manufactured_item': 'Yes'
+ }
+ ),
+ Document(
+ fielddata = {
+ 'doctype': 'Ref Rate Detail',
+ 'parentfield': 'ref_rate_details',
+ 'parenttype': 'Item',
+ 'parent' : 'it',
+ 'price_list_name': 'pl',
+ 'ref_currency': 'INR',
+ 'ref_rate': 100
+ }
+ ),
+ Document(
+ fielddata = {
+ 'doctype': 'Item Tax',
+ 'parentfield': 'item_tax',
+ 'parenttype': 'Item',
+ 'parent' : 'it',
+ 'tax_type' : 'Tax1',
+ 'tax_rate': 10
+ }
+ )
+ ],
+
+ # Warehouse
+ #-----------------------------
+ 'warehouse': [
+ Document(
+ fielddata = {
+ 'doctype': 'Warehouse',
+ 'name' : 'wh1',
+ 'warehouse_name' : 'wh1',
+ 'warehouse_type': 'normal',
+ 'company': 'comp'
+ }
+ ),
+ Document(
+ fielddata = {
+ 'doctype': 'Warehouse',
+ 'name' : 'wh2',
+ 'warehouse_name' : 'wh2',
+ 'warehouse_type': 'normal',
+ 'company': 'comp'
+ }
+ )
+ ]
+}
+
+
+
+# Save all master records
+#----------------------------------
+def create_master_records():
+ for m in master_groups.keys():
+ master_groups[m].save(1)
+
+ for m in main_masters.keys():
+ if type(main_masters[m]) == list:
+ for each in main_masters[m]:
+ each.save(1)
+ else:
+ main_masters[m].save(1)
diff --git a/erpnext/sandbox/testdata/stock_entry.py b/erpnext/sandbox/testdata/stock_entry.py
new file mode 100644
index 0000000000..8f2a30c64a
--- /dev/null
+++ b/erpnext/sandbox/testdata/stock_entry.py
@@ -0,0 +1,104 @@
+from webnotes.model.doc import Document
+
+# Material Receipt
+#-----------------------
+
+mr = [
+ Document(
+ fielddata = {
+ 'doctype': 'Stock Entry',
+ 'posting_date': '2011-09-01',
+ 'transfer_date': '2011-09-01',
+ 'posting_time': '12:00',
+ 'company': 'comp',
+ 'fiscal_year' : '2011-2012',
+ 'purpose': 'Material Receipt',
+ 'name': 'mr'
+ }
+ ),
+ Document(
+ fielddata ={
+ 'doctype': 'Stock Entry Detail',
+ 'parenttype': 'Stock Entry',
+ 'parentfield' : 'mtn_details',
+ 'parent' : 'mr',
+ 'item_code' : 'it',
+ 't_warehouse' : 'wh1',
+ 'qty' : 10,
+ 'transfer_qty' : 10,
+ 'incoming_rate': 100,
+ 'stock_uom': 'Nos',
+ 'conversion_factor': 1,
+ 'serial_no': 'srno1, srno2, srno3, srno4, srno5, srno6, srno7, srno8, srno9, srno10'
+ }
+ )
+]
+
+# Material Transfer
+#--------------------
+
+mtn = [
+ Document(
+ fielddata = {
+ 'doctype': 'Stock Entry',
+ 'posting_date': '2011-09-01',
+ 'transfer_date': '2011-09-01',
+ 'posting_time': '13:00',
+ 'company': 'comp',
+ 'fiscal_year' : '2011-2012',
+ 'purpose': 'Material Transfer',
+ 'name': 'mtn'
+ }
+ ),
+ Document(
+ fielddata ={
+ 'doctype': 'Stock Entry Detail',
+ 'parenttype': 'Stock Entry',
+ 'parentfield' : 'mtn_details',
+ 'parent' : 'mtn',
+ 'item_code' : 'it',
+ 's_warehouse' : 'wh1',
+ 't_warehouse' : 'wh2',
+ 'qty' : 5,
+ 'transfer_qty' : 5,
+ 'incoming_rate': 100,
+ 'stock_uom': 'Nos',
+ 'conversion_factor': 1,
+ 'serial_no': 'srno1, srno2, srno3, srno4, srno5'
+ }
+ )
+]
+
+# Material Issue
+#--------------------
+
+mi = [
+ Document(
+ fielddata = {
+ 'doctype': 'Stock Entry',
+ 'posting_date': '2011-09-01',
+ 'transfer_date': '2011-09-01',
+ 'posting_time': '14:00',
+ 'company': 'comp',
+ 'fiscal_year' : '2011-2012',
+ 'purpose': 'Material Issue',
+ 'name': 'mi'
+ }
+ ),
+ Document(
+ fielddata ={
+ 'doctype': 'Stock Entry Detail',
+ 'parenttype': 'Stock Entry',
+ 'parentfield' : 'mtn_details',
+ 'parent' : 'mi',
+ 'item_code' : 'it',
+ 's_warehouse' : 'wh1',
+ 'qty' : 4,
+ 'transfer_qty' : 4,
+ 'incoming_rate': 100,
+ 'stock_uom': 'Nos',
+ 'conversion_factor': 1,
+ 'serial_no': 'srno1, srno2, srno3, srno4'
+ }
+ )
+]
diff --git a/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt b/erpnext/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
similarity index 91%
rename from selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
rename to erpnext/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
index 67abbdc3b0..da8762deab 100644
--- a/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
+++ b/erpnext/selling/DocType Mapper/Delivery Note-Installation Note/Delivery Note-Installation Note.txt
@@ -5,8 +5,8 @@
{
'creation': '2010-08-08 17:09:34',
'docstatus': 0,
- 'modified': '2011-05-17 11:42:57',
- 'modified_by': 'umair@iwebnotes.com',
+ 'modified': '2011-09-15 15:04:42',
+ 'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -31,7 +31,7 @@
# These values are common for all DocType Mapper
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'from_doctype': 'Delivery Note',
'module': 'Selling',
'name': '__common__',
@@ -41,7 +41,7 @@
# DocType Mapper, Delivery Note-Installation Note
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'name': 'Delivery Note-Installation Note'
},
@@ -111,6 +111,14 @@
'to_field': 'prevdoc_date'
},
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'serial_no',
+ 'match_id': 1,
+ 'to_field': 'serial_no'
+ },
+
# Table Mapper Detail
{
'doctype': 'Table Mapper Detail',
diff --git a/selling/DocType Mapper/Enquiry-Quotation/Enquiry-Quotation.txt b/erpnext/selling/DocType Mapper/Enquiry-Quotation/Enquiry-Quotation.txt
similarity index 75%
rename from selling/DocType Mapper/Enquiry-Quotation/Enquiry-Quotation.txt
rename to erpnext/selling/DocType Mapper/Enquiry-Quotation/Enquiry-Quotation.txt
index 4db092dab2..de6f60d965 100644
--- a/selling/DocType Mapper/Enquiry-Quotation/Enquiry-Quotation.txt
+++ b/erpnext/selling/DocType Mapper/Enquiry-Quotation/Enquiry-Quotation.txt
@@ -5,8 +5,8 @@
{
'creation': '2010-08-08 17:09:34',
'docstatus': 0,
- 'modified': '2011-05-10 16:04:40',
- 'modified_by': 'umair@iwebnotes.com',
+ 'modified': '2011-09-14 12:36:24',
+ 'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -23,7 +23,6 @@
# These values are common for all Field Mapper Detail
{
'doctype': 'Field Mapper Detail',
- 'map': 'Yes',
'name': '__common__',
'parent': 'Enquiry-Quotation',
'parentfield': 'field_mapper_details',
@@ -32,7 +31,7 @@
# These values are common for all DocType Mapper
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'from_doctype': 'Enquiry',
'module': 'Selling',
'name': '__common__',
@@ -42,7 +41,7 @@
# DocType Mapper, Enquiry-Quotation
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'name': 'Enquiry-Quotation'
},
@@ -50,6 +49,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'uom',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'stock_uom'
},
@@ -58,6 +58,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'name',
+ 'map': 'Yes',
'match_id': 0,
'to_field': 'enq_no'
},
@@ -66,6 +67,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'parent',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'prevdoc_docname'
},
@@ -74,6 +76,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'parenttype',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'prevdoc_doctype'
},
@@ -82,6 +85,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'enquiry_from',
+ 'map': 'Yes',
'match_id': 0,
'to_field': 'quotation_to'
},
@@ -90,10 +94,38 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'enquiry_type',
+ 'map': 'Yes',
'match_id': 0,
'to_field': 'order_type'
},
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'transaction_date',
+ 'map': 'No',
+ 'match_id': 0,
+ 'to_field': 'transaction_date'
+ },
+
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'status',
+ 'map': 'No',
+ 'match_id': 0,
+ 'to_field': 'status'
+ },
+
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'naming_series',
+ 'map': 'No',
+ 'match_id': 0,
+ 'to_field': 'naming_series'
+ },
+
# Table Mapper Detail
{
'doctype': 'Table Mapper Detail',
diff --git a/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt b/erpnext/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
similarity index 93%
rename from selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
rename to erpnext/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
index 2b7a15a81f..268834a80f 100644
--- a/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
+++ b/erpnext/selling/DocType Mapper/Lead-Customer/Lead-Customer.txt
@@ -5,7 +5,7 @@
{
'creation': '2010-08-08 17:09:34',
'docstatus': 0,
- 'modified': '2010-10-14 13:39:44',
+ 'modified': '2011-09-14 12:36:24',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -36,7 +36,7 @@
# These values are common for all DocType Mapper
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'from_doctype': 'Lead',
'module': 'Selling',
'name': '__common__',
@@ -45,7 +45,7 @@
# DocType Mapper, Lead-Customer
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'name': 'Lead-Customer'
},
diff --git a/selling/DocType Mapper/Lead-Enquiry/Lead-Enquiry.txt b/erpnext/selling/DocType Mapper/Lead-Enquiry/Lead-Enquiry.txt
similarity index 84%
rename from selling/DocType Mapper/Lead-Enquiry/Lead-Enquiry.txt
rename to erpnext/selling/DocType Mapper/Lead-Enquiry/Lead-Enquiry.txt
index 4b32723e02..5dc1c8fef1 100644
--- a/selling/DocType Mapper/Lead-Enquiry/Lead-Enquiry.txt
+++ b/erpnext/selling/DocType Mapper/Lead-Enquiry/Lead-Enquiry.txt
@@ -5,7 +5,7 @@
{
'creation': '2010-08-08 17:09:34',
'docstatus': 0,
- 'modified': '2010-08-05 20:21:54',
+ 'modified': '2011-09-14 12:36:24',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -26,7 +26,6 @@
# These values are common for all Field Mapper Detail
{
'doctype': 'Field Mapper Detail',
- 'map': 'Yes',
'match_id': 0,
'name': '__common__',
'parent': 'Lead-Enquiry',
@@ -36,7 +35,7 @@
# These values are common for all DocType Mapper
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'from_doctype': 'Lead',
'module': 'Selling',
'name': '__common__',
@@ -45,7 +44,7 @@
# DocType Mapper, Lead-Enquiry
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'name': 'Lead-Enquiry'
},
@@ -53,6 +52,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'campaign_name',
+ 'map': 'Yes',
'to_field': 'campaign'
},
@@ -60,6 +60,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'doctype',
+ 'map': 'Yes',
'to_field': 'enquiry_from'
},
@@ -67,9 +68,18 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'name',
+ 'map': 'Yes',
'to_field': 'lead'
},
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'status',
+ 'map': 'No',
+ 'to_field': 'status'
+ },
+
# Table Mapper Detail
{
'doctype': 'Table Mapper Detail'
diff --git a/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt b/erpnext/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
similarity index 94%
rename from selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
rename to erpnext/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
index 04f70ad94c..ee8f8b0167 100644
--- a/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
+++ b/erpnext/selling/DocType Mapper/Project-Sales Order/Project-Sales Order.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2010-09-01 15:48:10',
+ 'creation': '2010-09-01 15:47:59',
'docstatus': 0,
- 'modified': '2010-09-01 14:23:28',
+ 'modified': '2011-09-15 15:04:43',
'modified_by': 'Administrator',
'owner': 'ashwini@webnotestech.com'
},
diff --git a/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt b/erpnext/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
similarity index 92%
rename from selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
rename to erpnext/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
index 4d493a612b..feadb98f9a 100644
--- a/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
+++ b/erpnext/selling/DocType Mapper/Quotation-Sales Order/Quotation-Sales Order.txt
@@ -5,7 +5,7 @@
{
'creation': '2010-08-08 17:09:35',
'docstatus': 0,
- 'modified': '2011-08-25 18:25:02',
+ 'modified': '2011-09-14 12:36:24',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -30,7 +30,7 @@
# These values are common for all DocType Mapper
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'from_doctype': 'Quotation',
'module': 'Selling',
'name': '__common__',
@@ -40,7 +40,7 @@
# DocType Mapper, Quotation-Sales Order
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'name': 'Quotation-Sales Order'
},
@@ -110,6 +110,15 @@
'to_field': 'naming_series'
},
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'status',
+ 'map': 'No',
+ 'match_id': 0,
+ 'to_field': 'status'
+ },
+
# Table Mapper Detail
{
'doctype': 'Table Mapper Detail',
diff --git a/selling/Module Def/Selling/Selling.txt b/erpnext/selling/Module Def/Selling/Selling.txt
similarity index 100%
rename from selling/Module Def/Selling/Selling.txt
rename to erpnext/selling/Module Def/Selling/Selling.txt
diff --git a/selling/Role/Customer/Customer.txt b/erpnext/selling/Role/Customer/Customer.txt
similarity index 100%
rename from selling/Role/Customer/Customer.txt
rename to erpnext/selling/Role/Customer/Customer.txt
diff --git a/selling/Role/Partner/Partner.txt b/erpnext/selling/Role/Partner/Partner.txt
similarity index 100%
rename from selling/Role/Partner/Partner.txt
rename to erpnext/selling/Role/Partner/Partner.txt
diff --git a/selling/Role/Sales Manager/Sales Manager.txt b/erpnext/selling/Role/Sales Manager/Sales Manager.txt
similarity index 100%
rename from selling/Role/Sales Manager/Sales Manager.txt
rename to erpnext/selling/Role/Sales Manager/Sales Manager.txt
diff --git a/selling/Role/Sales Master Manager/Sales Master Manager.txt b/erpnext/selling/Role/Sales Master Manager/Sales Master Manager.txt
similarity index 100%
rename from selling/Role/Sales Master Manager/Sales Master Manager.txt
rename to erpnext/selling/Role/Sales Master Manager/Sales Master Manager.txt
diff --git a/selling/Role/Sales User/Sales User.txt b/erpnext/selling/Role/Sales User/Sales User.txt
similarity index 100%
rename from selling/Role/Sales User/Sales User.txt
rename to erpnext/selling/Role/Sales User/Sales User.txt
diff --git a/selling/doctype/enquiry_sms_detail/__init__.py b/erpnext/selling/__init__.py
similarity index 100%
rename from selling/doctype/enquiry_sms_detail/__init__.py
rename to erpnext/selling/__init__.py
diff --git a/selling/doctype/follow_up/__init__.py b/erpnext/selling/doctype/__init__.py
similarity index 100%
rename from selling/doctype/follow_up/__init__.py
rename to erpnext/selling/doctype/__init__.py
diff --git a/selling/doctype/industry_type/__init__.py b/erpnext/selling/doctype/campaign/__init__.py
similarity index 100%
rename from selling/doctype/industry_type/__init__.py
rename to erpnext/selling/doctype/campaign/__init__.py
diff --git a/selling/doctype/campaign/campaign.js b/erpnext/selling/doctype/campaign/campaign.js
similarity index 100%
rename from selling/doctype/campaign/campaign.js
rename to erpnext/selling/doctype/campaign/campaign.js
diff --git a/selling/doctype/campaign/campaign.txt b/erpnext/selling/doctype/campaign/campaign.txt
similarity index 100%
rename from selling/doctype/campaign/campaign.txt
rename to erpnext/selling/doctype/campaign/campaign.txt
diff --git a/selling/doctype/installation_note/__init__.py b/erpnext/selling/doctype/customer/__init__.py
similarity index 100%
rename from selling/doctype/installation_note/__init__.py
rename to erpnext/selling/doctype/customer/__init__.py
diff --git a/selling/doctype/customer/customer.js b/erpnext/selling/doctype/customer/customer.js
similarity index 100%
rename from selling/doctype/customer/customer.js
rename to erpnext/selling/doctype/customer/customer.js
diff --git a/selling/doctype/customer/customer.py b/erpnext/selling/doctype/customer/customer.py
similarity index 100%
rename from selling/doctype/customer/customer.py
rename to erpnext/selling/doctype/customer/customer.py
diff --git a/selling/doctype/customer/customer.txt b/erpnext/selling/doctype/customer/customer.txt
similarity index 100%
rename from selling/doctype/customer/customer.txt
rename to erpnext/selling/doctype/customer/customer.txt
diff --git a/selling/doctype/installed_item_details/__init__.py b/erpnext/selling/doctype/enquiry/__init__.py
similarity index 100%
rename from selling/doctype/installed_item_details/__init__.py
rename to erpnext/selling/doctype/enquiry/__init__.py
diff --git a/selling/doctype/enquiry/enquiry.js b/erpnext/selling/doctype/enquiry/enquiry.js
similarity index 100%
rename from selling/doctype/enquiry/enquiry.js
rename to erpnext/selling/doctype/enquiry/enquiry.js
diff --git a/selling/doctype/enquiry/enquiry.py b/erpnext/selling/doctype/enquiry/enquiry.py
similarity index 97%
rename from selling/doctype/enquiry/enquiry.py
rename to erpnext/selling/doctype/enquiry/enquiry.py
index 12597022bd..773bedf1fe 100644
--- a/selling/doctype/enquiry/enquiry.py
+++ b/erpnext/selling/doctype/enquiry/enquiry.py
@@ -115,26 +115,17 @@ class DocType(TransactionBase):
ch = addchild(ev, 'event_individuals', 'Event User', 0)
ch.person = d
ch.save(1)
-
- #user_list = ['Sales Manager', 'Sales User']
- #for d in user_list:
- # ch = addchild(ev, 'event_individuals', 'Event User', 0)
- # ch.person = d
- # ch.save()
+
#--------------Validation For Last Contact Date-----------------
# ====================================================================================================================
def set_last_contact_date(self):
- #if not self.doc.contact_date_ref:
- #self.doc.contact_date_ref=self.doc.contact_date
- #self.doc.last_contact_date=self.doc.contact_date_ref
if self.doc.contact_date_ref and self.doc.contact_date_ref != self.doc.contact_date:
if getdate(self.doc.contact_date_ref) < getdate(self.doc.contact_date):
self.doc.last_contact_date=self.doc.contact_date_ref
else:
msgprint("Contact Date Cannot be before Last Contact Date")
raise Exception
- #set(self.doc, 'contact_date_ref',self.doc.contact_date)
# check if item present in item table
# ====================================================================================================================
@@ -171,8 +162,6 @@ class DocType(TransactionBase):
raise Exception
else:
set(self.doc, 'status', 'Cancelled')
-
- get_obj('Feed Control').make_feed(self.doc, 'cancelled')
# declare as enquiry lost
#---------------------------
diff --git a/selling/doctype/enquiry/enquiry.txt b/erpnext/selling/doctype/enquiry/enquiry.txt
similarity index 100%
rename from selling/doctype/enquiry/enquiry.txt
rename to erpnext/selling/doctype/enquiry/enquiry.txt
diff --git a/selling/doctype/lead/__init__.py b/erpnext/selling/doctype/enquiry_detail/__init__.py
similarity index 100%
rename from selling/doctype/lead/__init__.py
rename to erpnext/selling/doctype/enquiry_detail/__init__.py
diff --git a/selling/doctype/enquiry_detail/enquiry_detail.txt b/erpnext/selling/doctype/enquiry_detail/enquiry_detail.txt
similarity index 100%
rename from selling/doctype/enquiry_detail/enquiry_detail.txt
rename to erpnext/selling/doctype/enquiry_detail/enquiry_detail.txt
diff --git a/selling/doctype/lead_attachment_detail/__init__.py b/erpnext/selling/doctype/enquiry_sms_detail/__init__.py
similarity index 100%
rename from selling/doctype/lead_attachment_detail/__init__.py
rename to erpnext/selling/doctype/enquiry_sms_detail/__init__.py
diff --git a/selling/doctype/enquiry_sms_detail/enquiry_sms_detail.txt b/erpnext/selling/doctype/enquiry_sms_detail/enquiry_sms_detail.txt
similarity index 100%
rename from selling/doctype/enquiry_sms_detail/enquiry_sms_detail.txt
rename to erpnext/selling/doctype/enquiry_sms_detail/enquiry_sms_detail.txt
diff --git a/selling/doctype/lead_item_detail/__init__.py b/erpnext/selling/doctype/follow_up/__init__.py
similarity index 100%
rename from selling/doctype/lead_item_detail/__init__.py
rename to erpnext/selling/doctype/follow_up/__init__.py
diff --git a/selling/doctype/follow_up/follow_up.txt b/erpnext/selling/doctype/follow_up/follow_up.txt
similarity index 100%
rename from selling/doctype/follow_up/follow_up.txt
rename to erpnext/selling/doctype/follow_up/follow_up.txt
diff --git a/selling/doctype/lead_sms_detail/__init__.py b/erpnext/selling/doctype/industry_type/__init__.py
similarity index 100%
rename from selling/doctype/lead_sms_detail/__init__.py
rename to erpnext/selling/doctype/industry_type/__init__.py
diff --git a/selling/doctype/industry_type/industry_type.js b/erpnext/selling/doctype/industry_type/industry_type.js
similarity index 100%
rename from selling/doctype/industry_type/industry_type.js
rename to erpnext/selling/doctype/industry_type/industry_type.js
diff --git a/selling/doctype/industry_type/industry_type.txt b/erpnext/selling/doctype/industry_type/industry_type.txt
similarity index 100%
rename from selling/doctype/industry_type/industry_type.txt
rename to erpnext/selling/doctype/industry_type/industry_type.txt
diff --git a/selling/doctype/plot_control/__init__.py b/erpnext/selling/doctype/installation_note/__init__.py
similarity index 100%
rename from selling/doctype/plot_control/__init__.py
rename to erpnext/selling/doctype/installation_note/__init__.py
diff --git a/selling/doctype/installation_note/installation_note.js b/erpnext/selling/doctype/installation_note/installation_note.js
similarity index 100%
rename from selling/doctype/installation_note/installation_note.js
rename to erpnext/selling/doctype/installation_note/installation_note.js
diff --git a/selling/doctype/installation_note/installation_note.py b/erpnext/selling/doctype/installation_note/installation_note.py
similarity index 100%
rename from selling/doctype/installation_note/installation_note.py
rename to erpnext/selling/doctype/installation_note/installation_note.py
diff --git a/selling/doctype/installation_note/installation_note.txt b/erpnext/selling/doctype/installation_note/installation_note.txt
similarity index 100%
rename from selling/doctype/installation_note/installation_note.txt
rename to erpnext/selling/doctype/installation_note/installation_note.txt
diff --git a/selling/doctype/quotation/__init__.py b/erpnext/selling/doctype/installed_item_details/__init__.py
similarity index 100%
rename from selling/doctype/quotation/__init__.py
rename to erpnext/selling/doctype/installed_item_details/__init__.py
diff --git a/selling/doctype/installed_item_details/installed_item_details.txt b/erpnext/selling/doctype/installed_item_details/installed_item_details.txt
similarity index 100%
rename from selling/doctype/installed_item_details/installed_item_details.txt
rename to erpnext/selling/doctype/installed_item_details/installed_item_details.txt
diff --git a/selling/doctype/quotation_detail/__init__.py b/erpnext/selling/doctype/lead/__init__.py
similarity index 100%
rename from selling/doctype/quotation_detail/__init__.py
rename to erpnext/selling/doctype/lead/__init__.py
diff --git a/selling/doctype/lead/lead.js b/erpnext/selling/doctype/lead/lead.js
similarity index 100%
rename from selling/doctype/lead/lead.js
rename to erpnext/selling/doctype/lead/lead.js
diff --git a/selling/doctype/lead/lead.py b/erpnext/selling/doctype/lead/lead.py
similarity index 100%
rename from selling/doctype/lead/lead.py
rename to erpnext/selling/doctype/lead/lead.py
diff --git a/selling/doctype/lead/lead.txt b/erpnext/selling/doctype/lead/lead.txt
similarity index 100%
rename from selling/doctype/lead/lead.txt
rename to erpnext/selling/doctype/lead/lead.txt
diff --git a/selling/doctype/return_detail/__init__.py b/erpnext/selling/doctype/lead_attachment_detail/__init__.py
similarity index 100%
rename from selling/doctype/return_detail/__init__.py
rename to erpnext/selling/doctype/lead_attachment_detail/__init__.py
diff --git a/selling/doctype/lead_attachment_detail/lead_attachment_detail.txt b/erpnext/selling/doctype/lead_attachment_detail/lead_attachment_detail.txt
similarity index 100%
rename from selling/doctype/lead_attachment_detail/lead_attachment_detail.txt
rename to erpnext/selling/doctype/lead_attachment_detail/lead_attachment_detail.txt
diff --git a/selling/doctype/sales_common/__init__.py b/erpnext/selling/doctype/lead_item_detail/__init__.py
similarity index 100%
rename from selling/doctype/sales_common/__init__.py
rename to erpnext/selling/doctype/lead_item_detail/__init__.py
diff --git a/selling/doctype/lead_item_detail/lead_item_detail.txt b/erpnext/selling/doctype/lead_item_detail/lead_item_detail.txt
similarity index 100%
rename from selling/doctype/lead_item_detail/lead_item_detail.txt
rename to erpnext/selling/doctype/lead_item_detail/lead_item_detail.txt
diff --git a/selling/doctype/sales_order/__init__.py b/erpnext/selling/doctype/lead_sms_detail/__init__.py
similarity index 100%
rename from selling/doctype/sales_order/__init__.py
rename to erpnext/selling/doctype/lead_sms_detail/__init__.py
diff --git a/selling/doctype/lead_sms_detail/lead_sms_detail.txt b/erpnext/selling/doctype/lead_sms_detail/lead_sms_detail.txt
similarity index 100%
rename from selling/doctype/lead_sms_detail/lead_sms_detail.txt
rename to erpnext/selling/doctype/lead_sms_detail/lead_sms_detail.txt
diff --git a/selling/doctype/sales_order_detail/__init__.py b/erpnext/selling/doctype/plot_control/__init__.py
similarity index 100%
rename from selling/doctype/sales_order_detail/__init__.py
rename to erpnext/selling/doctype/plot_control/__init__.py
diff --git a/selling/doctype/plot_control/plot_control.py b/erpnext/selling/doctype/plot_control/plot_control.py
similarity index 100%
rename from selling/doctype/plot_control/plot_control.py
rename to erpnext/selling/doctype/plot_control/plot_control.py
diff --git a/selling/doctype/plot_control/plot_control.txt b/erpnext/selling/doctype/plot_control/plot_control.txt
similarity index 100%
rename from selling/doctype/plot_control/plot_control.txt
rename to erpnext/selling/doctype/plot_control/plot_control.txt
diff --git a/selling/doctype/sales_team/__init__.py b/erpnext/selling/doctype/quotation/__init__.py
similarity index 100%
rename from selling/doctype/sales_team/__init__.py
rename to erpnext/selling/doctype/quotation/__init__.py
diff --git a/selling/doctype/quotation/quotation.js b/erpnext/selling/doctype/quotation/quotation.js
similarity index 96%
rename from selling/doctype/quotation/quotation.js
rename to erpnext/selling/doctype/quotation/quotation.js
index b3dcde681a..21eceb9c61 100644
--- a/selling/doctype/quotation/quotation.js
+++ b/erpnext/selling/doctype/quotation/quotation.js
@@ -312,10 +312,11 @@ cur_frm.cscript.validate = function(doc,cdt,cdn){
//================ Last Quoted Price and Last Sold Price suggestion ======================
cur_frm.fields_dict['quotation_details'].grid.get_field('item_code').get_query= function(doc, cdt, cdn) {
var d = locals[cdt][cdn];
+ var cond = (doc.order_type == 'Maintenance')? " and tabItem.is_service_item = 'Yes'" : " and tabItem.is_sales_item = 'Yes'"
if(doc.customer)
- return repl("SELECT i.name,i.item_code,concat('Last quoted at - ',cast(quote_rate as char)) as quote_rate,concat('Last sold at - ',cast(sales_rate as char)) as sales_rate FROM\
+ return repl("SELECT i.name,i.item_code,concat('Last quoted at - ',cast(quote_rate as char)) as quote_rate,concat('Last sold at - ',cast(sales_rate as char)) as sales_rate, i.item_name, i.description FROM\
(\
- select item_code,name from tabItem where tabItem.%(key)s like '%s'\
+ select item_code,name, item_name, description from tabItem where tabItem.%(key)s like '%s' %(cond)s\
)i\
left join\
(\
@@ -336,7 +337,7 @@ cur_frm.fields_dict['quotation_details'].grid.get_field('item_code').get_query=
(\
select rd.item_code,max(voucher_date) as voucher_date from `tabRV Detail` rd, `tabReceivable Voucher` r where r.name=rd.parent and r.docstatus=1 and customer='%(cust)s' group by rd.item_code\
)m where r.item_code=m.item_code and r.voucher_date=m.voucher_date\
- )s on i.item_code=s.item_code ORDER BY item_code LIMIT 50",{cust:doc.customer});
+ )s on i.item_code=s.item_code ORDER BY item_code LIMIT 50",{cust:doc.customer, cond:cond});
else
- return "SELECT name, item_code FROM tabItem WHERE `tabItem`.%(key)s LIKE '%s' ORDER BY tabItem.item_code DESC LIMIT 50";
-}
\ No newline at end of file
+ return repl("SELECT name, item_name, description FROM tabItem WHERE `tabItem`.%(key)s LIKE '%s' %(cond)s ORDER BY tabItem.item_code DESC LIMIT 50", {cond:cond});
+}
diff --git a/selling/doctype/quotation/quotation.py b/erpnext/selling/doctype/quotation/quotation.py
similarity index 100%
rename from selling/doctype/quotation/quotation.py
rename to erpnext/selling/doctype/quotation/quotation.py
diff --git a/selling/doctype/quotation/quotation.txt b/erpnext/selling/doctype/quotation/quotation.txt
similarity index 100%
rename from selling/doctype/quotation/quotation.txt
rename to erpnext/selling/doctype/quotation/quotation.txt
diff --git a/selling/doctype/shipping_address/__init__.py b/erpnext/selling/doctype/quotation_detail/__init__.py
old mode 100755
new mode 100644
similarity index 100%
rename from selling/doctype/shipping_address/__init__.py
rename to erpnext/selling/doctype/quotation_detail/__init__.py
diff --git a/selling/doctype/quotation_detail/quotation_detail.txt b/erpnext/selling/doctype/quotation_detail/quotation_detail.txt
similarity index 100%
rename from selling/doctype/quotation_detail/quotation_detail.txt
rename to erpnext/selling/doctype/quotation_detail/quotation_detail.txt
diff --git a/selling/doctype/sms_center/__init__.py b/erpnext/selling/doctype/return_detail/__init__.py
similarity index 100%
rename from selling/doctype/sms_center/__init__.py
rename to erpnext/selling/doctype/return_detail/__init__.py
diff --git a/selling/doctype/return_detail/return_detail.txt b/erpnext/selling/doctype/return_detail/return_detail.txt
similarity index 100%
rename from selling/doctype/return_detail/return_detail.txt
rename to erpnext/selling/doctype/return_detail/return_detail.txt
diff --git a/selling/page/__init__.py b/erpnext/selling/doctype/sales_common/__init__.py
similarity index 100%
rename from selling/page/__init__.py
rename to erpnext/selling/doctype/sales_common/__init__.py
diff --git a/selling/doctype/sales_common/sales_common.js b/erpnext/selling/doctype/sales_common/sales_common.js
similarity index 100%
rename from selling/doctype/sales_common/sales_common.js
rename to erpnext/selling/doctype/sales_common/sales_common.js
diff --git a/selling/doctype/sales_common/sales_common.py b/erpnext/selling/doctype/sales_common/sales_common.py
similarity index 100%
rename from selling/doctype/sales_common/sales_common.py
rename to erpnext/selling/doctype/sales_common/sales_common.py
diff --git a/selling/doctype/sales_common/sales_common.txt b/erpnext/selling/doctype/sales_common/sales_common.txt
similarity index 100%
rename from selling/doctype/sales_common/sales_common.txt
rename to erpnext/selling/doctype/sales_common/sales_common.txt
diff --git a/selling/page/customers/__init__.py b/erpnext/selling/doctype/sales_order/__init__.py
similarity index 100%
rename from selling/page/customers/__init__.py
rename to erpnext/selling/doctype/sales_order/__init__.py
diff --git a/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js
similarity index 100%
rename from selling/doctype/sales_order/sales_order.js
rename to erpnext/selling/doctype/sales_order/sales_order.js
diff --git a/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py
similarity index 100%
rename from selling/doctype/sales_order/sales_order.py
rename to erpnext/selling/doctype/sales_order/sales_order.py
diff --git a/selling/doctype/sales_order/sales_order.txt b/erpnext/selling/doctype/sales_order/sales_order.txt
similarity index 100%
rename from selling/doctype/sales_order/sales_order.txt
rename to erpnext/selling/doctype/sales_order/sales_order.txt
diff --git a/selling/page/sales_browser/__init__.py b/erpnext/selling/doctype/sales_order_detail/__init__.py
similarity index 100%
rename from selling/page/sales_browser/__init__.py
rename to erpnext/selling/doctype/sales_order_detail/__init__.py
diff --git a/selling/doctype/sales_order_detail/sales_order_detail.txt b/erpnext/selling/doctype/sales_order_detail/sales_order_detail.txt
similarity index 100%
rename from selling/doctype/sales_order_detail/sales_order_detail.txt
rename to erpnext/selling/doctype/sales_order_detail/sales_order_detail.txt
diff --git a/selling/page/sales_dashboard/__init__.py b/erpnext/selling/doctype/sales_team/__init__.py
similarity index 100%
rename from selling/page/sales_dashboard/__init__.py
rename to erpnext/selling/doctype/sales_team/__init__.py
diff --git a/selling/doctype/sales_team/sales_team.txt b/erpnext/selling/doctype/sales_team/sales_team.txt
similarity index 100%
rename from selling/doctype/sales_team/sales_team.txt
rename to erpnext/selling/doctype/sales_team/sales_team.txt
diff --git a/selling/search_criteria/__init__.py b/erpnext/selling/doctype/shipping_address/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from selling/search_criteria/__init__.py
rename to erpnext/selling/doctype/shipping_address/__init__.py
diff --git a/selling/doctype/shipping_address/shipping_address.js b/erpnext/selling/doctype/shipping_address/shipping_address.js
similarity index 100%
rename from selling/doctype/shipping_address/shipping_address.js
rename to erpnext/selling/doctype/shipping_address/shipping_address.js
diff --git a/selling/doctype/shipping_address/shipping_address.py b/erpnext/selling/doctype/shipping_address/shipping_address.py
similarity index 100%
rename from selling/doctype/shipping_address/shipping_address.py
rename to erpnext/selling/doctype/shipping_address/shipping_address.py
diff --git a/selling/doctype/shipping_address/shipping_address.txt b/erpnext/selling/doctype/shipping_address/shipping_address.txt
similarity index 100%
rename from selling/doctype/shipping_address/shipping_address.txt
rename to erpnext/selling/doctype/shipping_address/shipping_address.txt
diff --git a/selling/search_criteria/delivered_items_to_be_install/__init__.py b/erpnext/selling/doctype/sms_center/__init__.py
similarity index 100%
rename from selling/search_criteria/delivered_items_to_be_install/__init__.py
rename to erpnext/selling/doctype/sms_center/__init__.py
diff --git a/selling/doctype/sms_center/sms_center.js b/erpnext/selling/doctype/sms_center/sms_center.js
similarity index 100%
rename from selling/doctype/sms_center/sms_center.js
rename to erpnext/selling/doctype/sms_center/sms_center.js
diff --git a/selling/doctype/sms_center/sms_center.py b/erpnext/selling/doctype/sms_center/sms_center.py
similarity index 100%
rename from selling/doctype/sms_center/sms_center.py
rename to erpnext/selling/doctype/sms_center/sms_center.py
diff --git a/selling/doctype/sms_center/sms_center.txt b/erpnext/selling/doctype/sms_center/sms_center.txt
similarity index 100%
rename from selling/doctype/sms_center/sms_center.txt
rename to erpnext/selling/doctype/sms_center/sms_center.txt
diff --git a/selling/search_criteria/delivery_note_itemwise_pending_to_bill/__init__.py b/erpnext/selling/page/__init__.py
similarity index 100%
rename from selling/search_criteria/delivery_note_itemwise_pending_to_bill/__init__.py
rename to erpnext/selling/page/__init__.py
diff --git a/selling/search_criteria/draft_sales_orders/__init__.py b/erpnext/selling/page/customers/__init__.py
similarity index 100%
rename from selling/search_criteria/draft_sales_orders/__init__.py
rename to erpnext/selling/page/customers/__init__.py
diff --git a/selling/page/customers/customers.html b/erpnext/selling/page/customers/customers.html
similarity index 100%
rename from selling/page/customers/customers.html
rename to erpnext/selling/page/customers/customers.html
diff --git a/selling/page/customers/customers.js b/erpnext/selling/page/customers/customers.js
similarity index 100%
rename from selling/page/customers/customers.js
rename to erpnext/selling/page/customers/customers.js
diff --git a/selling/page/customers/customers.txt b/erpnext/selling/page/customers/customers.txt
similarity index 100%
rename from selling/page/customers/customers.txt
rename to erpnext/selling/page/customers/customers.txt
diff --git a/selling/search_criteria/follow_up_report/__init__.py b/erpnext/selling/page/sales_browser/__init__.py
similarity index 100%
rename from selling/search_criteria/follow_up_report/__init__.py
rename to erpnext/selling/page/sales_browser/__init__.py
diff --git a/selling/page/sales_browser/sales_browser.html b/erpnext/selling/page/sales_browser/sales_browser.html
similarity index 100%
rename from selling/page/sales_browser/sales_browser.html
rename to erpnext/selling/page/sales_browser/sales_browser.html
diff --git a/selling/page/sales_browser/sales_browser.js b/erpnext/selling/page/sales_browser/sales_browser.js
similarity index 100%
rename from selling/page/sales_browser/sales_browser.js
rename to erpnext/selling/page/sales_browser/sales_browser.js
diff --git a/selling/page/sales_browser/sales_browser.txt b/erpnext/selling/page/sales_browser/sales_browser.txt
similarity index 100%
rename from selling/page/sales_browser/sales_browser.txt
rename to erpnext/selling/page/sales_browser/sales_browser.txt
diff --git a/selling/search_criteria/gross_profit/__init__.py b/erpnext/selling/page/sales_dashboard/__init__.py
similarity index 100%
rename from selling/search_criteria/gross_profit/__init__.py
rename to erpnext/selling/page/sales_dashboard/__init__.py
diff --git a/selling/page/sales_dashboard/sales_dashboard.html b/erpnext/selling/page/sales_dashboard/sales_dashboard.html
similarity index 100%
rename from selling/page/sales_dashboard/sales_dashboard.html
rename to erpnext/selling/page/sales_dashboard/sales_dashboard.html
diff --git a/selling/page/sales_dashboard/sales_dashboard.js b/erpnext/selling/page/sales_dashboard/sales_dashboard.js
similarity index 100%
rename from selling/page/sales_dashboard/sales_dashboard.js
rename to erpnext/selling/page/sales_dashboard/sales_dashboard.js
diff --git a/selling/page/sales_dashboard/sales_dashboard.txt b/erpnext/selling/page/sales_dashboard/sales_dashboard.txt
similarity index 100%
rename from selling/page/sales_dashboard/sales_dashboard.txt
rename to erpnext/selling/page/sales_dashboard/sales_dashboard.txt
diff --git a/selling/search_criteria/itemwise_delivery_details/__init__.py b/erpnext/selling/search_criteria/__init__.py
similarity index 100%
rename from selling/search_criteria/itemwise_delivery_details/__init__.py
rename to erpnext/selling/search_criteria/__init__.py
diff --git a/selling/search_criteria/itemwise_sales_details/__init__.py b/erpnext/selling/search_criteria/delivered_items_to_be_install/__init__.py
similarity index 100%
rename from selling/search_criteria/itemwise_sales_details/__init__.py
rename to erpnext/selling/search_criteria/delivered_items_to_be_install/__init__.py
diff --git a/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.js b/erpnext/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.js
similarity index 100%
rename from selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.js
rename to erpnext/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.js
diff --git a/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt b/erpnext/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
similarity index 100%
rename from selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
rename to erpnext/selling/search_criteria/delivered_items_to_be_install/delivered_items_to_be_install.txt
diff --git a/selling/search_criteria/monthly_despatched_trend/__init__.py b/erpnext/selling/search_criteria/delivery_note_itemwise_pending_to_bill/__init__.py
similarity index 100%
rename from selling/search_criteria/monthly_despatched_trend/__init__.py
rename to erpnext/selling/search_criteria/delivery_note_itemwise_pending_to_bill/__init__.py
diff --git a/selling/search_criteria/delivery_note_itemwise_pending_to_bill/delivery_note_itemwise_pending_to_bill.txt b/erpnext/selling/search_criteria/delivery_note_itemwise_pending_to_bill/delivery_note_itemwise_pending_to_bill.txt
similarity index 100%
rename from selling/search_criteria/delivery_note_itemwise_pending_to_bill/delivery_note_itemwise_pending_to_bill.txt
rename to erpnext/selling/search_criteria/delivery_note_itemwise_pending_to_bill/delivery_note_itemwise_pending_to_bill.txt
diff --git a/selling/search_criteria/periodic_sales_summary/__init__.py b/erpnext/selling/search_criteria/draft_sales_orders/__init__.py
similarity index 100%
rename from selling/search_criteria/periodic_sales_summary/__init__.py
rename to erpnext/selling/search_criteria/draft_sales_orders/__init__.py
diff --git a/selling/search_criteria/draft_sales_orders/draft_sales_orders.js b/erpnext/selling/search_criteria/draft_sales_orders/draft_sales_orders.js
similarity index 100%
rename from selling/search_criteria/draft_sales_orders/draft_sales_orders.js
rename to erpnext/selling/search_criteria/draft_sales_orders/draft_sales_orders.js
diff --git a/selling/search_criteria/draft_sales_orders/draft_sales_orders.txt b/erpnext/selling/search_criteria/draft_sales_orders/draft_sales_orders.txt
similarity index 100%
rename from selling/search_criteria/draft_sales_orders/draft_sales_orders.txt
rename to erpnext/selling/search_criteria/draft_sales_orders/draft_sales_orders.txt
diff --git a/selling/search_criteria/sales_agentwise_commission/__init__.py b/erpnext/selling/search_criteria/follow_up_report/__init__.py
similarity index 100%
rename from selling/search_criteria/sales_agentwise_commission/__init__.py
rename to erpnext/selling/search_criteria/follow_up_report/__init__.py
diff --git a/selling/search_criteria/follow_up_report/follow_up_report.js b/erpnext/selling/search_criteria/follow_up_report/follow_up_report.js
similarity index 100%
rename from selling/search_criteria/follow_up_report/follow_up_report.js
rename to erpnext/selling/search_criteria/follow_up_report/follow_up_report.js
diff --git a/selling/search_criteria/follow_up_report/follow_up_report.py b/erpnext/selling/search_criteria/follow_up_report/follow_up_report.py
similarity index 100%
rename from selling/search_criteria/follow_up_report/follow_up_report.py
rename to erpnext/selling/search_criteria/follow_up_report/follow_up_report.py
diff --git a/selling/search_criteria/follow_up_report/follow_up_report.txt b/erpnext/selling/search_criteria/follow_up_report/follow_up_report.txt
similarity index 100%
rename from selling/search_criteria/follow_up_report/follow_up_report.txt
rename to erpnext/selling/search_criteria/follow_up_report/follow_up_report.txt
diff --git a/selling/search_criteria/sales_order_pending_items1/__init__.py b/erpnext/selling/search_criteria/gross_profit/__init__.py
similarity index 100%
rename from selling/search_criteria/sales_order_pending_items1/__init__.py
rename to erpnext/selling/search_criteria/gross_profit/__init__.py
diff --git a/selling/search_criteria/gross_profit/gross_profit.js b/erpnext/selling/search_criteria/gross_profit/gross_profit.js
similarity index 100%
rename from selling/search_criteria/gross_profit/gross_profit.js
rename to erpnext/selling/search_criteria/gross_profit/gross_profit.js
diff --git a/selling/search_criteria/gross_profit/gross_profit.py b/erpnext/selling/search_criteria/gross_profit/gross_profit.py
similarity index 100%
rename from selling/search_criteria/gross_profit/gross_profit.py
rename to erpnext/selling/search_criteria/gross_profit/gross_profit.py
diff --git a/selling/search_criteria/gross_profit/gross_profit.txt b/erpnext/selling/search_criteria/gross_profit/gross_profit.txt
similarity index 100%
rename from selling/search_criteria/gross_profit/gross_profit.txt
rename to erpnext/selling/search_criteria/gross_profit/gross_profit.txt
diff --git a/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/__init__.py b/erpnext/selling/search_criteria/itemwise_delivery_details/__init__.py
similarity index 100%
rename from selling/search_criteria/sales_orderwise_booking_&_delivery_summary/__init__.py
rename to erpnext/selling/search_criteria/itemwise_delivery_details/__init__.py
diff --git a/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.js b/erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.js
similarity index 100%
rename from selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.js
rename to erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.js
diff --git a/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.py b/erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.py
similarity index 100%
rename from selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.py
rename to erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.py
diff --git a/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt b/erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
similarity index 100%
rename from selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
rename to erpnext/selling/search_criteria/itemwise_delivery_details/itemwise_delivery_details.txt
diff --git a/selling/search_criteria/sales_orderwise_pending_amount_to_bill/__init__.py b/erpnext/selling/search_criteria/itemwise_sales_details/__init__.py
similarity index 100%
rename from selling/search_criteria/sales_orderwise_pending_amount_to_bill/__init__.py
rename to erpnext/selling/search_criteria/itemwise_sales_details/__init__.py
diff --git a/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.js b/erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.js
similarity index 100%
rename from selling/search_criteria/itemwise_sales_details/itemwise_sales_details.js
rename to erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.js
diff --git a/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.py b/erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.py
similarity index 100%
rename from selling/search_criteria/itemwise_sales_details/itemwise_sales_details.py
rename to erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.py
diff --git a/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt b/erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
similarity index 100%
rename from selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
rename to erpnext/selling/search_criteria/itemwise_sales_details/itemwise_sales_details.txt
diff --git a/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/__init__.py b/erpnext/selling/search_criteria/monthly_despatched_trend/__init__.py
similarity index 100%
rename from selling/search_criteria/sales_orderwise_pending_qty_to_deliver/__init__.py
rename to erpnext/selling/search_criteria/monthly_despatched_trend/__init__.py
diff --git a/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.js b/erpnext/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.js
similarity index 100%
rename from selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.js
rename to erpnext/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.js
diff --git a/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.py b/erpnext/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.py
similarity index 100%
rename from selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.py
rename to erpnext/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.py
diff --git a/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.txt b/erpnext/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.txt
similarity index 100%
rename from selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.txt
rename to erpnext/selling/search_criteria/monthly_despatched_trend/monthly_despatched_trend.txt
diff --git a/selling/search_criteria/sales_persons_target_variance_item_group_wise/__init__.py b/erpnext/selling/search_criteria/periodic_sales_summary/__init__.py
similarity index 100%
rename from selling/search_criteria/sales_persons_target_variance_item_group_wise/__init__.py
rename to erpnext/selling/search_criteria/periodic_sales_summary/__init__.py
diff --git a/selling/search_criteria/periodic_sales_summary/periodic_sales_summary.js b/erpnext/selling/search_criteria/periodic_sales_summary/periodic_sales_summary.js
similarity index 100%
rename from selling/search_criteria/periodic_sales_summary/periodic_sales_summary.js
rename to erpnext/selling/search_criteria/periodic_sales_summary/periodic_sales_summary.js
diff --git a/selling/search_criteria/periodic_sales_summary/periodic_sales_summary.txt b/erpnext/selling/search_criteria/periodic_sales_summary/periodic_sales_summary.txt
similarity index 100%
rename from selling/search_criteria/periodic_sales_summary/periodic_sales_summary.txt
rename to erpnext/selling/search_criteria/periodic_sales_summary/periodic_sales_summary.txt
diff --git a/selling/search_criteria/sales_personwise_transaction_summary/__init__.py b/erpnext/selling/search_criteria/sales_agentwise_commission/__init__.py
old mode 100755
new mode 100644
similarity index 100%
rename from selling/search_criteria/sales_personwise_transaction_summary/__init__.py
rename to erpnext/selling/search_criteria/sales_agentwise_commission/__init__.py
diff --git a/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.js b/erpnext/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.js
similarity index 100%
rename from selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.js
rename to erpnext/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.js
diff --git a/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.py b/erpnext/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.py
similarity index 100%
rename from selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.py
rename to erpnext/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.py
diff --git a/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.txt b/erpnext/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.txt
similarity index 100%
rename from selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.txt
rename to erpnext/selling/search_criteria/sales_agentwise_commission/sales_agentwise_commission.txt
diff --git a/selling/search_criteria/target_variance_report/__init__.py b/erpnext/selling/search_criteria/sales_order_pending_items1/__init__.py
similarity index 100%
rename from selling/search_criteria/target_variance_report/__init__.py
rename to erpnext/selling/search_criteria/sales_order_pending_items1/__init__.py
diff --git a/selling/search_criteria/sales_order_pending_items1/sales_order_pending_items1.js b/erpnext/selling/search_criteria/sales_order_pending_items1/sales_order_pending_items1.js
similarity index 100%
rename from selling/search_criteria/sales_order_pending_items1/sales_order_pending_items1.js
rename to erpnext/selling/search_criteria/sales_order_pending_items1/sales_order_pending_items1.js
diff --git a/selling/search_criteria/sales_order_pending_items1/sales_order_pending_items1.txt b/erpnext/selling/search_criteria/sales_order_pending_items1/sales_order_pending_items1.txt
similarity index 100%
rename from selling/search_criteria/sales_order_pending_items1/sales_order_pending_items1.txt
rename to erpnext/selling/search_criteria/sales_order_pending_items1/sales_order_pending_items1.txt
diff --git a/selling/search_criteria/sales_orderwise_booking_ b/erpnext/selling/search_criteria/sales_orderwise_booking_
similarity index 100%
rename from selling/search_criteria/sales_orderwise_booking_
rename to erpnext/selling/search_criteria/sales_orderwise_booking_
diff --git a/selling/search_criteria/territories_target_variance_item_group_wise/__init__.py b/erpnext/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/__init__.py
similarity index 100%
rename from selling/search_criteria/territories_target_variance_item_group_wise/__init__.py
rename to erpnext/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/__init__.py
diff --git a/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt b/erpnext/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
similarity index 100%
rename from selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
rename to erpnext/selling/search_criteria/sales_orderwise_booking_&_delivery_summary/sales_orderwise_booking_&_delivery_summary.txt
diff --git a/selling/search_criteria/territory_item_group_wise_gp/__init__.py b/erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/__init__.py
similarity index 100%
rename from selling/search_criteria/territory_item_group_wise_gp/__init__.py
rename to erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/__init__.py
diff --git a/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.js b/erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.js
similarity index 100%
rename from selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.js
rename to erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.js
diff --git a/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt b/erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
similarity index 100%
rename from selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
rename to erpnext/selling/search_criteria/sales_orderwise_pending_amount_to_bill/sales_orderwise_pending_amount_to_bill.txt
diff --git a/selling/search_criteria/territory_sales___variance_report/__init__.py b/erpnext/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/__init__.py
similarity index 100%
rename from selling/search_criteria/territory_sales___variance_report/__init__.py
rename to erpnext/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/__init__.py
diff --git a/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt b/erpnext/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
similarity index 100%
rename from selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
rename to erpnext/selling/search_criteria/sales_orderwise_pending_qty_to_deliver/sales_orderwise_pending_qty_to_deliver.txt
diff --git a/selling/search_criteria/total_target_variance_report/__init__.py b/erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/__init__.py
similarity index 100%
rename from selling/search_criteria/total_target_variance_report/__init__.py
rename to erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/__init__.py
diff --git a/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.js b/erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.js
similarity index 100%
rename from selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.js
rename to erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.js
diff --git a/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.py b/erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.py
similarity index 100%
rename from selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.py
rename to erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.py
diff --git a/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt b/erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
similarity index 100%
rename from selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
rename to erpnext/selling/search_criteria/sales_persons_target_variance_item_group_wise/sales_persons_target_variance_item_group_wise.txt
diff --git a/selling/search_criteria/variance_report/__init__.py b/erpnext/selling/search_criteria/sales_personwise_transaction_summary/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from selling/search_criteria/variance_report/__init__.py
rename to erpnext/selling/search_criteria/sales_personwise_transaction_summary/__init__.py
diff --git a/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.js b/erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.js
similarity index 100%
rename from selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.js
rename to erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.js
diff --git a/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.py b/erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.py
similarity index 100%
rename from selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.py
rename to erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.py
diff --git a/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt b/erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
similarity index 100%
rename from selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
rename to erpnext/selling/search_criteria/sales_personwise_transaction_summary/sales_personwise_transaction_summary.txt
diff --git a/setup/__init__.py b/erpnext/selling/search_criteria/target_variance_report/__init__.py
similarity index 100%
rename from setup/__init__.py
rename to erpnext/selling/search_criteria/target_variance_report/__init__.py
diff --git a/selling/search_criteria/target_variance_report/target_variance_report.js b/erpnext/selling/search_criteria/target_variance_report/target_variance_report.js
similarity index 100%
rename from selling/search_criteria/target_variance_report/target_variance_report.js
rename to erpnext/selling/search_criteria/target_variance_report/target_variance_report.js
diff --git a/selling/search_criteria/target_variance_report/target_variance_report.py b/erpnext/selling/search_criteria/target_variance_report/target_variance_report.py
similarity index 100%
rename from selling/search_criteria/target_variance_report/target_variance_report.py
rename to erpnext/selling/search_criteria/target_variance_report/target_variance_report.py
diff --git a/selling/search_criteria/target_variance_report/target_variance_report.txt b/erpnext/selling/search_criteria/target_variance_report/target_variance_report.txt
similarity index 100%
rename from selling/search_criteria/target_variance_report/target_variance_report.txt
rename to erpnext/selling/search_criteria/target_variance_report/target_variance_report.txt
diff --git a/setup/doctype/__init__.py b/erpnext/selling/search_criteria/territories_target_variance_item_group_wise/__init__.py
similarity index 100%
rename from setup/doctype/__init__.py
rename to erpnext/selling/search_criteria/territories_target_variance_item_group_wise/__init__.py
diff --git a/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.js b/erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.js
similarity index 100%
rename from selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.js
rename to erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.js
diff --git a/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.py b/erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.py
similarity index 100%
rename from selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.py
rename to erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.py
diff --git a/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt b/erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
similarity index 100%
rename from selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
rename to erpnext/selling/search_criteria/territories_target_variance_item_group_wise/territories_target_variance_item_group_wise.txt
diff --git a/setup/doctype/authorization_control/__init__.py b/erpnext/selling/search_criteria/territory_item_group_wise_gp/__init__.py
similarity index 100%
rename from setup/doctype/authorization_control/__init__.py
rename to erpnext/selling/search_criteria/territory_item_group_wise_gp/__init__.py
diff --git a/selling/search_criteria/territory_item_group_wise_gp/territory_item_group_wise_gp.py b/erpnext/selling/search_criteria/territory_item_group_wise_gp/territory_item_group_wise_gp.py
similarity index 100%
rename from selling/search_criteria/territory_item_group_wise_gp/territory_item_group_wise_gp.py
rename to erpnext/selling/search_criteria/territory_item_group_wise_gp/territory_item_group_wise_gp.py
diff --git a/selling/search_criteria/territory_item_group_wise_gp/territory_item_group_wise_gp.txt b/erpnext/selling/search_criteria/territory_item_group_wise_gp/territory_item_group_wise_gp.txt
similarity index 100%
rename from selling/search_criteria/territory_item_group_wise_gp/territory_item_group_wise_gp.txt
rename to erpnext/selling/search_criteria/territory_item_group_wise_gp/territory_item_group_wise_gp.txt
diff --git a/setup/doctype/authorization_rule/__init__.py b/erpnext/selling/search_criteria/territory_sales___variance_report/__init__.py
similarity index 100%
rename from setup/doctype/authorization_rule/__init__.py
rename to erpnext/selling/search_criteria/territory_sales___variance_report/__init__.py
diff --git a/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.js b/erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.js
similarity index 100%
rename from selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.js
rename to erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.js
diff --git a/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.py b/erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.py
similarity index 100%
rename from selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.py
rename to erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.py
diff --git a/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt b/erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
similarity index 100%
rename from selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
rename to erpnext/selling/search_criteria/territory_sales___variance_report/territory_sales___variance_report.txt
diff --git a/setup/doctype/brand/__init__.py b/erpnext/selling/search_criteria/total_target_variance_report/__init__.py
similarity index 100%
rename from setup/doctype/brand/__init__.py
rename to erpnext/selling/search_criteria/total_target_variance_report/__init__.py
diff --git a/selling/search_criteria/total_target_variance_report/total_target_variance_report.js b/erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.js
similarity index 100%
rename from selling/search_criteria/total_target_variance_report/total_target_variance_report.js
rename to erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.js
diff --git a/selling/search_criteria/total_target_variance_report/total_target_variance_report.py b/erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.py
similarity index 100%
rename from selling/search_criteria/total_target_variance_report/total_target_variance_report.py
rename to erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.py
diff --git a/selling/search_criteria/total_target_variance_report/total_target_variance_report.sql b/erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.sql
similarity index 100%
rename from selling/search_criteria/total_target_variance_report/total_target_variance_report.sql
rename to erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.sql
diff --git a/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt b/erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
similarity index 100%
rename from selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
rename to erpnext/selling/search_criteria/total_target_variance_report/total_target_variance_report.txt
diff --git a/setup/doctype/company/__init__.py b/erpnext/selling/search_criteria/variance_report/__init__.py
similarity index 100%
rename from setup/doctype/company/__init__.py
rename to erpnext/selling/search_criteria/variance_report/__init__.py
diff --git a/selling/search_criteria/variance_report/variance_report.js b/erpnext/selling/search_criteria/variance_report/variance_report.js
similarity index 100%
rename from selling/search_criteria/variance_report/variance_report.js
rename to erpnext/selling/search_criteria/variance_report/variance_report.js
diff --git a/selling/search_criteria/variance_report/variance_report.py b/erpnext/selling/search_criteria/variance_report/variance_report.py
similarity index 100%
rename from selling/search_criteria/variance_report/variance_report.py
rename to erpnext/selling/search_criteria/variance_report/variance_report.py
diff --git a/selling/search_criteria/variance_report/variance_report.sql b/erpnext/selling/search_criteria/variance_report/variance_report.sql
similarity index 100%
rename from selling/search_criteria/variance_report/variance_report.sql
rename to erpnext/selling/search_criteria/variance_report/variance_report.sql
diff --git a/selling/search_criteria/variance_report/variance_report.txt b/erpnext/selling/search_criteria/variance_report/variance_report.txt
similarity index 100%
rename from selling/search_criteria/variance_report/variance_report.txt
rename to erpnext/selling/search_criteria/variance_report/variance_report.txt
diff --git a/setup/Module Def/Setup/Setup.txt b/erpnext/setup/Module Def/Setup/Setup.txt
similarity index 100%
rename from setup/Module Def/Setup/Setup.txt
rename to erpnext/setup/Module Def/Setup/Setup.txt
diff --git a/setup/Role/System Manager/System Manager.txt b/erpnext/setup/Role/System Manager/System Manager.txt
similarity index 100%
rename from setup/Role/System Manager/System Manager.txt
rename to erpnext/setup/Role/System Manager/System Manager.txt
diff --git a/setup/doctype/contact_control/__init__.py b/erpnext/setup/__init__.py
similarity index 100%
rename from setup/doctype/contact_control/__init__.py
rename to erpnext/setup/__init__.py
diff --git a/setup/doctype/country/__init__.py b/erpnext/setup/doctype/__init__.py
similarity index 100%
rename from setup/doctype/country/__init__.py
rename to erpnext/setup/doctype/__init__.py
diff --git a/setup/doctype/currency/__init__.py b/erpnext/setup/doctype/authorization_control/__init__.py
similarity index 100%
rename from setup/doctype/currency/__init__.py
rename to erpnext/setup/doctype/authorization_control/__init__.py
diff --git a/setup/doctype/authorization_control/authorization_control.js b/erpnext/setup/doctype/authorization_control/authorization_control.js
similarity index 100%
rename from setup/doctype/authorization_control/authorization_control.js
rename to erpnext/setup/doctype/authorization_control/authorization_control.js
diff --git a/erpnext/setup/doctype/authorization_control/authorization_control.py b/erpnext/setup/doctype/authorization_control/authorization_control.py
new file mode 100644
index 0000000000..3ddcab41db
--- /dev/null
+++ b/erpnext/setup/doctype/authorization_control/authorization_control.py
@@ -0,0 +1,200 @@
+# Please edit this list and import only required elements
+import webnotes
+
+from webnotes.utils import add_days, add_months, add_years, cint, cstr, date_diff, default_fields, flt, fmt_money, formatdate, generate_hash, getTraceback, get_defaults, get_first_day, get_last_day, getdate, has_common, month_name, now, nowdate, replace_newlines, sendmail, set_default, str_esc_quote, user_format, validate_email_add
+from webnotes.model import db_exists
+from webnotes.model.doc import Document, addchild, removechild, getchildren, make_autoname, SuperDocType
+from webnotes.model.doclist import getlist, copy_doclist
+from webnotes.model.code import get_obj, get_server_obj, run_server_obj, updatedb, check_syntax
+from webnotes import session, form, is_testing, msgprint, errprint
+
+set = webnotes.conn.set
+sql = webnotes.conn.sql
+get_value = webnotes.conn.get_value
+in_transaction = webnotes.conn.in_transaction
+convert_to_lists = webnotes.conn.convert_to_lists
+
+# -----------------------------------------------------------------------------------------
+from utilities.transaction_base import TransactionBase
+
+class DocType(TransactionBase):
+ def __init__(self, d, dl):
+ self.doc, self.doclist = d, dl
+
+
+ # Get Names of all Approving Users and Roles
+ # -------------------------------------------
+ def get_appr_user_role(self, det, doctype_name, total, based_on, condition, item, company):
+ amt_list, appr_users, appr_roles = [], [], []
+ users, roles = '',''
+ if det:
+ for x in det:
+ amt_list.append(flt(x[0]))
+ max_amount = max(amt_list)
+
+ app_dtl = sql("select approving_user, approving_role from `tabAuthorization Rule` where transaction = %s and (value = %s or value > %s) and docstatus != 2 and based_on = %s and company = %s %s" % ('%s', '%s', '%s', '%s', '%s', condition), (doctype_name, flt(max_amount), total, based_on, company))
+ if not app_dtl:
+ app_dtl = sql("select approving_user, approving_role from `tabAuthorization Rule` where transaction = %s and (value = %s or value > %s) and docstatus != 2 and based_on = %s and ifnull(company,'') = '' %s" % ('%s', '%s', '%s', '%s', condition), (doctype_name, flt(max_amount), total, based_on))
+ for d in app_dtl:
+ if(d[0]): appr_users.append(d[0])
+ if(d[1]): appr_roles.append(d[1])
+
+ if not has_common(appr_roles, webnotes.user.get_roles()) and not has_common(appr_users, session['user']):
+ msg, add_msg = '',''
+ if max_amount:
+ dcc = TransactionBase().get_company_currency(self.doc.company)
+ if based_on == 'Grand Total': msg = "since Grand Total exceeds %s. %s" % (dcc, flt(max_amount))
+ elif based_on == 'Itemwise Discount': msg = "since Discount exceeds %s for Item Code : %s" % (cstr(max_amount)+'%', item)
+ elif based_on == 'Average Discount' or based_on == 'Customerwise Discount': msg = "since Discount exceeds %s" % (cstr(max_amount)+'%')
+
+ if appr_users: add_msg = "Users : "+cstr(appr_users)
+ if appr_roles: add_msg = "Roles : "+cstr(appr_roles)
+ if appr_users and appr_roles: add_msg = "Users : "+cstr(appr_users)+" or "+"Roles : "+cstr(appr_roles)
+ msgprint("You do not have an authority to submit this %s %s. Please send for approval to %s" % (doctype_name, msg, add_msg))
+ raise Exception
+
+
+ # Check if authorization rule is set specific to user
+ # ----------------------------------------------------
+ def validate_auth_rule(self, doctype_name, total, based_on, cond, company, item = ''):
+ chk = 1
+ add_cond1,add_cond2 = '',''
+ if based_on == 'Itemwise Discount':
+ add_cond1 += " and master_name = '"+cstr(item)+"'"
+ itemwise_exists = sql("select value from `tabAuthorization Rule` where transaction = %s and value <= %s and based_on = %s and company = %s and docstatus != 2 %s %s" % ('%s', '%s', '%s', '%s', cond, add_cond1), (doctype_name, total, based_on, company))
+ if not itemwise_exists:
+ itemwise_exists = sql("select value from `tabAuthorization Rule` where transaction = %s and value <= %s and based_on = %s and ifnull(company,'') = '' and docstatus != 2 %s %s" % ('%s', '%s', '%s', cond, add_cond1), (doctype_name, total, based_on))
+ if itemwise_exists:
+ self.get_appr_user_role(itemwise_exists, doctype_name, total, based_on, cond+add_cond1, item,company)
+ chk = 0
+ if chk == 1:
+ if based_on == 'Itemwise Discount': add_cond2 += " and ifnull(master_name,'') = ''"
+ appr = sql("select value from `tabAuthorization Rule` where transaction = %s and value <= %s and based_on = %s and company = %s and docstatus != 2 %s %s" % ('%s', '%s', '%s', '%s', cond, add_cond2), (doctype_name, total, based_on, company))
+ if not appr:
+ appr = sql("select value from `tabAuthorization Rule` where transaction = %s and value <= %s and based_on = %s and ifnull(company,'') = '' and docstatus != 2 %s %s"% ('%s', '%s', '%s', cond, add_cond2), (doctype_name, total, based_on))
+ self.get_appr_user_role(appr, doctype_name, total, based_on, cond+add_cond2, item, company)
+
+
+ # Bifurcate Authorization based on type
+ # --------------------------------------
+ def bifurcate_based_on_type(self, doctype_name, total, av_dis, based_on, doc_obj, val, company):
+ add_cond = ''
+ auth_value = av_dis
+ if val == 1: add_cond += " and system_user = '"+session['user']+"'"
+ elif val == 2: add_cond += " and system_role IN %s" % ("('"+"','".join(webnotes.user.get_roles())+"')")
+ else: add_cond += " and ifnull(system_user,'') = '' and ifnull(system_role,'') = ''"
+ if based_on == 'Grand Total': auth_value = total
+ elif based_on == 'Customerwise Discount':
+ if doc_obj:
+ if doc_obj.doc.doctype == 'Receivable Voucher': customer = doc_obj.doc.customer
+ else: customer = doc_obj.doc.customer_name
+ add_cond = " and master_name = '"+cstr(customer)+"'"
+ if based_on == 'Itemwise Discount':
+ if doc_obj:
+ for t in getlist(doc_obj.doclist, doc_obj.fname):
+ self.validate_auth_rule(doctype_name, t.adj_rate, based_on, add_cond, company,t.item_code )
+ else:
+ self.validate_auth_rule(doctype_name, auth_value, based_on, add_cond, company)
+
+
+ # Check Approving Authority for transactions other than expense voucher and Appraisal
+ # -------------------------
+ def validate_approving_authority(self, doctype_name,company, total, doc_obj = ''):
+ if doctype_name == 'Payable Voucher': doctype_name = 'Purchase Invoice'
+ elif doctype_name == 'Receivable Voucher': doctype_name = 'Sales Invoice'
+ av_dis = 0
+ if doc_obj:
+ ref_rate, basic_rate = 0, 0
+ for d in getlist(doc_obj.doclist, doc_obj.fname):
+ if d.base_ref_rate and d.basic_rate:
+ ref_rate += flt(d.base_ref_rate)
+ basic_rate += flt(d.basic_rate)
+ if ref_rate: av_dis = 100 - flt(basic_rate * 100 / ref_rate)
+
+ final_based_on = ['Grand Total','Average Discount','Customerwise Discount','Itemwise Discount']
+ # Individual User
+ # ================
+ # Check for authorization set for individual user
+
+ based_on = [x[0] for x in sql("select distinct based_on from `tabAuthorization Rule` where transaction = %s and system_user = %s and (company = %s or ifnull(company,'')='') and docstatus != 2", (doctype_name, session['user'], company))]
+
+ for d in based_on:
+ self.bifurcate_based_on_type(doctype_name, total, av_dis, d, doc_obj, 1, company)
+
+ # Remove user specific rules from global authorization rules
+ for r in based_on:
+ if r in final_based_on and r != 'Itemwise Discount': final_based_on.remove(r)
+
+ # Specific Role
+ # ===============
+ # Check for authorization set on particular roles
+ based_on = [x[0] for x in sql("""select based_on
+ from `tabAuthorization Rule`
+ where transaction = %s and system_role IN (%s) and based_on IN (%s)
+ and (company = %s or ifnull(company,'')='')
+ and docstatus != 2
+ """ % ('%s', "'"+"','".join(webnotes.user.get_roles())+"'", "'"+"','".join(final_based_on)+"'", '%s'), (doctype_name, company))]
+
+ for d in based_on:
+ self.bifurcate_based_on_type(doctype_name, total, av_dis, d, doc_obj, 2, company)
+
+ # Remove role specific rules from global authorization rules
+ for r in based_on:
+ if r in final_based_on and r != 'Itemwise Discount': final_based_on.remove(r)
+
+ # Global Rule
+ # =============
+ # Check for global authorization
+ for g in final_based_on:
+ self.bifurcate_based_on_type(doctype_name, total, av_dis, g, doc_obj, 0, company)
+
+ #========================================================================================================================
+ # payroll related check
+ def get_value_based_rule(self,doctype_name,employee,total_claimed_amount,company):
+ val_lst =[]
+ val = sql("select value from `tabAuthorization Rule` where transaction=%s and (to_emp=%s or to_designation IN (select designation from `tabEmployee` where name=%s)) and ifnull(value,0)< %s and company = %s and docstatus!=2",(doctype_name,employee,employee,total_claimed_amount,company))
+ if not val:
+ val = sql("select value from `tabAuthorization Rule` where transaction=%s and (to_emp=%s or to_designation IN (select designation from `tabEmployee` where name=%s)) and ifnull(value,0)< %s and ifnull(company,'') = '' and docstatus!=2",(doctype_name, employee, employee, total_claimed_amount))
+
+ if val:
+ val_lst = [y[0] for y in val]
+ else:
+ val_lst.append(0)
+
+ max_val = max(val_lst)
+ rule = sql("select name, to_emp, to_designation, approving_role, approving_user from `tabAuthorization Rule` where transaction=%s and company = %s and (to_emp=%s or to_designation IN (select designation from `tabEmployee` where name=%s)) and ifnull(value,0)= %s and docstatus!=2",(doctype_name,company,employee,employee,flt(max_val)), as_dict=1)
+ if not rule:
+ rule = sql("select name, to_emp, to_designation, approving_role, approving_user from `tabAuthorization Rule` where transaction=%s and ifnull(company,'') = '' and (to_emp=%s or to_designation IN (select designation from `tabEmployee` where name=%s)) and ifnull(value,0)= %s and docstatus!=2",(doctype_name,employee,employee,flt(max_val)), as_dict=1)
+
+ return rule
+
+ #---------------------------------------------------------------------------------------------------------------------
+ # related to payroll module only
+ def get_approver_name(self, doctype_name, total, doc_obj=''):
+ app_user=[]
+ app_specific_user =[]
+ rule ={}
+
+ if doc_obj:
+ if doctype_name == 'Expense Voucher':
+ rule = self.get_value_based_rule(doctype_name,doc_obj.doc.employee,doc_obj.doc.total_claimed_amount, doc_obj.doc.company)
+ elif doctype_name == 'Appraisal':
+ rule = sql("select name, to_emp, to_designation, approving_role, approving_user from `tabAuthorization Rule` where transaction=%s and (to_emp=%s or to_designation IN (select designation from `tabEmployee` where name=%s)) and company = %s and docstatus!=2",(doctype_name,doc_obj.doc.employee, doc_obj.doc.employee, doc_obj.doc.company),as_dict=1)
+ if not rule:
+ rule = sql("select name, to_emp, to_designation, approving_role, approving_user from `tabAuthorization Rule` where transaction=%s and (to_emp=%s or to_designation IN (select designation from `tabEmployee` where name=%s)) and ifnull(company,'') = '' and docstatus!=2",(doctype_name,doc_obj.doc.employee, doc_obj.doc.employee),as_dict=1)
+
+ if rule:
+ for m in rule:
+ if m['to_emp'] or m['to_designation']:
+ if m['approving_user']:
+ app_specific_user.append(m['approving_user'])
+ elif m['approving_role']:
+ user_lst = [z[0] for z in sql("select distinct t1.name from `tabProfile` t1, `tabUserRole` t2 where t2.role=%s and t2.parent=t1.name and t1.name !='Administrator' and t1.name != 'Guest' and t1.docstatus !=2",m['approving_role'])]
+ for x in user_lst:
+ if not x in app_user:
+ app_user.append(x)
+
+ if len(app_specific_user) >0:
+ return app_specific_user
+ else:
+ return app_user
diff --git a/setup/doctype/authorization_control/authorization_control.txt b/erpnext/setup/doctype/authorization_control/authorization_control.txt
similarity index 100%
rename from setup/doctype/authorization_control/authorization_control.txt
rename to erpnext/setup/doctype/authorization_control/authorization_control.txt
diff --git a/setup/doctype/customer_group/__init__.py b/erpnext/setup/doctype/authorization_rule/__init__.py
similarity index 100%
rename from setup/doctype/customer_group/__init__.py
rename to erpnext/setup/doctype/authorization_rule/__init__.py
diff --git a/setup/doctype/authorization_rule/authorization_rule.js b/erpnext/setup/doctype/authorization_rule/authorization_rule.js
similarity index 100%
rename from setup/doctype/authorization_rule/authorization_rule.js
rename to erpnext/setup/doctype/authorization_rule/authorization_rule.js
diff --git a/setup/doctype/authorization_rule/authorization_rule.py b/erpnext/setup/doctype/authorization_rule/authorization_rule.py
similarity index 100%
rename from setup/doctype/authorization_rule/authorization_rule.py
rename to erpnext/setup/doctype/authorization_rule/authorization_rule.py
diff --git a/setup/doctype/authorization_rule/authorization_rule.txt b/erpnext/setup/doctype/authorization_rule/authorization_rule.txt
similarity index 100%
rename from setup/doctype/authorization_rule/authorization_rule.txt
rename to erpnext/setup/doctype/authorization_rule/authorization_rule.txt
diff --git a/setup/doctype/email_settings/__init__.py b/erpnext/setup/doctype/brand/__init__.py
similarity index 100%
rename from setup/doctype/email_settings/__init__.py
rename to erpnext/setup/doctype/brand/__init__.py
diff --git a/setup/doctype/brand/brand.js b/erpnext/setup/doctype/brand/brand.js
similarity index 100%
rename from setup/doctype/brand/brand.js
rename to erpnext/setup/doctype/brand/brand.js
diff --git a/setup/doctype/brand/brand.txt b/erpnext/setup/doctype/brand/brand.txt
similarity index 100%
rename from setup/doctype/brand/brand.txt
rename to erpnext/setup/doctype/brand/brand.txt
diff --git a/setup/doctype/features_setup/__init__.py b/erpnext/setup/doctype/company/__init__.py
similarity index 100%
rename from setup/doctype/features_setup/__init__.py
rename to erpnext/setup/doctype/company/__init__.py
diff --git a/setup/doctype/company/company.js b/erpnext/setup/doctype/company/company.js
similarity index 100%
rename from setup/doctype/company/company.js
rename to erpnext/setup/doctype/company/company.js
diff --git a/erpnext/setup/doctype/company/company.py b/erpnext/setup/doctype/company/company.py
new file mode 100644
index 0000000000..a163870a6a
--- /dev/null
+++ b/erpnext/setup/doctype/company/company.py
@@ -0,0 +1,238 @@
+# Please edit this list and import only required elements
+import webnotes
+
+from webnotes.utils import add_days, add_months, add_years, cint, cstr, date_diff, default_fields, flt, fmt_money, formatdate, generate_hash, getTraceback, get_defaults, get_first_day, get_last_day, getdate, has_common, month_name, now, nowdate, replace_newlines, sendmail, set_default, str_esc_quote, user_format, validate_email_add
+from webnotes.model import db_exists
+from webnotes.model.doc import Document, addchild, removechild, getchildren, make_autoname, SuperDocType
+from webnotes.model.doclist import getlist, copy_doclist
+from webnotes.model.code import get_obj, get_server_obj, run_server_obj, updatedb, check_syntax
+from webnotes import session, form, is_testing, msgprint, errprint
+
+set = webnotes.conn.set
+sql = webnotes.conn.sql
+get_value = webnotes.conn.get_value
+in_transaction = webnotes.conn.in_transaction
+convert_to_lists = webnotes.conn.convert_to_lists
+
+# -----------------------------------------------------------------------------------------
+
+
+class DocType:
+ def __init__(self,d,dl):
+ self.doc, self.doclist = d,dl
+
+ # Create default accounts
+ # ---------------------------------------------------
+ def create_default_accounts(self):
+ self.fld_dict = {'account_name':0,'parent_account':1,'group_or_ledger':2,'is_pl_account':3,'account_type':4,'debit_or_credit':5,'company':6,'tax_rate':7}
+ acc_list_common = [['Application of Funds (Assets)','','Group','No','','Debit',self.doc.name,''],
+ ['Current Assets','Application of Funds (Assets)','Group','No','','Debit',self.doc.name,''],
+ ['Accounts Receivable','Current Assets','Group','No','','Debit',self.doc.name,''],
+ ['Bank Accounts','Current Assets','Group','No','Bank or Cash','Debit',self.doc.name,''],
+ ['Cash In Hand','Current Assets','Group','No','Bank or Cash','Debit',self.doc.name,''],
+ ['Cash','Cash In Hand','Ledger','No','Bank or Cash','Debit',self.doc.name,''],
+ ['Loans and Advances (Assets)','Current Assets','Group','No','','Debit',self.doc.name,''],
+ ['Securities and Deposits','Current Assets','Group','No','','Debit',self.doc.name,''],
+ ['Earnest Money','Securities and Deposits','Ledger','No','','Debit',self.doc.name,''],
+ ['Stock In Hand','Current Assets','Group','No','','Debit',self.doc.name,''],
+ ['Stock','Stock In Hand','Ledger','No','','Debit',self.doc.name,''],
+ ['Tax Assets','Current Assets','Group','No','','Debit',self.doc.name,''],
+ ['Fixed Assets','Application of Funds (Assets)','Group','No','','Debit',self.doc.name,''],
+ ['Capital Equipments','Fixed Assets','Ledger','No','Fixed Asset Account','Debit',self.doc.name,''],
+ ['Computers','Fixed Assets','Ledger','No','Fixed Asset Account','Debit',self.doc.name,''],
+ ['Furniture and Fixture','Fixed Assets','Ledger','No','Fixed Asset Account','Debit',self.doc.name,''],
+ ['Office Equipments','Fixed Assets','Ledger','No','Fixed Asset Account','Debit',self.doc.name,''],
+ ['Plant and Machinery','Fixed Assets','Ledger','No','Fixed Asset Account','Debit',self.doc.name,''],
+ ['Investments','Application of Funds (Assets)','Group','No','','Debit',self.doc.name,''],
+ ['Temporary Accounts (Assets)','Application of Funds (Assets)','Group','No','','Debit',self.doc.name,''],
+ ['Temporary Account (Assets)','Temporary Accounts (Assets)','Ledger','No','','Debit',self.doc.name,''],
+ ['Expenses','','Group','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Direct Expenses','Expenses','Group','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Cost of Goods Sold','Direct Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Indirect Expenses','Expenses','Group','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Advertising and Publicity','Indirect Expenses','Ledger','Yes','Chargeable','Debit',self.doc.name,''],
+ ['Bad Debts Written Off','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Bank Charges','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Books and Periodicals','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Charity and Donations','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Commission on Sales','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Conveyance Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Customer Entertainment Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Depreciation Account','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Freight and Forwarding Charges','Indirect Expenses','Ledger','Yes','Chargeable','Debit',self.doc.name,''],
+ ['Legal Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Miscellaneous Expenses','Indirect Expenses','Ledger','Yes','Chargeable','Debit',self.doc.name,''],
+ ['Office Maintenance Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Office Rent','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Postal Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Print and Stationary','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Rounded Off','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Salary','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Sales Promotion Expenses','Indirect Expenses','Ledger','Yes','Chargeable','Debit',self.doc.name,''],
+ ['Service Charges Paid','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Staff Welfare Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Telephone Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Travelling Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Water and Electricity Expenses','Indirect Expenses','Ledger','Yes','Expense Account','Debit',self.doc.name,''],
+ ['Income','','Group','Yes','','Credit',self.doc.name,''],
+ ['Direct Income','Income','Group','Yes','Income Account','Credit',self.doc.name,''],
+ ['Sales','Direct Income','Ledger','Yes','Income Account','Credit',self.doc.name,''],
+ ['Service','Direct Income','Ledger','Yes','Income Account','Credit',self.doc.name,''],
+ ['Indirect Income','Income','Group','Yes','Income Account','Credit',self.doc.name,''],
+ ['Source of Funds (Liabilities)','','Group','No','','Credit',self.doc.name,''],
+ ['Capital Account','Source of Funds (Liabilities)','Group','No','','Credit',self.doc.name,''],
+ ['Reserves and Surplus','Capital Account','Group','No','','Credit',self.doc.name,''],
+ ['Shareholders Funds','Capital Account','Group','No','','Credit',self.doc.name,''],
+ ['Current Liabilities','Source of Funds (Liabilities)','Group','No','','Credit',self.doc.name,''],
+ ['Accounts Payable','Current Liabilities','Group','No','','Credit',self.doc.name,''],
+ ['Duties and Taxes','Current Liabilities','Group','No','','Credit',self.doc.name,''],
+ ['Loans (Liabilities)','Current Liabilities','Group','No','','Credit',self.doc.name,''],
+ ['Secured Loans','Loans (Liabilities)','Group','No','','Credit',self.doc.name,''],
+ ['Unsecured Loans','Loans (Liabilities)','Group','No','','Credit',self.doc.name,''],
+ ['Bank Overdraft Account','Loans (Liabilities)','Group','No','','Credit',self.doc.name,''],
+ ['Temporary Accounts (Liabilities)','Source of Funds (Liabilities)','Group','No','','Credit',self.doc.name,''],
+ ['Temporary Account (Liabilities)','Temporary Accounts (Liabilities)','Ledger','No','','Credit',self.doc.name,'']
+ ]
+
+ acc_list_india = [
+ ['CENVAT Capital Goods','Tax Assets','Ledger','No','','Debit',self.doc.name,''],
+ ['CENVAT','Tax Assets','Ledger','No','Chargeable','Debit',self.doc.name,''],
+ ['CENVAT Service Tax','Tax Assets','Ledger','No','','Debit',self.doc.name,''],
+ ['CENVAT Service Tax Cess 1','Tax Assets','Ledger','No','','Debit',self.doc.name,''],
+ ['CENVAT Service Tax Cess 2','Tax Assets','Ledger','No','','Debit',self.doc.name,''],
+ ['CENVAT Edu Cess','Tax Assets','Ledger','No','Chargeable','Debit',self.doc.name,''],
+ ['CENVAT SHE Cess','Tax Assets','Ledger','No','Chargeable','Debit',self.doc.name,''],
+ ['Excise Duty 4','Tax Assets','Ledger','No','Tax','Debit',self.doc.name,'4.00'],
+ ['Excise Duty 8','Tax Assets','Ledger','No','Tax','Debit',self.doc.name,'8.00'],
+ ['Excise Duty 10','Tax Assets','Ledger','No','Tax','Debit',self.doc.name,'10.00'],
+ ['Excise Duty 14','Tax Assets','Ledger','No','Tax','Debit',self.doc.name,'14.00'],
+ ['Excise Duty Edu Cess 2','Tax Assets','Ledger','No','Tax','Debit',self.doc.name,'2.00'],
+ ['Excise Duty SHE Cess 1','Tax Assets','Ledger','No','Tax','Debit',self.doc.name,'1.00'],
+ ['P L A','Tax Assets','Ledger','No','','Debit',self.doc.name,''],
+ ['P L A - Cess Portion','Tax Assets','Ledger','No','','Debit',self.doc.name,''],
+ ['Edu. Cess on Excise','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'2.00'],
+ ['Edu. Cess on Service Tax','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'2.00'],
+ ['Edu. Cess on TDS','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'2.00'],
+ ['Excise Duty @ 4','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'4.00'],
+ ['Excise Duty @ 8','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'8.00'],
+ ['Excise Duty @ 10','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'10.00'],
+ ['Excise Duty @ 14','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'14.00'],
+ ['Service Tax','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'10.3'],
+ ['SHE Cess on Excise','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'1.00'],
+ ['SHE Cess on Service Tax','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'1.00'],
+ ['SHE Cess on TDS','Duties and Taxes','Ledger','No','Tax','Credit',self.doc.name,'1.00'],
+ ['Professional Tax','Duties and Taxes','Ledger','No','','Credit',self.doc.name,''],
+ ['VAT','Duties and Taxes','Ledger','No','','Credit',self.doc.name,''],
+ ['TDS (Advertisement)','Duties and Taxes','Ledger','No','','Credit',self.doc.name,''],
+ ['TDS (Commission)','Duties and Taxes','Ledger','No','','Credit',self.doc.name,''],
+ ['TDS (Contractor)','Duties and Taxes','Ledger','No','','Credit',self.doc.name,''],
+ ['TDS (Interest)','Duties and Taxes','Ledger','No','','Credit',self.doc.name,''],
+ ['TDS (Rent)','Duties and Taxes','Ledger','No','','Credit',self.doc.name,''],
+ ['TDS (Salary)','Duties and Taxes','Ledger','No','','Credit',self.doc.name,'']
+ ]
+ # load common account heads
+ for d in acc_list_common:
+ self.add_acc(d)
+
+ country = sql("select value from tabSingles where field = 'country' and doctype = 'Control Panel'")
+ country = country and cstr(country[0][0]) or ''
+
+ # load taxes (only for India)
+ if country == 'India':
+ for d in acc_list_india:
+ self.add_acc(d)
+
+ # Create account
+ # ---------------------------------------------------
+ def add_acc(self,lst):
+ ac = Document('Account')
+ for d in self.fld_dict.keys():
+ ac.fields[d] = (d == 'parent_account' and lst[self.fld_dict[d]]) and lst[self.fld_dict[d]] +' - '+ self.doc.abbr or lst[self.fld_dict[d]]
+ ac.old_parent = ''
+ ac_obj = get_obj(doc=ac)
+ ac_obj.validate()
+ ac_obj.doc.save(1)
+ ac_obj.on_update()
+ sql("commit")
+ sql("start transaction")
+
+
+ # Set letter head
+ # ---------------------------------------------------
+ def set_letter_head(self):
+ if not self.doc.letter_head:
+ if self.doc.address:
+ header = """
+ %(comp)s %(add)s
+
+ """ % {'comp':self.doc.name,
+ 'add':self.doc.address.replace("\n",' ')}
+
+ self.doc.letter_head = header
+
+ # Set default AR and AP group
+ # ---------------------------------------------------
+ def set_default_groups(self):
+ if not self.doc.receivables_group:
+ set(self.doc, 'receivables_group', 'Accounts Receivable - '+self.doc.abbr)
+ if not self.doc.payables_group:
+ set(self.doc, 'payables_group', 'Accounts Payable - '+self.doc.abbr)
+
+
+ # Create default cost center
+ # ---------------------------------------------------
+ def create_default_cost_center(self):
+ glc = get_obj('GL Control')
+ cc_list = [{'cost_center_name':'Root','company_name':self.doc.name,'company_abbr':self.doc.abbr,'group_or_ledger':'Group','parent_cost_center':'','old_parent':''}, {'cost_center_name':'Default CC Ledger','company_name':self.doc.name,'company_abbr':self.doc.abbr,'group_or_ledger':'Ledger','parent_cost_center':'Root - ' + self.doc.abbr,'old_parent':''}]
+ for c in cc_list:
+ glc.add_cc(str(c))
+
+
+ # On update
+ # ---------------------------------------------------
+ def on_update(self):
+ self.set_letter_head()
+ ac = sql("select name from tabAccount where account_name='Income' and company=%s", self.doc.name)
+ if not ac:
+ self.create_default_accounts()
+ self.set_default_groups()
+ cc = sql("select name from `tabCost Center` where cost_center_name = 'Root' and company_name = '%s'"%(self.doc.name))
+ if not cc:
+ self.create_default_cost_center()
+
+ #
+ # ---------------------------------------------------
+ def on_trash(self):
+ """
+ Trash accounts and cost centers for this company if no gl entry exists
+ """
+ rec = sql("SELECT name from `tabGL Entry` where ifnull(is_cancelled, 'No') = 'No' and company = %s", self.doc.name)
+ if not rec:
+ # delete gl entry
+ sql("delete from `tabGL Entry` where company = %s", self.doc.name)
+
+ #delete tabAccount Balance
+ sql("delete ab.* from `tabAccount Balance` ab, `tabAccount` a where ab.account = a.name and a.company = %s", self.doc.name)
+
+ #delete tabAccount
+ sql("delete from `tabAccount` where company = %s order by lft desc, rgt desc", self.doc.name)
+
+ #delete cost center child table - budget detail
+ sql("delete bd.* from `tabBudget Detail` bd, `tabCost Center` cc where bd.parent = cc.name and cc.company_name = %s", self.doc.name)
+ #delete cost center
+ sql("delete from `tabCost Center` WHERE company_name = %s order by lft desc, rgt desc", self.doc.name)
+
+ #update value as blank for tabDefaultValue defkey=company
+ sql("update `tabDefaultValue` set defvalue = '' where defkey='company' and defvalue = %s", self.doc.name)
+
+ #update value as blank for tabSingles Manage Account
+ sql("update `tabSingles` set value = '' where doctype='Manage Account' and field = 'default_company' and value = %s", self.doc.name)
+
+
+ # on rename
+ # ---------
+ def on_rename(self,newdn,olddn):
+ sql("update `tabCompany` set company_name = '%s' where name = '%s'" %(newdn,olddn))
+ sql("update `tabSingles` set value = %s where doctype='Manage Account' and field = 'default_company' and value = %s", (newdn, olddn))
+ if get_defaults('company') == olddn:
+ set_default('company', newdn)
diff --git a/setup/doctype/company/company.txt b/erpnext/setup/doctype/company/company.txt
similarity index 100%
rename from setup/doctype/company/company.txt
rename to erpnext/setup/doctype/company/company.txt
diff --git a/setup/doctype/import_data_control/__init__.py b/erpnext/setup/doctype/contact_control/__init__.py
similarity index 100%
rename from setup/doctype/import_data_control/__init__.py
rename to erpnext/setup/doctype/contact_control/__init__.py
diff --git a/setup/doctype/contact_control/contact_control.js b/erpnext/setup/doctype/contact_control/contact_control.js
similarity index 100%
rename from setup/doctype/contact_control/contact_control.js
rename to erpnext/setup/doctype/contact_control/contact_control.js
diff --git a/setup/doctype/contact_control/contact_control.py b/erpnext/setup/doctype/contact_control/contact_control.py
similarity index 100%
rename from setup/doctype/contact_control/contact_control.py
rename to erpnext/setup/doctype/contact_control/contact_control.py
diff --git a/setup/doctype/contact_control/contact_control.txt b/erpnext/setup/doctype/contact_control/contact_control.txt
similarity index 100%
rename from setup/doctype/contact_control/contact_control.txt
rename to erpnext/setup/doctype/contact_control/contact_control.txt
diff --git a/setup/doctype/item_group/__init__.py b/erpnext/setup/doctype/country/__init__.py
similarity index 100%
rename from setup/doctype/item_group/__init__.py
rename to erpnext/setup/doctype/country/__init__.py
diff --git a/setup/doctype/country/country.js b/erpnext/setup/doctype/country/country.js
similarity index 100%
rename from setup/doctype/country/country.js
rename to erpnext/setup/doctype/country/country.js
diff --git a/setup/doctype/country/country.txt b/erpnext/setup/doctype/country/country.txt
similarity index 100%
rename from setup/doctype/country/country.txt
rename to erpnext/setup/doctype/country/country.txt
diff --git a/setup/doctype/manage_account/__init__.py b/erpnext/setup/doctype/currency/__init__.py
similarity index 100%
rename from setup/doctype/manage_account/__init__.py
rename to erpnext/setup/doctype/currency/__init__.py
diff --git a/setup/doctype/currency/currency.txt b/erpnext/setup/doctype/currency/currency.txt
similarity index 100%
rename from setup/doctype/currency/currency.txt
rename to erpnext/setup/doctype/currency/currency.txt
diff --git a/setup/doctype/market_segment/__init__.py b/erpnext/setup/doctype/customer_group/__init__.py
similarity index 100%
rename from setup/doctype/market_segment/__init__.py
rename to erpnext/setup/doctype/customer_group/__init__.py
diff --git a/setup/doctype/customer_group/customer_group.js b/erpnext/setup/doctype/customer_group/customer_group.js
similarity index 100%
rename from setup/doctype/customer_group/customer_group.js
rename to erpnext/setup/doctype/customer_group/customer_group.js
diff --git a/setup/doctype/customer_group/customer_group.py b/erpnext/setup/doctype/customer_group/customer_group.py
similarity index 100%
rename from setup/doctype/customer_group/customer_group.py
rename to erpnext/setup/doctype/customer_group/customer_group.py
diff --git a/setup/doctype/customer_group/customer_group.txt b/erpnext/setup/doctype/customer_group/customer_group.txt
similarity index 100%
rename from setup/doctype/customer_group/customer_group.txt
rename to erpnext/setup/doctype/customer_group/customer_group.txt
diff --git a/setup/doctype/naming_series/__init__.py b/erpnext/setup/doctype/email_digest/__init__.py
similarity index 100%
rename from setup/doctype/naming_series/__init__.py
rename to erpnext/setup/doctype/email_digest/__init__.py
diff --git a/erpnext/setup/doctype/email_digest/email_digest.coffee b/erpnext/setup/doctype/email_digest/email_digest.coffee
new file mode 100644
index 0000000000..1b17d5bb4f
--- /dev/null
+++ b/erpnext/setup/doctype/email_digest/email_digest.coffee
@@ -0,0 +1,101 @@
+content_items = ['Sales','Expenses','Bank Balance','Activity']
+
+# make a grid with items and columns of checkboxes
+# Parameters:
+# parent
+# label (main heading)
+# items = [] (rows)
+# columns = [] (columns of checks)
+# widths
+# description
+
+class CheckGrid
+ constructor: (@args) ->
+ $.extend @, args
+ @wrapper = $a @parent, 'div', 'check-grid round'
+ @render()
+
+ render: ->
+ $a @wrapper, 'h3', 'check-grid-title', null, @label
+
+ if @description
+ $a @wrapper, 'div', 'help-box', null, @description
+
+ @tab = make_table @wrapper, @items.length + 1, @columns.length, '100%', @widths
+ @checks = {}
+
+ # render heads
+ for i in [0..@columns.length-1]
+ $($td(@tab, 0, i))
+ .addClass('check-grid-head gradient')
+ .html @columns[i]
+
+ @render_rows()
+
+ render_rows: ->
+ # render rows
+ for i in [0..@items.length-1]
+ $td(@tab, i+1, 0).innerHTML = @items[i]
+
+ # render checkboxes for this row
+ @checks[@items[i]] = {}
+ for c in [1..@columns.length-1]
+ check = $a_input $td(@tab, i+1, c), 'checkbox'
+
+ # tag keys to checkbox
+ check.item = @items[i]
+ check.column = @columns[c]
+
+ # add in my checks
+ @checks[@items[i]][@columns[c]] = check
+
+ # get the values of the checkbox in a double dict
+ get: =>
+ val = {}
+ for item in keys @checks
+ for column in keys @checks[item]
+ check = @checks[item][column]
+ val[check.item] or= {}
+ val[check.item][check.column] = if check.checked then 1 else 0
+ val
+
+ # set the values of the grid
+ set: (val) =>
+ for item in keys @checks
+ for column in keys @checks[item]
+ if val[item][column]
+ @checks[item][column] .checked = val[item][column]
+ return
+
+# attach it to onload
+cx = cur_frm.cscript
+cx.onload = (doc, dt, dn) ->
+
+ # make the content grid
+ cx.content_grid = new CheckGrid
+ parent: cur_frm.fields_dict.Body.wrapper
+ label: 'Email Settings'
+ items: content_items
+ columns: ['Item','Daily','Weekly']
+ widths: ['60%', '20%', '20%']
+ description: 'Select items to be compiled for Email Digest'
+
+ # make the email grid
+ cx.email_grid = new CheckGrid
+ parent: cur_frm.fields_dict.Body.wrapper
+ label: 'Send To'
+ items: ['test1@erpnext', 'test2@erpnext']
+ columns: ['Email','Daily','Weekly']
+ widths: ['60%', '20%', '20%']
+ description: 'Select who gets daily and weekly mails'
+
+ cx.content_grid.set JSON.parse doc.content_config if doc.content_config
+ cx.email_grid.set JSON.parse doc.email_config if doc.email_config
+
+ return
+
+# update the data before sending
+cx.validate = (doc, dt, dn) ->
+ doc.content_config = JSON.stringify cx.content_grid.get()
+ doc.email_config = JSON.stringify cx.email_grid.get()
+
\ No newline at end of file
diff --git a/erpnext/setup/doctype/email_digest/email_digest.css b/erpnext/setup/doctype/email_digest/email_digest.css
new file mode 100644
index 0000000000..f61dacc961
--- /dev/null
+++ b/erpnext/setup/doctype/email_digest/email_digest.css
@@ -0,0 +1,18 @@
+
+div.check-grid {
+ margin: 17px;
+}
+
+div.check-grid table {
+ border-collapse: collapse;
+}
+
+div.check-grid table td {
+ padding: 3px;
+ border: 1px solid #aaa;
+}
+
+td.check-grid-head {
+ font-weight: bold;
+ text-align: center;
+}
\ No newline at end of file
diff --git a/erpnext/setup/doctype/email_digest/email_digest.js b/erpnext/setup/doctype/email_digest/email_digest.js
new file mode 100644
index 0000000000..ddb13f473a
--- /dev/null
+++ b/erpnext/setup/doctype/email_digest/email_digest.js
@@ -0,0 +1,108 @@
+(function() {
+ var CheckGrid, content_items, cx;
+ var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
+ content_items = ['Sales', 'Expenses', 'Bank Balance', 'Activity'];
+ CheckGrid = (function() {
+ function CheckGrid(args) {
+ this.args = args;
+ this.set = __bind(this.set, this);
+ this.get = __bind(this.get, this);
+ $.extend(this, args);
+ this.wrapper = $a(this.parent, 'div', 'check-grid round');
+ this.render();
+ }
+ CheckGrid.prototype.render = function() {
+ var i, _ref;
+ $a(this.wrapper, 'h3', 'check-grid-title', null, this.label);
+ if (this.description) {
+ $a(this.wrapper, 'div', 'help-box', null, this.description);
+ }
+ this.tab = make_table(this.wrapper, this.items.length + 1, this.columns.length, '100%', this.widths);
+ this.checks = {};
+ for (i = 0, _ref = this.columns.length - 1; 0 <= _ref ? i <= _ref : i >= _ref; 0 <= _ref ? i++ : i--) {
+ $($td(this.tab, 0, i)).addClass('check-grid-head gradient').html(this.columns[i]);
+ }
+ return this.render_rows();
+ };
+ CheckGrid.prototype.render_rows = function() {
+ var c, check, i, _ref, _results;
+ _results = [];
+ for (i = 0, _ref = this.items.length - 1; 0 <= _ref ? i <= _ref : i >= _ref; 0 <= _ref ? i++ : i--) {
+ $td(this.tab, i + 1, 0).innerHTML = this.items[i];
+ this.checks[this.items[i]] = {};
+ _results.push((function() {
+ var _ref2, _results2;
+ _results2 = [];
+ for (c = 1, _ref2 = this.columns.length - 1; 1 <= _ref2 ? c <= _ref2 : c >= _ref2; 1 <= _ref2 ? c++ : c--) {
+ check = $a_input($td(this.tab, i + 1, c), 'checkbox');
+ check.item = this.items[i];
+ check.column = this.columns[c];
+ _results2.push(this.checks[this.items[i]][this.columns[c]] = check);
+ }
+ return _results2;
+ }).call(this));
+ }
+ return _results;
+ };
+ CheckGrid.prototype.get = function() {
+ var check, column, item, val, _i, _j, _len, _len2, _name, _ref, _ref2;
+ val = {};
+ _ref = keys(this.checks);
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ item = _ref[_i];
+ _ref2 = keys(this.checks[item]);
+ for (_j = 0, _len2 = _ref2.length; _j < _len2; _j++) {
+ column = _ref2[_j];
+ check = this.checks[item][column];
+ val[_name = check.item] || (val[_name] = {});
+ val[check.item][check.column] = check.checked ? 1 : 0;
+ }
+ }
+ return val;
+ };
+ CheckGrid.prototype.set = function(val) {
+ var column, item, _i, _j, _len, _len2, _ref, _ref2;
+ _ref = keys(this.checks);
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ item = _ref[_i];
+ _ref2 = keys(this.checks[item]);
+ for (_j = 0, _len2 = _ref2.length; _j < _len2; _j++) {
+ column = _ref2[_j];
+ if (val[item][column]) {
+ this.checks[item][column].checked = val[item][column];
+ }
+ }
+ }
+ };
+ return CheckGrid;
+ })();
+ cx = cur_frm.cscript;
+ cx.onload = function(doc, dt, dn) {
+ cx.content_grid = new CheckGrid({
+ parent: cur_frm.fields_dict.Body.wrapper,
+ label: 'Email Settings',
+ items: content_items,
+ columns: ['Item', 'Daily', 'Weekly'],
+ widths: ['60%', '20%', '20%'],
+ description: 'Select items to be compiled for Email Digest'
+ });
+ cx.email_grid = new CheckGrid({
+ parent: cur_frm.fields_dict.Body.wrapper,
+ label: 'Send To',
+ items: ['test1@erpnext', 'test2@erpnext'],
+ columns: ['Email', 'Daily', 'Weekly'],
+ widths: ['60%', '20%', '20%'],
+ description: 'Select who gets daily and weekly mails'
+ });
+ if (doc.content_config) {
+ cx.content_grid.set(JSON.parse(doc.content_config));
+ }
+ if (doc.email_config) {
+ cx.email_grid.set(JSON.parse(doc.email_config));
+ }
+ };
+ cx.validate = function(doc, dt, dn) {
+ doc.content_config = JSON.stringify(cx.content_grid.get());
+ return doc.email_config = JSON.stringify(cx.email_grid.get());
+ };
+}).call(this);
diff --git a/erpnext/setup/doctype/email_digest/email_digest.txt b/erpnext/setup/doctype/email_digest/email_digest.txt
new file mode 100644
index 0000000000..026caa7d6e
--- /dev/null
+++ b/erpnext/setup/doctype/email_digest/email_digest.txt
@@ -0,0 +1,89 @@
+# DocType, Email Digest
+[
+
+ # These values are common in all dictionaries
+ {
+ 'creation': '2011-07-27 14:23:09',
+ 'docstatus': 0,
+ 'modified': '2011-07-27 17:32:27',
+ 'modified_by': 'Administrator',
+ 'owner': 'Administrator'
+ },
+
+ # These values are common for all DocType
+ {
+ '_last_update': '1311760331',
+ 'colour': 'White:FFF',
+ 'doctype': 'DocType',
+ 'issingle': 1,
+ 'module': 'Setup',
+ 'name': '__common__',
+ 'section_style': 'Simple',
+ 'show_in_menu': 0,
+ 'version': 4
+ },
+
+ # These values are common for all DocField
+ {
+ 'doctype': 'DocField',
+ 'name': '__common__',
+ 'parent': 'Email Digest',
+ 'parentfield': 'fields',
+ 'parenttype': 'DocType',
+ 'permlevel': 0
+ },
+
+ # These values are common for all DocPerm
+ {
+ 'create': 1,
+ 'doctype': 'DocPerm',
+ 'idx': 1,
+ 'name': '__common__',
+ 'parent': 'Email Digest',
+ 'parentfield': 'permissions',
+ 'parenttype': 'DocType',
+ 'permlevel': 0,
+ 'read': 1,
+ 'role': 'Administrator',
+ 'write': 1
+ },
+
+ # DocType, Email Digest
+ {
+ 'doctype': 'DocType',
+ 'name': 'Email Digest'
+ },
+
+ # DocPerm
+ {
+ 'doctype': 'DocPerm'
+ },
+
+ # DocField
+ {
+ 'doctype': 'DocField',
+ 'fieldtype': 'HTML',
+ 'idx': 1,
+ 'label': 'Body'
+ },
+
+ # DocField
+ {
+ 'doctype': 'DocField',
+ 'fieldname': 'content_config',
+ 'fieldtype': 'Text',
+ 'hidden': 1,
+ 'idx': 2,
+ 'label': 'Content Config'
+ },
+
+ # DocField
+ {
+ 'doctype': 'DocField',
+ 'fieldname': 'email_config',
+ 'fieldtype': 'Text',
+ 'hidden': 1,
+ 'idx': 3,
+ 'label': 'Email Config'
+ }
+]
\ No newline at end of file
diff --git a/setup/doctype/naming_series_options/__init__.py b/erpnext/setup/doctype/email_settings/__init__.py
similarity index 100%
rename from setup/doctype/naming_series_options/__init__.py
rename to erpnext/setup/doctype/email_settings/__init__.py
diff --git a/setup/doctype/email_settings/email_settings.js b/erpnext/setup/doctype/email_settings/email_settings.js
similarity index 100%
rename from setup/doctype/email_settings/email_settings.js
rename to erpnext/setup/doctype/email_settings/email_settings.js
diff --git a/setup/doctype/email_settings/email_settings.py b/erpnext/setup/doctype/email_settings/email_settings.py
similarity index 100%
rename from setup/doctype/email_settings/email_settings.py
rename to erpnext/setup/doctype/email_settings/email_settings.py
diff --git a/setup/doctype/email_settings/email_settings.txt b/erpnext/setup/doctype/email_settings/email_settings.txt
similarity index 100%
rename from setup/doctype/email_settings/email_settings.txt
rename to erpnext/setup/doctype/email_settings/email_settings.txt
diff --git a/setup/doctype/notification_control/__init__.py b/erpnext/setup/doctype/features_setup/__init__.py
similarity index 100%
rename from setup/doctype/notification_control/__init__.py
rename to erpnext/setup/doctype/features_setup/__init__.py
diff --git a/setup/doctype/features_setup/features_setup.py b/erpnext/setup/doctype/features_setup/features_setup.py
similarity index 99%
rename from setup/doctype/features_setup/features_setup.py
rename to erpnext/setup/doctype/features_setup/features_setup.py
index 3a549d9e32..f12d2824fd 100644
--- a/setup/doctype/features_setup/features_setup.py
+++ b/erpnext/setup/doctype/features_setup/features_setup.py
@@ -8,6 +8,7 @@ class DocType:
"""
from webnotes.model import default_fields
from webnotes.utils import set_default
+
for key in self.doc.fields:
if key not in default_fields:
set_default(key, self.doc.fields[key])
diff --git a/setup/doctype/features_setup/features_setup.txt b/erpnext/setup/doctype/features_setup/features_setup.txt
similarity index 89%
rename from setup/doctype/features_setup/features_setup.txt
rename to erpnext/setup/doctype/features_setup/features_setup.txt
index 224d175a0b..909882eed9 100644
--- a/setup/doctype/features_setup/features_setup.txt
+++ b/erpnext/setup/doctype/features_setup/features_setup.txt
@@ -3,17 +3,18 @@
# These values are common in all dictionaries
{
- 'creation': '2011-08-25 16:53:56',
+ 'creation': '2011-09-07 11:59:05',
'docstatus': 0,
- 'modified': '2011-08-31 15:05:53',
+ 'modified': '2011-10-05 10:50:17',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
# These values are common for all DocType
{
- '_last_update': '1314783102',
+ '_last_update': '1317790484',
'colour': 'White:FFF',
+ 'default_print_format': 'Standard',
'doctype': 'DocType',
'issingle': 1,
'module': 'Setup',
@@ -21,7 +22,7 @@
'name_case': 'Title Case',
'section_style': 'Simple',
'show_in_menu': 1,
- 'version': 16
+ 'version': 21
},
# These values are common for all DocField
@@ -77,7 +78,7 @@
'colour': 'White:FFF',
'description': 'To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.',
'doctype': 'DocField',
- 'fieldname': 'item_searial_nos',
+ 'fieldname': 'fs_item_serial_nos',
'fieldtype': 'Check',
'label': 'Item Serial Nos'
},
@@ -87,7 +88,7 @@
'colour': 'White:FFF',
'description': 'To track items in sales and purchase documents with batch nos Preferred Industry: Chemicals etc',
'doctype': 'DocField',
- 'fieldname': 'item_batch_nos',
+ 'fieldname': 'fs_item_batch_nos',
'fieldtype': 'Check',
'label': 'Item Batch Nos'
},
@@ -97,7 +98,7 @@
'colour': 'White:FFF',
'description': 'To track brand name in the following documents \nDelivery Note, Enuiry, Indent, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Receivable Voucher, Sales BOM, Sales Order, Serial No',
'doctype': 'DocField',
- 'fieldname': 'brands',
+ 'fieldname': 'fs_brands',
'fieldtype': 'Check',
'label': 'Brands'
},
@@ -113,7 +114,7 @@
'colour': 'White:FFF',
'description': '1. To maintain the customer wise item code and to make them searchable based on their code use this option',
'doctype': 'DocField',
- 'fieldname': 'item_advanced',
+ 'fieldname': 'fs_item_advanced',
'fieldtype': 'Check',
'label': 'Item Advanced'
},
@@ -123,7 +124,7 @@
'colour': 'White:FFF',
'description': 'If Sale BOM is defined, the actual BOM of the Pack is displayed as table.\nAvailable in Delivery Note and Sales Order',
'doctype': 'DocField',
- 'fieldname': 'packing_details',
+ 'fieldname': 'fs_packing_details',
'fieldtype': 'Check',
'label': 'Packing Detials'
},
@@ -133,7 +134,7 @@
'colour': 'White:FFF',
'description': 'To get Item Group in details table',
'doctype': 'DocField',
- 'fieldname': 'item_group_in_details',
+ 'fieldname': 'fs_item_group_in_details',
'fieldtype': 'Check',
'label': 'Item Groups in Details'
},
@@ -150,7 +151,7 @@
'colour': 'White:FFF',
'description': 'All export related fields like currency, conversion rate, export total, export grand total etc are available in \nDelivery Note, POS, Quotation, Sales Invoice, Sales Order etc.',
'doctype': 'DocField',
- 'fieldname': 'exports',
+ 'fieldname': 'fs_exports',
'fieldtype': 'Check',
'label': 'Exports'
},
@@ -160,7 +161,7 @@
'colour': 'White:FFF',
'description': 'All import related fields like currency, conversion rate, import total, import grand total etc are available in \nPurchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.',
'doctype': 'DocField',
- 'fieldname': 'imports',
+ 'fieldname': 'fs_imports',
'fieldtype': 'Check',
'label': 'Imports'
},
@@ -176,7 +177,7 @@
'colour': 'White:FFF',
'description': 'Field available in Delivery Note, Quotation, Receivable Voucher, Sales Order',
'doctype': 'DocField',
- 'fieldname': 'discounts',
+ 'fieldname': 'fs_discounts',
'fieldtype': 'Check',
'label': 'Discounts'
},
@@ -186,7 +187,7 @@
'colour': 'White:FFF',
'description': 'To track any installation or commissioning related work after sales',
'doctype': 'DocField',
- 'fieldname': 'after_sales_installations',
+ 'fieldname': 'fs_after_sales_installations',
'fieldtype': 'Check',
'label': 'After Sale Installations'
},
@@ -195,7 +196,7 @@
{
'description': 'Available in \nBill Of Materials, Delivery Note, Payable Voucher, Production Order, Purchase Order, Purchase Receipt, Receivable Voucher, Sales Order, Stock Entry, Timesheet',
'doctype': 'DocField',
- 'fieldname': 'projects',
+ 'fieldname': 'fs_projects',
'fieldtype': 'Check',
'label': 'Projects'
},
@@ -205,7 +206,7 @@
'colour': 'White:FFF',
'description': 'If you have Sales Team and Sale Partners (Channel Partners) they can be tagged and maintain their contribution in the sales activity',
'doctype': 'DocField',
- 'fieldname': 'sales_extras',
+ 'fieldname': 'fs_sales_extras',
'fieldtype': 'Check',
'label': 'Sales Extras'
},
@@ -222,7 +223,7 @@
'colour': 'White:FFF',
'description': 'If you involve in manufacturing activity \nEnables item Is Manufactured',
'doctype': 'DocField',
- 'fieldname': 'manufacturing',
+ 'fieldname': 'fs_manufacturing',
'fieldtype': 'Check',
'label': 'Manufacturing'
},
@@ -238,7 +239,7 @@
'colour': 'White:FFF',
'description': 'If you follow Quality Inspection \nEnables item QA Required and QA No in Purchase Receipt',
'doctype': 'DocField',
- 'fieldname': 'quality',
+ 'fieldname': 'fs_quality',
'fieldtype': 'Check',
'label': 'Quality'
},
@@ -248,7 +249,7 @@
'colour': 'White:FFF',
'description': 'To enable Point of Sale features',
'doctype': 'DocField',
- 'fieldname': 'pos',
+ 'fieldname': 'fs_pos',
'fieldtype': 'Check',
'label': 'Point of Sale'
},
@@ -265,7 +266,7 @@
'colour': 'White:FFF',
'description': 'If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page',
'doctype': 'DocField',
- 'fieldname': 'page_break',
+ 'fieldname': 'fs_page_break',
'fieldtype': 'Check',
'label': 'Page Break'
},
@@ -281,7 +282,7 @@
'colour': 'White:FFF',
'description': 'Enables More Info. in all documents',
'doctype': 'DocField',
- 'fieldname': 'more_info',
+ 'fieldname': 'fs_more_info',
'fieldtype': 'Check',
'label': 'More Info'
}
diff --git a/setup/doctype/order_lost_reason/__init__.py b/erpnext/setup/doctype/import_data_control/__init__.py
similarity index 100%
rename from setup/doctype/order_lost_reason/__init__.py
rename to erpnext/setup/doctype/import_data_control/__init__.py
diff --git a/setup/doctype/import_data_control/import_data_control.py b/erpnext/setup/doctype/import_data_control/import_data_control.py
similarity index 100%
rename from setup/doctype/import_data_control/import_data_control.py
rename to erpnext/setup/doctype/import_data_control/import_data_control.py
diff --git a/setup/doctype/import_data_control/import_data_control.txt b/erpnext/setup/doctype/import_data_control/import_data_control.txt
similarity index 100%
rename from setup/doctype/import_data_control/import_data_control.txt
rename to erpnext/setup/doctype/import_data_control/import_data_control.txt
diff --git a/setup/doctype/other_charges/__init__.py b/erpnext/setup/doctype/item_group/__init__.py
similarity index 100%
rename from setup/doctype/other_charges/__init__.py
rename to erpnext/setup/doctype/item_group/__init__.py
diff --git a/setup/doctype/item_group/item_group.js b/erpnext/setup/doctype/item_group/item_group.js
similarity index 100%
rename from setup/doctype/item_group/item_group.js
rename to erpnext/setup/doctype/item_group/item_group.js
diff --git a/setup/doctype/item_group/item_group.py b/erpnext/setup/doctype/item_group/item_group.py
similarity index 100%
rename from setup/doctype/item_group/item_group.py
rename to erpnext/setup/doctype/item_group/item_group.py
diff --git a/setup/doctype/item_group/item_group.txt b/erpnext/setup/doctype/item_group/item_group.txt
similarity index 100%
rename from setup/doctype/item_group/item_group.txt
rename to erpnext/setup/doctype/item_group/item_group.txt
diff --git a/setup/doctype/period/__init__.py b/erpnext/setup/doctype/manage_account/__init__.py
similarity index 100%
rename from setup/doctype/period/__init__.py
rename to erpnext/setup/doctype/manage_account/__init__.py
diff --git a/setup/doctype/manage_account/manage_account.js b/erpnext/setup/doctype/manage_account/manage_account.js
similarity index 100%
rename from setup/doctype/manage_account/manage_account.js
rename to erpnext/setup/doctype/manage_account/manage_account.js
diff --git a/setup/doctype/manage_account/manage_account.py b/erpnext/setup/doctype/manage_account/manage_account.py
similarity index 98%
rename from setup/doctype/manage_account/manage_account.py
rename to erpnext/setup/doctype/manage_account/manage_account.py
index a0ed2fadd2..651794fa16 100644
--- a/setup/doctype/manage_account/manage_account.py
+++ b/erpnext/setup/doctype/manage_account/manage_account.py
@@ -29,7 +29,7 @@ class DocType:
set_default(defkey, defvalue)
if defkey == 'fiscal_year':
- ysd = sql("select year_start_date from `tabFiscal Year` where name=%s", defvalue)
+ ysd = sql("select year_start_date from `tabFiscal Year` where name=%s", cstr(defvalue))
ysd = ysd and ysd[0][0] or ''
if ysd:
set_default('year_start_date', ysd.strftime('%Y-%m-%d'))
diff --git a/setup/doctype/manage_account/manage_account.txt b/erpnext/setup/doctype/manage_account/manage_account.txt
similarity index 100%
rename from setup/doctype/manage_account/manage_account.txt
rename to erpnext/setup/doctype/manage_account/manage_account.txt
diff --git a/setup/doctype/period_control/__init__.py b/erpnext/setup/doctype/market_segment/__init__.py
similarity index 100%
rename from setup/doctype/period_control/__init__.py
rename to erpnext/setup/doctype/market_segment/__init__.py
diff --git a/setup/doctype/market_segment/market_segment.txt b/erpnext/setup/doctype/market_segment/market_segment.txt
similarity index 100%
rename from setup/doctype/market_segment/market_segment.txt
rename to erpnext/setup/doctype/market_segment/market_segment.txt
diff --git a/setup/doctype/permission_control/__init__.py b/erpnext/setup/doctype/naming_series/__init__.py
similarity index 100%
rename from setup/doctype/permission_control/__init__.py
rename to erpnext/setup/doctype/naming_series/__init__.py
diff --git a/setup/doctype/naming_series/naming_series.js b/erpnext/setup/doctype/naming_series/naming_series.js
similarity index 100%
rename from setup/doctype/naming_series/naming_series.js
rename to erpnext/setup/doctype/naming_series/naming_series.js
diff --git a/setup/doctype/naming_series/naming_series.py b/erpnext/setup/doctype/naming_series/naming_series.py
similarity index 100%
rename from setup/doctype/naming_series/naming_series.py
rename to erpnext/setup/doctype/naming_series/naming_series.py
diff --git a/setup/doctype/naming_series/naming_series.txt b/erpnext/setup/doctype/naming_series/naming_series.txt
similarity index 100%
rename from setup/doctype/naming_series/naming_series.txt
rename to erpnext/setup/doctype/naming_series/naming_series.txt
diff --git a/setup/doctype/personalize/__init__.py b/erpnext/setup/doctype/naming_series_options/__init__.py
similarity index 100%
rename from setup/doctype/personalize/__init__.py
rename to erpnext/setup/doctype/naming_series_options/__init__.py
diff --git a/setup/doctype/naming_series_options/naming_series_options.txt b/erpnext/setup/doctype/naming_series_options/naming_series_options.txt
similarity index 100%
rename from setup/doctype/naming_series_options/naming_series_options.txt
rename to erpnext/setup/doctype/naming_series_options/naming_series_options.txt
diff --git a/setup/doctype/price_list/__init__.py b/erpnext/setup/doctype/notification_control/__init__.py
similarity index 100%
rename from setup/doctype/price_list/__init__.py
rename to erpnext/setup/doctype/notification_control/__init__.py
diff --git a/setup/doctype/notification_control/notification_control.js b/erpnext/setup/doctype/notification_control/notification_control.js
similarity index 100%
rename from setup/doctype/notification_control/notification_control.js
rename to erpnext/setup/doctype/notification_control/notification_control.js
diff --git a/setup/doctype/notification_control/notification_control.py b/erpnext/setup/doctype/notification_control/notification_control.py
similarity index 100%
rename from setup/doctype/notification_control/notification_control.py
rename to erpnext/setup/doctype/notification_control/notification_control.py
diff --git a/setup/doctype/notification_control/notification_control.txt b/erpnext/setup/doctype/notification_control/notification_control.txt
similarity index 100%
rename from setup/doctype/notification_control/notification_control.txt
rename to erpnext/setup/doctype/notification_control/notification_control.txt
diff --git a/setup/doctype/print_heading/__init__.py b/erpnext/setup/doctype/order_lost_reason/__init__.py
similarity index 100%
rename from setup/doctype/print_heading/__init__.py
rename to erpnext/setup/doctype/order_lost_reason/__init__.py
diff --git a/setup/doctype/order_lost_reason/order_lost_reason.js b/erpnext/setup/doctype/order_lost_reason/order_lost_reason.js
similarity index 100%
rename from setup/doctype/order_lost_reason/order_lost_reason.js
rename to erpnext/setup/doctype/order_lost_reason/order_lost_reason.js
diff --git a/setup/doctype/order_lost_reason/order_lost_reason.txt b/erpnext/setup/doctype/order_lost_reason/order_lost_reason.txt
similarity index 100%
rename from setup/doctype/order_lost_reason/order_lost_reason.txt
rename to erpnext/setup/doctype/order_lost_reason/order_lost_reason.txt
diff --git a/setup/doctype/role/__init__.py b/erpnext/setup/doctype/other_charges/__init__.py
similarity index 100%
rename from setup/doctype/role/__init__.py
rename to erpnext/setup/doctype/other_charges/__init__.py
diff --git a/setup/doctype/other_charges/other_charges.js b/erpnext/setup/doctype/other_charges/other_charges.js
similarity index 100%
rename from setup/doctype/other_charges/other_charges.js
rename to erpnext/setup/doctype/other_charges/other_charges.js
diff --git a/setup/doctype/other_charges/other_charges.py b/erpnext/setup/doctype/other_charges/other_charges.py
similarity index 100%
rename from setup/doctype/other_charges/other_charges.py
rename to erpnext/setup/doctype/other_charges/other_charges.py
diff --git a/setup/doctype/other_charges/other_charges.txt b/erpnext/setup/doctype/other_charges/other_charges.txt
similarity index 100%
rename from setup/doctype/other_charges/other_charges.txt
rename to erpnext/setup/doctype/other_charges/other_charges.txt
diff --git a/setup/doctype/sales_browser_control/__init__.py b/erpnext/setup/doctype/period/__init__.py
similarity index 100%
rename from setup/doctype/sales_browser_control/__init__.py
rename to erpnext/setup/doctype/period/__init__.py
diff --git a/setup/doctype/period/period.js b/erpnext/setup/doctype/period/period.js
similarity index 100%
rename from setup/doctype/period/period.js
rename to erpnext/setup/doctype/period/period.js
diff --git a/setup/doctype/period/period.txt b/erpnext/setup/doctype/period/period.txt
similarity index 100%
rename from setup/doctype/period/period.txt
rename to erpnext/setup/doctype/period/period.txt
diff --git a/setup/doctype/sales_partner/__init__.py b/erpnext/setup/doctype/period_control/__init__.py
similarity index 100%
rename from setup/doctype/sales_partner/__init__.py
rename to erpnext/setup/doctype/period_control/__init__.py
diff --git a/setup/doctype/period_control/period_control.py b/erpnext/setup/doctype/period_control/period_control.py
similarity index 100%
rename from setup/doctype/period_control/period_control.py
rename to erpnext/setup/doctype/period_control/period_control.py
diff --git a/setup/doctype/period_control/period_control.txt b/erpnext/setup/doctype/period_control/period_control.txt
similarity index 100%
rename from setup/doctype/period_control/period_control.txt
rename to erpnext/setup/doctype/period_control/period_control.txt
diff --git a/setup/doctype/sales_person/__init__.py b/erpnext/setup/doctype/permission_control/__init__.py
similarity index 100%
rename from setup/doctype/sales_person/__init__.py
rename to erpnext/setup/doctype/permission_control/__init__.py
diff --git a/setup/doctype/permission_control/permission_control.py b/erpnext/setup/doctype/permission_control/permission_control.py
similarity index 100%
rename from setup/doctype/permission_control/permission_control.py
rename to erpnext/setup/doctype/permission_control/permission_control.py
diff --git a/setup/doctype/permission_control/permission_control.txt b/erpnext/setup/doctype/permission_control/permission_control.txt
similarity index 100%
rename from setup/doctype/permission_control/permission_control.txt
rename to erpnext/setup/doctype/permission_control/permission_control.txt
diff --git a/setup/doctype/series_detail/__init__.py b/erpnext/setup/doctype/personalize/__init__.py
similarity index 100%
rename from setup/doctype/series_detail/__init__.py
rename to erpnext/setup/doctype/personalize/__init__.py
diff --git a/setup/doctype/personalize/personalize.py b/erpnext/setup/doctype/personalize/personalize.py
similarity index 100%
rename from setup/doctype/personalize/personalize.py
rename to erpnext/setup/doctype/personalize/personalize.py
diff --git a/setup/doctype/personalize/personalize.txt b/erpnext/setup/doctype/personalize/personalize.txt
similarity index 100%
rename from setup/doctype/personalize/personalize.txt
rename to erpnext/setup/doctype/personalize/personalize.txt
diff --git a/setup/doctype/setup_control/__init__.py b/erpnext/setup/doctype/price_list/__init__.py
similarity index 100%
rename from setup/doctype/setup_control/__init__.py
rename to erpnext/setup/doctype/price_list/__init__.py
diff --git a/setup/doctype/price_list/price_list.js b/erpnext/setup/doctype/price_list/price_list.js
similarity index 100%
rename from setup/doctype/price_list/price_list.js
rename to erpnext/setup/doctype/price_list/price_list.js
diff --git a/setup/doctype/price_list/price_list.py b/erpnext/setup/doctype/price_list/price_list.py
similarity index 100%
rename from setup/doctype/price_list/price_list.py
rename to erpnext/setup/doctype/price_list/price_list.py
diff --git a/setup/doctype/price_list/price_list.txt b/erpnext/setup/doctype/price_list/price_list.txt
similarity index 100%
rename from setup/doctype/price_list/price_list.txt
rename to erpnext/setup/doctype/price_list/price_list.txt
diff --git a/setup/doctype/setup_wizard_control/__init__.py b/erpnext/setup/doctype/print_heading/__init__.py
similarity index 100%
rename from setup/doctype/setup_wizard_control/__init__.py
rename to erpnext/setup/doctype/print_heading/__init__.py
diff --git a/setup/doctype/print_heading/print_heading.js b/erpnext/setup/doctype/print_heading/print_heading.js
similarity index 100%
rename from setup/doctype/print_heading/print_heading.js
rename to erpnext/setup/doctype/print_heading/print_heading.js
diff --git a/setup/doctype/print_heading/print_heading.py b/erpnext/setup/doctype/print_heading/print_heading.py
similarity index 100%
rename from setup/doctype/print_heading/print_heading.py
rename to erpnext/setup/doctype/print_heading/print_heading.py
diff --git a/setup/doctype/print_heading/print_heading.txt b/erpnext/setup/doctype/print_heading/print_heading.txt
similarity index 100%
rename from setup/doctype/print_heading/print_heading.txt
rename to erpnext/setup/doctype/print_heading/print_heading.txt
diff --git a/setup/doctype/sms_settings/__init__.py b/erpnext/setup/doctype/role/__init__.py
old mode 100755
new mode 100644
similarity index 100%
rename from setup/doctype/sms_settings/__init__.py
rename to erpnext/setup/doctype/role/__init__.py
diff --git a/setup/doctype/role/role.js b/erpnext/setup/doctype/role/role.js
similarity index 100%
rename from setup/doctype/role/role.js
rename to erpnext/setup/doctype/role/role.js
diff --git a/setup/doctype/role/role.py b/erpnext/setup/doctype/role/role.py
similarity index 100%
rename from setup/doctype/role/role.py
rename to erpnext/setup/doctype/role/role.py
diff --git a/setup/doctype/role/role.txt b/erpnext/setup/doctype/role/role.txt
similarity index 100%
rename from setup/doctype/role/role.txt
rename to erpnext/setup/doctype/role/role.txt
diff --git a/setup/doctype/state/__init__.py b/erpnext/setup/doctype/sales_browser_control/__init__.py
similarity index 100%
rename from setup/doctype/state/__init__.py
rename to erpnext/setup/doctype/sales_browser_control/__init__.py
diff --git a/setup/doctype/sales_browser_control/sales_browser_control.py b/erpnext/setup/doctype/sales_browser_control/sales_browser_control.py
similarity index 99%
rename from setup/doctype/sales_browser_control/sales_browser_control.py
rename to erpnext/setup/doctype/sales_browser_control/sales_browser_control.py
index d4c4a1316b..e9f8242450 100644
--- a/setup/doctype/sales_browser_control/sales_browser_control.py
+++ b/erpnext/setup/doctype/sales_browser_control/sales_browser_control.py
@@ -131,7 +131,7 @@ class DocType:
r = eval(args)
- if r['lft'] == 0:
+ if r['lft'] == 0 and r['action'] != 'Create':
n = sql("select lft,rgt from `tab%s` where name = '%s'"%(r['node_title'],r['nm']))
r['lft'] = n[0][0]
r['rgt'] = n[0][1]
@@ -212,4 +212,4 @@ class DocType:
if res:
msgprint("'%s' record is already exist."%(r['nm']))
return 'true'
- return 'false'
\ No newline at end of file
+ return 'false'
diff --git a/setup/doctype/sales_browser_control/sales_browser_control.txt b/erpnext/setup/doctype/sales_browser_control/sales_browser_control.txt
similarity index 100%
rename from setup/doctype/sales_browser_control/sales_browser_control.txt
rename to erpnext/setup/doctype/sales_browser_control/sales_browser_control.txt
diff --git a/setup/doctype/static_parameter_detail/__init__.py b/erpnext/setup/doctype/sales_partner/__init__.py
old mode 100755
new mode 100644
similarity index 100%
rename from setup/doctype/static_parameter_detail/__init__.py
rename to erpnext/setup/doctype/sales_partner/__init__.py
diff --git a/setup/doctype/sales_partner/sales_partner.js b/erpnext/setup/doctype/sales_partner/sales_partner.js
similarity index 100%
rename from setup/doctype/sales_partner/sales_partner.js
rename to erpnext/setup/doctype/sales_partner/sales_partner.js
diff --git a/setup/doctype/sales_partner/sales_partner.py b/erpnext/setup/doctype/sales_partner/sales_partner.py
similarity index 100%
rename from setup/doctype/sales_partner/sales_partner.py
rename to erpnext/setup/doctype/sales_partner/sales_partner.py
diff --git a/setup/doctype/sales_partner/sales_partner.txt b/erpnext/setup/doctype/sales_partner/sales_partner.txt
similarity index 100%
rename from setup/doctype/sales_partner/sales_partner.txt
rename to erpnext/setup/doctype/sales_partner/sales_partner.txt
diff --git a/setup/doctype/supplier_type/__init__.py b/erpnext/setup/doctype/sales_person/__init__.py
similarity index 100%
rename from setup/doctype/supplier_type/__init__.py
rename to erpnext/setup/doctype/sales_person/__init__.py
diff --git a/setup/doctype/sales_person/sales_person.js b/erpnext/setup/doctype/sales_person/sales_person.js
similarity index 100%
rename from setup/doctype/sales_person/sales_person.js
rename to erpnext/setup/doctype/sales_person/sales_person.js
diff --git a/setup/doctype/sales_person/sales_person.py b/erpnext/setup/doctype/sales_person/sales_person.py
similarity index 100%
rename from setup/doctype/sales_person/sales_person.py
rename to erpnext/setup/doctype/sales_person/sales_person.py
diff --git a/setup/doctype/sales_person/sales_person.txt b/erpnext/setup/doctype/sales_person/sales_person.txt
similarity index 100%
rename from setup/doctype/sales_person/sales_person.txt
rename to erpnext/setup/doctype/sales_person/sales_person.txt
diff --git a/setup/doctype/target_detail/__init__.py b/erpnext/setup/doctype/series_detail/__init__.py
similarity index 100%
rename from setup/doctype/target_detail/__init__.py
rename to erpnext/setup/doctype/series_detail/__init__.py
diff --git a/setup/doctype/series_detail/series_detail.txt b/erpnext/setup/doctype/series_detail/series_detail.txt
similarity index 100%
rename from setup/doctype/series_detail/series_detail.txt
rename to erpnext/setup/doctype/series_detail/series_detail.txt
diff --git a/setup/doctype/term/__init__.py b/erpnext/setup/doctype/setup_control/__init__.py
similarity index 100%
rename from setup/doctype/term/__init__.py
rename to erpnext/setup/doctype/setup_control/__init__.py
diff --git a/setup/doctype/setup_control/setup_control.py b/erpnext/setup/doctype/setup_control/setup_control.py
similarity index 97%
rename from setup/doctype/setup_control/setup_control.py
rename to erpnext/setup/doctype/setup_control/setup_control.py
index 61e3a82cb3..55b967e14a 100644
--- a/setup/doctype/setup_control/setup_control.py
+++ b/erpnext/setup/doctype/setup_control/setup_control.py
@@ -52,8 +52,7 @@ class DocType:
self.currency = currency
# Fiscal Year
- master_dict = {'Fiscal Year':{'year':curr_fiscal_year,
- 'year_start_date':fy_start_date}}
+ master_dict = {'Fiscal Year':{'year':curr_fiscal_year, 'year_start_date':fy_start_date}}
self.create_records(master_dict)
# Company
@@ -85,6 +84,8 @@ class DocType:
# Set Registration Complete
set_default('registration_complete','1')
+ msgprint("Great! Your company has now been created")
+
import webnotes.utils
return webnotes.utils.get_defaults()
@@ -203,4 +204,4 @@ class DocType:
if (cp_defaults==args['account_name']) and user_profile and \
(total_users==cint(args['total_users'])):
return 'True'
-
\ No newline at end of file
+
diff --git a/setup/doctype/setup_control/setup_control.txt b/erpnext/setup/doctype/setup_control/setup_control.txt
similarity index 100%
rename from setup/doctype/setup_control/setup_control.txt
rename to erpnext/setup/doctype/setup_control/setup_control.txt
diff --git a/setup/doctype/territory/__init__.py b/erpnext/setup/doctype/setup_wizard_control/__init__.py
similarity index 100%
rename from setup/doctype/territory/__init__.py
rename to erpnext/setup/doctype/setup_wizard_control/__init__.py
diff --git a/setup/doctype/setup_wizard_control/setup_wizard_control.py b/erpnext/setup/doctype/setup_wizard_control/setup_wizard_control.py
similarity index 100%
rename from setup/doctype/setup_wizard_control/setup_wizard_control.py
rename to erpnext/setup/doctype/setup_wizard_control/setup_wizard_control.py
diff --git a/setup/doctype/setup_wizard_control/setup_wizard_control.txt b/erpnext/setup/doctype/setup_wizard_control/setup_wizard_control.txt
similarity index 100%
rename from setup/doctype/setup_wizard_control/setup_wizard_control.txt
rename to erpnext/setup/doctype/setup_wizard_control/setup_wizard_control.txt
diff --git a/setup/doctype/uom/__init__.py b/erpnext/setup/doctype/sms_settings/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from setup/doctype/uom/__init__.py
rename to erpnext/setup/doctype/sms_settings/__init__.py
diff --git a/setup/doctype/sms_settings/sms_settings.txt b/erpnext/setup/doctype/sms_settings/sms_settings.txt
similarity index 100%
rename from setup/doctype/sms_settings/sms_settings.txt
rename to erpnext/setup/doctype/sms_settings/sms_settings.txt
diff --git a/setup/doctype/update_series/__init__.py b/erpnext/setup/doctype/state/__init__.py
similarity index 100%
rename from setup/doctype/update_series/__init__.py
rename to erpnext/setup/doctype/state/__init__.py
diff --git a/setup/doctype/state/state.js b/erpnext/setup/doctype/state/state.js
similarity index 100%
rename from setup/doctype/state/state.js
rename to erpnext/setup/doctype/state/state.js
diff --git a/setup/doctype/state/state.txt b/erpnext/setup/doctype/state/state.txt
similarity index 100%
rename from setup/doctype/state/state.txt
rename to erpnext/setup/doctype/state/state.txt
diff --git a/setup/doctype/upload_accounts_transactions/__init__.py b/erpnext/setup/doctype/static_parameter_detail/__init__.py
old mode 100644
new mode 100755
similarity index 100%
rename from setup/doctype/upload_accounts_transactions/__init__.py
rename to erpnext/setup/doctype/static_parameter_detail/__init__.py
diff --git a/setup/doctype/static_parameter_detail/static_parameter_detail.txt b/erpnext/setup/doctype/static_parameter_detail/static_parameter_detail.txt
similarity index 100%
rename from setup/doctype/static_parameter_detail/static_parameter_detail.txt
rename to erpnext/setup/doctype/static_parameter_detail/static_parameter_detail.txt
diff --git a/setup/doctype/warehouse_type/__init__.py b/erpnext/setup/doctype/supplier_type/__init__.py
similarity index 100%
rename from setup/doctype/warehouse_type/__init__.py
rename to erpnext/setup/doctype/supplier_type/__init__.py
diff --git a/setup/doctype/supplier_type/supplier_type.js b/erpnext/setup/doctype/supplier_type/supplier_type.js
similarity index 100%
rename from setup/doctype/supplier_type/supplier_type.js
rename to erpnext/setup/doctype/supplier_type/supplier_type.js
diff --git a/setup/doctype/supplier_type/supplier_type.txt b/erpnext/setup/doctype/supplier_type/supplier_type.txt
similarity index 100%
rename from setup/doctype/supplier_type/supplier_type.txt
rename to erpnext/setup/doctype/supplier_type/supplier_type.txt
diff --git a/setup/doctype/workflow_action_detail/__init__.py b/erpnext/setup/doctype/target_detail/__init__.py
similarity index 100%
rename from setup/doctype/workflow_action_detail/__init__.py
rename to erpnext/setup/doctype/target_detail/__init__.py
diff --git a/setup/doctype/target_detail/target_detail.txt b/erpnext/setup/doctype/target_detail/target_detail.txt
similarity index 100%
rename from setup/doctype/target_detail/target_detail.txt
rename to erpnext/setup/doctype/target_detail/target_detail.txt
diff --git a/setup/doctype/workflow_engine/__init__.py b/erpnext/setup/doctype/term/__init__.py
similarity index 100%
rename from setup/doctype/workflow_engine/__init__.py
rename to erpnext/setup/doctype/term/__init__.py
diff --git a/setup/doctype/term/term.js b/erpnext/setup/doctype/term/term.js
similarity index 100%
rename from setup/doctype/term/term.js
rename to erpnext/setup/doctype/term/term.js
diff --git a/setup/doctype/term/term.txt b/erpnext/setup/doctype/term/term.txt
similarity index 100%
rename from setup/doctype/term/term.txt
rename to erpnext/setup/doctype/term/term.txt
diff --git a/setup/doctype/workflow_rule/__init__.py b/erpnext/setup/doctype/territory/__init__.py
similarity index 100%
rename from setup/doctype/workflow_rule/__init__.py
rename to erpnext/setup/doctype/territory/__init__.py
diff --git a/setup/doctype/territory/territory.js b/erpnext/setup/doctype/territory/territory.js
similarity index 100%
rename from setup/doctype/territory/territory.js
rename to erpnext/setup/doctype/territory/territory.js
diff --git a/setup/doctype/territory/territory.py b/erpnext/setup/doctype/territory/territory.py
similarity index 100%
rename from setup/doctype/territory/territory.py
rename to erpnext/setup/doctype/territory/territory.py
diff --git a/setup/doctype/territory/territory.txt b/erpnext/setup/doctype/territory/territory.txt
similarity index 100%
rename from setup/doctype/territory/territory.txt
rename to erpnext/setup/doctype/territory/territory.txt
diff --git a/setup/doctype/workflow_rule_detail/__init__.py b/erpnext/setup/doctype/uom/__init__.py
similarity index 100%
rename from setup/doctype/workflow_rule_detail/__init__.py
rename to erpnext/setup/doctype/uom/__init__.py
diff --git a/setup/doctype/uom/uom.js b/erpnext/setup/doctype/uom/uom.js
similarity index 100%
rename from setup/doctype/uom/uom.js
rename to erpnext/setup/doctype/uom/uom.js
diff --git a/setup/doctype/uom/uom.txt b/erpnext/setup/doctype/uom/uom.txt
similarity index 100%
rename from setup/doctype/uom/uom.txt
rename to erpnext/setup/doctype/uom/uom.txt
diff --git a/setup/page/__init__.py b/erpnext/setup/doctype/update_series/__init__.py
similarity index 100%
rename from setup/page/__init__.py
rename to erpnext/setup/doctype/update_series/__init__.py
diff --git a/setup/doctype/update_series/update_series.py b/erpnext/setup/doctype/update_series/update_series.py
similarity index 100%
rename from setup/doctype/update_series/update_series.py
rename to erpnext/setup/doctype/update_series/update_series.py
diff --git a/setup/doctype/update_series/update_series.txt b/erpnext/setup/doctype/update_series/update_series.txt
similarity index 100%
rename from setup/doctype/update_series/update_series.txt
rename to erpnext/setup/doctype/update_series/update_series.txt
diff --git a/setup/page/import_data/__init__.py b/erpnext/setup/doctype/upload_accounts_transactions/__init__.py
similarity index 100%
rename from setup/page/import_data/__init__.py
rename to erpnext/setup/doctype/upload_accounts_transactions/__init__.py
diff --git a/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.js b/erpnext/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.js
similarity index 100%
rename from setup/doctype/upload_accounts_transactions/upload_accounts_transactions.js
rename to erpnext/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.js
diff --git a/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.py b/erpnext/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.py
similarity index 100%
rename from setup/doctype/upload_accounts_transactions/upload_accounts_transactions.py
rename to erpnext/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.py
diff --git a/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.txt b/erpnext/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.txt
similarity index 100%
rename from setup/doctype/upload_accounts_transactions/upload_accounts_transactions.txt
rename to erpnext/setup/doctype/upload_accounts_transactions/upload_accounts_transactions.txt
diff --git a/setup/page/people/__init__.py b/erpnext/setup/doctype/warehouse_type/__init__.py
similarity index 100%
rename from setup/page/people/__init__.py
rename to erpnext/setup/doctype/warehouse_type/__init__.py
diff --git a/setup/doctype/warehouse_type/warehouse_type.js b/erpnext/setup/doctype/warehouse_type/warehouse_type.js
similarity index 100%
rename from setup/doctype/warehouse_type/warehouse_type.js
rename to erpnext/setup/doctype/warehouse_type/warehouse_type.js
diff --git a/setup/doctype/warehouse_type/warehouse_type.txt b/erpnext/setup/doctype/warehouse_type/warehouse_type.txt
similarity index 100%
rename from setup/doctype/warehouse_type/warehouse_type.txt
rename to erpnext/setup/doctype/warehouse_type/warehouse_type.txt
diff --git a/setup/page/permission_engine/__init__.py b/erpnext/setup/doctype/workflow_action_detail/__init__.py
similarity index 100%
rename from setup/page/permission_engine/__init__.py
rename to erpnext/setup/doctype/workflow_action_detail/__init__.py
diff --git a/setup/doctype/workflow_action_detail/workflow_action_detail.txt b/erpnext/setup/doctype/workflow_action_detail/workflow_action_detail.txt
similarity index 100%
rename from setup/doctype/workflow_action_detail/workflow_action_detail.txt
rename to erpnext/setup/doctype/workflow_action_detail/workflow_action_detail.txt
diff --git a/setup/page/setup/__init__.py b/erpnext/setup/doctype/workflow_engine/__init__.py
similarity index 100%
rename from setup/page/setup/__init__.py
rename to erpnext/setup/doctype/workflow_engine/__init__.py
diff --git a/setup/doctype/workflow_engine/workflow_engine.py b/erpnext/setup/doctype/workflow_engine/workflow_engine.py
similarity index 100%
rename from setup/doctype/workflow_engine/workflow_engine.py
rename to erpnext/setup/doctype/workflow_engine/workflow_engine.py
diff --git a/setup/doctype/workflow_engine/workflow_engine.txt b/erpnext/setup/doctype/workflow_engine/workflow_engine.txt
similarity index 100%
rename from setup/doctype/workflow_engine/workflow_engine.txt
rename to erpnext/setup/doctype/workflow_engine/workflow_engine.txt
diff --git a/setup/page/setup_wizard/__init__.py b/erpnext/setup/doctype/workflow_rule/__init__.py
similarity index 100%
rename from setup/page/setup_wizard/__init__.py
rename to erpnext/setup/doctype/workflow_rule/__init__.py
diff --git a/setup/doctype/workflow_rule/workflow_rule.js b/erpnext/setup/doctype/workflow_rule/workflow_rule.js
similarity index 100%
rename from setup/doctype/workflow_rule/workflow_rule.js
rename to erpnext/setup/doctype/workflow_rule/workflow_rule.js
diff --git a/setup/doctype/workflow_rule/workflow_rule.py b/erpnext/setup/doctype/workflow_rule/workflow_rule.py
similarity index 100%
rename from setup/doctype/workflow_rule/workflow_rule.py
rename to erpnext/setup/doctype/workflow_rule/workflow_rule.py
diff --git a/setup/doctype/workflow_rule/workflow_rule.txt b/erpnext/setup/doctype/workflow_rule/workflow_rule.txt
similarity index 100%
rename from setup/doctype/workflow_rule/workflow_rule.txt
rename to erpnext/setup/doctype/workflow_rule/workflow_rule.txt
diff --git a/setup/page/webforms/__init__.py b/erpnext/setup/doctype/workflow_rule_detail/__init__.py
similarity index 100%
rename from setup/page/webforms/__init__.py
rename to erpnext/setup/doctype/workflow_rule_detail/__init__.py
diff --git a/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt b/erpnext/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
similarity index 100%
rename from setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
rename to erpnext/setup/doctype/workflow_rule_detail/workflow_rule_detail.txt
diff --git a/stock/__init__.py b/erpnext/setup/page/__init__.py
similarity index 100%
rename from stock/__init__.py
rename to erpnext/setup/page/__init__.py
diff --git a/stock/doctype/__init__.py b/erpnext/setup/page/import_data/__init__.py
similarity index 100%
rename from stock/doctype/__init__.py
rename to erpnext/setup/page/import_data/__init__.py
diff --git a/setup/page/import_data/import_data.html b/erpnext/setup/page/import_data/import_data.html
similarity index 95%
rename from setup/page/import_data/import_data.html
rename to erpnext/setup/page/import_data/import_data.html
index 5b30dd28cf..d227c2c0be 100644
--- a/setup/page/import_data/import_data.html
+++ b/erpnext/setup/page/import_data/import_data.html
@@ -45,7 +45,7 @@
Import Log:
-
+
|
|
diff --git a/setup/page/import_data/import_data.js b/erpnext/setup/page/import_data/import_data.js
similarity index 100%
rename from setup/page/import_data/import_data.js
rename to erpnext/setup/page/import_data/import_data.js
diff --git a/setup/page/import_data/import_data.txt b/erpnext/setup/page/import_data/import_data.txt
similarity index 100%
rename from setup/page/import_data/import_data.txt
rename to erpnext/setup/page/import_data/import_data.txt
diff --git a/stock/doctype/batch/__init__.py b/erpnext/setup/page/people/__init__.py
similarity index 100%
rename from stock/doctype/batch/__init__.py
rename to erpnext/setup/page/people/__init__.py
diff --git a/setup/page/people/people.html b/erpnext/setup/page/people/people.html
similarity index 100%
rename from setup/page/people/people.html
rename to erpnext/setup/page/people/people.html
diff --git a/setup/page/people/people.js b/erpnext/setup/page/people/people.js
similarity index 100%
rename from setup/page/people/people.js
rename to erpnext/setup/page/people/people.js
diff --git a/setup/page/people/people.txt b/erpnext/setup/page/people/people.txt
similarity index 100%
rename from setup/page/people/people.txt
rename to erpnext/setup/page/people/people.txt
diff --git a/stock/doctype/bin/__init__.py b/erpnext/setup/page/permission_engine/__init__.py
similarity index 100%
rename from stock/doctype/bin/__init__.py
rename to erpnext/setup/page/permission_engine/__init__.py
diff --git a/setup/page/permission_engine/permission_engine.html b/erpnext/setup/page/permission_engine/permission_engine.html
similarity index 100%
rename from setup/page/permission_engine/permission_engine.html
rename to erpnext/setup/page/permission_engine/permission_engine.html
diff --git a/setup/page/permission_engine/permission_engine.js b/erpnext/setup/page/permission_engine/permission_engine.js
similarity index 100%
rename from setup/page/permission_engine/permission_engine.js
rename to erpnext/setup/page/permission_engine/permission_engine.js
diff --git a/setup/page/permission_engine/permission_engine.txt b/erpnext/setup/page/permission_engine/permission_engine.txt
similarity index 100%
rename from setup/page/permission_engine/permission_engine.txt
rename to erpnext/setup/page/permission_engine/permission_engine.txt
diff --git a/stock/doctype/delivery_note/__init__.py b/erpnext/setup/page/setup/__init__.py
similarity index 100%
rename from stock/doctype/delivery_note/__init__.py
rename to erpnext/setup/page/setup/__init__.py
diff --git a/setup/page/setup/setup.html b/erpnext/setup/page/setup/setup.html
similarity index 100%
rename from setup/page/setup/setup.html
rename to erpnext/setup/page/setup/setup.html
diff --git a/setup/page/setup/setup.js b/erpnext/setup/page/setup/setup.js
similarity index 99%
rename from setup/page/setup/setup.js
rename to erpnext/setup/page/setup/setup.js
index b29e7ad9e0..7c1245ad29 100644
--- a/setup/page/setup/setup.js
+++ b/erpnext/setup/page/setup/setup.js
@@ -172,7 +172,8 @@ SetupData = function(cnty){
['Property Setter',1,'Property Setter','', 'Customize properties of a Form (DocType) or Field'],
['Letter Head',1,'Letter Head','','Manage different letter heads for Prints'],
['SMS Settings',3,'SMS Settings','','Integrate your personalized SMS gateway which support http web service'],
- ['SMS Center',3,'SMS Center','','Send mass sms to your leads, contacts and partners']
+ ['SMS Center',3,'SMS Center','','Send mass sms to your leads, contacts and partners'],
+ ['Features Setup',3,'Features Setup','','Displays fields based on features selected']
]};
diff --git a/setup/page/setup/setup.txt b/erpnext/setup/page/setup/setup.txt
similarity index 100%
rename from setup/page/setup/setup.txt
rename to erpnext/setup/page/setup/setup.txt
diff --git a/setup/page/setup/setup_static.html b/erpnext/setup/page/setup/setup_static.html
similarity index 100%
rename from setup/page/setup/setup_static.html
rename to erpnext/setup/page/setup/setup_static.html
diff --git a/stock/doctype/delivery_note_detail/__init__.py b/erpnext/setup/page/setup_wizard/__init__.py
similarity index 100%
rename from stock/doctype/delivery_note_detail/__init__.py
rename to erpnext/setup/page/setup_wizard/__init__.py
diff --git a/setup/page/setup_wizard/setup_wizard.html b/erpnext/setup/page/setup_wizard/setup_wizard.html
similarity index 100%
rename from setup/page/setup_wizard/setup_wizard.html
rename to erpnext/setup/page/setup_wizard/setup_wizard.html
diff --git a/setup/page/setup_wizard/setup_wizard.js b/erpnext/setup/page/setup_wizard/setup_wizard.js
similarity index 100%
rename from setup/page/setup_wizard/setup_wizard.js
rename to erpnext/setup/page/setup_wizard/setup_wizard.js
diff --git a/setup/page/setup_wizard/setup_wizard.txt b/erpnext/setup/page/setup_wizard/setup_wizard.txt
similarity index 100%
rename from setup/page/setup_wizard/setup_wizard.txt
rename to erpnext/setup/page/setup_wizard/setup_wizard.txt
diff --git a/setup/page/setup_wizard/setup_wizard_static.html b/erpnext/setup/page/setup_wizard/setup_wizard_static.html
similarity index 100%
rename from setup/page/setup_wizard/setup_wizard_static.html
rename to erpnext/setup/page/setup_wizard/setup_wizard_static.html
diff --git a/stock/doctype/delivery_note_packing_detail/__init__.py b/erpnext/setup/page/webforms/__init__.py
similarity index 100%
rename from stock/doctype/delivery_note_packing_detail/__init__.py
rename to erpnext/setup/page/webforms/__init__.py
diff --git a/setup/page/webforms/webforms.html b/erpnext/setup/page/webforms/webforms.html
similarity index 100%
rename from setup/page/webforms/webforms.html
rename to erpnext/setup/page/webforms/webforms.html
diff --git a/setup/page/webforms/webforms.js b/erpnext/setup/page/webforms/webforms.js
similarity index 100%
rename from setup/page/webforms/webforms.js
rename to erpnext/setup/page/webforms/webforms.js
diff --git a/setup/page/webforms/webforms.txt b/erpnext/setup/page/webforms/webforms.txt
similarity index 100%
rename from setup/page/webforms/webforms.txt
rename to erpnext/setup/page/webforms/webforms.txt
diff --git a/setup/page/webforms/webforms_static.html b/erpnext/setup/page/webforms/webforms_static.html
similarity index 100%
rename from setup/page/webforms/webforms_static.html
rename to erpnext/setup/page/webforms/webforms_static.html
diff --git a/erpnext/startup/__init__.py b/erpnext/startup/__init__.py
new file mode 100644
index 0000000000..cea033b4fc
--- /dev/null
+++ b/erpnext/startup/__init__.py
@@ -0,0 +1,7 @@
+# add startup propertes
+
+add_in_head = """
+
+"""
\ No newline at end of file
diff --git a/startup/event_handlers.py b/erpnext/startup/event_handlers.py
similarity index 100%
rename from startup/event_handlers.py
rename to erpnext/startup/event_handlers.py
diff --git a/startup/startup.css b/erpnext/startup/startup.css
similarity index 80%
rename from startup/startup.css
rename to erpnext/startup/startup.css
index 67393aac08..f02841689d 100644
--- a/startup/startup.css
+++ b/erpnext/startup/startup.css
@@ -1,3 +1,13 @@
+h1, h2, h3, h4 {
+ font-family: Tahoma, Sans Serif;
+ font-weight: bold;
+}
+
+body, span, div, td, input, textarea, button, select {
+ font-family: Verdana, Arial, Sans Serif;
+ font-size: 12px;
+}
+
body {
background-color: #e2e2e2;
}
@@ -21,7 +31,7 @@ body {
}
.module-icons {
- background: url(images/user/module-icons.png) no-repeat top left;
+ background: url(images/module-icons.png) no-repeat top left;
width:16px;
height:16px;
}
diff --git a/startup/startup.js b/erpnext/startup/startup.js
similarity index 98%
rename from startup/startup.js
rename to erpnext/startup/startup.js
index 942f4effc5..a0661ae06f 100644
--- a/startup/startup.js
+++ b/erpnext/startup/startup.js
@@ -552,7 +552,7 @@ Dictionary Format
}
// ====================================================================*/
pscript.feature_dict = {
- 'projects': {
+ 'fs_projects': {
'Bill Of Materials': {'fields':['project_name']},
'Delivery Note': {'fields':['project_name']},
'Payable Voucher': {'fields':['project_name']},
@@ -564,17 +564,17 @@ pscript.feature_dict = {
'Stock Entry': {'fields':['project_name']},
'Timesheet': {'timesheet_details':['project_name']}
},
- 'packing_details': {
+ 'fs_packing_details': {
'Delivery Note': {'fields':['packing_details','print_packing_slip'],'delivery_note_details':['no_of_packs','pack_gross_wt','pack_nett_wt','pack_no','pack_unit']},
'Sales Order': {'fields':['packing_details']}
},
- 'discounts': {
+ 'fs_discounts': {
'Delivery Note': {'delivery_note_details':['adj_rate']},
'Quotation': {'quotation_details':['adj_rate']},
'Receivable Voucher': {'entries':['adj_rate']},
'Sales Order': {'sales_order_details':['adj_rate','ref_rate']}
},
- 'brands': {
+ 'fs_brands': {
'Delivery Note': {'delivery_note_details':['brand']},
'Indent': {'indent_details':['brand']},
'Item': {'fields':['brand']},
@@ -586,10 +586,10 @@ pscript.feature_dict = {
'Sales Order': {'sales_order_details':['brand']},
'Serial No': {'fields':['brand']}
},
- 'after_sales_installations': {
+ 'fs_after_sales_installations': {
'Delivery Note': {'fields':['installation_status','per_installed'],'delivery_note_details':['installed_qty']}
},
- 'item_batch_nos': {
+ 'fs_item_batch_nos': {
'Delivery Note': {'delivery_note_details':['batch_no']},
'Item': {'fields':['has_batch_no']},
'Purchase Receipt': {'purchase_receipt_details':['batch_no']},
@@ -599,7 +599,7 @@ pscript.feature_dict = {
'Stock Entry': {'mtn_details':['batch_no']},
'Stock Ledger Entry': {'fields':['batch_no']}
},
- 'item_serial_nos': {
+ 'fs_item_serial_nos': {
'Customer Issue': {'fields':['serial_no']},
'Delivery Note': {'delivery_note_details':['serial_no'],'packing_details':['serial_no']},
'Installation Note': {'installed_item_details':['serial_no']},
@@ -613,7 +613,7 @@ pscript.feature_dict = {
'Stock Entry': {'mtn_details':['serial_no']},
'Stock Ledger Entry': {'fields':['serial_no']}
},
- 'item_group_in_details': {
+ 'fs_item_group_in_details': {
'Delivery Note': {'delivery_note_details':['item_group']},
'Enquiry': {'enquiry_details':['item_group']},
'Indent': {'indent_details':['item_group']},
@@ -631,7 +631,7 @@ pscript.feature_dict = {
'Sales Person': {'target_details':['item_group']},
'Territory': {'target_details':['item_group']}
},
- 'page_break': {
+ 'fs_page_break': {
'Delivery Note': {'delivery_note_details':['page_break'],'packing_details':['page_break']},
'Indent': {'indent_details':['page_break']},
'Purchase Order': {'po_details':['page_break']},
@@ -641,7 +641,7 @@ pscript.feature_dict = {
'Receivable Voucher': {'entries':['page_break']},
'Sales Order': {'sales_order_details':['page_break']}
},
- 'exports': {
+ 'fs_exports': {
'Delivery Note': {'fields':['Note','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'delivery_note_details':['base_ref_rate','export_amount','export_rate']},
'POS Setting': {'fields':['conversion_rate','currency']},
'Quotation': {'fields':['Note HTML','OT Notes','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'quotation_details':['base_ref_rate','export_amount','export_rate']},
@@ -650,16 +650,16 @@ pscript.feature_dict = {
'Sales BOM': {'fields':['currency']},
'Sales Order': {'fields':['Note1','OT Notes','conversion_rate','currency','grand_total_export','in_words_export','rounded_total_export'],'sales_order_details':['base_ref_rate','export_amount','export_rate']}
},
- 'imports': {
+ 'fs_imports': {
'Payable Voucher': {'fields':['conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'entries':['import_amount','import_rate']},
'Purchase Order': {'fields':['Note HTML','conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'po_details':['import_amount','import_rate']},
'Purchase Receipt': {'fields':['conversion_rate','currency','grand_total_import','in_words_import','net_total_import','other_charges_added_import','other_charges_deducted_import'],'purchase_receipt_details':['import_amount','import_rate']},
'Supplier Quotation': {'fields':['conversion_rate','currency']}
},
- 'item_advanced': {
+ 'fs_item_advanced': {
'Item': {'fields':['item_customer_details']}
},
- 'sales_extras': {
+ 'fs_sales_extras': {
'Address': {'fields':['sales_partner']},
'Contact': {'fields':['sales_partner']},
'Customer': {'fields':['sales_team']},
@@ -668,7 +668,7 @@ pscript.feature_dict = {
'Receivable Voucher': {'fields':['sales_team']},
'Sales Order': {'fields':['sales_team','Packing List']}
},
- 'more_info': {
+ 'fs_more_info': {
'Customer': {'fields':['More Info']},
'Delivery Note': {'fields':['More Info']},
'Enquiry': {'fields':['More Info']},
@@ -683,14 +683,14 @@ pscript.feature_dict = {
'Serial No': {'fields':['More Info']},
'Supplier': {'fields':['More Info']}
},
- 'quality': {
+ 'fs_quality': {
'Item': {'fields':['Item Inspection Criteria','inspection_required']},
'Purchase Receipt': {'purchase_receipt_details':['qa_no']}
},
- 'manufacturing': {
+ 'fs_manufacturing': {
'Item': {'fields':['Manufacturing']}
},
- 'pos': {
+ 'fs_pos': {
'Receivable Voucher': {'fields':['is_pos']}
}
}
diff --git a/stock/DocType Label/QA Inspection Report/QA Inspection Report.txt b/erpnext/stock/DocType Label/QA Inspection Report/QA Inspection Report.txt
similarity index 100%
rename from stock/DocType Label/QA Inspection Report/QA Inspection Report.txt
rename to erpnext/stock/DocType Label/QA Inspection Report/QA Inspection Report.txt
diff --git a/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt b/erpnext/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
similarity index 94%
rename from stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
rename to erpnext/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
index e1579f93f6..69c4fe21f1 100644
--- a/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
+++ b/erpnext/stock/DocType Mapper/Project-Delivery Note/Project-Delivery Note.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2010-09-01 15:48:10',
+ 'creation': '2010-09-01 15:47:59',
'docstatus': 0,
- 'modified': '2010-09-01 14:25:08',
+ 'modified': '2011-09-15 15:04:43',
'modified_by': 'Administrator',
'owner': 'harshada@webnotestech.com'
},
diff --git a/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt b/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
similarity index 93%
rename from stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
rename to erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
index 54e272a54f..c34f00617d 100644
--- a/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
+++ b/erpnext/stock/DocType Mapper/Purchase Order-Purchase Receipt/Purchase Order-Purchase Receipt.txt
@@ -5,8 +5,8 @@
{
'creation': '2010-08-08 17:09:35',
'docstatus': 0,
- 'modified': '2011-05-13 12:42:57',
- 'modified_by': 'umair@iwebnotes.com',
+ 'modified': '2011-10-07 12:10:26',
+ 'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -31,7 +31,7 @@
# These values are common for all DocType Mapper
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'from_doctype': 'Purchase Order',
'module': 'Stock',
'name': '__common__',
@@ -41,7 +41,7 @@
# DocType Mapper, Purchase Order-Purchase Receipt
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'name': 'Purchase Order-Purchase Receipt'
},
@@ -145,6 +145,14 @@
'to_field': 'amount'
},
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'schedule_date',
+ 'match_id': 1,
+ 'to_field': 'schedule_date'
+ },
+
# Table Mapper Detail
{
'doctype': 'Table Mapper Detail',
diff --git a/stock/DocType Mapper/Receivable Voucher-Delivery Note/Receivable Voucher-Delivery Note.txt b/erpnext/stock/DocType Mapper/Receivable Voucher-Delivery Note/Receivable Voucher-Delivery Note.txt
similarity index 84%
rename from stock/DocType Mapper/Receivable Voucher-Delivery Note/Receivable Voucher-Delivery Note.txt
rename to erpnext/stock/DocType Mapper/Receivable Voucher-Delivery Note/Receivable Voucher-Delivery Note.txt
index 6688f2b08f..61b33ee950 100755
--- a/stock/DocType Mapper/Receivable Voucher-Delivery Note/Receivable Voucher-Delivery Note.txt
+++ b/erpnext/stock/DocType Mapper/Receivable Voucher-Delivery Note/Receivable Voucher-Delivery Note.txt
@@ -3,9 +3,9 @@
# These values are common in all dictionaries
{
- 'creation': '2010-12-15 08:39:22',
+ 'creation': '2010-12-14 17:56:41',
'docstatus': 0,
- 'modified': '2010-12-14 20:43:41',
+ 'modified': '2011-09-15 15:04:44',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -22,7 +22,6 @@
# These values are common for all Field Mapper Detail
{
'doctype': 'Field Mapper Detail',
- 'map': 'Yes',
'name': '__common__',
'parent': 'Receivable Voucher-Delivery Note',
'parentfield': 'field_mapper_details',
@@ -31,7 +30,7 @@
# These values are common for all DocType Mapper
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'from_doctype': 'Receivable Voucher',
'module': 'Stock',
'name': '__common__',
@@ -41,7 +40,7 @@
# DocType Mapper, Receivable Voucher-Delivery Note
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'name': 'Receivable Voucher-Delivery Note'
},
@@ -49,6 +48,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'eval: flt(obj.qty) - flt(obj.delivered_qty)',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'qty'
},
@@ -57,6 +57,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'parent',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'prevdoc_docname'
},
@@ -65,6 +66,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'parenttype',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'prevdoc_doctype'
},
@@ -73,6 +75,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'name',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'prevdoc_detail_docname'
},
@@ -81,6 +84,7 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.basic_rate)',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'amount'
},
@@ -89,18 +93,38 @@
{
'doctype': 'Field Mapper Detail',
'from_field': 'eval: (flt(obj.qty) - flt(obj.delivered_qty)) * flt(obj.export_rate)',
+ 'map': 'Yes',
'match_id': 1,
'to_field': 'export_amount'
},
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'naming_series',
+ 'map': 'No',
+ 'match_id': 0,
+ 'to_field': 'naming_series'
+ },
+
# Field Mapper Detail
{
'doctype': 'Field Mapper Detail',
'from_field': 'customer_address',
+ 'map': 'Yes',
'match_id': 0,
'to_field': 'delivery_address'
},
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'serial_no',
+ 'map': 'Yes',
+ 'match_id': 1,
+ 'to_field': 'serial_no'
+ },
+
# Table Mapper Detail
{
'doctype': 'Table Mapper Detail',
diff --git a/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt b/erpnext/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
similarity index 89%
rename from stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
rename to erpnext/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
index f93fadfb58..561019b4d7 100644
--- a/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
+++ b/erpnext/stock/DocType Mapper/Sales Order-Delivery Note/Sales Order-Delivery Note.txt
@@ -5,8 +5,8 @@
{
'creation': '2010-08-08 17:09:35',
'docstatus': 0,
- 'modified': '2011-05-16 11:48:19',
- 'modified_by': 'umair@iwebnotes.com',
+ 'modified': '2011-09-14 12:36:25',
+ 'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -30,7 +30,7 @@
# These values are common for all DocType Mapper
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'from_doctype': 'Sales Order',
'module': 'Stock',
'name': '__common__',
@@ -40,7 +40,7 @@
# DocType Mapper, Sales Order-Delivery Note
{
- 'doctype': 'DocType Mapper',
+ 'doctype': u'DocType Mapper',
'name': 'Sales Order-Delivery Note'
},
@@ -174,15 +174,6 @@
'to_field': 'warehouse'
},
- # Field Mapper Detail
- {
- 'doctype': 'Field Mapper Detail',
- 'from_field': 'allocated_amount',
- 'map': 'Yes',
- 'match_id': 0,
- 'to_field': 'customer_mobile_no'
- },
-
# Field Mapper Detail
{
'checking_operator': '=',
@@ -203,6 +194,42 @@
'to_field': 'customer'
},
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'naming_series',
+ 'map': 'No',
+ 'match_id': 0,
+ 'to_field': 'naming_series'
+ },
+
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'status',
+ 'map': 'No',
+ 'match_id': 0,
+ 'to_field': 'status'
+ },
+
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'incentives',
+ 'map': 'No',
+ 'match_id': 3,
+ 'to_field': 'incentives'
+ },
+
+ # Field Mapper Detail
+ {
+ 'doctype': 'Field Mapper Detail',
+ 'from_field': 'allocated_amount',
+ 'map': 'Yes',
+ 'match_id': 0,
+ 'to_field': 'customer_mobile_no'
+ },
+
# Table Mapper Detail
{
'doctype': 'Table Mapper Detail',
diff --git a/stock/Item Group/All Item Groups/All Item Groups.txt b/erpnext/stock/Item Group/All Item Groups/All Item Groups.txt
similarity index 100%
rename from stock/Item Group/All Item Groups/All Item Groups.txt
rename to erpnext/stock/Item Group/All Item Groups/All Item Groups.txt
diff --git a/stock/Item Group/Default/Default.txt b/erpnext/stock/Item Group/Default/Default.txt
similarity index 100%
rename from stock/Item Group/Default/Default.txt
rename to erpnext/stock/Item Group/Default/Default.txt
diff --git a/erpnext/stock/Module Def/Stock/Stock.txt b/erpnext/stock/Module Def/Stock/Stock.txt
new file mode 100644
index 0000000000..4fc8790480
--- /dev/null
+++ b/erpnext/stock/Module Def/Stock/Stock.txt
@@ -0,0 +1,232 @@
+# Module Def, Stock
+[
+
+ # These values are common in all dictionaries
+ {
+ 'creation': '2011-07-01 17:40:49',
+ 'docstatus': 0,
+ 'modified': '2011-10-10 17:01:34',
+ 'modified_by': 'Administrator',
+ 'owner': 'Administrator'
+ },
+
+ # These values are common for all Module Def Role
+ {
+ 'doctype': 'Module Def Role',
+ 'name': '__common__',
+ 'parent': 'Stock',
+ 'parentfield': 'roles',
+ 'parenttype': 'Module Def'
+ },
+
+ # These values are common for all Module Def Item
+ {
+ 'doctype': 'Module Def Item',
+ 'name': '__common__',
+ 'parent': 'Stock',
+ 'parentfield': 'items',
+ 'parenttype': 'Module Def'
+ },
+
+ # These values are common for all Module Def
+ {
+ 'disabled': 'No',
+ 'doctype': u'Module Def',
+ 'doctype_list': 'DocType Label, QA Inspection Report',
+ 'is_hidden': 'No',
+ 'module_desc': 'Material Management',
+ 'module_icon': 'Stock.gif',
+ 'module_label': 'Stock',
+ 'module_name': 'Stock',
+ 'module_seq': 7,
+ 'name': '__common__'
+ },
+
+ # Module Def, Stock
+ {
+ 'doctype': u'Module Def',
+ 'name': 'Stock'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Item master',
+ 'display_name': 'Item',
+ 'doc_name': 'Item',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'fields': 'name\nitem_group\ndescription'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'A unique number identifying each entity of an item',
+ 'display_name': 'Serial No',
+ 'doc_name': 'Serial No',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'fields': 'item_code\nstatus\nwarehouse\npr_no\ndelivery_note_no\ncustomer'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Record of items added, removed or moved from one warehouse to another.',
+ 'display_name': 'Stock Entry',
+ 'doc_name': 'Stock Entry',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'fields': 'transfer_date\npurpose\nfrom_warehouse\nto_warehouse\nremarks'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Record of items delivered to your customers along with the Printed Note',
+ 'display_name': 'Delivery Note',
+ 'doc_name': 'Delivery Note',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'fields': 'status\ntransaction_date\ncustomer\nterritory\ngrand_total\nper_billed'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Record of incoming material from your suppliers',
+ 'display_name': 'Purchase Receipt',
+ 'doc_name': 'Purchase Receipt',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'fields': 'status\ntransaction_date\nsupplier\ngrand_total\nper_billed'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Details of Installation done after delivery',
+ 'display_name': 'Installation Note',
+ 'doc_name': 'Installation Note',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Create Quality Inspection Report for any item',
+ 'display_name': 'Inspection Report',
+ 'doc_name': 'QA Inspection Report',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'fields': 'inspection_type\nitem_code\nreport_date\npurchase_receipt_no\ndelivery_note_no'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Reconcile your stock by uploading it form an excel file',
+ 'display_name': 'Stock Reconciliation',
+ 'doc_name': 'Stock Reconciliation',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'fields': 'reconciliation_date\nreconciliation_time\nremark'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'This utility tool will update Stock UOM in Item and will respectively update Actual Qty in Stock Ledger as per Conversion Factor.',
+ 'display_name': 'Stock UOM Replace Utility',
+ 'doc_name': 'Stock UOM Replace Utility',
+ 'doc_type': 'Single DocType',
+ 'doctype': 'Module Def Item'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'This utility will help in tracking stock for Sales Return and Purchase Return.',
+ 'display_name': 'Sales and Purchase Return Wizard',
+ 'doc_name': 'Sales and Purchase Return Wizard',
+ 'doc_type': 'Single DocType',
+ 'doctype': 'Module Def Item'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'You can create master template for landed cost wizard',
+ 'display_name': 'Landed Cost Master',
+ 'doc_name': 'Landed Cost Master',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'icon': 'accept.gif'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Add extra expenses into Purchase Receipt which should be consider for item valuation. The cost will be added proportionately as per purchase receipt value.',
+ 'display_name': 'Landed Cost Wizard',
+ 'doc_name': 'Landed Cost Wizard',
+ 'doc_type': 'Forms',
+ 'doctype': 'Module Def Item',
+ 'icon': 'accept.gif'
+ },
+
+ # Module Def Item
+ {
+ 'display_name': 'Stock Ledger',
+ 'doc_name': 'Stock Ledger Entry',
+ 'doc_type': 'Reports',
+ 'doctype': 'Module Def Item'
+ },
+
+ # Module Def Item
+ {
+ 'display_name': 'Stock Level',
+ 'doc_name': 'Bin',
+ 'doc_type': 'Reports',
+ 'doctype': 'Module Def Item'
+ },
+
+ # Module Def Item
+ {
+ 'display_name': 'Shortage To Indent',
+ 'doc_name': 'Item',
+ 'doc_type': 'Reports',
+ 'doctype': 'Module Def Item'
+ },
+
+ # Module Def Item
+ {
+ 'description': 'Stock Value as per Item and Warehouse',
+ 'display_name': 'Stock Report',
+ 'doc_name': 'Stock Ledger Entry',
+ 'doc_type': 'Reports',
+ 'doctype': 'Module Def Item'
+ },
+
+ # Module Def Item
+ {
+ 'display_name': 'Stock Aging Report',
+ 'doc_name': 'Serial No',
+ 'doc_type': 'Reports',
+ 'doctype': 'Module Def Item'
+ },
+
+ # Module Def Role
+ {
+ 'doctype': 'Module Def Role',
+ 'role': 'Material User'
+ },
+
+ # Module Def Role
+ {
+ 'doctype': 'Module Def Role',
+ 'role': 'Material Master Manager'
+ },
+
+ # Module Def Role
+ {
+ 'doctype': 'Module Def Role',
+ 'role': 'Material Manager'
+ },
+
+ # Module Def Role
+ {
+ 'doctype': 'Module Def Role',
+ 'role': 'Quality Manager'
+ }
+]
\ No newline at end of file
diff --git a/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt b/erpnext/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
similarity index 100%
rename from stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
rename to erpnext/stock/Print Format/Delivery Note Packing List Wise/Delivery Note Packing List Wise.txt
diff --git a/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt b/erpnext/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
similarity index 100%
rename from stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
rename to erpnext/stock/Print Format/Purchase Receipt Format/Purchase Receipt Format.txt
diff --git a/stock/Role/Material Manager/Material Manager.txt b/erpnext/stock/Role/Material Manager/Material Manager.txt
similarity index 100%
rename from stock/Role/Material Manager/Material Manager.txt
rename to erpnext/stock/Role/Material Manager/Material Manager.txt
diff --git a/stock/Role/Material Master Manager/Material Master Manager.txt b/erpnext/stock/Role/Material Master Manager/Material Master Manager.txt
similarity index 100%
rename from stock/Role/Material Master Manager/Material Master Manager.txt
rename to erpnext/stock/Role/Material Master Manager/Material Master Manager.txt
diff --git a/stock/Role/Material User/Material User.txt b/erpnext/stock/Role/Material User/Material User.txt
similarity index 100%
rename from stock/Role/Material User/Material User.txt
rename to erpnext/stock/Role/Material User/Material User.txt
diff --git a/stock/Role/Quality Manager/Quality Manager.txt b/erpnext/stock/Role/Quality Manager/Quality Manager.txt
similarity index 100%
rename from stock/Role/Quality Manager/Quality Manager.txt
rename to erpnext/stock/Role/Quality Manager/Quality Manager.txt
diff --git a/stock/doctype/item/__init__.py b/erpnext/stock/__init__.py
similarity index 100%
rename from stock/doctype/item/__init__.py
rename to erpnext/stock/__init__.py
diff --git a/stock/doctype/item_customer_detail/__init__.py b/erpnext/stock/doctype/__init__.py
similarity index 100%
rename from stock/doctype/item_customer_detail/__init__.py
rename to erpnext/stock/doctype/__init__.py
diff --git a/stock/doctype/item_specification_detail/__init__.py b/erpnext/stock/doctype/batch/__init__.py
similarity index 100%
rename from stock/doctype/item_specification_detail/__init__.py
rename to erpnext/stock/doctype/batch/__init__.py
diff --git a/stock/doctype/batch/batch.txt b/erpnext/stock/doctype/batch/batch.txt
similarity index 100%
rename from stock/doctype/batch/batch.txt
rename to erpnext/stock/doctype/batch/batch.txt
diff --git a/stock/doctype/item_tax/__init__.py b/erpnext/stock/doctype/bin/__init__.py
similarity index 100%
rename from stock/doctype/item_tax/__init__.py
rename to erpnext/stock/doctype/bin/__init__.py
diff --git a/stock/doctype/bin/bin.py b/erpnext/stock/doctype/bin/bin.py
similarity index 99%
rename from stock/doctype/bin/bin.py
rename to erpnext/stock/doctype/bin/bin.py
index 65b86867b6..cf9509a332 100644
--- a/stock/doctype/bin/bin.py
+++ b/erpnext/stock/doctype/bin/bin.py
@@ -42,7 +42,8 @@ class DocType:
# update valuation for post dated entry
if actual_qty:
# check actual qty with total number of serial no
- self.check_qty_with_serial_no()
+ if serial_no:
+ self.check_qty_with_serial_no()
prev_sle = self.get_prev_sle(dt, posting_time, sle_id)
cqty = flt(prev_sle.get('bin_aqat', 0))
diff --git a/stock/doctype/bin/bin.txt b/erpnext/stock/doctype/bin/bin.txt
similarity index 100%
rename from stock/doctype/bin/bin.txt
rename to erpnext/stock/doctype/bin/bin.txt
diff --git a/stock/doctype/landed_cost_detail/__init__.py b/erpnext/stock/doctype/delivery_note/__init__.py
similarity index 100%
rename from stock/doctype/landed_cost_detail/__init__.py
rename to erpnext/stock/doctype/delivery_note/__init__.py
diff --git a/stock/doctype/delivery_note/delivery_note.js b/erpnext/stock/doctype/delivery_note/delivery_note.js
similarity index 100%
rename from stock/doctype/delivery_note/delivery_note.js
rename to erpnext/stock/doctype/delivery_note/delivery_note.js
diff --git a/stock/doctype/delivery_note/delivery_note.py b/erpnext/stock/doctype/delivery_note/delivery_note.py
similarity index 99%
rename from stock/doctype/delivery_note/delivery_note.py
rename to erpnext/stock/doctype/delivery_note/delivery_note.py
index e5acd163a7..6d48914429 100644
--- a/stock/doctype/delivery_note/delivery_note.py
+++ b/erpnext/stock/doctype/delivery_note/delivery_note.py
@@ -443,8 +443,8 @@ class DocType(TransactionBase):
# ==========================================
def update_pack_nett_weight(self):
for d in getlist(self.doclist, 'delivery_note_details'):
- if d.item_name:
- item_wt = sql("select nett_weight from `tabItem` where item_name = '%s'" % (d.item_name))
+ if d.item_code:
+ item_wt = sql("select nett_weight from `tabItem` where name = %s", (d.item_code))
d.pack_nett_wt = item_wt and flt(item_wt[0][0])*flt(d.qty) or 0
# ==========================================
diff --git a/stock/doctype/delivery_note/delivery_note.txt b/erpnext/stock/doctype/delivery_note/delivery_note.txt
similarity index 94%
rename from stock/doctype/delivery_note/delivery_note.txt
rename to erpnext/stock/doctype/delivery_note/delivery_note.txt
index 1ab19e070c..a3897ec17b 100644
--- a/stock/doctype/delivery_note/delivery_note.txt
+++ b/erpnext/stock/doctype/delivery_note/delivery_note.txt
@@ -5,7 +5,7 @@
{
'creation': '2011-04-18 15:58:20',
'docstatus': 0,
- 'modified': '2011-08-23 15:26:57',
+ 'modified': '2011-09-07 17:36:34',
'modified_by': 'Administrator',
'owner': 'Administrator'
},
@@ -21,8 +21,9 @@
# These values are common for all DocType
{
- '_last_update': '1313665263',
+ '_last_update': '1314093417',
'colour': 'White:FFF',
+ 'default_print_format': 'Standard',
'doctype': 'DocType',
'document_type': 'Transaction',
'in_create': 0,
@@ -36,7 +37,7 @@
'show_in_menu': 0,
'subject': 'To %(customer_name)s on %(transaction_date)s | %(per_billed)s% billed',
'tag_fields': 'billing_status',
- 'version': 449
+ 'version': 450
},
# These values are common for all DocFormat
@@ -71,7 +72,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 1,
'permlevel': 0,
'role': 'Material User',
'submit': 1,
@@ -84,7 +84,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 2,
'permlevel': 0,
'role': 'Sales User',
'submit': 1,
@@ -97,7 +96,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 3,
'permlevel': 0,
'role': 'Material Master Manager',
'submit': 1,
@@ -110,7 +108,6 @@
'cancel': 1,
'create': 1,
'doctype': 'DocPerm',
- 'idx': 4,
'permlevel': 0,
'role': 'Material Manager',
'submit': 1,
@@ -120,7 +117,6 @@
# DocPerm
{
'doctype': 'DocPerm',
- 'idx': 5,
'permlevel': 1,
'role': 'All'
},
@@ -128,21 +124,18 @@
# DocPerm
{
'doctype': 'DocPerm',
- 'idx': 6,
'permlevel': 2,
'role': 'All'
},
# DocFormat
{
- 'doctype': 'DocFormat',
- 'idx': 1
+ 'doctype': 'DocFormat'
},
# DocFormat
{
- 'doctype': 'DocFormat',
- 'idx': 2
+ 'doctype': 'DocFormat'
},
# DocField
@@ -150,7 +143,6 @@
'colour': 'White:FFF',
'doctype': 'DocField',
'fieldtype': 'Section Break',
- 'idx': 1,
'label': 'Basic Info',
'oldfieldtype': 'Section Break',
'permlevel': 0
@@ -160,7 +152,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Column Break',
- 'idx': 2,
'oldfieldtype': 'Column Break',
'permlevel': 0,
'trigger': 'Client',
@@ -174,7 +165,6 @@
'doctype': 'DocField',
'fieldname': 'naming_series',
'fieldtype': 'Select',
- 'idx': 3,
'label': 'Series',
'no_copy': 1,
'oldfieldname': 'naming_series',
@@ -190,7 +180,6 @@
'doctype': 'DocField',
'fieldname': 'customer',
'fieldtype': 'Link',
- 'idx': 4,
'in_filter': 1,
'label': 'Customer',
'oldfieldname': 'customer',
@@ -208,7 +197,6 @@
'doctype': 'DocField',
'fieldname': 'customer_address',
'fieldtype': 'Link',
- 'idx': 5,
'in_filter': 1,
'label': 'Shipping Address',
'options': 'Address',
@@ -221,7 +209,6 @@
'doctype': 'DocField',
'fieldname': 'contact_person',
'fieldtype': 'Link',
- 'idx': 6,
'in_filter': 1,
'label': 'Contact Person',
'options': 'Contact',
@@ -234,7 +221,6 @@
'doctype': 'DocField',
'fieldname': 'customer_name',
'fieldtype': 'Data',
- 'idx': 7,
'label': 'Customer Name',
'permlevel': 1
},
@@ -244,7 +230,6 @@
'doctype': 'DocField',
'fieldname': 'address_display',
'fieldtype': 'Small Text',
- 'idx': 8,
'label': 'Shipping Address',
'permlevel': 1
},
@@ -254,7 +239,6 @@
'doctype': 'DocField',
'fieldname': 'contact_display',
'fieldtype': 'Small Text',
- 'idx': 9,
'label': 'Contact',
'permlevel': 1
},
@@ -264,7 +248,6 @@
'doctype': 'DocField',
'fieldname': 'contact_mobile',
'fieldtype': 'Text',
- 'idx': 10,
'label': 'Mobile No',
'permlevel': 1
},
@@ -274,7 +257,6 @@
'doctype': 'DocField',
'fieldname': 'contact_email',
'fieldtype': 'Text',
- 'idx': 11,
'label': 'Contact Email',
'permlevel': 1,
'print_hide': 1
@@ -284,7 +266,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Column Break',
- 'idx': 12,
'oldfieldtype': 'Column Break',
'permlevel': 0
},
@@ -297,7 +278,6 @@
'doctype': 'DocField',
'fieldname': 'transaction_date',
'fieldtype': 'Date',
- 'idx': 13,
'in_filter': 1,
'label': 'Voucher Date',
'no_copy': 1,
@@ -316,7 +296,6 @@
'doctype': 'DocField',
'fieldname': 'status',
'fieldtype': 'Select',
- 'idx': 14,
'in_filter': 1,
'label': 'Status',
'no_copy': 1,
@@ -338,7 +317,6 @@
'doctype': 'DocField',
'fieldname': 'per_billed',
'fieldtype': 'Currency',
- 'idx': 15,
'in_filter': 1,
'label': '% Amount Billed',
'no_copy': 1,
@@ -357,7 +335,6 @@
'doctype': 'DocField',
'fieldname': 'per_installed',
'fieldtype': 'Currency',
- 'idx': 16,
'in_filter': 1,
'label': '% Installed',
'no_copy': 1,
@@ -368,13 +345,42 @@
'search_index': 1
},
+ # DocField
+ {
+ 'doctype': 'DocField',
+ 'fieldname': 'po_no',
+ 'fieldtype': 'Data',
+ 'hidden': 1,
+ 'label': 'P.O. No',
+ 'no_copy': 0,
+ 'oldfieldname': 'po_no',
+ 'oldfieldtype': 'Data',
+ 'permlevel': 1,
+ 'print_hide': 1,
+ 'width': '100px'
+ },
+
+ # DocField
+ {
+ 'doctype': 'DocField',
+ 'fieldname': 'po_date',
+ 'fieldtype': 'Data',
+ 'hidden': 1,
+ 'label': 'P.O. Date',
+ 'no_copy': 0,
+ 'oldfieldname': 'po_date',
+ 'oldfieldtype': 'Data',
+ 'permlevel': 1,
+ 'print_hide': 1,
+ 'width': '100px'
+ },
+
# DocField
{
'allow_on_submit': 0,
'doctype': 'DocField',
'fieldname': 'amended_from',
'fieldtype': 'Data',
- 'idx': 17,
'label': 'Amended From',
'no_copy': 1,
'oldfieldname': 'amended_from',
@@ -390,7 +396,6 @@
'doctype': 'DocField',
'fieldname': 'amendment_date',
'fieldtype': 'Date',
- 'idx': 18,
'label': 'Amendment Date',
'no_copy': 1,
'oldfieldname': 'amendment_date',
@@ -406,7 +411,6 @@
'fieldname': 'territory',
'fieldtype': 'Link',
'hidden': 0,
- 'idx': 19,
'in_filter': 1,
'label': 'Territory',
'options': 'Territory',
@@ -421,7 +425,6 @@
'doctype': 'DocField',
'fieldname': 'customer_group',
'fieldtype': 'Link',
- 'idx': 20,
'in_filter': 1,
'label': 'Customer Group',
'options': 'Customer Group',
@@ -434,7 +437,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Section Break',
- 'idx': 21,
'label': 'Transporter Info',
'permlevel': 0
},
@@ -445,7 +447,6 @@
'doctype': 'DocField',
'fieldname': 'transporter_name',
'fieldtype': 'Data',
- 'idx': 22,
'label': 'Transporter Name',
'no_copy': 0,
'oldfieldname': 'transporter_name',
@@ -464,7 +465,6 @@
'doctype': 'DocField',
'fieldname': 'lr_no',
'fieldtype': 'Data',
- 'idx': 23,
'label': 'LR No',
'no_copy': 0,
'oldfieldname': 'lr_no',
@@ -483,7 +483,6 @@
'doctype': 'DocField',
'fieldname': 'lr_date',
'fieldtype': 'Date',
- 'idx': 24,
'label': 'LR Date',
'no_copy': 0,
'oldfieldname': 'lr_date',
@@ -497,7 +496,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Column Break',
- 'idx': 25,
'permlevel': 0,
'width': '50%'
},
@@ -507,7 +505,6 @@
'doctype': 'DocField',
'fieldname': 'challan_no',
'fieldtype': 'Data',
- 'idx': 26,
'label': 'Challan No',
'oldfieldname': 'challan_no',
'oldfieldtype': 'Data',
@@ -519,7 +516,6 @@
'doctype': 'DocField',
'fieldname': 'challan_date',
'fieldtype': 'Date',
- 'idx': 27,
'label': 'Challan Date',
'oldfieldname': 'challan_date',
'oldfieldtype': 'Date',
@@ -531,7 +527,6 @@
'colour': 'White:FFF',
'doctype': 'DocField',
'fieldtype': 'Section Break',
- 'idx': 28,
'label': 'Items',
'oldfieldtype': 'Section Break',
'permlevel': 0
@@ -544,7 +539,6 @@
'doctype': 'DocField',
'fieldname': 'sales_order_no',
'fieldtype': 'Link',
- 'idx': 29,
'label': 'Sales Order No',
'no_copy': 0,
'oldfieldname': 'sales_order_no',
@@ -559,7 +553,6 @@
'doctype': 'DocField',
'fieldtype': 'Button',
'hidden': 0,
- 'idx': 30,
'label': 'Get Items',
'oldfieldtype': 'Button',
'options': 'pull_sales_order_details',
@@ -574,7 +567,6 @@
'doctype': 'DocField',
'fieldname': 'price_list_name',
'fieldtype': 'Select',
- 'idx': 31,
'label': 'Price List',
'oldfieldname': 'price_list_name',
'oldfieldtype': 'Select',
@@ -589,7 +581,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Column Break',
- 'idx': 32,
'permlevel': 0,
'width': '50%'
},
@@ -601,7 +592,6 @@
'doctype': 'DocField',
'fieldname': 'currency',
'fieldtype': 'Select',
- 'idx': 33,
'label': 'Currency',
'oldfieldname': 'currency',
'oldfieldtype': 'Select',
@@ -619,7 +609,6 @@
'doctype': 'DocField',
'fieldname': 'conversion_rate',
'fieldtype': 'Currency',
- 'idx': 34,
'label': 'Conversion Rate',
'no_copy': 0,
'oldfieldname': 'conversion_rate',
@@ -633,7 +622,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Section Break',
- 'idx': 35,
'permlevel': 0
},
@@ -642,7 +630,6 @@
'doctype': 'DocField',
'fieldname': 'delivery_note_details',
'fieldtype': 'Table',
- 'idx': 36,
'label': 'Delivery Note Details',
'no_copy': 0,
'oldfieldname': 'delivery_note_details',
@@ -657,7 +644,6 @@
'doctype': 'DocField',
'fieldname': 'net_total',
'fieldtype': 'Currency',
- 'idx': 37,
'label': 'Net Total*',
'no_copy': 0,
'oldfieldname': 'net_total',
@@ -672,7 +658,6 @@
{
'doctype': 'DocField',
'fieldtype': 'Button',
- 'idx': 38,
'label': 'Re-Calculate Values',
'oldfieldtype': 'Button',
'permlevel': 0,
@@ -683,7 +668,6 @@
{
'doctype': 'DocField',
'fieldtype': 'HTML',
- 'idx': 39,
'label': 'Note',
'oldfieldtype': 'HTML',
'options': '