Re: Crear Ayuda en pantallas
Gracias si por favor enviame el PDF, mi correo as400acc...@gmail.com gracias. El lun., 9 sept. 2019 a las 11:26, datil400 () escribió: > Yo uso grupos de paneles (PNLGRP), tanto para los programas con archivos > de pantalla como para los mandatos. > > Tengo un PDF (antiguo y en inglés) sobre el tema, pero no lo localizo en > internet. Si estás interesado te lo envío por privado. > > Javier Mora > > El dom., 8 sept. 2019 a las 14:23, webaccess () > escribió: > >> Hola, >> >> A ver si me podeis ayudar, necesito crear que al dar F1 en las pantallas >> de un programa se abra una pantalla de Ayuda donde aparezca un texto de >> ayuda para cada pantalla. >> >> La solucion que se me occurio es que al dar F1 llamo a otra pantalla >> donde escribo el texto que debe salir. Lo que pasa es que es muy engorroso >> y lento y sobre todo si es largo necesito llamar a varias pantallas. >> Alguien me puede decir otra forma de hacerlo. Al dar ayuda en el 400 salen >> pantallas de ayuda donde se puede paginar y hacer muchas cosas, pero no se >> como se hace, me podeis ayudar?? >> >> Gracias anticipadas >> >> >> Miguel Ilundain >> >> Ú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.
Re: Crear Ayuda en pantallas
Yo uso grupos de paneles (PNLGRP), tanto para los programas con archivos de pantalla como para los mandatos. Tengo un PDF (antiguo y en inglés) sobre el tema, pero no lo localizo en internet. Si estás interesado te lo envío por privado. Javier Mora El dom., 8 sept. 2019 a las 14:23, webaccess () escribió: > Hola, > > A ver si me podeis ayudar, necesito crear que al dar F1 en las pantallas > de un programa se abra una pantalla de Ayuda donde aparezca un texto de > ayuda para cada pantalla. > > La solucion que se me occurio es que al dar F1 llamo a otra pantalla donde > escribo el texto que debe salir. Lo que pasa es que es muy engorroso y > lento y sobre todo si es largo necesito llamar a varias pantallas. Alguien > me puede decir otra forma de hacerlo. Al dar ayuda en el 400 salen > pantallas de ayuda donde se puede paginar y hacer muchas cosas, pero no se > como se hace, me podeis ayudar?? > > Gracias anticipadas > > > Miguel Ilundain > > Ú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.
Re: Crear Ayuda en pantallas
Muchas Gracias voy a intentarlo con esto. Gracias El lun., 9 sept. 2019 a las 9:05, Alex Martínez () escribió: > Puedes usar grupos de paneles PNLGRP > > La estructura es muy similar a un HTML con etiquetas para párrafos, > listas, etc > > https://www.rpgpgm.com/2017/02/creating-help-text-using-uim.html > > El dom., 8 sept. 2019 a las 14:23, webaccess () > escribió: > >> Hola, >> >> A ver si me podeis ayudar, necesito crear que al dar F1 en las pantallas >> de un programa se abra una pantalla de Ayuda donde aparezca un texto de >> ayuda para cada pantalla. >> >> La solucion que se me occurio es que al dar F1 llamo a otra pantalla >> donde escribo el texto que debe salir. Lo que pasa es que es muy engorroso >> y lento y sobre todo si es largo necesito llamar a varias pantallas. >> Alguien me puede decir otra forma de hacerlo. Al dar ayuda en el 400 salen >> pantallas de ayuda donde se puede paginar y hacer muchas cosas, pero no se >> como se hace, me podeis ayudar?? >> >> Gracias anticipadas >> >> >> Miguel Ilundain >> >> Ú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.
Re: Crear Ayuda en pantallas
Puedes usar grupos de paneles PNLGRP La estructura es muy similar a un HTML con etiquetas para párrafos, listas, etc https://www.rpgpgm.com/2017/02/creating-help-text-using-uim.html El dom., 8 sept. 2019 a las 14:23, webaccess () escribió: > Hola, > > A ver si me podeis ayudar, necesito crear que al dar F1 en las pantallas > de un programa se abra una pantalla de Ayuda donde aparezca un texto de > ayuda para cada pantalla. > > La solucion que se me occurio es que al dar F1 llamo a otra pantalla donde > escribo el texto que debe salir. Lo que pasa es que es muy engorroso y > lento y sobre todo si es largo necesito llamar a varias pantallas. Alguien > me puede decir otra forma de hacerlo. Al dar ayuda en el 400 salen > pantallas de ayuda donde se puede paginar y hacer muchas cosas, pero no se > como se hace, me podeis ayudar?? > > Gracias anticipadas > > > Miguel Ilundain > > Ú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.
RE: Crear Ayuda en pantallas
Hola Puedes usar los pnlgrps (panel groups) De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de webaccess Enviado el: domingo, 8 de septiembre de 2019 14:22 Para: forum.help400 Asunto: Crear Ayuda en pantallas Hola, A ver si me podeis ayudar, necesito crear que al dar F1 en las pantallas de un programa se abra una pantalla de Ayuda donde aparezca un texto de ayuda para cada pantalla. La solucion que se me occurio es que al dar F1 llamo a otra pantalla donde escribo el texto que debe salir. Lo que pasa es que es muy engorroso y lento y sobre todo si es largo necesito llamar a varias pantallas. Alguien me puede decir otra forma de hacerlo. Al dar ayuda en el 400 salen pantallas de ayuda donde se puede paginar y hacer muchas cosas, pero no se como se hace, me podeis ayudar?? Gracias anticipadas Miguel Ilundain Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Crear Ayuda en pantallas
Hola, A ver si me podeis ayudar, necesito crear que al dar F1 en las pantallas de un programa se abra una pantalla de Ayuda donde aparezca un texto de ayuda para cada pantalla. La solucion que se me occurio es que al dar F1 llamo a otra pantalla donde escribo el texto que debe salir. Lo que pasa es que es muy engorroso y lento y sobre todo si es largo necesito llamar a varias pantallas. Alguien me puede decir otra forma de hacerlo. Al dar ayuda en el 400 salen pantallas de ayuda donde se puede paginar y hacer muchas cosas, pero no se como se hace, me podeis ayudar?? Gracias anticipadas Miguel Ilundain Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Solicitud de ayuda.
Ese problema me ocurrió cuando se generó una consulta sql, que creaba un fichero temporal enorme From: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Joss DJ Sent: domingo, 09 de octubre de 2016 5:42 To: forum.help400 <forum.help400@listas.combios.es> Subject: Re: Solicitud de ayuda. Estimados buena noche, Gracias a todos por su interés en este tema, les comento que no sabemos exactamente que ocurrió ya que cuando tuvimos el problema en cuestión de segundos el equipo "subía" dramáticamente el % ASP de uso lo que hicimos en ese momento fue terminar trabajos de usuarios ya que precisamente era un proceso el que estaba ocasionando ese loop, al terminar varios trabajos el sistema empezó a normalizarse y a bajar de inmediato el % de ASP hasta normalizarse. Seguimos investigando que ocurrió ya que no encontramos nada anormal, ya les comentaré que encontramos. Gracias de nuevo por todo su apoyo. Reciban un cordial saludo. José DJ. De: forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es> <forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es>> en nombre de Luis G. Quilca T. <luis.qui...@eppetroecuador.ec<mailto:luis.qui...@eppetroecuador.ec>> Enviado: miércoles, 28 de septiembre de 2016 08:04 a. m. Para: forum.help400 Asunto: RE: Solicitud de ayuda. Saludos, Otro tema que llena el disco es cuando se generan los JOURNALS, para esto debes revisar los objetos *JRN y *JRNRCV From: forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es> [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Javier Mora Sent: miércoles, 28 de septiembre de 2016 3:09 To: 'forum.help400' Subject: RE: Solicitud de ayuda. Hola José, Es muy raro lo que te ocurre, ¿en qué versión estás? ¿cuánto almacenamiento tienes en el ASP? Un 60% de espacio libre puede ser mucho o poco, depende del almacenamiento total que tengas. Si estás muy justo de especio puede ocurrirte que ante una consulta (QUERY o SQL) complicada requiera almacenamiento temporal para ejecutarla, más que la memoria libre que tienes. Por otro lado, también puede ser un trabajo que esté generando muchos "joblogs" que te estén llenando el disco. Recientemente (y no sé como ocurrió exactamente) recompilamos una pantalla de un menú y a ciertos usuarios (no a todos) cuando entraban en ese menú el trabajo se quedaba "colgado" generándole archivos en spool con joblogs (hasta el infinito). Cerraban la sesión y se solucionaba el problema. Saludos, Javier De: forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es> [mailto:forum.help400-boun...@listas.combios.es] En nombre de Joss DJ Enviado el: martes, 27 de septiembre de 2016 18:48 Para: forum.help400@listas.combios.es<mailto:forum.help400@listas.combios.es> Asunto: Solicitud de ayuda. Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Solicitud de ayuda.
En el pasado a alguno de mis clientes le ocurrió exactamente lo que dices. En esos casos lo que pasó es que un acceso ODBC entró en bucle, trabajando sobretodo en QTEMP. Al finalizar los trabajos (en algún caso el sistema llegó a hacer IPL) la ocupación en disco volvió a la normalidad. - Saludos - Salutacions - Cordiali saluti Cordialement - Best Regards - 最好的問候, Mit freundlichen grüßen, 宜しく Andreu RUL Responsable técnico España/Sudamérica QSL GROUP Tel : + 34 663 817 144 Mail: r...@qsl-group.com Por favor, para demandas técnicas subscríbase a nuestra: Worldwide Support platform: http://qsl.zendesk.com - De: Joss DJ <joss_1...@hotmail.com> Para: "forum.help400" <forum.help400@listas.combios.es> Fecha: 09/10/2016 05:47 Asunto: Re: Solicitud de ayuda. Enviado por:forum.help400-boun...@listas.combios.es Estimados buena noche, Gracias a todos por su interés en este tema, les comento que no sabemos exactamente que ocurrió ya que cuando tuvimos el problema en cuestión de segundos el equipo "subía" dramáticamente el % ASP de uso lo que hicimos en ese momento fue terminar trabajos de usuarios ya que precisamente era un proceso el que estaba ocasionando ese loop, al terminar varios trabajos el sistema empezó a normalizarse y a bajar de inmediato el % de ASP hasta normalizarse. Seguimos investigando que ocurrió ya que no encontramos nada anormal, ya les comentaré que encontramos. Gracias de nuevo por todo su apoyo. Reciban un cordial saludo. José DJ. De: forum.help400-boun...@listas.combios.es <forum.help400-boun...@listas.combios.es> en nombre de Luis G. Quilca T. <luis.qui...@eppetroecuador.ec> Enviado: miércoles, 28 de septiembre de 2016 08:04 a. m. Para: forum.help400 Asunto: RE: Solicitud de ayuda. Saludos, Otro tema que llena el disco es cuando se generan los JOURNALS, para esto debes revisar los objetos *JRN y *JRNRCV From: forum.help400-boun...@listas.combios.es [ mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Javier Mora Sent: miércoles, 28 de septiembre de 2016 3:09 To: 'forum.help400' Subject: RE: Solicitud de ayuda. Hola José, Es muy raro lo que te ocurre, ¿en qué versión estás? ¿cuánto almacenamiento tienes en el ASP? Un 60% de espacio libre puede ser mucho o poco, depende del almacenamiento total que tengas. Si estás muy justo de especio puede ocurrirte que ante una consulta (QUERY o SQL) complicada requiera almacenamiento temporal para ejecutarla, más que la memoria libre que tienes. Por otro lado, también puede ser un trabajo que esté generando muchos “joblogs” que te estén llenando el disco. Recientemente (y no sé como ocurrió exactamente) recompilamos una pantalla de un menú y a ciertos usuarios (no a todos) cuando entraban en ese menú el trabajo se quedaba “colgado” generándole archivos en spool con joblogs (hasta el infinito). Cerraban la sesión y se solucionaba el problema. Saludos, Javier De: forum.help400-boun...@listas.combios.es [ mailto:forum.help400-boun...@listas.combios.es] En nombre de Joss DJ Enviado el: martes, 27 de septiembre de 2016 18:48 Para: forum.help400@listas.combios.es Asunto: Solicitud de ayuda. Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. Ú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.
Re: Solicitud de ayuda.
Estimados buena noche, Gracias a todos por su interés en este tema, les comento que no sabemos exactamente que ocurrió ya que cuando tuvimos el problema en cuestión de segundos el equipo "subía" dramáticamente el % ASP de uso lo que hicimos en ese momento fue terminar trabajos de usuarios ya que precisamente era un proceso el que estaba ocasionando ese loop, al terminar varios trabajos el sistema empezó a normalizarse y a bajar de inmediato el % de ASP hasta normalizarse. Seguimos investigando que ocurrió ya que no encontramos nada anormal, ya les comentaré que encontramos. Gracias de nuevo por todo su apoyo. Reciban un cordial saludo. José DJ. De: forum.help400-boun...@listas.combios.es <forum.help400-boun...@listas.combios.es> en nombre de Luis G. Quilca T. <luis.qui...@eppetroecuador.ec> Enviado: miércoles, 28 de septiembre de 2016 08:04 a. m. Para: forum.help400 Asunto: RE: Solicitud de ayuda. Saludos, Otro tema que llena el disco es cuando se generan los JOURNALS, para esto debes revisar los objetos *JRN y *JRNRCV From: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Javier Mora Sent: miércoles, 28 de septiembre de 2016 3:09 To: 'forum.help400' Subject: RE: Solicitud de ayuda. Hola José, Es muy raro lo que te ocurre, ¿en qué versión estás? ¿cuánto almacenamiento tienes en el ASP? Un 60% de espacio libre puede ser mucho o poco, depende del almacenamiento total que tengas. Si estás muy justo de especio puede ocurrirte que ante una consulta (QUERY o SQL) complicada requiera almacenamiento temporal para ejecutarla, más que la memoria libre que tienes. Por otro lado, también puede ser un trabajo que esté generando muchos "joblogs" que te estén llenando el disco. Recientemente (y no sé como ocurrió exactamente) recompilamos una pantalla de un menú y a ciertos usuarios (no a todos) cuando entraban en ese menú el trabajo se quedaba "colgado" generándole archivos en spool con joblogs (hasta el infinito). Cerraban la sesión y se solucionaba el problema. Saludos, Javier De: forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es> [mailto:forum.help400-boun...@listas.combios.es] En nombre de Joss DJ Enviado el: martes, 27 de septiembre de 2016 18:48 Para: forum.help400@listas.combios.es<mailto:forum.help400@listas.combios.es> Asunto: Solicitud de ayuda. Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Solicitud de ayuda.
Saludos, Otro tema que llena el disco es cuando se generan los JOURNALS, para esto debes revisar los objetos *JRN y *JRNRCV From: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Javier Mora Sent: miércoles, 28 de septiembre de 2016 3:09 To: 'forum.help400' Subject: RE: Solicitud de ayuda. Hola José, Es muy raro lo que te ocurre, ¿en qué versión estás? ¿cuánto almacenamiento tienes en el ASP? Un 60% de espacio libre puede ser mucho o poco, depende del almacenamiento total que tengas. Si estás muy justo de especio puede ocurrirte que ante una consulta (QUERY o SQL) complicada requiera almacenamiento temporal para ejecutarla, más que la memoria libre que tienes. Por otro lado, también puede ser un trabajo que esté generando muchos "joblogs" que te estén llenando el disco. Recientemente (y no sé como ocurrió exactamente) recompilamos una pantalla de un menú y a ciertos usuarios (no a todos) cuando entraban en ese menú el trabajo se quedaba "colgado" generándole archivos en spool con joblogs (hasta el infinito). Cerraban la sesión y se solucionaba el problema. Saludos, Javier De: forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es> [mailto:forum.help400-boun...@listas.combios.es] En nombre de Joss DJ Enviado el: martes, 27 de septiembre de 2016 18:48 Para: forum.help400@listas.combios.es<mailto:forum.help400@listas.combios.es> Asunto: Solicitud de ayuda. Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Solicitud de ayuda.
Hola José, Es muy raro lo que te ocurre, ¿en qué versión estás? ¿cuánto almacenamiento tienes en el ASP? Un 60% de espacio libre puede ser mucho o poco, depende del almacenamiento total que tengas. Si estás muy justo de especio puede ocurrirte que ante una consulta (QUERY o SQL) complicada requiera almacenamiento temporal para ejecutarla, más que la memoria libre que tienes. Por otro lado, también puede ser un trabajo que esté generando muchos "joblogs" que te estén llenando el disco. Recientemente (y no sé como ocurrió exactamente) recompilamos una pantalla de un menú y a ciertos usuarios (no a todos) cuando entraban en ese menú el trabajo se quedaba "colgado" generándole archivos en spool con joblogs (hasta el infinito). Cerraban la sesión y se solucionaba el problema. Saludos, Javier De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Joss DJ Enviado el: martes, 27 de septiembre de 2016 18:48 Para: forum.help400@listas.combios.es Asunto: Solicitud de ayuda. Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Solicitud de ayuda
HOLA , Intentando dar una mano, esto nos ha pasado cuando algún proceso queda en "loop" indefinido (por error en algún programa) generando grandes e interminables listados de errores que sin duda te saturan el disco. Con wrkoutq puedes ver si en alguna cola de salida tienes muchos listados..es otra forma rápida de buscar el problema causante. Espero sea útil. Suerte y saludos.- -Mensaje original- De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de forum.help400-requ...@listas.combios.es Enviado el: martes, 27 de septiembre de 2016 15:52 Para: forum.help400@listas.combios.es Asunto: Resumen de Forum.help400, Vol 119, Envío 37 Envíe los mensajes para la lista Forum.help400 a forum.help400@listas.combios.es Para subscribirse o anular su subscripción a través de la WEB http://listas.combios.es/cgi-bin/mailman/listinfo/forum.help400 O por correo electrónico, enviando un mensaje con el texto "help" en el asunto (subject) o en el cuerpo a: forum.help400-requ...@listas.combios.es Puede contactar con el responsable de la lista escribiendo a: forum.help400-ow...@listas.combios.es Si responde a algún contenido de este mensaje, por favor, edite la linea del asunto (subject) para que el texto sea mas especifico que: "Re: Contents of Forum.help400 digest...". Además, por favor, incluya en la respuesta sólo aquellas partes del mensaje a las que está respondiendo. Asuntos del día: 1. Solicitud de ayuda. (Joss DJ) 2. Re: Solicitud de ayuda. (Marti Riera) 3. RE: Solicitud de ayuda. (Raul Villalobos) 4. Re: Solicitud de ayuda. (Joss DJ) -- Message: 1 Date: Tue, 27 Sep 2016 16:48:24 + From: Joss DJ <joss_1...@hotmail.com> Subject: Solicitud de ayuda. To: "forum.help400@listas.combios.es" <forum.help400@listas.combios.es> Message-ID: <blupr02mb390df32eb92088706cc722c97...@blupr02mb390.namprd02.prod.outlook.com> Content-Type: text/plain; charset="iso-8859-1" Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. próxima parte Se ha borrado un adjunto en formato HTML... URL: <http://listas.combios.es/cgi-bin/mailman/private/forum.help400/attachments/20160927/a97ab4ee/attachment-0001.html> -- Message: 2 Date: Tue, 27 Sep 2016 19:04:43 +0200 From: Marti Riera <marti.ri...@gmail.com> Subject: Re: Solicitud de ayuda. To: "forum.help400" <forum.help400@listas.combios.es> Message-ID:
Re: Solicitud de ayuda.
Hola Raúl, Marti Gracias por la información voy a revisar que ha sucedido en el sistema. Saludos Cordiales, José DJ. De: forum.help400-boun...@listas.combios.es <forum.help400-boun...@listas.combios.es> en nombre de Raul Villalobos <rvillalo...@bod.com.ve> Enviado: martes, 27 de septiembre de 2016 12:16 p. m. Para: forum.help400 Asunto: RE: Solicitud de ayuda. Saludos Estimado Jose, si tienes información sobre la recogida de información de espacio en discos, puedes ejecutar el siguiente script SQL para conocer el número de objetos y tamaño respectivo. Espero que sirva [cid:image001.png@01D1F22D.AA4E8DE0] . Leonardo Raùl Villalobos Lìder Tècnico Gerencia de Arquitectura de Soluciones Vicepresidencia Corporativa Socios Tecnologicos .. [cid:image004.jpg@01D1F22D.AA4E8DE0] (0261) 300 8628. Ext. 8628 [cid:image005.jpg@01D1F22D.AA4E8DE0] rvillalo...@bod.com.ve<mailto:rvillalo...@bod.com.ve> www.bod.com.ve<http://www.bod.com.ve> De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Joss DJ Enviado el: martes, 27 de septiembre de 2016 12:48 p.m. Para: forum.help400@listas.combios.es Asunto: Solicitud de ayuda. Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Solicitud de ayuda.
Saludos Estimado Jose, si tienes información sobre la recogida de información de espacio en discos, puedes ejecutar el siguiente script SQL para conocer el número de objetos y tamaño respectivo. Espero que sirva [cid:image001.png@01D1F22D.AA4E8DE0] . Leonardo Raùl Villalobos Lìder Tècnico Gerencia de Arquitectura de Soluciones Vicepresidencia Corporativa Socios Tecnologicos .. [cid:image004.jpg@01D1F22D.AA4E8DE0] (0261) 300 8628. Ext. 8628 [cid:image005.jpg@01D1F22D.AA4E8DE0] rvillalo...@bod.com.ve<mailto:rvillalo...@bod.com.ve> www.bod.com.ve<http://www.bod.com.ve> De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Joss DJ Enviado el: martes, 27 de septiembre de 2016 12:48 p.m. Para: forum.help400@listas.combios.es Asunto: Solicitud de ayuda. Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. Librerias por numero de objetos y tamaño.sql Description: Librerias por numero de objetos y tamaño.sql Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Solicitud de ayuda.
Hola, Puedes usar WRKACTJOB SEQ(*AUXIO) para ordenar por el trabajo que ha realizado mas I/O a disco y investigar para verificar si es asi. Tambien puedes activar las estadisticas de disco para tener información de la ocupación "normal" de las bibliotecas, mas info en: http://as400howto.blogspot.com.es/2009/11/estadisticas-espacio-en-disco.html Saludos Martí Riera 2016-09-27 18:48 GMT+02:00 Joss DJ: > Estimados buen día. > > > Solicito de favor su apoyo para saber que comando puedo utilizar para > identificar que proceso esta provocando que en el equipo iSeries este > llenando "virtualmente" la capacidad del disco. > > > Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% > system ASP used . . . :) y el equipo estaba apunto de colapsarse. > > > Ojala alguien me pueda ayudar de favor. > > > Gracias anticipadas por su apoyo. > > > Saludos Cordiales, > > José DJ. > > > Ú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.
Solicitud de ayuda.
Estimados buen día. Solicito de favor su apoyo para saber que comando puedo utilizar para identificar que proceso esta provocando que en el equipo iSeries este llenando "virtualmente" la capacidad del disco. Sucede que en 5 minutos aproximadamente subió de 37.020% a 98.015 (% system ASP used . . . :) y el equipo estaba apunto de colapsarse. Ojala alguien me pueda ayudar de favor. Gracias anticipadas por su apoyo. Saludos Cordiales, José DJ. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Solicitud de Ayuda Random de letras.
Gracias por la información. De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Alex Martínez Enviado el: lunes, 29 de agosto de 2016 11:08 Para: forum.help400 Asunto: Re: Solicitud de Ayuda Random de letras. La Api Qc3GenPRNs http://www-01.ibm.com/support/docview.wss?uid=nas8N1016809 http://iprodeveloper.com/site-files/iprodeveloper.com/files/archive/iprodeveloper.com/artarchiveimages/2006/may/20518-fig3.html El 29 de agosto de 2016, 10:42, Javier Mora <jm...@musgrave.es<mailto:jm...@musgrave.es>> escribió: ¿De qué otras opciones dispone el sistema? Gracias Alex, Javier Mora De: forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es> [mailto:forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es>] En nombre de Alex Martínez Enviado el: lunes, 29 de agosto de 2016 10:25 Para: forum.help400 Asunto: Re: Solicitud de Ayuda Random de letras. Cuidado con la API CEERAN0 que no es todo lo aleatoria que parece... sobre los 30.000 ciclos empieza hay colisiones (repeticiones) El 29 de agosto de 2016, 8:58, Javier Mora <jm...@musgrave.es<mailto:jm...@musgrave.es>> escribió: Yo utilizo algo tal que así: ‚ * == ‚ * = GENERACIÓN DE 50 CONTRASEÑAS ALEATORIAS DE LONGINTUD ENTRE = ‚ * = 5 Y 10 DIGITOS = ‚ * == H DftActGrp( *NO ) ActGrp( *NEW ) FQSYSPRT OF 132PRINTER OfLind( *INOF ) ‚D* Símbolos válidos para una contraseña D CHARC Const('ABCDEFGHIJKLMNOPQRSTUVWXYZ012- D 3456789') D RandNbrGenerator... D PR ExtProc( 'CEERAN0' ) D Seed10I 0 TypeInt D RndNbr0_18F TypeDouble D FbCode 12A Options( *NOPASS ) D RandNbrGenLim PR10I 0 D MinNbr 10I 0 Const D MaxNbr 10I 0 Const ‚D* Contraseña D idntS 10A ‚C* Variables de trabajo D idLen S 2S 0 Inz( 0 ) D j S Like( idLen ) D x S 5I 0 /Free Except HEAD3; For x = 1 To 50; idnt = *BLANKS; ‚ //-- ‚ // Generar la longitud de la contrseña (entr 5 y 10) ‚ //-- idLen = RandNbrGenLim( 5: 10 ); ‚ //-- ‚ // El primer carácter debe de ser alfabético ‚ //-- idnt = %Subst( CHAR : RandNbrGenLim( 1: %Size( CHAR ) - 10 ) : 1 ); ‚ //-- ‚ // Generar el resto de los caracteres de la contraseña ‚ //-- For j = 2 To idLen; %Subst( idnt: j: 1 ) = %Subst( CHAR : RandNbrGenLim( 1: %Size( CHAR ) ) : 1 ); EndFor; ‚ //-- ‚ // Imprimir la contraseña generada ‚ //-- Except DETL3; EndFor; *INLR = *ON; /End-Free ‚ * == ‚ * = Impresión de las contraseñas generadas = ‚ * == OQSYSPRT EHEAD3 2 O 30 'GENERADOR DE CO' O+ 0 'TRASEÑAS' O EDETL3 1 O idnt30 ‚ * == ‚ * = Generar número aleaterio dentro de unos límites= ‚ * == P RandNbrGenLim... P B D PI10I 0 D MinNbr 10I 0 Const D MaxNbr 10I 0 Const D semilla S 10I 0 Static D Inz( 0 ) D nprime
Re: Solicitud de Ayuda Random de letras.
La Api Qc3GenPRNs http://www-01.ibm.com/support/docview.wss?uid=nas8N1016809 http://iprodeveloper.com/site-files/iprodeveloper.com/files/archive/iprodeveloper.com/artarchiveimages/2006/may/20518-fig3.html El 29 de agosto de 2016, 10:42, Javier Mora <jm...@musgrave.es> escribió: > ¿De qué otras opciones dispone el sistema? > > > > Gracias Alex, > > > > Javier Mora > > > > *De:* forum.help400-boun...@listas.combios.es [mailto: > forum.help400-boun...@listas.combios.es] *En nombre de *Alex Martínez > *Enviado el:* lunes, 29 de agosto de 2016 10:25 > *Para:* forum.help400 > *Asunto:* Re: Solicitud de Ayuda Random de letras. > > > > Cuidado con la API CEERAN0 que no es todo lo aleatoria que parece... sobre > los 30.000 ciclos empieza hay colisiones (repeticiones) > > > > > > El 29 de agosto de 2016, 8:58, Javier Mora <jm...@musgrave.es> escribió: > > Yo utilizo algo tal que así: > > > > ‚ * == > > ‚ * = GENERACIÓN DE 50 CONTRASEÑAS ALEATORIAS DE LONGINTUD ENTRE = > > ‚ * = 5 Y 10 DIGITOS = > > ‚ * == > > > > H DftActGrp( *NO ) ActGrp( *NEW ) > > > > FQSYSPRT OF 132PRINTER OfLind( *INOF ) > > > > ‚D* Símbolos válidos para una contraseña > > D CHARC Const(' > ABCDEFGHIJKLMNOPQRSTUVWXYZ012- > > D 3456789') > > > > D RandNbrGenerator... > > D PR ExtProc( 'CEERAN0' ) > > D Seed10I 0 > TypeInt > > D RndNbr0_18F > TypeDouble > > D FbCode 12A Options( *NOPASS ) > > > > D RandNbrGenLim PR10I 0 > > D MinNbr 10I 0 Const > > D MaxNbr 10I 0 Const > > > > ‚D* Contraseña > > D idntS 10A > > > > ‚C* Variables de trabajo > > D idLen S 2S 0 Inz( 0 ) > > D j S Like( idLen ) > > D x S 5I 0 > > > > /Free > >Except HEAD3; > > > >For x = 1 To 50; > > > > idnt = *BLANKS; > > > > ‚ //-- > > ‚ // Generar la longitud de la contrseña (entr 5 y 10) > > ‚ //-- > > idLen = RandNbrGenLim( 5: 10 ); > > > > ‚ //-- > > ‚ // El primer carácter debe de ser alfabético > > ‚ //-- > > idnt = %Subst( CHAR > > : RandNbrGenLim( 1: %Size( CHAR ) - 10 ) > > : 1 ); > > > > ‚ //-- > > ‚ // Generar el resto de los caracteres de la contraseña > > ‚ //-- > > For j = 2 To idLen; > > %Subst( idnt: j: 1 ) = %Subst( CHAR > > : RandNbrGenLim( 1: %Size( CHAR ) ) > > : 1 ); > > EndFor; > > > > ‚ //-- > > ‚ // Imprimir la contraseña generada > > ‚ //-- > > Except DETL3; > > > >EndFor; > > > >*INLR = *ON; > > /End-Free > > > > ‚ * == > > ‚ * = Impresión de las contraseñas generadas = > > ‚ * == > > > > OQSYSPRT EHEAD3 2 > > O 30 'GENERADOR DE CO' > > O+ 0 'TRASEÑAS' > > O EDETL3 1 > > O idnt30 > > > > ‚ * == >
RE: Solicitud de Ayuda Random de letras.
¿De qué otras opciones dispone el sistema? Gracias Alex, Javier Mora De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Alex Martínez Enviado el: lunes, 29 de agosto de 2016 10:25 Para: forum.help400 Asunto: Re: Solicitud de Ayuda Random de letras. Cuidado con la API CEERAN0 que no es todo lo aleatoria que parece... sobre los 30.000 ciclos empieza hay colisiones (repeticiones) El 29 de agosto de 2016, 8:58, Javier Mora <jm...@musgrave.es<mailto:jm...@musgrave.es>> escribió: Yo utilizo algo tal que así: ‚ * == ‚ * = GENERACIÓN DE 50 CONTRASEÑAS ALEATORIAS DE LONGINTUD ENTRE = ‚ * = 5 Y 10 DIGITOS = ‚ * == H DftActGrp( *NO ) ActGrp( *NEW ) FQSYSPRT OF 132PRINTER OfLind( *INOF ) ‚D* Símbolos válidos para una contraseña D CHARC Const('ABCDEFGHIJKLMNOPQRSTUVWXYZ012- D 3456789') D RandNbrGenerator... D PR ExtProc( 'CEERAN0' ) D Seed10I 0 TypeInt D RndNbr0_18F TypeDouble D FbCode 12A Options( *NOPASS ) D RandNbrGenLim PR10I 0 D MinNbr 10I 0 Const D MaxNbr 10I 0 Const ‚D* Contraseña D idntS 10A ‚C* Variables de trabajo D idLen S 2S 0 Inz( 0 ) D j S Like( idLen ) D x S 5I 0 /Free Except HEAD3; For x = 1 To 50; idnt = *BLANKS; ‚ //-- ‚ // Generar la longitud de la contrseña (entr 5 y 10) ‚ //-- idLen = RandNbrGenLim( 5: 10 ); ‚ //-- ‚ // El primer carácter debe de ser alfabético ‚ //-- idnt = %Subst( CHAR : RandNbrGenLim( 1: %Size( CHAR ) - 10 ) : 1 ); ‚ //-- ‚ // Generar el resto de los caracteres de la contraseña ‚ //-- For j = 2 To idLen; %Subst( idnt: j: 1 ) = %Subst( CHAR : RandNbrGenLim( 1: %Size( CHAR ) ) : 1 ); EndFor; ‚ //-- ‚ // Imprimir la contraseña generada ‚ //-- Except DETL3; EndFor; *INLR = *ON; /End-Free ‚ * == ‚ * = Impresión de las contraseñas generadas = ‚ * == OQSYSPRT EHEAD3 2 O 30 'GENERADOR DE CO' O+ 0 'TRASEÑAS' O EDETL3 1 O idnt30 ‚ * == ‚ * = Generar número aleaterio dentro de unos límites= ‚ * == P RandNbrGenLim... P B D PI10I 0 D MinNbr 10I 0 Const D MaxNbr 10I 0 Const D semilla S 10I 0 Static D Inz( 0 ) D nprime S Like( MaxNbr ) D num0_1 S 8F Inz( 0 ) /Free nprime = MaxNbr - MinNbr + 1; RandNbrGenerator( semilla: num0_1 ); Return ( %Int( num0_1 * nprime ) + MinNbr ); /End-Free P RandNbrGenLim... P E De: forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es> [mailto:forum.help400-boun...@listas.combios.es<mailto:forum.help400-boun...@listas.combios.es>] En nombre de Joss DJ Enviado el: viernes, 26 de agosto de 2016 21:24 Para: forum.help400@listas.combios.es<mailto:forum.help400@listas.combios.es> Asunto: Solicitud de Ayuda Random
RE: Solicitud de Ayuda Random de letras.
Yo utilizo algo tal que así: ' * == ' * = GENERACIÓN DE 50 CONTRASEÑAS ALEATORIAS DE LONGINTUD ENTRE = ' * = 5 Y 10 DIGITOS = ' * == H DftActGrp( *NO ) ActGrp( *NEW ) FQSYSPRT OF 132PRINTER OfLind( *INOF ) 'D* Símbolos válidos para una contraseña D CHARC Const('ABCDEFGHIJKLMNOPQRSTUVWXYZ012- D 3456789') D RandNbrGenerator... D PR ExtProc( 'CEERAN0' ) D Seed10I 0 TypeInt D RndNbr0_18F TypeDouble D FbCode 12A Options( *NOPASS ) D RandNbrGenLim PR10I 0 D MinNbr 10I 0 Const D MaxNbr 10I 0 Const 'D* Contraseña D idntS 10A 'C* Variables de trabajo D idLen S 2S 0 Inz( 0 ) D j S Like( idLen ) D x S 5I 0 /Free Except HEAD3; For x = 1 To 50; idnt = *BLANKS; ' //-- ' // Generar la longitud de la contrseña (entr 5 y 10) ' //-- idLen = RandNbrGenLim( 5: 10 ); ' //-- ' // El primer carácter debe de ser alfabético ' //-- idnt = %Subst( CHAR : RandNbrGenLim( 1: %Size( CHAR ) - 10 ) : 1 ); ' //-- ' // Generar el resto de los caracteres de la contraseña ' //-- For j = 2 To idLen; %Subst( idnt: j: 1 ) = %Subst( CHAR : RandNbrGenLim( 1: %Size( CHAR ) ) : 1 ); EndFor; ' //-- ' // Imprimir la contraseña generada ' //-- Except DETL3; EndFor; *INLR = *ON; /End-Free ' * == ' * = Impresión de las contraseñas generadas = ' * == OQSYSPRT EHEAD3 2 O 30 'GENERADOR DE CO' O+ 0 'TRASEÑAS' O EDETL3 1 O idnt30 ' * == ' * = Generar número aleaterio dentro de unos límites= ' * == P RandNbrGenLim... P B D PI10I 0 D MinNbr 10I 0 Const D MaxNbr 10I 0 Const D semilla S 10I 0 Static D Inz( 0 ) D nprime S Like( MaxNbr ) D num0_1 S 8F Inz( 0 ) /Free nprime = MaxNbr - MinNbr + 1; RandNbrGenerator( semilla: num0_1 ); Return ( %Int( num0_1 * nprime ) + MinNbr ); /End-Free P RandNbrGenLim... P E De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Joss DJ Enviado el: viernes, 26 de agosto de 2016 21:24 Para: forum.help400@listas.combios.es Asunto: Solicitud de Ayuda Random de letras. Estimados, buena tarde. Solicito de favor su amable ayuda, por necesidades de trabajo tengo que generar en un proceso una contraseña con letras aleatorias (random) del abecedario, alguien tiene una rutina que me pueda enviar para revisar como se puede hacer ya que desconozco como lo podría hacer. Gracias anticipadas por su valioso apoyo. Saludos Cordiales, José De Jesús. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Solicitud de Ayuda Random de letras.
Hola Bernabe, muchas gracias por tu apoyo, voy a revisarlo y cualquier duda te lo haré saber. Saludos Cordiales, José Z. De: forum.help400-boun...@listas.combios.es <forum.help400-boun...@listas.combios.es> en nombre de Bernabé Estrada <bernabe.estr...@gmail.com> Enviado: viernes, 26 de agosto de 2016 03:38 p. m. Para: forum.help400 Asunto: Re: Solicitud de Ayuda Random de letras. Hay muchas formas, pero tu consulta me dio algo de nostalgia, así que te copio un pequeño programa en RPG ii que te devuelve un numero aleatorio el cual podrías usar para encontrar una letra dentro del abecedario. (lo podes convertir a free jejeje) C *ENTRYPLIST C PARM RANNBR 90 C PARM LOVAL 90 C PARM HIVAL 90 C PARM PGMEND 4 C PARM STRVAL 90 C LOVAL IFLT 0 C SETON H1 C GOTO BADEND C END C HIVAL IFLE LOVAL C SETON H2 C END C PGMENDIFNE '*YES' C PGMENDANDNE'*NO ' C SETON H3 C GOTO BADEND C END C FSTTIMIFEQ ' ' C TIME TIME60 C Z-ADDTIME BGNVAL 90 C PGMENDIFEQ '*YES' C HIVAL SUB LOVAL NBR1 C NBR1 IFLE 1 C MOVE TIME DEC110 C 1 ADD NBR1 RANGE 30 C Z-ADDDEC1 RANNBR C NBR1LPTAG C RANNBRIFGE RANGE C SUB RANGE RANNBR C GOTO NBR1LP C END C ADD LOVAL RANNBR C GOTO ENDPGM C END C END C STRVALIFEQ 0 C ELSE C Z-ADDSTRVALBGNVAL C END C MOVE 31415 PI 54 C BGNVALMULT PINBR190 C MOVE 'X' FSTTIM 1 C END C HIVAL SUB LOVAL MAX134 C ADD 1 MAX C SUB DECVALMAX C MOVE 314159265 PI2 98 C NBR1 MULT PI2 NBR2 157 C NBR2 DIV 17NBR3 154 C Z-ADDNBR3 NBR4 153 C MOVE NBR4 DEC444 C PGMENDIFEQ '*YES' C MOVE NBR3 DEC553 C ADD DEC5 NBR4 C END C MOVE DEC4 DECVAL 66 C MOVE NBR4 NBR590 C NBR5 DIV MAX NBR6 150 C MVRRANNBR 90 C ADD LOVAL RANNBR C ENDPGMTAG C PGMENDIFEQ '*NO ' C MOVE NBR2 WRK1 101 C ADD WRK1 NBR1 C MOVE NBR3 WRK2 112 C ADD WRK2 NBR1 C ELSE C SETON LR C END C RETRN C BADENDTAG Y una CL que te puede servir para entender como ejecutarlo. PGM DCLVAR() TYPE(*DEC) LEN(9 0) DCLVAR() TYPE(*DEC) LEN(9 0) VALUE(1) DCLVAR() TYPE(*DEC) LEN(9 0) VALUE(29) DCLVAR() TYPE(*CHAR) LEN(4) VALUE('*NO ') DCLVAR() TYPE(*DEC) LEN(9 0) VALUE(1) DCLVAR() TYPE(*CHAR) LEN(9) CALL PGM(GENRANNBR) PARM( + ) CHGVAR VAR() VALUE() SNDPGMMSG MSG() ENDPGM El 26 de agosto de 2016, 13:24, Joss DJ <joss_1...@hotmail.com<mailto:joss_1...@hotmail.com>> escribió: Estimados, buena tarde. Solicito de favor su amable ayuda, por necesidades de trabajo tengo que generar en un proceso una contraseña con letras aleatorias (random) del abecedario, alguien tiene una rutina que me pueda enviar para revisar como se puede hacer ya que desconozco como lo podría hacer. Gracias anticipadas por su valioso apoyo. Saludos Cordiales, José De Jesús. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L. __
Re: Solicitud de Ayuda Random de letras.
Hay muchas formas, pero tu consulta me dio algo de nostalgia, así que te copio un pequeño programa en RPG ii que te devuelve un numero aleatorio el cual podrías usar para encontrar una letra dentro del abecedario. (lo podes convertir a free jejeje) C *ENTRYPLIST C PARM RANNBR 90 C PARM LOVAL 90 C PARM HIVAL 90 C PARM PGMEND 4 C PARM STRVAL 90 C LOVAL IFLT 0 C SETON H1 C GOTO BADEND C END C HIVAL IFLE LOVAL C SETON H2 C END C PGMENDIFNE '*YES' C PGMENDANDNE'*NO ' C SETON H3 C GOTO BADEND C END C FSTTIMIFEQ ' ' C TIME TIME60 C Z-ADDTIME BGNVAL 90 C PGMENDIFEQ '*YES' C HIVAL SUB LOVAL NBR1 C NBR1 IFLE 1 C MOVE TIME DEC110 C 1 ADD NBR1 RANGE 30 C Z-ADDDEC1 RANNBR C NBR1LPTAG C RANNBRIFGE RANGE C SUB RANGE RANNBR C GOTO NBR1LP C END C ADD LOVAL RANNBR C GOTO ENDPGM C END C END C STRVALIFEQ 0 C ELSE C Z-ADDSTRVALBGNVAL C END C MOVE 31415 PI 54 C BGNVALMULT PINBR190 C MOVE 'X' FSTTIM 1 C END C HIVAL SUB LOVAL MAX134 C ADD 1 MAX C SUB DECVALMAX C MOVE 314159265 PI2 98 C NBR1 MULT PI2 NBR2 157 C NBR2 DIV 17NBR3 154 C Z-ADDNBR3 NBR4 153 C MOVE NBR4 DEC444 C PGMENDIFEQ '*YES' C MOVE NBR3 DEC553 C ADD DEC5 NBR4 C END C MOVE DEC4 DECVAL 66 C MOVE NBR4 NBR590 C NBR5 DIV MAX NBR6 150 C MVRRANNBR 90 C ADD LOVAL RANNBR C ENDPGMTAG C PGMENDIFEQ '*NO ' C MOVE NBR2 WRK1 101 C ADD WRK1 NBR1 C MOVE NBR3 WRK2 112 C ADD WRK2 NBR1 C ELSE C SETON LR C END C RETRN C BADENDTAG Y una CL que te puede servir para entender como ejecutarlo. PGM DCLVAR() TYPE(*DEC) LEN(9 0) DCLVAR() TYPE(*DEC) LEN(9 0) VALUE(1) DCLVAR() TYPE(*DEC) LEN(9 0) VALUE(29) DCLVAR() TYPE(*CHAR) LEN(4) VALUE('*NO ') DCLVAR() TYPE(*DEC) LEN(9 0) VALUE(1) DCLVAR() TYPE(*CHAR) LEN(9) CALL PGM(GENRANNBR) PARM( + ) CHGVAR VAR() VALUE() SNDPGMMSG MSG() ENDPGM El 26 de agosto de 2016, 13:24, Joss DJ <joss_1...@hotmail.com> escribió: > Estimados, buena tarde. > > > Solicito de favor su amable ayuda, por necesidades de trabajo tengo que > generar en un proceso una contraseña con letras aleatorias (random) del > abecedario, alguien tiene una rutina que me pueda enviar para revisar como > se puede hacer ya que desconozco como lo podría hacer. > > > Gracias anticipadas por su valioso apoyo. > > > Saludos Cordiales, > > José De Jesús. > > > Ú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.
Solicitud de Ayuda Random de letras.
Estimados, buena tarde. Solicito de favor su amable ayuda, por necesidades de trabajo tengo que generar en un proceso una contraseña con letras aleatorias (random) del abecedario, alguien tiene una rutina que me pueda enviar para revisar como se puede hacer ya que desconozco como lo podría hacer. Gracias anticipadas por su valioso apoyo. Saludos Cordiales, José De Jesús. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
ayuda
Buen día, apelando a la buena fe y la buena voluntad que siempre conservan todos los foreros solicito me puedan apoyar con el siguiente caso resulta que tenia la versión 5.4 en un AS/400 y migramos a una versión 7.1, pero desde que migramos todos los programas que están desarrollados en JAVA nos están dando errores de que al momento de un problema de comunicaciones nos consume el CPU en un porcentaje bastante grande, alguien me puede apoyar se los agradeceré grandemente. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Ayuda!
Hola Foro buen día. Solicito de favor su valioso apoyo para ver si alguien me puede apoyar diciendome como enviar Parámetros en el comando STRPCCMD adicionalmente a la ruta que se envia. De antemano Gracias por su apoyo. Saludos Cordiales, José De Jesús. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Ayuda!
Start PC Command (STRPCCMD)*Where allowed to run:* - Interactive job (*INTERACT) - Interactive program (*IPGM) - Using QCMDEXEC, QCAEXEC, or QCAPCMD API (*EXEC) *Threadsafe:* NoParametershttp://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.PARAMETERS.TABLE Exampleshttp://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.COMMAND.EXAMPLES Error messageshttp://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.ERROR.MESSAGES The Start PC Command (STRPCCMD) command allows you to run a single application, a DOS command, or an OS/2 command on an attached personal computer. *Note:* Do not precede an entry with an asterisk unless that entry is a special value that is shown (on the display itself or in the help information) with an asterisk. Error messages for STRPCCMD None Tophttp://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.Top_Of_Page -- ParametersKeywordDescriptionChoicesNotes*PCCMD*http://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.PCCMDPC command*Character value*Required, Positional 1*PAUSE*http://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.PAUSE Pause**YES*, *NOOptionalTophttp://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.Top_Of_Page PC command (PCCMD) Specifies the valid DOS command, OS/2 command, or personal computer application you want to run. If you are using the STRPCCMD command on a command line and the command or application name contains special characters, you must enclose the command in apostrophes. Special characters include blanks, commas, and colons. If you select the option to start a PC command from the System i Access Organizer menu, you do not need to enclose the command in apostrophes unless it ends in a colon. The ending colon is ignored unless the entire PC command is enclosed in apostrophes. This is a required parameter. Tophttp://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.Top_Of_Page Pause (PAUSE) Specifies whether the computer should pause after running a command. The possible values are: **YES*The computer will pause after running the command before returning to the System i Access Organizer menu.**NO*The computer returns immediately to the System i Access Organizer menu after the command runs. Tophttp://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/cl/strpccmd.htm?resultof=%22%53%54%52%50%43%43%4d%44%22%20%22%73%74%72%70%63%63%6d%64%22%20#STRPCCMD.Top_Of_Page -- El 26 de febrero de 2014, 10:41, Joss DJ joss_1...@hotmail.com escribió: Hola Foro buen día. Solicito de favor su valioso apoyo para ver si alguien me puede apoyar diciendome como enviar Parámetros en el comando STRPCCMD adicionalmente a la ruta que se envia. De antemano Gracias por su apoyo. Saludos Cordiales, José De Jesús. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 (c) Publicaciones Help400, S.L. -- *Jorge Arturo Pèrez Osorio.* . There are 10 types of people in the world. Those who understand binary, and those who don't. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Ayuda!
Gracias a todos por su apoyo! Haré lo que me indican y haré las pruebas respectivas. Saludos, José DJ. Date: Wed, 26 Feb 2014 19:58:20 +0100 Subject: Re: Ayuda! From: rbasco...@gmail.com To: forum.help400@listas.combios.es Todo depende del programa al que llames y como esté implementado. Un ejemplo sencillo: /*/ PGM (NFACT) DCL NFACT*CHAR 13 /* NUM. FACTURA */ DCL MDTOPC *CHAR 132 'C:\ARCHIV~1\CONSULTA ' STRPCO MONMSG (IWS4010 IWS4032) CHGVAR MDTOPC (MDTOPC | NFACT) STRPCCMD PCCMD(MDTOPC)ENDPGM /*/ Espero que sirva. Un saludo El 26 de febrero de 2014, 16:41, Joss DJ joss_1...@hotmail.com escribió: Hola Foro buen día. Solicito de favor su valioso apoyo para ver si alguien me puede apoyar diciendome como enviar Parámetros en el comando STRPCCMD adicionalmente a la ruta que se envia. De antemano Gracias por su apoyo. Saludos Cordiales, José De Jesús. Ú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.
Archivo de Ayuda con F1
Hola buenos días, Tengo el siguiente problema, necesito meter unos ficheros de ayuda a unos programas y ando muy pez en ello. He credo un formato de pantalla, pero no me cabe todo lo que hay que escribir en el y necesitaria paginar para poder escribir mucha mas ayuda, pero no soy capaz, alguno de ustedes sabe como hacerlo?? Si alguien tuviese algún manual de como añadir las ayudas se lo agradecería. Cuando estamos en cualquier menú del OS/400, si pulsamos F1, nos aparece una ayuda del AS400, en el se puede paginar y no tiene al parecer limite de paginas. Si alguien supiera como se hace esa ayuda o tuviese un manual se lo agradecería muchisimo. gracias anticipadas por vuestra ayuda. un saludo Miguel Ilundain Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Archivo de Ayuda con F1
Hola, La ayuda de los mandatos esta hecha con panel groups, en principio no es dificil su creación,necesita un poco de aprendizaje y ganas. Mas info: http://publib.boulder.ibm.com/iseries/v5r1/ic2924/books/sc41-5715-00-9.html http://publib.boulder.ibm.com/iseries/v5r2/ic2924/books/c4157150.pdf http://go4as400.com/chapterload.aspx?cid=50 Suerte ! Martí Riera 2014-02-09 12:05 GMT+01:00 webaccess as400acc...@gmail.com: Hola buenos días, Tengo el siguiente problema, necesito meter unos ficheros de ayuda a unos programas y ando muy pez en ello. He credo un formato de pantalla, pero no me cabe todo lo que hay que escribir en el y necesitaria paginar para poder escribir mucha mas ayuda, pero no soy capaz, alguno de ustedes sabe como hacerlo?? Si alguien tuviese algún manual de como añadir las ayudas se lo agradecería. Cuando estamos en cualquier menú del OS/400, si pulsamos F1, nos aparece una ayuda del AS400, en el se puede paginar y no tiene al parecer limite de paginas. Si alguien supiera como se hace esa ayuda o tuviese un manual se lo agradecería muchisimo. gracias anticipadas por vuestra ayuda. un saludo Miguel Ilundain Ú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.
Re: Archivo de Ayuda con F1
Hola hay varios mensaje en el archivo del foro sobre el tema https://www.mail-archive.com/forum.help400@listas.combios.es/msg03463.html El 9 de febrero de 2014, 12:05, webaccess as400acc...@gmail.com escribió: Hola buenos días, Tengo el siguiente problema, necesito meter unos ficheros de ayuda a unos programas y ando muy pez en ello. He credo un formato de pantalla, pero no me cabe todo lo que hay que escribir en el y necesitaria paginar para poder escribir mucha mas ayuda, pero no soy capaz, alguno de ustedes sabe como hacerlo?? Si alguien tuviese algún manual de como añadir las ayudas se lo agradecería. Cuando estamos en cualquier menú del OS/400, si pulsamos F1, nos aparece una ayuda del AS400, en el se puede paginar y no tiene al parecer limite de paginas. Si alguien supiera como se hace esa ayuda o tuviese un manual se lo agradecería muchisimo. gracias anticipadas por vuestra ayuda. un saludo Miguel Ilundain Ú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.
Ayuda CHANGE SFL
Buenas tardes.. Una ayuda por favor cómo se hace en un programa rpgle para realizar un CHANGE a un sfl a través de un campo diferente al RRN.. me explico .. tengo un programa que debe hacer actualización de algunos valores, pero necesito validar directamente en el subfile que el valor (Ej.. nombre o cédula) no hayan sido ya digitados...como siempre MIL GRACIAS por su ayuda.. que cada vez que la solicito..siempre alguien de este grupo me colabora Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Ayuda CHANGE SFL
Hola. No sé si te he entendido, pero creo que quieres acceder a un registro modificado de un subfichero, no? Puedes acceder por Nrr, o por Readc. Supongo que te refieres al Readc, que te devuelve todos los datos de cada registro modificado. Esto es el típico subfichero que tiene un campo de selección(en este caso Sf2opc) con op5=ver detalles : Readc Datos2; Dow not %Eof; If Sf2opc='5'; Exsr accion; Clear Sf2opc; UPDATE DATOS2; Endif; Readc Datos2; Enddo; Pero yo tendría en cuenta también el acceso por NRR, porque hay casos para los que el READC no te servirá, o no te funcionará del todo bien. For Nrr=1 to @total_reg; chain Nrr If Sf2opc='5' Exsr accion; endfor; De: Luz Nelly Zapata nelly.zap...@olimpiait.com Para: forum.help400 [forum.help400@listas.combios.es] forum.help400@listas.combios.es Fecha: 12/11/2013 18:24 Asunto: Ayuda CHANGE SFL Buenas tardes.. Una ayuda por favor cómo se hace en un programa rpgle para realizar un CHANGE a un sfl a través de un campo diferente al RRN.. me explico .. tengo un programa que debe hacer actualización de algunos valores, pero necesito validar directamente en el subfile que el valor (Ej.. nombre o cédula) no hayan sido ya digitados...como siempre MIL GRACIAS por su ayuda.. que cada vez que la solicito..siempre alguien de este grupo me colabora Ú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.
Re: Ayuda nombre archivo IFS
Buenos días. No sé si te he entendido bien. Supongo que SOLO HAY UN ARCHIVO en esa carpeta. Yo necesito hacer indices de carpetas del IFS continuamente para enlazar datos con programas de consultas del ISeries. No sé si tiene que ver con lo que solicitas. Te 'pego' un ejemplo: PGM CLRPFM FILE(DIRLIQU2) QSH CMD('LS ARSYS/BKLIQUIDACIONES QSYS.LIB/EURLIB.LIB/DIRLIQU2.- FILE/DIRLIQU2.MBR') CLRPFM FILE(LIQUIPDF) CALL PGM(EGSLIB/LIQU03) ENDPGM Supogo que se entiende la idea. Vuelco el 'dir' (en güindos, en SQH 'Ls') sobre un fichero del 400 y luego creo el indice leyedo el contenido. Claro que si tienes un gran número de ficheros en la carpeta deberías crearlos con algún tipo de codificación en el nombre para poder localizarlos luego (así lo hago yo). Ejemplo: L_11427_310513_PRESUPUESTO.PDF L_11427_310513_RESUMEN_GASTOS.PDF L_11430_311012_COEFICIENTES.PDF L_11430_311012_DET_INGRESOS.PDF Espero que te valga. Saludos a todos. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Ayuda nombre archivo IFS
Hola a todos Os recomiendo el libro Working with the IFS in RPG IV de Scott Klement que incluye ejemplos para todo lo relacionado con el manejo de archivos en el IFS http://www.scottklement.com/rpg/ifs_ebook/ifs_ebook.pdf Salu2 El 22 de agosto de 2013 17:31, Luz Nelly Zapata nelly.zap...@olimpiait.comescribió: Buenos días.. Agradecería mucho si alguien sabe cuál es el comando para saber cuál es el nombre del archivo que se encuentra en una carpeta del IFS 400 Me explico.. con DSPLNK si me se el nombre, con el MONMSG MSGID(CPFA0A9) se si el archivo existe o no existe, pero como no me se el nombre porque puede ser variable, necesito saber como se lee una carpeta de Ifs y colocar en una variable del programa el nombre del archivo que allí encuentre Muchas gracias Ú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.
Re: Ayuda nombre archivo IFS
Gracias Alex. La verdad es que lo que yo había propuesto lo hice hace mil años. Pero como me funciona... Me bajaré el manual. Saludos. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Ayuda nombre archivo IFS
Hola foreros Lo que he entdendido es leer el contenido de una carperta IFS y utilizar la información de los nombres recuperados. Si es correcto lo que se puede hacer es utilizar en un programa RPGLE en formato free las instrucciones para trabajar en el IFS: Abrir Directorio: opendir Leer Directorio: readdir Jaime López Bogotá, Colombia Date: Fri, 23 Aug 2013 13:05:11 +0200 Subject: Re: Ayuda nombre archivo IFS From: rdej...@gmail.com To: forum.help400@listas.combios.es Gracias Alex. La verdad es que lo que yo había propuesto lo hice hace mil años. Pero como me funciona... Me bajaré el manual. Saludos. �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.
RE: Ayuda nombre archivo IFS
Jaime Esa es la mejor opción, el tema está en si maneja Rpg free format algo que algunos manejan en forma parcial, coincido contigo pues lo manejo puro Saludos On Aug 23, 2013 11:23 AM, JAIME LOPEZ jlopez...@hotmail.com wrote: Hola foreros Lo que he entdendido es leer el contenido de una carperta IFS y utilizar la información de los nombres recuperados. Si es correcto lo que se puede hacer es utilizar en un programa RPGLE en formato free las instrucciones para trabajar en el IFS: Abrir Directorio: opendir Leer Directorio: readdir Jaime López Bogotá, Colombia -- Date: Fri, 23 Aug 2013 13:05:11 +0200 Subject: Re: Ayuda nombre archivo IFS From: rdej...@gmail.com To: forum.help400@listas.combios.es Gracias Alex. La verdad es que lo que yo había propuesto lo hice hace mil años. Pero como me funciona... Me bajaré el manual. Saludos. �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.
Ayuda nombre archivo IFS
Buenos días.. Agradecería mucho si alguien sabe cuál es el comando para saber cuál es el nombre del archivo que se encuentra en una carpeta del IFS 400 Me explico.. con DSPLNK si me se el nombre, con el MONMSG MSGID(CPFA0A9) se si el archivo existe o no existe, pero como no me se el nombre porque puede ser variable, necesito saber como se lee una carpeta de Ifs y colocar en una variable del programa el nombre del archivo que allí encuentre Muchas gracias Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Ayuda nombre archivo IFS
Nelly El conando wrklnk te permite trabajar con directorio IFS la opcion 3 o 5 te permite ver el contenido de cada folder IFS On Aug 22, 2013 12:34 PM, Luz Nelly Zapata nelly.zap...@olimpiait.com wrote: Buenos días.. Agradecería mucho si alguien sabe cuál es el comando para saber cuál es el nombre del archivo que se encuentra en una carpeta del IFS 400 Me explico.. con DSPLNK si me se el nombre, con el MONMSG MSGID(CPFA0A9) se si el archivo existe o no existe, pero como no me se el nombre porque puede ser variable, necesito saber como se lee una carpeta de Ifs y colocar en una variable del programa el nombre del archivo que allí encuentre Muchas gracias Ú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.
RE: Ayuda nombre archivo IFS
Sergio muchas gracias.. El tema es que necesito que colocar en una variable de programa el nombre que encuentre, no puedo mostrar al usuario la pantalla que genera el comando WRKLNK.. De: forum.help400-boun...@listas.combios.es [forum.help400-boun...@listas.combios.es] en nombre de Sergio Luis Puentes-Valladares [spuen...@gmail.com] Enviado el: jueves, 22 de agosto de 2013 10:37 a.m. Para: forum.help400 Asunto: Re: Ayuda nombre archivo IFS Nelly El conando wrklnk te permite trabajar con directorio IFS la opcion 3 o 5 te permite ver el contenido de cada folder IFS On Aug 22, 2013 12:34 PM, Luz Nelly Zapata nelly.zap...@olimpiait.commailto:nelly.zap...@olimpiait.com wrote: Buenos días.. Agradecería mucho si alguien sabe cuál es el comando para saber cuál es el nombre del archivo que se encuentra en una carpeta del IFS 400 Me explico.. con DSPLNK si me se el nombre, con el MONMSG MSGID(CPFA0A9) se si el archivo existe o no existe, pero como no me se el nombre porque puede ser variable, necesito saber como se lee una carpeta de Ifs y colocar en una variable del programa el nombre del archivo que allí encuentre Muchas gracias Ú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.
RE: Ayuda nombre archivo IFS
Nelly Hay comandos a nivel de cl que te permiten recuperar el contenido, digamos que son qshell, busca literatura en Internet y estas Saludos On Aug 22, 2013 12:49 PM, Luz Nelly Zapata nelly.zap...@olimpiait.com wrote: Sergio muchas gracias.. El tema es que necesito que colocar en una variable de programa el nombre que encuentre, no puedo mostrar al usuario la pantalla que genera el comando WRKLNK.. -- *De:* forum.help400-boun...@listas.combios.es [ forum.help400-boun...@listas.combios.es] en nombre de Sergio Luis Puentes-Valladares [spuen...@gmail.com] *Enviado el:* jueves, 22 de agosto de 2013 10:37 a.m. *Para:* forum.help400 *Asunto:* Re: Ayuda nombre archivo IFS Nelly El conando wrklnk te permite trabajar con directorio IFS la opcion 3 o 5 te permite ver el contenido de cada folder IFS On Aug 22, 2013 12:34 PM, Luz Nelly Zapata nelly.zap...@olimpiait.com wrote: Buenos días.. Agradecería mucho si alguien sabe cuál es el comando para saber cuál es el nombre del archivo que se encuentra en una carpeta del IFS 400 Me explico.. con DSPLNK si me se el nombre, con el MONMSG MSGID(CPFA0A9) se si el archivo existe o no existe, pero como no me se el nombre porque puede ser variable, necesito saber como se lee una carpeta de Ifs y colocar en una variable del programa el nombre del archivo que allí encuentre Muchas gracias Ú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.
Re: Ayuda nombre archivo IFS
Hola Te refieres a que quieres acceder a ver los archivos que tienes en una carpeta, y hacer algo con ellos? A ver si te sirve este trozo de código. como verás, tengo creado un fichero(listafi) en el cual voy guardando todos los nombres que se generan al hacer el Ls de la carpeta. QSHCMD('ls /carpeta/ + qsys.lib/milib.lib/listafi.file/listafi.mbr') DowhileCOND(*Not Eof) RCVF MONMSG MSGID(CPF0864) EXEC(CHGVAR VAR(EOF) + VALUE('1')) If (*Not Eof) Do CHGVAR VAR(NOMFIC) VALUE(%SST(LISTAFI 1 25)) CALL PGM(Programa que hace cosas) parm(nomfic existeix) IF COND(EXISTEIX) THEN(DO) CHGVAR VAR(MSG) VALUE('El fichero ' *cat Nomfic *cat 'no + se procesará porque ya existe en el + sistema. Si quiere procesarlo, debe + cambiarle el nombre') SNDBRKMSG MSG(MSG) TOMSGQ(WS) Enddo De: Luz Nelly Zapata nelly.zap...@olimpiait.com Para: forum.help400 [forum.help400@listas.combios.es] forum.help400@listas.combios.es Fecha: 22/08/2013 17:38 Asunto: Ayuda nombre archivo IFS Buenos días.. Agradecería mucho si alguien sabe cuál es el comando para saber cuál es el nombre del archivo que se encuentra en una carpeta del IFS 400 Me explico.. con DSPLNK si me se el nombre, con el MONMSG MSGID(CPFA0A9) se si el archivo existe o no existe, pero como no me se el nombre porque puede ser variable, necesito saber como se lee una carpeta de Ifs y colocar en una variable del programa el nombre del archivo que allí encuentre Muchas gracias Ú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.
RE: Ayuda nombre archivo IFS
Alberto...MIL GRACIAS... ya me funciono Que maravilla contar con este foro.. De: forum.help400-boun...@listas.combios.es [forum.help400-boun...@listas.combios.es] en nombre de alberto [albe...@arcadie.es] Enviado el: jueves, 22 de agosto de 2013 11:06 a.m. Para: Alberto Martinez CC: forum.help400 Asunto: Re: Ayuda nombre archivo IFS Ayyy las prisas!! No sé si has trabajado con lecturas de ficheros en Cl's, pero me he dejado que tienes que declararlo previamente : DCLF FILE(LISTAFI) y luego, si quieres eliminarlo, CHGVAR VAR(FENTRADA) + VALUE('ruta/' *CAT NOMFIC) DELOBJLNK(FENTRADA) Salu2 De:alberto/arcadie Para:forum.help400 forum.help400@listas.combios.es Fecha:22/08/2013 17:54 Asunto:Re: Ayuda nombre archivo IFS Enviado por:Alberto Martinez Hola Te refieres a que quieres acceder a ver los archivos que tienes en una carpeta, y hacer algo con ellos? A ver si te sirve este trozo de código. como verás, tengo creado un fichero(listafi) en el cual voy guardando todos los nombres que se generan al hacer el Ls de la carpeta. QSHCMD('ls /carpeta/ + qsys.lib/milib.lib/listafi.file/listafi.mbr') DowhileCOND(*Not Eof) RCVF MONMSG MSGID(CPF0864) EXEC(CHGVAR VAR(EOF) + VALUE('1')) If (*Not Eof) Do CHGVAR VAR(NOMFIC) VALUE(%SST(LISTAFI 1 25)) CALL PGM(Programa que hace cosas) parm(nomfic existeix) IF COND(EXISTEIX) THEN(DO) CHGVAR VAR(MSG) VALUE('El fichero ' *cat Nomfic *cat 'no + se procesará porque ya existe en el + sistema. Si quiere procesarlo, debe + cambiarle el nombre') SNDBRKMSG MSG(MSG) TOMSGQ(WS) Enddo De:Luz Nelly Zapata nelly.zap...@olimpiait.com Para:forum.help400 [forum.help400@listas.combios.es] forum.help400@listas.combios.es Fecha:22/08/2013 17:38 Asunto:Ayuda nombre archivo IFS Buenos días.. Agradecería mucho si alguien sabe cuál es el comando para saber cuál es el nombre del archivo que se encuentra en una carpeta del IFS 400 Me explico.. con DSPLNK si me se el nombre, con el MONMSG MSGID(CPFA0A9) se si el archivo existe o no existe, pero como no me se el nombre porque puede ser variable, necesito saber como se lee una carpeta de Ifs y colocar en una variable del programa el nombre del archivo que allí encuentre Muchas gracias Ú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.
ayuda
Hola Foro Tengo una necesidad; estoy viendo la posiblidad de limitar el acceso a algunos usuarios del tema de SPOOL, sql, tema de disco etc etc. Me pueden dar una mano con este pedido por favor. Saludos y gracias. Carlos Pedrozo Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Ayuda con consulta SQL
Hola Miguel, yo no le veo ningún problema en la segunda forma de plantearlo y pienso que es lo correcto. Otra posible forma (quizas algo más engorrosa) sería así: SELECT * FROM ( SELECT * FROM ventas INNER JOIN empleados ON ventas.id_Vendedor = empleados.id_Empleado ) AS A INNER JOIN ( SELECT * FROM ventas INNER JOIN empleados ON ventas.id_empleado = empleados.id_Empleado ) AS B ON A.idFactura = B.idFactura Saludos Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Ayuda con consulta SQL
Buenos días lista , Tengo dos tablas en sql : tabla ventas (id_factura,id_cliente,id_vendedor,id_empleadoE tabla empleados (id_empleado,nombre,dni,dirección,...) El caso es que cuando hago la consulta de las facturas y quiera obtener el nombre tanto del vendedor como del empleadoE tengo que consultar a la tabla empleado (teniendo en cuenta que el vendedor es el empleado asociado al cliente y empleadoE es el empleado que ejecuta la venta [no necesariamente tiene que ser el vendedor] ) Mi pregunta es la siguiente : ¿Cómo hago mi consulta sql? Ya que si la hago de la siguiente forma : SELECT id_factura,id_cliente,id_vendedor,nombre FROM factura INNER JOIN empleado as emp ON factura.id_vendedor=emp.id_empleado No sabría como jalar el dato del empleado Y si la hago de la siguiente forma : SELECT id_factura,id_cliente,id_vendedor,emp1.n FROM factura INNER JOIN empleado as emp1 ON factura.id_vendedor=emp1.id_empleado INNER JOIN empleado as emp2 ON factura.id_empleadoE=emp2.id_empleado Pues me parece muy redundante creo que existe otra forma de como resolver este problema . Les agradecería si me pueden ayudar con este problema _ Miguel S. þ : www.javax0711.blogspot.com P Antes de imprimir este e-mail piense bien si es necesario hacerlo. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
ayuda programación qshell en as400
A una consulta: Estoy implementando SFTP en el as400 y el mismo tengo que realizarla con programación QSHELL, alguien puede facilitar algún link o manual para poder realizar dicha programación. Necesito hacer lo mismo que se hace con FTP en un CL, es decir: Con FTP: CLRPFM FILE(QTEMP/SEGF06) OVRDBF FILE(INPUT) TOFILE(SEGF05) OVRDBF FILE(OUTPUT) TOFILE(SEGF06) STRTCPFTP RMTSYS(DIR) Con SFTP: CHGVAR VAR(CMD) VALUE('sftp usuario@ip' ) QSHCMD(CMD) Necesito que el SFTP tome el archivo de entrada (SEGF05, en dicho archivo tengo las instrucciones que se debe hacer en el FTP y en el archivo SEGF06 tengo el resultado del FTP, es decir el log). Gracias. Saludos Mauro Peñaherrera Ruiz Tecnologia Desarrollo y Mantenimiento Diners Club - Interdin +593 (2) 2981300 ext 4153 www.dinersclub.com.ec Quito-Ecuador En Diners Club cuidamos el planeta; REDUCIMOS, RECICLAMOS Y REUTILIZAMOS los recursos que usamos. Nota de descargo: La información contenida en este e-mail y sus anexos es confidencial y sólo puede ser utilizada por el destinatario del mismo. Esta información no debe ser distribuida, ni copiada total o parcialmente por ningún medio sin la autorización de DINERS/INTERDIN. Además, DINERS/INTERDIN no asume responsabilidad sobre información, opiniones o criterios contenidos en este e-mail. Disclaimer: The information contained in this e-mail and its attached files are confidential and intended only for the use of the person to which it is addressed. This information can not be totally or partially distributed nor copied by any media without the authorization from DINERS/INTERDIN. In addition, DINERS/INTERDIN does not assume responsibility about this information, opinions or criteria contented in this e-mail. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: ayuda programación qshell en as400
Hola Debes buscar la documentación de script unix para sftp, por ejemplo, http://www.computerhope.com/unix/sftp.htm Yo te recomendaría que copiases las instrucciones del archivo SEGF05 a un archivo de IFS (por ejemplo, archivo_b) e indicarlo con la opción -b, por ejemplo *sftp -b archivo_b* Salu2 El 24 de febrero de 2011 16:03, Peñaherrera, Mauro mpena...@dinersclub.com.ec escribió: A una consulta: Estoy implementando SFTP en el as400 y el mismo tengo que realizarla con programación QSHELL, alguien puede facilitar algún link o manual para poder realizar dicha programación. Necesito hacer lo mismo que se hace con FTP en un CL, es decir: Con FTP: CLRPFM FILE(QTEMP/SEGF06) OVRDBF FILE(INPUT) TOFILE(SEGF05) OVRDBF FILE(OUTPUT) TOFILE(SEGF06) STRTCPFTP RMTSYS(DIR) Con SFTP: CHGVAR VAR(CMD) VALUE('sftp usuario@ip' ) QSHCMD(CMD) Necesito que el SFTP tome el archivo de entrada (SEGF05, en dicho archivo tengo las instrucciones que se debe hacer en el FTP y en el archivo SEGF06 tengo el resultado del FTP, es decir el log). Gracias. *Saludos* * * Mauro Peñaherrera Ruiz Tecnologia Desarrollo y Mantenimiento Diners Club - Interdin +593 (2) 2981300 ext 4153 www.dinersclub.com.ec Quito-Ecuador -- En Diners Club cuidamos el planeta; REDUCIMOS, RECICLAMOS Y REUTILIZAMOS los recursos que usamos. Nota de descargo: La información contenida en este e-mail y sus anexos es confidencial y sólo puede ser utilizada por el destinatario del mismo. Esta información no debe ser distribuida, ni copiada total o parcialmente por ningún medio sin la autorización de DINERS/INTERDIN. Además, DINERS/INTERDIN no asume responsabilidad sobre información, opiniones o criterios contenidos en este e-mail. Disclaimer: The information contained in this e-mail and its attached files are confidential and intended only for the use of the person to which it is addressed. This information can not be totally or partially distributed nor copied by any media without the authorization from DINERS/INTERDIN. In addition, DINERS/INTERDIN does not assume responsibility about this information, opinions or criteria contented in this e-mail. Ú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.
RE: ayuda programación qshell en as400
Lo que debes hacer es crear un archivo en el IFS en una carpeta y utilizarlo dentro de la sentencia del SFTP. Te paso el ejemplo de como realizarlo. Las intrucciones para el archivo por lostes son las mismas que las que utilizas para realizar el ftp, el LCD, el CD, el PUT, el GET es exactamente igual. Por ejemplo: lcd /HOME/ cd /HOME/ put PEPE.TXT JUAN.TXT del PEPE.TXT bye El tema ahora esta en el armado de la instrucción para realizar el SFTP, es de la siguiente manera: /qopensys/usr/bin/sftp -F /home//ssh_config -b /home//nombre_archivo usuario@direccion_de_ip Te explico que es cada cosa: /qopensys/usr/bin/sftp = Es el lugar dónde esta alojado el comand. -F /home//ssh_config = Es el archivo de configuración, en ssh_config o el nombre que elijas, podes configurar varios parámetros, entre ellos si queres podes configurar el número de puerta para ingresar por uno distinto y no exponer tu sftp al exterior. El es un directorio en el IFS que vos crees para alojar el archivo. -b /home//nombre_archivo = Esta parte es el lugar dónde esta el archivo por lotes que debes crear con las instrucciones ftp para cambiar de directorio, hacer un put, un del, etc, etc. usuario@direccion_de_ip = Usuario de conexión y dirección de ip del host hacia dónde vas a realizar el sftp. ahh... me olvidaba, la instruccion cl para realiza el sftp es STRQSH y quedaría de la siguiente manera: STRQSH CMD('/qopensys/usr/bin/sftp -F /home//ssh_config -b /home//nombre_archivo usuario@direccion_de_ip') Espero que te sea de ayuda, cualquier cosa por favor escribime que te ayudo en lo que pueda. Saludos. Sergio From: mpena...@dinersclub.com.ec To: forum.help400@listas.combios.es Date: Thu, 24 Feb 2011 10:03:36 -0500 Subject: ayuda programación qshell en as400 A una consulta: Estoy implementando SFTP en el as400 y el mismo tengo que realizarla con programación QSHELL, alguien puede facilitar algún link o manual para poder realizar dicha programación. Necesito hacer lo mismo que se hace con FTP en un CL, es decir: Con FTP: CLRPFM FILE(QTEMP/SEGF06) OVRDBF FILE(INPUT) TOFILE(SEGF05) OVRDBF FILE(OUTPUT) TOFILE(SEGF06) STRTCPFTP RMTSYS(DIR) Con SFTP: CHGVAR VAR(CMD) VALUE('sftp usuario@ip' ) QSHCMD(CMD) Necesito que el SFTP tome el archivo de entrada (SEGF05, en dicho archivo tengo las instrucciones que se debe hacer en el FTP y en el archivo SEGF06 tengo el resultado del FTP, es decir el log). Gracias. Saludos Mauro Peñaherrera Ruiz Tecnologia Desarrollo y Mantenimiento Diners Club - Interdin +593 (2) 2981300 ext 4153 www.dinersclub.com.ec Quito-Ecuador En Diners Club cuidamos el planeta; REDUCIMOS, RECICLAMOS Y REUTILIZAMOS los recursos que usamos. Nota de descargo: La información contenida en este e-mail y sus anexos es confidencial y sólo puede ser utilizada por el destinatario del mismo. Esta información no debe ser distribuida, ni copiada total o parcialmente por ningún medio sin la autorización de DINERS/INTERDIN. Además, DINERS/INTERDIN no asume responsabilidad sobre información, opiniones o criterios contenidos en este e-mail. Disclaimer: The information contained in this e-mail and its attached files are confidential and intended only for the use of the person to which it is addressed. This information can not be totally or partially distributed nor copied by any media without the authorization from DINERS/INTERDIN. In addition, DINERS/INTERDIN does not assume responsibility about this information, opinions or criteria contented in this e-mail. �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.
RE: POR FAVOR AYUDA...
Yo creo que para configurar una impresora no son necesarios esto productos. Leete https://www.ibm.com/developerworks/mydeveloperworks/wikis/home/wiki/We65417176161_47b6_8552_8ca0755583cb/page/Gu%C3%ADa+breve+para+configurar+un+dispositivo+de+una+impresora+en+red En el grupo Recursos AS400 en My developerWorks. Javier De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Luis G. Quilca Enviado el: jueves, 10 de febrero de 2011 22:04 Para: forum.help400 Asunto: POR FAVOR AYUDA... Saludos a todos, Tengo caducadas las licencias de estos productos: Y tengo que configurar una impresora lexmark w850 que de servicio de impresión a varios sistemas as400 que están en diferentes redes, mi pregunta es ¿Existe alguna otra forma de hacerlo con estas licencias de productos caducadas?, o necesariamente debemos adquirir las licencias. Gracias por sus respuestas. ATT38500.gif Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: POR FAVOR AYUDA...
Gracias, NO, al momento que activo el dispositivo de impresion creado me sale el error de licencia caducada y el listado enviado a imprimir se queda en estado WTR, y no aparece ningun mensaje de error adicional. Saludos. Telf. 022563246 / 022994200 Ext. 1507 De: Zarate Julio Ariel jzar...@agd.com.ar Para: forum.help400 forum.help400@listas.combios.es Fecha: 10/02/2011 16:53 Asunto: RE: POR FAVOR AYUDA... Enviado por: forum.help400-boun...@listas.combios.es Pregunta: Cuando intentas crear un dispositivo de impresión te da error? De: forum.help400-boun...@listas.combios.es [ mailto:forum.help400-boun...@listas.combios.es] En nombre de Luis G. Quilca Enviado el: Jueves, 10 de Febrero de 2011 06:04 p.m. Para: forum.help400 Asunto: POR FAVOR AYUDA... Saludos a todos, Tengo caducadas las licencias de estos productos: Y tengo que configurar una impresora lexmark w850 que de servicio de impresión a varios sistemas as400 que están en diferentes redes, mi pregunta es ¿Existe alguna otra forma de hacerlo con estas licencias de productos caducadas?, o necesariamente debemos adquirir las licencias. Gracias por sus respuestas. Por favor no imprima este mail si no es realmente necesario. Aceitera General Deheza protege el medio ambiente. Please don't print this e-mail unless really necessary. Aceitera General Deheza protects the enviroment. Disclaimer added by CodeTwo Exchange Rules www.codetwo.com Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L. image/gifimage/gifimage/jpeg Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: POR FAVOR AYUDA...
¿Le tienes asignado algún tipo de configuración PSF? Si no es así no tendría por qué darte problemas. Saludos. Juan Carlos. De: Luis G. Quilca [mailto:lqui...@petrocomercial.com] Enviado el: viernes, 11 de febrero de 2011 13:24 Para: forum.help400 Asunto: RE: POR FAVOR AYUDA... Gracias, NO, al momento que activo el dispositivo de impresion creado me sale el error de licencia caducada y el listado enviado a imprimir se queda en estado WTR, y no aparece ningun mensaje de error adicional. Saludos. Telf. 022563246 / 022994200 Ext. 1507 De: Zarate Julio Ariel jzar...@agd.com.ar Para: forum.help400 forum.help400@listas.combios.es Fecha: 10/02/2011 16:53 Asunto: RE: POR FAVOR AYUDA... Enviado por: forum.help400-boun...@listas.combios.es Pregunta: Cuando intentas crear un dispositivo de impresión te da error? De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es mailto:forum.help400-boun...@listas.combios.es ] En nombre de Luis G. Quilca Enviado el: Jueves, 10 de Febrero de 2011 06:04 p.m. Para: forum.help400 Asunto: POR FAVOR AYUDA... Saludos a todos, Tengo caducadas las licencias de estos productos: Y tengo que configurar una impresora lexmark w850 que de servicio de impresión a varios sistemas as400 que están en diferentes redes, mi pregunta es ¿Existe alguna otra forma de hacerlo con estas licencias de productos caducadas?, o necesariamente debemos adquirir las licencias. Gracias por sus respuestas. Por favor no imprima este mail si no es realmente necesario. Aceitera General Deheza protege el medio ambiente. Please don't print this e-mail unless really necessary. Aceitera General Deheza protects the enviroment. Disclaimer added by CodeTwo Exchange Rules www.codetwo.com http://www.codetwo.com/ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L. image001.gifimage002.gifimage003.jpg Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
POR FAVOR AYUDA...
Saludos a todos, Tengo caducadas las licencias de estos productos: Y tengo que configurar una impresora lexmark w850 que de servicio de impresión a varios sistemas as400 que están en diferentes redes, mi pregunta es ¿Existe alguna otra forma de hacerlo con estas licencias de productos caducadas?, o necesariamente debemos adquirir las licencias. Gracias por sus respuestas. image/gif Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: POR FAVOR AYUDA...
Pregunta: Cuando intentas crear un dispositivo de impresión te da error? De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Luis G. Quilca Enviado el: Jueves, 10 de Febrero de 2011 06:04 p.m. Para: forum.help400 Asunto: POR FAVOR AYUDA... Saludos a todos, Tengo caducadas las licencias de estos productos: Y tengo que configurar una impresora lexmark w850 que de servicio de impresión a varios sistemas as400 que están en diferentes redes, mi pregunta es ¿Existe alguna otra forma de hacerlo con estas licencias de productos caducadas?, o necesariamente debemos adquirir las licencias. Gracias por sus respuestas. Por Favor considere el medio ambiente y no imprima este mail a no ser que sea absolutamente necesario. Aceitera General Deheza apoya el cuidado del medio ambiente. Disclaimer added by CodeTwo Exchange Rules http://www.codetwo.com image001.gifinline: medio_ambiente2.jpg Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: AYUDA EN SQL COMPLEJO
Antes de nada una cosa Raul. INNER JOIN existe en SQL/400? Lo digo proque estoy buscando en el manual http://publib.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/QBKSQ900/CONTENIDO?SHELF=DT=19940818181324 y no lo encuentro. O hay otro manual más actualizado? Porque el que yo estoy mirando es del 94. Saludos. Javier. -- Message: 2 Date: Tue, 25 Jan 2011 09:49:27 +0100 From: Raul Bascones rbasco...@gmail.com Subject: Re: AYUDA EN SQL COMPLEJO To: forum.help400 forum.help400@listas.combios.es Message-ID: aanlktikrtixutphlwkfvecfgjbodo8nq+okv4rjrc...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 No sé si puede valer: SELECT * FROM ( SELECT cabfra.* , detfra.*, substr(detfra.descri, 35,10) presupuesto FROM cabfra INNER JOIN detfra ON cabfra.nfactura = detfra.nfactura WHERE cabfra.anyo = Anyo_deseado ) AS facturas INNER JOIN ( SELECT cabppto.*, detppto.*, digits(cabppto.numppto) numpptoALFA FROM cabppto INNER JOIN detppto ON cabppto.numppto = detfra.numppto ) AS presupuestos ON facturas.presupuesto = presupuestos.numpptoALFA - Un saludo El 24 de enero de 2011 11:43, Fco. Javier B. L. reiv...@hotmail.comescribió: Hola a todos!! Hoy necesito hacer un SQL más o menos complejo. Tengo por un lado una tabla de cabeceras de fra (CABFRA) y el detalle (DETFRA). Y luego cabeceras de presupuesto (CABPPTO) y el detalle (DETPPTO). Tengo que relacionar CABFRA con DETFRA por año y nº de factura (hasta aquí bien). Hago SELECT * FROM CABFRA, DETFRA... Aquí viene lo complicado. En cada fila leída de DETFRA tengo un campo descripción (DESCRI). En DESCRI tengo, en las posiciones 35 a 44 (10 posiciones alfanuméricas) el número de presupuesto (NUMPPTO). Con NUMPPTO quiero ir a buscar si existen cabeceras de presupuesto (CABPPTO) con éste número. El problema es que NUMPPTO es alfanumérico (ya que forma parte de la descripción) y el nº de presupuesto de CABPPTO es numérico. Primero no se cómo relacionar facturas con presupuestos. Segundo no se cómo convertir el nº de presupuesto alfanumérico a numérico y luego relacionar. Alguien me puede ayudar? Un saludo. Javier. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: AYUDA EN SQL COMPLEJO
Buenos días. Yo tengo el iSeries DB2 Universal Database for iSeries SQL Reference Version 5 Release 3 - Sixth Edition (August 2005) y si aparece el INNER JOIN. No sé en versiones anteriores. Podría adjuntarlo, pero comprimido y todo son mas de 8 MiB y no creo que el foro me acepte el adjunto. Gustavo Adolfo Márquez Álvarez. Departamento de Informática. gmarq...@zitro.es inforZitro, S. L. Carretera de Níjar, nº 404. 04007 Almería (España). Teléfono:950 226 658. Extensión: 148. Fax: 950 223 620. -Mensaje original- De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Fco. Javier B. L. Enviado el: jueves, 27 de enero de 2011 09:18 Para: Foro-Help400 Asunto: Re: AYUDA EN SQL COMPLEJO Antes de nada una cosa Raul. INNER JOIN existe en SQL/400? Lo digo proque estoy buscando en el manual http://publib.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/QBKSQ900/CONTENIDO?SHELF = http://publib.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/QBKSQ900/CONTENIDO?SHEL F=DT=19940818181324 DT=19940818181324 y no lo encuentro. O hay otro manual más actualizado? Porque el que yo estoy mirando es del 94. Saludos. Javier. -- Message: 2 Date: Tue, 25 Jan 2011 09:49:27 +0100 From: Raul Bascones rbasco...@gmail.com Subject: Re: AYUDA EN SQL COMPLEJO To: forum.help400 forum.help400@listas.combios.es Message-ID: aanlktikrtixutphlwkfvecfgjbodo8nq+okv4rjrc...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 No sé si puede valer: SELECT * FROM ( SELECT cabfra.* , detfra.*, substr(detfra.descri, 35,10) presupuesto FROM cabfra INNER JOIN detfra ON cabfra.nfactura = detfra.nfactura WHERE cabfra.anyo = Anyo_deseado ) AS facturas INNER JOIN ( SELECT cabppto.*, detppto.*, digits(cabppto.numppto) numpptoALFA FROM cabppto INNER JOIN detppto ON cabppto.numppto = detfra.numppto ) AS presupuestos ON facturas.presupuesto = presupuestos.numpptoALFA - Un saludo El 24 de enero de 2011 11:43, Fco. Javier B. L. reiv...@hotmail.comescribió: Hola a todos!! Hoy necesito hacer un SQL más o menos complejo. Tengo por un lado una tabla de cabeceras de fra (CABFRA) y el detalle (DETFRA). Y luego cabeceras de presupuesto (CABPPTO) y el detalle (DETPPTO). Tengo que relacionar CABFRA con DETFRA por año y nº de factura (hasta aquí bien). Hago SELECT * FROM CABFRA, DETFRA... Aquí viene lo complicado. En cada fila leída de DETFRA tengo un campo descripción (DESCRI). En DESCRI tengo, en las posiciones 35 a 44 (10 posiciones alfanuméricas) el número de presupuesto (NUMPPTO). Con NUMPPTO quiero ir a buscar si existen cabeceras de presupuesto (CABPPTO) con éste número. El problema es que NUMPPTO es alfanumérico (ya que forma parte de la descripción) y el nº de presupuesto de CABPPTO es numérico. Primero no se cómo relacionar facturas con presupuestos. Segundo no se cómo convertir el nº de presupuesto alfanumérico a numérico y luego relacionar. Alguien me puede ayudar? Un saludo. Javier. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: AYUDA EN SQL COMPLEJO
Si, yo estoy en V5R3 . El 27 de enero de 2011 09:17, Fco. Javier B. L. reiv...@hotmail.comescribió: Antes de nada una cosa Raul. INNER JOIN existe en SQL/400? Lo digo proque estoy buscando en el manual http://publib.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/QBKSQ900/CONTENIDO?SHELF=DT=19940818181324 y no lo encuentro. O hay otro manual más actualizado? Porque el que yo estoy mirando es del 94. Saludos. Javier. -- Message: 2 Date: Tue, 25 Jan 2011 09:49:27 +0100 From: Raul Bascones rbasco...@gmail.com Subject: Re: AYUDA EN SQL COMPLEJO To: forum.help400 forum.help400@listas.combios.es Message-ID: aanlktikrtixutphlwkfvecfgjbodo8nq+okv4rjrc...@mail.gmail.comaanlktikrtixutphlwkfvecfgjbodo8nq%2bokv4rjrc...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 No sé si puede valer: SELECT * FROM ( SELECT cabfra.* , detfra.*, substr(detfra.descri, 35,10) presupuesto FROM cabfra INNER JOIN detfra ON cabfra.nfactura = detfra.nfactura WHERE cabfra.anyo = Anyo_deseado ) AS facturas INNER JOIN ( SELECT cabppto.*, detppto.*, digits(cabppto.numppto) numpptoALFA FROM cabppto INNER JOIN detppto ON cabppto.numppto = detfra.numppto ) AS presupuestos ON facturas.presupuesto = presupuestos.numpptoALFA - Un saludo El 24 de enero de 2011 11:43, Fco. Javier B. L. reiv...@hotmail.com escribió: Hola a todos!! Hoy necesito hacer un SQL más o menos complejo. Tengo por un lado una tabla de cabeceras de fra (CABFRA) y el detalle (DETFRA). Y luego cabeceras de presupuesto (CABPPTO) y el detalle (DETPPTO). Tengo que relacionar CABFRA con DETFRA por año y nº de factura (hasta aquí bien). Hago SELECT * FROM CABFRA, DETFRA... Aquí viene lo complicado. En cada fila leída de DETFRA tengo un campo descripción (DESCRI). En DESCRI tengo, en las posiciones 35 a 44 (10 posiciones alfanuméricas) el número de presupuesto (NUMPPTO). Con NUMPPTO quiero ir a buscar si existen cabeceras de presupuesto (CABPPTO) con éste número. El problema es que NUMPPTO es alfanumérico (ya que forma parte de la descripción) y el nº de presupuesto de CABPPTO es numérico. Primero no se cómo relacionar facturas con presupuestos. Segundo no se cómo convertir el nº de presupuesto alfanumérico a numérico y luego relacionar. Alguien me puede ayudar? Un saludo. Javier. Ú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.
RE: AYUDA EN SQL COMPLEJO
Hola. Mi estimado...con DB2/SQL la pregunta es más bien...que no se puede? Pero aqui va...como decían algunos colegas por ahi...estos manuales son bastante gordos y mejor te paso el numero de algunos para que los bajes y los tengas a disposición... iSeriesDB2 Universal Database for iSeries SQL Reference iSeriesDB2 Universal Database for iSeries SQL Programming Version 5 Release 3 Stored Procedures, Triggers, and User-Defined Functions on DB2 Universal Database for iSeries - (SG24-6503-02) Buscalos por estos nombres y aqui aprendes porque aprendes... Salu 2!! Saludos!! From: reiv...@hotmail.com To: forum.help400@listas.combios.es Subject: Re: AYUDA EN SQL COMPLEJO Date: Thu, 27 Jan 2011 09:17:44 +0100 Antes de nada una cosa Raul. INNER JOIN existe en SQL/400? Lo digo proque estoy buscando en el manual http://publib.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/QBKSQ900/CONTENIDO?SHELF=DT=19940818181324 y no lo encuentro. O hay otro manual más actualizado? Porque el que yo estoy mirando es del 94. Saludos. Javier. -- Message: 2 Date: Tue, 25 Jan 2011 09:49:27 +0100 From: Raul Bascones rbasco...@gmail.com Subject: Re: AYUDA EN SQL COMPLEJO To: forum.help400 forum.help400@listas.combios.es Message-ID: aanlktikrtixutphlwkfvecfgjbodo8nq+okv4rjrc...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 No sé si puede valer: SELECT * FROM ( SELECT cabfra.* , detfra.*, substr(detfra.descri, 35,10) presupuesto FROM cabfra INNER JOIN detfra ON cabfra.nfactura = detfra.nfactura WHERE cabfra.anyo = Anyo_deseado ) AS facturas INNER JOIN ( SELECT cabppto.*, detppto.*, digits(cabppto.numppto) numpptoALFA FROM cabppto INNER JOIN detppto ON cabppto.numppto = detfra.numppto ) AS presupuestos ON facturas.presupuesto = presupuestos.numpptoALFA - Un saludo El 24 de enero de 2011 11:43, Fco. Javier B. L. reiv...@hotmail.comescribió: Hola a todos!! Hoy necesito hacer un SQL más o menos complejo. Tengo por un lado una tabla de cabeceras de fra (CABFRA) y el detalle (DETFRA). Y luego cabeceras de presupuesto (CABPPTO) y el detalle (DETPPTO). Tengo que relacionar CABFRA con DETFRA por año y nº de factura (hasta aquí bien). Hago SELECT * FROM CABFRA, DETFRA... Aquí viene lo complicado. En cada fila leída de DETFRA tengo un campo descripción (DESCRI). En DESCRI tengo, en las posiciones 35 a 44 (10 posiciones alfanuméricas) el número de presupuesto (NUMPPTO). Con NUMPPTO quiero ir a buscar si existen cabeceras de presupuesto (CABPPTO) con éste número. El problema es que NUMPPTO es alfanumérico (ya que forma parte de la descripción) y el nº de presupuesto de CABPPTO es numérico. Primero no se cómo relacionar facturas con presupuestos. Segundo no se cómo convertir el nº de presupuesto alfanumérico a numérico y luego relacionar. Alguien me puede ayudar? Un saludo. Javier. �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.
RE: AYUDA EN SQL COMPLEJO
Muchas gracias Pedro, int funciona, solo me falta relacionar las 4 tablas. Join creo que no existe en SQL/400. Saludos. Javier. ---Quizá te sirva esto... select * from CABFRA where cabfra.campo = detfra.campo... and int(substr(detfra.campo,x,y)) = cabpto.campo... analizalo... Saludos!! Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: AYUDA EN SQL COMPLEJO
No sé si puede valer: SELECT * FROM ( SELECT cabfra.* , detfra.*, substr(detfra.descri, 35,10) presupuesto FROM cabfra INNER JOIN detfra ON cabfra.nfactura = detfra.nfactura WHERE cabfra.anyo = Anyo_deseado ) AS facturas INNER JOIN ( SELECT cabppto.*, detppto.*, digits(cabppto.numppto) numpptoALFA FROM cabppto INNER JOIN detppto ON cabppto.numppto = detfra.numppto ) AS presupuestos ON facturas.presupuesto = presupuestos.numpptoALFA - Un saludo El 24 de enero de 2011 11:43, Fco. Javier B. L. reiv...@hotmail.comescribió: Hola a todos!! Hoy necesito hacer un SQL más o menos complejo. Tengo por un lado una tabla de cabeceras de fra (CABFRA) y el detalle (DETFRA). Y luego cabeceras de presupuesto (CABPPTO) y el detalle (DETPPTO). Tengo que relacionar CABFRA con DETFRA por año y nº de factura (hasta aquí bien). Hago SELECT * FROM CABFRA, DETFRA... Aquí viene lo complicado. En cada fila leída de DETFRA tengo un campo descripción (DESCRI). En DESCRI tengo, en las posiciones 35 a 44 (10 posiciones alfanuméricas) el número de presupuesto (NUMPPTO). Con NUMPPTO quiero ir a buscar si existen cabeceras de presupuesto (CABPPTO) con éste número. El problema es que NUMPPTO es alfanumérico (ya que forma parte de la descripción) y el nº de presupuesto de CABPPTO es numérico. Primero no se cómo relacionar facturas con presupuestos. Segundo no se cómo convertir el nº de presupuesto alfanumérico a numérico y luego relacionar. Alguien me puede ayudar? Un saludo. Javier. ** * -- * *Este mensaje y cualquier fichero adjunto esta dirigido únicamente a sus destinatarios y pueden contener información confidencial. Si usted considera que ha recibido este correo electrónico por error (por el asunto, por el remitente o por cualquier otra causa), le informamos que cualquier revisión, alteración, impresión, copia o transmisión de este mensaje o de cualquier fichero adjunto está prohibida y puede constituir un acto ilegal. Por favor, notifíquele el error al remitente respondiendo a este e-mail y elimine el mensaje y su contenido inmediatamente. ** * ** *This e-mail and any files transmitted with it are intended solely for the use of the intended recipients and may contain confidential information. If it appears (from the subject matter or address information or otherwise) that you received this email in error, please note that any review, dissemination, disclosure, alteration, printing, copying or transmission of this e-mail or any file transmitted with it is prohibited and may be unlawful. Please notify us by return email and delete this email and its contents immediately. * * -- * Ú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.
Re: AYUDA EN SQL COMPLEJO
Muchísimas gracias, lo probaré. Un saludo. Javier. -- Message: 2 Date: Tue, 25 Jan 2011 09:49:27 +0100 From: Raul Bascones rbasco...@gmail.com Subject: Re: AYUDA EN SQL COMPLEJO To: forum.help400 forum.help400@listas.combios.es Message-ID: aanlktikrtixutphlwkfvecfgjbodo8nq+okv4rjrc...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 No sé si puede valer: SELECT * FROM ( SELECT cabfra.* , detfra.*, substr(detfra.descri, 35,10) presupuesto FROM cabfra INNER JOIN detfra ON cabfra.nfactura = detfra.nfactura WHERE cabfra.anyo = Anyo_deseado ) AS facturas INNER JOIN ( SELECT cabppto.*, detppto.*, digits(cabppto.numppto) numpptoALFA FROM cabppto INNER JOIN detppto ON cabppto.numppto = detfra.numppto ) AS presupuestos ON facturas.presupuesto = presupuestos.numpptoALFA - Un saludo El 24 de enero de 2011 11:43, Fco. Javier B. L. reiv...@hotmail.comescribió: Hola a todos!! Hoy necesito hacer un SQL más o menos complejo. Tengo por un lado una tabla de cabeceras de fra (CABFRA) y el detalle (DETFRA). Y luego cabeceras de presupuesto (CABPPTO) y el detalle (DETPPTO). Tengo que relacionar CABFRA con DETFRA por año y nº de factura (hasta aquí bien). Hago SELECT * FROM CABFRA, DETFRA... Aquí viene lo complicado. En cada fila leída de DETFRA tengo un campo descripción (DESCRI). En DESCRI tengo, en las posiciones 35 a 44 (10 posiciones alfanuméricas) el número de presupuesto (NUMPPTO). Con NUMPPTO quiero ir a buscar si existen cabeceras de presupuesto (CABPPTO) con éste número. El problema es que NUMPPTO es alfanumérico (ya que forma parte de la descripción) y el nº de presupuesto de CABPPTO es numérico. Primero no se cómo relacionar facturas con presupuestos. Segundo no se cómo convertir el nº de presupuesto alfanumérico a numérico y luego relacionar. Alguien me puede ayudar? Un saludo. Javier. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
AYUDA EN SQL COMPLEJO
Hola a todos!! Hoy necesito hacer un SQL más o menos complejo. Tengo por un lado una tabla de cabeceras de fra (CABFRA) y el detalle (DETFRA). Y luego cabeceras de presupuesto (CABPPTO) y el detalle (DETPPTO). Tengo que relacionar CABFRA con DETFRA por año y nº de factura (hasta aquí bien). Hago SELECT * FROM CABFRA, DETFRA... Aquí viene lo complicado. En cada fila leída de DETFRA tengo un campo descripción (DESCRI). En DESCRI tengo, en las posiciones 35 a 44 (10 posiciones alfanuméricas) el número de presupuesto (NUMPPTO). Con NUMPPTO quiero ir a buscar si existen cabeceras de presupuesto (CABPPTO) con éste número. El problema es que NUMPPTO es alfanumérico (ya que forma parte de la descripción) y el nº de presupuesto de CABPPTO es numérico. Primero no se cómo relacionar facturas con presupuestos. Segundo no se cómo convertir el nº de presupuesto alfanumérico a numérico y luego relacionar. Alguien me puede ayudar? Un saludo. Javier. Este mensaje y cualquier fichero adjunto esta dirigido únicamente a sus destinatarios y pueden contener información confidencial. Si usted considera que ha recibido este correo electrónico por error (por el asunto, por el remitente o por cualquier otra causa), le informamos que cualquier revisión, alteración, impresión, copia o transmisión de este mensaje o de cualquier fichero adjunto está prohibida y puede constituir un acto ilegal. Por favor, notifíquele el error al remitente respondiendo a este e-mail y elimine el mensaje y su contenido inmediatamente. This e-mail and any files transmitted with it are intended solely for the use of the intended recipients and may contain confidential information. If it appears (from the subject matter or address information or otherwise) that you received this email in error, please note that any review, dissemination, disclosure, alteration, printing, copying or transmission of this e-mail or any file transmitted with it is prohibited and may be unlawful. Please notify us by return email and delete this email and its contents immediately. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: AYUDA EN SQL COMPLEJO
Quizá te sirva esto... select * from CABFRA where cabfra.campo = detfra.campo... and int(substr(detfra.campo,x,y)) = cabpto.campo... analizalo... Saludos!! From: reiv...@hotmail.com To: forum.help400@listas.combios.es Subject: AYUDA EN SQL COMPLEJO Date: Mon, 24 Jan 2011 11:43:16 +0100 Hola a todos!! Hoy necesito hacer un SQL más o menos complejo. Tengo por un lado una tabla de cabeceras de fra (CABFRA) y el detalle (DETFRA). Y luego cabeceras de presupuesto (CABPPTO) y el detalle (DETPPTO). Tengo que relacionar CABFRA con DETFRA por año y nº de factura (hasta aquí bien). Hago SELECT * FROM CABFRA, DETFRA... Aquí viene lo complicado. En cada fila leída de DETFRA tengo un campo descripción (DESCRI). En DESCRI tengo, en las posiciones 35 a 44 (10 posiciones alfanuméricas) el número de presupuesto (NUMPPTO). Con NUMPPTO quiero ir a buscar si existen cabeceras de presupuesto (CABPPTO) con éste número. El problema es que NUMPPTO es alfanumérico (ya que forma parte de la descripción) y el nº de presupuesto de CABPPTO es numérico. Primero no se cómo relacionar facturas con presupuestos. Segundo no se cómo convertir el nº de presupuesto alfanumérico a numérico y luego relacionar. Alguien me puede ayudar? Un saludo. Javier. Este mensaje y cualquier fichero adjunto esta dirigido únicamente a sus destinatarios y pueden contener información confidencial. Si usted considera que ha recibido este correo electrónico por error (por el asunto, por el remitente o por cualquier otra causa), le informamos que cualquier revisión, alteración, impresión, copia o transmisión de este mensaje o de cualquier fichero adjunto está prohibida y puede constituir un acto ilegal. Por favor, notifíquele el error al remitente respondiendo a este e-mail y elimine el mensaje y su contenido inmediatamente. This e-mail and any files transmitted with it are intended solely for the use of the intended recipients and may contain confidential information. If it appears (from the subject matter or address information or otherwise) that you received this email in error, please note that any review, dissemination, disclosure, alteration, printing, copying or transmission of this e-mail or any file transmitted with it is prohibited and may be unlawful. Please notify us by return email and delete this email and its contents immediately. �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.
Re: Ayuda para Subfile Automatico
En la DDS de la pantalla: ZONE 4S 0H SFLRCDNBR(CURSOR) y luego en el programa pones el numero linia deseado en ZONE y te pondr la pagina deseada automaticamente. En/na Consultor Desarrollo1 ha escrit: Seores: Necesito que me puedan ayudar con lo siguiente: Ten un programa en RPGLE y es con SUBFILE de control Automatico. Necesito situarme en el subfile a traves de un campo determinado y mostrarlo en la pantalla a partir de ese registro. Mucho agradecere su ayuda, Manuel Ramirez Raygada Analista Programador *AVISO LEGAL** "Este mensaje electrnico y/o el material adjunto est dirigido a la persona natural o jurdica a la que expresamente se le ha enviado y puede contener informacin confidencial o material privilegiado. Si usted no es el destinatario legtimo, queda estrictamente prohibido la utilizacin, copia, reimpresin, reenvo o cualquier accin tomada sobre este correo y puede ser penalizada legalmente. En caso de que haya recibido este correo electrnico por error, equivocacin u omisin proceda a eliminar y notificar al remitente. Cualquier opinin emitida en este correo electrnico es propia del autor o remitente y no representa necesariamente la opinin del BANCO DE COMERCIO" 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.
ayuda
Buenos dias Preciso de vuestra ayuda. Tengo que cambiar el nombre externo de un fichero para mandarlo a un FTP. El nombre sería variable empezando por SXXX fijo y las siguientes posiciones podrian ser por ejemplo el dia y la hora o sólo la hora. Alguien sabe como hacerlo??? Gracias Elvira Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: ayuda
Si te sirve como ejemplo: El nombre inicial en qdls es por ejemplo Repre001.txt Después en el servidor se queda así: AUT_001_10084071.txt 5722WDS V5R3M0 030905 LISTADO FUENTE SEU 22/12/10 08:18:45CAMACHO PµG.1 MIEMBRO . . . . . . . . . CONS22RC SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0 100 PGMPARM(REP) 04/07/05 101 /* DEFINICION DE VARIABLES */ 07/02/08 300 DCLVAR(REP) TYPE(*CHAR) LEN(3) 12/05/05 301 DCLVAR(PED) TYPE(*CHAR) LEN(10) 07/02/08 302 DCLVAR(NUM) TYPE(*DEC) LEN(8 0) 04/07/05 303 DCLVAR(ORD) TYPE(*CHAR) LEN(8) 04/07/05 304 DCLVAR(WPUSR) TYPE(*CHAR) LEN(10) 07/02/08 305 /* Recupera Usuario */ 07/02/08 306 RTVJOBAUSER(WPUSR) 07/02/08 401 /*/ 04/07/05 402 /* Recuperamos numerador de descarga para procesos */ 08/07/05 404 RTVDTAARA DTAARA(CAMACHO (700 8)) RTNVAR(ORD) 04/07/05 405 CHGVAR VAR(NUM) VALUE(ORD) 04/07/05 406 CHGVAR VAR(NUM) VALUE(NUM + 1) 04/07/05 407 CHGVAR VAR(ORD) VALUE(NUM) 04/07/05 410 CHGDTAARA DTAARA(CAMACHO (700 8)) VALUE(ORD) 04/07/05 411 /*/ 04/07/05 800 /* Copia datos de carpeta del Servidor a s: Historico */ 07/02/08 801 /* cambiando numero */ 07/02/08 802 CHGVAR VAR(PED) VALUE(WPUSR) 07/02/08 803 STRPCCMD PCCMD('copy s:\REP_AS400\rep' *CAT REP *CAT + 07/02/08 804 '\repre' *CAT REP *CAT '.txt + 07/02/08 805 s:\Historico\' *TCAT PED *TCAT REP + 07/02/08 806 *TCAT ORD *TCAT '.txt') PAUSE(*NO) 07/02/08 807 STRPCCMD PCCMD('del /Q s:\REP_AS400\rep' *CAT REP + 05/07/05 808 *CAT '\repre' *CAT REP *CAT '.txt') + 05/07/05 809 PAUSE(*NO) 05/07/05 1600 ENDPGM 12/05/05 * * * * F I N D E F U E N T E * * * * _ De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Elvira Vázquez Enviado el: miércoles, 19 de enero de 2011 9:39 Para: 'forum.help400' Asunto: ayuda Buenos dias Preciso de vuestra ayuda. Tengo que cambiar el nombre externo de un fichero para mandarlo a un FTP. El nombre sería variable empezando por SXXX fijo y las siguientes posiciones podrian ser por ejemplo el dia y la hora o sólo la hora. Alguien sabe como hacerlo??? Gracias Elvira Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: ayuda
Debes utilizar como paso intermedio una carpeta del IFS (ahí cambias el nombre del archivo, pones fecha, hora, etc..) y desde ahí realizar el FTP al servidor que deseas. De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Elvira Vázquez Enviado el: miércoles, 19 de enero de 2011 3:39 Para: 'forum.help400' Asunto: ayuda Buenos días Preciso de vuestra ayuda. Tengo que cambiar el nombre externo de un fichero para mandarlo a un FTP. El nombre sería variable empezando por SXXX fijo y las siguientes posiciones podrían ser por ejemplo el dia y la hora o sólo la hora. Alguien sabe como hacerlo??? Gracias Elvira [edasnet] En Diners Club cuidamos el planeta; REDUCIMOS, RECICLAMOS Y REUTILIZAMOS los recursos que usamos. Nota de descargo: La información contenida en este e-mail y sus anexos es confidencial y sólo puede ser utilizada por el destinatario del mismo. Esta información no debe ser distribuida, ni copiada total o parcialmente por ningún medio sin la autorización de DINERS/INTERDIN. Además, DINERS/INTERDIN no asume responsabilidad sobre información, opiniones o criterios contenidos en este e-mail. Disclaimer: The information contained in this e-mail and its attached files are confidential and intended only for the use of the person to which it is addressed. This information can not be totally or partially distributed nor copied by any media without the authorization from DINERS/INTERDIN. In addition, DINERS/INTERDIN does not assume responsibility about this information, opinions or criteria contented in this e-mail. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: ayuda
Perdon la pregunta pero como lo mando a una carpeta IFS?? _ De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Peñaherrera, Mauro Enviado el: miércoles, 19 de enero de 2011 14:42 Para: forum.help400 Asunto: RE: ayuda Debes utilizar como paso intermedio una carpeta del IFS (ahí cambias el nombre del archivo, pones fecha, hora, etc..) y desde ahí realizar el FTP al servidor que deseas. De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Elvira Vázquez Enviado el: miércoles, 19 de enero de 2011 3:39 Para: 'forum.help400' Asunto: ayuda Buenos días Preciso de vuestra ayuda. Tengo que cambiar el nombre externo de un fichero para mandarlo a un FTP. El nombre sería variable empezando por SXXX fijo y las siguientes posiciones podrían ser por ejemplo el dia y la hora o sólo la hora. Alguien sabe como hacerlo??? Gracias Elvira _ En Diners Club cuidamos el planeta; REDUCIMOS, RECICLAMOS Y REUTILIZAMOS los recursos que usamos. Nota de descargo: La información contenida en este e-mail y sus anexos es confidencial y sólo puede ser utilizada por el destinatario del mismo. Esta información no debe ser distribuida, ni copiada total o parcialmente por ningún medio sin la autorización de DINERS/INTERDIN. Además, DINERS/INTERDIN no asume responsabilidad sobre información, opiniones o criterios contenidos en este e-mail. Disclaimer: The information contained in this e-mail and its attached files are confidential and intended only for the use of the person to which it is addressed. This information can not be totally or partially distributed nor copied by any media without the authorization from DINERS/INTERDIN. In addition, DINERS/INTERDIN does not assume responsibility about this information, opinions or criteria contented in this e-mail. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: ayuda
Yo utilizo mandatos remotos CHGVAR VAR(TEXTO) VALUE('COPY ' *CAT DIRD *TCAT + EXE *CAT ' ' *CAT DIRH *TCAT ' /y') RUNRMTCMD CMD(TEXTO) RMTLOCNAME(WSSRV *IP) + RMTUSER(usuario) RMTPWD(passw) CCSID(437) Con este esquema de mandatos puedes manejar carpetas en servidores externos (que tenga client acces, y el servicio de mandatos remotos activo) Por ejemplo copiando en un directorio (DIRH) de la ifs desde el pc (DIRD), Best Regards, Pedro Pinedo IT Programmer/Analyst Amcor Flexibles Extrusion Logroño Rodejón, 40 Pol. Ind. San Lázaro E-26007- Logroño T +34 941 28 73 95 (int 3422206) F +34 941 28 93 49 www.amcor.com Please note my new email address is pedro.pin...@amcor.com P Save a tree ? only print this message if it?s absolutely necessary P From: Elvira Vázquez elvira_vazq...@edasnet.com To: 'forum.help400' forum.help400@listas.combios.es Date: 19/01/2011 14:57 Subject: RE: ayuda Perdon la pregunta pero como lo mando a una carpeta IFS?? De: forum.help400-boun...@listas.combios.es [ mailto:forum.help400-boun...@listas.combios.es] En nombre de Peñaherrera, Mauro Enviado el: miércoles, 19 de enero de 2011 14:42 Para: forum.help400 Asunto: RE: ayuda Debes utilizar como paso intermedio una carpeta del IFS (ahí cambias el nombre del archivo, pones fecha, hora, etc..) y desde ahí realizar el FTP al servidor que deseas. De: forum.help400-boun...@listas.combios.es [ mailto:forum.help400-boun...@listas.combios.es] En nombre de Elvira Vázquez Enviado el: miércoles, 19 de enero de 2011 3:39 Para: 'forum.help400' Asunto: ayuda Buenos días Preciso de vuestra ayuda. Tengo que cambiar el nombre externo de un fichero para mandarlo a un FTP. El nombre sería variable empezando por SXXX fijo y las siguientes posiciones podrían ser por ejemplo el dia y la hora o sólo la hora. Alguien sabe como hacerlo??? Gracias Elvira En Diners Club cuidamos el planeta; REDUCIMOS, RECICLAMOS Y REUTILIZAMOS los recursos que usamos. Nota de descargo: La información contenida en este e-mail y sus anexos es confidencial y sólo puede ser utilizada por el destinatario del mismo. Esta información no debe ser distribuida, ni copiada total o parcialmente por ningún medio sin la autorización de DINERS/INTERDIN. Además, DINERS/INTERDIN no asume responsabilidad sobre información, opiniones o criterios contenidos en este e-mail. Disclaimer: The information contained in this e-mail and its attached files are confidential and intended only for the use of the person to which it is addressed. This information can not be totally or partially distributed nor copied by any media without the authorization from DINERS/INTERDIN. In addition, DINERS/INTERDIN does not assume responsibility about this information, opinions or criteria contented in this e-mail. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L. __ Amcor - Creating a new world of packaging __ CAUTION - This message may contain privileged and confidential information intended only for the use of the addressee named above. If you are not the intended recipient of this message you are hereby notified that any use, dissemination, distribution or reproduction of this message is prohibited. If you have received this message in error please notify Amcor immediately. Any views expressed in this message are those of the individual sender and may not necessarily reflect the views of Amcor.image/gif Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: ayuda
Con el comando : CPYTOIMPF FROMFILE(LIBRERIA/ARCHIVO) TOSTMF('/carpeta ifs') MBROPT(*REPLAC E) STMFCODPAG(*PCASCII) RCDDLM(*CRLF) DTAFMT(*FIXED) STRDLM(*NONE) De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Elvira Vázquez Enviado el: miércoles, 19 de enero de 2011 8:57 Para: 'forum.help400' Asunto: RE: ayuda Perdon la pregunta pero como lo mando a una carpeta IFS?? De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Peñaherrera, Mauro Enviado el: miércoles, 19 de enero de 2011 14:42 Para: forum.help400 Asunto: RE: ayuda Debes utilizar como paso intermedio una carpeta del IFS (ahí cambias el nombre del archivo, pones fecha, hora, etc..) y desde ahí realizar el FTP al servidor que deseas. De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Elvira Vázquez Enviado el: miércoles, 19 de enero de 2011 3:39 Para: 'forum.help400' Asunto: ayuda Buenos días Preciso de vuestra ayuda. Tengo que cambiar el nombre externo de un fichero para mandarlo a un FTP. El nombre sería variable empezando por SXXX fijo y las siguientes posiciones podrían ser por ejemplo el dia y la hora o sólo la hora. Alguien sabe como hacerlo??? Gracias Elvira [edasnet] En Diners Club cuidamos el planeta; REDUCIMOS, RECICLAMOS Y REUTILIZAMOS los recursos que usamos. Nota de descargo: La información contenida en este e-mail y sus anexos es confidencial y sólo puede ser utilizada por el destinatario del mismo. Esta información no debe ser distribuida, ni copiada total o parcialmente por ningún medio sin la autorización de DINERS/INTERDIN. Además, DINERS/INTERDIN no asume responsabilidad sobre información, opiniones o criterios contenidos en este e-mail. Disclaimer: The information contained in this e-mail and its attached files are confidential and intended only for the use of the person to which it is addressed. This information can not be totally or partially distributed nor copied by any media without the authorization from DINERS/INTERDIN. In addition, DINERS/INTERDIN does not assume responsibility about this information, opinions or criteria contented in this e-mail. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Ayuda para Subfile Automatico
Señores: Necesito que me puedan ayudar con lo siguiente: Ten un programa en RPGLE y es con SUBFILE de control Automatico. Necesito situarme en el subfile a traves de un campo determinado y mostrarlo en la pantalla a partir de ese registro. Mucho agradecere su ayuda, Manuel Ramirez Raygada Analista Programador *AVISO LEGAL** Este mensaje electrónico y/o el material adjunto está dirigido a la persona natural o jurídica a la que expresamente se le ha enviado y puede contener información confidencial o material privilegiado. Si usted no es el destinatario legítimo, queda estrictamente prohibido la utilización, copia, reimpresión, reenvío o cualquier acción tomada sobre este correo y puede ser penalizada legalmente. En caso de que haya recibido este correo electrónico por error, equivocación u omisión proceda a eliminar y notificar al remitente. Cualquier opinión emitida en este correo electrónico es propia del autor o remitente y no representa necesariamente la opinión del BANCO DE COMERCIO Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: AYUDA EN SQL
Gracias Luis y Disculpa no habia tenido tiempo de responder pero esta parte de la tabla intermedia no la entendi correctamente, si no es mucho pedir me lo podias explicar un poco mas a detalle porfa porque sigo tratando de bajar este tiempo. Gracias por tu interes --- El lun, 12/27/10, Luis . digic...@hotmail.com escribió: De: Luis . digic...@hotmail.com Asunto: RE: AYUDA EN SQL A: forum.help400 forum.help400@listas.combios.es Fecha: lunes, 27 de diciembre de 2010, 04:58 am Hola Oscar: Mirando lo que me has mandado, y reconociendo que hace mucho que no trabajo con vistas SQL, según creo recordar la vista sql no es algo que se guarde, sino que se calcula en el momento de acceder a ella, a ver si alguien más puesto en SQL lo confirma. AUnque el Join de la vista no parece complejo, también dependerá del tamaño de las tablas, no es lo mismo un par de miles de registros, cientos de miles o unos cuantos millones. Mirando el procedimiento almacenado, y partiendo de que mi supuesto de las vistas es correcto, por cada vez que tu llames al procedimiento almacenado, tiene que volver a generar la vista, buscar algo en ella, que al no tener índices, tiene que recorrer toda la vista para ver que registros cumplen la condición del where. Si tienes miles de registros son miles de veces que crea la vista y miles de búsquedas. Por eso creo que es ahí donde se te van las 6 horas. Mi consejo, prueba lo que te dije, y si el join es rápido, el problema es que te lo está haciendo tantas veces como clientes tengas. La solución que yo veo, es lo de crear la tabla intermedia con los tres o cuatro campos que te interesan, y luego desde tu programa en lugar de llamar a procedimiento, haces un chain a la tabla y listo. Un saludo Luis Date: Thu, 23 Dec 2010 17:19:21 -0800 From: oosc...@yahoo.com Subject: RE: AYUDA EN SQL To: forum.help400@listas.combios.es gracias voy a probar con el insert a otra tabla y te voy a enviar las sentencias de la vista logica que cree asi como el procedimiento almacenado a ver si asi le entendes y nuevamente gracias vista logica CREATE VIEW file2 (EMPCOD, CANUCR, CLDOC, CACSTC, SECBCR, VACATE, EMPCOB, CANUCB, VACATG) AS SELECT DISTINCT A.EMPCOD, A.CANUCR, A.CL DOC, A.CACSTC, A.SECBCR, A.VACATE, B.EMPCOD, B.CANUCR, B.VACATG FROM CARTDAT.CACREDIT A INNER JOIN CARTDAT.CACREDCR B ON A.EMPCOD = B.EM PCOD AND A.CANUCR = B.CANUCR WHERE A.CACSTC 50 AND A.EMPCOD NOT IN ('A', 'B', 'C', '5', '6', '9') procedimiento almacenado este por cada registro lo llama para extrar la categoria maxima CREATE PROCEDURE CARTPGM.CPCATMAX ( IN @CLDOC1 CHAR(18) , IN @SECBCR1 DECIMAL(3, 0) , OUT @RESULT CHAR(4) ) DYNAMIC RESULT SETS 1 LANGUAGE SQL SPECIFIC CARTPGM.CPCATMAX NOT DETERMINISTIC MODIFIES SQL DATA CALLED ON NULL INPUT SET OPTION ALWBLK = *ALLREAD , ALWCPYDTA = *OPTIMIZE , COMMIT = *NONE , DECRESULT = (31, 31, 00) , DFTRDBCOL = *NONE , DYNDFTCOL = *NO , DYNUSRPRF = *USER , SRTSEQ = *HEX BEGIN DECLARE SQLSTR VARCHAR ( 1000 ) ; DECLARE AT_END SMALLINT DEFAULT 0 ; DECLARE @CAMPO1 DEC ( 4 , 0 ) ; DECLARE @RESUTALDO CHAR ( 4 ) ; DECLARE CURSORSQL CURSOR FOR RESULTADO ; SET @RESULT = 'null' ; SET SQLSTR = ' SELECT SECBCR, MAX(VACATG) FROM CARTDAT.file2 WHERE TRIM ( CLDOC ) = TRIM (''' || @CLDOC1 || ''') AND SECBCR =' || TRIM ( CAST ( @SECBCR1 AS CHAR ( 3 ) ) ) || ' GROUP BY SECBCR ' ; PREPARE RESULTADO FROM SQLSTR ; OPEN CURSORSQL ; FETCH_LOOP : LOOP FETCH CURSORSQL INTO @CAMPO1 , @RESUTALDO ; IF AT_END 0 THEN LEAVE FETCH_LOOP ; END IF ; SET @RESULT = @RESUTALDO ; SET AT_END = 1 ; END LOOP FETCH_LOOP ; CLOSE CURSORSQL ; END ; --- El mar, 12/21/10, Luis . digic...@hotmail.com escribió: De: Luis . digic...@hotmail.com Asunto: RE: AYUDA EN SQL A: forum.help400 forum.help400@listas.combios.es Fecha: martes, 21 de diciembre de 2010, 03:33 am #yiv47003523 .yiv47003523ExternalClass #yiv47003523ecxyiv657516216 .yiv47003523ecxyiv657516216hmmessage P {padding:0px;} #yiv47003523 .yiv47003523ExternalClass
RE: AYUDA EN SQL
Hola Oscar: Mirando lo que me has mandado, y reconociendo que hace mucho que no trabajo con vistas SQL, según creo recordar la vista sql no es algo que se guarde, sino que se calcula en el momento de acceder a ella, a ver si alguien más puesto en SQL lo confirma. AUnque el Join de la vista no parece complejo, también dependerá del tamaño de las tablas, no es lo mismo un par de miles de registros, cientos de miles o unos cuantos millones. Mirando el procedimiento almacenado, y partiendo de que mi supuesto de las vistas es correcto, por cada vez que tu llames al procedimiento almacenado, tiene que volver a generar la vista, buscar algo en ella, que al no tener índices, tiene que recorrer toda la vista para ver que registros cumplen la condición del where. Si tienes miles de registros son miles de veces que crea la vista y miles de búsquedas. Por eso creo que es ahí donde se te van las 6 horas. Mi consejo, prueba lo que te dije, y si el join es rápido, el problema es que te lo está haciendo tantas veces como clientes tengas. La solución que yo veo, es lo de crear la tabla intermedia con los tres o cuatro campos que te interesan, y luego desde tu programa en lugar de llamar a procedimiento, haces un chain a la tabla y listo. Un saludo Luis Date: Thu, 23 Dec 2010 17:19:21 -0800 From: oosc...@yahoo.com Subject: RE: AYUDA EN SQL To: forum.help400@listas.combios.es gracias voy a probar con el insert a otra tabla y te voy a enviar las sentencias de la vista logica que cree asi como el procedimiento almacenado a ver si asi le entendes y nuevamente gracias vista logica CREATE VIEW file2 (EMPCOD, CANUCR, CLDOC, CACSTC, SECBCR, VACATE, EMPCOB, CANUCB, VACATG) AS SELECT DISTINCT A.EMPCOD, A.CANUCR, A.CL DOC, A.CACSTC, A.SECBCR, A.VACATE, B.EMPCOD, B.CANUCR, B.VACATG FROM CARTDAT.CACREDIT A INNER JOIN CARTDAT.CACREDCR B ON A.EMPCOD = B.EM PCOD AND A.CANUCR = B.CANUCR WHERE A.CACSTC 50 AND A.EMPCOD NOT IN ('A', 'B', 'C', '5', '6', '9') procedimiento almacenado este por cada registro lo llama para extrar la categoria maxima CREATE PROCEDURE CARTPGM.CPCATMAX ( IN @CLDOC1 CHAR(18) , IN @SECBCR1 DECIMAL(3, 0) , OUT @RESULT CHAR(4) ) DYNAMIC RESULT SETS 1 LANGUAGE SQL SPECIFIC CARTPGM.CPCATMAX NOT DETERMINISTIC MODIFIES SQL DATA CALLED ON NULL INPUT SET OPTION ALWBLK = *ALLREAD , ALWCPYDTA = *OPTIMIZE , COMMIT = *NONE , DECRESULT = (31, 31, 00) , DFTRDBCOL = *NONE , DYNDFTCOL = *NO , DYNUSRPRF = *USER , SRTSEQ = *HEX BEGIN DECLARE SQLSTR VARCHAR ( 1000 ) ; DECLARE AT_END SMALLINT DEFAULT 0 ; DECLARE @CAMPO1 DEC ( 4 , 0 ) ; DECLARE @RESUTALDO CHAR ( 4 ) ; DECLARE CURSORSQL CURSOR FOR RESULTADO ; SET @RESULT = 'null' ; SET SQLSTR = ' SELECT SECBCR, MAX(VACATG) FROM CARTDAT.file2 WHERE TRIM ( CLDOC ) = TRIM (''' || @CLDOC1 || ''') AND SECBCR =' || TRIM ( CAST ( @SECBCR1 AS CHAR ( 3 ) ) ) || ' GROUP BY SECBCR ' ; PREPARE RESULTADO FROM SQLSTR ; OPEN CURSORSQL ; FETCH_LOOP : LOOP FETCH CURSORSQL INTO @CAMPO1 , @RESUTALDO ; IF AT_END 0 THEN LEAVE FETCH_LOOP ; END IF ; SET @RESULT = @RESUTALDO ; SET AT_END = 1 ; END LOOP FETCH_LOOP ; CLOSE CURSORSQL ; END ; --- El mar, 12/21/10, Luis . digic...@hotmail.com escribió: De: Luis . digic...@hotmail.com Asunto: RE: AYUDA EN SQL A: forum.help400 forum.help400@listas.combios.es Fecha: martes, 21 de diciembre de 2010, 03:33 am La verdad es que al no saber muy bien de que hablamos no lo tengo claro. Pero a bote pronto si lo quieres hacer por sql insert into tabla_resumen (cliente, ct) select cliente, max(categoría) as ct from tabla group by cliente. O si lo quieres hacer en RPG con un setll *hival. De todas maneras si ya tenías un procedimiento almacenado que te buscaba la categoría mayor, sería cosa de modificarlo un poco para que te rellenara la tabla. A mi lo que me da la sensación, ya que dices que ahora tarda como 6 horas, que cada vez que llamas al procedimiento almacenado se te está volviendo a crear el join, y es ahí donde pierde el tiempo, por eso la
RE: AYUDA EN SQL
No sé si ya te lo dijeron, o si ya lo probaste, pero yo, para optimizar una sentencia sql, cuya lógica ya está bien, doy un STRDBG, y luego corro la sentencia, al ver el log queda registrado el índice utilizado, y si tuvo que crear uno, queda la lista de campos utilizados, luego, con base a esto creo los índices correspondientes. Saludos. From: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Luis . Sent: Lunes, 27 de Diciembre de 2010 04:59 a.m. To: forum.help400 Subject: RE: AYUDA EN SQL Hola Oscar: Mirando lo que me has mandado, y reconociendo que hace mucho que no trabajo con vistas SQL, según creo recordar la vista sql no es algo que se guarde, sino que se calcula en el momento de acceder a ella, a ver si alguien más puesto en SQL lo confirma. AUnque el Join de la vista no parece complejo, también dependerá del tamaño de las tablas, no es lo mismo un par de miles de registros, cientos de miles o unos cuantos millones. Mirando el procedimiento almacenado, y partiendo de que mi supuesto de las vistas es correcto, por cada vez que tu llames al procedimiento almacenado, tiene que volver a generar la vista, buscar algo en ella, que al no tener índices, tiene que recorrer toda la vista para ver que registros cumplen la condición del where. Si tienes miles de registros son miles de veces que crea la vista y miles de búsquedas. Por eso creo que es ahí donde se te van las 6 horas. Mi consejo, prueba lo que te dije, y si el join es rápido, el problema es que te lo está haciendo tantas veces como clientes tengas. La solución que yo veo, es lo de crear la tabla intermedia con los tres o cuatro campos que te interesan, y luego desde tu programa en lugar de llamar a procedimiento, haces un chain a la tabla y listo. Un saludo Luis _ Date: Thu, 23 Dec 2010 17:19:21 -0800 From: oosc...@yahoo.com Subject: RE: AYUDA EN SQL To: forum.help400@listas.combios.es gracias voy a probar con el insert a otra tabla y te voy a enviar las sentencias de la vista logica que cree asi como el procedimiento almacenado a ver si asi le entendes y nuevamente gracias vista logica CREATE VIEW file2 (EMPCOD, CANUCR, CLDOC, CACSTC, SECBCR, VACATE, EMPCOB, CANUCB, VACATG) AS SELECT DISTINCT A.EMPCOD, A.CANUCR, A.CL DOC, A.CACSTC, A.SECBCR, A.VACATE, B.EMPCOD, B.CANUCR, B.VACATG FROM CARTDAT.CACREDIT A INNER JOIN CARTDAT.CACREDCR B ON A.EMPCOD = B.EM PCOD AND A.CANUCR = B.CANUCR WHERE A.CACSTC 50 AND A.EMPCOD NOT IN ('A', 'B', 'C', '5', '6', '9') procedimiento almacenado este por cada registro lo llama para extrar la categoria maxima CREATE PROCEDURE CARTPGM.CPCATMAX ( IN @CLDOC1 CHAR(18) , IN @SECBCR1 DECIMAL(3, 0) , OUT @RESULT CHAR(4) ) DYNAMIC RESULT SETS 1 LANGUAGE SQL SPECIFIC CARTPGM.CPCATMAX NOT DETERMINISTIC MODIFIES SQL DATA CALLED ON NULL INPUT SET OPTION ALWBLK = *ALLREAD , ALWCPYDTA = *OPTIMIZE , COMMIT = *NONE , DECRESULT = (31, 31, 00) , DFTRDBCOL = *NONE , DYNDFTCOL = *NO , DYNUSRPRF = *USER , SRTSEQ = *HEX BEGIN DECLARE SQLSTR VARCHAR ( 1000 ) ; DECLARE AT_END SMALLINT DEFAULT 0 ; DECLARE @CAMPO1 DEC ( 4 , 0 ) ; DECLARE @RESUTALDO CHAR ( 4 ) ; DECLARE CURSORSQL CURSOR FOR RESULTADO ; SET @RESULT = 'null' ; SET SQLSTR = ' SELECT SECBCR, MAX(VACATG) FROM CARTDAT.file2 WHERE TRIM ( CLDOC ) = TRIM (''' || @CLDOC1 || ''') AND SECBCR =' || TRIM ( CAST ( @SECBCR1 AS CHAR ( 3 ) ) ) || ' GROUP BY SECBCR ' ; PREPARE RESULTADO FROM SQLSTR ; OPEN CURSORSQL ; FETCH_LOOP : LOOP FETCH CURSORSQL INTO @CAMPO1 , @RESUTALDO ; IF AT_END 0 THEN LEAVE FETCH_LOOP ; END IF ; SET @RESULT = @RESUTALDO ; SET AT_END = 1 ; END LOOP FETCH_LOOP ; CLOSE CURSORSQL ; END ; --- El mar, 12/21/10, Luis . digic...@hotmail.com escribió: De: Luis . digic...@hotmail.com Asunto: RE: AYUDA EN SQL A: forum.help400 forum.help400@listas.combios.es Fecha: martes, 21 de diciembre de 2010, 03:33 am La verdad es que al no saber muy bien de que hablamos no lo tengo claro. Pero
RE: AYUDA EN SQL
gracias voy a probar con el insert a otra tabla y te voy a enviar las sentencias de la vista logica que cree asi como el procedimiento almacenado a ver si asi le entendes y nuevamente gracias vista logica CREATE VIEW file2 (EMPCOD, CANUCR, CLDOC, CACSTC, SECBCR, VACATE, EMPCOB, CANUCB, VACATG) AS SELECT DISTINCT A.EMPCOD, A.CANUCR, A.CL DOC, A.CACSTC, A.SECBCR, A.VACATE, B.EMPCOD, B.CANUCR, B.VACATG FROM CARTDAT.CACREDIT A INNER JOIN CARTDAT.CACREDCR B ON A.EMPCOD = B.EM PCOD AND A.CANUCR = B.CANUCR WHERE A.CACSTC 50 AND A.EMPCOD NOT IN ('A', 'B', 'C', '5', '6', '9') procedimiento almacenado este por cada registro lo llama para extrar la categoria maxima CREATE PROCEDURE CARTPGM.CPCATMAX ( IN @CLDOC1 CHAR(18) , IN @SECBCR1 DECIMAL(3, 0) , OUT @RESULT CHAR(4) ) DYNAMIC RESULT SETS 1 LANGUAGE SQL SPECIFIC CARTPGM.CPCATMAX NOT DETERMINISTIC MODIFIES SQL DATA CALLED ON NULL INPUT SET OPTION ALWBLK = *ALLREAD , ALWCPYDTA = *OPTIMIZE , COMMIT = *NONE , DECRESULT = (31, 31, 00) , DFTRDBCOL = *NONE , DYNDFTCOL = *NO , DYNUSRPRF = *USER , SRTSEQ = *HEX BEGIN DECLARE SQLSTR VARCHAR ( 1000 ) ; DECLARE AT_END SMALLINT DEFAULT 0 ; DECLARE @CAMPO1 DEC ( 4 , 0 ) ; DECLARE @RESUTALDO CHAR ( 4 ) ; DECLARE CURSORSQL CURSOR FOR RESULTADO ; SET @RESULT = 'null' ; SET SQLSTR = ' SELECT SECBCR, MAX(VACATG) FROM CARTDAT.file2 WHERE TRIM ( CLDOC ) = TRIM (''' || @CLDOC1 || ''') AND SECBCR =' || TRIM ( CAST ( @SECBCR1 AS CHAR ( 3 ) ) ) || ' GROUP BY SECBCR ' ; PREPARE RESULTADO FROM SQLSTR ; OPEN CURSORSQL ; FETCH_LOOP : LOOP FETCH CURSORSQL INTO @CAMPO1 , @RESUTALDO ; IF AT_END 0 THEN LEAVE FETCH_LOOP ; END IF ; SET @RESULT = @RESUTALDO ; SET AT_END = 1 ; END LOOP FETCH_LOOP ; CLOSE CURSORSQL ; END ; --- El mar, 12/21/10, Luis . digic...@hotmail.com escribió: De: Luis . digic...@hotmail.com Asunto: RE: AYUDA EN SQL A: forum.help400 forum.help400@listas.combios.es Fecha: martes, 21 de diciembre de 2010, 03:33 am La verdad es que al no saber muy bien de que hablamos no lo tengo claro. Pero a bote pronto si lo quieres hacer por sql insert into tabla_resumen (cliente, ct) select cliente, max(categoría) as ct from tabla group by cliente. O si lo quieres hacer en RPG con un setll *hival. De todas maneras si ya tenías un procedimiento almacenado que te buscaba la categoría mayor, sería cosa de modificarlo un poco para que te rellenara la tabla. A mi lo que me da la sensación, ya que dices que ahora tarda como 6 horas, que cada vez que llamas al procedimiento almacenado se te está volviendo a crear el join, y es ahí donde pierde el tiempo, por eso la cosa sería hacer solo una vez el join, y sacar toda la información de un tirón, y por eso te digo que crees la taba intermedia. Son cosas a mirar, prueba a generar el join a mano y mira cuanto tarda, si tarda poco estoy en lo cierto, si tarda 4 horas el problema es el join, y tendrías que replantearte como obtener esa información de otra manera, sin ese join. Un saludo Luis Date: Mon, 20 Dec 2010 17:00:07 -0800 From: oosc...@yahoo.com Subject: RE: AYUDA EN SQL To: forum.help400@listas.combios.es Ok, pero como haria para que en esa nueva tabla me queden solo la categoria mayor de todos los registros de un cliente, y gracias por la respuesta no habia visto la respuesta porque me cayo en el correo como spam, --- El lun, 12/13/10, Luis . digic...@hotmail.com escribió: De: Luis . digic...@hotmail.com Asunto: RE: AYUDA EN SQL A: forum.help400 forum.help400@listas.combios.es Fecha: lunes, 13 de diciembre de 2010, 03:00 am #yiv657516216 .yiv657516216ExternalClass #yiv657516216ecxyiv1781765403 .yiv657516216ecxyiv1781765403hmmessage P {padding:0px;} #yiv657516216 .yiv657516216ExternalClass #yiv657516216ecxyiv1781765403 .yiv657516216ecxyiv1781765403hmmessage {font-size:10pt;font-family:Tahoma;} Hola Oscar: La verdad es que no entiendo muy bien la pregunta, pero por lo que intuyo, yo lo haría al revez. Es decir, primero ejecuto un programa que me lea la vista lógica y me
RE: AYUDA EN SQL
La verdad es que al no saber muy bien de que hablamos no lo tengo claro. Pero a bote pronto si lo quieres hacer por sql insert into tabla_resumen (cliente, ct) select cliente, max(categoría) as ct from tabla group by cliente. O si lo quieres hacer en RPG con un setll *hival. De todas maneras si ya tenías un procedimiento almacenado que te buscaba la categoría mayor, sería cosa de modificarlo un poco para que te rellenara la tabla. A mi lo que me da la sensación, ya que dices que ahora tarda como 6 horas, que cada vez que llamas al procedimiento almacenado se te está volviendo a crear el join, y es ahí donde pierde el tiempo, por eso la cosa sería hacer solo una vez el join, y sacar toda la información de un tirón, y por eso te digo que crees la taba intermedia. Son cosas a mirar, prueba a generar el join a mano y mira cuanto tarda, si tarda poco estoy en lo cierto, si tarda 4 horas el problema es el join, y tendrías que replantearte como obtener esa información de otra manera, sin ese join. Un saludo Luis Date: Mon, 20 Dec 2010 17:00:07 -0800 From: oosc...@yahoo.com Subject: RE: AYUDA EN SQL To: forum.help400@listas.combios.es Ok, pero como haria para que en esa nueva tabla me queden solo la categoria mayor de todos los registros de un cliente, y gracias por la respuesta no habia visto la respuesta porque me cayo en el correo como spam, --- El lun, 12/13/10, Luis . digic...@hotmail.com escribió: De: Luis . digic...@hotmail.com Asunto: RE: AYUDA EN SQL A: forum.help400 forum.help400@listas.combios.es Fecha: lunes, 13 de diciembre de 2010, 03:00 am Hola Oscar: La verdad es que no entiendo muy bien la pregunta, pero por lo que intuyo, yo lo haría al revez. Es decir, primero ejecuto un programa que me lea la vista lógica y me genere una tabla con todos los clientes y su mayor valor (que no se muy bien que es, pero parece que es lo que buscas), y luego de tu programa en lugar de llamar al procedimiento almacenado hago una lectura sobre esa nueva tabla. Un saludo Luis Date: Sun, 12 Dec 2010 20:11:49 -0800 From: oosc...@yahoo.com Subject: AYUDA EN SQL To: forum.help400@listas.combios.es Buen dia estimados foreros primero como ya se aproxima navidad desearles una feliz navidad anticipadamente y luego solicitarle una ayuda que es la siguiente: Tengo un programa en ile que llama un procedimiento almacenado el cual tiene un cursor para poder tomar el valor mayor de todos los registro de un cliente desde una vista logica creada con INNER JOIN de varios archivos para asignarselo a todos los registros que tenga ese cliente y que tenga la categoria mas alta esto lo ejecuto registro por registro y cada uno llama este procedimiento almacenado todo funciona a la perfecccion el inconveniente es que es demasiado lento se tarda como cerca de 6 horas para verificar todos los registro lo cual es demasiado si alguien me puede hechar una manito le estare eternamente agradecido ya he probado con varias tegnicas pero no logro optimizarlo. de Antemano Gracias. �nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 � Publicaciones Help400, S.L. -Adjunto en línea a continuación- Ú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.
RE: AYUDA EN SQL
Ok, pero como haria para que en esa nueva tabla me queden solo la categoria mayor de todos los registros de un cliente, y gracias por la respuesta no habia visto la respuesta porque me cayo en el correo como spam, --- El lun, 12/13/10, Luis . digic...@hotmail.com escribió: De: Luis . digic...@hotmail.com Asunto: RE: AYUDA EN SQL A: forum.help400 forum.help400@listas.combios.es Fecha: lunes, 13 de diciembre de 2010, 03:00 am Hola Oscar: La verdad es que no entiendo muy bien la pregunta, pero por lo que intuyo, yo lo haría al revez. Es decir, primero ejecuto un programa que me lea la vista lógica y me genere una tabla con todos los clientes y su mayor valor (que no se muy bien que es, pero parece que es lo que buscas), y luego de tu programa en lugar de llamar al procedimiento almacenado hago una lectura sobre esa nueva tabla. Un saludo Luis Date: Sun, 12 Dec 2010 20:11:49 -0800 From: oosc...@yahoo.com Subject: AYUDA EN SQL To: forum.help400@listas.combios.es Buen dia estimados foreros primero como ya se aproxima navidad desearles una feliz navidad anticipadamente y luego solicitarle una ayuda que es la siguiente: Tengo un programa en ile que llama un procedimiento almacenado el cual tiene un cursor para poder tomar el valor mayor de todos los registro de un cliente desde una vista logica creada con INNER JOIN de varios archivos para asignarselo a todos los registros que tenga ese cliente y que tenga la categoria mas alta esto lo ejecuto registro por registro y cada uno llama este procedimiento almacenado todo funciona a la perfecccion el inconveniente es que es demasiado lento se tarda como cerca de 6 horas para verificar todos los registro lo cual es demasiado si alguien me puede hechar una manito le estare eternamente agradecido ya he probado con varias tegnicas pero no logro optimizarlo. de Antemano Gracias. �nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 � Publicaciones Help400, S.L. -Adjunto en línea a continuación- Ú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.
RE: AYUDA EN SQL
Hola Oscar: La verdad es que no entiendo muy bien la pregunta, pero por lo que intuyo, yo lo haría al revez. Es decir, primero ejecuto un programa que me lea la vista lógica y me genere una tabla con todos los clientes y su mayor valor (que no se muy bien que es, pero parece que es lo que buscas), y luego de tu programa en lugar de llamar al procedimiento almacenado hago una lectura sobre esa nueva tabla. Un saludo Luis Date: Sun, 12 Dec 2010 20:11:49 -0800 From: oosc...@yahoo.com Subject: AYUDA EN SQL To: forum.help400@listas.combios.es Buen dia estimados foreros primero como ya se aproxima navidad desearles una feliz navidad anticipadamente y luego solicitarle una ayuda que es la siguiente: Tengo un programa en ile que llama un procedimiento almacenado el cual tiene un cursor para poder tomar el valor mayor de todos los registro de un cliente desde una vista logica creada con INNER JOIN de varios archivos para asignarselo a todos los registros que tenga ese cliente y que tenga la categoria mas alta esto lo ejecuto registro por registro y cada uno llama este procedimiento almacenado todo funciona a la perfecccion el inconveniente es que es demasiado lento se tarda como cerca de 6 horas para verificar todos los registro lo cual es demasiado si alguien me puede hechar una manito le estare eternamente agradecido ya he probado con varias tegnicas pero no logro optimizarlo. de Antemano Gracias. �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.
RE: SQl Ayuda
Yo se que no escribi yo el ejemplo pero entiendo lo siguiente: Según la pregunta inicial, querías un count, entonces sumar varios 1 es cun count, y si sumas el valor del campo es un sum no un count. A veces pedimos ayuda pero con garrote. From: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Jesus Busquets Sent: Jueves, 02 de Diciembre de 2010 01:58 a.m. To: forum.help400 Subject: Re: SQl Ayuda Perdona, pero al ver el ejemplo, me ha surgido una duda que me corroe... ¿por qué poner Sum(Case When 1 = 1 Then WSACIC ELSE 0 END) As MERCADO y no simplemente Sum(WSACIC) as MERCADO ? Ya se que a veces nos complicamos la vida, pero es que... El 01/12/2010 22:29, Hector Vera G. escribió: Aquí un ejemplo: Select WCONSU, Sum(Case When 1 = 1 Then WSACIC ELSE 0 END) As MERCADO, Sum(Case When WCIA = 'MI EMPRESA' Then WSACIC Else 0 END) As EMPRESA FromACSNEWDATA/Q0930WF WhereWFRES = :xdesde AndWFRES = :xhasta AndWGANA = 'GANADAS' AndWTIPCIA = 'SEG' AndWzona = ' ' Group By WCONSU; De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Carlos Pedrozo Enviado el: miércoles, 01 de diciembre de 2010 03:00 p.m. Para: forum.help400@listas.combios.es Asunto: SQl Ayuda Buen dia Foro; quiesera hacer una consulta a los gurues de SQL. Tengo una sentencia (ver adjunto) en donde se agrupa por un campo X. EXEC SQL Declare MyCsrB Cursor for Select campoX, count(*) as Cant from LIBRERIA/ARCHIVO where Codigo = '3002' and (taestad = '01' or taestad = '00' and taestre = '01') and tasucur = :sucur_w Group by campox Order by campox for read only; Lo que quiero realizar es contar segun algunos valores . Se puede agregar un CASE o IF; alguien tiene un ejemplo. Gracias y saludos _ Este mensaje se transmite exclusivamente para el uso del destinatario previsto y puede contener información que es PRIVILEGIADA y/o CONFIDENCIAL. Dicha información no expresa la posición de la compañía. Si usted no es el destinatario previsto, se le notifica por este medio, que cualquier uso, difusión, acceso o copia de esta comunicación está prohibida terminantemente. Si usted ha recibido esta comunicación por error, destruya por favor todas las copias de este mensaje y sus adjuntos y notifíquenos inmediatamente. This message is sent exclusively for the use of the intended recipient and may contain information that is PRIVILEGED and/or CONFIDENTIAL. This information do not express the position of the company. If you are not the intended recipient, you are hereby notified that any use, dissemination, disclosure or copying of this communication is strictly prohibited. If you have received this communication by mistake, please destroy all copies of this message and its attachments and notify us immediately Bienvenido a la Vida, Bienvenido a InVita Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L. -- Jesús Busquets GRESPANIA, S.A. Este mensaje se dirige exclusivamente a su destinatario y puede contener información privilegiada o confidencial. Si no es Vd. el destinatario indicado, queda notificado de que la utilización, divulgación y/o copia sin autorización está prohibida en virtud de la legislación vigente. Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma vía y proceda a su destrucción. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
SQl Ayuda
Buen dia Foro; quiesera hacer una consulta a los gurues de SQL. Tengo una sentencia (ver adjunto) en donde se agrupa por un campo X. EXEC SQL Declare MyCsrB Cursor for Select campoX, count(*) as Cant from LIBRERIA/ARCHIVO where Codigo = '3002' and (taestad = '01' or taestad = '00' and taestre = '01') and tasucur = :sucur_w Group by campox Order by campox for read only; Lo que quiero realizar es contar segun algunos valores . Se puede agregar un CASE o IF; alguien tiene un ejemplo. Gracias y saludos Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: SQl Ayuda
Te referis a algo asi: SELECT campo, CASE WHEN campo = 'P' THEN COUNT(*) ELSE 0 END FROM biblioteca/archivo GROUP BY campo From: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Carlos Pedrozo Sent: Miércoles, 01 de Diciembre de 2010 02:00 p.m. To: forum.help400@listas.combios.es Subject: SQl Ayuda Buen dia Foro; quiesera hacer una consulta a los gurues de SQL. Tengo una sentencia (ver adjunto) en donde se agrupa por un campo X. EXEC SQL Declare MyCsrB Cursor for Select campoX, count(*) as Cant from LIBRERIA/ARCHIVO where Codigo = '3002' and (taestad = '01' or taestad = '00' and taestre = '01') and tasucur = :sucur_w Group by campox Order by campox for read only; Lo que quiero realizar es contar segun algunos valores . Se puede agregar un CASE o IF; alguien tiene un ejemplo. Gracias y saludos Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: SQl Ayuda
Aquí un ejemplo: Select WCONSU, Sum(Case When 1 = 1 Then WSACIC ELSE 0 END) As MERCADO, Sum(Case When WCIA = 'MI EMPRESA' Then WSACIC Else 0 END) As EMPRESA FromACSNEWDATA/Q0930WF WhereWFRES = :xdesde AndWFRES = :xhasta AndWGANA = 'GANADAS' AndWTIPCIA = 'SEG' AndWzona = ' ' Group By WCONSU; De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Carlos Pedrozo Enviado el: miércoles, 01 de diciembre de 2010 03:00 p.m. Para: forum.help400@listas.combios.es Asunto: SQl Ayuda Buen dia Foro; quiesera hacer una consulta a los gurues de SQL. Tengo una sentencia (ver adjunto) en donde se agrupa por un campo X. EXEC SQL Declare MyCsrB Cursor for Select campoX, count(*) as Cant from LIBRERIA/ARCHIVO where Codigo = '3002' and (taestad = '01' or taestad = '00' and taestre = '01') and tasucur = :sucur_w Group by campox Order by campox for read only; Lo que quiero realizar es contar segun algunos valores . Se puede agregar un CASE o IF; alguien tiene un ejemplo. Gracias y saludos Este mensaje se transmite exclusivamente para el uso del destinatario previsto y puede contener información que es PRIVILEGIADA y/o CONFIDENCIAL. Dicha información no expresa la posición de la compañía. Si usted no es el destinatario previsto, se le notifica por este medio, que cualquier uso, difusión, acceso o copia de esta comunicación está prohibida terminantemente. Si usted ha recibido esta comunicación por error, destruya por favor todas las copias de este mensaje y sus adjuntos y notifíquenos inmediatamente. This message is sent exclusively for the use of the intended recipient and may contain information that is PRIVILEGED and/or CONFIDENTIAL. This information do not express the position of the company. If you are not the intended recipient, you are hereby notified that any use, dissemination, disclosure or copying of this communication is strictly prohibited. If you have received this communication by mistake, please destroy all copies of this message and its attachments and notify us immediately Bienvenido a la Vida, Bienvenido a InVita Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: SQl Ayuda
Perdona, pero al ver el ejemplo, me ha surgido una duda que me corroe... por qu poner Sum(Case When 1 = 1 Then WSACIC ELSE 0 END) As MERCADO y no simplemente Sum(WSACIC) as MERCADO ? Ya se que a veces nos complicamos la vida, pero es que... El 01/12/2010 22:29, Hector Vera G. escribi: Aqu un ejemplo: Select WCONSU, Sum(Case When 1 = 1 Then WSACIC ELSE 0 END) As MERCADO, Sum(Case When WCIA = 'MI EMPRESA' Then WSACIC Else 0 END) As EMPRESA From ACSNEWDATA/Q0930WF Where WFRES = :xdesde And WFRES = :xhasta And WGANA = 'GANADAS' And WTIPCIA = 'SEG' And Wzona = ' ' Group By WCONSU; De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Carlos Pedrozo Enviado el: mircoles, 01 de diciembre de 2010 03:00 p.m. Para: forum.help400@listas.combios.es Asunto: SQl Ayuda Buen dia Foro; quiesera hacer una consulta a los gurues de SQL. Tengo una sentencia (ver adjunto) en donde se agrupa por un campo X. EXEC SQL Declare MyCsrB Cursor for Select campoX, count(*) as Cant from LIBRERIA/ARCHIVO whereCodigo = '3002' and (taestad = '01' or taestad = '00' and taestre = '01') and tasucur = :sucur_w Group bycampox Order by campox for read only; Lo que quiero realizar es contar segun algunos valores . Se puede agregar un CASE o IF;alguien tiene un ejemplo. Gracias y saludos Este mensaje se transmite exclusivamente para el uso del destinatario previsto y puede contener informacin que es PRIVILEGIADA y/o CONFIDENCIAL. Dicha informacin no expresa la posicin de la compaa. Si usted no es el destinatario previsto, se le notifica por este medio, que cualquier uso, difusin, acceso o copia de esta comunicacin est prohibida terminantemente. Si usted ha recibido esta comunicacin por error, destruya por favor todas las copias de este mensaje y sus adjuntos y notifquenos inmediatamente. This message is sent exclusively for the use of the intended recipient and may contain information that is PRIVILEGED and/or CONFIDENTIAL. This information do not express the position of the company. If you are not the intended recipient, you are hereby notified that any use, dissemination, disclosure or copying of this communication is strictly prohibited. If you have received this communication by mistake, please destroy all copies of this message and its attachments and notify us immediately "Bienvenido a la Vida, Bienvenido a InVita" nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 Publicaciones Help400, S.L. -- Jess Busquets GRESPANIA, S.A. Este mensaje se dirige exclusivamente a su destinatario y puede contener informacin privilegiada o confidencial. Si no es Vd. el destinatario indicado, queda notificado de que la utilizacin, divulgacin y/o copia sin autorizacin est prohibida en virtud de la legislacin vigente. Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma va y proceda a su destruccin. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Ayuda en SQL
En ese caso basta hacer: UPDATE libreria/tablaA as A SET a.HORPAG = 0, a.CODRET = 0 where exists (select * from libreria/tablaB where nrorec = a.rtsecu) Saludos Andrés Ros Salvá Departamento de Informática Telf. 971 21 34 97 Fax 971 43 29 15 e-mail: a...@mutuabalear.es http://www.mutuabalear.es/ www.mutuabalear.es | http://www.elautonomo.es/ www.elautonomo.es De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Carlos Pedrozo Enviado el: jueves, 04 de noviembre de 2010 19:32 Para: forum.help400@listas.combios.es Asunto: RE: Ayuda en SQL Alex; esta es la sentencia que quiero ejecutar. En mi caso quiero cerar 2 campos. UPDATE libreria/tablaA as A SET a.HORPAG = 0, a.CODRET = 0 (select * from libreria/tablaB where nrorec = a.rtsecu) _ Date: Thu, 4 Nov 2010 18:12:33 +0100 Subject: Re: Ayuda en SQL From: a...@corretge.cat To: forum.help400@listas.combios.es Prueba con update A set a.campoZ = (select b.campoZ from B where b.campoX = a.campoX) siempre que la relación sea de 1-1 Atentament / Kind Regards Àlex Corretgé a/e - wave: mailto:a...@corretge.cat a...@corretge.cat Imagen quitada por el remitente. Carrer de la Font, 2 17142 - Verges Tel: +34 972 780 422 Cell: +34 669 86 92 64 Serveis Informàtics Corretgé.com SLU *http://corretge.cat/ http://corretge.cat/ * skype: corretge_com * LinkedIn: http://www.linkedin.com/in/corretge http://www.linkedin.com/in/corretge * News: http://bloc.corretge.cat/ http://bloc.corretge.cat 2010/11/4 Carlos Pedrozo paipuk...@hotmail.com Estimados Foreros ; Necesito hacer una actualizacion con SQL desde una tabla A a una Taba B. Tengo 2 campos en ambas tablas para hacer el link, mi consulta en particular es que nunca hice este tipo de actualizacion. Alguien tiene un ejemplo de realizar actualizacion de este tipo (tipo Inner Join). Gracias de antemano. Saludos Carlos Pedrozo Ú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. __ Sus datos personales serán incorporados a un fichero de MUTUA BALEAR para que pueda ponerse en contacto con usted y realizar comunicaciones por cuestiones derivadas de su actividad. Para el ejercicio de sus derechos de acceso, rectificación, cancelación y oposición puede dirigirse por escrito a MUTUA BALEAR, Mutua de Accidentes de Trabajo y Enfermedades Profesionales de la Seguridad social número 183, c/ Bisbe Campins, 4 de Palma de Mallorca. Este mensaje y sus documentos adjuntos son confidenciales. Si usted no es el destinatario, por favor póngalo en conocimiento del remitente y elimine esta comunicación y los documentos adjuntos de su sistema, sin reproducir ni comunicar sus contenidos. La transmisión de correo electrónico no garantiza que sea seguro o libre de error, por lo que declinamos cualquier responsabilidad al respecto. image001.jpg Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Ayuda en SQL
Excelente Andres; funciona perfectamente. Gracias por tu ayuda. Un fuerte abrazo. Carlos Pedrozo Enxet Net System From: a...@mutuabalear.es To: forum.help400@listas.combios.es Subject: RE: Ayuda en SQL Date: Fri, 5 Nov 2010 08:43:25 +0100 En ese caso basta hacer: UPDATE libreria/tablaA as A SET a.HORPAG = 0, a.CODRET = 0 where exists (select * from libreria/tablaB where nrorec = a.rtsecu) Saludos Andrés Ros Salvá Departamento de Informática Telf. 971 21 34 97 Fax 971 43 29 15 e-mail: a...@mutuabalear.es www.mutuabalear.es | www.elautonomo.es De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Carlos Pedrozo Enviado el: jueves, 04 de noviembre de 2010 19:32 Para: forum.help400@listas.combios.es Asunto: RE: Ayuda en SQL Alex; esta es la sentencia que quiero ejecutar. En mi caso quiero cerar 2 campos. UPDATE libreria/tablaA as A SET a.HORPAG = 0, a.CODRET = 0 (select * from libreria/tablaB where nrorec = a.rtsecu) Date: Thu, 4 Nov 2010 18:12:33 +0100 Subject: Re: Ayuda en SQL From: a...@corretge.cat To: forum.help400@listas.combios.es Prueba con update A set a.campoZ = (select b.campoZ from B where b.campoX = a.campoX) siempre que la relación sea de 1-1 Atentament / Kind Regards Àlex Corretgé a/e - wave: a...@corretge.cat Carrer de la Font, 2 17142 - Verges Tel: +34 972 780 422 Cell: +34 669 86 92 64 Serveis Informàtics Corretgé.com SLU http://corretge.cat/ skype: corretge_com LinkedIn: http://www.linkedin.com/in/corretge News: http://bloc.corretge.cat 2010/11/4 Carlos Pedrozo paipuk...@hotmail.com Estimados Foreros ; Necesito hacer una actualizacion con SQL desde una tabla A a una Taba B. Tengo 2 campos en ambas tablas para hacer el link, mi consulta en particular es que nunca hice este tipo de actualizacion. Alguien tiene un ejemplo de realizar actualizacion de este tipo (tipo Inner Join). Gracias de antemano. Saludos Carlos Pedrozo Ú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. __ Sus datos personales serán incorporados a un fichero de MUTUA BALEAR para que pueda ponerse en contacto con usted y realizar comunicaciones por cuestiones derivadas de su actividad. Para el ejercicio de sus derechos de acceso, rectificación, cancelación y oposición puede dirigirse por escrito a MUTUA BALEAR, Mutua de Accidentes de Trabajo y Enfermedades Profesionales de la Seguridad social número 183, c/ Bisbe Campins, 4 de Palma de Mallorca. Este mensaje y sus documentos adjuntos son confidenciales. Si usted no es el destinatario, por favor póngalo en conocimiento del remitente y elimine esta comunicación y los documentos adjuntos de su sistema, sin reproducir ni comunicar sus contenidos. La transmisión de correo electrónico no garantiza que sea seguro o libre de error, por lo que declinamos cualquier responsabilidad al respecto. �nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 � Publicaciones Help400, S.L. attachment: image001.jpg Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Ayuda en SQL
Estimados Foreros ; Necesito hacer una actualizacion con SQL desde una tabla A a una Taba B. Tengo 2 campos en ambas tablas para hacer el link, mi consulta en particular es que nunca hice este tipo de actualizacion. Alguien tiene un ejemplo de realizar actualizacion de este tipo (tipo Inner Join). Gracias de antemano. Saludos Carlos Pedrozo Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Ayuda en SQL
Prueba con update A set a.campoZ = (select b.campoZ from B where b.campoX = a.campoX) siempre que la relación sea de 1-1 Atentament / Kind Regards Àlex Corretgé a/e - wave: a...@corretge.cat Carrer de la Font, 2 17142 - Verges Tel: +34 972 780 422 Cell: +34 669 86 92 64 Serveis Informàtics Corretgé.com SLU - http://corretge.cat/ - skype: corretge_com - LinkedIn: http://www.linkedin.com/in/corretge - News: http://bloc.corretge.cat 2010/11/4 Carlos Pedrozo paipuk...@hotmail.com Estimados Foreros ; Necesito hacer una actualizacion con SQL desde una tabla A a una Taba B. Tengo 2 campos en ambas tablas para hacer el link, mi consulta en particular es que nunca hice este tipo de actualizacion. Alguien tiene un ejemplo de realizar actualizacion de este tipo (tipo Inner Join). Gracias de antemano. Saludos Carlos Pedrozo Ú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.
RE: Ayuda en SQL
Alex; esta es la sentencia que quiero ejecutar. En mi caso quiero cerar 2 campos. UPDATE libreria/tablaA as A SET a.HORPAG = 0, a.CODRET = 0 (select * from libreria/tablaB where nrorec = a.rtsecu) Date: Thu, 4 Nov 2010 18:12:33 +0100 Subject: Re: Ayuda en SQL From: a...@corretge.cat To: forum.help400@listas.combios.es Prueba con update A set a.campoZ = (select b.campoZ from B where b.campoX = a.campoX) siempre que la relación sea de 1-1 Atentament / Kind Regards Àlex Corretgé a/e - wave: a...@corretge.cat Carrer de la Font, 2 17142 - Verges Tel: +34 972 780 422 Cell: +34 669 86 92 64 Serveis Informàtics Corretgé.com SLU http://corretge.cat/ skype: corretge_com LinkedIn: http://www.linkedin.com/in/corretge News: http://bloc.corretge.cat 2010/11/4 Carlos Pedrozo paipuk...@hotmail.com Estimados Foreros ; Necesito hacer una actualizacion con SQL desde una tabla A a una Taba B. Tengo 2 campos en ambas tablas para hacer el link, mi consulta en particular es que nunca hice este tipo de actualizacion. Alguien tiene un ejemplo de realizar actualizacion de este tipo (tipo Inner Join). Gracias de antemano. Saludos Carlos Pedrozo Ú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.
RE: Ayuda en SQL
Yo a esto le añadiría (para que no haga actualización si no existe en la tabla B) un EXISTS, quedando como sigue: Update A set a.campoZ = (select b.campoZ from B where b.campoX = a.campoX) Where exists ( select * from B where b.campoX = a.campoX) Saludos Andrés Ros Salvá Departamento de Informática Telf. 971 21 34 97 Fax 971 43 29 15 e-mail: a...@mutuabalear.es http://www.mutuabalear.es/ www.mutuabalear.es | http://www.elautonomo.es/ www.elautonomo.es De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Àlex Corretgé Enviado el: jueves, 04 de noviembre de 2010 18:13 Para: forum.help400 Asunto: Re: Ayuda en SQL Prueba con update A set a.campoZ = (select b.campoZ from B where b.campoX = a.campoX) siempre que la relación sea de 1-1 Atentament / Kind Regards Àlex Corretgé a/e - wave: mailto:a...@corretge.cat a...@corretge.cat Imagen quitada por el remitente. Carrer de la Font, 2 17142 - Verges Tel: +34 972 780 422 Cell: +34 669 86 92 64 Serveis Informàtics Corretgé.com SLU *http://corretge.cat/ http://corretge.cat/ * skype: corretge_com * LinkedIn: http://www.linkedin.com/in/corretge http://www.linkedin.com/in/corretge * News: http://bloc.corretge.cat http://bloc.corretge.cat 2010/11/4 Carlos Pedrozo paipuk...@hotmail.com Estimados Foreros ; Necesito hacer una actualizacion con SQL desde una tabla A a una Taba B. Tengo 2 campos en ambas tablas para hacer el link, mi consulta en particular es que nunca hice este tipo de actualizacion. Alguien tiene un ejemplo de realizar actualizacion de este tipo (tipo Inner Join). Gracias de antemano. Saludos Carlos Pedrozo Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L. __ Sus datos personales serán incorporados a un fichero de MUTUA BALEAR para que pueda ponerse en contacto con usted y realizar comunicaciones por cuestiones derivadas de su actividad. Para el ejercicio de sus derechos de acceso, rectificación, cancelación y oposición puede dirigirse por escrito a MUTUA BALEAR, Mutua de Accidentes de Trabajo y Enfermedades Profesionales de la Seguridad social número 183, c/ Bisbe Campins, 4 de Palma de Mallorca. Este mensaje y sus documentos adjuntos son confidenciales. Si usted no es el destinatario, por favor póngalo en conocimiento del remitente y elimine esta comunicación y los documentos adjuntos de su sistema, sin reproducir ni comunicar sus contenidos. La transmisión de correo electrónico no garantiza que sea seguro o libre de error, por lo que declinamos cualquier responsabilidad al respecto. image001.jpg Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Ayuda con SUBFICHERO
Yo lo tengo hecho así: A R SUBF SFL A*campos del subfile A R CONTROL SFLCTL(SUBF) A SFLCSRRRN(CSRRRN) ACSRRRN 5S 0H Después de lectura/escritura del registro CONTROL en la variable CSRRRN, tengo el número relativo de registro del subfile donde se quedó el cursor. No sé si te puede valer ... Un saludo. El 22 de octubre de 2010 14:24, INFORMATICA informat...@turco-spain.comescribió: Buenas tardes. Os explico lo que me gustaría hacer: Un subfichero de unos 200 registros. El tamaño puede variar. Que el usuario marcara encima de un registro e hiciera algo. El diseño debería ser parecido al de un menú. He mirado el MNUBAR, pero no me aclaro. Alguien tiene algún ejemplo? Gracias Este mensaje se dirige exclusivamente a su destinatario y puede contener información CONFIDENCIAL sometida a secreto profesional o cuya divulgación este prohibida en virtud de la legislación vigente. Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma vía y proceda a su destrucción. (This message is intended exclusively for its address and may contain information that is CONFIDENTIAL and protected by a professional privilege or whose disclosure is prohibited by law. If this message has been received in error, please immediately notify us via e-mail and delete it.) Ú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.
Re: Ayuda con SUBFICHERO
No se si esto te puede valer está en COBOL: R P01 RTNCSRLOC(REGCUR CAMCUR) CSRLOC(FILA COLU) FILA3S 0H COLU 3S 0H REGCUR10A H CAMCUR10A H ZESTCTL 7A B 4 51 1 22'CARGA DE ESTACIONES' ZGRPCTL 7A B 4 51 3 22'CARGA DE GRUPOS' En programa (COBOL) CONFIGURATION SECTION. SOURCE-COMPUTER. AS-400. OBJECT-COMPUTER. AS-400. SPECIAL-NAMES. DECIMAL-POINT IS COMMA I-O-FEEDBACK IS I-O-F LOCAL-DATAIS LDA. working 03 LIN-CURSOR PIC 99. 03 COL-CURSOR PIC 99. Despues de leer pantalla ACCEPT AREA-PANTALLA FROM I-O-F. DIVIDE POS-CURSOR BY 256 GIVING LIN-CURSOR REMAINDER COL-CURSOR. Con esto controlas la linea y columna donde pulsa el raton Si preguntas por el campo de pantalla CAMCUR que es donde este situado el cursor If camcur(1:4) = ZEST proceso1 If camcur(1:4) = ZGRP proceso2 El 22 de octubre de 2010 14:24, INFORMATICA informat...@turco-spain.comescribió: Buenas tardes. Os explico lo que me gustaría hacer: Un subfichero de unos 200 registros. El tamaño puede variar. Que el usuario marcara encima de un registro e hiciera algo. El diseño debería ser parecido al de un menú. He mirado el MNUBAR, pero no me aclaro. Alguien tiene algún ejemplo? Gracias Este mensaje se dirige exclusivamente a su destinatario y puede contener información CONFIDENCIAL sometida a secreto profesional o cuya divulgación este prohibida en virtud de la legislación vigente. Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma vía y proceda a su destrucción. (This message is intended exclusively for its address and may contain information that is CONFIDENTIAL and protected by a professional privilege or whose disclosure is prohibited by law. If this message has been received in error, please immediately notify us via e-mail and delete it.) Ú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.
Re: Ayuda con SUBFICHERO
Hola, no se si comprendí bien pero por las dudas te paso unas ideas. Desde el Programa podes detectar cuando hicieron por ejemplo Enter en la pantalla, ademas podes saber excatamente donde estaba parado el cursor. A posterior y haciendo una pequeña cuenta deberas determinar en que renglon del subfile esta el curso. Con ese dato y ademas sabiendo que pagina es ( aca tendrasque hacer carga del subfile por pagina ) podrias accedera los datos de la linea, para con eso abrir la ventana que solicita al usuario hacer algo. Aca no hay boton derecho ... lo tenes que programar vos. Saludos El 22/10/2010 09:24 a.m., INFORMATICA escribió: Buenas tardes. Os explico lo que me gustaría hacer: Un subfichero de unos 200 registros. El tamaño puede variar. Que el usuario marcara encima de un registro e hiciera algo. El diseño debería ser parecido al de un menú. He mirado el MNUBAR, pero no me aclaro. Alguien tiene algún ejemplo? Gracias Este mensaje se dirige exclusivamente a su destinatario y puede contener información CONFIDENCIAL sometida a secreto profesional o cuya divulgación este prohibida en virtud de la legislación vigente. Si ha recibido este mensaje por error,le rogamos que nos lo comunique inmediatamente por esta misma vía y proceda a su destrucción. (This message is intended exclusively for its address and may contain information that is CONFIDENTIAL and protected by a professional privilege or whose disclosure is prohibited by law. If this message has been received in error, please immediately notify us via e-mail and delete it.) Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L. -- .::. Nicolas Machado Metodo Argentina S.A. _ Tel: 02262 527431 Necochea, Buenos Aires. Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: Ayuda con SUBFICHERO
Yo utilize el sflchcctl. Quizas te puede servir esta fracción de código de pantalla. Lo que te va a devolver es un 1 en el sfl001 si el registro le dieron click. Saludos. A R WSF001SFL A*%%TS SD 20070329 162344 ESTBX001REL-V5R2M0 5722-WDS ASEL001 1Y 0H SFLCHCCTL ACCCO RH REFFLD(I0010/CCCO *LIBL/F00 ACCNAMERH REFFLD(I0010/CCNAME *LIBL/F ACCCRCDRH REFFLD(I0010/CCCRCD *LIBL/F AF148A O 1 4 A R WCT001SFLCTL(WSF001) A*%%TS SD 20080222 102236 ESTBX001REL-V5R2M0 5722-WDS A SFLSIZ(0100) A SFLPAG(0005) A WINDOW(1 14 22 56) A OVERLAY A 30 SFLDSP A 31 SFLDSPCTL A 32 SFLCLR A 30 SFLEND(*SCRBAR *SCRBAR) A 54 SFLMSG('Debe Seleccionar Entidad' 5- A 4) A SFLMLTCHC A CSRINPONLY A WDWTITLE((*TEXT 'Generación de Cuad- A re Conta Hacia COM') (*DSPATR RI HI- A ) *CENTER) From: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of INFORMATICA Sent: Viernes, 22 de Octubre de 2010 06:25 a.m. To: FORO_400 Subject: Ayuda con SUBFICHERO Buenas tardes. Os explico lo que me gustaría hacer: Un subfichero de unos 200 registros. El tamaño puede variar. Que el usuario marcara encima de un registro e hiciera algo. El diseño debería ser parecido al de un menú. He mirado el MNUBAR, pero no me aclaro. Alguien tiene algún ejemplo? Gracias Este mensaje se dirige exclusivamente a su destinatario y puede contener información CONFIDENCIAL sometida a secreto profesional o cuya divulgación este prohibida en virtud de la legislación vigente. Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma vía y proceda a su destrucción. (This message is intended exclusively for its address and may contain information that is CONFIDENTIAL and protected by a professional privilege or whose disclosure is prohibited by law. If this message has been received in error, please immediately notify us via e-mail and delete it.) Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: Ayuda con SUBFICHERO
No se si de esto se trata pero te cuento: Nosotros hemos probado muchos métodos al respecto y al final nos a dado resultado dos (uno mas que el otro por ser mas fácil de implementar) La idea es que un usuario carga un sub-archivo de consulta (protegido) Elije una opción o simplemente pulsa Intro sobre la línea, y la línea se habilita para entrada. Puedes hacer dos cosas: una es actualizar el registro del sub-archivo en el que estas situado para entrada (algo complicado si no le has agarrado bien la lógica a los sub-archivos) Otra es solapando un formato de línea variable exactamente sobre registro del sub-archivo. Esto da la apariencia de que se actualiza el sub-archivo (al usuario te aseguro no le importa que método eliges, pero este últimos es bastante más sencillo de programar) Puedes tomar en cuenta lo siguiente: a.. Una línea variable a estas alturas suena como a un anacronismo, bueno si los es pero en este caso funciona muy bien b.. No es posible en un misma DDS tener un formato con sub-archivo y formato con líneas variables c.. Deberás tener dos DDS una con el sub-archivo y la otra con el de la línea variable (este ultimo incluso USROPN) d.. Tendrás que determinar la línea relativa del cursor en la pantalla y pasársela a la formato de la línea variable Saludos, MAURICIO HERRERA Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
Re: AYUDA
Hola varias preguntas sobre el formato de los datos: ¿los archivo de IFS qué formato tiene? ¿utilizan delimitador para los datos, coma o punto decimal? Lo pregunto porque en el CPYFRMIMPF del CL no indicas los parámetros RCDDLM ó FLDDLM para indicar éstos atributos de los ficheros de IFS y pueden ser necesarios. ¿ y lo mismo sobre la tabla WDBBASE/CESARV ¿es un archivo plano o tiene DDS ? Salu2 El 8 de octubre de 2010 13:52, Elvira Vázquez elvira_vazq...@edasnet.comescribió: Hola foreros Alguien me puede decir porque al ejecutar este *CPYFRMIMPF *me da como error CPF2817 con codigo de razon 11 Todo lo anterior hasta aquí lo hace bien pero no ejecuta la copia y no se porque Si en lugar de CPYFRMIMPF ejecuto CPYF el problema es que los nombre originales son muy largos pero iguales en las primeras 10 posiciones con lo que me machaca los ficheros que trae Columns . . . :1 71Edit WFUENTE/WFUETRAN SEU== CLFTPCRT2 FMT ** ...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 0001.16 /QSYS.LIB/WDBBASE.LIB/LISTF.FILE/LISTF.MBR') 0001.17 MONMSG MSGID(QSH0005) 0001.18 /*LEE EL ARCHIVO QUE CONTIEN LOS NOMBRES DESCONOCIDOS*/ 0001.19 START: 0001.20 RCVF RCDFMT(LISTF) 0001.21 MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(END)) 0001.22 /*EJECUTA QCLSCAN PARA ENCONTRAR SOLO LO NECESARIO*/ 0001.23 CALL PGM(QCLSCAN) PARM(LISTF STRLEN STRPOS + 0001.24PATTERN PATLEN TRANSLATE TRIM WILD + 0001.25 RESULT) 0001.26 CHGVAR VAR(RSLT) VALUE(RESULT) 0001.27 CHGVAR VAR(LSTPOS) VALUE(RSLT-1) 0001.28 CHGVAR VAR(LISTF2) VALUE(%SST(LISTF 1 LSTPOS)) 0001.29 CPYFRMIMPF FROMSTMF(LISTF) TOFILE(WDBBASE/CESARV) + 0001.30 MBROPT(*ADD) 0001.32 GOTO CMDLBL(START) 0004.00 END: ENDPGM F3=Exit F4=Prompt F5=Refresh F9=Retrieve F10=Cursor F11=Toggle F16=Repeat find F17=Repeat change F24=More keys Elvira Vázquez González __ Noticia legal: Este mensaje electrónico contiene información de EdasNet,s.l. que es privada y confidencial, siendo para el uso exclusivo de la persona(s) o entidades arriba mencionadas. Si usted no es el destinatario señalado, le informamos que cualquier divulgación, copia, distribución o uso de los contenidos está prohibida. Si usted ha recibido este mensaje por error, por favor borre su contenido lo antes posible. Muchas Gracias. __ *P* Antes de imprimir este e-mail piense bien si es necesario hacerlo: El medioambiente es cosa de todos Ú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.
AYUDA
Hola foreros Alguien me puede decir porque al ejecutar este CPYFRMIMPF me da como error CPF2817 con codigo de razon 11 Todo lo anterior hasta aquí lo hace bien pero no ejecuta la copia y no se porque Si en lugar de CPYFRMIMPF ejecuto CPYF el problema es que los nombre originales son muy largos pero iguales en las primeras 10 posiciones con lo que me machaca los ficheros que trae Columns . . . :1 71Edit WFUENTE/WFUETRAN SEU== CLFTPCRT2 FMT ** ...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 0001.16 /QSYS.LIB/WDBBASE.LIB/LISTF.FILE/LISTF.MBR') 0001.17 MONMSG MSGID(QSH0005) 0001.18 /*LEE EL ARCHIVO QUE CONTIEN LOS NOMBRES DESCONOCIDOS*/ 0001.19 START: 0001.20 RCVF RCDFMT(LISTF) 0001.21 MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(END)) 0001.22 /*EJECUTA QCLSCAN PARA ENCONTRAR SOLO LO NECESARIO*/ 0001.23 CALL PGM(QCLSCAN) PARM(LISTF STRLEN STRPOS + 0001.24PATTERN PATLEN TRANSLATE TRIM WILD + 0001.25RESULT) 0001.26 CHGVAR VAR(RSLT) VALUE(RESULT) 0001.27 CHGVAR VAR(LSTPOS) VALUE(RSLT-1) 0001.28 CHGVAR VAR(LISTF2) VALUE(%SST(LISTF 1 LSTPOS)) 0001.29 CPYFRMIMPF FROMSTMF(LISTF) TOFILE(WDBBASE/CESARV) + 0001.30 MBROPT(*ADD) 0001.32 GOTO CMDLBL(START) 0004.00 END: ENDPGM F3=Exit F4=Prompt F5=Refresh F9=Retrieve F10=Cursor F11=Toggle F16=Repeat find F17=Repeat change F24=More keys Elvira Vázquez González __ Noticia legal: Este mensaje electrónico contiene información de EdasNet,s.l. que es privada y confidencial, siendo para el uso exclusivo de la persona(s) o entidades arriba mencionadas. Si usted no es el destinatario señalado, le informamos que cualquier divulgación, copia, distribución o uso de los contenidos está prohibida. Si usted ha recibido este mensaje por error, por favor borre su contenido lo antes posible. Muchas Gracias. __ P Antes de imprimir este e-mail piense bien si es necesario hacerlo: El medioambiente es cosa de todos Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
RE: AYUDA
Puedes hacer esto tambien, a mi me funciona y me evita ese CPF2817 usa este comando para ver que folders tienes o crear uno nuevo, suponiendo que creaste uno que se llame FTP WRKFLR despues ejectua este comando para copiar de tu directorio al nuevo folder CPY OBJ('/ftp/NOMBREARCHIVO.TXT') TOOBJ('/qdls/FTP/NUEVO.txt') REPLACE(*YES) despues usa este comando CPYFRMPCD FROMFLR(FTP) TOFILE(WDBBASE/CESARV) FROMDOC(NUEVO.TXT) TRNFMT(*NOTEXT) Espero te sirva From: elvira_vazq...@edasnet.com To: forum.help400@listas.combios.es Subject: AYUDA Date: Fri, 8 Oct 2010 13:52:16 +0200 Hola foreros Alguien me puede decir porque al ejecutar este CPYFRMIMPF me da como error CPF2817 con codigo de razon 11 Todo lo anterior hasta aquí lo hace bien pero no ejecuta la copia y no se porque Si en lugar de CPYFRMIMPF ejecuto CPYF el problema es que los nombre originales son muy largos pero iguales en las primeras 10 posiciones con lo que me machaca los ficheros que trae Columns . . . :1 71Edit WFUENTE/WFUETRAN SEU== CLFTPCRT2 FMT ** ...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 0001.16 /QSYS.LIB/WDBBASE.LIB/LISTF.FILE/LISTF.MBR') 0001.17 MONMSG MSGID(QSH0005) 0001.18 /*LEE EL ARCHIVO QUE CONTIEN LOS NOMBRES DESCONOCIDOS*/ 0001.19 START: 0001.20 RCVF RCDFMT(LISTF) 0001.21 MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(END)) 0001.22 /*EJECUTA QCLSCAN PARA ENCONTRAR SOLO LO NECESARIO*/ 0001.23 CALL PGM(QCLSCAN) PARM(LISTF STRLEN STRPOS + 0001.24PATTERN PATLEN TRANSLATE TRIM WILD + 0001.25RESULT) 0001.26 CHGVAR VAR(RSLT) VALUE(RESULT) 0001.27 CHGVAR VAR(LSTPOS) VALUE(RSLT-1) 0001.28 CHGVAR VAR(LISTF2) VALUE(%SST(LISTF 1 LSTPOS)) 0001.29 CPYFRMIMPF FROMSTMF(LISTF) TOFILE(WDBBASE/CESARV) + 0001.30 MBROPT(*ADD) 0001.32 GOTO CMDLBL(START) 0004.00 END: ENDPGM F3=Exit F4=Prompt F5=Refresh F9=Retrieve F10=Cursor F11=Toggle F16=Repeat find F17=Repeat change F24=More keys Elvira Vázquez González __ Noticia legal: Este mensaje electrónico contiene información de EdasNet,s.l. que es privada y confidencial, siendo para el uso exclusivo de la persona(s) o entidades arriba mencionadas. Si usted no es el destinatario señalado, le informamos que cualquier divulgación, copia, distribución o uso de los contenidos está prohibida. Si usted ha recibido este mensaje por error, por favor borre su contenido lo antes posible. Muchas Gracias. __ P Antes de imprimir este e-mail piense bien si es necesario hacerlo: El medioambiente es cosa de todos �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.
RE: AYUDA
Siguiendo tus pasos (gracias por la ayuda) El problema es que tengo mas de un archivo en el origen y al hace el CPY me obliga a elegir solo uno Hay forma de hacer que pase todos sin tener que elegir nada?? Elvira _ De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Gerardo Santillana Enviado el: viernes, 08 de octubre de 2010 15:35 Para: forum.help400@listas.combios.es Asunto: RE: AYUDA Puedes hacer esto tambien, a mi me funciona y me evita ese CPF2817 usa este comando para ver que folders tienes o crear uno nuevo, suponiendo que creaste uno que se llame FTP WRKFLR despues ejectua este comando para copiar de tu directorio al nuevo folder CPY OBJ('/ftp/NOMBREARCHIVO.TXT') TOOBJ('/qdls/FTP/NUEVO.txt') REPLACE(*YES) despues usa este comando CPYFRMPCD FROMFLR(FTP) TOFILE(WDBBASE/CESARV) FROMDOC(NUEVO.TXT) TRNFMT(*NOTEXT) Espero te sirva _ From: elvira_vazq...@edasnet.com To: forum.help400@listas.combios.es Subject: AYUDA Date: Fri, 8 Oct 2010 13:52:16 +0200 Hola foreros Alguien me puede decir porque al ejecutar este CPYFRMIMPF me da como error CPF2817 con codigo de razon 11 Todo lo anterior hasta aquí lo hace bien pero no ejecuta la copia y no se porque Si en lugar de CPYFRMIMPF ejecuto CPYF el problema es que los nombre originales son muy largos pero iguales en las primeras 10 posiciones con lo que me machaca los ficheros que trae Columns . . . :1 71Edit WFUENTE/WFUETRAN SEU== CLFTPCRT2 FMT ** ...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 0001.16 /QSYS.LIB/WDBBASE.LIB/LISTF.FILE/LISTF.MBR') 0001.17 MONMSG MSGID(QSH0005) 0001.18 /*LEE EL ARCHIVO QUE CONTIEN LOS NOMBRES DESCONOCIDOS*/ 0001.19 START: 0001.20 RCVF RCDFMT(LISTF) 0001.21 MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(END)) 0001.22 /*EJECUTA QCLSCAN PARA ENCONTRAR SOLO LO NECESARIO*/ 0001.23 CALL PGM(QCLSCAN) PARM(LISTF STRLEN STRPOS + 0001.24PATTERN PATLEN TRANSLATE TRIM WILD + 0001.25RESULT) 0001.26 CHGVAR VAR(RSLT) VALUE(RESULT) 0001.27 CHGVAR VAR(LSTPOS) VALUE(RSLT-1) 0001.28 CHGVAR VAR(LISTF2) VALUE(%SST(LISTF 1 LSTPOS)) 0001.29 CPYFRMIMPF FROMSTMF(LISTF) TOFILE(WDBBASE/CESARV) + 0001.30 MBROPT(*ADD) 0001.32 GOTO CMDLBL(START) 0004.00 END: ENDPGM F3=Exit F4=Prompt F5=Refresh F9=Retrieve F10=Cursor F11=Toggle F16=Repeat find F17=Repeat change F24=More keys Elvira Vázquez González __ Noticia legal: Este mensaje electrónico contiene información de EdasNet,s.l. que es privada y confidencial, siendo para el uso exclusivo de la persona(s) o entidades arriba mencionadas. Si usted no es el destinatario señalado, le informamos que cualquier divulgación, copia, distribución o uso de los contenidos está prohibida. Si usted ha recibido este mensaje por error, por favor borre su contenido lo antes posible. Muchas Gracias. __ P Antes de imprimir este e-mail piense bien si es necesario hacerlo: El medioambiente es cosa de todos �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.
RE: AYUDA
No pero puedes usar una variable para pasar el nombre del archvio, intenta con esto en tu CL CPY OBJ(LISTF) TOOBJ('/qdls/FTP/NUEVO.txt') REPLACE(*YES) From: elvira_vazq...@edasnet.com To: forum.help400@listas.combios.es Subject: RE: AYUDA Date: Fri, 8 Oct 2010 16:20:34 +0200 Siguiendo tus pasos (gracias por la ayuda) El problema es que tengo mas de un archivo en el origen y al hace el CPY me obliga a elegir solo uno Hay forma de hacer que pase todos sin tener que elegir nada?? Elvira De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Gerardo Santillana Enviado el: viernes, 08 de octubre de 2010 15:35 Para: forum.help400@listas.combios.es Asunto: RE: AYUDA Puedes hacer esto tambien, a mi me funciona y me evita ese CPF2817 usa este comando para ver que folders tienes o crear uno nuevo, suponiendo que creaste uno que se llame FTP WRKFLR despues ejectua este comando para copiar de tu directorio al nuevo folder CPY OBJ('/ftp/NOMBREARCHIVO.TXT') TOOBJ('/qdls/FTP/NUEVO.txt') REPLACE(*YES) despues usa este comando CPYFRMPCD FROMFLR(FTP) TOFILE(WDBBASE/CESARV) FROMDOC(NUEVO.TXT) TRNFMT(*NOTEXT) Espero te sirva From: elvira_vazq...@edasnet.com To: forum.help400@listas.combios.es Subject: AYUDA Date: Fri, 8 Oct 2010 13:52:16 +0200 Hola foreros Alguien me puede decir porque al ejecutar este CPYFRMIMPF me da como error CPF2817 con codigo de razon 11 Todo lo anterior hasta aquí lo hace bien pero no ejecuta la copia y no se porque Si en lugar de CPYFRMIMPF ejecuto CPYF el problema es que los nombre originales son muy largos pero iguales en las primeras 10 posiciones con lo que me machaca los ficheros que trae Columns . . . :1 71Edit WFUENTE/WFUETRAN SEU== CLFTPCRT2 FMT ** ...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 0001.16 /QSYS.LIB/WDBBASE.LIB/LISTF.FILE/LISTF.MBR') 0001.17 MONMSG MSGID(QSH0005) 0001.18 /*LEE EL ARCHIVO QUE CONTIEN LOS NOMBRES DESCONOCIDOS*/ 0001.19 START: 0001.20 RCVF RCDFMT(LISTF) 0001.21 MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(END)) 0001.22 /*EJECUTA QCLSCAN PARA ENCONTRAR SOLO LO NECESARIO*/ 0001.23 CALL PGM(QCLSCAN) PARM(LISTF STRLEN STRPOS + 0001.24PATTERN PATLEN TRANSLATE TRIM WILD + 0001.25RESULT) 0001.26 CHGVAR VAR(RSLT) VALUE(RESULT) 0001.27 CHGVAR VAR(LSTPOS) VALUE(RSLT-1) 0001.28 CHGVAR VAR(LISTF2) VALUE(%SST(LISTF 1 LSTPOS)) 0001.29 CPYFRMIMPF FROMSTMF(LISTF) TOFILE(WDBBASE/CESARV) + 0001.30 MBROPT(*ADD) 0001.32 GOTO CMDLBL(START) 0004.00 END: ENDPGM F3=Exit F4=Prompt F5=Refresh F9=Retrieve F10=Cursor F11=Toggle F16=Repeat find F17=Repeat change F24=More keys Elvira Vázquez González __ Noticia legal: Este mensaje electrónico contiene información de EdasNet,s.l. que es privada y confidencial, siendo para el uso exclusivo de la persona(s) o entidades arriba mencionadas. Si usted no es el destinatario señalado, le informamos que cualquier divulgación, copia, distribución o uso de los contenidos está prohibida. Si usted ha recibido este mensaje por error, por favor borre su contenido lo antes posible. Muchas Gracias. __ P Antes de imprimir este e-mail piense bien si es necesario hacerlo: El medioambiente es cosa de todos �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
Re: Ayuda
Considero que lo mejor es: El interactivo realiza un sbmjob. Luego del sbmjob, que queda con un rtvdtaq, con tiempo -1, el sbmjob cuando termine envia un snddtaq, este envio despierta al interactivo y recibe el dato de terminacion y si es asi LR. - Original Message - From: Carlos Pedrozo To: forum.help400@listas.combios.es Sent: Friday, June 18, 2010 8:35 AM Subject: RE: Ayuda Hola a Todos; Mil gracias por la ayuda y consejo. Voy a utilizar el esquema de dtaara. Gracias de nuevo. Carlos Pedrozo -- Date: Fri, 18 Jun 2010 13:08:05 +0200 Subject: Re: Ayuda From: marti.ri...@gmail.com To: forum.help400@listas.combios.es Javier, No es mala idea, ya tengo algo publicado en mi blog: http://as400howto.blogspot.com/2010/03/uso-del-mandato-wrkactjob.html http://as400howto.blogspot.com/2009/06/entradas-de-direccionamiento.html http://as400howto.blogspot.com/2009/06/colas-de-trabajos.html http://as400howto.blogspot.com/2009/05/cola-de-trabajos-independiente.html http://as400howto.blogspot.com/2009/04/someter-trabajos-batch.html http://as400howto.blogspot.com/2008/10/memoria-para-subsistema-dedicado.html Puede que haga una recopilación y lo cuelgue en el nuevo grupo IBM MydW Recursos400. Buen fin de semana. Martí Riera www.as400howto.com IBM DeveloperWorks: Group Recursos AS400 2010/6/18 Javier Mora jm...@musgrave.es Martí, veo que estás mucho mejor preparado que yo en la relativo a la gestión de trabajos del OS/400, ¿te animas a explicarlo y publicarlo en Recursos AS400? A mí me vendría de perlas. Chao. Javier De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Marti Riera Enviado el: viernes, 18 de junio de 2010 12:09 Para: forum.help400 Asunto: Re: Ayuda Bueno, No se si vamos abrir un nuevo hilo.., pero creo que es interesante explicarlo: En mi opinión, una tarea pesada puede tardar en ejecutarse muchos minutos o incluso algunas horas. De ejecutarse por lotes o interactivo puede variar bastante el tiempo pero nunca se conseguirá un tiempo de respuesta de segundos y mucho menos inferior a un segundo. Si y no, en general se cree que los trabajos interactivos van mas rápidos que los batch, pero depende. Básicamente todo depende de 2 parámetros del trabajo: a.. RUNPTY: (el mas conocido y usado) que indica al sistema operativo que prioridad de ejecución tiene el trabajo. Normalmente los trabajos interactivos tienen prioridad 25, que es mas alta que los batch y que por omisión tiene 50. Por tanto el OS400 si tiene tareas esperando de una prioridad mas alta las ejecutaran antes. b.. TIMESLICE: (menos conocido pero muy importante) nos indica cuantos mili-segundos permanecerá, como máximo, el trabajo activo en la CPU, para los interactivos este tiene un valor de 2000, en cambio los batch tienen 5000. esto es asi para permitir que los trabajos batch procesen mas datos cuando están ejecutándose y por eso son capaces de procesar más datos cuando están activos. c.. PURGE: Este lo dejo para otro día porque es más difícil de entender (yo a veces no lo entiendo) Por esta razón los trabajos interactivos aunque se ejecutan más a menudo (runpty), están menos tiempo activos (timeslice), esto es consecuente con el tipo de transacciones que debe ejecutar un trabajo interactivo y que depende más de las transacciones (interacciones) del usuario que esta frente a la sesión de pantalla, que deberían ser de corta duración. Por contra es la razón por la que los trabajos batch están menos veces activos, pero cuando lo están, están más tiempo; y también es consecuente con el tipo de trabajo que debe realizar y que mayormente son lecturas/escrituras masivas a disco. Esta claro que también depende de la carga de trabajos interactivos y de batch que tengamos al mismo tiempo en el sistema; eso es una de las razones por la que aparece el concepto de ventana batch y que hace referencia a las horas en que reservamos el sistema para ejecutar la mayoría de procesos batch de final o apertura de día/semana/mes/año, normalmente en horario nocturno y sin casi trabajos interactivos. Una recomendación: Ojo con jugar con estos valores si nos pasamos y según que condiciones, podemos a tener problemas de rendimiento. Saludos :o) Martí Riera www.as400howto.com 2010/6/18 Javier Mora jm...@musgrave.es Hola Martí: ..si la sesión tiene que esperar a que acabe el proceso por lotes no ganas demasiado. No tan de acuerdo, si lanzas tareas ppesadas por batch el sistema esta configurado para obtener un mejor rendimiento en este tipo de tareas, por tanto la recomendación sigue siendo la