Estimado JavierEs muy loable tu tiempo y esfuerzo para ayudar y compartir conocimiento, he tratado de mantenerme al margen de este tema, pero consideró (opinión personal, que a más de uno molestará), Este blog se ha convertido en el "RINCÓN DEL VAGO", Durante mi vida de estudiante, siempre busque respuestas en bibliotecas en época que no existía internet y profesionalmente he seguido haciéndolo esta vez en Internet, IBM en la era de Internet ha dispuesto muchas páginas donde se puede encontrar información muy valiosa e incluso descargar Manuales en nuestro caso de AS400/iSeries/Power 7 como hoy en día suele llamarse al AS400, La actitud de quien esta solicitando tu ayuda es muy "COMODA", porque no baja los manuales de ile y los lee, Si estan en inglés costará más entenderlo, pero esto te dará el conocimiento que buscas, Como un profesor nos dijo una vez es más fácil pedir que otros hagan nuestro trabajo que esforzarnos por hacerlo por nosotros mismo, Si un vago no se esfuerza siempre será "VAGO", a quienes esto pueda molestar mil disculpas pero el conocimiento esta "Internet" y sólo hay que buscarlo y leer Atte Sergio L Puentes Valladares Analista Programador Senior - iSeries
Sent from my Samsung Galaxy smartphone. -------- Original message --------From: Javier Mora <jm...@musgrave.es> Date: 14/11/2017 09:55 (GMT-06:00) To: "forum.help400" <forum.help400@listas.combios.es> Subject: RE: CRTBNDRPG vs CRTRPGMOD+CRTPGM (ILE RPG) ¡Ostras! Es que darte un curso acelerado de ILE por correo electrónico se me antoja bastante complicado ;-) He estado buscando cierto material en papel con el que yo empecé en ILE, pero ahora no lo encuentro. Son una serie de artículos (en castellano) publicados a finales de los 90 en la revista NEWS/400, donde explican conceptos como: - Compilación separada - Módulos - Construcción de programas de servicio y ejecutables - Grupos de activación - Tipos de enlace - Directorios de enlace Sin tener claro algunos de estos conceptos va a costar un poco, pero no es imposible. Yo te puede explicar, muy brevemente, como trabajo: 1. Suelo utilizar un miembro fuente por programa ejecutable. 2. Para compilar los programas ejecutables utilizo CRTBNDRPG. Este mandato genera el módulo del fuente, realiza el enlace y crea el programa en un solo paso. 3. Los programas de servicios son bibliotecas de funciones que pueden llamarse desde muchos programas. Normalmente agrupan procedimientos relacionadas. Por ejemplo, funciones para el manejo de fechas y horas, cadenas de caracteres, maestro de artículos o de clientes. 4. En el caso de los programas de servicio (*SRVPGM) puede tener uno o más miembros fuente. 5. Compilo cada miembro fuente con CRTRPGMOD. 6. Creo el programa de servicio con CRTSRVPGM. 7. Para automatizar el proceso de enlace (entre programa ejecutable y funciones en los programas de servicio) utilizo los directorios de enlace (*BNDDIR). Son listas de programas de servicio y módulos donde el enlazar buscará funciones y procedimientos “externos”. 8. En la hoja H de los programas utiliza la palabra clave BNDDIR( ‘nombre_directorio_enlace’ ) para indicar al compilador dónde debe buscar los programas de servicio. Me imagino que esto te ha liado aún mucho más. Si estás empezando es mejor tomárselo con calma. Si tienes una urgencia es mejor que lo desarrolles con tus “herramientas” habituales. En cuanto a los errores de compilación o de enlace dependen mucho del código y de lo que se quiere construir. Unos son muy fáciles de solucionar y otros son más complicados. Dinos qué error te está ocurriendo y muéstranos el código. Javier Mora De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Javier Baca Enviado el: martes, 14 de noviembre de 2017 15:02 Para: forum.help400@listas.combios.es Asunto: RE: CRTBNDRPG vs CRTRPGMOD+CRTPGM (ILE RPG) Gracias Javier pero sigo sin entenderlo y además me has añadido otro problema L …, los programas de servicio, que desconozco qué son. La guía “programación ILE RPG” (y la tengo en castellano) es la que me estoy leyendo precisamente y tras hacer alguna prueba me dá errores de compilación. Saludos, Javier From: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] On Behalf Of Javier Mora Sent: martes, 14 de noviembre de 2017 11:49 To: forum.help400 <forum.help400@listas.combios.es> Subject: RE: CRTBNDRPG vs CRTRPGMOD+CRTPGM (ILE RPG) Hay mucha documentación sobre este tema, tanto en los manuales de IBM como en los medios especialiazados on-line (MC, Four Handred, etc.). En nuestra extinta ServerNews (y anteriores) se publicaron muchos artículos en castellano. En mi caso utilizamos los módulos para crear con ellos programas de servicio, que luego se enlazan con los programas. El método de “sólo módulos” que comentas tiene el inconveniente de tener que reconstruir todos los programas que utilizan el módulo cambiado (con CRTPGM o UPDPGM). Los programas de servicio te evitan esta situación si cambia alguna función o se incluyen nueva funcionalidad. Aunque esté en inglés, la guía de programación de ILE RPG te puede explicar más detalladamente la técnica. De: forum.help400-boun...@listas.combios.es [mailto:forum.help400-boun...@listas.combios.es] En nombre de Javier Baca Enviado el: martes, 14 de noviembre de 2017 10:46 Para: forum.help400@listas.combios.es Asunto: CRTBNDRPG vs CRTRPGMOD+CRTPGM (ILE RPG) Buenos días : Nos gustaría saber si lo de crear un módulo, o varios (con CRTRPGMOD) y luego compilarlo todo con programa principal (con CRTPGM), se utiliza mucho. Lo comentamos porque lo estamos mirando de implantar y no nos acaba de funcionar por errores en compilación. Sobre las ventajas, lo tenemos claro, es la reutilización de código. Al margen de esto, por otro lado, también nos gustaría saber cómo funciona todo esto. ¿Nos podríais explicar por favor “brevemente” cual es la estructura de programa que llame a un procedimiento que está dentro un módulo? Un saludo y muchas gracias, Javier
____________________________________________________ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.