Problema con date

martedì 22 giugno 2004 - 09.55

betangel Profilo | Newbie

Ciao a tutti..
dovendo fare una modifica ad una windows form, mi sono imbattuto in qs problema...
invece che inserire una semplice data in un db, devo inserire un set di giorni..
e pazienza.. mi sono costruito un bel ciclo for e faccio cambiare la data (per esempio con il metodo addDays(1)...)
il problema e' che non riesco a generare la data di partenza. (in teoria e' sempre il 1' del mese... con mese ed anno impostabili)

io ho fatto cosi':
Dim primodelmese As String
Dim datamese As Date
primodelmese = mese & "/01/" & anno ' mese e anno sono int che contengono valori corretti (es. 5 e 2004)
datamese.Parse(primodelmese)

' sono state provate varie formattazioni ( tipo prima "01" poi mese e anno...) sempre stesso errore
...
...
objCmd.Parameters.Add(New SqlParameter("@data", SqlDbType.DateTime))
...
objCmd.Parameters("@data").Value = datamese.AddDays(i) ' i cicla da 0 a 7 per esempio

mi si genera l'eccezione

overflow di Sqldatetime. il valore deve essere compreso fra 1/1/1753 12:00:00 Am e 12/31/2004 11:59:59 pm

avete qualche idea..? ho provato a riformattare la data in varie maniere... la stampa bene pero'
possibile che non ci sia un modo semplice per assegnare i valori ad un campo date??

Andy Profilo | Senior Member

Ciao.. non tentare di farlo in un passaggio..prima crea la stringa poi trasformala in data..

[da Msn]
In questo esempio viene utilizzata la funzione CDate per convertire stringhe in valori Date. Non è in genere consigliabile definire a livello di codice le date e le ore come stringhe (come illustrato in questo esempio). Utilizzare invece rappresentazioni formali di data e di ora, quali #Feb 12, 1969# e #4:45:23 PM#.
Dim MyDateString, MyTimeString As String
Dim MyDate, MyTime As Date
MyDateString = "February 12, 1969"
MyTimeString = "4:35:47 PM"
' ...
MyDate = CDate(MyDateString) ' Convert to Date data type.
MyTime = CDate(MyTimeString) ' Convert to Date data type.


betangel Profilo | Newbie

ciao grazie..
ho risolto con un altro giochetto..
ho scoperto che esiste il costruttore dell'oggetto datetime che prevede l'inserimento immediato di mese giorno anno in formato int...

allego il codice per completezza!
ciao
fanno = 2004
fmese=2
Dim datamese As New DateTime(Fanno, Fmese, 1)

ps non usate il .parse...

CAOS1980 Profilo | Newbie

Ciao ragazzi,
sono un programmatore alle prime armi AIUTATEMI! :D:D

ho un problema con il datetimepicker
a grandi somme si puo visualizzare con nessun valore nella finestra

grazie a tutti ciao :P

betangel Profilo | Newbie

il value di un datatimepicker deve essere per forza un tipo date, percui e' inutile provare a settare dbnull o "".
ti consiglierei di provare a giocare su altre proprieta' come .Text, in modo da far apparire nella textbox qualcosa di diverso dalla data del value.
Nel link sotto trovi la reference del controllo..
mi spiace non esserti troppo utile. ciao

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwindowsformsdatetimepickermemberstopic.asp

CAOS1980 Profilo | Newbie

Grazie betangel,

ci provo ti faccio sapere

:D
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 !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5