Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
CancelSelectOnNullParameter non funziona!!!
giovedì 13 dicembre 2007 - 08.51
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
dibiax
Profilo
| Newbie
46
messaggi | Data Invio:
gio 13 dic 2007 - 08:51
ciao a tutti
ho un problema con sqldatadatasource e gridview:
praticamente sqldatadatasource deve caricare una tabella e questo è stato fatto e funziona regolarmente.
Il problema è che in base al valore di alcuni controlli (textbox listbox ect) si deve applicare dinamicamente un filtro a questa gridview.
Questi controlli possono anche non essere valorizzati e in questo caso non vanno considerati:
nell'autocomposizione "configurazione origini dati" provo a impostare i parametri usando il wizard, funziona a patto che tutti i parametri inseriti siano valorizzati.
Se imposto CancelSelectOnNullParameter a false non funziona.
come posso fare?
grazie anticipatamente!
ciao ciao dibiax
amstrad
Profilo
| Junior Member
115
messaggi | Data Invio:
gio 13 dic 2007 - 09:34
non sono sicuro di aver capito bene il problema, potresti postare il codice del datasource per cortesia
dibiax
Profilo
| Newbie
46
messaggi | Data Invio:
gio 13 dic 2007 - 09:48
ecco la pagine.. c'è un po' di cosice in più...
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
GridView1.Visible = True
End Sub
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim i As Integer
SqlDataSource1.DeleteCommand = "delete from ScartiStampalMAS"
SqlDataSource1.DeleteCommandType = SqlDataSourceCommandType.Text
SqlDataSource1.Delete()
Dim myConnection As Data.SqlClient.SqlConnection
Dim mySqlDataAdapter As Data.SqlClient.SqlDataAdapter
myConnection = New Data.SqlClient.SqlConnection("Data Source=EDP2000\SQLEXPRESS;Initial Catalog=scarti;Integrated Security=True")
mySqlDataAdapter = New Data.SqlClient.SqlDataAdapter("Select * from ScartiSTAMPAlMAS", myConnection)
Dim myDataSet As Data.DataSet = New Data.DataSet()
Dim myDataRow As Data.DataRow
Dim myDataRowsCommandBuilder As Data.SqlClient.SqlCommandBuilder = New Data.SqlClient.SqlCommandBuilder(mySqlDataAdapter)
For i = 0 To GridView1.Rows.Count - 1
mySqlDataAdapter.Fill(myDataSet, "ScartiStampalMAS")
myDataRow = myDataSet.Tables("ScartiStampaLMAS").NewRow()
myDataRow("ind") = CInt(GridView1.Rows.Item(i).Cells.Item(0).Text)
myDataRow("repa") = GridView1.Rows.Item(i).Cells.Item(1).Text
myDataRow("data") = GridView1.Rows.Item(i).Cells.Item(2).Text
myDataRow("turno") = GridView1.Rows.Item(i).Cells.Item(3).Text
myDataRow("OPE") = GridView1.Rows.Item(i).Cells.Item(4).Text
myDataRow("lotto") = GridView1.Rows.Item(i).Cells.Item(5).Text
myDataRow("fase") = GridView1.Rows.Item(i).Cells.Item(6).Text
myDataRow("articolo") = GridView1.Rows.Item(i).Cells.Item(7).Text
myDataRow("des articolo") = GridView1.Rows.Item(i).Cells.Item(8).Text
myDataRow("pzzlav") = GridView1.Rows.Item(i).Cells.Item(9).Text
myDataRow("pzzsel") = GridView1.Rows.Item(i).Cells.Item(10).Text
myDataRow("pzzok") = GridView1.Rows.Item(i).Cells.Item(11).Text
myDataRow("avvio") = GridView1.Rows.Item(i).Cells.Item(12).Text
myDataRow("materiale") = GridView1.Rows.Item(i).Cells.Item(13).Text
myDataRow("lavorazione") = GridView1.Rows.Item(i).Cells.Item(14).Text
myDataRow("vernic-lavorazione") = GridView1.Rows.Item(i).Cells.Item(15).Text
myDataRow("serigraf-stampa") = GridView1.Rows.Item(i).Cells.Item(16).Text
myDataRow("imbosstrancia") = GridView1.Rows.Item(i).Cells.Item(17).Text
myDataRow("trancia") = GridView1.Rows.Item(i).Cells.Item(18).Text
myDataRow("piegatura") = GridView1.Rows.Item(i).Cells.Item(19).Text
myDataRow("graffi-macchie") = GridView1.Rows.Item(i).Cells.Item(20).Text
myDataRow("stampaggio") = GridView1.Rows.Item(i).Cells.Item(21).Text
myDataRow("emblema") = GridView1.Rows.Item(i).Cells.Item(22).Text
myDataRow("fondello") = GridView1.Rows.Item(i).Cells.Item(23).Text
myDataRow("fregio-sigla finita") = GridView1.Rows.Item(i).Cells.Item(24).Text
myDataRow("scarto-fornitore") = GridView1.Rows.Item(i).Cells.Item(25).Text
myDataRow("ripresa-tornitore") = GridView1.Rows.Item(i).Cells.Item(26).Text
myDataRow("ricambi") = GridView1.Rows.Item(i).Cells.Item(27).Text
myDataRow("TOTSCARTO") = GridView1.Rows.Item(i).Cells.Item(28).Text
myDataRow("PERCSCARTO") = GridView1.Rows.Item(i).Cells.Item(29).Text
myDataRow("obiettivoSCARTO") = GridView1.Rows.Item(i).Cells.Item(30).Text
myDataRow("percpezziok") = GridView1.Rows.Item(i).Cells.Item(31).Text
myDataRow("percricambisulav") = GridView1.Rows.Item(i).Cells.Item(32).Text
myDataRow("TLAVORE") = GridView1.Rows.Item(i).Cells.Item(33).Text
myDataRow("TLAVMIN") = GridView1.Rows.Item(i).Cells.Item(34).Text
myDataRow("SETORE") = GridView1.Rows.Item(i).Cells.Item(35).Text
myDataRow("SETMIN") = GridView1.Rows.Item(i).Cells.Item(36).Text
myDataRow("fermoMore") = GridView1.Rows.Item(i).Cells.Item(37).Text
myDataRow("FermoMmin") = GridView1.Rows.Item(i).Cells.Item(38).Text
myDataRow("ProdpzzOra") = CDbl(GridView1.Rows.Item(i).Cells.Item(39).Text)
myDataRow("ObiettpzzOra") = Trim(GridView1.Rows.Item(i).Cells.Item(40).Text)
myDataRow("note") = GridView1.Rows.Item(i).Cells.Item(41).Text
myDataRow("MACCHINA") = GridView1.Rows.Item(i).Cells.Item(42).Text
myDataRow("cturno") = GridView1.Rows.Item(i).Cells.Item(43).Text
myDataSet.Tables("ScartiStampaLMAS").Rows.Add(myDataRow)
mySqlDataAdapter.Update(myDataSet, "ScartiStampaLMAS")
GridView1.DataBind()
Next i
End Sub
</script>
<html xmlns="
http://www.w3.org/1999/xhtml"
>
<head runat="server">
<title>Pagina senza titolo</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<br />
<table border="1" style="width: 700px">
<tr>
<td>
</td>
<td style="text-align: center">
MENU' STAMPE</td>
<td style="width: 106px">
</td>
</tr>
</table>
<br />
<table border="1" style="width: 539px">
<tr>
<td style="width: 162px">
codice articolo</td>
<td>
<asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True"></asp:TextBox>
<br />
<asp:ListBox ID="ListBox1" runat="server" DataSourceID="SqlDataSource2" DataTextField="articolo"
DataValueField="articolo" Height="21px" Width="252px" Rows="1">
</asp:ListBox><asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:articoli %>"
SelectCommand="SELECT [articolo] FROM [articoli] WHERE ([codice] = @codice)">
<SelectParameters>
<asp:ControlParameter ControlID="TextBox1" Name="codice" PropertyName="Text" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
</td>
<td>
</td>
</tr>
<tr>
<td style="width: 162px">
data inizio</td>
<td>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox></td>
<td>
</td>
</tr>
<tr>
<td style="width: 162px">
data fine</td>
<td>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox></td>
<td>
<asp:Button ID="Button1" runat="server" Text="CERCA" OnClick="Button1_Click" Width="81px" /></td>
</tr>
<tr>
<td style="width: 162px">
repa</td>
<td>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox></td>
<td>
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="GENERA" /></td>
</tr>
</table>
<br />
<br />
<br />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ind" DataSourceID="SqlDataSource1" Visible="False">
<Columns>
<asp:BoundField DataField="ind" HeaderText="ind" ReadOnly="True" SortExpression="ind" />
<asp:BoundField DataField="repa" HeaderText="repa" SortExpression="repa" />
<asp:BoundField DataField="data" HeaderText="data" SortExpression="data" />
<asp:BoundField DataField="turno" HeaderText="turno" SortExpression="turno" />
<asp:BoundField DataField="ope" HeaderText="ope" SortExpression="ope" />
<asp:BoundField DataField="lotto" HeaderText="lotto" SortExpression="lotto" />
<asp:BoundField DataField="fase" HeaderText="fase" SortExpression="fase" />
<asp:BoundField DataField="articolo" HeaderText="articolo" SortExpression="articolo" />
<asp:BoundField DataField="des articolo" HeaderText="des articolo" SortExpression="des articolo" />
<asp:BoundField DataField="pzzlav" HeaderText="pzzlav" SortExpression="pzzlav" />
<asp:BoundField DataField="pzzsel" HeaderText="pzzsel" SortExpression="pzzsel" />
<asp:BoundField DataField="pzzok" HeaderText="pzzok" SortExpression="pzzok" />
<asp:BoundField DataField="avvio" HeaderText="avvio" SortExpression="avvio" />
<asp:BoundField DataField="materiale" HeaderText="materiale" SortExpression="materiale" />
<asp:BoundField DataField="lavorazione" HeaderText="lavorazione" SortExpression="lavorazione" />
<asp:BoundField DataField="vernic-lavorazione" HeaderText="vernic-lavorazione" SortExpression="vernic-lavorazione" />
<asp:BoundField DataField="serigraf-stampa" HeaderText="serigraf-stampa" SortExpression="serigraf-stampa" />
<asp:BoundField DataField="imbosstrancia" HeaderText="imbosstrancia" SortExpression="imbosstrancia" />
<asp:BoundField DataField="trancia" HeaderText="trancia" SortExpression="trancia" />
<asp:BoundField DataField="piegatura" HeaderText="piegatura" SortExpression="piegatura" />
<asp:BoundField DataField="graffi-macchie" HeaderText="graffi-macchie" SortExpression="graffi-macchie" />
<asp:BoundField DataField="stampaggio" HeaderText="stampaggio" SortExpression="stampaggio" />
<asp:BoundField DataField="emblema" HeaderText="emblema" SortExpression="emblema" />
<asp:BoundField DataField="Fondello" HeaderText="Fondello" SortExpression="Fondello" />
<asp:BoundField DataField="fregio-sigla finita" HeaderText="fregio-sigla finita"
SortExpression="fregio-sigla finita" />
<asp:BoundField DataField="scarto-fornitore" HeaderText="scarto-fornitore" SortExpression="scarto-fornitore" />
<asp:BoundField DataField="ripresa-tornitore" HeaderText="ripresa-tornitore" SortExpression="ripresa-tornitore" />
<asp:BoundField DataField="ricambi" HeaderText="ricambi" SortExpression="ricambi" />
<asp:BoundField DataField="totscarto" HeaderText="totscarto" SortExpression="totscarto" />
<asp:BoundField DataField="percscarto" HeaderText="percscarto" SortExpression="percscarto" />
<asp:BoundField DataField="obiettivoscarto" HeaderText="obiettivoscarto" SortExpression="obiettivoscarto" />
<asp:BoundField DataField="percpezziok" HeaderText="percpezziok" SortExpression="percpezziok" />
<asp:BoundField DataField="percricambisulav" HeaderText="percricambisulav" SortExpression="percricambisulav" />
<asp:BoundField DataField="TlavOre" HeaderText="TlavOre" SortExpression="TlavOre" />
<asp:BoundField DataField="TlavMin" HeaderText="TlavMin" SortExpression="TlavMin" />
<asp:BoundField DataField="SetOre" HeaderText="SetOre" SortExpression="SetOre" />
<asp:BoundField DataField="SetMin" HeaderText="SetMin" SortExpression="SetMin" />
<asp:BoundField DataField="FermoMOre" HeaderText="FermoMOre" SortExpression="FermoMOre" />
<asp:BoundField DataField="FermoMMin" HeaderText="FermoMMin" SortExpression="FermoMMin" />
<asp:BoundField DataField="prodpzzora" HeaderText="prodpzzora" SortExpression="prodpzzora" />
<asp:BoundField DataField="obiettPzzOra" HeaderText="obiettPzzOra" SortExpression="obiettPzzOra" />
<asp:BoundField DataField="Note" HeaderText="Note" SortExpression="Note" />
<asp:BoundField DataField="ordine" HeaderText="ordine" SortExpression="ordine" />
<asp:BoundField DataField="macchina" HeaderText="macchina" SortExpression="macchina" />
<asp:BoundField DataField="cturno" HeaderText="cturno" SortExpression="cturno" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:STAMPE %>"
EnableCaching="True" SelectCommand="SELECT * FROM [ScartiRepa] WHERE (([articolo] = @articolo) AND ([data] >= @data) AND ([repa] = @repa) AND ([data] <= @data2))" CancelSelectOnNullParameter="False">
<SelectParameters>
<asp:ControlParameter ControlID="TextBox1" Name="articolo" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox2" Name="data" PropertyName="Text" Type="DateTime" />
<asp:ControlParameter ControlID="TextBox3" Name="repa" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox4" Name="data2" PropertyName="Text" Type="DateTime" />
</SelectParameters>
</asp:SqlDataSource>
</div>
</form>
</body>
</html>
ho bisogno che i parametri articolo, data , data2 e repa siano opzionali, la query deve girare anche senza che uno di questi parametri sia valorizzato.. da documentazione sembrebbe bastare mettere CancelSelectOnNullParameter a false.. ma non funziona!
amstrad
Profilo
| Junior Member
115
messaggi | Data Invio:
gio 13 dic 2007 - 10:32
un primo appunto, io sono abbastanza nuovo del forum ma credo che quando posti del codice devi formattarlo con formatta codice altrimenti fai un post lunghissimo...
poi veniamo al dunque
ho fatto delle prove perchè oggi non ho molto da fare
effettivamente non mi ha funzionato finche non ho modificato la sintassi della query
SelectCommand="SELECT au_id, au_lname, au_fname, state FROM authors WHERE state = IsNull(@state, state)"
così funziona.
SelectCommand="SELECT au_id, au_lname, au_fname, state FROM authors WHERE state = @state"
così non mi ritorna nulla nel caso non metta i paramentri, prova a modificare la tua query in questo modo anche se non sò se è la giusta soluzione. Comunque con me ha funzionato
fammi sapere
dibiax
Profilo
| Newbie
46
messaggi | Data Invio:
gio 13 dic 2007 - 10:57
scusa per il codice... si vede che è il primo post!
Grazie infinite.. come mi hai consigliato funziona benissimo!!
Ancora grazie ciao ciao
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !