49 messaggi dal 15 marzo 2006
Fatto....adesso ricevo l'errore:


Compiler Error Message: BC30456: 'Parameter' is not a member of 'DreamweaverCtrls.DataSet'.

Source Error:

 

Line 64:     <script runat="server">
Line 65:      Sub Popola_datagrid(Src As Object, E As EventArgs)
Line 66:           dsInterventi.Parameter("IntDat") = me.Calendar1.selecteddate 
Line 67:             Cal_int_datagrid.Datasource = dsInterventi.DefaultView
Line 68:       Cal_int_datagrid.Databind()
 




Mi sa che dovrò rifare il dataset...
102 messaggi dal 11 maggio 2004
Prova con:

Line 66: dsInterventi.Parameters("IntDat") = me.Calendar1.selecteddate

Ciao
49 messaggi dal 15 marzo 2006
Già meglio, anche se adesso dà un errore di conversione:

Exception Details: System.FormatException: Input string was not in a correct format.

Source Error: 


Line 64:     <script runat="server">
Line 65:      Sub Popola_datagrid(Src As Object, E As EventArgs)
Line 66:           dsInterventi.Parameters("IntDat") = me.Calendar1.selecteddate 
Line 67:          Cal_int_datagrid.Datasource = dsInterventi.DefaultView
Line 68:       Cal_int_datagrid.Databind()
 

Source File: \cal_interventi.aspx    Line: 66 

Stack Trace: 


[FormatException: Input string was not in a correct format.]
   Microsoft.VisualBasic.CompilerServices.DoubleType.Parse(String Value, NumberFormatInfo NumberFormat) +195
   Microsoft.VisualBasic.CompilerServices.IntegerType.FromString(String Value) +97

[InvalidCastException: Cast from string "IntDat" to type 'Integer' is not valid.]
   Microsoft.VisualBasic.CompilerServices.IntegerType.FromString(String Value) +212


Eppure IntDat è di tipo data....
102 messaggi dal 11 maggio 2004
...

mmm.. non so che dire
magari verifica i tipi delle colonne del dataset e dei parametri
..
che non sia scappata qche svista ??

Fammi sapere.

Ciao.
102 messaggi dal 11 maggio 2004

l'errore è qui:
<Parameter Name="IntDat" Value='<%# Me.Calendar1.SelectedDate %>'

Il nome del parametro deve iniziare con "@"!!!

Prova così:

<Parameter Name="@IntDat" Value='<%# Me.Calendar1.SelectedDate %>'

e nello script server:

Sub Popola_datagrid(Src As Object, E As EventArgs)
...
/***********
dsInterventi.Parameter("@IntDat") = me.Calendar1.selecteddate
***********/
Cal_int_datagrid.Datasource = dsInterventi.DefaultView
Cal_int_datagrid.Databind()
...

Se non funzia manco così, significa che alla collection dsInterventi.Parameter devi passare l'indice (da qui il cast in integer!!!) posizionale del parametro @intDat, che in questo caso se non erro è 1.

Fammi sapere.

Ciao Antonello.
Modificato da pynthu il 07 aprile 2006 10.57 -
49 messaggi dal 15 marzo 2006
Dunque, ho fatto un po' di prove...in effetti inserendo il parametro come @IntDat ho ancora errore di conversione, infatti Parameters richiede un valore di index, che giustamente come hai detto tu è 1 (se ometto il parametro dalla query, il debugger mi richiede il valore di index del parametro, quindi è la strada giusta)

ora ho fatto così:


<Parameters>
  <Parameter Name="@IntDat" Type="Date" />
  <Parameter  Name="IntMov"  Value='<%# "2" %>'  Type="SmallInt" /> 
</Parameters>



e nello script:

    <script runat="server">
     Sub Popola_datagrid(Src As Object, E As EventArgs)
          dsInterventi.Parameters(1) = me.Calendar1.SelectedDate 
         Cal_int_datagrid.Datasource = dsInterventi.DefaultView
      Cal_int_datagrid.Databind()
   End Sub
  </script>




Ora non dà più errori di compilazione ma....il datagrid rimane vuoto (e lo è anche il recordset perchè il recordcount è a 0)

Non so che dire....se non che mi spiace farti perdere tutto sto tempo per niente quando potresti dirmi di andare a studiare invece di romperti le scatole....

In ogni caso grazie per il prezioso aiuto...
Modificato da R1((ky il 07 aprile 2006 11.45 -
102 messaggi dal 11 maggio 2004
Ciao
don't worry, per me è un piacere!!! e non è assolutamente tempo perso, ma motivo di studio e "confronto con la tecnologica".

Ora, considerando la query:

CommandText='<%# "SELECT TblInt.IntKey, TblCol.ColNom, TblDep.DepCom, TblInt.IntDat, TblInt.IntEse, TblClf.ClfRso, TblInt.IntFat, TblArt.ArtDeb, TblIntArt.IntArtQta, TblArt_1.ArtDeb, TblIntArt.IntArtIni, TblIntArt.IntArtFin FROM (TblDep INNER JOIN (TblClf INNER JOIN TblInt ON TblClf.ClfKey = TblInt.ClfKey) ON TblDep.DepKey = TblInt.DepKey) LEFT JOIN (((TblIntArt LEFT JOIN TblCol ON TblIntArt.ColKey = TblCol.ColKey) LEFT JOIN TblArt ON TblIntArt.ArtKey = TblArt.ArtKey) LEFT JOIN ((TblIntMac LEFT JOIN TblMac ON TblIntMac.MacKey = TblMac.MacKey) LEFT JOIN TblArt AS TblArt_1 ON TblMac.ArtKey = TblArt_1.ArtKey) ON TblIntArt.IntArtKey = TblIntMac.IntArtKey) ON TblInt.IntKey = TblIntArt.IntKey WHERE TblInt.IntDat = ? AND TblInt.IntMov = ? ORDER BY TblInt.IntKey DESC" %>'

I parametri devo essere nello stesso ordine in cui compaiono nella query, quindi:

<Parameter Name="@IntDat" Type="Date" />
<Parameter Name="@IntMov" Value="2" Type="SmallInt" />

e poi nello script:

<script runat="server">
Sub Popola_datagrid(Src As Object, E As EventArgs)
dsInterventi.Parameters(0) = me.Calendar1.SelectedDate
Cal_int_datagrid.Datasource = dsInterventi.DefaultView
Cal_int_datagrid.Databind()
End Sub
</script>

in quanto l'indice (credo!!!) è zero-based!

Prova e fammi sapere.

Ciao.
49 messaggi dal 15 marzo 2006
Eh eh...ci avevo già provato....con lo stesso risultato che dà l'1, e cioè datagrid vuota!

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.