Realizando un reporte tengo problemas al agrupar.

BUenas tardes.
Gracias anticipadas por responder.
NUestro problema es realizar un reporte donde de una tabla vamos a hacer unos cálculos y obtener 4 campos calculados (lo hice con un select agrupando y calculando), pero por cada registro debo mostrar de otra tabla o conjunto de tablas ciertos campos para así realizar el reporte agrupado.
Estamos trabajando con power builder 10.2, MySQL 5, ODBC MySQL 5.51.
Pensamos en realizar un procedimiento en la base de datos y luego crear un dw basados en ese procedimiento pero al intentar crear el dw nos dice que el procediiento espera 3 parámetros y no está recibiendo ninguno.
Revisamos algunas respuestas de por aquí y no vemos ningún tipo de solución.
Muchas gracias.

1 respuesta

Respuesta
-1
Si en la parte final de tu procedimiento donde vas a mostrar tus datos existe condicionales, entonces no te permitirá generar el dw, lo que debes hacer es crear un procedimiento que cuando devuelva un select no exista una condicional, luego una vez terminado tu dw, ingresas al edit source y ahí cambia el nombre del procedure al procedure actual, y todo funcionará correctamente.
Al referirme con la condicional me refiero a esto:
if (@opcion=1)
select * from tabla1
if (@opcion=2)
select * from tabla2
Cualquier duda al respecto solo consulta.
Fíjate en esto:
DELIMITER //
DROP PROCEDURE IF EXISTS `db_erp`.`proc_mayor_ana` //
CREATE DEFINER=`aramacao00`@`%` PROCEDURE `procedure_01`(argumento integer)
BEGIN
  SELECT `db`.`tabla_a`.`codigo_tabla_a`, ...
    FROM `db_tabla`.`tabla_a`,
         `db_tabla`.`tabla_b`
   WHERE ( `db`.`tabla_a`.`codigo_tabla_a` = `db`.`tabla_a`.`codigo_tabla_b` ) and
         ( ( `db`.`tabla_a`.`codigo_tabla_b` = argumento ) )
GROUP BY `db`.`tabla_a`.`codigo_tabla_a`
ORDER BY `db`.`tabla_a`.`codigo_tabla_a` ASC;
END //
DELIMITER ;
Un ejemplo obvio, funciona fino en la base de datos al pasarle el argumento que tengas, ejecuta perfecto pero al intentar hacer el dw desde PB, me dice que espera (en este caso), un argumento y no está recibiendo ninguno.
Esto es sin hacer ningún tipo de if.
Gracias y esperamos tú respuesta.
Dices que no está recibiendo ningún argumento, pero ahí indicas que le pasas un argumento integer, sabes tu sp es medio complejo, porque no revisas un ejemplo del propio sql ahí esta más sencillo, pueda eso también el problema.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas