Forms Data Controls :: Sorting GridView Doesn't Work After Using A Select Statement Involving: FOR XML Path('')?
Feb 8, 2010
I have a GridView; one of the columns displays concatenated records from a tables. to extract the records that are going to be concatenated and put in this column, i have used: FOR XML path('') and it works just fine for displaying those records. the problem now is the whole gridview can not be sorted anymore and gives me a 404, document not found, error whenever i try to click the columns to sort. here is my select statement for my sql datasource select command:
SqlDataSource2.SelectCommand = "Select a1.*, keyword = substring( ( SELECT DISTINCT ', ' + keywordName FROM keywords JOIN key_mm_articles ON key_mm_articles.keywordID = keywords.keywordID WHERE key_mm_articles.articleID = a1.articleID FOR XML path(''), elements ),2,500) FROM articles a1 WHERE title LIKE '" & titles & "' Order By a1.articleID"
View 4 Replies
Similar Messages:
Jan 25, 2010
I have problem with gridview sorting. I am using online example to sort a grid view. see the link [URL] but I always got an error "The gridview fired sorting event without handle" on this statement "helper.ApplyGroupSort();"
<table width="100%">
<tr>
<td colspan=3><asp:Label id="category_name" Runat="server"
ForeColor="#ff0000" Font-Bold=true /></td>
</tr>
<tr>
<td colspan="3" align="center" width="100%">
<asp:GridView ID="dg_drawings"
runat="server" AutoGenerateColumns="False" EnableViewState="False" CellPadding="5" CellSpacing="0" Width="90%"
>
<Columns>
<asp:BoundField DataField="Description"
SortExpression="Description" />
<asp:BoundField DataField="sub_description"
SortExpression="sub_description" />
<asp:BoundField DataField="drawing_id" InsertVisible="False"
ReadOnly="True"
SortExpression="drawing_id" />
<asp:BoundField DataField="DRAWING_DESCRIPTION"
SortExpression="DRAWING_DESCRIPTION" />
<asp:BoundField DataField="DWG_URL" SortExpression="DWG_URL" />
</Columns>
</asp:GridView>
</td>
</tr>
</table>
Here is my C# code
public partial class listDrawings : System.Web.UI.Page
{
admin _admin = new admin();
private GridViewHelper helper;
int categoryid = 0;
protected void Page_Load(object sender, EventArgs e)
{
if (Convert.ToString(Session["logged_in"]) == "1")
{
ph_header.Controls.Add(LoadControl("../controls/builder_header.ascx"));
}
else
{
ph_header.Controls.Add(LoadControl("../controls/header.ascx"));
}
/*if (Convert.ToString(Session["details_hit"]) != "1")
{
_admin.add_page_hit("Standard Details");
Session.Add("details_hit", "1");
}
*/
string categoryidStr = Request.QueryString["categoryid"];
string category = Request.QueryString["category"];
//int categoryid = 0;
if (categoryidStr != null)
{
categoryid = Convert.ToInt32(categoryidStr);
}
category_name.Visible = true;
category_name.Text = category + " Drawing Details";
get_category_drawings(categoryid);
}
protected void get_category_drawings(int categoryid)
{
OracleConnection myConn;
OracleCommand myCmd;
if (categoryid == 3)
{
myConn = new OracleConnection(ConfigurationManager.AppSettings.Get("oracle"));
myCmd = new OracleCommand("DRAWINGS.GET_STAR_SUB_DRAWINGS");
myCmd.CommandType = CommandType.StoredProcedure;
myCmd.Connection = myConn;
myCmd.Parameters.Add(new OracleParameter("iCATEGORY", OracleDbType.Int32, ParameterDirection.Input)).Value = categoryid;
myCmd.Parameters.Add(new OracleParameter("iSUB_CATEGORY", OracleDbType.Int32, ParameterDirection.Input)).Value = 0;
myCmd.Parameters.Add(new OracleParameter("oDRAWINGS", OracleDbType.RefCursor, ParameterDirection.Output));
}
else
{
myConn = new OracleConnection(ConfigurationManager.AppSettings.Get("oracle"));
myCmd = new OracleCommand("DRAWINGS.GET_STAR_DRAWINGS");
myCmd.CommandType = CommandType.StoredProcedure;
myCmd.Connection = myConn;
myCmd.Parameters.Add(new OracleParameter("iCATEGORY", OracleDbType.Int32, ParameterDirection.Input)).Value = categoryid;
myCmd.Parameters.Add(new OracleParameter("oDRAWINGS", OracleDbType.RefCursor, ParameterDirection.Output));
}
try
{
myConn.Open();
this.dg_drawings.DataSource = myCmd.ExecuteReader();
dg_drawings.DataBind();
helper = new GridViewHelper(this.dg_drawings);
string[] cols = new string[2];
cols[0] = "Description";
cols[1] = "sub_description";
helper.RegisterGroup(cols, true, true);
helper.ApplyGroupSort();
}
catch (OracleException ex)
{
if (categoryid == 3)
{
_admin.send_email("resources/listDrawings.aspx", "DRAWINGS.GET_STAR_SUB_DRAWINGS", ex.Message);
}
else
_admin.send_email("resources/listDrawings.aspx", "DRAWINGS.GET_STAR_DRAWINGS", ex.Message);
Response.Redirect("~/error.aspx");
}
finally
{
myCmd.Dispose();
myConn.Close();
myConn.Dispose();
}
}
}
View 5 Replies
Jun 16, 2010
Here is the problem I have this code and i need to write logic to it, but i need to use error handling incase any of the varibles is null:
[Code]....
View 7 Replies
Jan 7, 2011
I have a gridview that displays pending cases. I have enabled paging and sorting on any column. By default it loads data sorted by CreatedDate. When I sort it on any page by company name it does the sorting, but when I move to the next page, it looses sorting by CompanyName. How do I hold the sorting across all the pages on the grid?
[Code]....
View 4 Replies
Jun 9, 2010
[Code]....
I have tryed this sorting code here in first post http://forums.asp.net/t/956540.aspx but it doesnt work. any tips?
View 2 Replies
Jan 6, 2011
I have walked through other posts with a similar problem but I am very stuck.I am normally use Php/MySQL and am new to ASP (actually only this new client uses it and I'm trying to help them). I am trying to filter a table to only show the last 90 days of records. I found what I thought was the easy solution shown below:
FilterExpression="columnname < GETDATE() - 90"
Or, if you can modify your SQL SELECT statement
SELECT col1, col2, col3 FROM tablename WHERE col3 < GETDATE() -90
However when I added it I get this error:Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately. Parser Error Message: Type 'System.Web.UI.WebControls.BoundField' does not have a public property named 'FilterExpression'.I think I have added the code to the wrong place or have another file to edit but I have no clue honestly. The best I can do is show you the file I have the code to in hopes someone may know what this is. Here is the code from the file I added the solution to (my edit is bold/italics/underlined towards the bottom): And shouldn't I have some select statements somewhere like I normally do with MySQL?
<%@ Page Language="C#" MasterPageFile="~/SecureRck.master" AutoEventWireup="true"
Codebehind="Default.aspx.cs" Inherits="SecureRckWeb.Reps.Default" Title="Reps" %>
<%@ Register Assembly="schedule2" Namespace="rw" TagPrefix="cc1" %>
[code]...
View 9 Replies
Mar 31, 2010
the datatype in my database is Varchar, so that my gridview Sorting Function doesn't sort correct in sequence 1,2 3, 3 but 1,10,100, how can I sort in sequence 1,2,3,4 but no changing the datatype in database?
View 2 Replies
Feb 14, 2011
the select statement for my gridview contains a sub select statement..that should allow users to see how many queries are associated with a particular record..how can I get the queries column to display in my grid. As it is a count and not directly bound to any field
SELECT
WardID,
ScriptID,
DateAdded,
(SELECT COUNT(scriptID) FROM query WHERE scriptID = main.scriptID) AS queries.......
View 2 Replies
Jan 26, 2010
This query does not return any record
[code]....
View 3 Replies
Sep 17, 2010
I wrote a statement such that
cmd ="select [title] from products where sku='% "3.5 caddy" %'"
this statement wont return anyfin where there is products with titles startin with 3.5 or ending with caddy or containing 3.5 caddy but just not together for example there is this title "3.5" IDE to USB 2.0 Aluminum External Silver HDD Enclosure Caddy" and that search of 3.5 caddy wont pick this item up as 3.5 is at the start and caddy is at the end.
View 1 Replies
Apr 14, 2010
I have a gridview connected to my objectdatasource, i wrote a class for the database queries.Now when i do an update of record i get the id form the grid, when i click on delete i don't get the id, its 0.Is there an option to set the id? i can't find it in the gridview.
View 9 Replies
May 18, 2010
I have store procedure and I want to when I execute this procedure , Select field list in my gridview. But store procedure dont show every field(it doesnt show relation table.?)
This is my Store Procedure
ALTER PROCEDURE [dbo].[rps_CarePlan3]
@PatientName nvarchar = NULL,
@PatientTypeId int = NULL,
@StartDate datetime = NULL,
@EndDate datetime = NULL,
[Code]....
I see only BakimDestekDto(cause it is part of TblBakimDestek but other field isnt part of TblBakimDestek it is relation field). Why dont I see relation table field? Maybe public IList<TblBakimDestek> GetByStoreProcedure(string startDate) I use inside IList TblBakimDestek?
View 9 Replies
Nov 23, 2010
Can't tell what is wrong here . It worked fine and I didn't did anything special in code-behind
I don't see any error just the same data in gridview
[Code]....
View 7 Replies
Feb 26, 2010
In my master page, I defined the css which loads a background image: img_mnusep.gif
<style type="text/css">
.ListHead2
{
background-color: #E0E3E8;
height: 20px;
color: #000000;
font-family: Tahoma, Arial, Verdana, Tahoma, Arial;
font-size: 8.5pt;
font-weight: normal;
[Code].....
View 2 Replies
Aug 24, 2010
Im using File Upload Control in every row of a GridView.... Like tis
Name
UploadFile
textBox FileUpload
TextBox FileUpload
.
.
Submit
On Submit im first uploading all files present in the grid and then saving other values in database....No Problem when uploading Small Set of filesIf i browse more than 10(approx) files(i.e 10 files in 10 rows) and Submit... Internet Explorer-Page Cannot Be displayed Error occurs but no problem when uploading < 10(approx) files....
View 3 Replies
Feb 26, 2010
I'm trying to set paging on my gridview but when i click on a page it doesn't work. It return a blank page. Here's my code:
[Code]....
Behind code:
[Code]....
View 9 Replies
Nov 7, 2010
I am tring to set the selected value of a dropdown inside a gridview like this:
[Code]....
And I get error:
[Code]....
View 4 Replies
Jul 18, 2010
Moderators Note: THIS ISSUE IS BIG FOR ME AND EVEN IF POSSIBLE, GET THE REPLY FROM THE DESIGNER OF GRIDVIEW. I have been looking for him for long. I am really fed up with reviewing a good lot of web pages on how we can possibly customize the gridview to enable sorting and paging. So many sites have listed out a lot of information and so many guidances. But the problem is that one works out fine and the other is a burden. I really feel bad about being given the job of customizing this kind of a gridview which has no user friendly approach to it. Also, this control is rendered without the pager links inside the <tfoot> tag. I have tried the Pear Pager in php. It is that good and easy to use and compared to that, the gridview in asp.net is the worst ever control i have ever tried so far.
1. i can use the images to indicate the sorting direction
2. I can have the custom pager like
[code]
<<Previous 1 2 3 .. 7 Next >>.
[/code]
When i click the next when i am viewing the page at 3 , the pager links should change as
[code]
<<Previous 2 3 4 .. 7 Next >>
[/code]
Kindly look into this type of requirement and firstly tell me whether this is possible with the gridview control. I would like this request even to be escalated to the designers of the gridview control also, so that Microsoft comes out with a reply THAT WORKS and not the kind of stuff like surfing through a lot of links and pages and finally wasting a lot of days precious time and still breaking the head with this useless control. I have spent a lot of time in searching for a perfect way. Not writing a code that is non-standard. I am really serious b'cos I have spent weeks in customizing this control. If I dont get a solid reply atleast now, I am going to generate all the output by HTML content by custom coding.
View 7 Replies
May 8, 2010
I have written a bunch of T-sql code to my accessdatasource selectcommand. But I am having problem with where statement ! here is my code;
SELECT OWGBP, RTGBP, OWEUR, RTEUR, OWYTL, RTYTL, (SELECT Resort FROM Resort RF WHERE (View = True) AND (RF.ResID = TypePrices.ResID)) As Resortİsmi, (SELECT Destination + ' - ' + CodeOfDest FROM Destination TD WHERE (View = True) AND (TD.DestID = @DestID))
As DestIsmi, (SELECT TypeOFTrf FROM TRFTypes WHERE (TRFTypes.TRFTypeID = TypePrices.TypeOfTRF)) As TrasferTürü, @QADT As ADTSayi, @QCHD As CHDSayi, ([CHDPerCent]/100) As PerCHDCent, (ADTSayi ++ CHDSayi) As Deger, ResID FROM TypePrices WHERE ([View] = True)
And (ResID = @QRes) AND (Deger >= [MinReq]) AND (Deger <= [MaxCap])
And here is my select parameters;
[Code]....
It is a bit long ! I am having problem on last two where declaration. here ;
(Deger >= [MinReq]) AND (Deger <= [MaxCap])
those MinReq and MaxCap columns are int32 columns. But when I run the page it doesnt work properly ! It display the valuse it shouldn't be ! weird thing is, when I display this 'deger', I get the value properly. with this;
Değer : <b><asp:Label ID="Label10" runat="server" Text='<%# Eval("Deger")%>'/></b>
for example I get 8 with this but it dosnt work on where statement.
View 13 Replies
May 27, 2010
I have a gridview that shows when something is check out. I would like to only show results from todays date and forward. I have done this in Expression Web but when I tried to use the same code in Visual Studios it doesn't work.
asp:AccessDataSource
ID="AccessDataSource1"
runat="server"
DataFile="~/browser.mdb"
DeleteCommand="DELETE FROM [ConferenceRoomCalendar] WHERE [ID] = ?"
InsertCommand="INSERT INTO [ConferenceRoomCalendar] ([ID], [ConferenceRoomName], [DateNeeded], [StartTime], [FinishTime], [RequestedBy], [Purpose]) VALUES
(?, ?, ?, ?, ?, ?, ?)" SelectCommand="SELECT * FROM [ConferenceRoomCalendar] WHERE ([DateNeeded] >= Date())"
UpdateCommand="UPDATE [ConferenceRoomCalendar] SET [ConferenceRoomName] = ?, [DateNeeded] = ?, [StartTime] = ?, [FinishTime] = ?, [RequestedBy] = ?, [Purpose]
= ? WHERE [ID] = ?">
<SelectParameters>
<asp:QueryStringParameter
Name="DateNeeded"
QueryStringField="Date()"
Type="DateTime"
/>
</SelectParameters>
<DeleteParameters>
<asp:Parameter
Name="ID"
Type="Int32"
/>
</DeleteParameters>
<UpdateParameters>
<asp:Parameter
Name="ConferenceRoomName"
Type="String"
/>
<asp:Parameter
Name="DateNeeded"
Type="DateTime"
/>
<asp:Parameter
Name="StartTime"
Type="DateTime"
/>
<asp:Parameter
Name="FinishTime"
Type="DateTime"
/>
<asp:Parameter
Name="RequestedBy"
Type="String"
/>
<asp:Parameter
Name="Purpose"
Type="String"
/>
<asp:Parameter
Name="ID"
Type="Int32"
/>
</UpdateParameters>
<InsertParameters>
<asp:Parameter
Name="ID"
Type="Int32"
/>
<asp:Parameter
Name="ConferenceRoomName"
Type="String"
/>
<asp:Parameter
Name="DateNeeded"
Type="DateTime"
/>
<asp:Parameter
Name="StartTime"
Type="DateTime"
/>
<asp:Parameter
Name="FinishTime"
Type="DateTime"
/>
<asp:Parameter
Name="RequestedBy"
Type="String"
/>
<asp:Parameter
Name="Purpose"
Type="String"
/>
</InsertParameters>
</asp:AccessDataSource>
In expression web I changed this line from this WHERE [ID] = ?"> to this WHERE [ID] = date()"> and I get the right results.
View 3 Replies
Apr 2, 2011
how to fix my sql syntax so my code works again, i made a few manual entrys for now to see if I can get them to be displayed: The FriendUserID relates to another UserID in the usertable who has obviously a different picture and information but I dont know how to display to concurrent WallPosting's from different users atm.
my code creates a dynamic div gives the div an ID = to the userid and input the wallpost messgaes named wallpostings, it takes the information stored about the userid and applys the image related to that userid, is there any way this can be changed with sql? or have i went down a one way alley?
public partial class UserProfileWall : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (Page.IsPostBack)
{
//It is a postback so check if it was by div click (NOT WORKING because the javascript isnt posting back)
string target = Request["__EVENTTARGET"];
if (target == "DivClicked")
{
string id = Request["__EVENTARGUMENT"];
//Call my delete function passing record id
using (OdbcConnection cn = new OdbcConnection("Driver={MySQL ODBC 3.51 Driver}; Server=localhost; Database=gymwebsite2; User=root; Password=commando;"))
{
cn.Open();
using (OdbcCommand cmd = new OdbcCommand("DELETE FROM WallPosting WHERE idWallPosting="+id, cn))
{
cmd.ExecuteNonQuery();
}..............
View 1 Replies
Mar 24, 2010
I have a gridview and a drop down filter on the same page. The dropdown code :
protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownList2.SelectedValue == "LineManager")
{
ApproversListDB.FilterExpression = "Approver = '{0}'";
ApproversListDB.FilterParameters.Add("@Approver", strAccount);
}
else if (DropDownList2.SelectedValue == "AssignmentManager")
{
ApproversListDB.FilterExpression = "AssignmentApprover = '{0}'";
ApproversListDB.FilterParameters.Add("@AssignmentApprover", strAccount);
//ApproversListDB.FilterExpression = "AssignmentApprover=" + userid;
}
}
This filter / dropdown works fine....apart from if anyone sorts or pages the grid in which case it looses the filter expression. I have looked at a few examples on the web and cant get my head round it (ie
[URL]
PS I connect my grid to the following datasource using the GUI - ie nothing databinding in the code behind apart from page refresh
<asp:SqlDataSource ID="ApproversListDB" runat="server"
ConnectionString="<%$ ConnectionStrings:PDRConnect %>"
SelectCommand="p_PDRsForMyApprovalTable"
ProviderName="<%$ ConnectionStrings:PDRConnect.ProviderName %>"
SelectCommandType="StoredProcedure">
<SelectParameters>
<custom:UserNameParameter Name="userName" />
</SelectParameters>
</asp:SqlDataSource>
View 3 Replies
Mar 1, 2011
im creating advance search for my project and end up with the problem of select statement format for 2category.
here is example:
i have advancesearch that has checkbox wherein you can select multiple checkbox. example is selecting category, for example ihave 5 category as shown below.
Category
News Sports Opinion Editorial Literary i did tried someformats for my select statements to make it work for 2 or more category, but i just cant get the right format of the select statement.
example if i select the following.
if selected is category 'Sports'
it wil work with this: " 'Select * MyTable1 where [Category Title]='Sports' "
if selected are category 'Sports' and 'News'. what must be the format for my selectstatement for 2 or more category in the same fieldname? should it work with this?
" 'Select * MyTable1 where [Category Title]='Sports','News'" no, how could i make it work. what must be the right format?
View 2 Replies
May 7, 2010
I'd like to print out the select statement for a SqlDataSource to see exactly what is being issued to the database. I added an OnSelecting event and the code shown below. The problem is that it's printing the variables in the select statement rather than the values assigned to those variables. How do I print out the "resolved" output so that I can see the values being passed to the database.
[code].....
View 2 Replies
Jun 15, 2010
The code below returns a dataset that I use in a Gridview. How can I modify my select statement to format the DateEntered as a Date in gridview with no time and TimeEntered as Time in gridview without date info?
[Code]....
View 3 Replies