Web Toolbar by Wibiya XML Reporting Services vs XML SQL Server - Fran Diaz

Fran Diaz

Reporting Services, .NET, tecnologías Microsoft y otros

Email Notifications

Recent Posts

Tags

News

Community

Comunidades

  • OnobaNET
  • Grupo de usua
  • INETA
  • Culminis
  • Zona de Grupos de Usuarios Online
  • Foro MSDN Español: Colaborador

Webs Amigas

Archives

XML Reporting Services vs XML SQL Server

Esto no es una comparación del xml de Reporting Services y el campo XML de SQL Server, sino al revés como hacer que se lleven bien los dos y el campo XML de SQL Server deje entrar el XML que crea el Reporting Services. Jejeje, parace lioso pero no, una vez que se le coge el "tranquillo", esto está chupado.

 

Actualmente mi aplicación de Informes, guarda los informes en el nuevo campo XML que trae el SQL Server 2005. Una vez creado mis informes de Reporting Services(como no, jeje) y con algún que otro inconveniente, como comillas dobles para que se lo trague y se quede con solo una (ej.- ‘UnTexto’ --> ‘’UnTexto’’ o entidades HTML) y poco más puedo guardarlo en mi campo XML. Hasta que empezé a meter caracteres extraños para él. Claro yo no estoy muy puesto en esto de los caracteres unicode o ASCII, entonces me extraño que no me dejara introducir un nuevo Informe.

 

Después de buscar y preguntar por ahí conseguí hacerlo. Resulta que el XML interno del  Informe tiene como atributo para el mismo este: encoding="utf-8" o lo que es lo mismo unicode, mientras que el campo XML de SQL Server 2005 utiliza ascii.

 Si lo hacemos desde visual studio todo no hay problemas, es decir, creamos el informe con nuestros puntos, comas, acentos y caracteres especiales necesarios. Luego lo subimos al servidor y así no hay problemas. Pero claro por cuestiones técnicas no guardamos todos los informes en el servidor. La solución es cambiar los caracteres especiales por los de las entidades html. Así nos dejará guardar el xml. 

Esta es mi experiencia y la dejo aquí por si a alguien le pasa algo parecido.

 

Un Saludo
Posted: 13/3/2007 9:19 por Fran Díaz | con 8 comment(s)
Comparte este post:

Comentarios

Isaac Fernandez ha opinado:

Muy interesante, si señor, sin duda es algo, con lo que nos podemos chocar el día menos pensado.

Un saludo :)

# March 13, 2007 12:27 PM

Fran Díaz ha opinado:

Pues la verdad es que si, no veas la de cabezazos que se da uno cuando no sale y la alegría que entra cuando sabes porque es Smile.

# March 13, 2007 12:54 PM

Diego ha opinado:

Hola, mira estoy trabajando con ms sql server 2000 y estoy teniendo el problema que describiste anteriormente con los caracteres especiales. Hice una aplicación desde vb6 que le mando como parametro a un store un texto que es de formato xml, pero cuando lo ejecuto me tira el error de que hay caracteres invalidos.

Si me pudieras mandar algun ejemplo o tirarme alguna punta de como importar un documento xml al sql server 2000.

Desde ya muchas gracias.

Diego Avila

# June 12, 2007 6:23 PM

Fran Díaz ha opinado:

Hola Diego,

El problema es que SQL Server 2000 no tiene campos XML. Para ello puedes guardar tu XML en un campo de tipo texto y donde haya comilla simple(') lo cambias por dos('').

¿Va por ahí el tema?

Un Saludo

# June 13, 2007 9:22 AM

Diego ha opinado:

No el problema viene en que si pongo un caraceter especial o acento me tira error, mira te paso el codigo de lo que tendria que hacer el el store en sql, con la diferencia que yo lo armo en vb6.

DECLARE @xml varchar(8000)

-- Este es el documento XML

SET @xml = '<Products>'

SET @xml = @xml + '<Product ProductID="1" '

SET @xml = @xml + 'ProductName="Chaí º" UnitPrice="18.0000"/>'

SET @xml = @xml + '<Product ProductID="2" '

SET @xml = @xml + 'ProductName="Chang" UnitPrice="19.0000"/>'

SET @xml = @xml + '<Product ProductID="3" '

SET @xml = @xml + 'ProductName="Aniseed Syrup" UnitPrice="10.0000"/>'

SET @xml = @xml + '</Products>'

DECLARE @iDoc int

EXEC sp_xml_preparedocument @iDoc OUTPUT, @xml

SELECT *

FROM OPENXML(@iDoc, 'Products/Product', 1)

WITH (ProductID int,

ProductName nvarchar(40),

UnitPrice money) AS P

EXEC sp_xml_removedocument @iDoc.

Gracias. Diego Avila

# June 13, 2007 3:11 PM

Fran Díaz ha opinado:

Hola Diego,

Ahora caí en tu problema. A mi pasó lo mismo y probé a cambiar los signos y los acentos por estos que vienen en esta página: http://www.bib.uc3m.es/~nogales/EJS/entidad.html

Ya me comentas, ¿ok?

Un Saludo

# June 13, 2007 3:51 PM

Diego ha opinado:

Fran funciono de maravillas muchas gracias por tu ayuda me ha sido de mucha utilidad.

Un abrado.

Diego.

# June 13, 2007 4:20 PM

Fran Díaz ha opinado:

Hola a tod@s,

Estoy contestando todos los comentarios en los foros de MSDN. Más información del porque la podéis encontrar aquí:geeks.ms/.../191-adi-243-s-a-los-comentarios-en-el-blog.aspx

Un Saludo

# April 26, 2008 10:07 AM