Problema con campo calcolato

venerdì 25 giugno 2010 - 10.50

marko80 Profilo | Junior Member

Ciao a tutti!
Sto creando un report rdl in microsoft visual studio 2005.
Ho un problema sulla creazione di un campo calcolato/formula.
Il campo in questione è di tipo char e si presenta in questo modo:
4
2+7
22+22
4 (2 se stampato)
10+3
5/6
ecc...

il risultato deve essere il seguente:
4
9
44
4
13
5

io momentaneamente ho scritto questo...

=iif(InStr(Fields!ep_dato.Value,"+")<>0,Val(Left(Fields!ep_dato.Value,InStr(Fields!ep_dato.Value,"+")-1))+Val(Mid(Fields!ep_dato.Value,InStr(1,Fields!ep_dato.Value,"+")+1)),Fields!ep_dato.Value)

le somme me le fa ma quando c'è il valore singolo non restituisce nessun valore...

come mai? chi mi da una mano?

Grazie e Ciao

---------------------------------------

UP!!

civetta Profilo | Newbie

io scriverei
iif(InStr(Fields!ep_dato.Value,"+")<>0,Val(Left(Fields!ep_dato.Value,InStr(Fields!ep_dato.Value,"+")-1))+Val(Mid(Fields!ep_dato.Value,InStr(1,Fields!ep_dato.Value,"+")+1)),Val(Fields!ep_dato.Value))

occhio al val() finale!
Ciao
l'essenziale è invisibile agli occhi

marko80 Profilo | Junior Member

Grazie x la risposta, ma anche io avevo provato a fare come mi hai suggerito, ma senza risultato. Mettendo o togliendo val non cambia nulla! :(
In Crystal report la formula è questa e funziona alla grande!!

if instr ({partiest.ep_dato},"+")<>0 then
tonumber (left({partiest.ep_dato},InStr ({partiest.ep_dato},"+")-1)) +
tonumber(Mid({partiest.ep_dato},InStr(1,{partiest.ep_dato},"+")+1))
else if
InStr ({partiest.ep_dato},"/")<>0 then
tonumber (left({partiest.ep_dato},InStr ({partiest.ep_dato},"/")-1))
else
tonumber ({partiest.ep_dato})

Come diventa in Visual Studio?
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