Gracias por la aclaración de lo de Sprint, aunque estoy seguro que muchos sabemos que es un Sprint y conocemos el modelo de referencia Scrum, por lo cual no era necesaria.
Saludos y suerte. El 14 de enero de 2016, 1:40, Juan Ramón Garcia <[email protected]> escribió: > Je, je, es como está ahora, con 4 cursores diferentes según el tipo de > selección. > El problema es que, al cambiar el orden de impresión de los registros, > todo esto ya no sirve. > No puedo seguir empleando más tiempo con este "Sprint" (*) la solución es > utilizar un fichero temporal y un programilla que lo trate. > > Un saludo. > > Juanra > ScrumSaurio > > (*) Lo de Sprint viene de la metodología del departamento en el que > actualmente trabajo, basada en Scrum > > El 13 de enero de 2016, 15:49, Bernabé Estrada <[email protected]> > escribió: > >> Y con sentencias preparadas? >> >> El 13 de enero de 2016, 4:26, Juan Ramón Garcia <[email protected]> >> escribió: >> >>> Hola Bernabé: >>> >>> El código quedaría muy poco "elegante" y farragoso de comprender, yo os >>> he mandado un ejemplo sencillito pero intervienen 3 tablas, cada una de >>> ellas con decenas de elementos, las combinaciones AND y OR serían >>> larguísimas. >>> >>> Un saludo. >>> Juanra >>> >>> El 12 de enero de 2016, 18:00, Bernabé Estrada < >>> [email protected]> escribió: >>> >>>> Sin pensar, solo traduciendo tus if podría ser así: >>>> >>>> >>>> WHERE B.FECENT = :W-FECHA and ( >>>> >>>> (:w-horaini1 <> " " AND B.HINIENT = :W-HORAINI1) >>>> >>>> or >>>> >>>> (:w-horaini2 <> " " AND B.HINIENT = :W-HORAINI2) >>>> >>>> ) >>>> >>>> AND B.CODEST IN ("20", "25", "27") >>>> >>>> >>>> El 12 de enero de 2016, 10:51, Rafa Vidal <[email protected]> >>>> escribió: >>>> >>>>> ...¿Y porqué no pruebas a sustituir el "<>" por un "=" y el "AND" por >>>>> un "OR"...? >>>>> >>>>> Un saludo, >>>>> Rafa Vidal >>>>> >>>>> Enviado desde mi Windows Phone >>>>> ------------------------------ >>>>> De: Juan Ramón Garcia <[email protected]> >>>>> Enviado: 12/01/2016 17:35 >>>>> Para: forum.help400 <[email protected]> >>>>> Asunto: Re: COBOL y SQL embebido IF dentro de WHERE >>>>> >>>>> Pues.... no funciona, en cuanto encuentra un elemento de W-HORA en >>>>> blanco ya no se cumple la condición AND y no selecciona el registro. >>>>> >>>>> Puffff, o me lo monto con PREPARE o un fichero temporal. >>>>> El problema es que yo no soy quien decido como hacerlo, tengo que >>>>> consultar a mi supervisor. Antes como yo era el Jefe lo hacía coo me daba >>>>> la gana :-) >>>>> >>>>> Un saludo. >>>>> Juanra >>>>> >>>>> >>>>> >>>>> El 12 de enero de 2016, 17:12, Juan Ramón Garcia < >>>>> [email protected]> escribió: >>>>> >>>>> Hola Javier: >>>>> >>>>> Pues compilar, compila, que ya es mucho :-) >>>>> Pues nada, voy a tirar por ese camino y ya os contaré >>>>> >>>>> Un saludo. >>>>> Juanra >>>>> >>>>> >>>>> El 12 de enero de 2016, 17:08, Juan Ramón Garcia < >>>>> [email protected]> escribió: >>>>> >>>>> Hola Javier: >>>>> >>>>> Pues no está nada mal, tiene pinta de funcionar y es sencillo de >>>>> implantar :-) >>>>> >>>>> De todas formas acabo de encontrar ejemplos de PREPARE y EXCUTE para >>>>> COBOL, por si a alguien le interesa: >>>>> http://www.craigsmullins.com/dbu_1004.htm >>>>> >>>>> Voy a probar lo tuyo, me resulta más cómodo y tengo que cambiar menos >>>>> cosas. Muchas gracias >>>>> >>>>> Un saludo. >>>>> Juanra >>>>> >>>>> >>>>> El 12 de enero de 2016, 17:01, Javier Mora <[email protected]> >>>>> escribió: >>>>> >>>>> Si no recuerdo mal, en mi instalación hemos tenido que hacer algo >>>>> parecido pero ahora no lo encuentro. Se me ocurre lo siguiente: >>>>> >>>>> >>>>> >>>>> WHERE B.FECENT = :W-FECHA >>>>> >>>>> AND (:w-horaini1 <> “ “ and B.HINIENT = :W-HORAINI1) >>>>> >>>>> AND (:w-horaini2 <> " " and B.HINIENT = :W-HORAINI2) >>>>> >>>>> AND B.CODEST IN ("20", "25", "27") >>>>> >>>>> >>>>> >>>>> Saludos >>>>> >>>>> >>>>> >>>>> *De:* [email protected] [mailto: >>>>> [email protected]] *En nombre de *Juan Ramón >>>>> Garcia >>>>> *Enviado el:* martes, 12 de enero de 2016 16:04 >>>>> *Para:* forum.help400 >>>>> *Asunto:* COBOL y SQL embebido IF dentro de WHERE >>>>> >>>>> >>>>> >>>>> Hola a tod@s: >>>>> >>>>> Nunca me he encontrado con este problema pero...siempre hay una >>>>> primera vez. >>>>> >>>>> En un programa COBOL complicadísimo se utiliza SQL embebido para >>>>> seleccionar una serie de registros cuyas características han sido >>>>> seleccionadas por el usuario mediante una pantalla de opciones. >>>>> >>>>> El caso es que quieren cambiar el orden de impresión de los registros >>>>> pero, tal y como está el programa, habría que rehacerlo y utilizar un >>>>> fichero temporal cosa que prefieren que no se haga. >>>>> >>>>> La solución que se me ha ocurrido es condicionar algunas opciones del >>>>> WHERE a si tiene o no tiene datos el campo correspondiente. >>>>> >>>>> Una imagen vale más que mil palabras: >>>>> >>>>> EXEC SQL >>>>> DECLARE CUR5 CURSOR FOR >>>>> SELECT B.PTOSERV, B.NPEDWEB, B.RUTA >>>>> FROM FSPEDC3 A >>>>> LEFT JOIN FPEDHIPC5 B >>>>> ON A.NPEDWEB = B.NPEDWEB >>>>> WHERE B.FECENT = :W-FECHA >>>>> AND B.HINIENT = :W-HORAINI >>>>> AND B.CODEST IN ("20", "25", "27") >>>>> ORDER BY A.CCIRCOD, B.HINIENT, B.RUTA, B.NPEDWEB >>>>> END-EXEC. >>>>> >>>>> lo que necesitaría seria algo como esto: (lo escribo en minúsculas >>>>> para que se distinga >>>>> >>>>> EXEC SQL >>>>> DECLARE CUR5 CURSOR FOR >>>>> SELECT B.PTOSERV, B.NPEDWEB, B.RUTA >>>>> FROM FSPEDC3 A >>>>> LEFT JOIN FPEDHIPC5 B >>>>> ON A.NPEDWEB = B.NPEDWEB >>>>> WHERE B.FECENT = :W-FECHA >>>>> >>>>> if :w-horaini1 <> " " >>>>> >>>>> AND B.HINIENT = :W-HORAINI1 >>>>> >>>>> end-if >>>>> >>>>> if :w-horaini2 <> " " >>>>> >>>>> AND B.HINIENT = :W-HORAINI2 >>>>> >>>>> end-if >>>>> >>>>> AND B.CODEST IN ("20", "25", "27") >>>>> ORDER BY A.CCIRCOD, B.HINIENT, B.RUTA, B.NPEDWEB >>>>> END-EXEC. >>>>> >>>>> >>>>> >>>>> Evidentemente no funciona y he probado con CASE y otras "cosas" que he >>>>> encontrado por ahí pero no lo consigo y esto simplificaría mi problema. >>>>> >>>>> ¿Hay alguna forma de condicionar las sentencias del WHERE? >>>>> >>>>> Un saludo. >>>>> >>>>> >>>>> >>>>> Juanra >>>>> >>>>> SqlCobolSaurio >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> ____________________________________________________ >>>>> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) >>>>> Forum.Help400 © Publicaciones Help400, S.L. >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> ____________________________________________________ >>>>> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) >>>>> Forum.Help400 © Publicaciones Help400, S.L. >>>>> >>>> >>>> >>>> ____________________________________________________ >>>> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) >>>> Forum.Help400 © Publicaciones Help400, S.L. >>>> >>> >>> >>> ____________________________________________________ >>> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) >>> Forum.Help400 © Publicaciones Help400, S.L. >>> >> >> >> ____________________________________________________ >> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) >> Forum.Help400 © Publicaciones Help400, S.L. >> > > > ____________________________________________________ > Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) > Forum.Help400 © Publicaciones Help400, S.L. >
____________________________________________________ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.

