Hi,
I have a radgrid with that has a edittemplate with a cascading dropdown list. first dropdown allow to select project type then 2nd dropdown will bind the datasource accordingly. I have to click "Insert" twice to fire the insercommand.
I have a radgrid with that has a edittemplate with a cascading dropdown list. first dropdown allow to select project type then 2nd dropdown will bind the datasource accordingly. I have to click "Insert" twice to fire the insercommand.
<telerik:RadGrid ID="rdGEDetails" runat="server" AllowFilteringByColumn="True" AllowPaging="True" AllowSorting="True" GridLines="None"
Height="383px" OnDeleteCommand="rdGEDetails_DeleteCommand" OnInsertCommand="rdGEDetails_InsertCommand" OnItemDataBound="rdGEDetails_ItemDataBound" OnNeedDataSource="rdGEDetails_NeedDataSource" onUpdateCommand="rdGEDetails_UpdateCommand" Skin="Web20" Width="642px" OnItemCreated="rdGEDetails_ItemCreated"> <ValidationSettings ValidationGroup="FormValidation" /> <MasterTableView AutoGenerateColumns="False" GridLines="Both" CommandItemDisplay="Top" CurrentResetPageIndexAction="SetPageIndexToLast" DataKeyNames="GeneralExpenseDetailID" EditMode="PopUp" InsertItemPageIndexAction="ShowItemOnFirstPage" > <Columns> <telerik:GridEditCommandColumn> </telerik:GridEditCommandColumn> <telerik:GridButtonColumn CommandName="Delete" ConfirmText="Do you wish to delete this record?" Text="Delete" UniqueName="column1"> </telerik:GridButtonColumn> <telerik:GridBoundColumn DataField="GeneralExpenseDetailID" DataType="System.Guid" HeaderText="GeneralExpenseDetailID" ReadOnly="True" SortExpression="GeneralExpenseDetailID" UniqueName="GeneralExpenseDetailID" Visible="False"> </telerik:GridBoundColumn> <telerik:GridTemplateColumn DataField="GeneralDate" DataType="System.DateTime" HeaderText="Doc. Date" SortExpression="GeneralDate" UniqueName="GeneralDate"> <EditItemTemplate> <telerik:RadDatePicker ID="radDocdate" MinDate="2006/1/1" runat="server" DbSelectedDate='<%# Bind("GeneralDate") %>'> <DateInput DateFormat="dd/MM/yyyy"></DateInput> </telerik:RadDatePicker> <asp:RequiredFieldValidator ID="rfvDocdate" runat="server" ControlToValidate="radDocdate" ErrorMessage="*" ValidationGroup="FormValidation"></asp:RequiredFieldValidator> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblDocdate" runat="server" Text='<%# Eval("GeneralDate", "{0:dd/MM/yyyy}") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="DocNo" HeaderText="Doc. No" SortExpression="DocNo" UniqueName="DocNo"> <EditItemTemplate> <asp:TextBox ID="txtDocno" runat="server" MaxLength="100" Text='<%# Bind("DocNo") %>'></asp:TextBox> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblDocno" runat="server" Text='<%# Eval("DocNo") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="Category" HeaderText="Category" SortExpression="Category" UniqueName="Category"> <EditItemTemplate> <telerik:RadComboBox ID="rcboCategory" runat="server"> <CollapseAnimation Duration="200" Type="OutQuint" /> </telerik:RadComboBox> <asp:RequiredFieldValidator ID="rfvCategory" runat="server" ControlToValidate="rcboCategory" ErrorMessage="*" ValidationGroup="FormValidation" InitialValue="-- SELECT --"></asp:RequiredFieldValidator> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblCategory" runat="server" Text='<%# Eval("Category") %>' Width="113px"></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="Description" HeaderText="Description" SortExpression="Description" UniqueName="Description"> <EditItemTemplate> <asp:TextBox ID="txtDescription" runat="server" MaxLength="150" Width="350px" Text='<%# Bind("Description") %>'></asp:TextBox> <asp:RequiredFieldValidator ID="rfvDescription" runat="server" ControlToValidate="txtDescription" ErrorMessage="*" ValidationGroup="FormValidation"></asp:RequiredFieldValidator> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblDescription" runat="server" Text='<%# Eval("Description") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="Currency" HeaderText="Currency" SortExpression="Currency" UniqueName="Currency"> <EditItemTemplate> <telerik:RadComboBox ID="rcboCurrency" runat="server"> <CollapseAnimation Duration="200" Type="OutQuint" /> </telerik:RadComboBox> <asp:RequiredFieldValidator ID="rfvCurrency" runat="server" ControlToValidate="rcboCurrency" ErrorMessage="*" ValidationGroup="FormValidation" InitialValue="-- SELECT --"></asp:RequiredFieldValidator> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblCurrency" runat="server" Text='<%# Eval("Currency") %>' Width="113px"></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="ExRate" HeaderText="Ex Rate" DataType="System.Decimal" SortExpression="ExRate" UniqueName="ExRate"> <EditItemTemplate> <telerik:RadNumericTextBox ID="txtExRate" runat="server" DbValue='<%# Eval("ExRate") %>' > <numberformat DecimalDigits="5" /> </telerik:RadNumericTextBox> <asp:RequiredFieldValidator ID="rfvExRate" runat="server" ControlToValidate="txtExRate" ErrorMessage="*" ValidationGroup="FormValidation" ></asp:RequiredFieldValidator> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblExRate" runat="server" Text='<%# Eval("ExRate") %>' Width="113px"></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="Amount" HeaderText="Amount" DataType="System.Decimal" SortExpression="Amount" UniqueName="Amount"> <EditItemTemplate> <telerik:RadNumericTextBox ID="txtAmount" runat="server" DbValue='<%# Eval("Amount") %>'> <numberformat DecimalDigits="2" /> </telerik:RadNumericTextBox> <asp:RequiredFieldValidator ID="rfvAmount" runat="server" ControlToValidate="txtAmount" ErrorMessage="*" ValidationGroup="FormValidation" ></asp:RequiredFieldValidator> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblAmount" runat="server" Text='<%# Eval("Amount","{0:0.00}") %>' Width="113px"></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <%--<telerik:GridNumericColumn DataField="Amount" DataType="System.Decimal" HeaderText="Amount" HeaderStyle-HorizontalAlign="Right" ItemStyle-HorizontalAlign="Right" ReadOnly="false" UniqueName="Amount" />--%> <telerik:GridTemplateColumn DataField="AmountSGD" HeaderText="AmountSGD" SortExpression="AmountSGD" UniqueName="AmountSGD" DataType="System.Decimal" > <ItemTemplate> <asp:Label ID="lblAmountSGD" runat="server" Text='<%# Eval("AmountSGD") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="Remarks" HeaderText="Comments" SortExpression="Remarks" UniqueName="Remarks"> <EditItemTemplate> <asp:TextBox ID="txtComments" runat="server" TextMode="MultiLine" MaxLength="150" Width="350px" Text='<%# Bind("Remarks") %>'></asp:TextBox> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblComments" runat="server" Text='<%# Eval("Remarks") %>'></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="ChargeType" HeaderText="Charge Type" SortExpression="ChargeType" UniqueName="ChargeType"> <EditItemTemplate> <telerik:RadComboBox ID="rcboChargeType" runat="server"> <CollapseAnimation Duration="200" Type="OutQuint" /> </telerik:RadComboBox> <asp:RequiredFieldValidator ID="rfvChargeType" runat="server" ControlToValidate="rcboChargeType" ErrorMessage="*" ValidationGroup="FormValidation" InitialValue="-- SELECT --"></asp:RequiredFieldValidator> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblChargeType" runat="server" Text='<%# Eval("ChargeType") %>' Width="113px"></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="ChargeCode" HeaderText="Project No." SortExpression="ChargeCode" UniqueName="ChargeCode"> <EditItemTemplate> <telerik:RadComboBox ID="rcboChargeCode" runat="server" Filter="Contains" EnableLoadOnDemand="true" Width="350px" > <CollapseAnimation Duration="200" Type="OutQuint" /> </telerik:RadComboBox> <asp:RequiredFieldValidator ID="rfvChargeCode" runat="server" ControlToValidate="rcboChargeCode" ErrorMessage="*" ValidationGroup="FormValidation" InitialValue="-- SELECT --"></asp:RequiredFieldValidator> </EditItemTemplate> <ItemTemplate> <asp:Label ID="lblChargeCode" runat="server" Text='<%# Eval("ChargeCode") %>' Width="113px"></asp:Label> </ItemTemplate> </telerik:GridTemplateColumn> </Columns> <EditFormSettings> <PopUpSettings Width="500px" /> <EditColumn UniqueName="EditCommandColumn1"> </EditColumn> </EditFormSettings> </MasterTableView> <GroupingSettings CaseSensitive="False" /> </telerik:RadGrid></td> <telerik:RadScriptManager ID="RadScriptManager" runat="server"> </telerik:RadScriptManager> <telerik:RadStyleSheetManager ID="RadStyleSheetManager1" runat="server"> </telerik:RadStyleSheetManager> <asp:ValidationSummary ID="ValidationSummary1" runat="server" HeaderText="Validation Summary" Height="1px" ShowMessageBox="True" ShowSummary="False" Width="196px" /> <telerik:RadAjaxManager ID="RadAjaxManager" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="rdGEDetails"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="rdGEDetails" LoadingPanelID="RadAjaxLoadingPanel1"></telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="PanelAT"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="PanelAT" LoadingPanelID="RadAjaxLoadingPanel1"></telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager>using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using eClaims.DAL;using eClaims.DAL.SqlClient;using eClaims.Entities;using eClaims.Services;using Telerik.Web.UI;using e_Claims;namespace eClaims.Forms.GeneralExpense{ public partial class GECForm : System.Web.UI.Page { private static string _GECid; protected GeneralExpenseClaimService ser_GEC = new GeneralExpenseClaimService(); protected GeneralExpenseClaimDetailService ser_GECD = new GeneralExpenseClaimDetailService(); protected GeneralExpenseClaimDetail ent_GECD = new GeneralExpenseClaimDetail(); protected ExcRateService ser_ExcRate = new ExcRateService(); protected ExcRateQuery qry_ExcRate = new ExcRateQuery(); private static TList<GeneralExpenseClaimDetail> list_GECD = new TList<GeneralExpenseClaimDetail>(); protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { //_GECid=Request.QueryString.Get("GECid"); setValue(); } } private void setValue() { list_GECD = new TList<GeneralExpenseClaimDetail>(); _GECid=null; } protected void rdGEDetails_DeleteCommand(object source, Telerik.Web.UI.GridCommandEventArgs e) { GridEditableItem editedItem = e.Item as GridEditableItem; string key = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["GeneralExpenseDetailID"].ToString(); try { int index = list_GECD.FindIndex( delegate(GeneralExpenseClaimDetail ent_GEC) { return ent_GEC.GeneralExpenseDetailID == new Guid(key); }); if (index >= 0) { list_GECD.RemoveAt(index); } else { this.setMessage("Failed to delete the claim."); } } catch (Exception ex) { } } protected void rdGEDetails_InsertCommand(object source, Telerik.Web.UI.GridCommandEventArgs e) { Boolean insSuccess = true; decimal amountSGD; GridEditFormInsertItem insertedItem = (GridEditFormInsertItem)e.Item; if ((insertedItem.FindControl("rcboChargeCode") as RadComboBox).SelectedValue.Length == 0) { setMessage("Invalid project charge code"); insSuccess = false; } try { if (insSuccess) { ent_GECD.GeneralExpenseDetailID = Guid.NewGuid(); ent_GECD.GeneralDate = (insertedItem.FindControl("radDocdate") as RadDatePicker).SelectedDate; ent_GECD.DocNo = (insertedItem.FindControl("txtDocno") as TextBox).Text; ent_GECD.Category = (insertedItem.FindControl("rcboCategory") as RadComboBox).SelectedValue; ent_GECD.Description = (insertedItem.FindControl("txtDescription") as TextBox).Text; ent_GECD.Currency = (insertedItem.FindControl("rcboCurrency") as RadComboBox).SelectedValue; try {ent_GECD.ExRate = Convert.ToDecimal((insertedItem.FindControl("txtExRate") as RadNumericTextBox).Text);} catch{} try { ent_GECD.Amount = Convert.ToDecimal((insertedItem.FindControl("txtAmount") as RadNumericTextBox).Text); } // { ent_GECD.Amount= Convert.ToDecimal((insertedItem["Amount"].Controls[0] as RadNumericTextBox).Text);} catch { } amountSGD = ent_GECD.Amount.Value * ent_GECD.ExRate.Value; try {ent_GECD.AmountSGD = Convert.ToDecimal(amountSGD.ToString("#.##"));} catch{} ent_GECD.Remarks = (insertedItem.FindControl("txtComments") as TextBox).Text; ent_GECD.ChargeType = (insertedItem.FindControl("rcboChargeType") as RadComboBox).SelectedValue; ent_GECD.ChargeCode = (insertedItem.FindControl("rcboChargeCode") as RadComboBox).SelectedValue; list_GECD.Add(ent_GECD); this.rdGEDetails.DataSource = list_GECD; } else { e.Canceled = true; } } catch (Exception ex) { e.Canceled = true; this.setMessage(ex.ToString()); } } protected void rdGEDetails_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e) { if ((e.Item is GridEditFormItem) && e.Item.IsInEditMode) { GridEditFormItem gridEditFormItem = (GridEditFormItem)e.Item; RadComboBox rcboCategory = gridEditFormItem["Category"].FindControl("rcboCategory") as RadComboBox; rcboCategory.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT * from ExpenseType where formname='GEC'"); rcboCategory.DataTextField = "ExpDesc"; rcboCategory.DataValueField = "ExpCode"; rcboCategory.DataBind(); rcboCategory.Items.Insert(0, new RadComboBoxItem("-- SELECT --", "0")); rcboCategory.SelectedValue = CommonValidator.comboSelectedValue(DataBinder.Eval(e.Item.DataItem, "Category")); RadComboBox rcboCurrency = gridEditFormItem["Currency"].FindControl("rcboCurrency") as RadComboBox; rcboCurrency.DataSource = ser_ExcRate.Find(null, "Currency ASC"); rcboCurrency.DataTextField = "Currency"; rcboCurrency.DataValueField = "Currency"; rcboCurrency.DataBind(); rcboCurrency.Items.Insert(0, new RadComboBoxItem("-- SELECT --", "0")); rcboCurrency.SelectedValue = CommonValidator.comboSelectedValue(DataBinder.Eval(e.Item.DataItem, "Currency")); RadComboBox rcboProjectType = gridEditFormItem["ChargeType"].FindControl("rcboChargeType") as RadComboBox; rcboProjectType.Items.Insert(0, new RadComboBoxItem("-- SELECT --", "0")); rcboProjectType.Items.Insert(1, new RadComboBoxItem("Project No", "Project No")); rcboProjectType.Items.Insert(2, new RadComboBoxItem("Cost Center", "Cost Center")); rcboProjectType.Items.Insert(3, new RadComboBoxItem("Order", "Order")); rcboProjectType.Items.Insert(4, new RadComboBoxItem("Sales Order", "Sales Order")); rcboProjectType.SelectedValue = CommonValidator.comboSelectedValue(DataBinder.Eval(e.Item.DataItem, "ChargeType")); RadComboBox rcboChargeCode = gridEditFormItem["ChargeCode"].FindControl("rcboChargeCode") as RadComboBox; if (rcboProjectType.SelectedValue == "Project No") { rcboChargeCode.ClearSelection(); rcboChargeCode.Text = ""; rcboChargeCode.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT *,pspnr+' '+post1 as merge FROM Project where s_sperr <> 'x' or s_sperr=''"); rcboChargeCode.DataTextField = "merge"; rcboChargeCode.DataValueField = "pspnr"; rcboChargeCode.DataBind(); } else if (rcboProjectType.SelectedValue == "Cost Center") { rcboChargeCode.ClearSelection(); rcboChargeCode.Text = ""; rcboChargeCode.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT * ,kostl+' '+ktext_en as merge FROM CostCenter where kokrs='2610'"); rcboChargeCode.DataTextField = "merge"; rcboChargeCode.DataValueField = "kostl"; rcboChargeCode.DataBind(); } else if (rcboProjectType.SelectedValue == "Order") { rcboChargeCode.ClearSelection(); rcboChargeCode.Text = ""; rcboChargeCode.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT *,aufnr+' '+ktext as merge FROM [Order] where s_sperr <> 'x' or s_sperr='' order by aufnr"); rcboChargeCode.DataTextField = "merge"; rcboChargeCode.DataValueField = "aufnr"; rcboChargeCode.DataBind(); } else if (rcboProjectType.SelectedValue == "Sales Order") { rcboChargeCode.ClearSelection(); rcboChargeCode.Text = ""; rcboChargeCode.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT *,quot+' '+description as merge FROM SalesOrder where S_Lock <> 'x' or S_Lock='' "); rcboChargeCode.DataTextField = "merge"; rcboChargeCode.DataValueField = "quot"; rcboChargeCode.DataBind(); } else { //rcboChargeCode.DataSource = null; //rcboChargeCode.DataBind(); } rcboChargeCode.SelectedValue = CommonValidator.comboSelectedValue(DataBinder.Eval(e.Item.DataItem, "ChargeCode")); } } protected void btnSave_Click(object sender, EventArgs e) { string sqn=CommonFunctions.GetSeqNo(ConstantResource.ClaimType.CTGeneralExpenseClaim); } protected void rdGEDetails_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e) { this.rdGEDetails.DataSource = list_GECD; } protected void rdGEDetails_UpdateCommand(object source, Telerik.Web.UI.GridCommandEventArgs e) { } protected void setMessage(string message) { this.RadAjaxManager.Alert(message); } protected void rdGEDetails_ItemCreated(object sender, GridItemEventArgs e) { if (e.Item is GridEditableItem && e.Item.IsInEditMode) { //the dropdown list will be the first control in the Controls collection of the corresponding cell RadComboBox list = (e.Item as GridEditableItem)["Currency"].FindControl("rcboCurrency") as RadComboBox; //attach SelectedIndexChanged event for the combobox control list.AutoPostBack = true; list.CausesValidation = false; list.SelectedIndexChanged += new RadComboBoxSelectedIndexChangedEventHandler(list_SelectedIndexChanged); //the dropdown list will be the first control in the Controls collection of the corresponding cell RadComboBox projlist = (e.Item as GridEditableItem)["ChargeType"].FindControl("rcboChargeType") as RadComboBox; //attach SelectedIndexChanged event for the combobox control projlist.AutoPostBack = true; projlist.CausesValidation = false; projlist.SelectedIndexChanged += new RadComboBoxSelectedIndexChangedEventHandler(projlist_SelectedIndexChanged); } } void list_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e) { //first reference the edited grid item through the NamingContainer attribute GridEditableItem editedItem = (sender as RadComboBox).NamingContainer as GridEditableItem; //the dropdown list will be the first control in the Controls collection of the corresponding cell //for custom edit forms (WebUserControl/FormTemplate) you can find the column editor with the FindControl(controlId) method RadNumericTextBox txtExchangeRate = editedItem["ExRate"].FindControl("txtExRate") as RadNumericTextBox; qry_ExcRate.AppendEquals(ExcRateColumn.Currency, (editedItem["Currency"].FindControl("rcboCurrency") as RadComboBox).SelectedValue); txtExchangeRate.Text = ser_ExcRate.Find(qry_ExcRate.GetParameters())[0].Rate.HasValue ? ser_ExcRate.Find(qry_ExcRate.GetParameters())[0].Rate.ToString() : "0"; } void projlist_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e) { //first reference the edited grid item through the NamingContainer attribute GridEditableItem editedItem = (sender as RadComboBox).NamingContainer as GridEditableItem; RadComboBox ddList = editedItem["ChargeCode"].FindControl("rcboChargeCode") as RadComboBox; //the dropdown list will be the first control in the Controls collection of the corresponding cell //for custom edit forms (WebUserControl/FormTemplate) you can find the column editor with the FindControl(controlId) method string projecttype = (editedItem["ChargeType"].FindControl("rcboChargeType") as RadComboBox).SelectedValue.ToString(); if (projecttype == "Project No") { ddList.ClearSelection(); ddList.Text = ""; ddList.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT *,pspnr+' '+post1 as merge FROM Project where s_sperr <> 'x' or s_sperr=''"); ddList.DataTextField = "merge"; ddList.DataValueField = "pspnr"; ddList.DataBind(); } else if (projecttype == "Cost Center") { ddList.ClearSelection(); ddList.Text = ""; ddList.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT * ,kostl+' '+ktext_en as merge FROM CostCenter where kokrs='2610'"); ddList.DataTextField = "merge"; ddList.DataValueField = "kostl"; ddList.DataBind(); } else if (projecttype == "Order") { ddList.ClearSelection(); ddList.Text = ""; ddList.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT *,aufnr+' '+ktext as merge FROM [Order] where s_sperr <> 'x' or s_sperr='' order by aufnr"); ddList.DataTextField = "merge"; ddList.DataValueField = "aufnr"; ddList.DataBind(); } else if (projecttype == "Sales Order") { ddList.ClearSelection(); ddList.Text = ""; ddList.DataSource = DataRepository.Provider.ExecuteDataSet(System.Data.CommandType.Text, "SELECT *,quot+' '+description as merge FROM SalesOrder where S_Lock <> 'x' or S_Lock='' "); ddList.DataTextField = "merge"; ddList.DataValueField = "quot"; ddList.DataBind(); } else { } } }}