diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.html b/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.html
index 783e4255334..de8451eb207 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.html
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.html
@@ -10,12 +10,12 @@
{% if(frappe.datetime.get_diff(doc.due_date) < 0) { %}
+ data-filter="outstanding_amount,>,0|due_date,<,Today">
{%= __("Overdue: ") + comment_when(doc.due_date) %}
{% } else { %}
{%= doc.get_formatted("due_date") %}
{% } %}
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.js b/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.js
index 2cb7b4c281e..ea2986a79f9 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.js
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice_list.js
@@ -4,5 +4,6 @@
// render
frappe.listview_settings['Sales Invoice'] = {
add_fields: ["customer", "customer_name", "grand_total", "outstanding_amount", "due_date", "company",
- "currency"]
+ "currency"],
+ filters: [["outstanding_amount", ">", "0"]]
};
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order_list.html b/erpnext/buying/doctype/purchase_order/purchase_order_list.html
index beb97f43b7e..4806cfb1e7b 100644
--- a/erpnext/buying/doctype/purchase_order/purchase_order_list.html
+++ b/erpnext/buying/doctype/purchase_order/purchase_order_list.html
@@ -16,6 +16,11 @@
{%= __(doc.status) %}
{% } %}
+ {% if(doc.per_received == 100 && doc.status!=="Stopped") { %}
+
+
+ {% } %}
diff --git a/erpnext/manufacturing/doctype/bom/bom_list.html b/erpnext/manufacturing/doctype/bom/bom_list.html
index 23e5a38ab11..8303f4a3d4a 100644
--- a/erpnext/manufacturing/doctype/bom/bom_list.html
+++ b/erpnext/manufacturing/doctype/bom/bom_list.html
@@ -4,11 +4,13 @@
{%= list.get_avatar_and_id(doc) %}
{% if(cint(doc.is_active)) { %}
{%= __("Active") %}
+ data-filter="is_active,=,Yes">
+ {%= __("Active") %}
{% } %}
{% if(cint(doc.is_default)) { %}
- {%= __("Default") %}
+
+ {%= __("Default") %}
{% } %}
diff --git a/erpnext/manufacturing/doctype/production_order/production_order_list.html b/erpnext/manufacturing/doctype/production_order/production_order_list.html
new file mode 100644
index 00000000000..4cdaa542b8a
--- /dev/null
+++ b/erpnext/manufacturing/doctype/production_order/production_order_list.html
@@ -0,0 +1,47 @@
+
+
+
+ {% var per = 100 - cint((doc.qty - doc.produced_qty) * 100 / doc.qty); %}
+ {%= list.get_avatar_and_id(doc) %}
+
+
+ {%= doc.customer_name %}
+ {% if(per < 100 && doc.status!=="Stopped") { %}
+ {% if(frappe.datetime.get_diff(doc.expected_delivery_date) < 0) { %}
+
+ {%= __("Overdue") %}
+
+ {% } else { %}
+
+ {%= doc.get_formatted("expected_delivery_date")%}
+ {% } %}
+ {% } %}
+ {% if(per == 100 && doc.status!=="Stopped") { %}
+
+
+ {% } %}
+ {% if(doc.status==="Stopped") { %}
+ {%= __("Stopped") %}
+ {% } %}
+
+ {%= doc.sales_order %}
+
+ {%= doc.bom_no %}
+
+
+
+ {% var completed = per, title = __("Completed") %}
+ {% include "templates/form_grid/includes/progress.html" %}
+
+
diff --git a/erpnext/manufacturing/doctype/production_order/production_order_list.js b/erpnext/manufacturing/doctype/production_order/production_order_list.js
new file mode 100644
index 00000000000..457e803d15d
--- /dev/null
+++ b/erpnext/manufacturing/doctype/production_order/production_order_list.js
@@ -0,0 +1,5 @@
+frappe.listview_settings['Production Order'] = {
+ add_fields: ["bom_no", "status", "sales_order", "qty",
+ "produced_qty", "expected_delivery_date"],
+ filters: [["status", "!=", "Completed"], ["status", "!=", "Stopped"]]
+};
diff --git a/erpnext/selling/doctype/sales_order/sales_order_list.html b/erpnext/selling/doctype/sales_order/sales_order_list.html
index 2861de036c7..ffa3c01c0db 100644
--- a/erpnext/selling/doctype/sales_order/sales_order_list.html
+++ b/erpnext/selling/doctype/sales_order/sales_order_list.html
@@ -21,6 +21,11 @@
{%= doc.get_formatted("delivery_date")%}
{% } %}
{% } %}
+ {% if(doc.per_delivered == 100 && doc.status!=="Stopped") { %}
+
+
+ {% } %}
{% if(doc.status==="Stopped") { %}
{%= __("Stopped") %}
diff --git a/erpnext/selling/doctype/sales_order/sales_order_list.js b/erpnext/selling/doctype/sales_order/sales_order_list.js
index 0eab5de4a5d..a801cb93164 100644
--- a/erpnext/selling/doctype/sales_order/sales_order_list.js
+++ b/erpnext/selling/doctype/sales_order/sales_order_list.js
@@ -1,4 +1,5 @@
frappe.listview_settings['Sales Order'] = {
add_fields: ["grand_total", "company", "currency", "customer",
- "customer_name", "per_delivered", "per_billed", "delivery_date"]
+ "customer_name", "per_delivered", "per_billed", "delivery_date"],
+ filters: [["per_delivered", "<", "100"]]
};
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.py b/erpnext/stock/doctype/stock_entry/stock_entry.py
index 413aa4741a5..1da2ad53d0f 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry.py
+++ b/erpnext/stock/doctype/stock_entry/stock_entry.py
@@ -11,6 +11,7 @@ from frappe import _
from erpnext.stock.utils import get_incoming_rate
from erpnext.stock.stock_ledger import get_previous_sle
from erpnext.controllers.queries import get_match_cond
+from erpnext.stock.get_item_details import get_available_qty
class NotUpdateStockError(frappe.ValidationError): pass
class StockOverReturnError(frappe.ValidationError): pass
@@ -25,6 +26,11 @@ form_grid_templates = {
class StockEntry(StockController):
fname = 'mtn_details'
+ def onload(self):
+ if self.docstatus==1:
+ for item in self.get(self.fname):
+ item.update(get_available_qty(item.item_code,
+ item.s_warehouse))
def validate(self):
self.validate_posting_time()
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry_list.html b/erpnext/stock/doctype/stock_entry/stock_entry_list.html
index 63fc2eb14ff..cff7fe58eef 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry_list.html
+++ b/erpnext/stock/doctype/stock_entry/stock_entry_list.html
@@ -11,7 +11,7 @@
"Purchase Return": "icon-warning-sign",
"Subcontract": "icon-truck"
}[doc.purpose]; %}
-
diff --git a/erpnext/templates/form_grid/item_grid.html b/erpnext/templates/form_grid/item_grid.html
index 73e6c2efddd..c2e5d56e9dd 100644
--- a/erpnext/templates/form_grid/item_grid.html
+++ b/erpnext/templates/form_grid/item_grid.html
@@ -23,11 +23,12 @@
{% } %}
{% include "templates/form_grid/includes/visible_cols.html" %}
{% if(doc.schedule_date) { %}
-
{%= doc.get_formatted("schedule_date") %}
+
{% } %}
diff --git a/erpnext/templates/form_grid/stock_entry_grid.html b/erpnext/templates/form_grid/stock_entry_grid.html
index 59bf516ca0b..c5f3ecd8995 100644
--- a/erpnext/templates/form_grid/stock_entry_grid.html
+++ b/erpnext/templates/form_grid/stock_entry_grid.html
@@ -18,7 +18,11 @@
{%= doc.description %}
{% } %}
{% include "templates/form_grid/includes/visible_cols.html" %}
- {% if(doc.s_warehouse) { %}
+ {% if(doc.s_warehouse) { %}
{%= doc.s_warehouse || "" %}{% } %}
{% if(doc.t_warehouse) { %}