Skip to main content

Reading HTML Table data using JavaScript and send to backend


Javar Script
****************
//records_table
var Products = [];
var table;
table = document.getElementById("records_table");
// Loop through each row and get ItemCode and Qty.
for (var r = 0; r < table.rows.length; r++)
{
// This takes qty from Imput Field
        var qty = table.rows[r].cells[3].getElementsByTagName('input')[0].value;
        // This takes text field data
var itemCode = table.rows[r].cells[1].innerHTML;
// Push the data to the Product array
Products.push({ ItemCode: itemCode, Qty: qty });
}
jQuery.ajax({
type: "POST",
url: "Sales.aspx/MakeIncompleteSale",
data: "{Data:'" + JSON.stringify(Products) + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
},
failure: function (response) {
alert(response.d);
}
});


C# Backend
****************

 [WebMethod]
   public static string MakeIncompleteSale(string Data)
   {
       string ConnectionString = ConfigurationManager.ConnectionStrings["PointofSaleConstr"].ConnectionString;
       JavaScriptSerializer json = new JavaScriptSerializer();
       List<CartProduct> cartProducts = json.Deserialize<List<CartProduct>>(Data);
       string ShopId = HttpContext.Current.Session["ShopID"].ToString();
       SqlConnection cn = new SqlConnection(ConnectionString);
       if (cartProducts.Count != 0)
       {
           SqlCommand cmd1 = new SqlCommand();
           SqlCommand cmd2 = new SqlCommand();
           SqlCommand cmd3 = new SqlCommand();
           cmd1.CommandType = CommandType.Text;
           cmd2.CommandType = CommandType.Text;
           cmd3.CommandType = CommandType.Text;
           cmd1.CommandText = " INSERT INTO [tbl_Incomplete_sale] ([DateTime],[ShopId]) VALUES ('" + DateTime.Now.Date + "', '" + ShopId + "')";
           cmd1.Connection = cn;
           cn.Open();
           SqlDataReader reader1 = cmd1.ExecuteReader();
           cn.Close();
           // get the last id.
           int InCompleteSaleId = 0;
           // SELECT TOP 1 * FROM Table ORDER BY ID DESC
           cmd3.CommandText = "SELECT TOP 1 * from [tbl_Incomplete_sale] where ShopId ='" + ShopId + "' order by Id DESC";
           cmd3.Connection = cn;
           cn.Open();
           SqlDataReader reader3 = cmd3.ExecuteReader();
           if (reader3.HasRows)
           {
               while (reader3.Read())
               {
                   InCompleteSaleId = Convert.ToInt32(reader3["ID"]);
               }
           }
           cn.Close();
           for (int i = 0; i < cartProducts.Count; i++)
           {
               cmd2.CommandText = " INSERT INTO [tbl_IncompleteSale_Products] ([InCompleteSaleId],[ProductId],[Qty],[Date],[ShopId]) VALUES ('" + InCompleteSaleId + "','" + cartProducts[i].ItemCode + "','" + cartProducts[i].Qty + "', '" + DateTime.Now.Date + "','" + ShopId + "' )";
               cmd2.Connection = cn;
               cn.Open();
               SqlDataReader reader2 = cmd2.ExecuteReader();
               cn.Close();
           }
       }
       return "Success";
   }

Comments

Popular posts from this blog

Object Storage System Design

Object Storage System Design 𝐁𝐮𝐜𝐤𝐞𝐭. A logical container for objects. The bucket name is globally unique. To upload data to S3, we must first create a bucket. 𝐎𝐛𝐣𝐞𝐜𝐭. An object is an individual piece of data we store in a bucket. It contains object data (also called payload) and metadata. Object data can be any sequence of bytes we want to store. The metadata is a set of name-value pairs that describe the object. In S3, an object resides in a bucket. The path looks like this: /bucket-to-share/style.css. The bucket only has metadata. The object has metadata and the actual data. The diagram below (Figure 1) illustrates how file uploading works. In this example, we first create a bucket named and then upload a file named “style.css” to the bucket. 1. The client sends an HTTP PUT request to create a bucket named “bucket-to-share.” The request is forwarded to the API service. 2. The API service calls Identity and Access Management (IAM) to ensure the user is authorized and has W...

Intigrate POS Printer in asp.net core 6. Web Project

There are two methods to call POS printer to print PrintGuestCheck PayBill_Print using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Rendering; using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; using System.Linq; using System.Security.Claims; using System.Threading.Tasks; using Tawoon.IT_SoftwareTemplate.BusinnessModels.BaseVM.Dashboard; using Tawoon.IT_SoftwareTemplate.BusinnessModels.Enum; using Tawoon.IT_SoftwareTemplate.Entities; using Tawoon.IT_SoftwareTemplate.Entities.Models; using System.IO; using System.Drawing.Printing; using System.Drawing; using System.Net.Sockets; using System.Text; using Microsoft.AspNetCore.Hosting; using Tawoon.IT_SoftwareTemplate.BusinnessModels.BaseVM; using Microsoft.Extensions.Options; using Tawoon.IT_SoftwareTemplate.Helper; using Microsoft.AspNetCore.Http; using System.Drawing.Imaging; namespace Tawoon.IT_SoftwareTemplate.Controllers { public class Dashboard...