when i select a record from the gridview my select passes empty values yet the gridview has records please help
Imports System.Data
Imports System.Web.Services
Imports System.Data.SqlClient
Imports System.Configuration
Public Class Find1
Inherits System.Web.UI.Page
Dim conString As String = ConfigurationManager.ConnectionStrings("SLISConnectionString").ConnectionString
Private Shared PageSize As Integer = 15
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
BindDummyRow()
End If
End Sub
Private Sub BindDummyRow()
Dim dummy As New DataTable()
dummy.Columns.Add("Account")
dummy.Columns.Add("Name")
dummy.Columns.Add("Class")
dummy.Columns.Add("Stream")
dummy.Columns.Add("Regno")
dummy.Columns.Add("Program")
dummy.Columns.Add("Limit")
dummy.Columns.Add("Type")
dummy.Columns.Add("House")
dummy.Rows.Add()
gvCustomers.DataSource = dummy
gvCustomers.DataBind()
End Sub
<WebMethod()>
Public Shared Function GetCustomers(searchTerm As String, pageIndex As Integer) As String
Dim query As String = "[GetCustomers_Pager2000]"
Dim cmd As New SqlCommand(query)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@SearchTerm", searchTerm)
cmd.Parameters.AddWithValue("@PageIndex", pageIndex)
cmd.Parameters.AddWithValue("@PageSize", PageSize)
cmd.Parameters.Add("@RecordCount", SqlDbType.Int, 4).Direction = ParameterDirection.Output
Return GetData(cmd, pageIndex).GetXml()
End Function
Private Shared Function GetData(cmd As SqlCommand, pageIndex As Integer) As DataSet
Dim strConnString As String = ConfigurationManager.ConnectionStrings("SLISConnectionString").ConnectionString
Using con As New SqlConnection(strConnString)
Using sda As New SqlDataAdapter()
cmd.Connection = con
sda.SelectCommand = cmd
Using ds As New DataSet()
sda.Fill(ds, "Customers")
Dim dt As New DataTable("Pager")
dt.Columns.Add("PageIndex")
dt.Columns.Add("PageSize")
dt.Columns.Add("RecordCount")
dt.Rows.Add()
dt.Rows(0)("PageIndex") = pageIndex
dt.Rows(0)("PageSize") = PageSize
dt.Rows(0)("RecordCount") = cmd.Parameters("@RecordCount").Value
ds.Tables.Add(dt)
Return ds
End Using
End Using
End Using
End Function
Private Sub gvCustomers_SelectedIndexChanged(sender As Object, e As EventArgs) Handles gvCustomers.SelectedIndexChanged
Dim account As String = hfName.Value
Dim names As String = hfId.Value
Dim classs As String = hfCountry.Value
Dim streams As String = hfstream.Value
Dim types As String = hfTypes.Value
Dim program As String = hfProgram.Value
Dim regno As String = hfRegno.Value
Dim bklimit As String = hfLimit.Value
Dim house As String = hfHouse.Value
Dim username As String = Usernames.Text
Using Con As New SqlConnection(conString)
Con.Open()
Using Com2 As New SqlCommand("update ledger Set dout= DATEDIFF(d, DueDate, GETDATE()) WHERE(category Is NULL) and account= '" & account & "'", Con)
Using RDR2 = Com2.ExecuteReader()
End Using
End Using
End Using
Response.Redirect(String.Format("Libraryorders.aspx?account={0}&names={1}&class={2}&stream={3}&types={4}&program={5}&Regno={6}&booklimit={7}&house={8}&username={9}", account, names, classs, streams, types, program, regno, bklimit, house, username))
End Sub
Private Sub gvCustomers_RowCommand(sender As Object, e As GridViewCommandEventArgs) Handles gvCustomers.RowCommand
If e.CommandName = "Select" Then
Dim index As Integer = Convert.ToInt32(e.CommandArgument)
Dim row As GridViewRow = gvCustomers.Rows(index)
Dim account As String = hfName.Value
Dim names As String = hfId.Value
Dim classs As String = hfCountry.Value
Dim streams As String = hfstream.Value
Dim types As String = hfTypes.Value
Dim program As String = hfProgram.Value
Dim regno As String = hfRegno.Value
Dim bklimit As String = hfLimit.Value
Dim house As String = hfHouse.Value
Dim username As String = Usernames.Text
Session("account") = account
Session("Names") = names
Session("Class") = classs
Session("Stream") = streams
Session("types") = types
Session("Program") = program
Session("regno") = regno
Session("bklimit") = bklimit
Session("House") = house
Session("Username") = username
Using Con As New SqlConnection(conString)
Con.Open()
Using Com2 As New SqlCommand("update ledger Set dout= DATEDIFF(d, DueDate, GETDATE()) WHERE(category Is NULL) and account= '" & account & "'", Con)
Using RDR2 = Com2.ExecuteReader()
End Using
End Using
End Using
Response.Redirect(String.Format("~/FormsV2/LibraryordersV2.aspx"))
End If
End Sub
End Class
<%@ Page Title="" Language="vb" AutoEventWireup="false" MasterPageFile="~/Site1.Master" CodeBehind="Find.aspx.vb" Inherits="SLISWEB2023.Find1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<title></title>
<style type="text/css">
body
{
font-family: Arial;
font-size: 10pt;
}
table
{
border: 1px solid #ccc;
}
table th
{
background-color: #F7F7F7;
color: #333;
font-weight: bold;
}
table th, table td
{
padding: 5px;
border-color: #ccc;
}
.Pager span
{
color: #333;
background-color: #F7F7F7;
font-weight: bold;
text-align: center;
display: inline-block;
width: 20px;
margin-right: 3px;
line-height: 150%;
border: 1px solid #ccc;
}
.Pager a
{
text-align: center;
display: inline-block;
width: 20px;
border: 1px solid #ccc;
color: #fff;
color: #333;
margin-right: 3px;
line-height: 150%;
text-decoration: none;
}
.highlight
{
background-color: #FFFFAF;
}
</style>
<script src="../Scripts/jquery-1.8.3.min.js" type="text/javascript"></script>
<script src="../Scripts/ASPSnippets_Pager.min.js"type="text/javascript"></script>
<script type="text/javascript">
$(function () {
GetCustomers(1);
});
$("[id*=txtSearch]").live("keyup", function () {
GetCustomers(parseInt(1));
});
$(".Pager .page").live("click", function () {
GetCustomers(parseInt($(this).attr('page')));
});
function SearchTerm() {
return jQuery.trim($("[id*=txtSearch]").val());
};
function GetCustomers(pageIndex) {
$.ajax({
type: "POST",
url: "Find.aspx/GetCustomers",
data: '{searchTerm: "' + SearchTerm() + '", pageIndex: ' + pageIndex + '}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccess,
failure: function (response) {
alert(response.d);
},
error: function (response) {
alert(response.d);
}
});
}
var row;
function OnSuccess(response) {
var xmlDoc = $.parseXML(response.d);
var xml = $(xmlDoc);
var customers = xml.find("Customers");
if (row == null) {
row = $("[id*=gvCustomers] tr:last-child").clone(true);
}
$("[id*=gvCustomers] tr").not($("[id*=gvCustomers] tr:first-child")).remove();
if (customers.length > 0) {
$.each(customers, function () {
var customer = $(this);
$("td", row).eq(0).html($(this).find("Name").text());
$("td", row).eq(1).html($(this).find("Account").text());
$("td", row).eq(2).html($(this).find("Class").text());
$("td", row).eq(3).html($(this).find("Stream").text());
$("td", row).eq(4).html($(this).find("Regno").text());
$("td", row).eq(5).html($(this).find("Program").text());
$("td", row).eq(6).html($(this).find("Limit").text());
$("td", row).eq(7).html($(this).find("Type").text());
$("td", row).eq(8).html($(this).find("House").text());
$("[id*=gvCustomers]").append(row);
row = $("[id*=gvCustomers] tr:last-child").clone(true);
});
var pager = xml.find("Pager");
$(".Pager").ASPSnippets_Pager({
ActiveCssClass: "current",
PagerCssClass: "pager",
PageIndex: parseInt(pager.find("PageIndex").text()),
PageSize: parseInt(pager.find("PageSize").text()),
RecordCount: parseInt(pager.find("RecordCount").text())
});
$(".ContactName").each(function () {
var searchPattern = new RegExp('(' + SearchTerm() + ')', 'ig');
$(this).html($(this).text().replace(searchPattern, "<span class = 'highlight'>" + SearchTerm() + "</span>"));
});
} else {
var empty_row = row.clone(true);
$("td:first-child", empty_row).attr("colspan", $("td", row).length);
$("td:first-child", empty_row).attr("align", "center");
$("td:first-child", empty_row).html("No records found for the search criteria.");
$("td", empty_row).not($("td:first-child", empty_row)).remove();
$("[id*=gvCustomers]").append(empty_row);
}
};
</script>
<script type="text/javascript">
$(function () {
GetCustomers(1);
});
$("[id*=txtSearch]").live("keyup", function () {
GetCustomers(parseInt(1));
});
$(".Pager .page").live("click", function () {
GetCustomers(parseInt($(this).attr('page')));
});
function SearchTerm() {
return jQuery.trim($("[id*=txtSearch]").val());
};
function GetCustomers(pageIndex) {
$.ajax({
type: "POST",
url: "Find.aspx/GetCustomers",
data: '{searchTerm: "' + SearchTerm() + '", pageIndex: ' + pageIndex + '}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccess,
failure: function (response) {
alert(response.d);
},
error: function (response) {
alert(response.d);
}
});
}
var row;
function OnSuccess(response) {
var xmlDoc = $.parseXML(response.d);
var xml = $(xmlDoc);
var customers = xml.find("Customers");
if (row == null) {
row = $("[id*=gvCustomers] tr:last-child").clone(true);
}
$("[id*=gvCustomers] tr").not($("[id*=gvCustomers] tr:first-child")).remove();
if (customers.length > 0) {
$.each(customers, function () {
var customer = $(this);
$("td", row).eq(0).html($(this).find("Name").text());
$("td", row).eq(1).html($(this).find("Account").text());
$("td", row).eq(2).html($(this).find("Class").text());
$("td", row).eq(3).html($(this).find("Stream").text());
$("td", row).eq(4).html($(this).find("Regno").text());
$("td", row).eq(5).html($(this).find("Program").text());
$("td", row).eq(6).html($(this).find("Limit").text());
$("td", row).eq(7).html($(this).find("Type").text());
$("td", row).eq(8).html($(this).find("House").text());
$("[id*=gvCustomers]").append(row);
row = $("[id*=gvCustomers] tr:last-child").clone(true);
});
var pager = xml.find("Pager");
$(".Pager").ASPSnippets_Pager({
ActiveCssClass: "current",
PagerCssClass: "pager",
PageIndex: parseInt(pager.find("PageIndex").text()),
PageSize: parseInt(pager.find("PageSize").text()),
RecordCount: parseInt(pager.find("RecordCount").text())
});
$(".Name").each(function () {
var searchPattern = new RegExp('(' + SearchTerm() + ')', 'ig');
$(this).html($(this).text().replace(searchPattern, "<span class = 'highlight'>" + SearchTerm() + "</span>"));
});
} else {
var empty_row = row.clone(true);
$("td:first-child", empty_row).attr("colspan", $("td", row).length);
$("td:first-child", empty_row).attr("align", "center");
$("td:first-child", empty_row).html("No records found for the search criteria.");
$("td", empty_row).not($("td:first-child", empty_row)).remove();
$("[id*=gvCustomers]").append(empty_row);
}
};
$(function () {
$("[id*=gvCustomers]").find("a").click(function () {
var row = $(this).closest("tr");
var customerid = row.find("td").eq(0).html();
var name = row.find("td").eq(1).html();
var country = row.find("td").eq(2).html();
var Stream = row.find("td").eq(3).html();
var Types = row.find("td").eq(7).html();
var Program = row.find("td").eq(5).html();
var Limit = row.find("td").eq(6).html();
var House = row.find("td").eq(8).html();
var Regno = row.find("td").eq(4).html();
document.getElementById("hfId").value = customerid;
document.getElementById("hfName").value = name;
document.getElementById("hfCountry").value = country;
document.getElementById("hfstream").value = Stream;
document.getElementById("hfTypes").value = Types;
document.getElementById("hfProgram").value = Program;
document.getElementById("hfLimit").value = Limit;
document.getElementById("hfHouse").value = House;
document.getElementById("hfRegno").value = Regno;
});
});
</script>
<body>
Search:
<asp:TextBox ID="txtSearch" runat="server" />
<hr />
<asp:GridView ID="gvCustomers" runat="server" AutoGenerateColumns="False" Height="16px" Width="855px">
<Columns>
<asp:BoundField HeaderStyle-Width="150px" DataField="Name" HeaderText="Name"
ItemStyle-CssClass="ContactName" >
<HeaderStyle Width="150px"></HeaderStyle>
<ItemStyle CssClass="ContactName"></ItemStyle>
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" DataField="Account" HeaderText="Account" >
<HeaderStyle Width="150px"></HeaderStyle>
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" DataField="Class" HeaderText="Class" >
<HeaderStyle Width="150px"></HeaderStyle>
</asp:BoundField>
<asp:BoundField DataField="Stream" HeaderText="Stream" />
<asp:BoundField DataField="Regno" HeaderText="Regno" />
<asp:BoundField DataField="Program" HeaderText="Program" />
<asp:BoundField DataField="Limit" HeaderText="BookLimit" />
<asp:BoundField DataField="Type" HeaderText="Type" />
<asp:BoundField DataField="House" HeaderText="House" />
<asp:CommandField ShowSelectButton="True" />
</Columns>
</asp:GridView>
<br />
<div class="Pager">
</div>
<asp:HiddenField ID="hfId" runat="server"> </asp:HiddenField>
<asp:HiddenField ID="hfName" runat="server"></asp:HiddenField >
<asp:HiddenField ID="hfCountry" runat="server"></asp:HiddenField >
<asp:HiddenField ID="hfstream" runat="server"></asp:HiddenField >
<asp:HiddenField ID="hfTypes" runat="server"></asp:HiddenField>
<asp:HiddenField ID="hfProgram" runat="server"></asp:HiddenField >
<asp:HiddenField ID="hfLimit" runat="server"></asp:HiddenField>
<asp:HiddenField ID="hfHouse" runat="server"></asp:HiddenField>
<asp:HiddenField ID="hfRegno" runat="server"></asp:HiddenField>
<asp:Label ID="Usernames" runat="server" Text="Usernames"></asp:Label>
</body>
</html>
</asp:Content>