feat: remove button on import of an order
diff --git a/erpnext/accounts/doctype/payment_order/payment_order.js b/erpnext/accounts/doctype/payment_order/payment_order.js
index a5e18e8..91d7f1f 100644
--- a/erpnext/accounts/doctype/payment_order/payment_order.js
+++ b/erpnext/accounts/doctype/payment_order/payment_order.js
@@ -16,25 +16,44 @@
 			frm.add_custom_button(__('Payment Request'), function() {
 				frm.trigger("get_from_payment_request");
 			}, __("Get from"));
+
 			frm.add_custom_button(__('Payment Entry'), function() {
 				frm.trigger("get_from_payment_entry");
 			}, __("Get from"));
+
+			frm.trigger('remove_button');
 		}
 
 		// payment Entry
 		if (frm.doc.docstatus===1 && frm.doc.payment_order_type==='Payment Request') {
 			frm.add_custom_button(__('Create Payment Entries'),
-				function() {
-					frm.trigger("make_payment_records");
-				});
+			function() {
+				frm.trigger("make_payment_records");
+			});
+		}
+	},
+
+	remove_row_if_empty: function(frm) {
+		// remove if first row is empty
+		if (frm.doc.references.length > 0 && !frm.doc.references[0].reference_name) {
+			frm.doc.references = [];
+		}
+	},
+
+	remove_button: function(frm) {
+		let label = ["Payment Request", "Payment Entry"]
+
+		if (frm.doc.references.length > 0 && frm.doc.payment_order_type) {
+			label = label.reduce(x => {
+				x!= frm.doc.payment_order_type;
+				return x;
+			});
+			frm.remove_custom_button(label, "Get from");
 		}
 	},
 
 	get_from_payment_entry: function(frm) {
-		// remove if first row is empty
-		if (!frm.doc.references[0].reference_name) {
-			frm.doc.references = [];
-		}
+		frm.trigger("remove_row_if_empty");
 		erpnext.utils.map_current_doc({
 			method: "erpnext.accounts.doctype.payment_entry.payment_entry.make_payment_order",
 			source_doctype: "Payment Entry",
@@ -52,10 +71,7 @@
 	},
 
 	get_from_payment_request: function(frm) {
-		// remove if first row is empty
-		if (!frm.doc.references[0].reference_name) {
-			frm.doc.references = [];
-		}
+		frm.trigger("remove_row_if_empty")
 		erpnext.utils.map_current_doc({
 			method: "erpnext.accounts.doctype.payment_request.payment_request.make_payment_order",
 			source_doctype: "Payment Request",
@@ -116,5 +132,4 @@
 
 		dialog.show();
 	},
-
 });
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/payment_order/payment_order.json b/erpnext/accounts/doctype/payment_order/payment_order.json
index 285168f..c0dd4bc 100644
--- a/erpnext/accounts/doctype/payment_order/payment_order.json
+++ b/erpnext/accounts/doctype/payment_order/payment_order.json
@@ -79,6 +79,7 @@
    "fieldtype": "Select",
    "label": "Payment Order Type",
    "options": "\nPayment Request\nPayment Entry",
+   "read_only": 1,
    "reqd": 1
   },
   {
@@ -98,7 +99,7 @@
   }
  ],
  "is_submittable": 1,
- "modified": "2019-05-08 16:00:09.027739",
+ "modified": "2019-05-09 13:57:12.974008",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Payment Order",
diff --git a/erpnext/accounts/doctype/payment_order/regional/india.js b/erpnext/accounts/doctype/payment_order/regional/india.js
index 2b49a06..87d9cdc 100644
--- a/erpnext/accounts/doctype/payment_order/regional/india.js
+++ b/erpnext/accounts/doctype/payment_order/regional/india.js
@@ -1,30 +1,29 @@
 frappe.ui.form.on('Payment Order', {
 	refresh: function(frm) {
-        if (frm.doc.docstatus==1 && frm.doc.payment_order_type==='Payment Entry') {
-            frm.add_custom_button(__('Generate Text File'),
-				function() {
-					frm.trigger("generate_text_and_download_file");
-            });
-        }
-    },
-    generate_text_and_download_file: (frm) => {
-        return frappe.call({
-            method: "erpnext.regional.india.bank_remittance_txt.generate_report",
-            args: {
-                name: frm.doc.name
-            },
-            freeze: true,
-            callback: function(r) {
-                {
-                    frm.refresh();
-                    const a = document.createElement('a');
-                    let file_obj = r.message;
+		if (frm.doc.docstatus==1 && frm.doc.payment_order_type==='Payment Entry') {
+			frm.add_custom_button(__('Generate Text File'), function() {
+				frm.trigger("generate_text_and_download_file");
+			});
+		}
+	},
+	generate_text_and_download_file: (frm) => {
+		return frappe.call({
+			method: "erpnext.regional.india.bank_remittance_txt.generate_report",
+			args: {
+				name: frm.doc.name
+			},
+			freeze: true,
+			callback: function(r) {
+				{
+					frm.refresh();
+					const a = document.createElement('a');
+					let file_obj = r.message;
 					a.href = file_obj.file_url;
 					a.target = '_blank';
 					a.download = file_obj.file_name;
 					a.click();
 				}
-            }
-        });
-    }
+			}
+		});
+	}
 });
\ No newline at end of file