2011-08-03 11 views
5

así que en mi consulta que tengo select columnx from tblzssrs expresión posible para dividir cadena?

se devuelve 001.255556.84546

Quiero ser capaz de dividir esta vía ''. y ponerlo en tres columnas.

column1 = 001 
column2 = 255556 
column3 = 84576 

¿Esto es posible?

Respuesta

2

crear tres campos calculados con las siguientes expresiones:

=(Split(Fields!columnx.Value, ".")).GetValue(0) 
=(Split(Fields!columnx.Value, ".")).GetValue(1) 
=(Split(Fields!columnx.Value, ".")).GetValue(2) 

No estoy seguro de que funciona o no, tal vez darle una oportunidad. Es posible que necesite usar la instrucción IIF() para verificar los valores antes de obtenerlos.

+1

i sigue obteniendo un error de sintaxis en la (0) parte –

+2

Esto no funciona. La respuesta que usa .GetValue (0) es la correcta. – poke

3

En SSRS hace referencia al nombre del campo, dígale el delimitador que debe usar. Como no está asignando una variable, per se, necesita decir qué parte de la cadena dividida usar. En su ejemplo

=Split(Fields!returnedValue.Value,".")(0) 
=Split(Fields!returnedValue.Value,".")(1) 
=Split(Fields!returnedValue.Value,".")(2) 

debería reemplazar returnedValue con lo que el nombre real del campo es, y colocar cada uno de los en sus columnas 1 - 3, respectivamente.

13

Para información, en 2008 éstos no funcionan, usted tiene que hacer lo siguiente:

=Split(Fields!returnedValue.Value, ".").GetValue(0) 
+0

Esta debería ser la respuesta aceptada. '.Value (0)' de la respuesta aceptada actual no funciona. –

1

Esta respuesta fue publicada originalmente en la cuestión en lugar de ser publicado como una respuesta:

=(Split(Fields!columnx.Value,".")).GetValue(0) 
=(Split(Fields!columnx.Value,".")).GetValue(1) 
=(Split(Fields!columnx.Value,".")).GetValue(2) 
Cuestiones relacionadas