html code
<%@ Page Language="C#" MasterPageFile="~/cpanel.master" AutoEventWireup="true" CodeFile="main_store.aspx.cs" Inherits="Edit_User" Title="Untitled Page" %>
<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="cc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<style type="text/css">
.style32
{
height: 32px;
}
.style33
{
width: 463px;
}
.style34
{
width: 463px;
font-weight: bold;
}
</style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<center style="background-color: #EEEEEE">
<table frame="box" style="width: 100%">
<tr>
<td align="left" bgcolor="Tan">
BarCode
<asp:TextBox ID="TextBox1" runat="server" Height="21px"
onkeypress="IsEnterKey(this)" Width="309px" AutoPostBack="True"
ontextchanged="TextBox1_TextChanged1"></asp:TextBox>
</td>
<td align="left" bgcolor="Tan">
Category
<asp:DropDownList ID="item_supply" runat="server" AutoPostBack="True"
DataSourceID="SqlDataSource2" DataTextField="cat_name" DataValueField="cat_id"
ondatabound="item_supply_DataBound" Height="25px" style="margin-left: 0px"
Width="300px">
</asp:DropDownList>
</td>
</tr>
<tr>
<td align="center" colspan="2">
<br />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AutoGenerateColumns="False" BackColor="LightGoldenrodYellow" BorderColor="Tan"
BorderWidth="1px" CellPadding="2" DataKeyNames="code"
DataSourceID="SqlDataSource1" ForeColor="Black" GridLines="None"
Width="100%" ShowHeaderWhenEmpty="True">
<AlternatingRowStyle BackColor="PaleGoldenrod" />
<Columns>
<asp:CommandField ShowSelectButton="True" />
<asp:BoundField DataField="code" HeaderText="code" ReadOnly="True"
SortExpression="code" />
<asp:BoundField DataField="item_name" HeaderText="item_name"
SortExpression="item_name" />
<asp:BoundField DataField="item_desc" HeaderText="item_desc"
SortExpression="item_desc" />
<asp:BoundField DataField="item_min" HeaderText="item_min"
SortExpression="item_min" />
<asp:BoundField DataField="item_max" HeaderText="item_max"
SortExpression="item_max" />
<asp:BoundField DataField="item_supply" HeaderText="item_supply"
SortExpression="item_supply" />
<asp:BoundField DataField="item_price" HeaderText="item_price"
SortExpression="item_price" />
<asp:BoundField DataField="item_cat" HeaderText="item_cat"
SortExpression="item_cat" />
</Columns>
<FooterStyle BackColor="Tan" />
<HeaderStyle BackColor="Tan" Font-Bold="True" />
<PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue"
HorizontalAlign="Center" />
<SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" />
<SortedAscendingCellStyle BackColor="#FAFAE7" />
<SortedAscendingHeaderStyle BackColor="#DAC09E" />
<SortedDescendingCellStyle BackColor="#E1DB9C" />
<SortedDescendingHeaderStyle BackColor="#C2A47B" />
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:myconstr %>"
SelectCommand="SELECT code, item_name, item_desc, item_min, item_max, item_supply, item_price, item_cat FROM Items WHERE (item_name LIKE '%' + @name + '%' ) AND ((item_cat = @cat) OR (@cat = 0))">
<SelectParameters>
<asp:ControlParameter ControlID="TextBox1" DefaultValue="" Name="name"
PropertyName="Text" />
<asp:ControlParameter ControlID="item_supply" Name="cat"
PropertyName="SelectedValue" />
</SelectParameters>
</asp:SqlDataSource>
<br />
<br />
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:myconstr %>"
SelectCommand="SELECT * FROM [cat]"></asp:SqlDataSource>
</td>
</tr>
</table>
<table width="100%">
<tr>
<td align="left" bgcolor="Tan" class="style34">
Invoice Information</td>
</tr>
<tr>
<td align="left" bgcolor="Tan" class="style33">
Invoice No
<asp:TextBox ID="inv_no" runat="server"></asp:TextBox>
Invoice Date
<asp:TextBox ID="inv_date" runat="server" Height="24px" Width="150px"></asp:TextBox>
<cc1:CalendarExtender ID="inv_date_CalendarExtender" runat="server"
Enabled="True" TargetControlID="inv_date" Format="dd/MM/yyyy">
</cc1:CalendarExtender>
</td>
<td align="left" bgcolor="Tan">
Supplier
<asp:DropDownList ID="supply" runat="server"
DataSourceID="SqlDataSource3" DataTextField="supplier_name"
DataValueField="code" Height="16px" Width="158px">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource3" runat="server"
ConnectionString="<%$ ConnectionStrings:myconstr %>"
SelectCommand="SELECT [supplier_name], [code] FROM [suppliers]">
</asp:SqlDataSource>
</td>
</tr>
<tr>
<td align="left" bgcolor="LightGoldenrodYellow" class="style33">
</td>
<td align="left" bgcolor="LightGoldenrodYellow">
</td>
</tr>
<tr>
<td align="left" bgcolor="Tan" class="style33">
BrCode
<asp:TextBox ID="code" runat="server" Height="26px" Width="364px"
AutoPostBack="True" ontextchanged="code_TextChanged"></asp:TextBox>
</td>
<td align="left" bgcolor="Tan">
Quntity
<asp:TextBox ID="qun" runat="server" AutoPostBack="True"
ontextchanged="qun_TextChanged" Height="27px" Width="300px"></asp:TextBox>
<cc1:FilteredTextBoxExtender ID="qun_FilteredTextBoxExtender" runat="server"
Enabled="True" FilterType="Numbers" TargetControlID="qun">
</cc1:FilteredTextBoxExtender>
</td>
</tr>
<tr>
<td align="left" class="style33" bgcolor="LightGoldenrodYellow">
<b>Item Name :</b><asp:Label ID="lblname" runat="server"></asp:Label>
</td>
<td align="left" bgcolor="LightGoldenrodYellow">
<b>Item Quntity :</b><asp:Label ID="lblqun" runat="server"></asp:Label>
</td>
</tr>
<tr>
<td class="style32" colspan="2">
<asp:GridView ID="GridView2" runat="server"
BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px"
CellPadding="2" ForeColor="Black" GridLines="None"
AutoGenerateDeleteButton="True" onrowdeleting="GridView2_RowDeleting"
Width="100%" ShowFooter="True" ShowHeaderWhenEmpty="True">
<AlternatingRowStyle BackColor="PaleGoldenrod" />
<FooterStyle BackColor="Tan" />
<HeaderStyle BackColor="Tan" Font-Bold="True" HorizontalAlign="Left"
VerticalAlign="Middle" />
<PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue"
HorizontalAlign="Center" />
<RowStyle HorizontalAlign="Left" VerticalAlign="Middle" />
<SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" />
<SortedAscendingCellStyle BackColor="#FAFAE7" />
<SortedAscendingHeaderStyle BackColor="#DAC09E" />
<SortedDescendingCellStyle BackColor="#E1DB9C" />
<SortedDescendingHeaderStyle BackColor="#C2A47B" />
<Columns>
<asp:CommandField ShowDeleteButton="True" ButtonType="Button" />
</Columns>
</asp:GridView>
</td>
</tr>
<tr>
<td class="style33" align="left">
<asp:Button ID="Button1" runat="server" onclick="Button1_Click"
Text="ادخال للمستودع" />
</td>
<td>
</td>
</tr>
<tr>
<td class="style33" align="left">
<asp:Label ID="lblmsg" runat="server"></asp:Label>
</td>
<td>
</td>
</tr>
</table>
<asp:SqlDataSource ID="SqlDataSource4" runat="server"
ConnectionString="<%$ ConnectionStrings:myconstr %>"
DeleteCommand="DELETE FROM [invoices] WHERE [serials] = @serials"
InsertCommand="INSERT INTO [invoices] ([Invoice_no], [Invoice_Date], [Supplier]) VALUES (@Invoice_no, @Invoice_Date, @Supplier)"
SelectCommand="SELECT * FROM [invoices]"
UpdateCommand="UPDATE [invoices] SET [Invoice_no] = @Invoice_no, [Invoice_Date] = @Invoice_Date, [Supplier] = @Supplier, [amount] = @amount WHERE [serials] = @serials">
<DeleteParameters>
<asp:Parameter Name="serials" Type="Int32" />
</DeleteParameters>
<InsertParameters>
<asp:ControlParameter ControlID="inv_no" Name="Invoice_no" PropertyName="Text"
Type="String" />
<asp:ControlParameter ControlID="inv_date" Name="Invoice_Date"
PropertyName="Text" Type="DateTime" />
<asp:ControlParameter ControlID="supply" Name="Supplier"
PropertyName="SelectedValue" Type="Int32" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="Invoice_no" Type="String" />
<asp:Parameter Name="Invoice_Date" Type="DateTime" />
<asp:Parameter Name="Supplier" Type="Int32" />
<asp:Parameter Name="amount" Type="Double" />
<asp:Parameter Name="serials" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
<asp:SqlDataSource ID="SqlDataSource5" runat="server"
ConnectionString="<%$ ConnectionStrings:myconstr %>"
DeleteCommand="DELETE FROM [purchasing] WHERE [serial] = @serial"
InsertCommand="INSERT INTO [purchasing] ([invoice_no_fk], [item_code_fk], [item_price], [serial]) VALUES (@invoice_no_fk, @item_code_fk, @item_price, @serial)"
SelectCommand="SELECT [invoice_no_fk], [item_code_fk], [item_price], [serial] FROM [purchasing]"
UpdateCommand="UPDATE [purchasing] SET [invoice_no_fk] = @invoice_no_fk, [item_code_fk] = @item_code_fk, [item_price] = @item_price WHERE [serial] = @serial">
<DeleteParameters>
<asp:Parameter Name="serial" Type="Int32" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="invoice_no_fk" Type="String" />
<asp:Parameter Name="item_code_fk" Type="Int32" />
<asp:Parameter Name="item_price" Type="Double" />
<asp:Parameter Name="serial" Type="Int32" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="invoice_no_fk" Type="String" />
<asp:Parameter Name="item_code_fk" Type="Int32" />
<asp:Parameter Name="item_price" Type="Double" />
<asp:Parameter Name="serial" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
<br/>
</center>
</asp:Content>
cs code
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
public partial class Edit_User : System.Web.UI.Page
{
string cs = ConfigurationManager.ConnectionStrings["myconstr"].ConnectionString.ToString();
DataTable dt = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
}
void ShowData()
{
SqlConnection cn = new SqlConnection(cs);
cn.Open();
string sqlSelect = "Select item_name , code_fk , item_qun from items,main_store where code=code_fk and code=" + code.Text + "";
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = sqlSelect;
SqlDataReader dr;
dr = cmd.ExecuteReader();
if (dr.Read())
{
lblname.ForeColor = System.Drawing.Color.Green;
lblname.Text = (dr["item_name"]).ToString();
lblqun.Text = (dr["item_qun"]).ToString();
qun.Focus();
}
else
{
lblname.ForeColor = System.Drawing.Color.Red;
lblname.Text = "No Matched BarCode";
code.Focus();
}
cn.Close();
}
protected void item_supply_DataBound(object sender, EventArgs e)
{
ListItem li = new ListItem("-- Select Supplier --", "0");
item_supply.Items.Insert(0, li);
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
SqlDataSource1.DataBind();
}
protected void code_TextChanged(object sender, EventArgs e)
{
ShowData();
}
protected void code_Disposed(object sender, EventArgs e)
{
ShowData();
}
protected void TextBox1_TextChanged1(object sender, EventArgs e)
{
SqlDataSource1.DataBind();
}
protected void qun_TextChanged(object sender, EventArgs e)
{
if (lblmsg.Text == "No Matched BarCode")
{
code.Focus();
}
else
{
if (GridView2.Rows.Count == 0)
{
dt = MakeTable();
}
else
{
dt = (DataTable)ViewState["dt"];
}
DataRow dr = dt.NewRow();
dr[0] = lblname.Text;
dr[1] = code.Text;
dr[2] = qun.Text;
dt.Rows.Add(dr);
GridView2.DataSource = null;
GridView2.DataSource = dt;
GridView2.DataBind();
ViewState.Add("dt", dt);
code.Text = "";
code.Focus();
qun.Text = "";
}
}
DataTable MakeTable()
{
DataTable Mydt = new DataTable();
DataColumn col1 = new DataColumn("Item Name");
col1.DataType = System.Type.GetType("System.String");
Mydt.Columns.Add(col1);
DataColumn col2 = new DataColumn("Item Barcode");
col1.DataType = System.Type.GetType("System.String");
Mydt.Columns.Add(col2);
DataColumn col3 = new DataColumn("Item Qun");
col1.DataType = System.Type.GetType("System.String");
Mydt.Columns.Add(col3);
return Mydt;
}
protected void GridView2_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
int index = Convert.ToInt32(e.RowIndex);
DataTable dt = ViewState["dt"] as DataTable;
dt.Rows[index].Delete();
ViewState["dt"] = dt;
}
protected void Button1_Click(object sender, EventArgs e)
{
int done = 0;
foreach (GridViewRow row in GridView2.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
done++;
SqlConnection cn = new SqlConnection(cs);
cn.Open();
SqlCommand cmd = new SqlCommand();
string sqlStatment = " update [main_store] set [item_qun] = [item_qun] + @qun where code_fk=@code1";
cmd.CommandType = CommandType.Text;
cmd.CommandText = sqlStatment;
cmd.Connection = cn;
cmd.Parameters.AddWithValue("@code1", (row.Cells[2].Text));
cmd.Parameters.AddWithValue("@code2", (row.Cells[2].Text));
cmd.Parameters.AddWithValue("@qun", (row.Cells[3].Text));
cmd.Parameters.AddWithValue("@invoice_no_fk", (inv_no.Text));
SqlDataAdapter ad = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
ad.SelectCommand = cmd;
ad.Fill(ds);
cn.Close();
GridView2.DataSource = null ;
GridView2.DataBind();
lblmsg.ForeColor = System.Drawing.Color.Green;
lblmsg.Text = "Saved To Main Store Succefully";
}
}
SqlDataSource4.Insert();
}
}