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
Crystal Reports e reportistica
DTE PART
mercoledì 03 novembre 2010 - 14.00
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
|
Windows XP
|
SQL Server 2005
|
Office 2003
|
Internet explorer 8.0
|
Crystal Reports 8.5
m.lusardi
Profilo
| Newbie
6
messaggi | Data Invio:
mer 3 nov 2010 - 14:00
Buongiorno a tutti,
ho un problema con un report in cui faccio somme settimanali di ordini utilizzando la funzione datepart per la selezione del numero della setimana.
Il problema è il seguente:
inserendo ordini previsionali con date future se queste sono relative alla stessa settimana dell'anno in corso vengono sommate, falsando quindi gli ordini relativi all'anno in corso.
Es. ordine 100 per 05/11/2010 settimana 44
ordine 200 per 31/10/2011 settimana 44
Totale ordine: 300 per settimana 44
In realtà il totale è solo 100.
Come posso risolvere il problema senza stravolgere il report????
Grazie!
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
mar 30 nov 2010 - 22:39
Ciao,
puoi postare la formula che usi? Oppure il report stesso, magari con dei dati fittizi giusto per provarlo...
Di primo acchito direi che potresti anche controllare di essere nello stesso anno quando fai la somma, ma forse con la formula sottomano riesco a capire meglio come si può fare.
Ciao.
Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo
m.lusardi
Profilo
| Newbie
6
messaggi | Data Invio:
mer 1 dic 2010 - 21:38
Nel frattempo ho trovato una soluzione accettabile: recupero il primo e l'ultimo giorno della settimana relativa a quell'anno e faccio in modo che le somme siano entro quel limite.
Grazie comunque.
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
mer 1 dic 2010 - 21:53
>Nel frattempo ho trovato una soluzione accettabile: recupero
>il primo e l'ultimo giorno della settimana relativa a quell'anno
>e faccio in modo che le somme siano entro quel limite.
ok magari se puoi posta la formula che usi, in modo che possa essere d'aiuto a qualcuno se si trovasse a passare per questo thread...
Grazie.
Ciao.
Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo
m.lusardi
Profilo
| Newbie
6
messaggi | Data Invio:
gio 2 dic 2010 - 15:02
La formula applicata per trovare il primo giorno di una settimana è:
If DayOfWeek({@gg_sett2}) = 2 Then
{@gg_sett2}
Else If DayOfWeek({@gg_sett2}) = 3 Then
dateadd ("d",-1,{@gg_sett2})
Else If DayOfWeek({@gg_sett2}) = 4 Then
dateadd ("d",-2,{@gg_sett2})
Else If DayOfWeek({@gg_sett2}) = 5 Then
dateadd ("d",-3,{@gg_sett2})
Else If DayOfWeek({@gg_sett2}) = 6 Then
dateadd ("d",-4,{@gg_sett2})
Else If DayOfWeek({@gg_sett2}) = 7 Then
dateadd ("d",-5,{@gg_sett2})
Else If DayOfWeek({@gg_sett2}) = 1 Then
dateadd ("d",-6,{@gg_sett2})
dove per me @gg_sett2 è una data calcolata.
La formula per trovare l'ultimo giorno della settimana è:
Local DateTimeVar d := DateTime (DatePart ("yyyy", {@gg_sett2}), DatePart ("m", {@gg_sett2}), DatePart ("d", {@gg_sett2}), 23, 59, 59);
If DayOfWeek({@gg_sett2}) = 2 Then
dateadd ("d",+6,d)
Else If DayOfWeek({@gg_sett2}) = 3 Then
dateadd ("d",+5,d)
Else If DayOfWeek({@gg_sett2}) = 4 Then
dateadd ("d",+4,d)
Else If DayOfWeek({@gg_sett2}) = 5 Then
dateadd ("d",+3,d)
Else If DayOfWeek({@gg_sett2}) = 6 Then
dateadd ("d",+2,d)
Else If DayOfWeek({@gg_sett2}) = 7 Then
dateadd ("d",+1,d)
Else If DayOfWeek({@gg_sett2}) = 1 Then
d;
dove per me @gg_sett2 è una data calcolata.
Nelle somme invece inserisco la seguente formula che sarà specifica per ogni giorno della settimana:
DatePart ("ww",{$data},2,2 )={@sett2} and WeekdayName (DayOfWeek ({$data}))='lunedì'
and {$data}>={@first_day2} and {$data}<={@last_day2}
dove $data è una data di consegna, $first_day2 è il primo giorno relativo a quella settimana specifica e $last_day2 è l'ultimo giorno di quella settimana.
Spero di esservi stati d'aiuto.
Grazie!
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 !