diff --git a/khetangroup/fixtures/client_script.json b/khetangroup/fixtures/client_script.json index 9bac6e2..85bd0b8 100644 --- a/khetangroup/fixtures/client_script.json +++ b/khetangroup/fixtures/client_script.json @@ -191,10 +191,10 @@ "doctype": "Client Script", "dt": "Stock Entry", "enabled": 1, - "modified": "2026-06-04 17:13:34.888843", + "modified": "2026-07-21 18:56:54.752909", "module": "khetangroup", "name": "filter apply on bom base on item name in stock entry", - "script": "frappe.ui.form.on('Stock Entry', {\n \n onload: function(frm) {\n set_item_query(frm);\n },\n\n refresh: function(frm) {\n set_item_query(frm);\n },\n \n company: function(frm) {\n set_item_query(frm);\n },\n \n\titem_name:function(frm) {\n\t \n frm.set_query(\"bom_no\", function(doc, cdn,cdt){\n let d = locals[cdn][cdt];\n return{\n filters:{\n 'item':d.item_name,\n 'docstatus':1,\n 'is_active':1,\n }\n };\n });\n\t},\n\t\n\t\n// \tcompany:function(frm){\n// \t var company = frm.doc.company;\n\t \n// \t frm.set_query('item_code', 'items', function(doc, cdt, cdn) {\n// let d = locals[cdt][cdn];\n// return{\n// \t\t\tfilters: {\n// \t\t\t 'is_stock_item': 1,\n// \t\t\t 'company': company, \n// \t\t\t}\n// };\n// \t });\n\n company: function(frm) {\n set_item_query(frm);\n\n function set_item_query(frm) {\n var company = frm.doc.company;\n \n frm.set_query('item_code', 'items', function(doc, cdt, cdn) {\n return {\n filters: {\n 'is_stock_item': 1,\n 'company': frm.doc.company\n }\n };\n });\n }\n \n \n\n\t frm.set_query(\"operation\", function(){\n // let d = locals[cdn][cdt];\n return{\n filters:{\n \n 'company': company,\n }\n }\n });\n \n // frm.set_query(\"stock_entry_type\", function(doc, cdn,cdt){\n // let d = locals[cdn][cdt];\n // return{\n // filters:{\n // \"company_\":frm.doc.company,\n // }\n // }\n // })\n \n frappe.db.get_list(\"Company Child\", {\n filters: { company: company },\n fields: [\"parent\"],\n limit: 500\n }).then(function(data) {\n if (data && data.length) {\n let valid_types = data.map(d => d.parent);\n frm.set_query(\"stock_entry_type\", function() {\n return {\n filters: [\n [\"Stock Entry Type\", \"name\", \"in\", valid_types]\n ]\n };\n });\n } else {\n // No company-specific types found — show all\n frm.set_query(\"stock_entry_type\", function() {\n return {};\n });\n }\n });\n \n // v2\n // frappe.call({\n // method: \"frappe.client.get_list\",\n // args: {\n // doctype: \"Stock Entry Type\",\n // filters: [\n // [\"Company Child\", \"company\", \"=\", company]\n // ],\n // fields: [\"name\"],\n // limit: 500\n // },\n // callback: function(r) {\n // if (r.message && r.message.length) {\n // let valid_types = r.message.map(d => d.name);\n // frm.set_query(\"stock_entry_type\", function() {\n // return {\n // filters: [\n // [\"Stock Entry Type\", \"name\", \"in\", valid_types]\n // ]\n // };\n // });\n // } else {\n // frm.set_query(\"stock_entry_type\", function() {\n // return {};\n // });\n // }\n // }\n // });\n\t \n\t},\n\toperation:function(frm){\n\t frm.set_query(\"machine\", function(doc, cdn,cdt){\n let d = locals[cdn][cdt];\n return{\n filters:{\n \n 'operation': frm.doc.operation,\n }\n }\n })\n\t}\n\t\n\t\n});\n\nfrappe.ui.form.on('Stock Entry Detail', {\n\tis_finished__item:function(frm) {\n $.each(frm.doc.items || [], function(i,d){\n \n var finished = d.is_finished__item;\n if (finished == 1){\n \n d.is_scrap_item = 0;\n d.rejected_item = 0;\n d.short_length = 0;\n d.straightner = 0;\n frm.refresh_field(\"items\");\n }\n });\n\t},\n\tis_scrap_item:function(frm){\n\t $.each(frm.doc.items || [], function(i,d){\n \n var scrap = d.is_scrap_item;\n if (scrap == 1){\n d.is_finished__item = 0;\n d.rejected_item = 0;\n d.short_length = 0;\n d.straightner = 0;\n frm.refresh_field(\"items\");\n }\n });\n\t},\n\tshort_length:function(frm){\n\t $.each(frm.doc.items || [], function(i,d){\n \n var short_length = d.short_length;\n if (short_length == 1){\n d.is_finished__item = 0;\n d.is_scrap_item = 0;\n d.rejected_item = 0;\n d.straightner = 0;\n frm.refresh_field(\"items\");\n }\n });\n\t},\n\t\n\trejected_item:function(frm){\n\t $.each(frm.doc.items || [], function(i,d){\n\t var rejected = d.rejected_item;\n\t if(rejected == 1){\n\t d.is_finished__item = 0;\n\t d.is_scrap_item = 0;\n\t d.short_length = 0;\n\t d.straightner = 0;\n\t frm.refresh_field(\"items\");\n\t }\n\t })\n\t},\n\t\n\tstraightner:function(frm){\n\t $.each(frm.doc.items || [], function(i,d){\n\t var straightner = d.straightner;\n\t if(straightner == 1){\n\t d.is_finished__item = 0;\n\t d.is_scrap_item = 0;\n\t d.short_length = 0;\n\t d.rejected_item = 0;\n\t frm.refresh_field(\"items\");\n\t }\n\t })\n\t},\n\t\n\t\n\t\n\t\n});\n\n\n\n\n\n", + "script": "frappe.ui.form.on('Stock Entry', {\n \n onload: function(frm) {\n set_item_query(frm);\n },\n\n refresh: function(frm) {\n set_item_query(frm);\n },\n \n company: function(frm) {\n set_item_query(frm);\n },\n \n\titem_name:function(frm) {\n\t \n frm.set_query(\"bom_no\", function(doc, cdn,cdt){\n let d = locals[cdn][cdt];\n return{\n filters:{\n 'item':d.item_name,\n 'docstatus':1,\n 'is_active':1,\n }\n };\n });\n\t},\n\t\n\t\n// \tcompany:function(frm){\n// \t var company = frm.doc.company;\n\t \n// \t frm.set_query('item_code', 'items', function(doc, cdt, cdn) {\n// let d = locals[cdt][cdn];\n// return{\n// \t\t\tfilters: {\n// \t\t\t 'is_stock_item': 1,\n// \t\t\t 'company': company, \n// \t\t\t}\n// };\n// \t });\n\n company: function(frm) {\n var company = frm.doc.company; \n set_item_query(frm);\n\n function set_item_query(frm) {\n var company = frm.doc.company;\n \n frm.set_query('item_code', 'items', function(doc, cdt, cdn) {\n return {\n filters: {\n 'is_stock_item': 1,\n 'company': frm.doc.company\n }\n };\n });\n }\n \n\n\t frm.set_query(\"operation\", function(){\n // let d = locals[cdn][cdt];\n return{\n filters:{ 'company': company, }\n }\n });\n \n // frm.set_query(\"stock_entry_type\", function(doc, cdn,cdt){\n // let d = locals[cdn][cdt];\n // return{\n // filters:{\n // \"company_\":frm.doc.company,\n // }\n // }\n // })\n \n // given below og 1\n // frappe.db.get_list(\"Company Child\", {\n // filters: { company: company },\n // fields: [\"parent\"],\n // limit: 500\n // }).then(function(data) {\n // if (data && data.length) {\n // let valid_types = data.map(d => d.parent);\n // frm.set_query(\"stock_entry_type\", function() {\n // return {\n // filters: [\n // [\"Stock Entry Type\", \"name\", \"in\", valid_types]\n // ]\n // };\n // });\n // } else {\n // // No company-specific types found — show all\n // frm.set_query(\"stock_entry_type\", function() {\n // return {};\n // });\n // }\n // });\n \n // v2 currently testing \n frappe.call({\n method: \"frappe.client.get_list\",\n args: {\n doctype: \"Stock Entry Type\",\n filters: [\n [\"Company Child\", \"company_\", \"=\", company]\n ],\n fields: [\"name\"],\n limit: 500\n },\n callback: function(r) {\n if (r.message && r.message.length) {\n let valid_types = r.message.map(d => d.name);\n frm.set_query(\"stock_entry_type\", function() {\n return {\n filters: [\n [\"Stock Entry Type\", \"name\", \"in\", valid_types]\n ]\n };\n });\n } else {\n frm.set_query(\"stock_entry_type\", function() {\n return {};\n });\n }\n }\n });\n\t \n\t},\n\toperation:function(frm){\n\t frm.set_query(\"machine\", function(doc, cdn,cdt){\n let d = locals[cdn][cdt];\n return{\n filters:{\n \n 'operation': frm.doc.operation,\n }\n }\n })\n\t}\n\t\n\t\n});\n\nfrappe.ui.form.on('Stock Entry Detail', {\n\tis_finished__item:function(frm) {\n $.each(frm.doc.items || [], function(i,d){\n \n var finished = d.is_finished__item;\n if (finished == 1){\n \n d.is_scrap_item = 0;\n d.rejected_item = 0;\n d.short_length = 0;\n d.straightner = 0;\n frm.refresh_field(\"items\");\n }\n });\n\t},\n\tis_scrap_item:function(frm){\n\t $.each(frm.doc.items || [], function(i,d){\n \n var scrap = d.is_scrap_item;\n if (scrap == 1){\n d.is_finished__item = 0;\n d.rejected_item = 0;\n d.short_length = 0;\n d.straightner = 0;\n frm.refresh_field(\"items\");\n }\n });\n\t},\n\tshort_length:function(frm){\n\t $.each(frm.doc.items || [], function(i,d){\n \n var short_length = d.short_length;\n if (short_length == 1){\n d.is_finished__item = 0;\n d.is_scrap_item = 0;\n d.rejected_item = 0;\n d.straightner = 0;\n frm.refresh_field(\"items\");\n }\n });\n\t},\n\t\n\trejected_item:function(frm){\n\t $.each(frm.doc.items || [], function(i,d){\n\t var rejected = d.rejected_item;\n\t if(rejected == 1){\n\t d.is_finished__item = 0;\n\t d.is_scrap_item = 0;\n\t d.short_length = 0;\n\t d.straightner = 0;\n\t frm.refresh_field(\"items\");\n\t }\n\t })\n\t},\n\t\n\tstraightner:function(frm){\n\t $.each(frm.doc.items || [], function(i,d){\n\t var straightner = d.straightner;\n\t if(straightner == 1){\n\t d.is_finished__item = 0;\n\t d.is_scrap_item = 0;\n\t d.short_length = 0;\n\t d.rejected_item = 0;\n\t frm.refresh_field(\"items\");\n\t }\n\t })\n\t},\n\t\n\t\n\t\n\t\n});\n\n\n\n\n\n", "view": "Form" }, { @@ -389,10 +389,10 @@ "doctype": "Client Script", "dt": "Quotation", "enabled": 1, - "modified": "2023-11-25 12:51:26.241332", + "modified": "2026-07-20 10:01:08.519165", "module": "khetangroup", "name": "new_quotation", - "script": "\rfrappe.ui.form.on('Quotation Item', {\r item_code:function(frm, cdt, cdn) {\r let item = locals[cdt][cdn]\r let item_code = item.item_code\r frappe.call({\r method:\"inches\",\r args:{\"item_code\":item_code},\r callback: function(r) {\r update_item_code_data(item,r)\r },\r freeze: false,\r freeze_message: \"\",\r async: true,\r })\r\t}\r});\r\rfunction update_item_code_data(item,result){\r let item_data =result['item']\r \r // item.name = item_data['name']\r item.products_type = item_data[\"products_type\"]\r item.owner = item_data['owner']\r item.creation = item_data['creation']\r item.modified = item_data['modified']\r item.modified_by = item_data['modified_by']\r item.naming_series = item_data['naming_series']\r item.item_code = item_data['item_code']\r item.uom = item_data['stock_uom']\r item.item_name = item_data['item_name']\r item.company = item_data['company']\r item.item_group = item_data['item_group']\r item.is_nil_exempt = item_data['is_nil_exempt']\r item.is_non_gst = item_data['is_non_gst']\r item.item_main = item_data['item_main']\r item.item_type = item_data['item_type'] \r item.stock_uom = item_data['stock_uom']\r item.disabled = item_data['disabled']\r item.allow_alternative_item = item_data['allow_alternative_item']\r item.is_stock_item = item_data['is_stock_item']\r item.has_variants = item_data['has_variants']\r item.include_item_in_manufacturing = item_data['include_item_in_manufacturing']\r item.opening_stock = item_data['opening_stock']\r item.valuation_rate = item_data['valuation_rate']\r item.standard_rate = item_data['standard_rate']\r item.is_fixed_asset = item_data['is_fixed_asset']\r item.auto_create_assets = item_data['auto_create_assets']\r item.is_grouped_asset = item_data['is_grouped_asset']\r item.over_delivery_receipt_allowance = item_data['over_delivery_receipt_allowance']\r item.over_billing_allowance = item_data['over_billing_allowance']\r item.description = item_data['description']\r item.size = item_data['size']\r item.shape_type = item_data['shape_type']\r item.default_set = item_data['default_set']\r item.normal_margin = item_data['normal_margin']\r item.grade = item_data['grade']\r item.thickness = item_data['thickness']\r item.special_margin = item_data['special_margin']\r item.shelf_life_in_days = item_data['shelf_life_in_days']\r item.end_of_life = item_data['end_of_life']\r item.default_material_request_type = item_data['default_material_request_type']\r item.valuation_method = item_data['valuation_method']\r item.weight_per_unit = item_data['weight_per_unit']\r item.weight_special_customer = item_data['weight_special_customer']\r item.weight_uom = item_data['weight_uom']\r item.allow_negative_stock = item_data['allow_negative_stock']\r item.has_batch_no = item_data['has_batch_no']\r item.create_new_batch = item_data['create_new_batch']\r item.has_expiry_date = item_data['has_expiry_date']\r item.retain_sample = item_data['retain_sample']\r item.sample_quantity = item_data['sample_quantity']\r item.has_serial_no = item_data['has_serial_no']\r item.variant_based_on = item_data['variant_based_on']\r item.min_order_qty = item_data['min_order_qty']\r item.safety_stock = item_data['safety_stock']\r item.is_purchase_item = item_data['is_purchase_item']\r item.lead_time_days = item_data['lead_time_days']\r item.last_purchase_rate = item_data['last_purchase_rate']\r item.is_customer_provided_item = item_data['is_customer_provided_item']\r item.delivered_by_supplier = item_data['delivered_by_supplier']\r item.enable_deferred_expense = item_data['enable_deferred_expense']\r item.no_of_months_exp = item_data['no_of_months_exp']\r item.grant_commission = item_data['grant_commission']\r item.is_sales_item = item_data['is_sales_item']\r item.max_discount = item_data['max_discount']\r item.enable_deferred_revenue = item_data['enable_deferred_revenue']\r item.no_of_months = item_data['no_of_months']\r item.inspection_required_before_purchase = item_data['inspection_required_before_purchase']\r item.inspection_required_before_delivery = item_data['inspection_required_before_delivery']\r item.is_sub_contracted_item = item_data['is_sub_contracted_item']\r item.customer_code = item_data['customer_code']\r item.published_in_website = item_data['published_in_website']\r item.total_projected_qty = item_data['total_projected_qty']\r\r cur_frm.fields_dict['items'].grid.grid_rows_by_docname[item.name].refresh()\r\r}\r\r\rlet item_code_change_default = erpnext.TransactionController.prototype.item_code\rlet pricing_rule_default = erpnext.TransactionController.prototype.apply_pricing_rule\r\rfrappe.ui.form.on('Quotation', {\r refresh:function(frm){\r if(frm.doc.company_unit === \"Unit 2\"){\r \r frm.get_field('items').grid.grid_pagination.page_length = 250\r erpnext.TransactionController.prototype.apply_pricing_rule = function (){}\r erpnext.TransactionController.prototype.item_code = function (){}\r }else{\r frm.get_field('items').grid.grid_pagination.page_length = 50;\r erpnext.TransactionController.prototype.item_code = item_code_change_default\r erpnext.TransactionController.prototype.apply_pricing_rule = pricing_rule_default\r }\r frm.get_field('items').grid.reset_grid();\r \r },\r\tcompany:function(frm) {\r\t if(frm.doc.company_unit === \"Unit 2\"){\r\t frm.set_query(\"item_code\",\"items\",function(){\r\t return{\r\t filters:{\r\t 'item_group':\"Products\",\r\t 'is_sales_item':1\t \r\t }\t \r\t };\r });\r frm.get_field('items').grid.grid_pagination.page_length = 250\r frm.get_field('items').grid.reset_grid();\r erpnext.TransactionController.prototype.apply_pricing_rule = function (){}\r erpnext.TransactionController.prototype.item_code = function (){}\r\t }else{\r\t frm.get_field('items').grid.grid_pagination.page_length = 50;\r\t erpnext.TransactionController.prototype.item_code = item_code_change_default\r\t erpnext.TransactionController.prototype.apply_pricing_rule = pricing_rule_default\r\t }\r\t frm.get_field('items').grid.reset_grid();\r\t refresh_field(\"items\");\r }\r\t\r})\r\rfrappe.ui.form.on(\"Quotation Item\", \"pcs\",function(frm, cdt, cdn){\r var d = locals[cdt][cdn];\r var rate202 = cur_frm.doc.rate202;\r // console.log(rate202)\r var rate304 = cur_frm.doc.rate304;\r // console.log(rate304)\r var rate316 = cur_frm.doc.rate316;\r // console.log(rate316)\r var sheet202 = cur_frm.doc.sheet202;\r // console.log(sheet202)\r var sheet304 = cur_frm.doc.sheet304;\r // console.log(sheet304)\r // var item_type = d.item_type;\r var margin = 0;\r var rate = 0;\r // console.log(\"This is Special margin\", margin);\r // console.log(d.special_margin)\r if (d.pipe == 1 && d.item_202 == 1 || d.pipe == 1 && d.item_304 == 1 || d.pipe == 1 && d.item_316 || d.sheet == 1 && d.item_202 || d.sheet == 1 && d.item_304 ){\r var cust_type = cur_frm.doc.is_special;\r var general = cur_frm.doc.is_general;\r \r // console.log(\"pcs are \"+d.pcs);\r var pcs=d.pcs;\r if (cust_type==1){\r \r var item = d.item_code;\r // console.log(\"This is Special margin\"+ d.special_margin);\r // frappe.call({\r \t\t // method:\"weight\",\r \t\t // args:{\"item\":item},\r \t\t //}).then(records => {\r // alert(records[\"message\"]);\r var weight = d.weight_special_customer\r d.weight_per_unit = weight;\r \r // console.log(\"this is qty send\")\r // margin = d.special_margin;\r // alert(\"Hello this is margin\",margin)\r \r if(d.pipe==1 && d.item_202 == 1){\r rate = rate202 + d.special_margin;\r \r // console.log(\"202p\"+rate)\r }\r else if(d.pipe==1 && d.item_304 == 1){\r rate = rate304 + d.special_margin;\r // console.log(\"304p\"+rate)\r }\r else if(d.pipe==1 && d.item_316 == 1){\r rate = rate316 + d.special_margin;\r // console.log(\"316p\"+rate)\r }\r else if(d.sheet==1 && d.item_202 == 1){\r rate = sheet202 + d.special_margin;\r // console.log(\"202s\"+rate)\r }\r else if(d.sheet==1 && d.item_304 == 1){\r rate = sheet304 + d.special_margin;\r // console.log(\"304s\"+rate)\r }\r // console.log(\"this is rate \"+rate);\r var actual_w = d.weight;\r if (actual_w === 0){\r // console.log(\"No Actual Weight\");\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r // alert(weight*pcs);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", (weight*pcs)-actual_w);\r frappe.model.set_value(cdt, cdn, \"rate1\",rate);\r }\r else{\r // console.log(\"yes Actual Weight\");\r var rate1 = d.rate1;\r // alert(weight);\r // console.log(\"rate\"+ rate1);\r // console.log(\"Actual Weight\", actual_w);\r var amt2 = rate1 * actual_w;\r // console.log(\"Actual Weight\", amt2);\r var rate21 = amt2/pcs;\r // console.log(\"rate21\", rate21);\r // console.log(\"weight per unit: \", weight);\r var total_weight = weight * pcs;\r var we_diff=total_weight-actual_w;\r // console.log(\"Weight difference\"+ we_diff);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r // alert(weight);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate21);\r }\r \t\t //}); \r }\r \r else if (general === 1){\r // console.log(\"Hey You are General customer\");\r // var pcs=d.pcs;\r var weight = d.weight_per_unit;\r // alert(\"This are pcs of general\"+pcs);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs); \r margin = d.normal_margin;\r if(d.pipe==1 && d.item_202 == 1){\r rate = rate202 + d.normal_margin;\r // console.log(\"202p\"+rate)\r }\r else if(d.pipe==1 && d.item_304 == 1){\r rate = rate304 + d.normal_margin;\r // console.log(\"304p\"+rate)\r }\r else if(d.pipe==1 && d.item_316 == 1){\r rate = rate316 + d.normal_margin;\r // console.log(\"316p\"+rate)\r }\r else if(d.sheet==1 && d.item_202 == 1){\r rate = sheet202 + d.normal_margin;\r // console.log(\"202s\"+rate)\r }\r else if(d.sheet==1 && d.item_304 == 1){\r rate = sheet304 + d.normal_margin;\r // console.log(\"304s\"+rate)\r }\r // console.log(\"this is rate \"+rate);\r var actual_w = d.weight;\r if (actual_w === 0){\r // console.log(\"No Actual Weight\");\r // alert(\"Weight per unit\"+ d.weight_per_unit)\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r // alert(d.weight_per_unit*pcs);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", (d.weight_per_unit*pcs)-actual_w);\r frappe.model.set_value(cdt, cdn, \"rate1\",rate);\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r }\r else{\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight);\r // console.log(\"yes Actual Weight\");\r var rate1 = d.rate1;\r // alert(rate1);\r // console.log(\"rate\"+ rate1);\r // console.log(\"Actual Weight\", actual_w);\r var amt2 = rate1 * actual_w;\r // console.log(\"Amount\", amt2);\r var rate21 = amt2/pcs;\r // console.log(\"rate21\", rate21);\r // console.log(\"weight per unit: \", weight);\r var total_weight = weight * pcs;\r // console.log(\"Pcs Present\"+ pcs);\r // console.log(\"Total Weight of system\"+ total_weight);\r var we_diff = total_weight-actual_w;\r // console.log(\"Weight Difference\"+ we_diff);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate21);\r }\r }\r }\r else{\r var pcs=d.pcs;\r var weight_bactual= d.weight;\r var weight_per_b = d.weight_per_unit;\r var we_diff_b;\r if (weight_bactual === 0){\r // console.log(\"No Actual Weight\");\r var rate_bluster = 0;\r var select_item_type = cur_frm.doc.select_item_type;\r var item_type = d.item_type;\r if (select_item_type === \"Blustor And Pillar\"){\r // console.log(\"hey catch you\")\r if(item_type==\"550 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm55202;\r }\r else if(item_type==\"650 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm65202;\r }\r else if(item_type==\"700 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm70202;\r }\r else if(item_type==\"900 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm90202;\r }\r else if(item_type==\"1100 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm110202;\r }\r else if(item_type==\"700 Grm Sq Blustor 202\"){\r rate_bluster = cur_frm.doc.sqbgm70202;\r }\r else if(item_type==\"800 Grm Sq Blustor 202\"){\r rate_bluster = cur_frm.doc.sqbgm65202;\r }\r else if(item_type==\"900 Grm Sq Blustor 202\"){\r rate_bluster = cur_frm.doc.sqbgm90202;\r }\r else if(item_type==\"1100 Grm Sq Blustor 202\"){\r rate_bluster = cur_frm.doc.sqbgm110202;\r }\r else if(item_type==\"550 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm55304;\r }\r else if(item_type==\"650 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm65304;\r }\r else if(item_type==\"700 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm70304;\r }\r else if(item_type==\"900 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm90304;\r }\r else if(item_type==\"1100 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm110304;\r }\r else if(item_type==\"700 Grm Sq Blustor 304\"){\r rate_bluster = cur_frm.doc.sqbgm70304;\r }\r else if(item_type==\"800 Grm Sq Blustor 304\"){\r rate_bluster = cur_frm.doc.sqbgm65304;\r }\r else if(item_type==\"900 Grm Sq Blustor 304\"){\r rate_bluster = cur_frm.doc.sqbgm90304;\r }\r else if(item_type==\"1100 Grm Sq Blustor 304\"){\r rate_bluster = cur_frm.doc.sqbgm110304;\r }\r else if(item_type==\"1.1 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar11202;\r }\r else if(item_type==\"1.3 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar13202;\r }\r else if(item_type==\"1.5 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar15202;\r }\r else if(item_type==\"1.7 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar17202;\r }\r else if(item_type==\"2.2 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar22202;\r }\r else if(item_type==\"1.1 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar11304;\r }\r else if(item_type==\"1.3 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar13304;\r }\r else if(item_type==\"1.5 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar15304;\r }\r else if(item_type==\"1.7 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar17304;\r }\r else if(item_type==\"2.2 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar22304;\r }\r }\r // alert(\"this is added\"+rate_bluster);\r we_diff_b = (weight_per_b*pcs)\r // console.log(rate_bluster*pcs)\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rate_bluster*pcs);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate_bluster);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate_bluster);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff_b);\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r }\r else{\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight);\r // console.log(\"yes Actual Weight\");\r var rateb= d.rate1;\r \r \r var weight_per_b = d.weight_per_unit\r we_diff_b = (weight_per_b*pcs)-weight_bactual\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rateb*pcs);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff_b);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rateb);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs); \r }\r \r }\r // alert(\"This is special size block\");\r \r \r \r \r \r // var cust_type = cur_frm.doc.customer_type;\r // if (cust_type==\"Special\"){\r // // alert(\"hey you are special customer\")\r // var item = d.item_code;\r // frappe.call({\r\t\t // method:\"weight\",\r\t\t // args:{\"item\":item},\r\t\t // }).then(records => {\r // // alert(records[\"message\"]);\r // var weight = records['msg']\r // d.weight_per_unit = weight;\r // // console.log(d.pcs)\r // var pcs=d.pcs;\r // console.log(\"this is qty send\")\r // frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r\t\t // }); \r // }\r // else if (cust_type==\"General\"){\r // var pcs1=d.pcs;\r // frappe.model.set_value(cdt, cdn, \"qty\", pcs1); \r // }\r \r \r \r \r \r // else if(cust_type==\"General\"){\r \r // }\r // var default_set = d.default_set\r // var total_set = qty_box * default_set;\r // var total_set = qty_box\r // var total_inches = total_set * d.special_size;\r // alert(total_inches);\r // alert(total_set);\r // frappe.model.set_value(cdt, cdn, \"total_set\", total_set);\r // frappe.model.set_value(cdt, cdn, \"qty\", total_set);\r // frappe.model.set_value(cdt, cdn, \"total_inches\",total_inches);\r // if (d.price_list_rate !== \"\"){\r // // alert(\"hey\")\r // var rate=d.price_amt*d.special_size;\r // frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate);\r // }\r});\r\rfrappe.ui.form.on(\"Quotation Item\", \"weight\",function(frm, cdt, cdn){\r var d = locals[cdt][cdn];\r var select_item_type = cur_frm.doc.select_item_type;\r var margin = 0;\r var rate202 = cur_frm.doc.rate202;\r var rate304 = cur_frm.doc.rate304;\r var rate316 = cur_frm.doc.rate316;\r var sheet202 = cur_frm.doc.sheet202;\r var sheet304 = cur_frm.doc.sheet304;\r var cust_type = cur_frm.doc.is_special;\r var general = cur_frm.doc.is_general;\r var item_type = d.item_type;\r var rate = 0;\r var pcs = d.pcs;\r \r if (cust_type==1){\r margin = d.special_margin;\r }\r else{\r margin = d.normal_margin;\r }\r if (select_item_type==\"Guage and Sheet\"){\r var we = d.weight;\r \r var total_weight = d.weight_per_unit * pcs;\r var we_diff=total_weight-we;\r \r \r if(d.pipe == 1 && d.item_202 == 1){\r rate = rate202 + margin;\r }\r else if(d.pipe == 1 && d.item_304 == 1){\r rate = rate304 + margin;\r }\r else if(d.pipe == 1 && d.item_316 == 1){\r rate = rate316 + margin;\r }\r else if(d.sheet == 1 && d.item_202 == 1){\r rate = sheet202 + margin;\r }\r else if(d.sheet == 1 && d.item_304 == 1){\r rate = sheet304 + margin;\r }\r \r var amt2 = rate * we;\r var rate21 = we_diff / pcs;\r var rate22 = d.weight_per_unit - rate21;\r var rate23 = rate22 * rate;\r \r if (pcs===0){\r // console.log(\"No PCS\");\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rate*we);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r rate = 0;\r rate23 = 0;\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate23);\r }\r else{\r // console.log(\"Yes PCS\");\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rate*we);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate23);\r }\r \r \r }\r else if(select_item_type==\"Blustor And Pillar\"){\r \r if(item_type==\"550 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm55202;\r }\r else if(item_type==\"650 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm65202;\r }\r else if(item_type==\"700 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm70202;\r }\r else if(item_type==\"900 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm90202;\r }\r else if(item_type==\"1100 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm110202;\r }\r else if(item_type==\"700 Grm Sq Blustor 202\"){\r rate = cur_frm.doc.sqbgm70202;\r }\r else if(item_type==\"800 Grm Sq Blustor 202\"){\r rate = cur_frm.doc.sqbgm65202;\r }\r else if(item_type==\"900 Grm Sq Blustor 202\"){\r rate = cur_frm.doc.sqbgm90202;\r }\r else if(item_type==\"1100 Grm Sq Blustor 202\"){\r rate = cur_frm.doc.sqbgm110202;\r }\r else if(item_type==\"550 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm55304;\r }\r else if(item_type==\"650 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm65304;\r }\r else if(item_type==\"700 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm70304;\r }\r else if(item_type==\"900 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm90304;\r }\r else if(item_type==\"1100 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm110304;\r }\r else if(item_type==\"700 Grm Sq Blustor 304\"){\r rate = cur_frm.doc.sqbgm70304;\r }\r else if(item_type==\"800 Grm Sq Blustor 304\"){\r rate = cur_frm.doc.sqbgm65304;\r }\r else if(item_type==\"900 Grm Sq Blustor 304\"){\r rate = cur_frm.doc.sqbgm90304;\r }\r else if(item_type==\"1100 Grm Sq Blustor 304\"){\r rate = cur_frm.doc.sqbgm110304;\r }\r else if(item_type==\"1.1 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar11202;\r }\r else if(item_type==\"1.3 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar13202;\r }\r else if(item_type==\"1.5 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar15202;\r }\r else if(item_type==\"1.7 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar17202;\r }\r else if(item_type==\"2.2 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar22202;\r }\r else if(item_type==\"1.1 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar11304;\r }\r else if(item_type==\"1.3 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar13304;\r }\r else if(item_type==\"1.5 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar15304;\r }\r else if(item_type==\"1.7 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar17304;\r }\r else if(item_type==\"2.2 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar22304;\r }\r var total_weight1 = d.weight_per_unit * d.pcs;\r var we_diff1 = total_weight1 - d.weight;\r var rate233 = rate;\r // console.log(\"This is total weight\", total_weight1);\r // console.log(\"This is weight difference\", we_diff1);\r // console.log(\"This is rate\", rate);\r // console.log(\"This is rate233\", rate233);\r // frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r \r \r \r if (pcs === 0){\r // console.log(\"NO PCS\")\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff1);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r rate233=0;\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate233);\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rate233*we);\r // frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r // frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r // rate = 0;\r // rate23 = 0;\r // frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate23);\r }\r else{\r // console.log(\"Yes PCS\")\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff1);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate233);\r }\r }\r});\rfrappe.ui.form.on('Quotation Item', {\r item_code: function(frm, cdt, cdn) {\r var row = locals[cdt][cdn];\r \r var b = row.item_type\r console.log(b)\r if(row.item_type){\r frappe.call({\r \t method:\"item_types\",\r \t args:{\"item_type\":b},\r \t }).then(records =>{\r \t if(records.pipe == 1){\r \t \r \t row.pipe = records.pipe;\r \t }\r \t if(records.sheet == 1){\r \t \r \t row.sheet = records.sheet;\r \t }\r \t if(records.blustor == 1){\r \t row.blustor = records.blustor;\r \t }\r \t if(records.pillar == 1){\r \t row.pillar = records.pillar;\r \t }\r \t if(records.item_202 == 1){\r \t row.item_202 = records.item_202;\r \t }\r \t if(records.item_304 == 1){\r \t row.item_304 = records.item_304;\r \t }\r \t if(records.item_316 == 1){\r \t row.item_316 = records.item_316;\r \t }\r \t \r \t console.log(records.pipe)\r \t frm.refresh_field(\"items\");\r \t })\r }\r }\r});\r", + "script": "\rfrappe.ui.form.on('Quotation Item', {\r item_code:function(frm, cdt, cdn) {\r let item = locals[cdt][cdn]\r let item_code = item.item_code\r frappe.call({\r method:\"inches\",\r args:{\"item_code\":item_code},\r callback: function(r) {\r update_item_code_data(item,r)\r },\r freeze: false,\r freeze_message: \"\",\r async: true,\r })\r\t}\r});\r\rfunction update_item_code_data(item,result){\r let item_data =result['item']\r \r // item.name = item_data['name']\r item.products_type = item_data[\"products_type\"]\r frappe.db.get_value(\r \"Products Type\",\r item.products_type,\r \"select_product_type\",\r function(r) {\r item.products_parent_type = r.select_product_type;\r cur_frm.fields_dict.items.grid.grid_rows_by_docname[item.name].refresh();\r }\r );\r item.owner = item_data['owner']\r item.creation = item_data['creation']\r item.modified = item_data['modified']\r item.modified_by = item_data['modified_by']\r item.naming_series = item_data['naming_series']\r item.item_code = item_data['item_code']\r item.uom = item_data['stock_uom']\r item.item_name = item_data['item_name']\r item.company = item_data['company']\r item.item_group = item_data['item_group']\r item.is_nil_exempt = item_data['is_nil_exempt']\r item.is_non_gst = item_data['is_non_gst']\r item.item_main = item_data['item_main']\r item.item_type = item_data['item_type'] \r item.stock_uom = item_data['stock_uom']\r item.disabled = item_data['disabled']\r item.allow_alternative_item = item_data['allow_alternative_item']\r item.is_stock_item = item_data['is_stock_item']\r item.has_variants = item_data['has_variants']\r item.include_item_in_manufacturing = item_data['include_item_in_manufacturing']\r item.opening_stock = item_data['opening_stock']\r item.valuation_rate = item_data['valuation_rate']\r item.standard_rate = item_data['standard_rate']\r item.is_fixed_asset = item_data['is_fixed_asset']\r item.auto_create_assets = item_data['auto_create_assets']\r item.is_grouped_asset = item_data['is_grouped_asset']\r item.over_delivery_receipt_allowance = item_data['over_delivery_receipt_allowance']\r item.over_billing_allowance = item_data['over_billing_allowance']\r item.description = item_data['description']\r item.size = item_data['size']\r item.shape_type = item_data['shape_type']\r item.default_set = item_data['default_set']\r item.normal_margin = item_data['normal_margin']\r item.grade = item_data['grade']\r item.thickness = item_data['thickness']\r item.special_margin = item_data['special_margin']\r item.shelf_life_in_days = item_data['shelf_life_in_days']\r item.end_of_life = item_data['end_of_life']\r item.default_material_request_type = item_data['default_material_request_type']\r item.valuation_method = item_data['valuation_method']\r item.weight_per_unit = item_data['weight_per_unit']\r item.weight_special_customer = item_data['weight_special_customer']\r item.weight_uom = item_data['weight_uom']\r item.allow_negative_stock = item_data['allow_negative_stock']\r item.has_batch_no = item_data['has_batch_no']\r item.create_new_batch = item_data['create_new_batch']\r item.has_expiry_date = item_data['has_expiry_date']\r item.retain_sample = item_data['retain_sample']\r item.sample_quantity = item_data['sample_quantity']\r item.has_serial_no = item_data['has_serial_no']\r item.variant_based_on = item_data['variant_based_on']\r item.min_order_qty = item_data['min_order_qty']\r item.safety_stock = item_data['safety_stock']\r item.is_purchase_item = item_data['is_purchase_item']\r item.lead_time_days = item_data['lead_time_days']\r item.last_purchase_rate = item_data['last_purchase_rate']\r item.is_customer_provided_item = item_data['is_customer_provided_item']\r item.delivered_by_supplier = item_data['delivered_by_supplier']\r item.enable_deferred_expense = item_data['enable_deferred_expense']\r item.no_of_months_exp = item_data['no_of_months_exp']\r item.grant_commission = item_data['grant_commission']\r item.is_sales_item = item_data['is_sales_item']\r item.max_discount = item_data['max_discount']\r item.enable_deferred_revenue = item_data['enable_deferred_revenue']\r item.no_of_months = item_data['no_of_months']\r item.inspection_required_before_purchase = item_data['inspection_required_before_purchase']\r item.inspection_required_before_delivery = item_data['inspection_required_before_delivery']\r item.is_sub_contracted_item = item_data['is_sub_contracted_item']\r item.customer_code = item_data['customer_code']\r item.published_in_website = item_data['published_in_website']\r item.total_projected_qty = item_data['total_projected_qty']\r\r cur_frm.fields_dict['items'].grid.grid_rows_by_docname[item.name].refresh()\r\r}\r\r\rlet item_code_change_default = erpnext.TransactionController.prototype.item_code\rlet pricing_rule_default = erpnext.TransactionController.prototype.apply_pricing_rule\r\rfrappe.ui.form.on('Quotation', {\r refresh:function(frm){\r if(frm.doc.company_unit === \"Unit 2\"){\r \r frm.get_field('items').grid.grid_pagination.page_length = 250\r erpnext.TransactionController.prototype.apply_pricing_rule = function (){}\r erpnext.TransactionController.prototype.item_code = function (){}\r }else{\r frm.get_field('items').grid.grid_pagination.page_length = 50;\r erpnext.TransactionController.prototype.item_code = item_code_change_default\r erpnext.TransactionController.prototype.apply_pricing_rule = pricing_rule_default\r }\r frm.get_field('items').grid.reset_grid();\r \r },\r\tcompany:function(frm) {\r\t if(frm.doc.company_unit === \"Unit 2\"){\r\t frm.set_query(\"item_code\",\"items\",function(){\r\t return{\r\t filters:{\r\t 'item_group':\"Products\",\r\t 'is_sales_item':1\t \r\t }\t \r\t };\r });\r frm.get_field('items').grid.grid_pagination.page_length = 250\r frm.get_field('items').grid.reset_grid();\r erpnext.TransactionController.prototype.apply_pricing_rule = function (){}\r erpnext.TransactionController.prototype.item_code = function (){}\r\t }else{\r\t frm.get_field('items').grid.grid_pagination.page_length = 50;\r\t erpnext.TransactionController.prototype.item_code = item_code_change_default\r\t erpnext.TransactionController.prototype.apply_pricing_rule = pricing_rule_default\r\t }\r\t frm.get_field('items').grid.reset_grid();\r\t refresh_field(\"items\");\r }\r\t\r})\r\rfrappe.ui.form.on(\"Quotation Item\", \"pcs\",function(frm, cdt, cdn){\r var d = locals[cdt][cdn];\r var rate202 = cur_frm.doc.rate202;\r // console.log(rate202)\r var rate304 = cur_frm.doc.rate304;\r // console.log(rate304)\r var rate316 = cur_frm.doc.rate316;\r // console.log(rate316)\r var sheet202 = cur_frm.doc.sheet202;\r // console.log(sheet202)\r var sheet304 = cur_frm.doc.sheet304;\r // console.log(sheet304)\r // var item_type = d.item_type;\r var margin = 0;\r var rate = 0;\r // console.log(\"This is Special margin\", margin);\r // console.log(d.special_margin)\r if (d.pipe == 1 && d.item_202 == 1 || d.pipe == 1 && d.item_304 == 1 || d.pipe == 1 && d.item_316 || d.sheet == 1 && d.item_202 || d.sheet == 1 && d.item_304 ){\r var cust_type = cur_frm.doc.is_special;\r var general = cur_frm.doc.is_general;\r \r // console.log(\"pcs are \"+d.pcs);\r var pcs=d.pcs;\r if (cust_type==1){\r \r var item = d.item_code;\r // console.log(\"This is Special margin\"+ d.special_margin);\r // frappe.call({\r \t\t // method:\"weight\",\r \t\t // args:{\"item\":item},\r \t\t //}).then(records => {\r // alert(records[\"message\"]);\r var weight = d.weight_special_customer\r d.weight_per_unit = weight;\r \r // console.log(\"this is qty send\")\r // margin = d.special_margin;\r // alert(\"Hello this is margin\",margin)\r \r if(d.pipe==1 && d.item_202 == 1){\r rate = rate202 + d.special_margin;\r \r // console.log(\"202p\"+rate)\r }\r else if(d.pipe==1 && d.item_304 == 1){\r rate = rate304 + d.special_margin;\r // console.log(\"304p\"+rate)\r }\r else if(d.pipe==1 && d.item_316 == 1){\r rate = rate316 + d.special_margin;\r // console.log(\"316p\"+rate)\r }\r else if(d.sheet==1 && d.item_202 == 1){\r rate = sheet202 + d.special_margin;\r // console.log(\"202s\"+rate)\r }\r else if(d.sheet==1 && d.item_304 == 1){\r rate = sheet304 + d.special_margin;\r // console.log(\"304s\"+rate)\r }\r // console.log(\"this is rate \"+rate);\r var actual_w = d.weight;\r if (actual_w === 0){\r // console.log(\"No Actual Weight\");\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r // alert(weight*pcs);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", (weight*pcs)-actual_w);\r frappe.model.set_value(cdt, cdn, \"rate1\",rate);\r }\r else{\r // console.log(\"yes Actual Weight\");\r var rate1 = d.rate1;\r // alert(weight);\r // console.log(\"rate\"+ rate1);\r // console.log(\"Actual Weight\", actual_w);\r var amt2 = rate1 * actual_w;\r // console.log(\"Actual Weight\", amt2);\r var rate21 = amt2/pcs;\r // console.log(\"rate21\", rate21);\r // console.log(\"weight per unit: \", weight);\r var total_weight = weight * pcs;\r var we_diff=total_weight-actual_w;\r // console.log(\"Weight difference\"+ we_diff);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r // alert(weight);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate21);\r }\r \t\t //}); \r }\r \r else if (general === 1){\r // console.log(\"Hey You are General customer\");\r // var pcs=d.pcs;\r var weight = d.weight_per_unit;\r // alert(\"This are pcs of general\"+pcs);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs); \r margin = d.normal_margin;\r if(d.pipe==1 && d.item_202 == 1){\r rate = rate202 + d.normal_margin;\r // console.log(\"202p\"+rate)\r }\r else if(d.pipe==1 && d.item_304 == 1){\r rate = rate304 + d.normal_margin;\r // console.log(\"304p\"+rate)\r }\r else if(d.pipe==1 && d.item_316 == 1){\r rate = rate316 + d.normal_margin;\r // console.log(\"316p\"+rate)\r }\r else if(d.sheet==1 && d.item_202 == 1){\r rate = sheet202 + d.normal_margin;\r // console.log(\"202s\"+rate)\r }\r else if(d.sheet==1 && d.item_304 == 1){\r rate = sheet304 + d.normal_margin;\r // console.log(\"304s\"+rate)\r }\r // console.log(\"this is rate \"+rate);\r var actual_w = d.weight;\r if (actual_w === 0){\r // console.log(\"No Actual Weight\");\r // alert(\"Weight per unit\"+ d.weight_per_unit)\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r // alert(d.weight_per_unit*pcs);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", (d.weight_per_unit*pcs)-actual_w);\r frappe.model.set_value(cdt, cdn, \"rate1\",rate);\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r }\r else{\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight);\r // console.log(\"yes Actual Weight\");\r var rate1 = d.rate1;\r // alert(rate1);\r // console.log(\"rate\"+ rate1);\r // console.log(\"Actual Weight\", actual_w);\r var amt2 = rate1 * actual_w;\r // console.log(\"Amount\", amt2);\r var rate21 = amt2/pcs;\r // console.log(\"rate21\", rate21);\r // console.log(\"weight per unit: \", weight);\r var total_weight = weight * pcs;\r // console.log(\"Pcs Present\"+ pcs);\r // console.log(\"Total Weight of system\"+ total_weight);\r var we_diff = total_weight-actual_w;\r // console.log(\"Weight Difference\"+ we_diff);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate21);\r }\r }\r }\r else{\r var pcs=d.pcs;\r var weight_bactual= d.weight;\r var weight_per_b = d.weight_per_unit;\r var we_diff_b;\r if (weight_bactual === 0){\r // console.log(\"No Actual Weight\");\r var rate_bluster = 0;\r var select_item_type = cur_frm.doc.select_item_type;\r var item_type = d.item_type;\r if (select_item_type === \"Blustor And Pillar\"){\r // console.log(\"hey catch you\")\r if(item_type==\"550 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm55202;\r }\r else if(item_type==\"650 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm65202;\r }\r else if(item_type==\"700 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm70202;\r }\r else if(item_type==\"900 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm90202;\r }\r else if(item_type==\"1100 Grm R Blustor 202\"){\r rate_bluster = cur_frm.doc.rbgm110202;\r }\r else if(item_type==\"700 Grm Sq Blustor 202\"){\r rate_bluster = cur_frm.doc.sqbgm70202;\r }\r else if(item_type==\"800 Grm Sq Blustor 202\"){\r rate_bluster = cur_frm.doc.sqbgm65202;\r }\r else if(item_type==\"900 Grm Sq Blustor 202\"){\r rate_bluster = cur_frm.doc.sqbgm90202;\r }\r else if(item_type==\"1100 Grm Sq Blustor 202\"){\r rate_bluster = cur_frm.doc.sqbgm110202;\r }\r else if(item_type==\"550 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm55304;\r }\r else if(item_type==\"650 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm65304;\r }\r else if(item_type==\"700 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm70304;\r }\r else if(item_type==\"900 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm90304;\r }\r else if(item_type==\"1100 Grm R Blustor 304\"){\r rate_bluster = cur_frm.doc.rbgm110304;\r }\r else if(item_type==\"700 Grm Sq Blustor 304\"){\r rate_bluster = cur_frm.doc.sqbgm70304;\r }\r else if(item_type==\"800 Grm Sq Blustor 304\"){\r rate_bluster = cur_frm.doc.sqbgm65304;\r }\r else if(item_type==\"900 Grm Sq Blustor 304\"){\r rate_bluster = cur_frm.doc.sqbgm90304;\r }\r else if(item_type==\"1100 Grm Sq Blustor 304\"){\r rate_bluster = cur_frm.doc.sqbgm110304;\r }\r else if(item_type==\"1.1 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar11202;\r }\r else if(item_type==\"1.3 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar13202;\r }\r else if(item_type==\"1.5 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar15202;\r }\r else if(item_type==\"1.7 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar17202;\r }\r else if(item_type==\"2.2 Master Pillar 202\"){\r rate_bluster = cur_frm.doc.mpillar22202;\r }\r else if(item_type==\"1.1 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar11304;\r }\r else if(item_type==\"1.3 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar13304;\r }\r else if(item_type==\"1.5 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar15304;\r }\r else if(item_type==\"1.7 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar17304;\r }\r else if(item_type==\"2.2 Master Pillar 304\"){\r rate_bluster = cur_frm.doc.mpillar22304;\r }\r }\r // alert(\"this is added\"+rate_bluster);\r we_diff_b = (weight_per_b*pcs)\r // console.log(rate_bluster*pcs)\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rate_bluster*pcs);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate_bluster);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate_bluster);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff_b);\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r }\r else{\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight);\r // console.log(\"yes Actual Weight\");\r var rateb= d.rate1;\r \r \r var weight_per_b = d.weight_per_unit\r we_diff_b = (weight_per_b*pcs)-weight_bactual\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rateb*pcs);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff_b);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rateb);\r frappe.model.set_value(cdt, cdn, \"qty\", pcs); \r }\r \r }\r // alert(\"This is special size block\");\r \r \r \r \r \r // var cust_type = cur_frm.doc.customer_type;\r // if (cust_type==\"Special\"){\r // // alert(\"hey you are special customer\")\r // var item = d.item_code;\r // frappe.call({\r\t\t // method:\"weight\",\r\t\t // args:{\"item\":item},\r\t\t // }).then(records => {\r // // alert(records[\"message\"]);\r // var weight = records['msg']\r // d.weight_per_unit = weight;\r // // console.log(d.pcs)\r // var pcs=d.pcs;\r // console.log(\"this is qty send\")\r // frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r // frappe.model.set_value(cdt, cdn, \"weight_per_unit\", weight); \r\t\t // }); \r // }\r // else if (cust_type==\"General\"){\r // var pcs1=d.pcs;\r // frappe.model.set_value(cdt, cdn, \"qty\", pcs1); \r // }\r \r \r \r \r \r // else if(cust_type==\"General\"){\r \r // }\r // var default_set = d.default_set\r // var total_set = qty_box * default_set;\r // var total_set = qty_box\r // var total_inches = total_set * d.special_size;\r // alert(total_inches);\r // alert(total_set);\r // frappe.model.set_value(cdt, cdn, \"total_set\", total_set);\r // frappe.model.set_value(cdt, cdn, \"qty\", total_set);\r // frappe.model.set_value(cdt, cdn, \"total_inches\",total_inches);\r // if (d.price_list_rate !== \"\"){\r // // alert(\"hey\")\r // var rate=d.price_amt*d.special_size;\r // frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate);\r // }\r});\r\rfrappe.ui.form.on(\"Quotation Item\", \"weight\",function(frm, cdt, cdn){\r var d = locals[cdt][cdn];\r var select_item_type = cur_frm.doc.select_item_type;\r var margin = 0;\r var rate202 = cur_frm.doc.rate202;\r var rate304 = cur_frm.doc.rate304;\r var rate316 = cur_frm.doc.rate316;\r var sheet202 = cur_frm.doc.sheet202;\r var sheet304 = cur_frm.doc.sheet304;\r var cust_type = cur_frm.doc.is_special;\r var general = cur_frm.doc.is_general;\r var item_type = d.item_type;\r var rate = 0;\r var pcs = d.pcs;\r \r if (cust_type==1){\r margin = d.special_margin;\r }\r else{\r margin = d.normal_margin;\r }\r if (select_item_type==\"Guage and Sheet\"){\r var we = d.weight;\r \r var total_weight = d.weight_per_unit * pcs;\r var we_diff=total_weight-we;\r \r \r if(d.pipe == 1 && d.item_202 == 1){\r rate = rate202 + margin;\r }\r else if(d.pipe == 1 && d.item_304 == 1){\r rate = rate304 + margin;\r }\r else if(d.pipe == 1 && d.item_316 == 1){\r rate = rate316 + margin;\r }\r else if(d.sheet == 1 && d.item_202 == 1){\r rate = sheet202 + margin;\r }\r else if(d.sheet == 1 && d.item_304 == 1){\r rate = sheet304 + margin;\r }\r \r var amt2 = rate * we;\r var rate21 = we_diff / pcs;\r var rate22 = d.weight_per_unit - rate21;\r var rate23 = rate22 * rate;\r \r if (pcs===0){\r // console.log(\"No PCS\");\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rate*we);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r rate = 0;\r rate23 = 0;\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate23);\r }\r else{\r // console.log(\"Yes PCS\");\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rate*we);\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate23);\r }\r \r \r }\r else if(select_item_type==\"Blustor And Pillar\"){\r \r if(item_type==\"550 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm55202;\r }\r else if(item_type==\"650 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm65202;\r }\r else if(item_type==\"700 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm70202;\r }\r else if(item_type==\"900 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm90202;\r }\r else if(item_type==\"1100 Grm R Blustor 202\"){\r rate = cur_frm.doc.rbgm110202;\r }\r else if(item_type==\"700 Grm Sq Blustor 202\"){\r rate = cur_frm.doc.sqbgm70202;\r }\r else if(item_type==\"800 Grm Sq Blustor 202\"){\r rate = cur_frm.doc.sqbgm65202;\r }\r else if(item_type==\"900 Grm Sq Blustor 202\"){\r rate = cur_frm.doc.sqbgm90202;\r }\r else if(item_type==\"1100 Grm Sq Blustor 202\"){\r rate = cur_frm.doc.sqbgm110202;\r }\r else if(item_type==\"550 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm55304;\r }\r else if(item_type==\"650 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm65304;\r }\r else if(item_type==\"700 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm70304;\r }\r else if(item_type==\"900 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm90304;\r }\r else if(item_type==\"1100 Grm R Blustor 304\"){\r rate = cur_frm.doc.rbgm110304;\r }\r else if(item_type==\"700 Grm Sq Blustor 304\"){\r rate = cur_frm.doc.sqbgm70304;\r }\r else if(item_type==\"800 Grm Sq Blustor 304\"){\r rate = cur_frm.doc.sqbgm65304;\r }\r else if(item_type==\"900 Grm Sq Blustor 304\"){\r rate = cur_frm.doc.sqbgm90304;\r }\r else if(item_type==\"1100 Grm Sq Blustor 304\"){\r rate = cur_frm.doc.sqbgm110304;\r }\r else if(item_type==\"1.1 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar11202;\r }\r else if(item_type==\"1.3 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar13202;\r }\r else if(item_type==\"1.5 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar15202;\r }\r else if(item_type==\"1.7 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar17202;\r }\r else if(item_type==\"2.2 Master Pillar 202\"){\r rate = cur_frm.doc.mpillar22202;\r }\r else if(item_type==\"1.1 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar11304;\r }\r else if(item_type==\"1.3 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar13304;\r }\r else if(item_type==\"1.5 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar15304;\r }\r else if(item_type==\"1.7 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar17304;\r }\r else if(item_type==\"2.2 Master Pillar 304\"){\r rate = cur_frm.doc.mpillar22304;\r }\r var total_weight1 = d.weight_per_unit * d.pcs;\r var we_diff1 = total_weight1 - d.weight;\r var rate233 = rate;\r // console.log(\"This is total weight\", total_weight1);\r // console.log(\"This is weight difference\", we_diff1);\r // console.log(\"This is rate\", rate);\r // console.log(\"This is rate233\", rate233);\r // frappe.model.set_value(cdt, cdn, \"qty\", pcs);\r \r \r \r if (pcs === 0){\r // console.log(\"NO PCS\")\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff1);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r rate233=0;\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate233);\r frappe.model.set_value(cdt, cdn, \"estimated_amount\", rate233*we);\r // frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff);\r // frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r // rate = 0;\r // rate23 = 0;\r // frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate23);\r }\r else{\r // console.log(\"Yes PCS\")\r frappe.model.set_value(cdt, cdn, \"weight_diff\", we_diff1);\r frappe.model.set_value(cdt, cdn, \"rate1\", rate);\r frappe.model.set_value(cdt, cdn, \"price_list_rate\", rate233);\r }\r }\r});\rfrappe.ui.form.on('Quotation Item', {\r item_code: function(frm, cdt, cdn) {\r var row = locals[cdt][cdn];\r \r var b = row.item_type\r console.log(b)\r if(row.item_type){\r frappe.call({\r \t method:\"item_types\",\r \t args:{\"item_type\":b},\r \t }).then(records =>{\r \t if(records.pipe == 1){\r \t \r \t row.pipe = records.pipe;\r \t }\r \t if(records.sheet == 1){\r \t \r \t row.sheet = records.sheet;\r \t }\r \t if(records.blustor == 1){\r \t row.blustor = records.blustor;\r \t }\r \t if(records.pillar == 1){\r \t row.pillar = records.pillar;\r \t }\r \t if(records.item_202 == 1){\r \t row.item_202 = records.item_202;\r \t }\r \t if(records.item_304 == 1){\r \t row.item_304 = records.item_304;\r \t }\r \t if(records.item_316 == 1){\r \t row.item_316 = records.item_316;\r \t }\r \t \r \t console.log(records.pipe)\r \t frm.refresh_field(\"items\");\r \t })\r }\r }\r});\r", "view": "Form" }, { @@ -432,8 +432,8 @@ "docstatus": 0, "doctype": "Client Script", "dt": "Sales Invoice", - "enabled": 1, - "modified": "2024-05-21 15:28:00.671421", + "enabled": 0, + "modified": "2026-07-27 10:13:05.343134", "module": "khetangroup", "name": "User Wise Field Read-only", "script": "frappe.ui.form.on('Sales Invoice', {\n\trefresh(frm) {\n\t if (frappe.session.user === \"paulkamdev7@gmail.com\") {\n frm.fields.forEach(function(field) {\n field.df.read_only = 1;\n });\n frm.set_df_property('scan_barcode', 'read_only', 0);\n\n // Refresh form fields\n frm.refresh_fields();\n }\n\t}\n})", @@ -449,5 +449,16 @@ "name": "Qrcode Sales Invoice Scan", "script": "frappe.ui.form.on('Sales Invoice', {\n scan_barcode: function(frm) {\n if (frm.doc.material_transfer == \"Qrcode Against\") {\n var scan_barcode = frm.doc.scan_barcode;\n var barcodeString = scan_barcode; // Assuming scan_barcode is the full barcode string\n\n // Split the barcode string into key-value pairs\n var pairs = barcodeString.split(', ');\n var barcodeData = {};\n\n pairs.forEach(function(pair) {\n var [key, value] = pair.split(' = ');\n if (key && value) {\n barcodeData[key.trim()] = value.trim();\n }\n });\n\n var qrcode_name = barcodeData['Qrcode Name'];\n var qrcode_id = barcodeData['Qrcode Id'];\n var extractedValue = barcodeData['Product Name'];\n // Assuming qrcode_id is a string and not a JSON array\n var scan_value_list = [];\n \n console.log(qrcode_name);\n // console.log(scan_value_list);\n frappe.call({\n method: 'frappe.client.get',\n args: {\n doctype: \"Qr Code\",\n name: qrcode_name\n },\n callback: function(r) {\n console.log(r);\n if (r.message) {\n scan_value_list.push(qrcode_id);\n\n // Parse r.message.scan_value as JSON and concatenate its elements\n if (r.message.scan_value) {\n JSON.parse(r.message.scan_value).forEach(function(id) {\n scan_value_list.push(id);\n });\n }\n\n // Remove null or empty string values from the array\n scan_value_list = scan_value_list.filter(Boolean);\n\n console.log(scan_value_list);\n\n // Check if the scanned qrcode_id already exists in the scan_value_list\n if (r.message.scan_value && r.message.scan_value.includes(qrcode_id)) {\n \n } else {\n if (extractedValue) {\n frappe.call({\n method: \"frappe.client.get\",\n args: {\n doctype: \"Item\",\n name: extractedValue\n },\n callback: function(response) {\n if (response.message) {\n var item = response.message;\n var set_box_value = item.set_box;\n\n var existingItemIndex = -1;\n frm.doc.items.forEach(function(item, index) {\n if (item.item_code === extractedValue) {\n existingItemIndex = index;\n }\n });\n\n if (existingItemIndex !== -1) {\n if (frm.doc.items[existingItemIndex].material_transfer === 0) {\n var currentQty_first = 0;\n var newQty_first = parseFloat(currentQty_first) + parseFloat(set_box_value);\n if (newQty_first <= frm.doc.items[existingItemIndex].quotation_qty) {\n frappe.model.set_value(frm.doc.items[existingItemIndex].doctype, frm.doc.items[existingItemIndex].name, 'qty', newQty_first);\n } else {\n frappe.throw(\"Qty of sales invoice is more than quotation qty\");\n }\n } else {\n var currentQty = frm.doc.items[existingItemIndex].qty || 0;\n var newQty = parseFloat(currentQty) + parseFloat(set_box_value);\n if (newQty <= frm.doc.items[existingItemIndex].quotation_qty) {\n frappe.model.set_value(frm.doc.items[existingItemIndex].doctype, frm.doc.items[existingItemIndex].name, 'qty', newQty);\n } else {\n frappe.throw(\"Qty of sales invoice is more than quotation qty\");\n }\n }\n\n frappe.model.set_value(frm.doc.items[existingItemIndex].doctype, frm.doc.items[existingItemIndex].name, 'material_transfer', 1);\n } else {\n frappe.throw(\"No Any Item Here !!\")\n frm.refresh_field('items');\n }\n } else {\n frappe.msgprint(__('Item not found: ' + extractedValue));\n }\n\n frm.refresh_field('items');\n frm.save();\n frappe.db.set_value(\"Qr Code\", qrcode_name, 'scan_value', scan_value_list);\n frm.doc.scan_barcode = '';\n }\n });\n }\n \n \n \n }\n }\n }\n });\n frm.doc.scan_barcode = '';\n \n }\n }\n});\n", "view": "Form" + }, + { + "docstatus": 0, + "doctype": "Client Script", + "dt": "Stock Entry", + "enabled": 1, + "modified": "2026-07-21 19:22:22.174207", + "module": "khetangroup", + "name": "set basic rate checkbox to 1", + "script": "frappe.ui.form.on('Stock Entry', {\n before_save: function(frm) {\n // Only run for Repack or Manufacture entries\n if ([\"Repack\", \"Manufacture\", \"Manufacturing\"].includes(frm.doc.stock_entry_type)) {\n \n // Loop through the items table\n frm.doc.items.forEach(item => {\n // Identify Finished Goods (has a target warehouse, but no source warehouse)\n if (item.t_warehouse && !item.s_warehouse) {\n \n // Force-tick the validation checkbox\n frappe.model.set_value(item.doctype, item.name, 'set_basic_rate_manually', 1);\n }\n });\n\n // Refresh the grid so the changes render visually on screen\n frm.refresh_field(\"items\");\n }\n }\n});\n", + "view": "Form" } ] \ No newline at end of file diff --git a/khetangroup/fixtures/print_format.json b/khetangroup/fixtures/print_format.json index ebbbbce..2e8b9ed 100644 --- a/khetangroup/fixtures/print_format.json +++ b/khetangroup/fixtures/print_format.json @@ -1,750 +1,750 @@ [ - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format .letter-head {\n margin-bottom: 10px;\n}", - "custom_format": 0, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Material Request", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": "[{\"fieldname\": \"print_heading_template\", \"fieldtype\": \"Custom HTML\", \"options\": \"
\\t\\t\\t\\t

Material Request

{{ doc.name }}\\t\\t\\t\\t

\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"material_request_type\", \"print_hide\": 0, \"label\": \"Purpose\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"transaction_date\", \"print_hide\": 0, \"label\": \"Transaction Date\"}, {\"fieldname\": \"schedule_date\", \"print_hide\": 0, \"label\": \"Required By\"}, {\"fieldtype\": \"Section Break\", \"label\": \"Items\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"scan_barcode\", \"print_hide\": 0, \"label\": \"Scan Barcode\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"set_from_warehouse\", \"print_hide\": 0, \"label\": \"Set Source Warehouse\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"set_warehouse\", \"print_hide\": 0, \"label\": \"Set Target Warehouse\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"items\", \"print_hide\": 0, \"label\": \"Items\", \"visible_columns\": [{\"fieldname\": \"item_code\", \"print_width\": \"100px\", \"print_hide\": 0}, {\"fieldname\": \"schedule_date\", \"print_width\": \"100px\", \"print_hide\": 0}, {\"fieldname\": \"description\", \"print_width\": \"250px\", \"print_hide\": 0}, {\"fieldname\": \"qty\", \"print_width\": \"80px\", \"print_hide\": 0}, {\"fieldname\": \"from_warehouse\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"warehouse\", \"print_width\": \"100px\", \"print_hide\": 0}, {\"fieldname\": \"uom\", \"print_width\": \"70px\", \"print_hide\": 0}, {\"fieldname\": \"manufacturer\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"manufacturer_part_no\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"project\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"item_group\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"rate\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"amount\", \"print_width\": \"\", \"print_hide\": 0}]}, {\"fieldname\": \"_custom_html\", \"print_hide\": 0, \"label\": \"Custom HTML\", \"fieldtype\": \"HTML\", \"options\": \"

Total Amount : {{ doc.total_amount }}

\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"terms\", \"print_hide\": 0, \"label\": \"Terms and Conditions Content\"}, {\"fieldtype\": \"Section Break\", \"label\": \"Status\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"transfer_status\", \"print_hide\": 0, \"label\": \"Transfer Status\"}, {\"fieldtype\": \"Section Break\", \"label\": \"Reference\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"work_order\", \"print_hide\": 0, \"label\": \"Work Order\"}]", - "html": "", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.864652", - "module": "khetangroup", - "name": "Unit-1 Material Request", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Stock Entry", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

{{ doc.stock_entry_type or \" \"}}

\n {%- if doc.returnable_or_non_returnable == \"Returnable\" -%}\n

Returnable

\n {% else %}\n

Non Returnable

\n {% endif %}\n \n {{ doc.company_address_display or \"\" }}
\n \n

Date: {{frappe.utils.get_datetime(doc.posting_date).strftime(' %d-%m- %Y') }}

\n

Voucher No: {{ doc.name }}

\n

Material Issue To :     {{ doc.company or \" \" }}

\n \n \n

{{ doc.company_address_display or \" \"}}

\n

Returnable Or Non Returnable :-    {{ doc.returnable_or_non_returnable }}

\n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
\n SI No Description Of MaterialQTY. OutUOMRemarks
{{ item.idx or \" \" }}{{ item.item_name or \" \" }}{{ item.qty or \" \" }} {{ item.uom or \" \" }}{{ item.remarks or \" \" }}
\n \n Remarks: {{ doc.remarks or \" \" }}\n
\n \n Authorized Signature..\n
\n \n
\n \n Signature..\n
\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.840605", - "module": "khetangroup", - "name": "Material Issue", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format td, .print-format th {\r padding: 3px !important; \r}\r.print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r.print-format .table-bordered {\r border: 1px solid black;\r}\r\r.print-format .letter-head {\r margin-bottom: 10px;\r}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Quotation", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Name:{{ doc.customer_name or \" \" }}Date:\n {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}
Address:{{ doc.address_display or \"\"}}Quotation-Id:{{ doc.name }}
{% if doc.brand %} Brand: {% endif %}{{ doc.brand or \"\" }}QTY:{{ doc.total_qty or \" \" }}
\n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n
Item Name ColourTotal SetTotal\"RateDisc%Disc Amt.Bill AMT.Weight In Kg
{{ item.item_name or \" \" }}{{ item.color or \" \" }}{{ item.total_set or \" \" }}{{ item.total_inches or \" \" }}{{ item.price_amt or \" \" }}{{ item.discount_percentage or \" \" }}%{{ item.discount_amt or \" \" }}{{ item.amount or \" \" }} {{ item.custom_box_wise_cal_weight or \" \" }}
Total:{{ doc.items|sum(attribute='total_set')}}{{ doc.items|sum(attribute='total_inches')}} {{ doc.items|sum(attribute='discount_amt')}}{{ doc.total or \" \" }}
Add GST 18%:{{doc.total_taxes_and_charges or \" \" }}
Net Payable:{{ doc.grand_total or \" \" }}
\n

{% if doc.terms %} Terms And Condition: {% endif %}{{ doc.terms or \" \" }}

\n \n ", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2024-05-30 19:12:47.555057", - "module": "khetangroup", - "name": "Quotation Unit-1", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r.print-format th {\r color: black;\r font-weight: normal;\r border-bottom-width: 1px !important;\r}\r.print-format .table-bordered {\r border: 1px solid black;\r}\r.print-format td, .print-format th {\r padding: 3px !important; \r \r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Sales Invoice", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n\n {% if letter_head and not no_letterhead -%}\n {% if print_settings.repeat_header_footer %}\n
\n
{{ letter_head }}
\n {%- endif %}\n {%- endif %}\n\n
\n

TAX INVOICE

\n
\n\n \n\n \n \n\n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n \n\n \n \n\n \n \n\n \n \n\n \n \n \n \n \n \n \n \n \n\n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n {% endfor %}\n\n \n \n \n \n \n \n\n \n\n \n \n\n \n \n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n\n \n \n\n
\n

{{ doc.company}}

\n

{{ doc.company_address_display or \"\" }}

\n
\n Invoice No.:\n

{{doc.name }}

\n
\n Invoice Dated:-{{frappe.utils.get_datetime(doc.posting_date ).strftime(' %d-%m- %Y') }}\n
\n Delivery Note:\n

\n
\n Policy No:{{ doc.policy_no or \" \" }}\n
\n Buyer's Order No:\n

{{ doc.po_no or \" \" }}

\n
\n Buyer's Order Dated:{{frappe.utils.get_datetime(doc.po_date ).strftime(' %d-%m- %Y') }}\n
\n Dispatched Through:\n

{{ doc.dispatched_though or \" \"}}

\n
\n Vehicle No:{{ doc.vehicle_no or \"\" }}\n
\n Dispatch Document No:-\n

{{ doc.lr_no or \" \" }}

\n
\n Destination:- {{ doc.destination or \" \" }}\n
\n Mode/Terms of Payment:-\n

{{ doc.mode_terms_of_payment or \" \" }}

\n
\n Delivery Note Date:-\n {{frappe.utils.get_datetime(doc.delivery_date ).strftime(' %d-%m- %Y') }}\n
\n

Consignee

\n

{{ doc.customer_name or \" \" }}

\n

{{ doc.address_display or \" \" }}

\n
\n

Terms Of Delivery: {{ doc.terms or \" \" }}

\n\n {% if doc.print_discount_amount_ %}\n

Total Discount Amount:   {{ doc.total_discount_amount }}

\n {% endif %}\n
Sr No.Description Of GoodsHSN/SACQuantityUOMRateAmount
{{item.idx or \" \"}}{{item.item_name or \" \" }}{{item.gst_hsn_code or \" \"}}{{item.qty or \" \"}}{{ item.uom or \" \" }}{{item.rate or \" \"}}{{item.amount or \" \" }}
\n {%- for item in doc.taxes -%}\n {% if item.account_head == \"Output Tax IGST - KG\" %}\n

IGST

\n {% elif item.account_head == \"Output Tax CGST - KG\" %}\n

CGST

\n {% elif item.account_head == \"Output Tax SGST - KG\" %}\n

SGST

\n {% endif %}\n {% endfor %}\n
\n {%- for item in doc.taxes -%}\n

{{ item.tax_amount or \" \" }}

\n {% endfor %}\n
Total{{ doc.base_rounded_total or \" \" }}
\n

Amount Chargable (In Word): {{ frappe.utils.money_in_words(doc.grand_total) }}

\n
{{ doc.other_charges_calculation or \" \" }}
\n Tax Amount (in Words):{{ frappe.utils.money_in_words(doc.total_taxes_and_charges) }}\n
\n\n

\n Remarks: {{ doc.remarks or \"\"}}\n

\n\n {% if doc.company %}\n {% set doc_company = frappe.get_doc('Company', doc.company) %}\n {% else %}\n {% set doc_company = {} %}\n {% endif %}\n\n

Company's PAN:  {{ doc_company.pan or \" \" }}

\n\n Declaration:\n

{{ doc.remarks or \" \"}}

\n\n

\n Authorised Signatory\n

\n\n
\n\n Company's Bank Details\n\n {% if doc.bank_account %}\n {% set doc_ac = frappe.get_doc('Bank Account', doc.bank_account) %}\n {% else %}\n {% set doc_ac = {} %}\n {% endif %}\n\n

Bank Name:  {{ doc_ac.bank or \" \"}}

\n

A/C No :  {{ doc_ac.bank_account_no or \" \" }}

\n

Branch Ifsc Code:  {{ doc_ac.branch_code or \" \" }}

\n\n For {{doc.company }}\n\n
\n\n \n\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2026-05-22 13:19:08.440238", - "module": "khetangroup", - "name": "Sales Invoice Unit-1", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": "\r.pd{\r width:740px!important;\r margin: 0px 15px 0px;\r}\r.print-format td, .print-format th {\r padding: 1px !important; \r \r}\r\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 0px;\r}\r.print-format p {\r margin: 0px 0px 0px;\r}\r\r.print-format .row:not(.section-break) {\r line-height: 1;\r margin-top: 2px !important;\r}\r@media print {\r .pd{\r width:678px!important;\r margin: 0px 15px 0px;\r}\r \r }\r", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Quotation", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

OFFICE Quotation

\n
\n
\n

Customer Name:   {{ doc.customer_name }}

\n

Date:   {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}

\n {% if doc.select_item_type ==\"Guage and Sheet\" %}\n

Details of Pipe and Sheet:

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% for item in doc.items|unique(attribute='item_type') %}\n {% if item.item_type==\"Sheet 202\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Sheet 304\" %}\n \n \n \n {% endif %}\n {% endfor %}\n \n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 202\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 304\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 316\" %}\n \n \n {% endif %}\n {% endfor %} \n
{{ item.item_type }}{{ (doc.sheet202 /1.18)| round(2) }}
{{ item.item_type}} {{ (doc.sheet304/1.18)| round(2) or \"\"}}
{{ item.item_type}}{{ (doc.rate202/1.18)| round(2) or \"\"}}
{{ item.item_type}} {{ (doc.rate304/1.18)| round(2) or \"\"}}
{{ item.item_type}} {{ (doc.rate316/1.18)| round(2) or \"\"}}
\n {% else %}\n \n {% endif %}\n \n
\n
\n \n \n \n \n \n \n \n \n {% if doc.select_item_type == \"Blustor And Pillar\" %}\n \n {% elif doc.select_item_type == \"Guage and Sheet\" %}\n \n {% endif %}\n \n \n \n \n \n \n \n {% if doc.select_item_type == \"Guage and Sheet\" %}\n \n \n \n {% endif %}\n \n \n \n {% if doc.select_item_type == \"Blustor And Pillar\" %}\n \n {% elif doc.select_item_type == \"Guage and Sheet\" %}\n \n {% endif %}\n \n \n \n \n \n \n \n
GradeActual WeightTotal Amount
BlustorPipe202{{ doc.pipe_202_actual_w }}{{ doc.pipe_202_total_amount|round(2, 'floor') }}
304{{ doc.pipe_304_actual_w }}{{ doc.pipe_304_total_amount|round(2, 'floor') }}
316{{ doc.pipe_316_actual_w }}{{ doc.pipe_316_total_amount|round(2, 'floor') }}
PillarSheet202{{ doc.sheet_202_actual_w }}{{ doc.sheet_202_total_amount|round(2, 'floor')}}
304{{ doc.sheet_304_actual_w }}{{ doc.sheet_304_total_amount|round(2, 'floor') }}
\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Grand Total: \u20b9{{ doc.grand_total}}
G.Weight: {{ doc.total_sold_weight}}
Total: \u20b9{{ \"{:,.2f}\".format(doc.total)}}
Freight: {% for item in doc.taxes if item.account_head==\"Freight and Forwarding Charges - SU2\" %}\n \u20b9{{ item.tax_amount }}\n {% else %}\n {% endfor %}
TCS: {% for item in doc.taxes if item.account_head==\"TCS - SU2\" %}\n \u20b9{{ item.tax_amount }}\n {% else %}\n {% endfor %}
202: {{ doc.quantity202 }}
304: {{ doc.quantity304}}
316: {{ doc.quantity316}}
Total Items: {{ doc.total_no_items}}
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
Sr.noItem CodeGradeSizeThicknessWeight Per Unit\tW DiffWeightPCSRateTotal Amount

{{ item.idx or \" \" }}

{{ item.item_code or \" \" }}

{{ item.grade or \" \" }}

{{ item.size or \" \" }}

{{ item.thickness or \" \" }}

{{ item.weight_per_unit or \" \" }}

{{ item.weight_diff|round(2, 'floor')}}

{{ item.weight }}

{{ item.pcs|int}}

{{ item.rate1 or \" \" }}

{{ item.amount |round(2, 'floor') }}

\n
\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:45.113541", - "module": "khetangroup", - "name": "Office Unit 2", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Stock Entry", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

{{ doc.stock_entry_type }}

\n Party Address : {{ doc.party_address or \" \" }}
\n \n

Date: {{frappe.utils.get_datetime(doc.posting_date).strftime(' %d-%m- %Y') }}

\n

Voucher No:{{ doc.voucher_no }}

\n

Name:{{ doc.name }}

\n

Compnay Address : {{ doc.company }}

\n \n \n

{{ doc.company_address_display or \" \"}}

\n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
\n SI No Description Of MaterialQTY. OutUOMRemarks
{{ item.idx }}{{ item.item_name }}{{ item.qty }} {{ item.uom }}
\n Remarks: {{ doc.remarks or \" \" }}\n
\n \n Authorized Signature..\n
\n \n
\n \n Signature..\n
\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.815605", - "module": "khetangroup", - "name": "Material Received For Supplier", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r.print-format th {\r color: black;\r font-weight: normal;\r border-bottom-width: 1px !important;\r}\r.print-format .table-bordered {\r border: 1px solid black;\r}\r.print-format td, .print-format th {\r padding: 3px !important; \r \r}\r\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Delivery Note", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

DELIVERY NOTE

\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n {% endfor %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n

{{ doc.company}}

\n

{{ doc.company_address_display }}

\n
Delivery Note No:- {{doc.name or \" \"}}
E-way Bill No:- {{ doc.ewaybill or \" \"}}
Dated:- {{ frappe.utils.get_datetime(doc.posting_date).strftime('%d-%m-%Y') }}
Reference No And Date:{{ doc.reference_no or \" \" }}   {{ doc.reference_date or \"\"}}Other Reference(s):{{ doc.other_reference or \" \" }}
Buyer's Order No:{{ doc.po_no or \" \"}}Dated: {{ frappe.utils.get_datetime(doc.po_date).strftime('%d-%m-%Y')}}
Dispatch Doc No:- {{ doc.lr_no or \" \"}}Dispatch Through:- {{ doc.dispatch_through or \" \" }}
Bill Of Lading/LR-RR No: {{ doc.bill_of_lading_lr_no or \" \"}}Mode/Terms Of Payment:{{ doc.mode_of_terms_and_payments or \" \"}}
Destination:- {{ doc.destination or \" \" }}Motor Vehicle No:-{{ doc.vehicle_no or \" \" }}
Terms Of Delivery:

{{ doc.terms or \" \" }}

Consignee(Ship To ):-

\n

{{ doc.customer_name }}

\n

{{ doc.shipping_address or \"\" }}

\n

Buyer (Bill To ):-

\n

{{ doc.customer_name or \" \" }}

\n

{{ doc.address_display or \" \" }}

\n \n Place Of Supply:- {{ doc.place_of_supply or \" \" }}\n
Sr No.Description Of GoodsHSN/SACQuantityRatePerAmount
{{item.idx or \" \" }}{{item.item_name or \" \" }}{{item.gst_hsn_code}}{{item.qty}} {{ item.uom }}{{item.rate}}{{ item.uom }}{{item.amount}}

CGST

\n

SGST

\n

Rounding Off

{%- for item in doc.taxes -%}\n

{{ item.tax_amount}}

\n \n {% endfor %}

{{ doc. base_rounding_adjustment }}

Total{{ doc.base_rounded_total }}

Amount Chargable (In Word):\n {{ frappe.utils.money_in_words(doc.grand_total) }}

{{ doc.other_charges_calculation or \" \" }}
Tax Amount (in Words):{{ frappe.utils.money_in_words(doc.total_taxes_and_charges) }}\n \n \n

{% set doc_company = frappe.get_doc('Company', doc.company) %} Company's PAN:  {{ doc_company.pan }}

\n \n
Recd. in Good Condition

For Khetan Udyog

\n

Authorised Signatory

\n \n \n \n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.780062", - "module": "khetangroup", - "name": "Delivery Note Unit-2", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format td, .print-format th {\r padding: 1px !important;\r}\r\r.print-format .letter-head {\r margin-bottom: 0px;\r}\r.print-format p {\r margin: 0px 0px 0px;\r}\r.pd{\r width:700px!important;\r margin: 0px 15px 0px;\r}\r.print-format .row:not(.section-break) {\r line-height: 1;\r margin-top: 5px !important;\r}\r@media print {\r .pd{\r width:675px!important;\r margin: 0px 15px 0px;\r}\r \r }", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Quotation", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

Party Quotation

\n
\n
\n

Customer Name:   {{ doc.customer_name }}

\n

Date:   {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
202: {{ doc.quantity202|int }}
304: {{ doc.quantity304|int}}
316: {{ doc.quantity316|int}}
Total Items: {{ doc.total_no_items|int}}
\n \n
\n
\n \n \n \n \n \n \n {% if doc.select_item_type == \"Blustor And Pillar\" %}\n \n {% elif doc.select_item_type == \"Guage and Sheet\" %}\n \n {% endif %}\n \n \n \n \n \n \n \n {% if doc.select_item_type == \"Guage and Sheet\" %}\n \n \n \n {% endif %}\n \n \n \n {% if doc.select_item_type == \"Blustor And Pillar\" %}\n \n {% elif doc.select_item_type == \"Guage and Sheet\" %}\n \n {% endif %}\n \n \n \n \n \n \n \n
GradeActual WeightTotal Amount
BlustorPipe202{{ doc.pipe_202_actual_w }}{{ doc.pipe_202_total_amount|round(2, 'floor') }}
304{{ doc.pipe_304_actual_w }}{{ doc.pipe_304_total_amount|round(2, 'floor') }}
316{{ doc.pipe_316_actual_w }}{{ doc.pipe_316_total_amount|round(2, 'floor') }}
PillarSheet202{{ doc.sheet_202_actual_w }}{{ doc.sheet_202_total_amount|round(2, 'floor') }}
304{{ doc.sheet_304_actual_w }}{{ doc.sheet_304_total_amount|round(2, 'floor') }}
\n
\n \n \n \n {% if doc.select_item_type ==\"Blustor And Pillar\" %}\n \n {% else %}\n \n \n {% endif %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
G.Weight: {{ doc.total_sold_weight}}
Total: {{ doc.total}}
Freight: {% for item in doc.taxes if item.account_head==\"Freight and Forwarding Charges - SU2\" %}\n {{ item.tax_amount }}\n {% else %}\n {% endfor %}
TCS: {% for item in doc.taxes if item.account_head==\"TCS - SU2\" %}\n {{ item.tax_amount }}\n {% else %}\n {% endfor %}
Grand Total {{ doc.grand_total}}
\n \n \n
\n \n \n \n \n \n \n {%- if doc.select_item_type == \"Blustor And Pillar\" -%}\n \n {%- else -%}\n \n {%- endif -%}\n \n {%- if doc.select_item_type == \"Blustor And Pillar\" -%}\n \n {%- else -%}\n \n {%- endif -%}\n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n {%- if doc.select_item_type == \"Blustor And Pillar\" -%}\n \n {%- else -%}\n \n {%- endif -%}\n \n \n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
Sr.noItem CodeGradeSizeTypeGuagePCSWeight RateAmount

{{ item.idx or \" \" }}

{{ item.item_code or \" \" }}

{{ item.grade or \" \" }}

{{ item.size or \" \" }}

{{ item.thickness or \" \" }}

{{ item.pcs|int}}

{{ item.weight }}

{{ item.rate1 or \" \" }}

{{ item.amount|round(2, 'floor')}}

\n \n
\n \n \n
\n
\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:45.018988", - "module": "khetangroup", - "name": "Party-Unit-2", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format td, .print-format th {\r padding: 3px !important; \r \r}\r.print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r/*.print-format.print-format-preview{*/\r/* padding:40px;*/\r/* margin-right:10px;*/\r/*}*/\r.print-format .row:not(.section-break) {\r line-height: 1;\r margin-top: 5px !important;\r}\r.print-format th {\r color: black;\r font-weight: bold;\r border-bottom-width: 1px !important;\r \r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}\r", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Sales Order", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n \n \n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n {% endif %}{% endfor %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n

Sales Order

{{ doc.company }}

\n {{ doc.company_address_display }}

Sales Order No:-   {{ doc.name }}

\n

Date:-   {{ frappe.utils.get_datetime(doc.transaction_date).strftime('%d-%m-%Y') }}

Terms of Delivery & Payment : \n

Payment:

Consignee: \n

{{ doc.customer_name or \"\" }}

\n

{{ doc.address_display or \"\" }}

\n
\n {% set doc_ac = frappe.get_doc('Bank Account', doc.bank_account) %}\n

Bank Name:  {{ doc_ac.bank or \" \"}}

\n

A/C No :   {{ doc_ac.bank_account_no or \" \" }}

\n

Branch Ifsc Code:  {{ doc_ac.branch_code or \" \" }}

\n
Description of GoodsHSN CodeQuantityRate Amount
{%- for item in doc.items -%}

{{item.item_name or \" \" }}

{% endfor %}
{%- for item in doc.items -%}

{{item.gst_hsn_code or \" \"}}

{% endfor %}
{%- for item in doc.items -%}

{{item.qty or \" \"}} {{ item.uom or \" \" }}

{% endfor %}
{%- for item in doc.items -%}

{{item.rate or \" \"}}

{% endfor %}
{%- for item in doc.items -%}

{{item.amount or \" \" }}

{% endfor %}
{%- for item in doc.taxes -%}{% if item.account_head == \"Output Tax IGST - ST\" %}

IGST

\n \n {% elif item.account_head == \"Output Tax SGST - KG\" and item.account_head == \"Output Tax SGST - KG\" %}\n

CGST

\n

SGST

{%- for item in doc.taxes -%}\n

{{ item.tax_amount or \" \" }}

\n \n {% endfor %}
Total:{{ doc.grand_total }}
Declaration:For Khetan Viniyog Pvt. Ltd.\n

(Authorized signatory)

\n
\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.916070", - "module": "khetangroup", - "name": "Sales Order", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 1, - "css": ".print-format .letter-head {\n margin-bottom: 0px;\n}\n.print-format {\n padding: 1.5rem;\n}\nh2 {\n margin-top: none;\n padding-top: none;\n}\nh3 {\n margin-top: none;\n}\n.print-format label{\n font-weight:bold;\n color:black;\n}\n.print-format .table-bordered {\n border: 1px solid black;\n}\n.print-format .table-bordered th {\n border: 1px solid black;\n color:black;\n font-weight:bold;\n}\n.print-format .table-bordered td, .print-format .table-bordered th {\n border: 1px solid black;\n}\n.print-format .row:not(.section-break) {\n margin-top: 10px !important;\n}\n.table{\n margin: 10px 0;\n}\n.print-format td, .print-format th {\n padding: 5px !important; \n}\n hr \n {\n position: relative;\n border: none;\n height: 2px;\n background: black;\n width:100%;\n}\n@media print {\n .aa {\n padding-left: 0rem ;\n margin:0 ;\n \n \n }\n \n }\n\n ", - "custom_format": 0, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Salary Slip", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": "[{\"fieldname\": \"print_heading_template\", \"fieldtype\": \"Custom HTML\", \"options\": \"{% set employee_doc = frappe.get_doc('Employee', doc.employee) if doc.employee and doc.employee is string else None %}\\n\\n
\\n \\n
\\n \\n \\n \\n

Wage Slip For The Month Of {{frappe.utils.get_datetime(doc.start_date).strftime('%B-%Y') }}

\\n
\\n
\\n \\n \\n
\\n\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"_custom_html\", \"print_hide\": 0, \"label\": \"Custom HTML\", \"fieldtype\": \"HTML\", \"options\": \"{% set employee_doc = frappe.get_doc('Employee', doc.employee) if doc.employee and doc.employee is string else None %}\\n\\n\\n
\\n
\\n \\n
\\n
\\n
{{doc.employee or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.employee_name or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{frappe.utils.get_datetime(employee_doc.date_of_birth).strftime(' %d-%m-%Y') }}
\\n
\\n
\\n
\\n
{{frappe.utils.get_datetime(employee_doc.date_of_joining).strftime(' %d-%m-%Y') }}
\\n
\\n
\\n
\\n
{{doc.department or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.designation or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{employee_doc.plant or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{frappe.utils.get_datetime(doc.start_date).strftime(' %d-%m-%Y') }} To {{frappe.utils.get_datetime(doc.end_date).strftime(' %d-%m-%Y') }}
\\n
\\n
\\n {% if doc.salary_slip_based_on_timesheet == 1 %}\\n \\n
\\n
\\u20b9 {{doc.daily_rate or \\\"-\\\"}}/-
\\n \\n {% else %}\\n
\\n
\\u20b9 {{ \\\"{:,.2f}\\\".format(employee_doc.ctc) }}/-
\\n \\n {% endif %}\\n
\\n \\n
\\n
\\n
\\n
\\n
{{employee_doc.aadhaar_number or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.bank_name or '-'}}
\\n
\\n
\\n
\\n
{{doc.bank_account_no or '-'}}
\\n
\\n
\\n
\\n
{{doc.branch or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{employee_doc.uan_number or '-'}}
\\n
\\n
\\n
\\n
{{employee_doc.pan_number or '-'}}
\\n
\\n
\\n
\\n
{{doc.total_working_days or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.leave_without_pay or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.payment_days or \\\"-\\\"}}
\\n
\\n \\n
\\n \\n
\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"_custom_html\", \"print_hide\": 0, \"label\": \"Custom HTML\", \"fieldtype\": \"HTML\", \"options\": \"\\n
\\n
\\n
Earnings:
\\n \\n \\n {% if doc.salary_slip_based_on_timesheet == 1 %}\\n \\n {% else %}\\n \\n {% endif %} \\n \\n \\n \\n {%- for component in doc.earnings -%}\\n \\n \\n \\n {% if doc.salary_slip_based_on_timesheet == 1 %}\\n {%- for wh in doc.timesheets -%}\\n \\n {% endfor %}\\n {% else %}\\n \\n {% endif %} \\n \\n\\n \\n {% endfor %}\\n \\n \\n \\n \\n \\n
Sr No.Working HoursComponentAmount
{{component.idx or \\\" \\\" }}{{wh.working_hours or \\\" \\\" }}{{component.salary_component or \\\" \\\" }}\\u20b9 {{ \\\"{:,.2f}\\\".format(component.amount or \\\" \\\") }}/-
Total Earnings\\u20b9 {{ \\\"{:,.2f}\\\".format(doc.gross_pay) }}/-
\\n \\n \\n \\n \\n
\\n
\\n
Deductions:
\\n \\n \\n \\n \\n \\n \\n {%- for component in doc.deductions -%}\\n \\n \\n \\n \\n \\n\\n \\n {% endfor %}\\n \\n \\n \\n \\n \\n
Sr No.ComponentsAmount
{{component.idx or \\\" \\\" }}{{component.salary_component or \\\" \\\" }}\\u20b9 {{ \\\"{:,.2f}\\\".format(component.amount or \\\" \\\") }}/-
Total Deductions\\u20b9 {{ \\\"{:,.2f}\\\".format(doc.total_deduction) }}/-
\\n
\\n
\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"_custom_html\", \"print_hide\": 0, \"label\": \"Custom HTML\", \"fieldtype\": \"HTML\", \"options\": \"
\\n
\\n
\\n
\\n\\n
\\n\\n
\\n
\\n
\\n
\\u20b9 {{ \\\"{:,.2f}\\\".format(doc.net_pay) }}/-
\\n
\\n
\\n
\\n
{{doc.total_in_words}}
\\n
\\n\"}]", - "html": null, - "line_breaks": 0, - "margin_bottom": 5.0, - "margin_left": 5.0, - "margin_right": 15.0, - "margin_top": 0.0, - "modified": "2023-11-25 12:52:44.759955", - "module": "khetangroup", - "name": "Khetan Group - Salary Slip", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 1, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": "", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "GatePass", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n
\n

KHETAN VINIYOG PVT.LTD

\n

Gate Pass

\n
\n

SI NO: {{ doc.name }}

\n
\n
\n

Party Name: {{ doc.party_name or \"\"}}

\n

Date: {{frappe.utils.get_datetime(doc.date_time ).strftime(' %d-%m- %Y') }}

\n

Vehicle No: {{ doc.vehicle_no or \"\"}}

\n

Purpose: {{ doc.purpose }}

\n \n \n
\n
\n

Voucher No:{% if doc.purpose == \"Purchase Return\" %}\n {{ doc.purchase_invoice }}\n {% elif doc.purpose == \"Sales Outward\" %}\n {{ doc.sales_invoice }}\n {% elif doc.purpose == \"Returnable Or Non Returnable Transfer Material\" %}\n {{ doc.voucher_no }}\n {% elif doc.purpose == \"Returnable Received Material\" %}\n {{ doc.voucher_no }}\n \n {% endif %}

\n

Time: {{frappe.utils.get_datetime(doc.date_time ).strftime('%I:%M:%S') }}

\n \n

Use For:  {{ doc.use_for }}

\n

Received By: {{ doc.received_by }}

\n
\n
\n \n \n \n \n \n \n {%- for item in doc.purchase_inward_table -%}\n \n \n \n \n \n \n {% endfor %}\n
Sr No.Item NameQty
{{item.idx or \" \"}}{{ item.item_name }}{{ item.qty }}
\n

Authoriased Signature:

\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.884444", - "module": "khetangroup", - "name": "Gatepass Unit-2", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": "\r.pd{\r width:740px!important;\r margin: 0px 15px 0px;\r}\r.print-format td, .print-format th {\r padding: 1px !important; \r \r}\r\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 0px;\r}\r.print-format p {\r margin: 0px 0px 0px;\r}\r\r.print-format .row:not(.section-break) {\r line-height: 1;\r margin-top: 2px !important;\r}\r@media print {\r .pd{\r width:678px!important;\r margin: 0px 15px 0px;\r}\r \r }\r", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Quotation", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

OFFICE Quotation

\n
\n
\n

Customer Name:   {{ doc.customer_name }}

\n

Date:   {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}

\n {% if doc.select_item_type ==\"Guage and Sheet\" %}\n

Details of Pipe and Sheet:

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% for item in doc.items|unique(attribute='item_type') %}\n {% if item.item_type==\"Sheet 202\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Sheet 304\" %}\n \n \n \n {% endif %}\n {% endfor %}\n \n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 202\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 304\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 316\" %}\n \n \n {% endif %}\n {% endfor %} \n
{{ item.item_type }}{{ (doc.rate202 /1.18)| round(2) }}
{{ item.item_type}} {{ (doc.sheet304/1.18)| round(2) or \"\"}}
{{ item.item_type}}{{ (doc.rate202/1.18)| round(2) or \"\"}}
{{ item.item_type}} {{ (doc.rate304/1.18)| round(2) or \"\"}}
{{ item.item_type}} {{ (doc.rate316/1.18)| round(2) or \"\"}}
\n {% else %}\n \n {% endif %}\n
\n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Grand Total: \u20b9{{ doc.rounded_total}}
G.Weight: {{ doc.total_sold_weight}}
Total: \u20b9{{ \"{:,.2f}\".format(doc.total)}}
Freight: {% for item in doc.taxes if item.account_head==\"Freight and Forwarding Charges - SU2\" %}\n \u20b9{{ item.tax_amount }}\n {% else %}\n {% endfor %}
TCS: {% for item in doc.taxes if item.account_head==\"TCS - SU2\" %}\n \u20b9{{ item.tax_amount }}\n {% else %}\n {% endfor %}
202: {{ doc.quantity202 }}
304: {{ doc.quantity304}}
316: {{ doc.quantity316}}
Total Items: {{ doc.total_no_items}}
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
Sr.noItem CodeGradeSizeThicknessWeight Per Unit\tW DiffWeightPCSTotal Amount

{{ item.idx or \" \" }}

{{ item.item_code or \" \" }}

{{ item.grade or \" \" }}

{{ item.size or \" \" }}

{{ item.thickness or \" \" }}

{{ item.weight_per_unit or \" \" }}

{{ item.weight_diff| round }}

{{ item.weight }}

{{ item.pcs or \"\" }}

{{ item.amount or \" \" }}

\n
\n \n

Total Net Weight:    {{ doc.total_net_weight }}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.941911", - "module": "khetangroup", - "name": "Office Unit-2 Without Rate", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format td, .print-format th {\n padding: 5px !important;\n}\n", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Sales Order", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% set ns = namespace (prev_grade = none) %}\n {% set ns = namespace (prev_sheet = none) %}\n {%- for item in doc.items -%} \n {% if item.grade != ns.prev_grade or item.item_type != ns.prev_sheet %}\n \n {% endif %}\n \n \n \n \n \n {% if item.thickness == \"16G\" %}\n \n {% else %}\n \n {% endif %}\n \n \n \n \n {% set ns.prev_grade = item.grade %}\n {% set ns.prev_sheet = item.item_type %} {% endfor %}\n
Dispatch Done By\n

With Name & Sign

Vehicle No:{{ doc.vehicle_no or \"\"}}
Date With Time:
Party Name: {{ doc.customer_name or \"\"}} Order By
Weight/ PackSI NoGradeSizeGuageOrder QtyPacketPcsWeight
{{ item.idx }}{{ item.grade }}{{ item.size }}{{ item.thickness }}{{ item.thickness }}{{ item.qty|int }}
\n \n \n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:45.046239", - "module": "khetangroup", - "name": "Dispatch Unit-2", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": "", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Quotation", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n

Pipes 202, 304, 316

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
PcsActual WeightTotal Amount
202 Pcs{{ doc.pipe_202_pcs }}{{ doc.pipe_202_actual_w }}{{ doc.pipe_202_total_amount }}
304 pcs{{ doc.pipe_304_pcs }}{{ doc. pipe_304_actual_w }}{{ doc.pipe_304_total_amount }}
316 pcs {{ doc.pipe_316_pcs }}{{ doc.pipe_316_actual_w }}{{ doc.pipe_316_total_amount }}
\n

Sheet 202, 304

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
PcsActual WeightTotal Amount
202 pcs{{ doc.sheet_202_pcs }}{{ doc.sheet_202_actual_w }}{{ doc.sheet_202_total_amount }}
304 pcs{{ doc.sheet_304_pcs }}{{ doc.sheet_304_actual_w }}{{ doc.sheet_304_total_amount }}
\n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.977292", - "module": "khetangroup", - "name": "Type And Sheet Report", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".text{\r color:#1f497d ;\r font: 32px bold Arial, sans-serif;\r}\r.date{\r background-color: #EFBE7D;\r \r}\r.ship{\r font-weight:bold;\r font-size:16px;\r}\r.bgcolor\r{\r \r background-color: #1f497d ;\r color:#FFFFFF;\r font-size:16px;\r font-weight:bold;\r}\rtable, th, td {\r border: 1px solid black;\r \r}\rhr{\r border: 10px solid black;\r}\r\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}\r.print-format td, .print-format th {\r padding: 3px !important; \r \r}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Purchase Order", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

PURCHASE ORDER

\n \n

Date:

{{ doc.transaction_date }}

\n

{{ doc.name }}

\n

{{ doc.company}}

\n

{{ doc.shipping_address_display }}

\n \n \n \n \n \n \n \n \n \n
VENDORSHIP TO

{{ doc.supplier_name or \" \" }}

\n

{{ doc.address_display or \" \" }}

\t

{{ doc.company or \" \"}}

\n

{{ doc.shipping_address_display }}

\n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n {% endfor %}\n
\n SL.No. MATERIAL DESCRIPTIONQTYUNITRateAMOUNT
{{ item.idx or \" \"}}{{ item.item_name }}{{ item.qty }}{{ item.uom }}{{ item.rate }}{{ item.amount }}
\n \n
\n

AMOUNT : {{ doc.base_total}}

\n {%- for item in doc.taxes -%}\n

{{item.account_head }} @ {{ item.rate }}% : {{ item.tax_amount}}

\n {% endfor %}\n

Grand Total: {{ doc.grand_total }}

\n
Amount Chargable (In Word)
\n

{{ frappe.utils.money_in_words(doc.grand_total) }}

\n
\n \n \n
\n\t\t\t\t
\n\t\t\t\t

Payment Terms

\n\t {%- for item in doc.taxes -%}\n

{{item.account_head }} @ {{ item.rate }}% Extra

\n {% endfor %}\n {%- for item in doc.payment_schedule -%}\n

Payment Terms: After Delivery {{ item.credit_days }} Days

\n {% endfor %}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n
\n

Aurtharised Sing.

\n
\n\t\t\t\t
\n\t\t\t
\n\n \n\n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.733596", - "module": "khetangroup", - "name": "Unit-2 Purchase Order", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".text{\r color:#1f497d ;\r font: 32px bold Arial, sans-serif;\r}\r.date{\r background-color: #EFBE7D;\r \r}\r.ship{\r font-weight:bold;\r font-size:20px;\r}\r.bgcolor\r{\r \r background-color: #1f497d ;\r color:#FFFFFF;\r font-size:16px;\r font-weight:bold;\r}\rtable, th, td {\r border: 1px solid black;\r \r}\rhr{\r border: 10px solid black;\r}\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Purchase Order", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\r \r \r {% if letter_head and not no_letterhead -%}\r{% if print_settings.repeat_header_footer %}\r
{{ letter_head }}
\r{%- endif %}{%- endif %}\r

PURCHASE ORDER

\r \r

Date:

{{ doc.transaction_date }}

\r

{{ doc.name }}

\r

{{ doc.company}}

\r

{{ doc.shipping_address_display }}

\r \r \r \r \r \r \r \r \r \r
VENDORSHIP TO

{{ doc.supplier_name or \" \" }}

\r

{{ doc.address_display or \" \" }}

\t

{{ doc.company or \" \"}}

\r

{{ doc.shipping_address_display }}

\r \r \r \r \r \r \r \r \r \r \r \r {%- for item in doc.items -%}\r \r \r \r \r \r \r \r \r \r {% endfor %}\r
\r SL.No. MATERIAL DESCRIPTIONQTYUNITRateAMOUNT
{{ item.idx or \" \"}}{{ item.item_name }}{{ item.qty }}{{ item.uom }}{{ item.rate }}{{ item.amount }}
\r \r
\r

AMOUNT : {{ doc.base_total}}

\r {%- for item in doc.taxes -%}\r

{{item.account_head }} @ {{ item.rate }}% : {{ item.tax_amount}}

\r {% endfor %}\r

Grand Total: {{ doc.grand_total }}

\r
Amount Chargable (In Word)
\r

{{ frappe.utils.money_in_words(doc.grand_total) }}

\r
\r \r \r
\r\t\t\t\t
\r\t\t\t\t

Payment Terms

\r\t \r \r \r \r \r \r \r

{{ doc.terms }}

\r\t\t\t\t
\r\t\t\t\t
\r\t\t\t\t
\r
\r

Authorised Sing.

\r
\r\t\t\t\t
\r\t\t\t
\r\r \r\r", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2024-05-08 18:26:11.678562", - "module": "khetangroup", - "name": "Unit -1 Purchase Order", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format td, .print-format th {\r padding: 3px !important; \r}\r.print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r.print-format .table-bordered {\r border: 1px solid black;\r}\r\r.print-format .letter-head {\r margin-bottom: 10px;\r}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Quotation", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Name:{{ doc.customer_name or \" \" }}Date:\n {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}
Address:{{ doc.address_display or \"\"}}Quotation-Id:{{ doc.name }}
{% if doc.brand %} Brand: {% endif %}{{ doc.brand or \"\" }}QTY:{{ doc.total_qty or \" \" }}
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n \n \n \n \n \n \n \n \n \n \n
Item Name ColourSizeQtyTotal SetTotal\"Weight In Kg
{{ item.item_name or \" \" }}{{ item.color or \" \" }}{{ item.size or \" \" }}{{ item.qty_box or \" \" }}{{ item.total_set or \" \" }}{{ item.total_inches or \" \" }} {{ item.custom_box_wise_cal_weight or \" \" }}
Total:{{ doc.items|sum(attribute='qty_box')}}{{ doc.items|sum(attribute='total_set')}}{{ doc.items|sum(attribute='total_inches')}} {% if item.set_box and item.set_box != 0 %}\n {{ ((item.qty / item.set_box | float)|round) * item.weight_per_unit}}\n {% else %}\n 0\n {% endif %}
\n

{% if doc.terms %} Terms And Condition: {% endif %}{{ doc.terms or \" \" }}

\n \n ", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2024-03-21 11:25:28.680802", - "module": "khetangroup", - "name": "Quotatioon Unit-1 Without Rate", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": ".print-format td, .print-format th {\n padding: 5px !important;\n}\n", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Sales Order", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% for item in doc.items %}\n \n \n \n \n \n \n \n \n {% endfor %}\n
Dispatch Done By\n

With Name & Sign

Vehicle No:{{ doc.vehicle_no or \"\"}}
Date With Time:
Party Name: {{ doc.customer_name or \"\"}} Order By
SI NoBrandSizeColorOrder QtyPacketWeight
{{ item.idx }}{{ item.item_code }} {{ item.size or 0}} {{ item.color or \"\" }} {{ item.qty or 0}}{{ item.set_box|float * item.qty}}
\n \n \n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.656893", - "module": "khetangroup", - "name": "Dispatch Unit-1", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": "", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Item", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n
\n \"QR\n \n
\n\n\n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-11-25 12:52:44.634727", - "module": "khetangroup", - "name": "Item Barcode", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - }, - { - "absolute_value": 0, - "align_labels_right": 0, - "css": "\n\n .print-format {\n margin-top: 2mm;\n margin-left: 0mm;\nmargin-right: 0mm;\nmargin-bottom: 0mm;\n\n\n\n}\n.print-format p {\n margin: 0px 0px 0px;\n}\n\n@media print{\n .print-format {\n margin-top: 2mm;\n margin-left: 0mm;\nmargin-right: 0mm;\nmargin-bottom: 0mm;\n\n\n\n}\n\n.print-format p {\n margin: 0px 0px 0px;\n}\n\n\n}", - "custom_format": 1, - "default_print_language": "en", - "disabled": 0, - "doc_type": "Qr Code", - "docstatus": 0, - "doctype": "Print Format", - "font": null, - "font_size": 14, - "format_data": null, - "html": "\n\n\n\n QR Code Print Format\n\n\n\n{% set count = 0 %}\n\n{% for i in range(doc.barcode_number|int) %}\n {% if count <= doc.barcode_number %}\n
\n \n \n \n Party Ref. No. \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n {% for item in doc.items %}\n \n \n \n \n \n \n \n \n {% endfor %}\n
S.NO Product Description QuantityPrice /Unit Total Price
{{ item.idx }} {{ item.item_name }}{{ item.qty }}{{ item.rate }} {{ item.amount }}
\n
\n
\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
Subtotal {{ doc.total or \"\"}}
GST%12 {{ doc.base_total_taxes_and_charges or \"\"}}
Total Amount {{ doc.grand_total or \"\"}}
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Amount In Words{{ doc.base_in_words or \"\" }}
Terms & Conditions
1Price Basis EX Works
2Taxes12% GST
3Payment Terms 100% Advance
4Delivery PeriodAfter Payment Within 05 Days
5Packaging TypeCarton Box
6Warranty8 Years
7Validity7 Days
8Other T&C

1. BOM as per standard K-solare BOM.

\n

2. The above prices are strictly for the Quantity (MOQ). The pricing may vary for\nother quantity.

9Bank Details

Account no: - 50200024361977

\n

IFSC code: - HDFC0002484 Branch: - ADITYAPUR

\n

Name: - KHETAN UDYOG

\n \n \n", - "line_breaks": 0, - "margin_bottom": 15.0, - "margin_left": 15.0, - "margin_right": 15.0, - "margin_top": 15.0, - "modified": "2023-12-26 11:15:21.041424", - "module": "khetangroup", - "name": "Khetan Solar", - "page_number": "Hide", - "pdf_generator": null, - "print_format_builder": 0, - "print_format_builder_beta": 0, - "print_format_for": null, - "print_format_type": "Jinja", - "raw_commands": null, - "raw_printing": 0, - "report": null, - "show_section_headings": 0, - "standard": "No" - } + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format .letter-head {\n margin-bottom: 10px;\n}", + "custom_format": 0, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Material Request", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": "[{\"fieldname\": \"print_heading_template\", \"fieldtype\": \"Custom HTML\", \"options\": \"
\\t\\t\\t\\t

Material Request

{{ doc.name }}\\t\\t\\t\\t

\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"material_request_type\", \"print_hide\": 0, \"label\": \"Purpose\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"transaction_date\", \"print_hide\": 0, \"label\": \"Transaction Date\"}, {\"fieldname\": \"schedule_date\", \"print_hide\": 0, \"label\": \"Required By\"}, {\"fieldtype\": \"Section Break\", \"label\": \"Items\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"scan_barcode\", \"print_hide\": 0, \"label\": \"Scan Barcode\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"set_from_warehouse\", \"print_hide\": 0, \"label\": \"Set Source Warehouse\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"set_warehouse\", \"print_hide\": 0, \"label\": \"Set Target Warehouse\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"items\", \"print_hide\": 0, \"label\": \"Items\", \"visible_columns\": [{\"fieldname\": \"item_code\", \"print_width\": \"100px\", \"print_hide\": 0}, {\"fieldname\": \"schedule_date\", \"print_width\": \"100px\", \"print_hide\": 0}, {\"fieldname\": \"description\", \"print_width\": \"250px\", \"print_hide\": 0}, {\"fieldname\": \"qty\", \"print_width\": \"80px\", \"print_hide\": 0}, {\"fieldname\": \"from_warehouse\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"warehouse\", \"print_width\": \"100px\", \"print_hide\": 0}, {\"fieldname\": \"uom\", \"print_width\": \"70px\", \"print_hide\": 0}, {\"fieldname\": \"manufacturer\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"manufacturer_part_no\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"project\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"item_group\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"rate\", \"print_width\": \"\", \"print_hide\": 0}, {\"fieldname\": \"amount\", \"print_width\": \"\", \"print_hide\": 0}]}, {\"fieldname\": \"_custom_html\", \"print_hide\": 0, \"label\": \"Custom HTML\", \"fieldtype\": \"HTML\", \"options\": \"

Total Amount : {{ doc.total_amount }}

\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"terms\", \"print_hide\": 0, \"label\": \"Terms and Conditions Content\"}, {\"fieldtype\": \"Section Break\", \"label\": \"Status\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"transfer_status\", \"print_hide\": 0, \"label\": \"Transfer Status\"}, {\"fieldtype\": \"Section Break\", \"label\": \"Reference\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"work_order\", \"print_hide\": 0, \"label\": \"Work Order\"}]", + "html": "", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.864652", + "module": "khetangroup", + "name": "Unit-1 Material Request", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Stock Entry", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

{{ doc.stock_entry_type or \" \"}}

\n {%- if doc.returnable_or_non_returnable == \"Returnable\" -%}\n

Returnable

\n {% else %}\n

Non Returnable

\n {% endif %}\n \n {{ doc.company_address_display or \"\" }}
\n \n

Date: {{frappe.utils.get_datetime(doc.posting_date).strftime(' %d-%m- %Y') }}

\n

Voucher No: {{ doc.name }}

\n

Material Issue To :     {{ doc.company or \" \" }}

\n \n \n

{{ doc.company_address_display or \" \"}}

\n

Returnable Or Non Returnable :-    {{ doc.returnable_or_non_returnable }}

\n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
\n SI No Description Of MaterialQTY. OutUOMRemarks
{{ item.idx or \" \" }}{{ item.item_name or \" \" }}{{ item.qty or \" \" }} {{ item.uom or \" \" }}{{ item.remarks or \" \" }}
\n \n Remarks: {{ doc.remarks or \" \" }}\n
\n \n Authorized Signature..\n
\n \n
\n \n Signature..\n
\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.840605", + "module": "khetangroup", + "name": "Material Issue", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format td, .print-format th {\r padding: 3px !important; \r}\r.print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r.print-format .table-bordered {\r border: 1px solid black;\r}\r\r.print-format .letter-head {\r margin-bottom: 10px;\r}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Quotation", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n{% set a = namespace(total_weight = 0) %}\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Name:{{ doc.customer_name or \" \" }}Date:\n {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}
Address:{{ doc.address_display or \"\"}}Quotation-Id:{{ doc.name }}
{% if doc.brand %} Brand: {% endif %}{{ doc.brand or \"\" }}QTY:{{ doc.total_qty or \" \" }}
\n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n\n \n
Item Name ColourTotal SetTotal\"RateDisc%Disc Amt.Bill AMT.Weight In Kg
{{ item.item_name or \" \" }}{{ item.color or \" \" }}{{ item.total_set or \" \" }}{{ item.total_inches or \" \" }}{{ item.price_amt or \" \" }}{{ item.discount_percentage or \" \" }}%{{ item.discount_amt or \" \" }}{{ item.amount or \" \" }} {% if item.set_box and item.set_box != 0 %}\n {{ ((item.qty / item.set_box | float)|round) * item.weight_per_unit}}\n {% set a.total_weight = a.total_weight + (((item.qty / item.set_box | float)|round) * item.weight_per_unit) %}\n {% else %}\n 0\n {% endif %}
Total:{{ doc.items|sum(attribute='total_set')}}{{ doc.items|sum(attribute='total_inches')}} {{ doc.items|sum(attribute='discount_amt')}}{{ doc.total or \" \" }}{{ a.total_weight }}
Add GST 18%:{{doc.total_taxes_and_charges or \" \" }}
Net Payable:{{ doc.grand_total or \" \" }}
\n

{% if doc.terms %} Terms And Condition: {% endif %}{{ doc.terms or \" \" }}

\n \n ", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2026-07-22 15:03:20.020918", + "module": "khetangroup", + "name": "Quotation Unit-1", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r.print-format th {\r color: black;\r font-weight: normal;\r border-bottom-width: 1px !important;\r}\r.print-format .table-bordered {\r border: 1px solid black;\r}\r.print-format td, .print-format th {\r padding: 3px !important; \r \r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Sales Invoice", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n\n {% if letter_head and not no_letterhead -%}\n {% if print_settings.repeat_header_footer %}\n
\n
{{ letter_head }}
\n {%- endif %}\n {%- endif %}\n\n
\n

TAX INVOICE

\n
\n\n \n\n \n \n\n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n\n \n \n \n\n \n \n\n \n \n\n \n \n\n \n \n \n \n \n \n \n \n \n\n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n {% endfor %}\n\n \n \n \n \n \n \n\n \n\n \n \n\n \n \n \n \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n \n\n \n \n\n
\n

{{ doc.company}}

\n

{{ doc.company_address_display or \"\" }}

\n
\n Invoice No.:\n

{{doc.name }}

\n
\n Invoice Dated:-{{frappe.utils.get_datetime(doc.posting_date ).strftime(' %d-%m- %Y') }}\n
\n Delivery Note:\n

\n
\n Policy No:{{ doc.policy_no or \" \" }}\n
\n Buyer's Order No:\n

{{ doc.po_no or \" \" }}

\n
\n Buyer's Order Dated:{{frappe.utils.get_datetime(doc.po_date ).strftime(' %d-%m- %Y') }}\n
\n Dispatched Through:\n

{{ doc.dispatched_though or \" \"}}

\n
\n Vehicle No:{{ doc.vehicle_no or \"\" }}\n
\n Dispatch Document No:-\n

{{ doc.lr_no or \" \" }}

\n
\n Destination:- {{ doc.destination or \" \" }}\n
\n Mode/Terms of Payment:-\n

{{ doc.mode_terms_of_payment or \" \" }}

\n
\n Delivery Note Date:-\n {{frappe.utils.get_datetime(doc.delivery_date ).strftime(' %d-%m- %Y') }}\n
\n

Consignee

\n

{{ doc.customer_name or \" \" }}

\n

{{ doc.address_display or \" \" }}

\n
\n

Terms Of Delivery: {{ doc.terms or \" \" }}

\n\n {% if doc.print_discount_amount_ %}\n

Total Discount Amount:   {{ doc.total_discount_amount }}

\n {% endif %}\n
Sr No.Description Of GoodsHSN/SACQuantityUOMRateAmount
{{item.idx or \" \"}}{{item.item_name or \" \" }}{{item.gst_hsn_code or \" \"}}{{item.qty or \" \"}}{{ item.uom or \" \" }}{{item.rate or \" \"}}{{item.amount or \" \" }}
\n {%- for item in doc.taxes -%}\n {% if item.account_head == \"Output Tax IGST - KG\" %}\n

IGST

\n {% elif item.account_head == \"Output Tax CGST - KG\" %}\n

CGST

\n {% elif item.account_head == \"Output Tax SGST - KG\" %}\n

SGST

\n {% endif %}\n {% endfor %}\n
\n {%- for item in doc.taxes -%}\n

{{ item.tax_amount or \" \" }}

\n {% endfor %}\n
Total{{ doc.base_rounded_total or \" \" }}
\n

Amount Chargable (In Word): {{ frappe.utils.money_in_words(doc.grand_total) }}

\n
{{ doc.other_charges_calculation or \" \" }}
\n Tax Amount (in Words):{{ frappe.utils.money_in_words(doc.total_taxes_and_charges) }}\n
\n\n

\n Remarks: {{ doc.remarks or \"\"}}\n

\n\n {% if doc.company %}\n {% set doc_company = frappe.get_doc('Company', doc.company) %}\n {% else %}\n {% set doc_company = {} %}\n {% endif %}\n\n

Company's PAN:  {{ doc_company.pan or \" \" }}

\n\n Declaration:\n

{{ doc.remarks or \" \"}}

\n\n

\n Authorised Signatory\n

\n\n
\n\n Company's Bank Details\n \n \n {% set doc_ac = frappe.db.get_value('Bank Account', {'company': doc.company, 'is_company_account': 1}, ['bank', 'bank_account_no', 'branch_code'], as_dict=True) or {} %}\n \n

Bank Name:  {{ doc_ac.bank or \" \"}}

\n

A/C No :  {{ doc_ac.bank_account_no or \" \" }}

\n

Branch Ifsc Code:  {{ doc_ac.branch_code or \" \" }}

\n\n For {{doc.company }}\n\n
\n\n \n\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2026-07-23 13:12:30.264394", + "module": "khetangroup", + "name": "Sales Invoice Unit-1", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": "\r.pd{\r width:740px!important;\r margin: 0px 15px 0px;\r}\r.print-format td, .print-format th {\r padding: 1px !important; \r \r}\r\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 0px;\r}\r.print-format p {\r margin: 0px 0px 0px;\r}\r\r.print-format .row:not(.section-break) {\r line-height: 1;\r margin-top: 2px !important;\r}\r@media print {\r .pd{\r width:678px!important;\r margin: 0px 15px 0px;\r}\r \r }\r", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Quotation", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

OFFICE Quotation

\n
\n
\n

Customer Name:   {{ doc.customer_name }}

\n

Date:   {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}

\n {% if doc.select_item_type ==\"Guage and Sheet\" %}\n

Details of Pipe and Sheet:

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% for item in doc.items|unique(attribute='item_type') %}\n {% if item.item_type==\"Sheet 202\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Sheet 304\" %}\n \n \n \n {% endif %}\n {% endfor %}\n \n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 202\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 304\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 316\" %}\n \n \n {% endif %}\n {% endfor %} \n
{{ item.item_type }}{{ (doc.sheet202 /1.18)| round(2) }}
{{ item.item_type}} {{ (doc.sheet304/1.18)| round(2) or \"\"}}
{{ item.item_type}}{{ (doc.rate202/1.18)| round(2) or \"\"}}
{{ item.item_type}} {{ (doc.rate304/1.18)| round(2) or \"\"}}
{{ item.item_type}} {{ (doc.rate316/1.18)| round(2) or \"\"}}
\n {% else %}\n \n {% endif %}\n \n
\n
\n \n \n \n \n \n \n \n \n {% if doc.select_item_type == \"Blustor And Pillar\" %}\n \n {% elif doc.select_item_type == \"Guage and Sheet\" %}\n \n {% endif %}\n \n \n \n \n \n \n \n {% if doc.select_item_type == \"Guage and Sheet\" %}\n \n \n \n {% endif %}\n \n \n \n {% if doc.select_item_type == \"Blustor And Pillar\" %}\n \n {% elif doc.select_item_type == \"Guage and Sheet\" %}\n \n {% endif %}\n \n \n \n \n \n \n \n
GradeActual WeightTotal Amount
BlustorPipe202{{ doc.pipe_202_actual_w }}{{ doc.pipe_202_total_amount|round(2, 'floor') }}
304{{ doc.pipe_304_actual_w }}{{ doc.pipe_304_total_amount|round(2, 'floor') }}
316{{ doc.pipe_316_actual_w }}{{ doc.pipe_316_total_amount|round(2, 'floor') }}
PillarSheet202{{ doc.sheet_202_actual_w }}{{ doc.sheet_202_total_amount|round(2, 'floor')}}
304{{ doc.sheet_304_actual_w }}{{ doc.sheet_304_total_amount|round(2, 'floor') }}
\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Grand Total: ₹{{ doc.grand_total}}
G.Weight: {{ doc.total_sold_weight}}
Total: ₹{{ \"{:,.2f}\".format(doc.total)}}
Freight: {% for item in doc.taxes if item.account_head==\"Freight and Forwarding Charges - SU2\" %}\n ₹{{ item.tax_amount }}\n {% else %}\n {% endfor %}
TCS: {% for item in doc.taxes if item.account_head==\"TCS - SU2\" %}\n ₹{{ item.tax_amount }}\n {% else %}\n {% endfor %}
202: {{ doc.quantity202 }}
304: {{ doc.quantity304}}
316: {{ doc.quantity316}}
Total Items: {{ doc.total_no_items}}
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
Sr.noItem CodeGradeSizeThicknessWeight Per Unit\tW DiffWeightPCSRateTotal Amount

{{ item.idx or \" \" }}

{{ item.item_code or \" \" }}

{{ item.grade or \" \" }}

{{ item.size or \" \" }}

{{ item.thickness or \" \" }}

{{ item.weight_per_unit or \" \" }}

{{ item.weight_diff|round(2, 'floor')}}

{{ item.weight }}

{{ item.pcs|int}}

{{ item.rate1 or \" \" }}

{{ item.amount |round(2, 'floor') }}

\n
\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:45.113541", + "module": "khetangroup", + "name": "Office Unit 2", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Stock Entry", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

{{ doc.stock_entry_type }}

\n Party Address : {{ doc.party_address or \" \" }}
\n \n

Date: {{frappe.utils.get_datetime(doc.posting_date).strftime(' %d-%m- %Y') }}

\n

Voucher No:{{ doc.voucher_no }}

\n

Name:{{ doc.name }}

\n

Compnay Address : {{ doc.company }}

\n \n \n

{{ doc.company_address_display or \" \"}}

\n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
\n SI No Description Of MaterialQTY. OutUOMRemarks
{{ item.idx }}{{ item.item_name }}{{ item.qty }} {{ item.uom }}
\n Remarks: {{ doc.remarks or \" \" }}\n
\n \n Authorized Signature..\n
\n \n
\n \n Signature..\n
\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.815605", + "module": "khetangroup", + "name": "Material Received For Supplier", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r.print-format th {\r color: black;\r font-weight: normal;\r border-bottom-width: 1px !important;\r}\r.print-format .table-bordered {\r border: 1px solid black;\r}\r.print-format td, .print-format th {\r padding: 3px !important; \r \r}\r\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Delivery Note", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

DELIVERY NOTE

\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n {% endfor %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n

{{ doc.company}}

\n

{{ doc.company_address_display }}

\n
Delivery Note No:- {{doc.name or \" \"}}
E-way Bill No:- {{ doc.ewaybill or \" \"}}
Dated:- {{ frappe.utils.get_datetime(doc.posting_date).strftime('%d-%m-%Y') }}
Reference No And Date:{{ doc.reference_no or \" \" }}   {{ doc.reference_date or \"\"}}Other Reference(s):{{ doc.other_reference or \" \" }}
Buyer's Order No:{{ doc.po_no or \" \"}}Dated: {{ frappe.utils.get_datetime(doc.po_date).strftime('%d-%m-%Y')}}
Dispatch Doc No:- {{ doc.lr_no or \" \"}}Dispatch Through:- {{ doc.dispatch_through or \" \" }}
Bill Of Lading/LR-RR No: {{ doc.bill_of_lading_lr_no or \" \"}}Mode/Terms Of Payment:{{ doc.mode_of_terms_and_payments or \" \"}}
Destination:- {{ doc.destination or \" \" }}Motor Vehicle No:-{{ doc.vehicle_no or \" \" }}
Terms Of Delivery:

{{ doc.terms or \" \" }}

Consignee(Ship To ):-

\n

{{ doc.customer_name }}

\n

{{ doc.shipping_address or \"\" }}

\n

Buyer (Bill To ):-

\n

{{ doc.customer_name or \" \" }}

\n

{{ doc.address_display or \" \" }}

\n \n Place Of Supply:- {{ doc.place_of_supply or \" \" }}\n
Sr No.Description Of GoodsHSN/SACQuantityRatePerAmount
{{item.idx or \" \" }}{{item.item_name or \" \" }}{{item.gst_hsn_code}}{{item.qty}} {{ item.uom }}{{item.rate}}{{ item.uom }}{{item.amount}}

CGST

\n

SGST

\n

Rounding Off

{%- for item in doc.taxes -%}\n

{{ item.tax_amount}}

\n \n {% endfor %}

{{ doc. base_rounding_adjustment }}

Total{{ doc.base_rounded_total }}

Amount Chargable (In Word):\n {{ frappe.utils.money_in_words(doc.grand_total) }}

{{ doc.other_charges_calculation or \" \" }}
Tax Amount (in Words):{{ frappe.utils.money_in_words(doc.total_taxes_and_charges) }}\n \n \n

{% set doc_company = frappe.get_doc('Company', doc.company) %} Company's PAN:  {{ doc_company.pan }}

\n \n
Recd. in Good Condition

For Khetan Udyog

\n

Authorised Signatory

\n \n \n \n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.780062", + "module": "khetangroup", + "name": "Delivery Note Unit-2", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format td, .print-format th {\r padding: 1px !important;\r}\r\r.print-format .letter-head {\r margin-bottom: 0px;\r}\r.print-format p {\r margin: 0px 0px 0px;\r}\r.pd{\r width:700px!important;\r margin: 0px 15px 0px;\r}\r.print-format .row:not(.section-break) {\r line-height: 1;\r margin-top: 5px !important;\r}\r@media print {\r .pd{\r width:675px!important;\r margin: 0px 15px 0px;\r}\r \r }", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Quotation", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

Party Quotation

\n
\n
\n

Customer Name:   {{ doc.customer_name }}

\n

Date:   {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
202: {{ doc.quantity202|int }}
304: {{ doc.quantity304|int}}
316: {{ doc.quantity316|int}}
Total Items: {{ doc.total_no_items|int}}
\n \n
\n
\n \n \n \n \n \n \n {% if doc.select_item_type == \"Blustor And Pillar\" %}\n \n {% elif doc.select_item_type == \"Guage and Sheet\" %}\n \n {% endif %}\n \n \n \n \n \n \n \n {% if doc.select_item_type == \"Guage and Sheet\" %}\n \n \n \n {% endif %}\n \n \n \n {% if doc.select_item_type == \"Blustor And Pillar\" %}\n \n {% elif doc.select_item_type == \"Guage and Sheet\" %}\n \n {% endif %}\n \n \n \n \n \n \n \n
GradeActual WeightTotal Amount
BlustorPipe202{{ doc.pipe_202_actual_w }}{{ doc.pipe_202_total_amount|round(2, 'floor') }}
304{{ doc.pipe_304_actual_w }}{{ doc.pipe_304_total_amount|round(2, 'floor') }}
316{{ doc.pipe_316_actual_w }}{{ doc.pipe_316_total_amount|round(2, 'floor') }}
PillarSheet202{{ doc.sheet_202_actual_w }}{{ doc.sheet_202_total_amount|round(2, 'floor') }}
304{{ doc.sheet_304_actual_w }}{{ doc.sheet_304_total_amount|round(2, 'floor') }}
\n
\n \n \n \n {% if doc.select_item_type ==\"Blustor And Pillar\" %}\n \n {% else %}\n \n \n {% endif %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
G.Weight: {{ doc.total_sold_weight}}
Total: {{ doc.total}}
Freight: {% for item in doc.taxes if item.account_head==\"Freight and Forwarding Charges - SU2\" %}\n {{ item.tax_amount }}\n {% else %}\n {% endfor %}
TCS: {% for item in doc.taxes if item.account_head==\"TCS - SU2\" %}\n {{ item.tax_amount }}\n {% else %}\n {% endfor %}
Grand Total {{ doc.grand_total}}
\n \n \n
\n \n \n \n \n \n \n {%- if doc.select_item_type == \"Blustor And Pillar\" -%}\n \n {%- else -%}\n \n {%- endif -%}\n \n {%- if doc.select_item_type == \"Blustor And Pillar\" -%}\n \n {%- else -%}\n \n {%- endif -%}\n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n {%- if doc.select_item_type == \"Blustor And Pillar\" -%}\n \n {%- else -%}\n \n {%- endif -%}\n \n \n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
Sr.noItem CodeGradeSizeTypeGuagePCSWeight RateAmount

{{ item.idx or \" \" }}

{{ item.item_code or \" \" }}

{{ item.grade or \" \" }}

{{ item.size or \" \" }}

{{ item.thickness or \" \" }}

{{ item.pcs|int}}

{{ item.weight }}

{{ item.rate1 or \" \" }}

{{ item.amount|round(2, 'floor')}}

\n \n
\n \n \n
\n
\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:45.018988", + "module": "khetangroup", + "name": "Party-Unit-2", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format td, .print-format th {\r padding: 3px !important; \r \r}\r.print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r/*.print-format.print-format-preview{*/\r/* padding:40px;*/\r/* margin-right:10px;*/\r/*}*/\r.print-format .row:not(.section-break) {\r line-height: 1;\r margin-top: 5px !important;\r}\r.print-format th {\r color: black;\r font-weight: bold;\r border-bottom-width: 1px !important;\r \r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}\r", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Sales Order", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n \n \n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n {% endif %}{% endfor %}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n

Sales Order

{{ doc.company }}

\n {{ doc.company_address_display }}

Sales Order No:-   {{ doc.name }}

\n

Date:-   {{ frappe.utils.get_datetime(doc.transaction_date).strftime('%d-%m-%Y') }}

Terms of Delivery & Payment : \n

Payment:

Consignee: \n

{{ doc.customer_name or \"\" }}

\n

{{ doc.address_display or \"\" }}

\n
\n {% set bank_accounts = frappe.get_all(\n 'Bank Account',\n filters={'company': doc.company, 'is_company_account': 1},\n fields=['name', 'bank', 'bank_account_no', 'branch_code'],\n limit=1\n ) %}\n {% if bank_accounts %}\n {% set doc_ac = bank_accounts[0] %}\n {% else %}\n {% set doc_ac = {} %}\n {% endif %}\n

Bank Name:  {{ doc_ac.bank or \" \"}}

\n

A/C No :   {{ doc_ac.bank_account_no or \" \" }}

\n

Branch Ifsc Code:  {{ doc_ac.branch_code or \" \" }}

\n
Description of GoodsHSN CodeQuantityRate Amount
{%- for item in doc.items -%}

{{item.item_name or \" \" }}

{% endfor %}
{%- for item in doc.items -%}

{{item.gst_hsn_code or \" \"}}

{% endfor %}
{%- for item in doc.items -%}

{{item.qty or \" \"}} {{ item.uom or \" \" }}

{% endfor %}
{%- for item in doc.items -%}

{{item.rate or \" \"}}

{% endfor %}
{%- for item in doc.items -%}

{{item.amount or \" \" }}

{% endfor %}
{%- for item in doc.taxes -%}{% if item.account_head == \"Output Tax IGST - ST\" %}

IGST

\n \n {% elif item.account_head == \"Output Tax SGST - KG\" and item.account_head == \"Output Tax SGST - KG\" %}\n

CGST

\n

SGST

{%- for item in doc.taxes -%}\n

{{ item.tax_amount or \" \" }}

\n \n {% endfor %}
Total:{{ doc.grand_total }}
Declaration:For Khetan Viniyog Pvt. Ltd.\n

(Authorized signatory)

\n
\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2026-07-23 14:00:46.410374", + "module": "khetangroup", + "name": "Sales Order", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 1, + "css": ".print-format .letter-head {\n margin-bottom: 0px;\n}\n.print-format {\n padding: 1.5rem;\n}\nh2 {\n margin-top: none;\n padding-top: none;\n}\nh3 {\n margin-top: none;\n}\n.print-format label{\n font-weight:bold;\n color:black;\n}\n.print-format .table-bordered {\n border: 1px solid black;\n}\n.print-format .table-bordered th {\n border: 1px solid black;\n color:black;\n font-weight:bold;\n}\n.print-format .table-bordered td, .print-format .table-bordered th {\n border: 1px solid black;\n}\n.print-format .row:not(.section-break) {\n margin-top: 10px !important;\n}\n.table{\n margin: 10px 0;\n}\n.print-format td, .print-format th {\n padding: 5px !important; \n}\n hr \n {\n position: relative;\n border: none;\n height: 2px;\n background: black;\n width:100%;\n}\n@media print {\n .aa {\n padding-left: 0rem ;\n margin:0 ;\n \n \n }\n \n }\n\n ", + "custom_format": 0, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Salary Slip", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": "[{\"fieldname\": \"print_heading_template\", \"fieldtype\": \"Custom HTML\", \"options\": \"{% set employee_doc = frappe.get_doc('Employee', doc.employee) if doc.employee and doc.employee is string else None %}\\n\\n
\\n \\n
\\n \\n \\n \\n

Wage Slip For The Month Of {{frappe.utils.get_datetime(doc.start_date).strftime('%B-%Y') }}

\\n
\\n
\\n \\n \\n
\\n\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"_custom_html\", \"print_hide\": 0, \"label\": \"Custom HTML\", \"fieldtype\": \"HTML\", \"options\": \"{% set employee_doc = frappe.get_doc('Employee', doc.employee) if doc.employee and doc.employee is string else None %}\\n\\n\\n
\\n
\\n \\n
\\n
\\n
{{doc.employee or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.employee_name or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{frappe.utils.get_datetime(employee_doc.date_of_birth).strftime(' %d-%m-%Y') }}
\\n
\\n
\\n
\\n
{{frappe.utils.get_datetime(employee_doc.date_of_joining).strftime(' %d-%m-%Y') }}
\\n
\\n
\\n
\\n
{{doc.department or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.designation or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{employee_doc.plant or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{frappe.utils.get_datetime(doc.start_date).strftime(' %d-%m-%Y') }} To {{frappe.utils.get_datetime(doc.end_date).strftime(' %d-%m-%Y') }}
\\n
\\n
\\n {% if doc.salary_slip_based_on_timesheet == 1 %}\\n \\n
\\n
\\u20b9 {{doc.daily_rate or \\\"-\\\"}}/-
\\n \\n {% else %}\\n
\\n
\\u20b9 {{ \\\"{:,.2f}\\\".format(employee_doc.ctc) }}/-
\\n \\n {% endif %}\\n
\\n \\n
\\n
\\n
\\n
\\n
{{employee_doc.aadhaar_number or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.bank_name or '-'}}
\\n
\\n
\\n
\\n
{{doc.bank_account_no or '-'}}
\\n
\\n
\\n
\\n
{{doc.branch or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{employee_doc.uan_number or '-'}}
\\n
\\n
\\n
\\n
{{employee_doc.pan_number or '-'}}
\\n
\\n
\\n
\\n
{{doc.total_working_days or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.leave_without_pay or \\\"-\\\"}}
\\n
\\n
\\n
\\n
{{doc.payment_days or \\\"-\\\"}}
\\n
\\n \\n
\\n \\n
\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"_custom_html\", \"print_hide\": 0, \"label\": \"Custom HTML\", \"fieldtype\": \"HTML\", \"options\": \"\\n
\\n
\\n
Earnings:
\\n \\n \\n {% if doc.salary_slip_based_on_timesheet == 1 %}\\n \\n {% else %}\\n \\n {% endif %} \\n \\n \\n \\n {%- for component in doc.earnings -%}\\n \\n \\n \\n {% if doc.salary_slip_based_on_timesheet == 1 %}\\n {%- for wh in doc.timesheets -%}\\n \\n {% endfor %}\\n {% else %}\\n \\n {% endif %} \\n \\n\\n \\n {% endfor %}\\n \\n \\n \\n \\n \\n
Sr No.Working HoursComponentAmount
{{component.idx or \\\" \\\" }}{{wh.working_hours or \\\" \\\" }}{{component.salary_component or \\\" \\\" }}\\u20b9 {{ \\\"{:,.2f}\\\".format(component.amount or \\\" \\\") }}/-
Total Earnings\\u20b9 {{ \\\"{:,.2f}\\\".format(doc.gross_pay) }}/-
\\n \\n \\n \\n \\n
\\n
\\n
Deductions:
\\n \\n \\n \\n \\n \\n \\n {%- for component in doc.deductions -%}\\n \\n \\n \\n \\n \\n\\n \\n {% endfor %}\\n \\n \\n \\n \\n \\n
Sr No.ComponentsAmount
{{component.idx or \\\" \\\" }}{{component.salary_component or \\\" \\\" }}\\u20b9 {{ \\\"{:,.2f}\\\".format(component.amount or \\\" \\\") }}/-
Total Deductions\\u20b9 {{ \\\"{:,.2f}\\\".format(doc.total_deduction) }}/-
\\n
\\n
\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"fieldname\": \"_custom_html\", \"print_hide\": 0, \"label\": \"Custom HTML\", \"fieldtype\": \"HTML\", \"options\": \"
\\n
\\n
\\n
\\n\\n
\\n\\n
\\n
\\n
\\n
\\u20b9 {{ \\\"{:,.2f}\\\".format(doc.net_pay) }}/-
\\n
\\n
\\n
\\n
{{doc.total_in_words}}
\\n
\\n\"}]", + "html": null, + "line_breaks": 0, + "margin_bottom": 5.0, + "margin_left": 5.0, + "margin_right": 15.0, + "margin_top": 0.0, + "modified": "2023-11-25 12:52:44.759955", + "module": "khetangroup", + "name": "Khetan Group - Salary Slip", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 1, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": "", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "GatePass", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n
\n

KHETAN VINIYOG PVT.LTD

\n

Gate Pass

\n
\n

SI NO: {{ doc.name }}

\n
\n
\n

Party Name: {{ doc.party_name or \"\"}}

\n

Date: {{frappe.utils.get_datetime(doc.date_time ).strftime(' %d-%m- %Y') }}

\n

Vehicle No: {{ doc.vehicle_no or \"\"}}

\n

Purpose: {{ doc.purpose }}

\n \n \n
\n
\n

Voucher No:{% if doc.purpose == \"Purchase Return\" %}\n {{ doc.purchase_invoice }}\n {% elif doc.purpose == \"Sales Outward\" %}\n {{ doc.sales_invoice }}\n {% elif doc.purpose == \"Returnable Or Non Returnable Transfer Material\" %}\n {{ doc.voucher_no }}\n {% elif doc.purpose == \"Returnable Received Material\" %}\n {{ doc.voucher_no }}\n \n {% endif %}

\n

Time: {{frappe.utils.get_datetime(doc.date_time ).strftime('%I:%M:%S') }}

\n \n

Use For:  {{ doc.use_for }}

\n

Received By: {{ doc.received_by }}

\n
\n
\n \n \n \n \n \n \n {%- for item in doc.purchase_inward_table -%}\n \n \n \n \n \n \n {% endfor %}\n
Sr No.Item NameQty
{{item.idx or \" \"}}{{ item.item_name }}{{ item.qty }}
\n

Authoriased Signature:

\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.884444", + "module": "khetangroup", + "name": "Gatepass Unit-2", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": "\r.pd{\r width:740px!important;\r margin: 0px 15px 0px;\r}\r.print-format td, .print-format th {\r padding: 1px !important; \r \r}\r\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 0px;\r}\r.print-format p {\r margin: 0px 0px 0px;\r}\r\r.print-format .row:not(.section-break) {\r line-height: 1;\r margin-top: 2px !important;\r}\r@media print {\r .pd{\r width:678px!important;\r margin: 0px 15px 0px;\r}\r \r }\r", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Quotation", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

OFFICE Quotation

\n
\n
\n

Customer Name:   {{ doc.customer_name }}

\n

Date:   {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}

\n {% if doc.select_item_type ==\"Guage and Sheet\" %}\n

Details of Pipe and Sheet:

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% for item in doc.items|unique(attribute='item_type') %}\n {% if item.item_type==\"Sheet 202\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Sheet 304\" %}\n \n \n \n {% endif %}\n {% endfor %}\n \n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 202\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 304\" %}\n \n \n {% endif %}\n {% endfor %}\n {% for item in doc.items|unique(attribute='item_type') -%}\n {% if item.item_type==\"Pipe 316\" %}\n \n \n {% endif %}\n {% endfor %} \n
{{ item.item_type }}{{ (doc.rate202 /1.18)| round(2) }}
{{ item.item_type}} {{ (doc.sheet304/1.18)| round(2) or \"\"}}
{{ item.item_type}}{{ (doc.rate202/1.18)| round(2) or \"\"}}
{{ item.item_type}} {{ (doc.rate304/1.18)| round(2) or \"\"}}
{{ item.item_type}} {{ (doc.rate316/1.18)| round(2) or \"\"}}
\n {% else %}\n \n {% endif %}\n
\n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Grand Total: ₹{{ doc.rounded_total}}
G.Weight: {{ doc.total_sold_weight}}
Total: ₹{{ \"{:,.2f}\".format(doc.total)}}
Freight: {% for item in doc.taxes if item.account_head==\"Freight and Forwarding Charges - SU2\" %}\n ₹{{ item.tax_amount }}\n {% else %}\n {% endfor %}
TCS: {% for item in doc.taxes if item.account_head==\"TCS - SU2\" %}\n ₹{{ item.tax_amount }}\n {% else %}\n {% endfor %}
202: {{ doc.quantity202 }}
304: {{ doc.quantity304}}
316: {{ doc.quantity316}}
Total Items: {{ doc.total_no_items}}
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n
Sr.noItem CodeGradeSizeThicknessWeight Per Unit\tW DiffWeightPCSTotal Amount

{{ item.idx or \" \" }}

{{ item.item_code or \" \" }}

{{ item.grade or \" \" }}

{{ item.size or \" \" }}

{{ item.thickness or \" \" }}

{{ item.weight_per_unit or \" \" }}

{{ item.weight_diff| round }}

{{ item.weight }}

{{ item.pcs or \"\" }}

{{ item.amount or \" \" }}

\n
\n \n

Total Net Weight:    {{ doc.total_net_weight }}

\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.941911", + "module": "khetangroup", + "name": "Office Unit-2 Without Rate", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format td, .print-format th {\n padding: 5px !important;\n}\n", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Sales Order", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% set ns = namespace (prev_grade = none) %}\n {% set ns = namespace (prev_sheet = none) %}\n {%- for item in doc.items -%} \n {% if item.grade != ns.prev_grade or item.item_type != ns.prev_sheet %}\n \n {% endif %}\n \n \n \n \n \n {% if item.thickness == \"16G\" %}\n \n {% else %}\n \n {% endif %}\n \n \n \n \n {% set ns.prev_grade = item.grade %}\n {% set ns.prev_sheet = item.item_type %} {% endfor %}\n
Dispatch Done By\n

With Name & Sign

Vehicle No:{{ doc.vehicle_no or \"\"}}
Date With Time:
Party Name: {{ doc.customer_name or \"\"}} Order By
Weight/ PackSI NoGradeSizeGuageOrder QtyPacketPcsWeight
{{ item.idx }}{{ item.grade }}{{ item.size }}{{ item.thickness }}{{ item.thickness }}{{ item.qty|int }}
\n \n \n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:45.046239", + "module": "khetangroup", + "name": "Dispatch Unit-2", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": "", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Quotation", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n

Pipes 202, 304, 316

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
PcsActual WeightTotal Amount
202 Pcs{{ doc.pipe_202_pcs }}{{ doc.pipe_202_actual_w }}{{ doc.pipe_202_total_amount }}
304 pcs{{ doc.pipe_304_pcs }}{{ doc. pipe_304_actual_w }}{{ doc.pipe_304_total_amount }}
316 pcs {{ doc.pipe_316_pcs }}{{ doc.pipe_316_actual_w }}{{ doc.pipe_316_total_amount }}
\n

Sheet 202, 304

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
PcsActual WeightTotal Amount
202 pcs{{ doc.sheet_202_pcs }}{{ doc.sheet_202_actual_w }}{{ doc.sheet_202_total_amount }}
304 pcs{{ doc.sheet_304_pcs }}{{ doc.sheet_304_actual_w }}{{ doc.sheet_304_total_amount }}
\n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.977292", + "module": "khetangroup", + "name": "Type And Sheet Report", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".text{\r color:#1f497d ;\r font: 32px bold Arial, sans-serif;\r}\r.date{\r background-color: #EFBE7D;\r \r}\r.ship{\r font-weight:bold;\r font-size:16px;\r}\r.bgcolor\r{\r \r background-color: #1f497d ;\r color:#FFFFFF;\r font-size:16px;\r font-weight:bold;\r}\rtable, th, td {\r border: 1px solid black;\r \r}\rhr{\r border: 10px solid black;\r}\r\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}\r.print-format td, .print-format th {\r padding: 3px !important; \r \r}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Purchase Order", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n

PURCHASE ORDER

\n \n

Date:

{{ doc.transaction_date }}

\n

{{ doc.name }}

\n

{{ doc.company}}

\n

{{ doc.shipping_address_display }}

\n \n \n \n \n \n \n \n \n \n
VENDORSHIP TO

{{ doc.supplier_name or \" \" }}

\n

{{ doc.address_display or \" \" }}

\t

{{ doc.company or \" \"}}

\n

{{ doc.shipping_address_display }}

\n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n {% endfor %}\n
\n SL.No. MATERIAL DESCRIPTIONQTYUNITRateAMOUNT
{{ item.idx or \" \"}}{{ item.item_name }}{{ item.qty }}{{ item.uom }}{{ item.rate }}{{ item.amount }}
\n \n
\n

AMOUNT : {{ doc.base_total}}

\n {%- for item in doc.taxes -%}\n

{{item.account_head }} @ {{ item.rate }}% : {{ item.tax_amount}}

\n {% endfor %}\n

Grand Total: {{ doc.grand_total }}

\n
Amount Chargable (In Word)
\n

{{ frappe.utils.money_in_words(doc.grand_total) }}

\n
\n \n \n
\n\t\t\t\t
\n\t\t\t\t

Payment Terms

\n\t {%- for item in doc.taxes -%}\n

{{item.account_head }} @ {{ item.rate }}% Extra

\n {% endfor %}\n {%- for item in doc.payment_schedule -%}\n

Payment Terms: After Delivery {{ item.credit_days }} Days

\n {% endfor %}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n
\n

Aurtharised Sing.

\n
\n\t\t\t\t
\n\t\t\t
\n\n \n\n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.733596", + "module": "khetangroup", + "name": "Unit-2 Purchase Order", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".text{\r color:#1f497d ;\r font: 32px bold Arial, sans-serif;\r}\r.date{\r background-color: #EFBE7D;\r \r}\r.ship{\r font-weight:bold;\r font-size:20px;\r}\r.bgcolor\r{\r \r background-color: #1f497d ;\r color:#FFFFFF;\r font-size:16px;\r font-weight:bold;\r}\rtable, th, td {\r border: 1px solid black;\r \r}\rhr{\r border: 10px solid black;\r}\r.print-format.print-format-preview{\r padding:30px;\r}\r.print-format .letter-head {\r margin-bottom: 10px;\r}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Purchase Order", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\r \r \r {% if letter_head and not no_letterhead -%}\r{% if print_settings.repeat_header_footer %}\r
{{ letter_head }}
\r{%- endif %}{%- endif %}\r

PURCHASE ORDER

\r \r

Date:

{{ doc.transaction_date }}

\r

{{ doc.name }}

\r

{{ doc.company}}

\r

{{ doc.shipping_address_display }}

\r \r \r \r \r \r \r \r \r \r
VENDORSHIP TO

{{ doc.supplier_name or \" \" }}

\r

{{ doc.address_display or \" \" }}

\t

{{ doc.company or \" \"}}

\r

{{ doc.shipping_address_display }}

\r \r \r \r \r \r \r \r \r \r \r \r {%- for item in doc.items -%}\r \r \r \r \r \r \r \r \r \r {% endfor %}\r
\r SL.No. MATERIAL DESCRIPTIONQTYUNITRateAMOUNT
{{ item.idx or \" \"}}{{ item.item_name }}{{ item.qty }}{{ item.uom }}{{ item.rate }}{{ item.amount }}
\r \r
\r

AMOUNT : {{ doc.base_total}}

\r {%- for item in doc.taxes -%}\r

{{item.account_head }} @ {{ item.rate }}% : {{ item.tax_amount}}

\r {% endfor %}\r

Grand Total: {{ doc.grand_total }}

\r
Amount Chargable (In Word)
\r

{{ frappe.utils.money_in_words(doc.grand_total) }}

\r
\r \r \r
\r\t\t\t\t
\r\t\t\t\t

Payment Terms

\r\t \r \r \r \r \r \r \r

{{ doc.terms }}

\r\t\t\t\t
\r\t\t\t\t
\r\t\t\t\t
\r
\r

Authorised Sing.

\r
\r\t\t\t\t
\r\t\t\t
\r\r \r\r", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2024-05-08 18:26:11.678562", + "module": "khetangroup", + "name": "Unit -1 Purchase Order", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format td, .print-format th {\r padding: 3px !important; \r}\r.print-format .table-bordered td, .print-format .table-bordered th {\r border: 1px solid black;\r}\r.print-format .table-bordered {\r border: 1px solid black;\r}\r\r.print-format .letter-head {\r margin-bottom: 10px;\r}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Quotation", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Name:{{ doc.customer_name or \" \" }}Date:\n {{frappe.utils.get_datetime(doc.transaction_date).strftime(' %d-%m- %Y') }}
Address:{{ doc.address_display or \"\"}}Quotation-Id:{{ doc.name }}
{% if doc.brand %} Brand: {% endif %}{{ doc.brand or \"\" }}QTY:{{ doc.total_qty or \" \" }}
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {%- for item in doc.items -%}\n \n \n \n \n \n \n \n \n \n \n {% endfor %}\n \n \n \n \n \n \n \n \n \n \n
Item Name ColourSizeQtyTotal SetTotal\"Weight In Kg
{{ item.item_name or \" \" }}{{ item.color or \" \" }}{{ item.size or \" \" }}{{ item.qty_box or \" \" }}{{ item.total_set or \" \" }}{{ item.total_inches or \" \" }} {{ item.custom_box_wise_cal_weight or \" \" }}
Total:{{ doc.items|sum(attribute='qty_box')}}{{ doc.items|sum(attribute='total_set')}}{{ doc.items|sum(attribute='total_inches')}} {% if item.set_box and item.set_box != 0 %}\n {{ ((item.qty / item.set_box | float)|round) * item.weight_per_unit}}\n {% else %}\n 0\n {% endif %}
\n

{% if doc.terms %} Terms And Condition: {% endif %}{{ doc.terms or \" \" }}

\n \n ", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2024-03-21 11:25:28.680802", + "module": "khetangroup", + "name": "Quotatioon Unit-1 Without Rate", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format td, .print-format th {\n padding: 5px !important;\n}\n", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Sales Order", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {% for item in doc.items %}\n \n \n \n \n \n \n \n \n {% endfor %}\n
Dispatch Done By\n

With Name & Sign

Vehicle No:{{ doc.vehicle_no or \"\"}}
Date With Time:
Party Name: {{ doc.customer_name or \"\"}} Order By
SI NoBrandSizeColorOrder QtyPacketWeight
{{ item.idx }}{{ item.item_code }} {{ item.size or 0}} {{ item.color or \"\" }} {{ item.qty or 0}}{{ item.set_box|float * item.qty}}
\n \n \n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.656893", + "module": "khetangroup", + "name": "Dispatch Unit-1", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": "", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Item", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n
\n \"QR\n \n
\n\n\n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-11-25 12:52:44.634727", + "module": "khetangroup", + "name": "Item Barcode", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": "\n\n .print-format {\n margin-top: 2mm;\n margin-left: 0mm;\nmargin-right: 0mm;\nmargin-bottom: 0mm;\n\n\n\n}\n.print-format p {\n margin: 0px 0px 0px;\n}\n\n@media print{\n .print-format {\n margin-top: 2mm;\n margin-left: 0mm;\nmargin-right: 0mm;\nmargin-bottom: 0mm;\n\n\n\n}\n\n.print-format p {\n margin: 0px 0px 0px;\n}\n\n\n}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Qr Code", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n\n\n\n QR Code Print Format\n\n\n\n{% set count = 0 %}\n\n{% for i in range(doc.barcode_number|int) %}\n {% if count <= doc.barcode_number %}\n
\n \n {{ a.total_box }}\n {{ a.total_weight }}\n \n \n \n \n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2026-07-23 12:14:57.788880", + "module": "khetangroup", + "name": "Dispatch unit 1", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + }, + { + "absolute_value": 0, + "align_labels_right": 0, + "css": ".print-format td, .print-format th {\n padding: 5px !important;\n}\n\n.bg-tr{\n background-color : #326da8 !important;\n color:white !important;\n}\n.print-format .row:not(.section-break) {\n line-height: 1.6;\n margin-top: 5px !important;\n}\n.table {\n font-size: inherit;\n margin: 9px 0px;\n}\n\n.bg-footer {\n \n background-color : #326da8 !important;\n color:white !important;\n\n}\n\n@media print {\n .bg-footer {\n position:fixed;\n \n background-color : #326da8 !important;\n color:#FFFFFF !important;\n \n }\n \n}", + "custom_format": 1, + "default_print_language": "en", + "disabled": 0, + "doc_type": "Sales Invoice", + "docstatus": 0, + "doctype": "Print Format", + "font": null, + "font_size": 14, + "format_data": null, + "html": "\n \n \n
\n {% if letter_head and not no_letterhead -%}\n{% if print_settings.repeat_header_footer %}\n
{{ letter_head }}
\n{%- endif %}{%- endif %}\n
\n

Proforma Invoice

\n
\n
\n \n To,\n

{{ doc.address_display or \"\" }}

\n

Phone No.:{{ doc.contact_mobile or \"\" }}

\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
REF.No.{{ doc.name }}
Date{{ frappe.utils.get_datetime(doc.posting_date).strftime('%d-%m-%Y') }}
Party Ref. No.
\n
\n
\n \n \n \n \n \n \n \n \n \n {% for item in doc.items %}\n \n \n \n \n \n \n \n \n {% endfor %}\n
S.NO Product Description QuantityPrice /Unit Total Price
{{ item.idx }} {{ item.item_name }}{{ item.qty }}{{ item.rate }} {{ item.amount }}
\n
\n
\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
Subtotal {{ doc.total or \"\"}}
GST%12 {{ doc.base_total_taxes_and_charges or \"\"}}
Total Amount {{ doc.grand_total or \"\"}}
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Amount In Words{{ doc.base_in_words or \"\" }}
Terms & Conditions
1Price Basis EX Works
2Taxes12% GST
3Payment Terms 100% Advance
4Delivery PeriodAfter Payment Within 05 Days
5Packaging TypeCarton Box
6Warranty8 Years
7Validity7 Days
8Other T&C

1. BOM as per standard K-solare BOM.

\n

2. The above prices are strictly for the Quantity (MOQ). The pricing may vary for\nother quantity.

9Bank Details

Account no: - 50200024361977

\n

IFSC code: - HDFC0002484 Branch: - ADITYAPUR

\n

Name: - KHETAN UDYOG

\n \n \n", + "line_breaks": 0, + "margin_bottom": 15.0, + "margin_left": 15.0, + "margin_right": 15.0, + "margin_top": 15.0, + "modified": "2023-12-26 11:15:21.041424", + "module": "khetangroup", + "name": "Khetan Solar", + "page_number": "Hide", + "pdf_generator": null, + "print_format_builder": 0, + "print_format_builder_beta": 0, + "print_format_for": null, + "print_format_type": "Jinja", + "raw_commands": null, + "raw_printing": 0, + "report": null, + "show_section_headings": 0, + "standard": "No" + } ] \ No newline at end of file