or


<telerik:RadAjaxManager runat="server" ID="RadAjaxManager1"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadGrid1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadGrid1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadGrid ID="RadGrid1" GridLines="None" AutoGenerateColumns="false" PageSize="10" AllowPaging="true" AllowSorting="true" runat="server" DataSourceID="MasterViewDataSource" OnItemDataBound="OnItemDataBoundHandler" AllowAutomaticInserts="True" AllowAutomaticUpdates="true" AllowAutomaticDeletes="true" ShowStatusBar="true"> <PagerStyle Mode="NextPrevAndNumeric" /> <MasterTableView ShowFooter="false" DataKeyNames="TrxId" EditMode="InPlace" CommandItemDisplay="TopAndBottom"> <Columns> <telerik:GridBoundColumn DataField="TrxId" HeaderText="Trx No." ReadOnly="true"/> <telerik:GridTemplateColumn HeaderText="Job Type" ItemStyle-Width="240px"> <ItemTemplate> <%#DataBinder.Eval(Container.DataItem, "TypeName")%> </ItemTemplate> <EditItemTemplate> <telerik:RadComboBox runat="server" ID="RadComboBox2" DataTextField="TypeName" DataValueField="TypeId" DataSourceID="CategoriesDataSource" SelectedValue='<%#Bind("TypeId") %>'> </telerik:RadComboBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="ObjId" HeaderText="Container No." SortExpression="ObjSN"> <FooterTemplate>Template footer</FooterTemplate> <FooterStyle VerticalAlign="Middle" HorizontalAlign="Center" /> <ItemTemplate> <%#DataBinder.Eval(Container.DataItem, "ObjSN")%> </ItemTemplate> <EditItemTemplate> <telerik:RadComboBox runat="server" ID="RadComboBox1" EnableLoadOnDemand="True" DataTextField="ObjSN" OnItemsRequested="RadComboBox1_ItemsRequested" OnSelectedIndexChanged="RadComboBox1_SelectedIndexChanged" DataValueField="ObjId" AutoPostBack="true" HighlightTemplatedItems="true" Height="140px" Width="220px" DropDownWidth="300px"> <HeaderTemplate> <ul> <li class="col1">Container No.</li> <li class="col2">Container Type</li> </ul> </HeaderTemplate> <ItemTemplate> <ul> <li class="col1"> <%# DataBinder.Eval(Container, "Text")%> </li> <li class="col2"> <%# DataBinder.Eval(Container, "Attributes['ObjType']")%> </li> </ul> </ItemTemplate> </telerik:RadComboBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="STCPO"> <ItemTemplate> <%#DataBinder.Eval(Container.DataItem, "StateName")%> </ItemTemplate> <EditItemTemplate> <telerik:RadComboBox runat="server" ID="RadComboBox3" DataTextField="StateName" DataValueField="StateId" DataSourceID="LoadStatesDataSource" SelectedValue='<%#Bind("StateId") %>'> </telerik:RadComboBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Voy. No."> <ItemTemplate> <%#DataBinder.Eval(Container.DataItem, "VoyName")%> </ItemTemplate> <EditItemTemplate> <telerik:RadComboBox runat="server" ID="RadComboBox4" DataTextField="VoyName" DataValueField="VoyId" DataSourceID="VoyagesDataSource" SelectedValue='<%#Bind("VoyId") %>'> </telerik:RadComboBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Shipper"> <ItemTemplate> <%#DataBinder.Eval(Container.DataItem, "Shipr")%> </ItemTemplate> <EditItemTemplate> <telerik:RadComboBox runat="server" ID="RadComboBox5" DataTextField="Shipr" MinFilterLength="4" OnItemsRequested="RadComboBox5_ItemsRequested" EnableLoadOnDemand="true" DataValueField="ShipprId" OnSelectedIndexChanged="RadComboBox5_SelectedIndexChanged" SelectedValue='<%#Bind("ShiprId") %>'> </telerik:RadComboBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Consignee"> <ItemTemplate> <%#DataBinder.Eval(Container.DataItem, "Cons")%> </ItemTemplate> <EditItemTemplate> <telerik:RadComboBox runat="server" ID="RadComboBox6" DataTextField="Cons" OnItemsRequested="RadComboBox6_ItemsRequested" EnableLoadOnDemand="true" DataValueField="ConsId" OnSelectedIndexChanged="RadComboBox6_SelectedIndexChanged" SelectedValue='<%#Bind("ConsId") %>'> </telerik:RadComboBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn DataField="TrxWeight" HeaderText="GWT" UniqueName="TrxWeight"/> <telerik:GridBoundColumn DataField="TrxSeal" HeaderText="Seal No." UniqueName="TrxSeal"/> <telerik:GridBoundColumn DataField="TrxRemarks" HeaderText="Remarks" UniqueName="TrxRemarks"/> <telerik:GridTemplateColumn HeaderText="Bill To"> <ItemTemplate> <%#DataBinder.Eval(Container.DataItem, "BillCompany")%> </ItemTemplate> <EditItemTemplate> <telerik:RadComboBox runat="server" ID="RadComboBox7" DataTextField="BillCompany" DataValueField="BillId" DataSourceID="BillingDataSource" SelectedValue='<%#Bind("BillId") %>'> </telerik:RadComboBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridEditCommandColumn FooterText="EditCommand footer" UniqueName="EditCommandColumn" HeaderText="Edit" HeaderStyle-Width="100px" UpdateText="Update"> </telerik:GridEditCommandColumn> <telerik:GridClientDeleteColumn ConfirmTextFields="TrxId" ConfirmTextFormatString="Are you sure you want to delete transaction No. {0:0000}?" HeaderStyle-Width="35px" ButtonType="ImageButton" ImageUrl="Delete.gif"> </telerik:GridClientDeleteColumn> </Columns> </MasterTableView> </telerik:RadGrid> <asp:SqlDataSource ID="MasterViewDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ZEUS %>" SelectCommand="SELECT TransactsData.TrxId, TransactsData.TypeId, TransactsData.StateId, TransactsData.ObjId, TransactsData.VoyId, TransactsData.BillId, TransactsData.TrxWeight, TransactsData.TrxSeal, TransactsData.ShiprId, TransactsData.ConsId, a1.CustName AS Shipr, a2.CustName AS Cons, ObjectsData.ObjSN, ObjectsData.ObjType, WorkTypes.TypeName, BillingData.BillCompany, LoadStates.StateName, VoysData.VoyName, VoysData.VoyDate FROM TransactsData INNER JOIN Customers AS a1 ON a1.CustId = TransactsData.ShiprId INNER JOIN Customers AS a2 ON a2.CustId = TransactsData.ConsId INNER JOIN BillingData ON TransactsData.BillId = BillingData.BillId INNER JOIN WorkTypes ON TransactsData.TypeId = WorkTypes.TypeId INNER JOIN ObjectsData ON TransactsData.ObjId = ObjectsData.ObjId INNER JOIN LoadStates ON TransactsData.StateId = LoadStates.StateId INNER JOIN VoysData ON TransactsData.VoyId = VoysData.VoyId" InsertCommand="INSERT INTO [TransactsData] ([TypeId], [StateId], [ObjId], [VoyId], [ShiprId], [ConsId], [TrxWeight], [TrxSeal], [TrxRemarks], [BillId], [TimeCreated]) VALUES (@TypeId, @StateId, @ObjId, @VoyId, @ShiprId, @ConsId, @TrxWeight, @TrxSeal, @TrxRemarks, @BillId, GETDATE())" UpdateCommand="UPDATE [TransactsData] SET [TypeId] = @TypeId, [StateId] = @StateId, [ObjId] = @ObjId, [VoyId] = @VoyId, [ShiprId] = @ShiprId, [ConsId] = @ConsId, [TrxWeight] = @TrxWeight, [TrxSeal] = @TrxSeal, [TrxRemarks] = @TrxRemarks, [BillId] = @BillId, [TimeUpdated] = GETDATE() WHERE [TrxId] = @TrxId" DeleteCommand="DELETE FROM [TransactsData] WHERE [TrxId] = @TrxId"> <InsertParameters> <asp:Parameter Name="TrxId" Type="Int64" /> <asp:SessionParameter SessionField="ObjId" Name="ObjId" Type="Int64" /> <asp:Parameter Name="TypeId" Type="Int32" /> <asp:Parameter Name="StateId" Type="Int32" /> <asp:Parameter Name="VoyId" Type="Int64" /> <asp:Parameter Name="ShiprId" Type="Int64" /> <asp:Parameter Name="ConsId" Type="Int64" /> <asp:Parameter Name="TrxWeight" Type="Int32" /> <asp:Parameter Name="TrxSeal" Type="String" /> <asp:Parameter Name="TrxRemarks" Type="String" /> <asp:Parameter Name="BillId" Type="Int32" /> <asp:Parameter Name="TimeCreated" Type="DateTime" /> </InsertParameters> <UpdateParameters> <asp:Parameter Name="TrxId" Type="Int64" /> <asp:SessionParameter SessionField="ObjId" Name="ObjId" Type="Int64" /> <asp:Parameter Name="TypeId" Type="Int32" /> <asp:Parameter Name="StateId" Type="Int32" /> <asp:Parameter Name="VoyId" Type="Int64" /> <asp:Parameter Name="ShiprId" Type="Int64" /> <asp:Parameter Name="ConsId" Type="Int64" /> <asp:Parameter Name="TrxWeight" Type="Int32" /> <asp:Parameter Name="TrxSeal" Type="String" /> <asp:Parameter Name="TrxRemarks" Type="String" /> <asp:Parameter Name="BillId" Type="Int32" /> <asp:Parameter Name="TimeUpdated" Type="DateTime" /> </UpdateParameters> <DeleteParameters> <asp:Parameter Name="TrxId" Type="Int64" /> </DeleteParameters> </asp:SqlDataSource> <asp:SqlDataSource ID="CategoriesDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ZEUS %>" SelectCommand="SELECT [TypeId], [TypeName] FROM [WorkTypes]"></asp:SqlDataSource> <asp:SqlDataSource ID="LoadStatesDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ZEUS %>" SelectCommand="SELECT [StateId], [StateName] FROM [LoadStates]"></asp:SqlDataSource> <asp:SqlDataSource ID="VoyagesDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ZEUS %>" SelectCommand="SELECT [VoyId], [VoyName] FROM [VoysData]"></asp:SqlDataSource> <asp:SqlDataSource ID="BillingDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ZEUS %>" SelectCommand="SELECT [BillId], [BillCompany] FROM [BillingData]"></asp:SqlDataSource></asp:Content>using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Configuration;using System.Data;using System.Data.SqlClient;using Telerik.Web.UI;namespace TMSv2{ public partial class TestBed : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } //GridEvents protected void OnItemDataBoundHandler(object sender, GridItemEventArgs e) { if (e.Item.IsInEditMode) { GridEditableItem item = (GridEditableItem)e.Item; if (!(e.Item is IGridInsertItem)) { RadComboBox combo = (RadComboBox)item.FindControl("RadComboBox1"); RadComboBoxItem selectedItem = new RadComboBoxItem(); selectedItem.Text = ((DataRowView)e.Item.DataItem)["ObjSN"].ToString(); selectedItem.Value = ((DataRowView)e.Item.DataItem)["ObjId"].ToString(); selectedItem.Attributes.Add("ObjType", ((DataRowView)e.Item.DataItem)["ObjType"].ToString()); combo.Items.Add(selectedItem); selectedItem.DataBind(); Session["ObjId"] = selectedItem.Value; } } } // ComboboxEvents protected void RadComboBox1_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e) { string sql = "SELECT [ObjId], [ObjSN], [ObjType], [ObjOID] FROM [ObjectsData] WHERE ObjSN LIKE @ObjSN + '%'"; SqlDataAdapter adapter = new SqlDataAdapter(sql, ConfigurationManager.ConnectionStrings["ZEUS"].ConnectionString); adapter.SelectCommand.Parameters.AddWithValue("@ObjSN", e.Text); DataTable dt = new DataTable(); adapter.Fill(dt); RadComboBox comboBox = (RadComboBox)sender; comboBox.Items.Clear(); foreach (DataRow row in dt.Rows) { RadComboBoxItem item = new RadComboBoxItem(); item.Text = row["ObjSN"].ToString(); item.Value = row["ObjId"].ToString(); item.Attributes.Add("ObjType", row["ObjType"].ToString()); comboBox.Items.Add(item); item.DataBind(); } } protected void RadComboBox1_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e) { Session["ObjId"] = e.Value; } protected void RadComboBox5_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e) { string sql = "SELECT [CustId], [CustName] FROM [Customers] WHERE CustName LIKE @CustName + '%'"; var con = new SqlConnection(ConfigurationManager.ConnectionStrings["ZEUS"].ConnectionString); var cmd = new SqlCommand(sql, con); var reader = default(SqlDataReader); cmd.Parameters.AddWithValue("@CustName", e.Text); try { con.Open(); reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); var obj = default(object); RadComboBox comboBox = (RadComboBox)sender; while (reader.Read()) { obj = reader["CustId"]; var id = obj == DBNull.Value ? 0 : Convert.ToInt64(obj); obj = reader["CustName"]; var name = obj == DBNull.Value ? string.Empty : Convert.ToString(obj); RadComboBoxItem item = new RadComboBoxItem(); item.Text = name; item.Value = id.ToString(); comboBox.Items.Add(item); } } finally { if (reader != null && !reader.IsClosed) reader.Close(); if (con != null && con.State == ConnectionState.Open) con.Close(); } } protected void RadComboBox5_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e) { Session["CustId"] = e.Value; } protected void RadComboBox6_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e) { string sql = "SELECT [CustId], [CustName] FROM [Customers] WHERE CustName LIKE @CustName + '%'"; var con = new SqlConnection(ConfigurationManager.ConnectionStrings["ZEUS"].ConnectionString); var cmd = new SqlCommand(sql, con); var reader = default(SqlDataReader); cmd.Parameters.AddWithValue("@CustName", e.Text); try { con.Open(); reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); var obj = default(object); RadComboBox comboBox = (RadComboBox)sender; while (reader.Read()) { obj = reader["CustId"]; var id = obj == DBNull.Value ? 0 : Convert.ToInt64(obj); obj = reader["CustName"]; var name = obj == DBNull.Value ? string.Empty : Convert.ToString(obj); RadComboBoxItem item = new RadComboBoxItem(); item.Text = name; item.Value = id.ToString(); comboBox.Items.Add(item); } } finally { if (reader != null && !reader.IsClosed) reader.Close(); if (con != null && con.State == ConnectionState.Open) con.Close(); } } protected void RadComboBox6_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e) { Session["CustId"] = e.Value; } }}<telerik:GridTemplateColumn HeaderText="*Address" UniqueName="address" DataField="address" Display="false"> <ItemTemplate> <asp:Label ID="lbladdress" runat="server" Text='<%# Eval("address") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <telerik:RadTextBox ID="txbaddress" Width="300px" runat="server" Text='<%# Eval("address") %>'> </telerik:RadTextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator_address" runat="server" ControlToValidate="txbaddress" ErrorMessage="Required" Text="*"></asp:RequiredFieldValidator> </EditItemTemplate> <ItemStyle VerticalAlign="Top"></ItemStyle> </telerik:GridTemplateColumn>