Tengo algunos procedimientos almacenados complejos que extraen datos de otras bases de datos utilizando servidores vinculados. Estos datos se colocan en tablas temporales que se unen en una consulta de selección para la salida. Los procedimientos funcionan bien pero en el estudio visual si trato de agregar el procedimiento almacenado a un conjunto de datos usando el diseñador obtengo el error nombre de objeto inválido #tmp o lo que sea que se llame a la primera tabla temporal. No puede recuperar el esquema de la base de datos. Es lo mismo para usar y sqldatasource en ASP.NET.Recuperar el esquema de los campos en Visual Studio del procedimiento almacenado que usa tablas temporales
El procedimiento todavía se puede usar, pero tengo que agregar manualmente todas las columnas que debe enviar a la tabla de datos. Esto va a ser una tarea difícil y supongo que tiene que ver con la forma en que Visual Studio reúne los campos de salida del procedimiento almacenado, no parece funcionar de la manera normal. ¿Hay alguna manera de corregir esto, ya que tengo muchas de estas cosas que hacer y no quiero tener que agregar todas las columnas manualmente, lo que consume mucho tiempo y es propenso a errores.
¿Hay algún motivo por el que no pueda usar una función de valor de tabla en lugar de un procedimiento almacenado? – Wilhelm
Sí, no puede usar SQL dinámico o openquery en una función hasta donde yo sé. Corrígeme si estoy equivocado. – PeteT
Respondí mi propia pregunta después de mucha más investigación. Hay una solución extraña. – PeteT