cibin_louis
Hola a todos,
Estoy tratando de crear un informe ejecutando un procedimiento almacenado de DB2 en el mainframe (Z/OS). El procedimiento almacenado devuelve un único conjunto de resultados. El procedimiento almacenado funciona bien cuando se prueba, pero cuando se invoca desde powerBI, veo un conjunto de resultados vacío. Por favor, ayúdenme con la sintaxis para invocar el procedimiento almacenado de DB2 si lo que he usado no es correcto y sugieran algunas alternativas para la invocación de SP. Tenga en cuenta que puedo conectarme a la base de datos, crear informes ejecutando consultas en tablas, etc. con éxito. También puedo invocar los procedimientos almacenados desde DB2 Connect (es decir, no hay problemas con la conexión o el procedimiento de DB2). Sospecho que PowerBI no es compatible con la llamada al procedimiento de almacenamiento de DB2 o que la sintaxis es incorrecta. Estoy usando la versión de escritorio de PowerBI 2.40.4554.463.
dejar
Fuente = Odbc.Query(“dsn=DB2EMPA”,”LLAME AL EMPLEADO.RESUMEN1(‘MATEMÁTICAS’, ‘5’)”)
en
Fuente
v-huizhn-msft
Hola @cibin_louis,
¿No recibió ningún error al lado de la tabla vacía? Investigué un poco y encontré algunos trucos. Por favor, intente y compruebe si funciona bien.
- Haga clic en «Editar consultas» en la pestaña «Inicio», aparecerá una ventana de «Editor de consultas».
- Haga clic en «Nueva fuente» -> «SQL Server» y complete el «servidor», «base de datos», «Declaración Sql» con «testServer», «testdb», «ejec p4test ‘buenos días'», haga clic en Aceptar.
- Haga clic en esa consulta en el panel izquierdo y haga clic en «Editor avanzado» en la pestaña «Inicio», y pegue el código a continuación.
let Source = DB2.Database("server", "darabase",[Odbc.Query(“dsn=DB2EMPA”,”CALL EMPLOYEE.SUMMARY1(‘MATHS’, ‘5’)”]) in Source
Atentamente,
ángelia
marsalaluddin
En respuesta a v-huizhn-msft
¿Puede confirmar si esta sugerencia funcionará para IBM DB2? SQL Server se menciona como la nueva fuente en su respuesta.
marsalaluddin
OleDb.DataSource(«proveedor=IBMDADB2.DB2COPY1; fuente de datos=DB2EMPA», [Query=»CALL EMPLOYEE.SUMMARY1(‘MATHS’, ‘5’);»])
Resuelto. El uso de OLEDB en lugar de ODBC ayudó a obtener el conjunto de resultados devuelto por SP.
Nota: IBMDADB2.DB2COPY1 es el proveedor OLE DB de IBM DB2 predeterminado de instalación.
ODBC proporciona acceso solo a bases de datos relacionales
OLE DB proporciona las siguientes características
Acceso a los datos independientemente de su formato o ubicación
Acceso completo a fuentes de datos ODBC y controladores ODBC