SlideShare una empresa de Scribd logo
1 de 30
Tema: 
RPGLE 
• Introducción 
• Tipos de hojas 
• Operadores Aritméticos, de 
Relación y Lógicos. 
2
REPORT PROGRAM GENERATOR (RPG) 
• Es un lenguaje de programación de alto nivel desarrollado y diseñado por 
IBM para generar informes comerciales o de negocios. 
• Ha sido actualizado en diversas ocasiones, dando origen a las diferentes 
versiones del lenguaje. Una de las últimas actualizaciones que se ha 
realizado hasta la fecha es el RPG/IV también conocido como RPG ILE, y 
con la aparición de la versión 5 del OS/400, surgió una nueva modificación 
sobre el lenguaje, soportándose a partir de ese momento la programación 
en formato libre. 
• El RPG IV es un lenguaje estructurado, cuya programación es mediante 
hojas y la lógica es mediante columnas, la ventaja de programar en RPG 
IV, es que se pueden utilizar sentencias del RPG III.
RPG -- Columna 09: 7 Hojas de codificación. 
• H  Head “Cabecera de programación” 
• F  Formato “ Para definir Archivo: Físico ,Lógicos , Pantallas , … “ 
• E  Elementos “ Se utiliza para declarar matrices (Arreglos), 
renombrar Registros.” 
• L  Logical “Se usa para declarar secuencia de quiebres” 
• I  Imput - Integridad “Se utiliza para declarar estructuras” 
• C  Calculo “ Se utiliza para la Secuencia principal de programa 
RPG” 
• O  Salida “Se utiliza para Generar Reportes en el mismo 
programa”
RPGILE : Intervienen las hojas: H F D C 
Columna 09  Tipo de Hoja. 
• Hoja “H” 
HPalabras Clave+++++++++++++++++++++++Comentarios+++++++ ...+... 
Palabras clave de especificación de control 
Palabras Claves 
0000.01 HDATFMT(*YMD) TIMFMT(*HMS) 100517 
• Hoja “F” 
Declaración de archivos ( Físicos , Lógicos, Pantallas, Impresoras) 
Formato de Especificación
• HOJA F: 
3 4 
6 
1 
2 
5 
7 
8
Donde: 
1. Nombre arch: Es el nombre del Archivo de Pantalla, Tabla Física, Tabla Lógica, o Reporte. 
2. Tipo de Archivo: Entre los cuales tenemos 
– C =Indica que el archivo combina Entrada y Salida de datos (solo pantallas). 
– I =Indica que es un archivo de entrada de datos (solo tablas para consultas). 
– U =Indica que es un archivo de actualización de datos (solo tablas para actualizaciones, eliminaciones, consultas). 
– O =Indica que es un archivo de salida de datos (solo reportes). 
Nota = Cuando se utilice el tipo de archivo U, se deberá definir en Adición de Archivo la letra A. 
3. Designación de Archivo: Aquí usamos: 
– P  Digite P para indicar un archivo primario. 
– S  Digite S para indicar un archivo secundario. 
– R  Digite R para indicar un archivo de Direcciones de registros. 
– T  Digite T para indicar un archivo de matrices o de tablas. 
– F  Digite F para indicar un archivo de procedimiento completo. 
Nota = Vas a utilizar la designación de archivos en todos los archivos menos en reportes. 
4. Adición de Archivos: Aquí usamos A (Adicionar registros). 
Nota = Vas a usar adición de archivos solo cuando quieras ingresar datos a una tabla.
Donde: 
5. Formato de Archivo = Aquí tenemos E (Externo), quiere decir que vamos a llamar al archivo externamente 
del programa. 
6. Tipo de Dirección de Registro = Aquí tenemos K (Campo Clave), es usado solo cuando definas tablas, te 
permite ordenar un tabla física o lógica por su campo clave. También podemos utilizar lo siguiente: 
–  Deje en blanco el campo si se utilizan números de registro relativos para procesar el archivo, si los registros se leen 
consecutivamente o si las claves de un archivo de proceso entre límites están en el mismo formato que las claves del 
archivo que se procesa. 
– A  Digite A para una clave de carácter. 
– D  Digite D para una clave de fecha. 
– F  Digite F para una clave de número flotante. 
– G  Digite G para un campo clave de Gráficos. 
– P  Digite P para una clave empaquetada. 
– T  Digite T para una clave de hora. 
– Z  Digite Z para una clave de indicación de hora. 
5. Dispositivo: Aquí tenemos: 
– WORKSTN = Estación de trabajo (solo en pantallas). 
– DISK = Disco (solo en tablas). 
– PRINTER = Reportes (solo en reportes).
Donde: 
8. Palabras Claves: Son palabras reservadas para la funcionalidad de un programa. Elija entre las 
siguientes palabras claves: 
– BLOCK(*NO | *YES): Digite esta palabra clave para controlar el bloqueo de registros para el archivo. 
– COMMIT{(nombre rpg): Digite COMMIT si este archivo está bajo control de compromiso. 
Especifique nombre_rpg si desea determinar, en el momento de la ejecución, si el archivo está bajo control de compromiso. 
– DEVID(nombre campo): Digite DEVID para especificar el nombre del campo que va a contener el nombre del dispositivo. 
– EXTIND(*INU1-*INU8): Especifique esta palabra clave para indicar que sólo se puede realizar OPEN en el archivo si el indicador externo se ha 
establecido en el trabajo. 
– IGNORE(nombre formato registro: nombre formato registro:...): Digite el nombre del formato de registro a ignorar de un archivo descrito 
externamente. Puede especificar múltiples formatos de registro. No puede especificar IGNORE si quiere especificar INCLUDE. 
– INCLUDE(nombre formato registro: nombre formato registro:...): Digite los nombres de los formatos de registro que deben incluirse. No 
especifique formatos de registro que se especifican para los archivos WORKSTN con la palabra clave SFILE. Puede especificar múltiples formatos de 
registro. No puede especificar INCLUDE si quiere especificar IGNORE. 
– INDDS(nombre de estructura de datos): Digite el nombre de la estructura de datos de indicador asociada a una estación de trabajo o a un archivo 
de impresora. 
– INFDS(nombre estructura datos): Digite el nombre de la estructura de datos que contendrá la información de excepción/error. 
– INFSR(nombre subrutina): Digite el nombre de la subrutina que tomará el control cuando se produzca una condición de excepción/error. 
– MAXDEV(*ONLY|*FILE): Especifique el tipo de archivo de dispositivo WORKSTN. El valor por omisión, *ONLY, indica un archivo de un solo 
dispositivo. Digite *FILE para recuperar el máximo número de dispositivos al abrir el archivo. 
– OFLIND(indicador): Digite un valor de *IN01 a *IN99 para activar un indicador cuando se imprime una línea en la línea de desbordamiento, o 
cuando se alcanza o se salta la línea de desbordamiento durante una operación de espacio o salto.
• HOJA D: 
1 2 3 
4 5 
6
Donde: 
1 Nombre: Es el nombre de la variable, constante o estructura de datos. 
2 Tipo de declaración: Aquí tenemos: 
S = Permite declarar variables. 
C = Permite declarar constantes, 
DS = Permite declarar estructura de datos. 
3 Longitud: Es la longitud de la variable y debe estar alineada a la derecha. 
4 Tipo de dato: Aquí tenemos: 
S = Permite definir una variable numérica. 
A = Permite definir una variable carácter. 
5 Posiciones Decimales: Son los decimales del campo numérico. 
6 Funciones: Son las funciones que se pueden usar definiendo variables, constantes o 
estructuras de datos.
• HOJA C: 
Permite realizar la lógica del programa, este tipo de hoja es de RPG III. 
• HOJA CX: 
Permite realizar la lógica del programa, este tipo de hoja es de RPG IV.
• Operadores Aritméticos. 
• OOppeerraaddoorreess ddee RReellaacciióónn.. 
• Operadores Lógicos. 
• Operadores Lógicos.
OTRO OPERADORES: 
• Operador DSPLY: Visualizar función, permite ingresar como visualizar datos de una variable, y es usado en 
la hoja C. 
Sintaxis. 
Ejemplo. 
Se pide ingresar un número a la variable NUM
Operador EVAL. 
•Permite evaluar expresiones, y es usado en la hoja C o CX. 
•Sintaxis. 
Ejemplo. 
•Se pide sumar las variables numéricas N1 +N2 y el resultado guardarlo en RESUL
• Condicionales 
• Estructuras 
Repetitivas 
17
Instrucción IF – ELSE – ENDIF 
• Es una instrucción condicional, que permite 
comparar datos, y es usado en la hoja C o CX. 
• Sintaxis.
Instrucción IF – ELSEIF – ENDIF 
• Es una instrucción condicional, que permite comparar datos con posibles 
resultados diferentes, realizando para cada caso una serie de 
instrucciones específicas, y es usado en la hoja C de RPG III o CX de RPG 
IV. 
• Sintaxis. FACTOR1 OPERADOR FACTOR2 
IF <CONDICION> 
ELSEIF <CONDICION> 
ENDIF
Instrucción SELECT - WHEN – ENDSL 
• Es una instrucción condicional, que permite comparar datos, y es usado 
en la hoja CX de RPG IV. 
• Sintaxis.
PROCESOS REPETITIVOS 
Entre los procesos repetitivos más usados tenemos los siguientes: 
• Proceso FOR – ENDFOR 
Sintaxis.
• Proceso DOW – ENDDO 
Sintaxis.
Operador LEAVE. 
• Es un operador que me permite salir de un proceso repetitivo. 
• Sintaxis.
Operador ITER 
• Es un operador que me permite regresar al inicio de un proceso 
repetitivo. 
• Sintaxis.
• Ingrese por teclado dos notas, calcular el promedio y visualizar su 
condición “APROBADO” o “DESAPROBADO”. 
FACTOR 1 OPERACIÓN FACTOR 2 RESULTADO 
EVAL *INLR='0' 
‘ING. Nota 1: ‘ DSPLY N1 
‘ING. Nota 2: ‘ DSPLY N2 
EVAL PROM=(N1+N2)/2 
IF PROM>=10.5 
‘APROBADO’ DSPLY 
ELSE 
‘DESAPROBADO’ DSPLY 
ENDIF 
EVAL *INLR='1'
• Ingresar un número entre 1 y 5, y luego visualizar su equivalente en letras.
• Ingrese por teclado un número de dos cifras y visualice si es capicúa o no es 
capicúa.
• Visualizar los números enteros del 1 al 5.
• Crear un programa que permita ingresar un número entero de dos cifras, calcular y visualizar si 
dicho número es primo o no es primo.
• Crear un programa que permita invertir un número.

Más contenido relacionado

La actualidad más candente

Object Oriented Programming - File Input & Output
Object Oriented Programming - File Input & OutputObject Oriented Programming - File Input & Output
Object Oriented Programming - File Input & Output
Dudy Ali
 

La actualidad más candente (20)

Archivos de pantallas tipo window
Archivos de pantallas tipo windowArchivos de pantallas tipo window
Archivos de pantallas tipo window
 
Mq conceptos y programacion as400
Mq conceptos y programacion as400Mq conceptos y programacion as400
Mq conceptos y programacion as400
 
Manipulators in c++
Manipulators in c++Manipulators in c++
Manipulators in c++
 
Linux crontab
Linux crontabLinux crontab
Linux crontab
 
File in C language
File in C languageFile in C language
File in C language
 
Utilisacion del utilitario strssda as400
Utilisacion del utilitario strssda as400Utilisacion del utilitario strssda as400
Utilisacion del utilitario strssda as400
 
Linux file commands and shell scripts
Linux file commands and shell scriptsLinux file commands and shell scripts
Linux file commands and shell scripts
 
Tokens expressionsin C++
Tokens expressionsin C++Tokens expressionsin C++
Tokens expressionsin C++
 
Presentation on class and object in Object Oriented programming.
Presentation on class and object in Object Oriented programming.Presentation on class and object in Object Oriented programming.
Presentation on class and object in Object Oriented programming.
 
Function overloading ppt
Function overloading pptFunction overloading ppt
Function overloading ppt
 
Recursive Function
Recursive FunctionRecursive Function
Recursive Function
 
Inheritance in c++ by Manan Pasricha
Inheritance in c++ by Manan PasrichaInheritance in c++ by Manan Pasricha
Inheritance in c++ by Manan Pasricha
 
Xfs file system for linux
Xfs file system for linuxXfs file system for linux
Xfs file system for linux
 
Introdução a python
Introdução a pythonIntrodução a python
Introdução a python
 
Tutorial sobre iptables
Tutorial sobre iptablesTutorial sobre iptables
Tutorial sobre iptables
 
Processes
ProcessesProcesses
Processes
 
Archivo fisico
Archivo fisicoArchivo fisico
Archivo fisico
 
Process and Threads in Linux - PPT
Process and Threads in Linux - PPTProcess and Threads in Linux - PPT
Process and Threads in Linux - PPT
 
MANAGING INPUT AND OUTPUT OPERATIONS IN C MRS.SOWMYA JYOTHI.pdf
MANAGING INPUT AND OUTPUT OPERATIONS IN C    MRS.SOWMYA JYOTHI.pdfMANAGING INPUT AND OUTPUT OPERATIONS IN C    MRS.SOWMYA JYOTHI.pdf
MANAGING INPUT AND OUTPUT OPERATIONS IN C MRS.SOWMYA JYOTHI.pdf
 
Object Oriented Programming - File Input & Output
Object Oriented Programming - File Input & OutputObject Oriented Programming - File Input & Output
Object Oriented Programming - File Input & Output
 

Similar a RPGLE MINICOMPUTADORAS

Ensayo de programacion c
Ensayo de programacion cEnsayo de programacion c
Ensayo de programacion c
Chavez Raul
 

Similar a RPGLE MINICOMPUTADORAS (20)

Presentacion Visual Basic - SAIA B
Presentacion Visual Basic - SAIA BPresentacion Visual Basic - SAIA B
Presentacion Visual Basic - SAIA B
 
Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_
 
Estructura basica de_un_programa_c_ (1)
Estructura basica de_un_programa_c_ (1)Estructura basica de_un_programa_c_ (1)
Estructura basica de_un_programa_c_ (1)
 
Curso c++
Curso c++Curso c++
Curso c++
 
Manual abap
Manual abapManual abap
Manual abap
 
Introduccion clips
Introduccion clipsIntroduccion clips
Introduccion clips
 
Unmsm02 2008
Unmsm02 2008Unmsm02 2008
Unmsm02 2008
 
Introducción a R Studio para estudiantes.pptx
Introducción a R Studio para estudiantes.pptxIntroducción a R Studio para estudiantes.pptx
Introducción a R Studio para estudiantes.pptx
 
Estructura basica para_c_
Estructura basica para_c_Estructura basica para_c_
Estructura basica para_c_
 
Estructura Basica para C++
Estructura Basica para C++Estructura Basica para C++
Estructura Basica para C++
 
AlgoríTmica Y ProgramacióN
AlgoríTmica Y ProgramacióNAlgoríTmica Y ProgramacióN
AlgoríTmica Y ProgramacióN
 
Programación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions NavisionProgramación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions Navision
 
Tarea pagweb
Tarea pagwebTarea pagweb
Tarea pagweb
 
Ensayo de programacion c
Ensayo de programacion cEnsayo de programacion c
Ensayo de programacion c
 
Ada
AdaAda
Ada
 
Generalidades de la programacion
Generalidades de la programacionGeneralidades de la programacion
Generalidades de la programacion
 
Programación en c
Programación en cProgramación en c
Programación en c
 
Programazion
ProgramazionProgramazion
Programazion
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas
 

Último

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
JonathanCovena1
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
lupitavic
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
NancyLoaa
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
JonathanCovena1
 

Último (20)

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Imperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperioImperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperio
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circular
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° grado
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 

RPGLE MINICOMPUTADORAS

  • 1.
  • 2. Tema: RPGLE • Introducción • Tipos de hojas • Operadores Aritméticos, de Relación y Lógicos. 2
  • 3.
  • 4. REPORT PROGRAM GENERATOR (RPG) • Es un lenguaje de programación de alto nivel desarrollado y diseñado por IBM para generar informes comerciales o de negocios. • Ha sido actualizado en diversas ocasiones, dando origen a las diferentes versiones del lenguaje. Una de las últimas actualizaciones que se ha realizado hasta la fecha es el RPG/IV también conocido como RPG ILE, y con la aparición de la versión 5 del OS/400, surgió una nueva modificación sobre el lenguaje, soportándose a partir de ese momento la programación en formato libre. • El RPG IV es un lenguaje estructurado, cuya programación es mediante hojas y la lógica es mediante columnas, la ventaja de programar en RPG IV, es que se pueden utilizar sentencias del RPG III.
  • 5. RPG -- Columna 09: 7 Hojas de codificación. • H  Head “Cabecera de programación” • F  Formato “ Para definir Archivo: Físico ,Lógicos , Pantallas , … “ • E  Elementos “ Se utiliza para declarar matrices (Arreglos), renombrar Registros.” • L  Logical “Se usa para declarar secuencia de quiebres” • I  Imput - Integridad “Se utiliza para declarar estructuras” • C  Calculo “ Se utiliza para la Secuencia principal de programa RPG” • O  Salida “Se utiliza para Generar Reportes en el mismo programa”
  • 6. RPGILE : Intervienen las hojas: H F D C Columna 09  Tipo de Hoja. • Hoja “H” HPalabras Clave+++++++++++++++++++++++Comentarios+++++++ ...+... Palabras clave de especificación de control Palabras Claves 0000.01 HDATFMT(*YMD) TIMFMT(*HMS) 100517 • Hoja “F” Declaración de archivos ( Físicos , Lógicos, Pantallas, Impresoras) Formato de Especificación
  • 7. • HOJA F: 3 4 6 1 2 5 7 8
  • 8. Donde: 1. Nombre arch: Es el nombre del Archivo de Pantalla, Tabla Física, Tabla Lógica, o Reporte. 2. Tipo de Archivo: Entre los cuales tenemos – C =Indica que el archivo combina Entrada y Salida de datos (solo pantallas). – I =Indica que es un archivo de entrada de datos (solo tablas para consultas). – U =Indica que es un archivo de actualización de datos (solo tablas para actualizaciones, eliminaciones, consultas). – O =Indica que es un archivo de salida de datos (solo reportes). Nota = Cuando se utilice el tipo de archivo U, se deberá definir en Adición de Archivo la letra A. 3. Designación de Archivo: Aquí usamos: – P  Digite P para indicar un archivo primario. – S  Digite S para indicar un archivo secundario. – R  Digite R para indicar un archivo de Direcciones de registros. – T  Digite T para indicar un archivo de matrices o de tablas. – F  Digite F para indicar un archivo de procedimiento completo. Nota = Vas a utilizar la designación de archivos en todos los archivos menos en reportes. 4. Adición de Archivos: Aquí usamos A (Adicionar registros). Nota = Vas a usar adición de archivos solo cuando quieras ingresar datos a una tabla.
  • 9. Donde: 5. Formato de Archivo = Aquí tenemos E (Externo), quiere decir que vamos a llamar al archivo externamente del programa. 6. Tipo de Dirección de Registro = Aquí tenemos K (Campo Clave), es usado solo cuando definas tablas, te permite ordenar un tabla física o lógica por su campo clave. También podemos utilizar lo siguiente: –  Deje en blanco el campo si se utilizan números de registro relativos para procesar el archivo, si los registros se leen consecutivamente o si las claves de un archivo de proceso entre límites están en el mismo formato que las claves del archivo que se procesa. – A  Digite A para una clave de carácter. – D  Digite D para una clave de fecha. – F  Digite F para una clave de número flotante. – G  Digite G para un campo clave de Gráficos. – P  Digite P para una clave empaquetada. – T  Digite T para una clave de hora. – Z  Digite Z para una clave de indicación de hora. 5. Dispositivo: Aquí tenemos: – WORKSTN = Estación de trabajo (solo en pantallas). – DISK = Disco (solo en tablas). – PRINTER = Reportes (solo en reportes).
  • 10. Donde: 8. Palabras Claves: Son palabras reservadas para la funcionalidad de un programa. Elija entre las siguientes palabras claves: – BLOCK(*NO | *YES): Digite esta palabra clave para controlar el bloqueo de registros para el archivo. – COMMIT{(nombre rpg): Digite COMMIT si este archivo está bajo control de compromiso. Especifique nombre_rpg si desea determinar, en el momento de la ejecución, si el archivo está bajo control de compromiso. – DEVID(nombre campo): Digite DEVID para especificar el nombre del campo que va a contener el nombre del dispositivo. – EXTIND(*INU1-*INU8): Especifique esta palabra clave para indicar que sólo se puede realizar OPEN en el archivo si el indicador externo se ha establecido en el trabajo. – IGNORE(nombre formato registro: nombre formato registro:...): Digite el nombre del formato de registro a ignorar de un archivo descrito externamente. Puede especificar múltiples formatos de registro. No puede especificar IGNORE si quiere especificar INCLUDE. – INCLUDE(nombre formato registro: nombre formato registro:...): Digite los nombres de los formatos de registro que deben incluirse. No especifique formatos de registro que se especifican para los archivos WORKSTN con la palabra clave SFILE. Puede especificar múltiples formatos de registro. No puede especificar INCLUDE si quiere especificar IGNORE. – INDDS(nombre de estructura de datos): Digite el nombre de la estructura de datos de indicador asociada a una estación de trabajo o a un archivo de impresora. – INFDS(nombre estructura datos): Digite el nombre de la estructura de datos que contendrá la información de excepción/error. – INFSR(nombre subrutina): Digite el nombre de la subrutina que tomará el control cuando se produzca una condición de excepción/error. – MAXDEV(*ONLY|*FILE): Especifique el tipo de archivo de dispositivo WORKSTN. El valor por omisión, *ONLY, indica un archivo de un solo dispositivo. Digite *FILE para recuperar el máximo número de dispositivos al abrir el archivo. – OFLIND(indicador): Digite un valor de *IN01 a *IN99 para activar un indicador cuando se imprime una línea en la línea de desbordamiento, o cuando se alcanza o se salta la línea de desbordamiento durante una operación de espacio o salto.
  • 11. • HOJA D: 1 2 3 4 5 6
  • 12. Donde: 1 Nombre: Es el nombre de la variable, constante o estructura de datos. 2 Tipo de declaración: Aquí tenemos: S = Permite declarar variables. C = Permite declarar constantes, DS = Permite declarar estructura de datos. 3 Longitud: Es la longitud de la variable y debe estar alineada a la derecha. 4 Tipo de dato: Aquí tenemos: S = Permite definir una variable numérica. A = Permite definir una variable carácter. 5 Posiciones Decimales: Son los decimales del campo numérico. 6 Funciones: Son las funciones que se pueden usar definiendo variables, constantes o estructuras de datos.
  • 13. • HOJA C: Permite realizar la lógica del programa, este tipo de hoja es de RPG III. • HOJA CX: Permite realizar la lógica del programa, este tipo de hoja es de RPG IV.
  • 14. • Operadores Aritméticos. • OOppeerraaddoorreess ddee RReellaacciióónn.. • Operadores Lógicos. • Operadores Lógicos.
  • 15. OTRO OPERADORES: • Operador DSPLY: Visualizar función, permite ingresar como visualizar datos de una variable, y es usado en la hoja C. Sintaxis. Ejemplo. Se pide ingresar un número a la variable NUM
  • 16. Operador EVAL. •Permite evaluar expresiones, y es usado en la hoja C o CX. •Sintaxis. Ejemplo. •Se pide sumar las variables numéricas N1 +N2 y el resultado guardarlo en RESUL
  • 17. • Condicionales • Estructuras Repetitivas 17
  • 18. Instrucción IF – ELSE – ENDIF • Es una instrucción condicional, que permite comparar datos, y es usado en la hoja C o CX. • Sintaxis.
  • 19. Instrucción IF – ELSEIF – ENDIF • Es una instrucción condicional, que permite comparar datos con posibles resultados diferentes, realizando para cada caso una serie de instrucciones específicas, y es usado en la hoja C de RPG III o CX de RPG IV. • Sintaxis. FACTOR1 OPERADOR FACTOR2 IF <CONDICION> ELSEIF <CONDICION> ENDIF
  • 20. Instrucción SELECT - WHEN – ENDSL • Es una instrucción condicional, que permite comparar datos, y es usado en la hoja CX de RPG IV. • Sintaxis.
  • 21. PROCESOS REPETITIVOS Entre los procesos repetitivos más usados tenemos los siguientes: • Proceso FOR – ENDFOR Sintaxis.
  • 22. • Proceso DOW – ENDDO Sintaxis.
  • 23. Operador LEAVE. • Es un operador que me permite salir de un proceso repetitivo. • Sintaxis.
  • 24. Operador ITER • Es un operador que me permite regresar al inicio de un proceso repetitivo. • Sintaxis.
  • 25. • Ingrese por teclado dos notas, calcular el promedio y visualizar su condición “APROBADO” o “DESAPROBADO”. FACTOR 1 OPERACIÓN FACTOR 2 RESULTADO EVAL *INLR='0' ‘ING. Nota 1: ‘ DSPLY N1 ‘ING. Nota 2: ‘ DSPLY N2 EVAL PROM=(N1+N2)/2 IF PROM>=10.5 ‘APROBADO’ DSPLY ELSE ‘DESAPROBADO’ DSPLY ENDIF EVAL *INLR='1'
  • 26. • Ingresar un número entre 1 y 5, y luego visualizar su equivalente en letras.
  • 27. • Ingrese por teclado un número de dos cifras y visualice si es capicúa o no es capicúa.
  • 28. • Visualizar los números enteros del 1 al 5.
  • 29. • Crear un programa que permita ingresar un número entero de dos cifras, calcular y visualizar si dicho número es primo o no es primo.
  • 30. • Crear un programa que permita invertir un número.