{"id":11168,"date":"2023-07-26T20:42:07","date_gmt":"2023-07-26T15:12:07","guid":{"rendered":"https:\/\/selfimagination.in\/tips\/?p=11168"},"modified":"2023-07-26T20:42:10","modified_gmt":"2023-07-26T15:12:10","slug":"modify-google-sheet-from-html","status":"publish","type":"post","link":"https:\/\/selfimagination.in\/tips\/modify-google-sheet-from-html\/","title":{"rendered":"Modify Google Sheet from HTML | HTML Invoices from Google Sheets Data and Update Records"},"content":{"rendered":"\n<p>Modify Google Sheet from HTML : Generate professional HTML invoices dynamically from Google Sheets data, and efficiently update records. Learn how to seamlessly modify Google Sheets directly from HTML using easy-to-implement techniques.<\/p>\n\n\n\n<p>\u0907\u0938 Article(Modify Google Sheet from HTML)  \u092e\u0947 \u0939\u092e\u0928\u0947 Local HTML Page \u0938\u0947 Google Sheet \u092a\u0930 Data \u092d\u0947\u091c\u0928\u093e \u0914\u0930 Save \u0915\u0930\u0928\u093e , \u0914\u0930 \u091c\u094b \u092a\u0939\u0932\u0947 \u0938\u0947 \u0938\u0948\u0935 Data \u0939\u0948\u0902 \u0909\u0938\u0947 HTML \u092a\u0930 Java Script \u0914\u0930 Apps Script \u0915\u0940 \u092e\u0926\u0926 \u0938\u0947 Open \u0915\u0930\u0928\u093e \u0914\u0930 Changes \u0915\u0930 \u092a\u0941\u0928\u0903 Data \u0915\u094b Google Sheet \u092a\u0930 Update \u0915\u0930\u0928\u093e \u092c\u0924\u093e\u092f\u093e \u0917\u092f\u093e \u0939\u0948\u0902 \u0964 <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u092f\u0939 Article 3 Part \u092e\u0947 \u0932\u093f\u0916\u093e \u0917\u092f\u093e \u0939\u0948\u0902 \u0938\u092c\u0938\u0947 \u092a\u0939\u0932\u0947 Part \u092e\u0947 \u0939\u092e\u0928\u0947 Data \u0915\u094b HTML \u0938\u0947 Google Sheet \u092a\u0930 Send \u0915\u093f\u092f\u093e \u0925\u093e \u0914\u0930 Save \u0915\u093f\u092f\u093e \u0925\u093e \u0935\u0939 \u0906\u092a\u0915\u094b \u0928\u093f\u092e\u094d\u0928 Article \u092e\u0947 Detail \u092e\u0947 \u092e\u093f\u0932 \u091c\u093e\u090f\u0917\u093e\u0964 <\/li>\n<\/ul>\n\n\n\n<p><a href=\"https:\/\/selfimagination.in\/tips\/submit-html-form-to-google-sheet\/\">Submit a HTML Form to Google Sheet using Apps Script<\/a><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0926\u0942\u0938\u0930\u0947 Part \u092e\u0947 Google Sheet \u092a\u0930 Saved Data \u0915\u094b Open \u0915\u0930 \u0926\u093f\u0916\u093e\u092f\u093e \u0925\u093e \u091c\u093f\u0938\u0915\u0947 \u092c\u093e\u0930\u0947 \u092e\u0947 \u091c\u093e\u0928\u0915\u093e\u0930\u0940 \u0906\u092a\u0915\u094b \u0928\u093f\u092e\u094d\u0928 Article \u0938\u0947 \u092e\u093f\u0932 \u091c\u093e\u090f\u0917\u0940 \u0964 <\/li>\n<\/ul>\n\n\n\n<p><a href=\"https:\/\/selfimagination.in\/tips\/search-html-invoice-google-sheet-apps-script\/\">Effortlessly Search HTML Invoices from Google Sheet with Apps Script<\/a><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0914\u0930 \u0924\u093f\u0930\u0938\u0947 \u0914\u0930 \u0907\u0938 \u092a\u0930\u0924 \u092e\u0947 \u0939\u092e \u091c\u094b data \u0939\u092e\u0928\u0947 Open \u0915\u093f\u092f\u093e \u0939\u0948\u0902 \u0909\u0938\u0947 Google Sheet \u092a\u0930 Update \u0915\u0930 \u0930\u0939\u0947 \u0939\u0948\u0902 \u0964 \u0907\u0938\u092e\u0947 HTML, CSS, JavaScript, \u0914\u0930 Apps Script \u0915\u093e \u0905\u092d\u0940 \u0924\u0915 \u0915\u0947 \u0924\u0940\u0928\u094b\u0902 \u0939\u0940 Part \u0915\u093e Code \u0939\u0948\u0902 \u0932\u0947\u0915\u093f\u0928 \u0939\u093f\u0928\u094d\u0926\u0940 \u092e\u0947 Detail Description \u0915\u0947 \u0932\u093f\u090f \u0907\u0938 Article \u092e\u0947 \u0915\u0947\u0935\u0932 \u0924\u0940\u0938\u0930\u0947 Part \u0938\u0947 Related \u0939\u0940 \u0932\u093f\u0916\u093e \u0917\u092f\u093e \u0939\u0948\u0902, <\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>Table of Contents<\/h2><nav><ul><li><a href=\"#step-1-create-a-google-sheet\">Step 1 : Create a Google Sheet<\/a><ul><li><a href=\"#modify-google-sheet-from-html-on-you-tube\">Modify Google Sheet from HTML on YouTube<\/a><\/li><\/ul><\/li><li><a href=\"#step-2-apps-script-code-for-modify-google-sheet-from-html\">Step 2 : Apps Script Code for Modify Google Sheet from HTML<\/a><\/li><li><a href=\"#step-3-create-html-page-for-modify-google-sheet-from-html\">Step 3 : Create HTML Page for Modify Google Sheet from HTML<\/a><\/li><li><a href=\"#step-4-create-css-file\">Step 4 : Create CSS File <\/a><\/li><li><a href=\"#step-5-create-css-media-print-file-for-print-view\">Step 5: Create CSS Media Print File for Print View<\/a><\/li><li><a href=\"#step-6-create-java-script-file-for-modify-google-sheet-from-html\">Step 6 : Create JavaScript File For Modify Google Sheet from HTML<\/a><\/li><li><a href=\"#step-7-preview-html-for-modify-google-sheet-from-html\">Step 7:  Preview HTML for Modify Google Sheet from HTML<\/a><\/li><li><a href=\"#\u0939\u092e\u093e\u0930\u0947-\u0905\u0928\u094d\u092f-\u0906\u0930\u094d\u091f\u093f\u0915\u0932\">\u0939\u092e\u093e\u0930\u0947 \u0905\u0928\u094d\u092f \u0906\u0930\u094d\u091f\u093f\u0915\u0932<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-1-create-a-google-sheet\">Step 1 : Create a Google Sheet<\/h2>\n\n\n\n<p>\u0938\u092c\u0938\u0947 \u092a\u0939\u0932\u0947 \u0906\u092a \u0928\u093f\u092e\u094d\u0928 Format \u092e\u0947 \u090f\u0915 Google Sheet \u092c\u0928\u093e \u0932\u0940\u091c\u0940\u090f , \u0907\u0938\u092e\u0947 \u0906\u092a\u0915\u094b \u0926\u094b Sheet \u092c\u0928\u093e\u0928\u093e \u0939\u0948\u0902 , \u090f\u0915 \u0915\u093e \u0928\u093e\u092e Inv \u0930\u0916\u0928\u093e \u0939\u0948\u0902 \u0914\u0930 \u0926\u0942\u0938\u0930\u0947 \u0915\u093e \u0928\u093e\u092e Item \u0930\u0916\u0928\u093e \u0939\u0948\u0902, <\/p>\n\n\n\n<p>Inv \u0935\u093e\u0932\u0940 Sheet \u092e\u0947 Invoice \u0938\u0947 Related Data \u0939\u0948\u0902, \u0906\u092a \u0905\u092a\u0928\u0947 \u0915\u093e\u0930\u094d\u092f \u0915\u0947 \u0905\u0928\u0941\u0938\u093e\u0930 \u092f\u0939\u093e\u0901 \u092a\u0930 Data \u0932\u0947 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902 \u0964  <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"312\" src=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-1.png?resize=640%2C312&#038;ssl=1\" alt=\"\" class=\"wp-image-11059\" srcset=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-1.png?resize=1024%2C499&amp;ssl=1 1024w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-1.png?resize=300%2C146&amp;ssl=1 300w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-1.png?resize=768%2C374&amp;ssl=1 768w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-1.png?resize=150%2C73&amp;ssl=1 150w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-1.png?w=1506&amp;ssl=1 1506w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-1.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p>\u0928\u093f\u092e\u094d\u0928 Sheet \u091c\u093f\u0938\u0915\u093e \u0928\u093e\u092e Item \u0939\u0948\u0902 \u0907\u0938\u092e\u0947 \u0939\u092e\u0928\u0947 Item \u0915\u093e Data \u0932\u093f\u092f\u093e \u0939\u0948\u0902 \u0964 \u092f\u0939\u093e\u0901 \u092a\u0930 \u092d\u0940 \u0906\u092a \u0905\u092a\u0928\u0947 \u0935\u094d\u092f\u0935\u0938\u093e\u092f \u0915\u0947 \u0905\u0928\u0941\u0938\u093e\u0930 \u0932\u093f\u0938\u094d\u091f \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u0930 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"314\" src=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-2.png?resize=640%2C314&#038;ssl=1\" alt=\"\" class=\"wp-image-11061\" srcset=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-2.png?resize=1024%2C503&amp;ssl=1 1024w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-2.png?resize=300%2C147&amp;ssl=1 300w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-2.png?resize=768%2C377&amp;ssl=1 768w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-2.png?resize=150%2C74&amp;ssl=1 150w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-2.png?w=1502&amp;ssl=1 1502w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-2.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p>\u0909\u092a\u0930\u094b\u0915\u094d\u0924 \u0926\u094b\u0928\u094b\u0902 \u0939\u0940 Sheet \u0915\u093e \u0928\u093e\u092e \u0915\u093e \u0906\u092a\u0915\u094b \u0935\u093f\u0936\u0947\u0937 \u0927\u094d\u092f\u093e\u0928 \u0930\u0916\u0928\u093e \u0939\u0948\u0902 \u092a\u0939\u0932\u0940 Sheet \u0913\u0930 \u0926\u0942\u0938\u0930\u0940 Sheet \u0926\u094b\u0928\u094b\u0902 \u092e\u0947 \u0939\u0940 \u0906\u092a\u0915\u094b I Capital \u092e\u0947 \u0939\u0940 \u0932\u0947\u0928\u093e \u0939\u0948\u0902 \u0964 \u092f\u0926\u093f \u0906\u092a\u0928\u0947 Capital \u092e\u0947 \u0928\u0939\u0940\u0902 \u0932\u093f\u092f\u093e \u0924\u094b Link \u0939\u094b\u0928\u0947 \u092e\u0947 \u0907\u0936\u0942 \u0906\u090f\u0902\u0917\u0947 \u0964 <\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"modify-google-sheet-from-html-on-you-tube\">Modify Google Sheet from HTML on YouTube<\/h3>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"HTML Invoices from Google Sheets Data and Update Records  | Modify Google Sheet from Html\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/ErdUfo4YxIo?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-2-apps-script-code-for-modify-google-sheet-from-html\">Step 2 : Apps Script Code for Modify Google Sheet from HTML<\/h2>\n\n\n\n<p>\u0905\u092c \u0906\u092a\u0915\u094b Extension \u092e\u0947 \u091c\u093e \u0915\u0930 Apps Script Open \u0915\u0930\u0928\u093e \u0939\u0948\u0902 \u0964 <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-6.png?resize=199%2C116&#038;ssl=1\" alt=\"\" class=\"wp-image-11084\" width=\"199\" height=\"116\" srcset=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-6.png?w=493&amp;ssl=1 493w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-6.png?resize=300%2C175&amp;ssl=1 300w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-6.png?resize=150%2C88&amp;ssl=1 150w\" sizes=\"auto, (max-width: 199px) 100vw, 199px\" \/><\/figure>\n<\/div>\n\n\n<p>Apps Script \u092e\u0947 \u0906\u092a\u0915\u094b \u092f\u0939 \u0928\u093f\u092e\u094d\u0928 Code Paste \u0915\u0930\u0928\u093e \u0939\u0948\u0902 \u0964 <\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre title=\"code.gs\" class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">let MySheets  = SpreadsheetApp.getActiveSpreadsheet();  \/\/01\nlet InvSheet  = MySheets.getSheetByName(\"Inv\");                   \nlet ItemSheet = MySheets.getSheetByName(\"Item\");\n\nfunction doPost(e)          \/\/02 \n{\n  let Inv = e.parameters; \n  let Qtys = Inv.qty;     \n  let IsNew = Inv.IsNew;\n\n  if (IsNew == 'Y') {\n    InvSheet.appendRow([Inv.inv_no[0], Inv.inv_dt[0], Inv.cust_nm[0], Inv.addr[0], Inv.city[0]]);    \/\/06\n\n    let i = 0;\n    Qtys.forEach(function (value, index)                       \/\/07\n    {\n      if (i &gt; 0) {\n        InvSheet.appendRow([\"\", \"\", \"\", \"\", \"\", Inv.item_nm[index], value, Inv.rate[index], Inv.amt[index]]);  \/\/08\n      }\n      i++;\n\n\n    });\n  }\n  else {\n\n    InvSheet.getRange(Inv.StartRow, 1, 1, 5).setValues([[Inv.inv_no[0], Inv.inv_dt[0], Inv.cust_nm[0], Inv.addr[0], Inv.city[0]]]);\n\n    let NextRow = Inv.StartRow;\n    let DeleteRow = +Inv.StartRow + 1;\n    InvSheet.deleteRows(DeleteRow, Inv.RowCount);\n\n    let i = 0;\n    Qtys.forEach(function (value, index)                       \/\/07\n    {\n      if (i &gt; 0) {\n        NextRow++;\n        InvSheet.insertRows(NextRow, 1);\n        InvSheet.getRange(NextRow, 1, 1, 9).setValues([[\"\", \"\", \"\", \"\", \"\", Inv.item_nm[index], value, Inv.rate[index], Inv.amt[index]]]);\n\n      }\n      i++;\n    });\n  }\n  return ContentService.createTextOutput(\"Data Submitted\"); \/\/09\n}\n\nfunction doGet(e) {  \/\/03\n\n  let page = e.parameter.page;\n\n  if (page == null || page == undefined) {\n    page = \"index\";\n    return HtmlService.createTemplateFromFile(page).evaluate();\n  }\n  else if (page == 'dropdown') {\n    let table = ItemSheet.getRange(\"A:A\").getValues().filter(r =&gt; r.every(Boolean));\n    let str = JSON.stringify(table);\n    return ContentService.createTextOutput(str);\n  }\n  else if (page == 'max') {\n    let table = InvSheet.getRange(\"A:A\").getValues().filter(Number);\n    let myMax = Math.max(...table) + 1;\n    return ContentService.createTextOutput(myMax);\n  }\n  else if (page == 'search') {\n    let no = e.parameter.no;\n    let ReturnData = InvSheet.getRange(\"A:A\").createTextFinder(no).matchEntireCell(true).findAll();\n\n    let StartRow = 0;\n    let EndRow = 0;\n\n    ReturnData.forEach(function (range) {\n      StartRow = range.getRow();\n    });\n\n    if (StartRow &gt; 0) {\n\n      for (var i = StartRow + 1; i &lt;= StartRow + 10; i = i + 1) {\n\n        let val = InvSheet.getRange(i, 6).getValue();\n\n        if (val == \"\") {\n          EndRow = i - 1;\n          break;\n        }\n\n      }\n\n      let table = InvSheet.getRange(\"A\" + StartRow + \":I\" + EndRow).getValues();\n\n      \/\/let str = JSON.stringify(table);\n      let cnt = EndRow - StartRow;\n      let str = JSON.stringify({ record: table, SR: StartRow, CNT: cnt });\n\n      return ContentService.createTextOutput(str);\n    }\n    else {\n      let str = JSON.stringify(\"NOT FOUND\");\n      return ContentService.createTextOutput(str);\n    }\n  }\n\n  else if (page == 'all') {\n       let table = InvSheet.getRange(\"A:E\").getValues().filter(r=&gt;r.every(Boolean));\n       let str = JSON.stringify(table);\n       return ContentService.createTextOutput(str); \n  }\n\n \n}\n\n\n<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>01 :<\/strong> \u0907\u0938\u092e\u0947 \u0939\u092e\u0928\u0947 \u091c\u094b Sheet \u092a\u0930 \u0926\u094b pages \u092f\u093e sheet \u092c\u0928\u093e\u0908 \u0925\u0940 \u0909\u0928 \u0926\u094b\u0928\u094b\u0902 \u0939\u0940 Sheet \u0915\u094b Connect \u0915\u093f\u092f\u093e \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>02 :<\/strong> \u092f\u0939\u093e\u0901 \u092a\u0930 \u0939\u092e\u0928\u0947 Invoice ke Data \u0915\u094b Save \u0915\u0930\u0928\u0947 \u0938\u0947 Related Code \u0932\u093f\u0916\u093e \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>03 :<\/strong> \u092f\u0939\u093e\u0901 \u092a\u0930 \u0939\u092e\u0947\u0902 Parameter pass \u0915\u0930 \u0905\u0932\u0917 &#8211; \u0905\u0932\u0917 \u0924\u0930\u0939 \u0915\u0947 \u091f\u093e\u0938\u094d\u0915 \u0915\u093f\u090f \u0939\u0948\u0902 \u0964 \n<ul class=\"wp-block-list\">\n<li><strong>Dropdown :<\/strong> \u0907\u0938\u0938\u0947 \u0939\u092e\u0928\u0947 Item \u0915\u0940 Dropdown \u092e\u0947 Data \u0926\u093f\u0916\u093e\u092f\u093e \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>Max :<\/strong> \u0907\u0938\u0938\u0947 \u0939\u092e\u0928\u0947 \u091c\u094b Invoice open \u0915\u0930\u0924\u0947 \u0939\u0940 New Number \u0906\u0924\u093e \u0939\u0948\u0902 \u0909\u0938\u0947 Generate \u0915\u0930\u0935\u093e\u092f\u093e \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>Search :<\/strong> \u0907\u0938\u0938\u0947 \u0939\u092e \u0926\u093f\u090f \u0917\u090f Invoice No \u092a\u0930 Record \u0915\u094b Open \u0915\u0930\u0935\u093e\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>All :<\/strong> \u0907\u0938\u0938\u0947 \u0939\u092e\u0928\u0947 \u090f\u0915 \u0938\u093e\u0925 \u0938\u092d\u0940 Invoice \u0915\u0940 List \u091c\u094b Show All Data Click \u0915\u0930\u0928\u0947 \u0938\u0947 \u0906\u0924\u0940 \u0939\u0948\u0902 \u0909\u0938\u0947 \u0926\u093f\u0916\u093e\u092f\u093e \u0939\u0948\u0902 \u0964 <\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>\u0907\u0938\u0915\u0947 \u092c\u093e\u0926 \u0906\u092a\u0915\u094b \u0907\u0938 Apps Script \u0915\u094b \u0921\u093f\u092a\u094d\u0932\u0949\u0907 \u0915\u0930\u0928\u093e \u0939\u0948\u0902 \u0964 \u0921\u093f\u092a\u094d\u0932\u0949\u0907 \u0915\u0948\u0938\u0947 \u0915\u093f\u092f\u093e \u091c\u093e\u0924\u093e \u0939\u0948\u0902 \u0907\u0938\u0915\u0947 \u092c\u093e\u0930\u0947 \u092e\u0947 \u092e\u0947\u0930\u0947 \u0926\u094d\u0935\u093e\u0930\u093e Article \u092c\u0928\u093e\u092f\u093e \u0917\u092f\u093e \u0939\u0948\u0902 \u0906\u092a \u0928\u093f\u092e\u094d\u0928 Article \u0915\u0940 Help \u0938\u0947 Deploy \u0915\u0930 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/p>\n\n\n\n<p><a href=\"https:\/\/selfimagination.in\/tips\/deploying-apps-script-as-a-web-api\/\"><strong>Article : <\/strong>DEPLOYING APPS SCRIPT AS A WEB API: A STEP-BY-STEP GUIDE<\/a><\/p>\n\n\n\n<p>Successfully Deploy \u0939\u094b\u0928\u0947 \u0915\u0947 \u092c\u093e\u0926 \u0906\u092a\u0915\u094b \u090f\u0915 Link \u092e\u093f\u0932\u0924\u093e \u0939\u0948\u0902 \u0909\u0938 \u0932\u093f\u0902\u0915 \u0915\u094b \u0906\u092a\u0915\u094b copy \u0915\u0930\u0928\u093e \u0939\u0948\u0902 \u0914\u0930 \u091c\u094b \u0939\u092e JavaScript \u0932\u093f\u0916\u0947\u0902\u0917\u0947 \u0924\u092c \u0909\u0938 Link \u0915\u094b \u0906\u092a\u0915\u094b Paste \u0915\u0930\u0928\u093e \u0939\u094b\u0917\u0940 , \u091c\u094b \u0928\u093f\u092e\u094d\u0928 \u092a\u094d\u0930\u0915\u093e\u0930 \u0938\u0947 \u0939\u094b\u0917\u0940 \u0964 <\/p>\n\n\n\n<p>https:\/\/script.google.com\/macros\/s\/AKfy&#8230;&#8230;XOQ\/exec<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-3-create-html-page-for-modify-google-sheet-from-html\">Step 3 : Create HTML Page for Modify Google Sheet from HTML<\/h2>\n\n\n\n<p>\u0907\u0938\u0915\u0947 \u092c\u093e\u0926 \u0906\u092a \u0905\u092a\u0928\u0947 local Computer \u092f\u093e \u091c\u093f\u0938 \u092d\u0940 Server \u092a\u0930 Google Sheet \u0915\u093e Data \u0926\u093f\u0916\u093e\u0928\u093e \u091a\u093e\u0939\u0924\u0947 \u0939\u0948\u0902 \u0935\u0939\u093e\u0901 \u092a\u0930 \u090f\u0915 HTML \u0915\u093e Page \u092c\u0928\u093e \u0932\u0940\u091c\u093f\u090f \u091c\u093f\u0938\u0915\u093e \u0928\u093e\u092e \u0906\u092a\u0915\u094b index.html \u0930\u0916\u0928\u093e \u0939\u0948\u0902 \u092f\u093e \u0906\u092a \u0905\u092a\u0928\u0947 \u0939\u093f\u0938\u093e\u092c \u0938\u0947 \u092d\u0940 \u0930\u0916 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/p>\n\n\n\n<p>\u0907\u0938 HTML Code \u0915\u0947 form tag \u092a\u0930 action \u092e\u0947 \u0939\u092e\u0947 Apps Script \u0938\u0947 Deploy \u0915\u0930 \u091c\u094b \u0932\u093f\u0902\u0915 \u0906\u0908 \u0925\u0940 \u0935\u0939\u0940 Paste \u0915\u0930\u0928\u093e \u0939\u0948\u0902 , \u0910\u0938\u093e \u0915\u0930\u0928\u0947 \u0938\u0947 \u091c\u092c \u0939\u092e form \u0915\u094b save \u0915\u0930\u0947\u0902\u0917\u0947 \u0924\u094b Data Google Sheet \u092a\u0930 Store \u0939\u094b \u091c\u093e\u090f\u0917\u093e \u0964 <\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre title=\"index.html\" class=\"wp-block-code\"><code lang=\"markup\" class=\"language-markup\">&lt;!doctype html&gt;\n&lt;html lang=\"en\"&gt;\n  &lt;head&gt;\n    &lt;meta charset=\"utf-8\"&gt;\n    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"&gt;\n    &lt;title&gt;Imagination Invoice Example&lt;\/title&gt;\n    &lt;!-- For Bootstrap--&gt;\n    &lt;link href=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.2.3\/dist\/css\/bootstrap.min.css\" rel=\"stylesheet\" integrity=\"sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65\" crossorigin=\"anonymous\"&gt;\n    \n    &lt;!-- CSS For Print Format --&gt;\n    &lt;link rel=\"stylesheet\" media=\"print\" href=\"invoiceprint.css\"&gt;\n    \n    &lt;!-- CSS For Invoice --&gt;\n    &lt;link rel=\"stylesheet\"  href=\"invoice.css\"&gt;\n\n    &lt;!-- jQuery CDN --&gt;\n    &lt;!--&lt;script src=\"https:\/\/code.jquery.com\/jquery-3.6.2.slim.js\" integrity=\"sha256-OflJKW8Z8amEUuCaflBZJ4GOg4+JnNh9JdVfoV+6biw=\" crossorigin=\"anonymous\"&gt;&lt;\/script&gt;--&gt;\n    &lt;script src=\"https:\/\/code.jquery.com\/jquery-3.6.3.js\" &gt;&lt;\/script&gt;\n    &lt;!-- For Invoice  --&gt;\n    &lt;script src=\"invoice.js\"&gt;&lt;\/script&gt;\n    \n    &lt;link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap-icons@1.3.0\/font\/bootstrap-icons.css\"&gt;\n\n&lt;\/head&gt;\n  &lt;body&gt;\n    \n\n    &lt;div class=\"container \"&gt;\n\n      &lt;form method=\"POST\" class=\"needs-validation\" novalidate   action=\"https:\/\/script.google.com\/macros\/s\/...\/exec\"   &gt;\n\n        &lt;div class=\"card mt-3\"&gt;\n            &lt;div class=\"card-header text-center\"&gt;\n             &lt;h4&gt;Imagination (INVOICE) Apps Script&lt;\/h4&gt;\n            &lt;\/div&gt;\n            &lt;div class=\"card-body\"&gt;\n               &lt;div class=\"row\"&gt;\n                    &lt;div class=\"col-8\"&gt;\n                        &lt;div class=\"input-group mb-3\"&gt;\n                            &lt;span class=\"input-group-text\" &gt;Customer&lt;\/span&gt;\n                            &lt;input type=\"text\" class=\"form-control\"   \n                                   placeholder=\"Customer\" name=\"cust_nm\" \n                                   required minlength=\"4\"  &gt;\n\n                            &lt;div class=\"invalid-feedback\"&gt;\n                                Please Enter Customer Name &lt;\/div&gt;                          \n                        &lt;\/div&gt;\n            \n                        &lt;div class=\"input-group mb-3\"&gt;\n                            &lt;span class=\"input-group-text\" &gt;Address&lt;\/span&gt;\n                            &lt;input type=\"text\" \n                                   class=\"form-control\" placeholder=\"Address\" \n                                   name=\"addr\"  &gt;\n                        &lt;\/div&gt;\n            \n                        &lt;div class=\"input-group mb-3\"&gt;\n                            &lt;span class=\"input-group-text\" &gt;City&lt;\/span&gt;\n                            &lt;input type=\"text\" class=\"form-control\" \n                                   placeholder=\"City\"  name=\"city\"&gt;\n                        &lt;\/div&gt;\n                    &lt;\/div&gt;\n                    &lt;div class=\"col-4\"&gt;\n                      \n                        &lt;div class=\"input-group mb-3\"&gt;\n                            &lt;span class=\"input-group-text\" &gt;Inv. No&lt;\/span&gt;\n                            &lt;input type=\"text\" class=\"form-control\" \n                                   placeholder=\"Inv. No\"  id=\"inv_no\" \n                                   name=\"inv_no\" autocomplete=\"off\" \n                                   required &gt;\n                            &lt;div class=\"input-group-append\"&gt;\n                                  &lt;button class=\"btn btn-outline-secondary\"  \n                                          type=\"button\" onclick=\"Search();\"&gt;\n                                      &lt;i class=\"bi bi-search\"&gt;&lt;\/i&gt;&lt;\/button&gt;\n                            &lt;\/div&gt;\n                            &lt;div class=\"valid-feedback\"&gt;Invoice No. is \n                            OK&lt;\/div&gt;\n                        &lt;\/div&gt;\n\n                        &lt;div class=\"input-group mb-3\"&gt;\n                            &lt;span class=\"input-group-text\" &gt;Inv. Date&lt;\/span&gt;\n                            &lt;input type=\"date\" class=\"form-control\" \n                                   placeholder=\"Inv. Date\" name=\"inv_dt\"&gt;\n                        &lt;\/div&gt;\n                    &lt;\/div&gt;\n               &lt;\/div&gt;\n\n               &lt;input type=\"hidden\"  id=\"IsNew\"    name=\"IsNew\"    value=\"Y\"&gt;\n               &lt;input type=\"hidden\"  id=\"StartRow\" name=\"StartRow\" value=\"0\"&gt; \n               &lt;input type=\"hidden\"  id=\"RowCount\" name=\"RowCount\" value=\"0\"&gt; \n\n                &lt;table class=\"table table-bordered\"&gt;\n                    &lt;thead class=\"table-success\"&gt;\n                      &lt;tr&gt;\n                        &lt;th scope=\"col\"&gt;#&lt;\/th&gt;\n                        &lt;th scope=\"col\"&gt;Particular&lt;\/th&gt;\n                        &lt;th scope=\"col\" class=\"text-end\"&gt;Qty&lt;\/th&gt;\n                        &lt;th scope=\"col\" class=\"text-end\"&gt;Rate&lt;\/th&gt;\n                        &lt;th scope=\"col\" class=\"text-end\"&gt;Amount&lt;\/th&gt;\n                        &lt;th scope=\"col\" class=\"NoPrint\"&gt;                         \n                            &lt;button type=\"button\" \n                                    class=\"btn btn-sm btn-success\" \n                                    onclick=\"BtnAdd()\"&gt;+&lt;\/button&gt;\n                        &lt;\/th&gt;\n\n                      &lt;\/tr&gt;\n                    &lt;\/thead&gt;\n                    &lt;tbody id=\"TBody\"&gt;\n                      &lt;tr id=\"TRow\" class=\"d-none\"&gt;\n                        &lt;th scope=\"row\"&gt;1&lt;\/th&gt;\n                        &lt;td&gt;\n                          &lt;input class=\"form-control \" name=\"item_nm\" \n                                 list=\"mylist\" autocomplete=\"off\" \n                                 required value=\"a\"  &gt;\n                          &lt;datalist id=\"mylist\" &gt;&lt;\/datalist&gt;\n                        &lt;\/td&gt;\n                        &lt;td&gt;&lt;input type=\"number\" \n                                   class=\"form-control text-end\" name=\"qty\"  \n                                   onchange=\"Calc(this);\" &gt;&lt;\/td&gt;\n                        &lt;td&gt;&lt;input type=\"number\" \n                                   class=\"form-control text-end\" name=\"rate\" \n                                   onchange=\"Calc(this);\"&gt;&lt;\/td&gt;\n                        &lt;td&gt;&lt;input type=\"number\" \n                                   class=\"form-control text-end\" name=\"amt\" \n                                   value=\"0\" readonly=\"\"&gt;&lt;\/td&gt;\n                        &lt;td class=\"NoPrint\"&gt;\n                          &lt;button type=\"button\" class=\"btn btn-sm btn-danger\" \n                                  onclick=\"BtnDel(this)\"&gt;X&lt;\/button&gt;&lt;\/td&gt;\n                      &lt;\/tr&gt;\n                    &lt;\/tbody&gt;\n                  &lt;\/table&gt;\n\n                  &lt;div class=\"row\"&gt;\n                    &lt;div class=\"col-8\"&gt;\n                        &lt;button type=\"submit\" \n                                class=\"btn btn-primary\" &gt;Submit&lt;\/button&gt;\n                        &lt;button type=\"button\" class=\"btn btn-primary\"  \n                                onclick=\"GetPrint()\"&gt;Print&lt;\/button&gt;\n\t\t\t\t\t\t&lt;button type=\"button\" class=\"btn btn-primary\"  \n                                onclick=\"ShowAllData()\"&gt;Show All Data&lt;\/button&gt;\n                    &lt;\/div&gt;\n                    &lt;div class=\"col-4\"&gt;\n                        &lt;div class=\"input-group mb-3\"&gt;\n                            &lt;span class=\"input-group-text\" &gt;Total&lt;\/span&gt;\n                            &lt;input type=\"number\" \n                                   class=\"form-control text-end\" id=\"FTotal\" \n                                   name=\"FTotal\" disabled=\"\"&gt;\n                        &lt;\/div&gt;\n                        &lt;div class=\"input-group mb-3\"&gt;\n                            &lt;span class=\"input-group-text\" &gt;GST&lt;\/span&gt;\n                            &lt;input type=\"number\" \n                                   class=\"form-control text-end\" id=\"FGST\" \n                                   name=\"FGST\" onchange=\"GetTotal()\"&gt;\n                        &lt;\/div&gt;\n                        &lt;div class=\"input-group mb-3\"&gt;\n                            &lt;span class=\"input-group-text\" &gt;Net Amt&lt;\/span&gt;\n                            &lt;input type=\"number\" \n                                   class=\"form-control text-end\" id=\"FNet\" \n                                   name=\"FNet\" disabled=\"\"&gt;\n                        &lt;\/div&gt;\n                    &lt;\/div&gt;\n                &lt;\/div&gt;\n            &lt;\/div&gt;\n          &lt;\/div&gt;\n        &lt;\/form&gt;\n    &lt;\/div&gt;\n\t\n\t&lt;div class=\"modal fade\" id=\"exampleModal\" tabindex=\"-1\" aria-labelledby=\"exampleModalLabel\" aria-hidden=\"true\"&gt;\n  &lt;div class=\"modal-dialog\"&gt;\n    &lt;div class=\"modal-content\"&gt;\n      &lt;div class=\"modal-header\"&gt;\n        &lt;h1 class=\"modal-title fs-5\" id=\"exampleModalLabel\"&gt;Show Invoice&lt;\/h1&gt;\n        &lt;button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"&gt;&lt;\/button&gt;\n      &lt;\/div&gt;\n      &lt;div class=\"modal-body\"&gt;\n       &lt;table class=\"table table-striped\"&gt;\n\t\t&lt;tbody id=\"MyTBody\"&gt;&lt;\/tbody&gt;\n\t   &lt;\/table&gt;\n      &lt;\/div&gt;\n      &lt;div class=\"modal-footer\"&gt;\n        &lt;button type=\"button\" class=\"btn btn-secondary\" data-bs-dismiss=\"modal\"&gt;Close&lt;\/button&gt;\n        \n      &lt;\/div&gt;\n    &lt;\/div&gt;\n  &lt;\/div&gt;\n&lt;\/div&gt;\n\t\n\t\n\t&lt;script src=\"https:\/\/cdn.jsdelivr.net\/npm\/@popperjs\/core@2.11.8\/dist\/umd\/popper.min.js\" integrity=\"sha384-I7E8VVD\/ismYTF4hNIPjVp\/Zjvgyol6VFvRkX\/vR+Vc4jQkC+hVqc2pM8ODewa9r\" crossorigin=\"anonymous\"&gt;&lt;\/script&gt;\n\t&lt;script src=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.3.0\/dist\/js\/bootstrap.min.js\" integrity=\"sha384-fbbOQedDUMZZ5KreZpsbe1LCZPVmfTnH7ois6mU1QK+m14rQ1l2bGBq41eYeM\/fS\" crossorigin=\"anonymous\"&gt;&lt;\/script&gt;\n\n  &lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-4-create-css-file\">Step 4 : Create CSS File <\/h2>\n\n\n\n<p>\u0905\u092c \u0939\u092e\u0947 \u090f\u0915 CSS \u092b\u093e\u0907\u0932 \u092c\u0928\u093e\u0928\u093e \u0939\u094b\u0917\u0940 \u091c\u0940\u0938\u0947 \u0939\u092e\u0928\u0947 HTML (index.html) \u092a\u0930 \u0932\u093f\u0902\u0915 \u0915\u093f\u092f\u093e \u0939\u0948\u0902 \u0964  \u091c\u093f\u0938\u0915\u093e \u0928\u093e\u092e \u0939\u092e\u0928\u0947 invoice.css \u0930\u0916\u093e \u0939\u0948\u0902 \u0964 <\/p>\n\n\n\n<pre title=\"invoice.css\" class=\"wp-block-code\"><code lang=\"css\" class=\"language-css\">.input-group-text {\n   width: 85px;\n}   <\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-5-create-css-media-print-file-for-print-view\">Step 5: Create CSS Media Print File for Print View<\/h2>\n\n\n\n<p>\u0939\u092e\u0928\u0947 \u092f\u0939\u093e \u092a\u0930 \u0907\u0938\u0940 HTML \u0915\u093e \u090f\u0915 Print View \u092d\u0940 \u092c\u0928\u093e\u092f\u093e \u0939\u0948\u0902 \u091c\u093f\u0938\u0915\u0947 \u0932\u093f\u090f \u0939\u092e\u0928\u0947 <strong>invoiceprint.css<\/strong> \u0915\u093e \u0909\u092a\u092f\u094b\u0917 \u0915\u093f\u092f\u093e \u0939\u0948\u0902 \u091c\u0940\u0938\u0947 \u092d\u0940 \u0939\u092e\u0928\u0947 HTML (index.html) \u0938\u0947 \u0932\u093f\u0902\u0915 \u0915\u093f\u092f\u093e \u0939\u0948\u0902 \u0964 \u0907\u0938\u0915\u0940 \u092e\u0926\u0926 \u0938\u0947 \u0939\u092e \u091c\u0948\u0938\u093e \u092d\u0940 \u0939\u092e\u093e\u0930\u093e Print View \u092c\u0928\u093e\u0928\u093e \u091a\u093e\u0939\u0924\u0947 \u0939\u0948 \u0906\u0938\u093e\u0928\u0940 \u0938\u0947 \u092c\u0928\u093e \u0938\u0915\u0924\u0947 \u0939\u0948\u0902 \u0964  <\/p>\n\n\n\n<pre title=\"invoiceprint.css\" class=\"wp-block-code\"><code lang=\"css\" class=\"language-css\">\n.btn , .NoPrint \n{\n    display: none;\n}\n\n.form-control\n{\n    border: 0px;\n}\n\n.input-group-text\n{\n    border: 0px;\n    background-color: white;\n}\n\ntable \n{\n    border : 1px solid black;\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-6-create-java-script-file-for-modify-google-sheet-from-html\">Step 6 : Create JavaScript File For Modify Google Sheet from HTML<\/h2>\n\n\n\n<p>\u0907\u0938\u0915\u0947 \u092c\u093e\u0926 \u0939\u092e\u0928\u0947 \u090f\u0915 JavaScript file \u092c\u0928\u093e\u0928\u093e \u0939\u094b\u0917\u0940 \u091c\u093f\u0938\u0938\u0947 \u0915\u0940 \u0938\u092d\u0940 Event \u0915\u094b handle \u0915\u0930\u0928\u093e \u0939\u094b\u0917\u093e \u0964  <\/p>\n\n\n\n<p>\u0907\u0938\u092e\u0947 \u0906\u092a\u0915\u094b \u091c\u094b Link Apps Script Code \u0915\u094b Deploy \u0915\u0930\u0928\u0947 \u0915\u0947 \u092c\u093e\u0926 \u092a\u094d\u0930\u093e\u092a\u094d\u0924 \u0939\u0942\u0908 \u0925\u0940 \u0909\u0938\u0947 \u092a\u0947\u0938\u094d\u091f \u0915\u0930\u0928\u093e \u0939\u0948\u0902 \u0964 \u0927\u094d\u092f\u093e\u0928 \u0930\u0939\u0947 \u0915\u0947\u0935\u0932  \u091c\u094b https:\/\/script.google.com\/macros\/s\/ \u0907\u0938\u0915\u0947 \u092c\u093e\u0926 \u091c\u094b \u0915\u094b\u0921 \u0939\u094b\u0924\u093e \u0939\u0948\u0902 \/exec \u0915\u0947 \u092c\u0940\u091a \u0915\u093e \u0915\u0947\u0935\u0932 \u0909\u0924\u0928\u093e \u0939\u0940 \u092f\u0939\u093e\u0901 \u092a\u0930 \u0906\u092a\u0915\u094b Paste \u0915\u0930\u0928\u093e \u0939\u0948\u0902 \u0964 <\/p>\n\n\n\n<pre title=\"invoice.js\" class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">var AppsScriptLink = \"AKf......OQ\";\n\n\nfunction GetPrint()\n{\n    \/*For Print*\/\n    window.print();\n}\n\nfunction BtnAdd()\n{\n    \/*Add Button*\/\n    var v = $(\"#TRow\").clone().appendTo(\"#TBody\") ;\n    $(v).find(\"input\").val('');\n    $(v).removeClass(\"d-none\");\n    $(v).find(\"th\").first().html($('tr').length - 2);\n}\n\nfunction BtnDel(v)\n{\n    \/*Delete Button*\/\n    $(v).parent().parent().remove();\n    GetTotal();\n    ReGenSrNo();\n}\n\nfunction ReGenSrNo()\n{\n     $(\"#TBody\").find(\"tr\").each(\n     function(index)\n     {\n          $(this).find(\"th\").first().html(index);\n     }\n     );\n}\n\nfunction Calc(v)\n{\n    \/*Detail Calculation Each Row*\/\n    var index = $(v).parent().parent().index();\n\n    var qty = document.getElementsByName(\"qty\")[index].value;\n    var rate = document.getElementsByName(\"rate\")[index].value;\n\n    var amt = qty * rate;\n    document.getElementsByName(\"amt\")[index].value = amt;\n\n    GetTotal();\n}\n\nfunction GetTotal()\n{\n    \/*Footer Calculation*\/  \n\n    var sum=0;\n    var amts =  document.getElementsByName(\"amt\");\n\n    for (let index = 0; index &lt; amts.length; index++)\n    {\n        var amt = amts[index].value;\n        sum = +(sum) +  +(amt) ;\n    }\n\n    document.getElementById(\"FTotal\").value = sum;\n\n    var gst =  document.getElementById(\"FGST\").value;\n    var net = +(sum) + +(gst);\n    document.getElementById(\"FNet\").value = net;\n\n\n}\n\n$(document).ready(function () {\n    FormValidation();\n    SetCurrentDate();\n    BtnAdd();\n    FillDataList();\n    MaxInv();\n      \n       \n});\n\n\nfunction FillDataList()\n{\n        $.getJSON(\"https:\/\/script.google.com\/macros\/s\/\"+AppsScriptLink+\"\/exec?page=dropdown\",\n       \n        function (data) {\n\n          var Options=\"\";\n\n          $.each(data, function(key, value)\n          {\n            Options = Options + '&lt;option>' + value + '&lt;\/option>';\n          });\n\n          $(\"#mylist\").append(Options);\n         \n        });\n}\n\nfunction MaxInv()\n{\n        $.getJSON(\"https:\/\/script.google.com\/macros\/s\/\"+AppsScriptLink+\"\/exec?page=max\",\n        function (data) {\n         \n          $(\"input[name='inv_no']\").val(data);\n\n        });\n}\n\n\nfunction SetCurrentDate()\n{\n    const date = new Date();\n    console.log(date);\n\n    let d = date.getDate();\n    let m = date.getMonth() + 1;\n    let y = date.getFullYear();\n\n    if (d &lt; 10) d = '0' + d;\n    if (m &lt; 10) m = '0' + m;\n\n    let CurrDate = y + '-' + m + '-' + d;\n\n    $('input[name=\"inv_dt\"]').val(CurrDate);\n\n}\n\n\nfunction FormValidation()\n{\n    \/\/ Example starter JavaScript for disabling form submissions if there are invalid fields\n(function () {\n    'use strict'\n \n    \/\/ Fetch all the forms we want to apply custom Bootstrap validation styles to\n    var forms = document.querySelectorAll('.needs-validation')\n \n    \/\/ Loop over them and prevent submission\n    Array.prototype.slice.call(forms)\n      .forEach(function (form) {\n        form.addEventListener('submit', function (event) {\n          if (!form.checkValidity()) {\n            event.preventDefault()\n            event.stopPropagation()\n          }\n \n          form.classList.add('was-validated')\n        }, false)\n      })\n  })()\n}\n\nfunction Search(pNo=\"\")\n{\n        var no = $('#inv_no').val();\n\n\t\tif (pNo != \"\") no = pNo;\n\n        $.getJSON(\"https:\/\/script.google.com\/macros\/s\/\"+AppsScriptLink+\"\/exec?page=search&amp;no=\"+no,\n        function (data) {\n\n         \n          \/\/alert(data);\n         \/\/ console.log(data);\n          if (data == \"NOT FOUND\")\n          {\n            alert('Invoice No. Not Found...');\n\n          }\n          else\n          {\n            \/\/var record = data;\n            var record   = data.record;\n\n            var StartRow = data.SR;\n            var RowCount = data.CNT;\n\n            $('#IsNew').val('N');\n            $('#StartRow').val(StartRow);\n            $('#RowCount').val(RowCount);\n         \n            var i = 0;\n            $.each(record, function(key, value)\n            {\n           \n              if (i == 0)\n              {\n                var dt = value[1].substring(0,10);\n                document.getElementsByName(\"inv_no\")[0].value = value[0];\n                document.getElementsByName(\"inv_dt\")[0].value = dt;\n                document.getElementsByName(\"cust_nm\")[0].value = value[2];\n                document.getElementsByName(\"addr\")[0].value = value[3];\n                document.getElementsByName(\"city\")[0].value = value[4];\n              }\n              else\n              {\n                if (i > 1) BtnAdd();\n               \n             \n                document.getElementsByName(\"item_nm\")[i].value = value[5];\n                document.getElementsByName(\"qty\")[i].value     = value[6];\n                document.getElementsByName(\"rate\")[i].value    = value[7];\n                document.getElementsByName(\"amt\")[i].value     = value[8];\n\n              }\n\n              i = i + 1;\n            });\n\n            GetTotal();\n\t\t\tReGenSrNo();\n\n          }\n        });\n\t\t$('#exampleModal').modal('hide');\n\t\t \n}\n\nfunction ShowAllData()\n{\n\t$(document).ready(function (){\n\t\t\n\t\t$.getJSON(\"https:\/\/script.google.com\/macros\/s\/\"+AppsScriptLink+\"\/exec?page=all\",\n        function (data) {\n\t\n\t\tvar Table=\"\", Rows=\"\", Columns=\"\";\n\t\t$.each(data, function(key, value)\n\t\t{\n\t\t\tvar InvNo=\"\";\n\t\t\tColumns =\"\";\n\t\t\ti=0;\n\t\t\t$.each(value, function(key1, value1)\n\t\t\t{\n\t\t\t\ti++;\n\t\t\t\tif (i ==2) \n\t\t\t\t{\n\t\t\t\t\tvalue1 = \"\" + value1;\n\t\t\t\t\tvalue1 = value1.substring(0, 10);\t\n\t\t\t\t}\n\t\t\t\tColumns = Columns + '&lt;td>' + value1 + '&lt;\/td>';\n\t\t\t\tif (InvNo == \"\") InvNo = value1;\n\t\t\t\t\n\t\t\t\t\n\t\t\t});\n\t\t\tRows = Rows + '&lt;tr onclick=\"Search('+InvNo+')\">' + Columns + '&lt;\/tr>';\n\t\t});\n\t\t\n\t\t$(\"#MyTBody\").html(Rows);\n\t\t$('#exampleModal').modal('show');\n\t});\t\n\t});\t\t\t\n\n}\n<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>GetPrint() :<\/strong> \u0907\u0938 Function \u0938\u0947 \u0939\u092e HTML Invoice \u0915\u093e Print View \u0926\u0947\u0916 \u0938\u0915\u0924 \u0939\u0948\u0902 \u0914\u0930 \u0938\u093e\u0925 \u0939\u0940 \u092e\u0947 Print \u0928\u093f\u0915\u093e\u0932 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>BtnAdd() :<\/strong> \u0907\u0938 Function \u0938\u0947 \u0939\u092e Detail \u0935\u093e\u0932\u0940 Table \u092e\u0947 Rows Add \u0915\u0930 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902 \u0964  <\/li>\n\n\n\n<li><strong>BtnDel() :<\/strong> \u0907\u0938 Function \u0938\u0947 \u0939\u092e Table \u0938\u0947 Rows \u0915\u094b Delete \u0915\u0930 \u0938\u0915\u0924 \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>ReGenSrNo() :<\/strong>  \u0907\u0938 <strong>ReGenSrNo<\/strong> Function \u0938\u0947 \u0939\u092e Delete \u0915\u0930\u0928\u0947 \u0938\u0947 Sr No \u0915\u094b \u092b\u093f\u0930 \u0938\u0947 \u0938\u0939\u0940 \u0915\u0930\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>Calc() :<\/strong> \u0907\u0938 Calc \u0938\u0947 \u0939\u092e Amount \u0938\u0947 Related Calculation \u0915\u0930\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>GetTotal() :<\/strong> \u0907\u0938 GetTotal Function \u0938\u0947 \u0939\u092e Header \u0915\u0947 Total \u0915\u094b Footer \u092e\u0947 Shift \u0915\u0930\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>FillDataList() : <\/strong>\u0907\u0938 FillDataList Function \u0938\u0947 \u0939\u092e Item \u0915\u0940 select \u0932\u093f\u0938\u094d\u091f  \u092e\u0947 Data \u0915\u094b Fill \u0915\u0930\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>MaxInv() :<\/strong> \u0907\u0938 MaxInv Function \u0938\u0947 \u0939\u092e Open \u0915\u0930\u0928\u0947 \u092a\u0930 \u091c\u094b \u0928\u0908 Invoice \u0915\u093e No Generate \u0939\u094b\u0924\u093e \u0939\u0948\u0902 \u0935\u0939 \u0926\u093f\u0916\u093e\u0908 \u0926\u0947\u0924\u093e \u0939\u0948\u0964 <\/li>\n\n\n\n<li><strong>SetCurrentDate() :<\/strong> \u0907\u0938 Function \u0938\u0947 \u0939\u092e Invoice \u092a\u0930 \u0906\u091c \u0915\u0940 \u0926\u093f\u0928\u093e\u0902\u0915 \u0938\u0947\u091f \u0915\u0930\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/li>\n\n\n\n<li><strong>FormValidation() :<\/strong> \u0907\u0938 FormValidation Function \u0938\u0947 \u0939\u092e Form \u0915\u0947 Validation \u0938\u0947 Related working \u0915\u0930\u0924\u0947 \u0939\u0948\u0902\u0964 <\/li>\n\n\n\n<li><strong>Search() :<\/strong> \u0907\u0938 Search Function \u0938\u0947 \u0939\u092e Invoice no \u0926\u0947 \u0915\u0930 Google Sheet \u0915\u0947 data \u0915\u094b HTML \u092a\u0930 \u0926\u093f\u0916\u093e\u0924\u0947 \u0939\u0948\u0902\u0964 <\/li>\n\n\n\n<li><strong>ShowAllData() :<\/strong> \u0907\u0938 ShowAllData Function \u0938\u0947 \u0939\u092e Google Sheet \u0915\u0947 data \u0915\u094b Modal \u092e\u0947 display \u0915\u0930\u0935\u093e\u0924\u0947 \u0939\u0948\u0902 \u091c\u093f\u0938\u0938\u0947 \u0915\u0940 User \u0909\u0938 \u092a\u0930 Click \u0915\u0930 data \u0915\u094b HTML Page \u092a\u0930 \u0926\u093f\u0916\u093e \u0938\u0915\u0947 \u0964 <\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-7-preview-html-for-modify-google-sheet-from-html\">Step 7:  Preview HTML for Modify Google Sheet from HTML<\/h2>\n\n\n\n<p>\u0907\u0938\u0915\u0947 \u092c\u093e\u0926 \u0939\u092e HTML (index.html)  File \u0915\u094b Browser \u092a\u0930 run \u0915\u0930 \u0926\u0947\u0916\u0947\u0902\u0917\u0947 \u0964 <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"304\" src=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-3.png?resize=640%2C304&#038;ssl=1\" alt=\"\" class=\"wp-image-11066\" srcset=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-3.png?resize=1024%2C487&amp;ssl=1 1024w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-3.png?resize=300%2C143&amp;ssl=1 300w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-3.png?resize=768%2C365&amp;ssl=1 768w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-3.png?resize=1536%2C730&amp;ssl=1 1536w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-3.png?resize=150%2C71&amp;ssl=1 150w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-3.png?w=1690&amp;ssl=1 1690w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-3.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p>Page Open \u0939\u094b\u0928\u0947 \u0915\u0947 \u092c\u093e\u0926 \u0906\u092a\u0915\u094b Show All Data Button \u092a\u0930 click \u0915\u0930\u0928\u093e \u0939\u0948\u0902 \u0910\u0938\u093e \u0915\u0930\u0928\u0947 \u0938\u0947 \u0915\u0941\u091b \u0939\u0940 \u0938\u092e\u092f \u092e\u0947 \u0906\u092a\u0915\u094b \u0928\u093f\u092e\u094d\u0928 \u092a\u094d\u0930\u0915\u093e\u0930 \u0938\u0947 Show Invoice Dialog Box \u0926\u093f\u0916\u093e\u0908 \u0926\u0947\u0917\u093e \u0964 \u0907\u0938\u092e\u0947 \u0906\u092a\u0915\u094b Display Google Sheets Data in a Table \u0939\u094b\u0928\u0947 \u0932\u0917\u0947\u0917\u093e\u0964<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"321\" src=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?resize=640%2C321&#038;ssl=1\" alt=\"\" class=\"wp-image-11067\" srcset=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?resize=1024%2C513&amp;ssl=1 1024w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?resize=300%2C150&amp;ssl=1 300w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?resize=768%2C384&amp;ssl=1 768w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?resize=1536%2C769&amp;ssl=1 1536w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?resize=60%2C31&amp;ssl=1 60w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?resize=150%2C75&amp;ssl=1 150w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?w=1700&amp;ssl=1 1700w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-4.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p>\u0909\u092a\u0930\u094b\u0915\u094d\u0924 Dialog Box \u092e\u0947 \u0926\u093f\u0916\u093e\u0908 \u0926\u0947\u0928\u0947 \u0935\u093e\u0932\u0940 Entries \u092e\u0947 \u0938\u0947 \u0906\u092a \u091c\u093f\u0938 \u092a\u0930 \u092d\u0940 Click \u0915\u0930\u0947\u0902\u0917\u0947 \u0935\u0939 Open \u0939\u094b \u0915\u0930 \u0915\u0941\u091b \u0928\u093f\u092e\u094d\u0928 \u0924\u0930\u0939 \u0938\u0947 \u0926\u093f\u0916\u093e\u0908 \u0926\u0947\u0928\u0947 \u0932\u0917\u0947\u0917\u093e \u0964 <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"334\" src=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=640%2C334&#038;ssl=1\" alt=\"\" class=\"wp-image-11181\" srcset=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=1024%2C534&amp;ssl=1 1024w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=300%2C157&amp;ssl=1 300w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=768%2C400&amp;ssl=1 768w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=1536%2C801&amp;ssl=1 1536w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=220%2C115&amp;ssl=1 220w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=140%2C73&amp;ssl=1 140w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=620%2C324&amp;ssl=1 620w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=60%2C31&amp;ssl=1 60w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?resize=150%2C78&amp;ssl=1 150w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?w=1688&amp;ssl=1 1688w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-7.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p>\u0905\u092c \u0906\u090f \u0939\u0941\u0935\u0947 Data \u092e\u0947 \u0915\u0941\u091b \u092d\u0940 \u092c\u0926\u0932\u093e\u0935 \u0915\u0930 \u091c\u092c \u0906\u092a \u0905\u092a\u0921\u0947\u091f \u0915\u0930\u0947\u0902\u0917\u0947 \u0924\u094b data Google sheet \u092e\u0947 \u092d\u0940 \u091a\u0947\u0902\u091c \u0939\u094b \u091c\u093e\u090f\u0917\u093e, \u0906\u0907\u090f \u0939\u092e \u0907\u0938 \u0909\u092a\u0930\u094b\u0915\u094d\u0924 Record \u092e\u0947 Item \u0915\u093e \u0928\u093e\u092e \u092c\u0926\u0932 \u0926\u0947\u0924\u0947 \u0939\u0948\u0902 \u0964 <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"333\" src=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=640%2C333&#038;ssl=1\" alt=\"\" class=\"wp-image-11182\" srcset=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=1024%2C532&amp;ssl=1 1024w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=300%2C157&amp;ssl=1 300w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=768%2C399&amp;ssl=1 768w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=1536%2C798&amp;ssl=1 1536w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=220%2C115&amp;ssl=1 220w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=140%2C73&amp;ssl=1 140w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=60%2C31&amp;ssl=1 60w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?resize=150%2C78&amp;ssl=1 150w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?w=1689&amp;ssl=1 1689w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-8.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p>Submit \u0915\u0930\u0928\u0947 \u0915\u0947 \u092c\u093e\u0926 \u091c\u092c \u0906\u092a Data Google Sheet \u092e\u0947 \u0926\u0947\u0916\u0947\u0902\u0917\u0947 \u0924\u094b \u0915\u0941\u091b \u0907\u0938 \u092a\u094d\u0930\u0915\u093e\u0930 \u0926\u093f\u0916\u093e\u0908 \u0926\u0947\u0917\u093e\u0964 Modify Google Sheet from HTML<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"48\" src=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-9.png?resize=640%2C48&#038;ssl=1\" alt=\"\" class=\"wp-image-11183\" srcset=\"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-9.png?resize=1024%2C77&amp;ssl=1 1024w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-9.png?resize=300%2C22&amp;ssl=1 300w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-9.png?resize=768%2C57&amp;ssl=1 768w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-9.png?resize=150%2C11&amp;ssl=1 150w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-9.png?w=1444&amp;ssl=1 1444w, https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/image-9.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>\u0906\u0936\u093e \u0939\u0948\u0902 \u092e\u0941\u091d\u0947 \u0915\u0940 \u0906\u092a\u0915\u094b \u0915\u093f\u0938 \u0924\u0930\u0939 \u0938\u0947 HTML \u092a\u0930 Google Sheet \u0938\u0947 \u0926\u093f\u0916\u093e\u0908 \u0926\u0947 \u0930\u0939\u0947 Record \u0915\u094b \u0915\u093f\u0938 \u0924\u0930\u0939 \u0938\u0947 \u092a\u0941\u0928\u0903 Google Sheet \u092a\u0930 Update \u0915\u093f\u092f\u093e \u091c\u093e\u0924\u093e \u0939\u0948\u0902 \u0938\u092e\u091d \u092e\u0947 \u0906 \u0917\u092f\u093e \u0939\u094b\u0917\u093e\u0964  \u0906\u092a\u0915\u094b \u092f\u0939  Article Modify Google Sheet from HTML \u0915\u0948\u0938\u093e \u0932\u0917\u093e \u092c\u0924\u093e\u0928\u093e \u0928 \u092d\u0942\u0932\u0947 \u0964 <\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\u0939\u092e\u093e\u0930\u0947-\u0905\u0928\u094d\u092f-\u0906\u0930\u094d\u091f\u093f\u0915\u0932\"><strong>\u0939\u092e\u093e\u0930\u0947 \u0905\u0928\u094d\u092f \u0906\u0930\u094d\u091f\u093f\u0915\u0932<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/selfimagination.in\/tips\/mysql-function\/\">MySQL Function<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/mysql-stored-procedure\/\">MySQL Stored Procedure<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/get-post-method\/\">PHP Get \/Post Method \u0915\u0947 \u092c\u093e\u0930\u0947 \u092e\u0947\u0902 \u091c\u093e\u0928\u0947<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/php-math-function\/\">PHP Math Function \u0915\u0947 \u092c\u093e\u0930\u0947 \u092e\u0947\u0902 \u091c\u093e\u0928\u0947<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/learn-cpp-from-c\/\">C \u0938\u0947 C ++ \u0938\u0940\u0916\u0947 \u0938\u0930\u0932 \u0936\u092c\u094d\u0926\u094b\u0902 \u092e\u0947\u0902<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/php-variables\/\">PHP Variable \u0915\u0947 \u092c\u093e\u0930\u0947 \u092e\u0947\u0902 \u091c\u093e\u0928\u0947<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/arduino-control-structure\/\">Arduino Control Structure<\/a>&nbsp;<\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/c-union\/\">Union in C<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/c-pointer\/\">Declaration of Pointer in C<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/search-jquery\/\">jQuery Search Filter<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/mysql-table-create-alter-drop\/\">MySQL Create Table | Alter Table | Drop Table<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/api-using-node-react-express-mysql\/\">API Using NODE REACT EXPRESS MYSQL SEQUELIZE (For Backend OR Server Side)<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/selfimagination.in\/tips\/cpanel\/\">CPANEL In Hindi<\/a><\/li>\n<\/ul>\n\n\n\n<p>\u0906\u092a\u0915\u093e \u0938\u092e\u092f \u0926\u0947\u0928\u0947 \u0915\u093e \u0927\u0928\u094d\u092f\u0935\u093e\u0926! \u0939\u092e\u0947\u0902 \u0916\u0941\u0936\u0940 \u0939\u0941\u0908 \u0915\u093f \u0906\u092a\u0928\u0947 \u0939\u092e\u093e\u0930\u0947 \u092c\u094d\u0932\u0949\u0917 \u0915\u094b \u092a\u0922\u093c\u093e \u0914\u0930 \u0935\u093f\u091a\u093e\u0930 \u0938\u093e\u091d\u093e \u0915\u093f\u092f\u093e\u0964 \u092f\u0926\u093f \u0906\u092a\u0915\u094b \u0939\u092e\u093e\u0930\u0947 \u092c\u094d\u0932\u0949\u0917 \u0938\u0947 \u0915\u0941\u091b \u0928\u092f\u093e \u0938\u093f\u0916\u0928\u0947 \u0915\u094b \u092e\u093f\u0932\u093e \u0939\u094b \u092f\u093e \u092f\u0939 \u0906\u092a\u0915\u0947 \u0932\u093f\u090f \u0909\u092a\u092f\u094b\u0917\u0940 \u0930\u0939\u093e \u0939\u094b, \u0924\u094b \u0915\u0943\u092a\u092f\u093e \u0907\u0938\u0947 \u0905\u092a\u0928\u0947 \u0926\u094b\u0938\u094d\u0924\u094b\u0902 \u0914\u0930 \u092a\u0930\u093f\u0935\u093e\u0930 \u0915\u0947 \u0938\u093e\u0925 \u0938\u093e\u091d\u093e \u0915\u0930\u0947\u0902\u0964 \u0939\u092e\u0947\u0902 \u0914\u0930 \u092d\u0940 \u0930\u094b\u091a\u0915 \u0935\u093f\u0937\u092f\u094b\u0902 \u092a\u0930 \u0932\u093f\u0916\u0928\u0947 \u0915\u093e \u0907\u091a\u094d\u091b\u0941\u0915 \u0939\u0948, \u0907\u0938\u0932\u093f\u090f \u0906\u092a \u0939\u092e\u093e\u0930\u0947 \u0938\u093e\u0925 \u091c\u0941\u0921\u093c\u0947 \u0930\u0939\u0947\u0902 \u0914\u0930 \u0939\u092e\u093e\u0930\u0947 \u092c\u094d\u0932\u0949\u0917 \u0915\u094b \u0928\u093f\u092f\u092e\u093f\u0924 \u0930\u0942\u092a \u0938\u0947 \u091a\u0947\u0915 \u0915\u0930\u0924\u0947 \u0930\u0939\u0947\u0902\u0964<\/p>\n\n\n\n<p>\u092f\u0926\u093f \u0906\u092a\u0915\u0947 \u092a\u093e\u0938 \u0915\u094b\u0908 \u0938\u0941\u091d\u093e\u0935 \u092f\u093e \u092a\u094d\u0930\u0924\u093f\u0915\u094d\u0930\u093f\u092f\u093e \u0939\u0948, \u0924\u094b \u0915\u0943\u092a\u092f\u093e \u0939\u092e\u0947\u0902 \u092c\u0924\u093e\u090f\u0902, \u0939\u092e \u0906\u092a\u0915\u0947 \u0935\u093f\u091a\u093e\u0930\u094b\u0902 \u0915\u093e \u0938\u094d\u0935\u093e\u0917\u0924 \u0915\u0930\u0947\u0902\u0917\u0947\u0964 \u0927\u0928\u094d\u092f\u0935\u093e\u0926 \u092b\u093f\u0930 \u0938\u0947 \u0914\u0930 \u092c\u093f\u0924\u093e\u090f \u0917\u090f \u0938\u092e\u092f \u0915\u0947 \u0932\u093f\u090f \u0906\u092a\u0915\u093e \u0927\u0928\u094d\u092f\u0935\u093e\u0926\u0964 \u0938\u093e\u0925 \u092e\u0947\u0902 \u0906\u0928\u0947 \u0935\u093e\u0932\u0947 \u092c\u094d\u0932\u0949\u0917\u094b\u0902 \u092e\u0947\u0902 \u092d\u0940 \u092e\u093f\u0932\u0924\u0947 \u0930\u0939\u0947\u0902\u0964 \u0906\u092a\u0915\u093e \u0938\u093e\u0925 \u0939\u092e\u093e\u0930\u0947 \u0932\u093f\u090f \u092e\u0939\u0924\u094d\u0935\u092a\u0942\u0930\u094d\u0923 \u0939\u0948\u0964<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Modify Google Sheet from HTML : Generate professional HTML invoices dynamically from Google Sheets data, and efficiently update records. Learn how to seamlessly modify Google Sheets directly from HTML using easy-to-implement techniques. \u0907\u0938 Article(Modify Google Sheet from HTML) \u092e\u0947 \u0939\u092e\u0928\u0947 Local HTML Page \u0938\u0947 Google Sheet \u092a\u0930 Data \u092d\u0947\u091c\u0928\u093e \u0914\u0930 Save \u0915\u0930\u0928\u093e , \u0914\u0930 \u091c\u094b [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":11189,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-11168","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-other"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/selfimagination.in\/tips\/wp-content\/uploads\/2023\/07\/Modify-Google-Sheet-from-HTML.jpg?fit=1280%2C720&ssl=1","_links":{"self":[{"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/posts\/11168","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/comments?post=11168"}],"version-history":[{"count":25,"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/posts\/11168\/revisions"}],"predecessor-version":[{"id":11197,"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/posts\/11168\/revisions\/11197"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/media\/11189"}],"wp:attachment":[{"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/media?parent=11168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/categories?post=11168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/selfimagination.in\/tips\/wp-json\/wp\/v2\/tags?post=11168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}