108
Procesos PeopleSoft TM PDF Editor

PeopleSoft-PeopleTools-Procesos

Embed Size (px)

Citation preview

Page 1: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

TM

PDF Editor

Page 2: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

2 | Q u a l s y s C o n s u l t i n g S . C

Índice

Procesos PeopleSoft 7

PeopleSoft PeopleCode 7

Vista general de PeopleCode 7

Estructura del lenguaje PeopleCode 7

Tipo de datos 7 Tipos de datos convencionales 7

Consideraciones para los tipos Float, Integer y Number 8 Tipos de datos 8 Tipos API Object 10

Comentarios 10

Sentencias 11 Separadores 12 Sentencias de asignación 12 Asignación por valor 12 Asignación por referencia 12

Construcciones del lenguaje 13 Funciones como subrutinas 13

Sentencias de control 14 Sentencias If, Then y Else 14 Sentencia Evaluate 14 Sentencia For 15

Ciclos condicionales 16 Sentencia Repeat 16 Sentencia While 16

Funciones 16 Funciones soportadas 16 Definición de funciones 17 Declaración de funciones 17 Llamado de funciones: 17 Valores regresados por funciones 18 Conflictos al nombrar funciones 19

Expresiones 19 Expresiones fundamentales 19 Constantes 20

Constantes numéricas 20 Constantes string 20 Constantes booleanas 20 Constantes nulas 21 Constantes definidas por el usuario 21

Funciones como expresiones 21 Variables del sistema 21

TM

PDF Editor

Page 3: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

3 |

Metastring 21 Referencias del campo de registro 22

Sintaxis de la referencia del campo del registro 22

Variables 23 Tipos de variables soportadas 23 Variables definidas por el usuario 23 Declaración de variables 24 Inicialización de variables definidas por el usuario 25

Operadores 25 Operadores matemáticos 25 Operadores de fecha y hora 26 Concatenación de cadenas 26 Operador @ 27 Operadores de comparación 27 Operadores booleanos 28

Eventos en PeopleCode 29 Evento Activate 29 Evento FieldChange 29 Evento FieldDefault 29 Evento FieldEdit 30 Evento FieldFormula 30 Evento ItemSelected 30 Evento PosBuild 30 Evento PreBuild 31 Evento PrePopup 31 Evento RowDelete 31 Evento RowInit 31 Evento RowInsert 31 Evento RowSelect 31 Evento SaveEdit 32 Evento SavePostChange 32 Evento SavePreChange 33 Campo ChartField 33

PeopleSoft Application Engine 34

Entendiendo PeopleSoft Application Engine 34 Fundamentos de PeopleSoft Application Engine 34 Meta-SQL 35 Elementos del programa de Application Engine. 35

Secciones 35 Pasos 36 Acción 36

Acciones Do 36 SQL 36 PeopleCode 37 Log Message 37 Call Section 37

State Records 37

TM

PDF Editor

Page 4: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

4 |

Tipos de programas del Application Engine 37 Daemon Program 38 Transform Program 38

Creando programas de Application Engine 38 Visualizando programas de Application Engine 38

Utilizando vista Definition 38 Definición de la vista Pop-up Menu 39

Utilizando la vista Program Flow 41 Menú pop-up del Program Flow 42

Cambiando éntre las vistas Definition y Program Flow 42 Cambiando dentro de la vista Program Flow 43

Utilizando la opción actualizar 43 Filtrando el contenido de la vista 44

Comportamiento de las opciones de la sección de filtrado 44 Creando, abriendo y renombrando los programas. 46

Creando nuevos programas 46 Abriendo programas existentes 46 Renombrando programas 46

Copiando o moviendo elementos del programa 47 Probando programas de Application Engine 47 Configurando las propiedades del programa 48

Accediendo a las propiedades 48 Configuración las propiedades generales 48 Configurando las propiedades del registro de estado 49 Especificando las tablas temporales 50 Configurando propiedades avanzadas 51

Agregando secciones 52 Sección de orden de ejecución 53 Insertando secciones 53 Localizando las secciones. 53

Buscando las llamadas a las secciones de referencia 53 Buscando secciones en el programa actual 54

Configurando las propiedades de las sección 54 Agregando pasos 55

Insertando pasos 55 Configurando las propiedades de los pasos 56

Especificando las acciones 57 Entendiendo las acciones 57

Acción orden de ejecución 57 Insertando acciones 58 Configurando las propiedades de la acción 59

Gestionando los programas de Application Engine 59 Ejecutando programas de Application Engine 59

Entendiendo las opciones de ejecución de un programa 59 Programas batch utilizando PeopleSoft Process Scheduler 60 Programas en línea utilizando PeopleCode 60 Programas manuales utilizando la línea de comando 60

Creando las definiciones del proceso 60 Listando los parámetros del proceso de definición 61

TM

PDF Editor

Page 5: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

5 |

Empezando programas con la página Application Engine Process Request 62 Tablas utilizadas en la página Process Request. 62 Requisitos de Application Engine 63

Utilizando el PeopleCode para invocar programas del Application Engine 64 Utilizando la línea de comandos para invocar programas Application Engine 65

Opciones de la línea de comando 66 Depurando los programas de Application Engine 68

Activando el depurador de PeopleSoft Application Engine 68 Definiendo las opciones de depuración 69

Tips de depuración 69 Opciones de depuración 69

Restaurando los programas Application Engine 70 Determinando cuando utilizar la restauración 71

Utilizando la restauración a nivel de programa 71 Utilizando la restauración en el nivel de sección 72 Utilizando la restauración en el nivel de pasos 72

Controlando las terminaciones anormales 73 Restaurando los programas del Application Engine 73

Restaurando desde la línea de comando 73 Restaurando desde la página Process Request 74

Empezando los programas de Application Engine desde el principio 74 Habilitando y deshabilitando la restauración 75

PeopleSoft Component Interface 76

Iniciando con PeopleSoft Component Interface 76

Introducción al Component Interface 76 Comprendiendo el Component Interface 76 Arquitectura del Component Interface 77 Atributos del Component Interface 77 Definiciones y vistas del Component Interface 78

Iconos del Component Interface 79 Columnas del Component Interface 80

Desarrando un Component Interface 80 Creando la definición del Component Interface 81

Creando un nuevo Component Interface 81 Asociando un Component Interface con un menú 82 Determinando cuales campos exponer 83

Utilizando llaves 83 Agregando y borrando llaves 83

Propiedades de configuración 84 Propiedades estándar 84 Creando propiedades definidas por el usuario 87 Eliminación de propiedades 88 Renombrar las propiedades definidas por el usuario 88 Creando las propiedades de referencia 89 Creando las propiedades de sólo lectura 90

Trabajando con colecciones 90 Trabajando con métodos 91

Trabajando con funciones y métodos de sesión. 91

TM

PDF Editor

Page 6: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

6 |

Funciones de sesión del Component Interface. 91 Métodos de sesión del Component Interface 91

Métodos estándar 91 Habilitar y deshabilitar métodos estándar 93 Creando métodos definidos por el usuario 93

Validación de un Component Interface 94 Configurando las opciones de seguridad 95 Probando el Component Interface 96

Búsqueda de un Component Interface 96 Obtención de registros existentes utilizando llaves parciales 97

Prueba del Component Interface 98 Prueba de las propiedades de Component Interface 98 Prueba de los métodos de Component Interface 99 Probando los métodos de colección 99 Reglas del método de colección 99

Determinando los parámetros ItemByKeys 100 Entendiendo la sincronización 101 Consideraciones del tiempo de ejecución 102

Consideraciones generales 102 Conflictos de ámbito 102

Programación de un Component Interface en PeopleCode 102 Generando una plantilla de PeopleCode 104 Entendiendo la plantilla de PeopleCode 104

Notas de las plantillas de PeopleCode 105

Glosario 107

Bibliografía 108

TM

PDF Editor

Page 7: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

7 |

Procesos PeopleSoft

PeopleSoft PeopleCode

PeopleCode es el lenguaje utilizado por las aplicaciones de PeopleSoft. Este tema

proporciona una visión general de PeopleCode y muestra como crear programas en

PeopleCode.

También proporciona información que se debe considerar antes de empezar a utilizar

PeopleCode.

Vista general de PeopleCode

Esta sección proporciona la información conceptual disponible acerca de PeopleCode.

Como son la descripción de funciones, métodos y propiedades entre otros. PeopleCode

es similar a otros lenguajes de programación. Sin embargo, en algunos aspectos es

especial para el lenguaje y entorno de PeopleTools. PeopleCode es un lenguaje

orientado a objetos.

Estructura del lenguaje PeopleCode

Esta sección asume que esta familiarizado con los lenguajes de programación, como C,

Visual Basic o Java.

En esencia, la sintaxis de PeopleCode es similar a otros lenguajes de programación. Sin

embargo algunos aspectos de PeopleCode, son específicos para el entorno de

PeopleTools. Por ejemplo, la definición de referencias, que permiten hacer referencia a

las definiciones de PeopleTools, así como a registro o páginas. Otra característica del

lenguaje, son los tipos de datos y Metastrings que reflejan la estrecha relación que

existe entre PeopleTools y SQL. Las clases y métodos en PeopleCode son similares a

otros lenguajes orientados a objetos, como java.

Tipo de datos

Los tipos de datos convencionales incluyen, números, fechas, caracteres. Utilizados en

la programación básica. Tipos de Objetos de datos, instancias de objetos para las

clases de PeopleTools.

Tipos de datos convencionales

PeopleCode incluye estos tipos de datos convencionales:

TM

PDF Editor

Page 8: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

8 |

Any

Boolean

Date

DateTime

Float

Integer

Number

Object

String

Time

Consideraciones para los tipos Float, Integer y Number

El tipo Integer es un número complementario de 32 bits con signo, por lo que el rango

es de -2,147,438,648 a 2,147,438,648.

El tipo Float binario es un número de doble precisión. No es apropiado para cálculos

exactos de fracciones, en particular, cálculos que involucren dinero. Por ejemplo, un

décimo (1/10 o .1), no puede ser representado exactamente en un Float binario de

doble precisión, la suma de flotantes binarios de doble precisión de .10 + .10, no es

igual a 20.

Tipos de datos

Para la mayoría de las clases en PeopleTools, se necesita un tipo de datos

correspondiente a las instancias de objetos.

PeopleCode incluye este tipo de datos para acceso al buffer:

Field

Record

Row

Rowset

PeopleCode incluye estos tipos de datos para la pantalla:

AnalyticGrid

TM

PDF Editor

Page 9: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

9 |

Char

Gray

GridColumn

Page

PeopleCode incluye estos tipos de datos para Internet script:

Cookie

Request

Response

PeopleCode incluye estos tipos de datos extras:

AESection

AnalyticInstance

Array

Crypt

Execption

File

Interlink

BIDocs

JavaObject

Message

MCFIMInfo

OptEngine

PostReport

ProcessRequest

RowsetCahce

SoapDoc

TM

PDF Editor

Page 10: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

10 |

SQL

SyncServer

TransformData

XmlDoc

XmlNode

Tipos API Object

Utilice este tipo de datos para cualquier ApiObject, como un Object Session, un Object

Tree, un Component Interface, un Registry Portal, entre otros.

Los siguientes tipos de datos ApiObject pueden declararse como Globales:

Session

PSMessages Collection

PSMessages

Todos las clases Tree

Todas las clases query

Comentarios

Utilice los comentarios para explicar, preferentemente en un lenguaje comprensible para

cualquiera que lea su programa sepa que hace su código. Los comentarios hacen

posible diferencia entre el PeopleCode que le entregan y los cambios que haga. Esto es

útil para la búsqueda de errores y actualizaciones.

Las siguientes son algunas maneras de insertar comentarios en PeopleCode:

Puede encerrar comentarios empezando con / * y finalizando con */

También puede utiliza REM (remark) para establecer que es un comentario

Puede encerrar el texto a comentar entre <* al inicio y *> al final

El siguiente código muestra los formatos para hacer comentarios:

TM

PDF Editor

Page 11: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

11 |

Ejemplo:

<* this program is no longer valid commenting out

entire thing

REM This is an example of commenting PeopleCode;

/* ----- Logic for Compensation Change ----- */

/* Recalculate compensation change for next row.

Next row is based on prior value of EFFDT. */

calc_next_compchg(&OLDDT, EFFSEQ, 0);

/* Recalculate compensation change for current row and next row.

Next row is based on new value of EFFDT. */

calc_comp_change(EFFDT, EFFSEQ, COMP_FREQUENCY, COMPRATE,

CHANGE_AMT, CHANGE_PCT);

calc_next_compchg(EFFDT, EFFSEQ, 0);

*>

Sentencias

Una sentencia puede ser una declaración, una asignación, la construcción de

programas o una llamada de subrutinas:

Esta sección habla de:

Separadores

Sentencias de asignaciones

Construcciones del lenguaje

Sentencias de control

Condicionales Loop

TM

PDF Editor

Page 12: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

12 |

Separadores

Las sentencias de PeopleCode generalmente terminan con punto y coma. PeopleCode

acepta puntos y comas aun cuando no son requeridos, como después de terminar la

última sentencia de un If. Esto permite añadir punto y coma después de cada sentencia.

Los espacios extras son ignorados. Pueden ser eliminados por el editor de PeopleCode

cuando salva el código.

Sentencias de asignación

Las sentencias de asignación son las más básicas de las sentencias en PeopleCode.

Consiste en igualar una variable que esta ala izquierda con una expresión a la derecha:

Sintaxis:

VariableName = expression;

La expresión a la derecha es evaluada, y el resultado es introducido a al variable de la

izquierda. Dependiendo del tipo de dato, la asignación se pasa un valor o una

referencia.

Asignación por valor

En la mayoría de las asignaciones, el resultado de la expresión de la derecha es

asignada para la variable como una nueva creación del valor, en nuestra variable

almacenada en el área de la memoria. Cambios a la variable no afectan a otros datos.

Asignación por referencia

Cuando los dos lados de una sentencia de asignación son variables, el resultado de la

asignación no crea una copia del objeto en la memoria y la asigna en la variable. En vez

de eso, la variable apunta al objeto en la memoria.

Por ejemplo, &AN y &AN2 son arreglos de tipo número. Asignando &AN2 a &AN, no

copia &AN2 en &AN. Los dos arreglos apuntan al mismo lugar en la memoria.

TM

PDF Editor

Page 13: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

13 |

Sintaxis:

Local array of number &AN, &AN2;

Local number &NUM;

&AN = CreateArray (100, 200, 300)

&AN2=&AN

&NUM=&AN[1]

En el código de ejemplo, &AN2 y &AN apuntan al mismo objeto: un arreglo de números.

Construcciones del lenguaje

La construcción de lenguaje en PeopleCode incluye:

Sentencias de control: If y Evaluate

Loops y condicionales Loop: For, Repeat y While

Sentencias Break, Continue y Exit para controlar Loops y terminar programas

La sentencia Return para regresar a funciones

Sentencias de declaración de variables y funciones: Globales, locales y

variables de componentes, y declaración de funciones par funciones

Sentencias de funciones para definir funciones

Sentencias para definir clases

Sentencias Try, Match y Throw para capturar errores.

Funciones como subrutinas

PeopleCode, como C, no tienen subrutinas como generalmente nos referimos a ellas.

Las subrutinas de PeopleCode son un subconjunto de las funciones de PeopleCode y

solo están definidas para no regresar valores o regresar valores opcionales. Llamar una

subrutina es lo mismo que llamar una función que no regresa valores.

Sintaxis:

function_name(param_list);

TM

PDF Editor

Page 14: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

14 |

Sentencias de control

Las sentencias de control controlan el flujo del programa basándose en evaluar

expresiones condicionales.

Sentencias If, Then y Else

Sintaxis:

If condición Then

[Lista de sentencias1]

Else

[Lista de sentencias2]

End-If;

Esta sentencia evalúa la expresión condición. Si la condición es verdadera, la sentencia

If ejecuta la lista de sentencias1. Si la condición es falsa, entonces el programa ejecuta

las sentencias en la cláusula Else; si no hay cláusula Else, el programa continúa con la

siguiente sentencia.

Sentencia Evaluate

Utilice la sentencia Evaluate para evaluar varias condiciones.

Sintaxis:

Evaluate left_term

When [relop_1] right_term_1

[Lista de sentencias]

.

.

.

When [relopn1] right_term_n

[Lista de sentencias]

When-other

[Lista de sentencias]

TM

PDF Editor

Page 15: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

15 |

End-evaluate;

La sentencia Evaluate toma una expresión, left_term, y lo compara con la expresión

compatible right_term_1 utilizando el operador relacional (relop) en una secuencia de

clausulas When. Si relop se omite, entonces se asume una igualdad de signos. Si el

resultado de la comparación es TRUE, el programa ejecuta las sentencias de la

clausula When, entonces se mueve para comparar la siguiente cláusula When. El

programa ejecuta las sentencia en todas la clausulas When en las cuales la

comparación resulte TRUE, si ninguna de las comparaciones resulta en TRUE el

programa ejecuta la sentencias de la cláusula When-other, el siguiente ejemplo de

Evaluate ejecuta solo las sentencias de la primera cláusula When.

Ejemplo:

evaluate &USE_FREQUENCY

when = "never"

PROD_USE_FREQ = 0;

when = "sometimes"

PROD_USE_FREQ = 1;

when = "frequently"

PROD_USE_FREQ = 2;

when-other

Error "Unexpected value assigned to &USE_FREQUENCY."

end-evaluate;

Sentencia For

La sentencia For repite una secuencia de sentencias un específico número de veces.

Sintaxis:

For count = expresion1 to expresion2

[Step i];

[Lista de sentencias]

End-for;

TM

PDF Editor

Page 16: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

16 |

La sentencia For inicializa el valor de count con expresion1 entonces incrementa count

con cada i veces después de ejecutar las sentencias en lista de sentencias. El programa

continúa el ciclo hasta que count es igual a expresion2, si la cláusula Step se omite,

entonces i se iguala a uno. Para contar hacia atrás desde un valor mas alto a uno más

pequeño, se utiliza un valor negativo para i. Puede salirse de un ciclo For utilizando una

sentencia Break.

Ciclos condicionales

Los ciclos condicionales, Repeat y While, repiten una secuencia de sentencias,

evaluando una expresión condicional cada vez que pasan el ciclo. El ciclo termina

cuando la condición a evaluar es verdadera. Puede salir de un ciclo utilizando la

sentencia Brear. Si la sentencia Break esta en un ciclo dentro de otro ciclo, el Break

aplica solo a al ciclo interno.

Sentencia Repeat

Sintaxis:

Repeat

[Lista de sentencias]

Until expresión_logica;

La sentencia Repeat ejecuta las sentencias una vez, entonces evalúa la expresión

lógica. Si la expresión lógica es falsa, la secuencia de sentencias se repite hasta que la

sentencia sea verdadera.

Sentencia While

Sintaxis:

While expresión_logica

[Lista de sentencias]

End-while;;

La sentencia While evalúa la expresión lógica antes de ejecutar la lista de sentencias.

Continua repitiendo la lista de sentencias hasta que la expresión lógica resulte falsa.

Funciones

Funciones soportadas

PeopleCode soporta los siguientes tipos de funciones:

TM

PDF Editor

Page 17: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

17 |

Built-in: La función estándar para PeopleCode. Esta puede ser llamada sin

declarar el Begin

Internal: Funciones que ya están definidas en un programa de PeopleCode

en el cual son llamadas

External PeopleCode: las funciones de PeopleCode definidas fuera del

programa que las llama. Generalmente están en la definición de Registros

que funcionan como librerías.

External non-PeopleCode: funciones almacenadas en librerías externas

(librerías de C)

Adicionalmente PeopleCode soporta métodos. Las principales diferencias entre una

función built-in y el método son:

Una función built-in, en su código, se llama a si mismo y generalmente no

depende de ningún otro.

Un método puede se ejecutado solo por un objeto

Definición de funciones

Las funciones en PeopleCode pueden ser definidas en cualquier programa de

PeopleCode. La definiciones deben ponerse al principio del programa, junto con

cualquier variable externa y declaraciones de funciones externas.

Por convención, los programas de PeopleCode se almacenan en registros cuyos

nombre empiecen con FUNCLIB_, y siempre se adjuntan a un evento FieldFormula.

Declaración de funciones

Si llama una función externa desde un programa de PeopleCode, debe declarar la

función al principio del programa. La sintaxis de la declaración de funciones varia,

dependiendo de si la función externa se escrita en PeopleCode o compilada en una

librería dinámica.

El siguiente es un ejemplo de la declaración de una función en otro registro a FUNCLIB.

Ejemplo:

Declare Funtion UpdatePSLOCK PeopleCode FUNCLIB_NODES.MSGNODENAME

FieldFormula

Llamado de funciones:

TM

PDF Editor

Page 18: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

18 |

Sintaxis:

Function_name (lista_parametros)

La lista de parámetros, es una lista de expresiones, separadas por comas, que la

función espera le suministre. Los parámetros de la lista pueden ser opcionales o

requeridos.

Puede verificar los parámetros de los valores que pasa a la función al momento de

ejecución en la ventana Parameter del debugger de PeopleCode.

Si el valor regresado es requerido, entonces la función debe llamarse como una

expresión.

Ejemplo:

&RESULT = Product (&RAISE_PERCENT,.01,EMPL_SALARY);

Si la función regresa un valor como una opción, puede ser llamada como una subrutina.

Si la función no regresa valores, debe se llamada como subrutina.

Ejemplo:

WinMessage(64,“I can´t do that,“| &OPER_NICKNAME |”.””);

Los parámetros siempre pasan funciones de PeopleCode por referencias internas y

externas. Si la función cambia los datos al pasarlos, entonces debe pasar una variable.

Los parámetros de la función Built-in pueden pasar por referencia o por valor,

dependiendo de la función. Los parámetros de una función externa de C pueden pasar

valores o referencias, dependiendo de la declaración y del tipo.

Valores regresados por funciones

Las funciones pueden regresar valores de cualquier tipo de dato que soporten; algunas

funciones no regresan ningún valor.

La opción de regresar valores ocurre solo en funciones Built-in. No puede definir una

función opcionalmente regrese un valor. El regreso opcional de valores es típico en las

funciones que regresan un valor bolean indicando si la ejecución tuvo éxito. Por

ejemplo, la siguiente llamada para DeleteRow ignora el valor de regreso y corra la fila.

Ejemplo:

DeleteRow

(RECORD.BUS_EXPENSE_PER,&L1_ROW,RECOD:BUS_EXPENSE_DTL,&L2_ROW);

TM

PDF Editor

Page 19: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

19 |

El siguiente ejemplo verifica el valor regresado y muestra un mensaje diciendo que ha

sucedido.

Elemplo:

If DeleteRow (RECORD.BUS_EXPENSE_PER, &L1_ROW, RECOD:BUS_EXPENSE_DTL,

&L2_ROW) then

WinMessage (“RowDelete”);

Else

WinMessage (”Sorry---couldn´t delete that row”);

End-if

Conflictos al nombrar funciones

Si define una función con el mismo nombre de una función built-in, la función que definió

toma preferencia sobre la función Built-in.

En cualquier momento que compile el PeopleCode en el editor de PeopleCode, un

mensaje de advertencia aparece en la pestaña de validación, indicando que el usuario

definió una función con el mismo nombre de una función existente.

También, si selecciona Compile All PeopleCode, un mensaje de error es generado en el

archivo log por cada función que el usuario defina con el mismo nombre de una función

existente.

El siguiente es un ejemplo de un mensaje de error: “User defined funtion IsNumber is

overrriding the builtin funtion of the same name. (2,98)”

Expresiones

Expresiones fundamentales

Evalúa expresiones para los valores de los tipos de datos de PeopleCode. Una simple

expresión de PeopleCode puede consistir en una constante, una variable temporal, una

variable de sistema, una referencia a un registro o la llamada de una función. Una

simple expresión puede modificarse por operadores (como un signo negativo o la

expresión lógica NOT) o combinando expresiones utilizando operadores binario (como

un signo plus u operador lógico AND)

El verificador de nombres compara la cadena del nombre con las definiciones existentes

en PeopleTools, como registros o paginas.

TM

PDF Editor

Page 20: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

20 |

Metastrings (también llamados meta-SQL) son expresiones especiales utilizadas como

cadenas literales de SQL. En tiempo de ejecución, el metastring se expande

apropiadamente dentro del SQL.

Constantes

PeopleCode soporta constantes numéricas, string y boolean, como constantes definidas

por el usuario. También soportan la constante Null, el cual indica que un objeto que no

hace referencia a un objeto valido.

Constantes numéricas

Constantes numéricas pueden ser cualquier número. Como por ejemplo:

7

0.8725

-172.324

Constantes string

Las constantes string pueden delimitarse utilizando la coma simple („) o al doble coma

(“). Si la comas forman parte de la cadena, la cadena puede encerrase dentro de otro

tipo de delimitador. Como una alternativa, puede incluir dos veces el delimitador. Los

siguientes son algunos ejemplos:

“Esta es una constante string

„También esta‟

´Ella dijo, “esta es una constante string”´

“Ella dijo, “esta es una constante string””

Utilice el siguiente código para incluir literalmente comas dentro de un string.

Ejemplo:

&cDblQoute =´”´; /*coma simple comas dobles coma simple*/

Constantes booleanas

Las constantes booleanas representan un valor verdadero. Solo hay dos posibilidades

True y False.

TM

PDF Editor

Page 21: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

21 |

Constantes nulas

Las constantes nulas representan un objeto que hace referencia a un objeto no valido.

Esto significa que llama un método o un objeto o trata de obtener o establecer

propiedades que no existen. La constante nula es la palabra null.

Constantes definidas por el usuario

El usuario puede definir constantes al inicio de un programa en PeopleCode. Puede

utilizar la declaración de constantes donde desee almacenar el valor. Las constantes

pueden definirse como valores number, string o boolean.

El usuario al definir constates solo pueden declararse locales

El siguiente es un ejemplo de la declaración de constantes por parte del usuario.

Ejemplo:

Constant &Stara_New_Instance = Trae;

Constant &Display_Mode = 0;

Constant &AddMode = “A”:

Local Field &Start_date;

…….

MyFunction (&Start_New_Instance, &Display_Mode, &Add_Mode);

Funciones como expresiones

Puede utilizar cualquier función que regrese un valor o una expresión. La función puede

ser utilizada del lado derecho de una sentencia, pasar como un parámetro a otra función

o combinarse con otra expresión para formar una expresión compuesta.

Variables del sistema

Las variables del sistema están precedidas del símbolo de porcentaje (%). Utilice estas

variables para obtener la fecha actual u obtener información del usuario, el lenguaje

actual, el registro actual, página, componente o más.

Metastring

Los metastring son expresiones especiales de SQL. Los metastring, también llamados

meta-SQL, están precedidos del símbolo porcentaje (%) y pueden incluirse

TM

PDF Editor

Page 22: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

22 |

directamente en cadenas. Se expanden al momento de ejecutarse dentro de una

subcadena para la actual base de datos. Los metastring son utilizados en:

SQLExec

En la construcción de vistas dinámicas en PeopleSoft Application Designer

Con Objetos SQL

En PeopleSoft Application Engine

Con algunos métodos de clases

Con COBOL

Referencias del campo de registro

Utilice las referencias del campo del registro para recuperar valores almacenados en un

campo de tabla o para asignar un valor a un campo del registro.

Sintaxis de la referencia del campo del registro

Para hacer referencia a un campo de un registro siga la siguiente forma.

Sintaxis:

[recordname.]fieldname

Debe poner el recordname solo si el campo y su programa PeopleCode están en

diferentes registros

Por ejemplo, supongamos que en la base de datos para veterinarios tiene dos registros

PET_OWNER y PET. Un programa en el registro PET_OWNER debe hacer referencia a

PET_BREED que esta en el registro PET, entonces la definición del registro será

PET.PET_BREED.

De cualquier manera, un programa en el registro PET puede hacer referencia a el

mismo registro directamente a PET_BREED.

Si el programa esta en el mismo campo del registro PET_BREED, puede hacer

referencia a este mismo campo utilizando el símbolo caret (^).

TM

PDF Editor

Page 23: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

23 |

Variables

Tipos de variables soportadas

PeopleCode Soporta este tipo de variables:

Concepto Característica

Variables definidas

por el usuario

El nombre de estas variables deben estar precedidos por el

símbolo &. Los nombres de las variables pueden tener de 1

a 1000 caracteres, de A-Z y a-z, números de 0-9 y

caracteres #,@,$ y _.

Variables del sistema Las variables del sistema proporcionan acceso a la

información del sistema. Estas variables tienen el prefijo %

en vez del &, utilice estas variables siempre que use una

constante, pasándolo como parámetro a funciones o

asignando su valor a campos o variables temporales

Variables definidas por el usuario

Las variables definidas por el usuario pueden mantener la información de un campo de

registro, para programar claramente un código. Por ejemplo, puede darle a una variable

un nombre más descriptivo que a un campo, basándose en el contexto del programa. Si

el campo es de otro registro, puede asignarle una variable temporal en lugar de utilizar

la referencia al campo. Esto hace más fácil la programación y más fácil de leer.

Declaración y alcance de las variables definidas por el usuario

La diferencia entre las declaraciones de variables consiste en el periodo de vida:

Global: esta variable es valida para toda la sesión

Component: la variable es valida mientras cualquier página en el componente

donde la variable fue definida se mantenga activa.

Local: la variable es valida durante el programa de PeopleCode o función en la

cual la variable fue definida.

Puede declarar variables utilizando sentencias Global, Local o Componente, o puede

utilizar las variables locales sin declararlas.

TM

PDF Editor

Page 24: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

24 |

Ejemplo:

Local Number &AGE;

Global String &OPER_NICKNAME;

Component Rowset &MY_ROWSET;

Local Any &SOME_FIELD;

Local ApiObjet &MYTREE;

Local Boolean &Compare = True;

La declaración de variables se hace normalmente en la parte superior del programa en

PeopleCode. La excepción es la declaración de variables Locales, las cuales se pueden

utilizar en una función o en el cuerpo del programa. Si una variable es declarada cono

tipo ANY o si una variable no es declarada, PeopleTools utiliza un apropiado tipo de

datos basándose en el contexto

Las variables globales pueden ser acezadas desde diferentes componentes y

aplicaciones, incluyendo un programa Application Engine. Una variable global debe ser

declarada en cada programa en que es utilizada. Utilice las variables globales lo menos

posible debido a que es difícil su mantenimiento.

Las variables Globales están disponibles para un portal o aplicación con bases de datos

diferentes.

Declaración de variables

Declare las variables antes de utilizarlas. Si no declara una variable, es declarada

automáticamente con el tipo de dato Any. Recibe un mensaje de advertencia en la

pestaña de validación del PeopleSoft Application Designer por cada variable que no

este declarada cuando salve su programa PeopleCode.

Si declara todas las variables, puede utilizar estos valores para asegurar que no tiene

errores ortográficos. Por ejemplo, si declara una variable como &END_DATE, y

TM

PDF Editor

Page 25: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

25 |

accidentalmente escribe &EDN_DATE, la “nueva” variable aparece en la pestañas

cuando guarde el programa.

Inicialización de variables definidas por el usuario

Para declarar e inicializar variables en un paso, utilice el siguiente formato.

Ejemplo:

Local String &MyString = “New”;

Local Date &MyDate= %Date;

Esto esta disponible solo para variables de alcance Local.

Aunque puede declarar más de una variable en una sola línea, puede inicializar solo

una variable por línea. El siguiente código crea un error de sintaxis cuando trata de

salvar el programa.

Ejemplo:

Local Number &N1,&N2 = 5;

No puede declarar una variable, después inicializar en una segunda sentencia otra. El

siguiente código produce un error cuando trata de salvar el programa, por duplicar una

declaración.

Ejemplo:

Global Number &N1;

….

Local Stringr &N1 = “String”;

Si no inicializa las variables, cuando las declara o antes de utilizarlas, las variables tipo

String son inicializadas con Null, date y times con Null, y Number con cero.

Operadores

Las expresiones en PeopleCode piden modificarse y combinarse utilizando operadores

matemáticos, de caracter, comparación y booleanos.

Operadores matemáticos

Los operadores estándar utilizado son:

TM

PDF Editor

Page 26: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

26 |

Símbolo Acción

+ Mas

- Menos

* Multiplicación

/ División

** Potencia

Operadores de fecha y hora

Puede agregar o restar dos fechas o dos valores de horas, lo que proporciona como

resultado un número. En el caso de las fechas, el número representa la diferencia entre

las dos fechas en días. Y en el caso de las horas, el número representa la diferencia en

segundos. Puede también sumar y restar números a una hora o una fecha, y el

resultado será otra hora u otra fecha. En el caso de los días, el número representa los

días y en el caso de las horas representa los segundos.

Operación Resultado El resultado representa

Hora + numero de segundos Tiempo Horas

Fecha + numero de días Fecha Fecha

Fecha – Fecha Número Diferencia en días

Hora – Hora Número Diferencia en segundos

Fecha + Hora FechaHora Fecha y Hora combinados

Concatenación de cadenas

Las concatenación de cadena se hace con el operador (|). Por ejemplo, asumiendo que

&OPER_NICKNAME es David, y que la variable &RETORT debe decir “No puedo hacer

eso Davis”:

Ejemplo:

Global Number &N1;

&RETORT = “I can´t do that, ”| &OPER_NICKNAME | “.”;

TM

PDF Editor

Page 27: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

27 |

El operador de concatenación automáticamente convierte el operador a string. Esto

hace más fácil de escribir sentencias que muestren diferentes tipos de datos.

Ejemplo:

&DAYS_LEFT = &CHRISTMAS - %Date;

WinMessage (“Today is “ | %Date | “. Only “ | &DAYS_LEFT | “ shopping days

left ! “);

Operador @

El operador @ convierte una cadena almacenándola en una referencia dentro de una

definición. Esto es útil, por ejemplo, si desea almacenar referencias en la base de datos

como cadenas y recuperarlas utilizando PeopleCode, o si desea obtener una referencia

en forma de una cadena.

Tomemos un ejemplo sencillo, si el campo EMPLID actualmente es 8001, la siguiente

expresión evalúa a 8001.

Ejemplo:

@”EMPLID”

El siguiente ejemplo explica el uso del operador @ para convertir una cadena

almacenándola en un registro y un campo.

Ejemplo:

&STR1 = “RECORD.BUS_EXPENSE_PER”;

&STR2 = “BUS_EMPENSE_DTL.EMPLID”;

&STR3 = FerchValue(@(&STR1), CurrentRowNumber (1), @(&STR2),1);

WinMessage (&STR3, 64);

Operadores de comparación

Los operadores de comparación, comparan dos expresiones del mismo tipo de datos. El

resultado de la comparación es un valor booleano. La siguiente tabla resume estos

operadores.

Operador Significado

= Igual

TM

PDF Editor

Page 28: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

28 |

Operador Significado

!= Diferente

<> Diferente

< Menor que

<= Menor o igual

> Mayor

>= Mayor o igual

Puede agregar al inicio de cualquier operador el operador NOT, por ejemplo:

Not=

Not<

Not>=

Operadores booleanos

Los operadores lógicos AND, OR y NOT son utilizados para combinar expresiones

Booleanas. La siguiente tabla muestra el resultado de combinar dos expresiones

booleanas con los operadores AND y OR.

Expresión 1 Operador Expresión 2 Resultado

FALSE AND FALSE FALSE

FALSE AND TRUE FALSE

TRUE AND TRUE TRUE

FALSE OR FALSE FALSE

FALSE OR TRUE TRUE

TRUE OR TRUE TRUE

El operador NOT niega la expresión bolean, cambiando el valor de True a Falso y de

False a True.

El siguiente ejemplo de sentencias contiene expresiones booleanas.

TM

PDF Editor

Page 29: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

29 |

Ejemplo:

&FLAG = (Not (&FLAG));

If ((&HAS_FLEAS or &HAS_TICKS) and

SOAP_QTY <= MIN_SOAP_QTY) then

SOAP_QTY = SOAP_QTY + OrderFleaSoap (SOAP_ORDER_QTY);

End-if;

Eventos en PeopleCode

Evento Activate

El evento actívate es iniciado cada vez que se activa una página, inclusive cuando una

página es mostrada al usuario por primera vez, o si el usuario presiona TAB entre las

diferentes paginas en un componente. Cada página activa su propio evento.

Solo se puede activar PeopleCode asociándolo con páginas

Evento FieldChange

Utilice FieldChange PeopleCode para re-calcular los valores de los campos en la

pagina, cambiar la apariencia de la pagina de control. Para validar el contenido de un

campo, utilice el evento FieldEdit.

El evento FieldChange se aplica al campo o fila que acaba de cambiar.

FieldChange PeopleCode se acompaña de RowInit PeopleCode. En esta combinación

RowInit/FieldChange, el código en RowInit evalúa los valores en el componente e

inicializa su estado o los controles de la página. FIeldChange vuelve a evaluar los

valores en el componente al momento de la ejecución y resetea los valores o las

páginas.

Evento FieldDefault

El evento FieldDefault PeopleCode permite programar los valores por default para los

campos cuando se van a mostrar. Este evento se inicia en todos los campos como parte

de diferentes procesos, sin embargo, los triggers de PeopleCode se disparan cuando

las siguientes condiciones son verdaderas:

Los campos de la página continúan en blanco después de aplicar cualquier

valor especificado en las propiedades del registro.

El campo tiene un programa PeopleCode para FieldDefault

TM

PDF Editor

Page 30: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

30 |

En la práctica, el PeopleCode para FieldDefault normalmente configura los campos por

default cuando nuevos datos se agregan al componente, esto es, en modo de agregar y

cuando una nueva fila es insertada.

Si el valor de un campo es cambiado, ya sea a través de PeopleCode o por el usuario,

la propiedad IsChange para la filase pone en verdadero. La excepción a esto en cuando

un cambio esta hecho con los eventos FieldDefautl o FieldFormula. Si un valor se

configura en FieldDefault o FieldFormula, la fila no se marca como cambiada.

Al guardar, las nuevas inserciones y cambios a filas se escriben en la base de datos.

Las nuevas inserciones

Evento FieldEdit

Use el evento FieldEdit para validar el contenido de un campo. Si el dato no pasa la

validación el programa PeopleCode debe mostrar un mensaje de error, el cual vuelve a

mostrar la página, mostrando el mensaje de error y poniendo el campo en rojo.

Para permitir al usuario editar un campo pero alertarlo de la posibilidad de un error, use

una sentencia de advertencia o de error. Una sentencia de advertencia muestra una

ventana de advertencia con un botón OK y explicación. Esto permite que el contenido

del campo pueda ser cambiado y continuar el proceso como normalmente sucede.

Evento FieldFormula

El evento FieldFormula normalmente no es utilizado. Porque FieldFormula PeopleCode

inicia de diferentes maneras y lanza PeopleCode en cada campo o cada fila en el buffer

del componente, y puede degradar el desempeño de la aplicación. Use RowInit y

FieldChange en lugar de evento FieldFormula.

Evento ItemSelected

El evento ItemSelected es iniciado donde sea que el usuario seleccione un elemento de

un menú. En menús emergentes, ItemSelected PeopleCode se ejecuta en el contexto

de la página donde se encuentra el menú, lo que significa que puede tener un menú

diferente por cada página.

ItemSelected PeopleCode esta asociado solo con los menús emergentes.

Evento PosBuild

El evento PostBuild es asociado después de construir todos los eventos del

componente. Este evento normalmente utilizado para mostrar u ocultar páginas.

También es utilizado para configurar las variables del componente.

PeopleCode PostBuild esta asociado solo con los componentes

TM

PDF Editor

Page 31: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

31 |

Evento PreBuild

El evento PreBuild es iniciado antes del resto de los eventos Built del componente. Este

evento se utiliza para esconder o mostrar páginas. También es utilizado para configurar

las variables del componente.

También use el evento PreBuild para validar la entrada de datos en las páginas de

búsqueda.

Evento PrePopup

El evento PrePopup es iniciado antes de mostrar un menú emergente.

Puede utilizar PeopleCode PrePopup para controlar la apariencia del menú emergente.

Evento RowDelete

El evento RowDelete es iniciado cuando el usuario intenta borrar un afila de datos

desde un página. Use PeopleCode RowDelete para prevenir la eliminación de una fila o

para ejecutar algún proceso después de la eliminación.

PeopleCode RowDelete puede ser asociado con campos y registros

Evento RowInit

El evento RowInit se inicia por primera vez cuando el Component Processor encuentra

una fila de datos. Se utiliza para configurar el estado inicial del control de componentes.

Esto ocurre durante el proceso de construcción del componente y la inserción de una

fila. Esto ocurre después del método Select o SelectAll.

No use sentencias de advertencia o error en el PeopleCode RowInit; esto causa un

error de ejecución.

Evento RowInsert

Cuando el usuario agrega una fila de datos, el Component Processor genera un evento

RowInsert. Debe utilizar PeopleCode RowInsert para procesos especificos para insertar

nuevas filas. No ponga PeopleCode en RowInsert si existe RowInint, debido a que el

evento RowInit siempre inicia antes del evento RowInsert, lo que causa que el código.se

ejecute dos veces.

Evento RowSelect

El evento RowSelect se inicia en al principio del proceso de construcción del

componente en cualquiera de los modos de acción (Update, Update/Display All,

TM

PDF Editor

Page 32: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

32 |

Correction). RowSelect se utiliza para filtrar las filas de los datos que se están leyendo

en el buffer del componente

Una función DiscardRow en RowSelect causa que el Component Processor salte la fila

actual y continúe el proceso a otra fila. La sentencia StopFetching causa que el

Component Processor acepte la fila de datos y pare la lectura de las filas de datos. Si se

ejecutan las dos sentencias, el programa salta la fila actual y entonces detiene la lectura

de las demás filas.

Rara vez se utiliza el RowSelect, debido a que es ineficiente para filtrar filas que ha

seleccionado anteriormente.

Evento SaveEdit

El evento SaveEdit se indica cuando un usuario intenta guardar el componente. Puede

utilizar el PeopleCode SaveEdit para validar la consistencia de datos en los campos del

componente. Siempre que una validación involucre más de una campo en el

componente, debe utilizar PeopleCode SaveEdit. Si una validación involucra solo un

campo en la página del componente, use PeopleCode FieldEdit.

Un error en una sentencia en SaveEdit PeopleCode muestra un mensaje y muestra otra

vez el componente sin guardar los datos. Una sentencia de advertencia permite al

usuario dar clic en OK y guardar los datos o dar Clic en Cancel y regresar al

componente sin guardar los datos.

SaveEdit puede asociarse con registros y componentes

Evento SavePostChange

Después de que el Component Processor actualiza la base de datos, inicia el evento

SavePostChange. Puede utilizar SavePostChange para actualizar las tablas sin utilizar

el componente sino la función SQLExec.

Un error o advertencia en SavePostChange causa un error de ejecución. Evite los

errores y advertencias en este evento.

El sistema utiliza la sentencia commit de SQL después de completar exitosamente el

evento SavePostChange.

Si esta ejecutando Workflow PeopleCode, tenga en cuenta que si el Workflow falla, el

evento SavePostChange no sera ejecutado. Si su componente tiene ambos eventos,

Workflow y SavePostChange considere cambiar el evento SavePostChange a

SavePreChange.

TM

PDF Editor

Page 33: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

33 |

Evento SavePreChange

El evento SavePreChange es iniciado después de que SaveEdit se complete sin

errores. SavaPreChange proporciona una oportunidad final para manipular datos antes

de que el sistema actualicé la base de datos, para instancias puede utilizar

SavePreChange poner en alto nivel las llaves. Si SavePreChange corre

satisfactoriamente, un evento Workflow se genera, y el Component Processor utiliza

apropiadamente las sentencias SQL Inser, Update o Delete.

Campo ChartField

Es un campo que almacena caracteres de cuentas, recursos, y otros, dependiendo de

la aplicación PeopleSoft. Los valores ChartField representan números de cuentas

individuales, códigos de departamento, y así sucesivamente.

TM

PDF Editor

Page 34: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

34 |

PeopleSoft Application Engine

PeopleSoft Application Engine es una PeopleTools designada para ayudarle a

desarrollar a fondo programas SQL. Esta herramienta esta destinada para ser utilizada

por desarrolladores con conocimiento de SQL, SQL tools y PeopleTools.

PeopleSoft Application Engine ofrece una alternativa para escribir programas en cobol o

SQR para procesamiento afondo de SQL. Mientras PeopleSoft Application Engine no

genera, analiza o entiende SQL, si ejecuta el SQL que usted proporcione.

Entendiendo PeopleSoft Application Engine

Puede utilizar PeopleSoft Application Engine para desarrollar programas batch o en

línea que realizan procesos de altos volúmenes, procesando a fondo sus datos.

Fundamentos de PeopleSoft Application Engine

PeopleSoft Application Engine comprende dos componentes distintos, un diseñador

donde se define los programas batch y el entorno de ejecución donde se corren y

monitorean los programas.

Aplicación

Sección

Sección

Sección

Paso

Paso

Paso

Acción

Acción

Acción

TM

PDF Editor

Page 35: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

35 |

En PeopleSoft Application Engine, un programa es un conjunto de sentencias SQL y de

PeopleCode. Un programa se define en PeopleSoft Application Designer y realiza un

proceso de negocio.

PeopleSoft Application Engine no genera SQL o PeopleCode. Este ejecuta las

sentencias SQL y PeopleCode que se incluye en una acción de Application Engine

como parte de su programa.

PeopleSoft Application Engine esta diseñado para el procesamiento batch donde usted

tiene los datos que deben ser procesados sin intervención del usuario.

Meta-SQL

Puede escribir SQL dentro de PeopleSoft Application Engine o puede copiar sentencias

SQL en un Application Engine de cualquier utilidad SQL con unos cuantos cambios (si

los hubiera). Esto permite escribir y ajustar sentencias SQL antes de tratar de

incorporarlos en un programa de Application Engine

Las plataformas de las bases de datos pueden tener diferentes reglas de sintaxis

especialmente en lo que respecta a la fecha, la hora, y otros cálculos numéricos.

Generalmente puede trabajar en torno a las diferencias de sintaxis utilizando PeopleSoft

meta-SQL, el cual apoya un PeopleSoft Application Engine. Meta-SQL es un conjunto

de condiciones predefinidas diseñado para sustituir RDBMS con una sintaxis común

Elementos del programa de Application Engine.

Un programa de Application Engine comprende un conjunto de procesos para ejecutar

una tarea dada y esta compuesta de varios elementos claves:

Secciones

Pasos

Acciones

Registros de estado.

Secciones

Las secciones comprenden uno o más pasos y son equivalentes a un párrafo en

COBOL o a un procedimiento en SQR. Todos los programas del Application Engine

deben contener al menos una sección Main.

Una sección es un conjunto de pasos ordenados que se ejecutan como parte de un

programa. Puede llamar a estas secciones (y otros programas) de los pasos dentro de

otras secciones.

TM

PDF Editor

Ian Isaac
Resaltado
Ian Isaac
Resaltado
Ian Isaac
Resaltado
Ian Isaac
Resaltado
Page 36: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

36 |

Un programa debe contener al menos una sección. La ejecución del programa siempre

comienza con la sección definida como Main.

Pasos

Los pasos son las unidades más pequeñas de trabajo que pueden ser incluidas dentro

de un programa. Aunque puede utilizar un paso para ejecutar un comando de

PeopleCode o iniciar un mensaje, normalmente, un paso se utiliza para ejecutar una

sentencia SQL o para llamar otras secciones.

Cuando una sección es llamada, sus pasos se ejecutan secuencialmente. Cada

programa empieza por ejecutar el primer paso de la sección requerida llamada Main y

termina después del último paso en la última sección completada correctamente

Acción

Hay múltiples tipos de acciones que puede especificar para incluir dentro de un paso.

Es común tener múltiples acciones asociadas con un simple paso.

Acciones Do

Las acciones Do contienen una sentencia SQL designada a regresar resultados del cual

dependen acciones subsecuentes. Por ejemplo, si la sentencia Select no devuelve

líneas, las acciones subsecuentes no necesitan ejecutarse.

Los 4 tipos de acciones Do son:

Do While

Do When

Do Select

Do Unit

SQL

La mayoría de las acciones SQL contienen una simple sentencia de SQL. Estas

acciones pueden realizar los siguientes tipos de sentencias SQL:

Update

Delete

Insert

Select

Las acciones SQL difieren de las acciones Do, las cuales también contienen SQL, y en

que la acción de SQL no controla el flujo del programa.

TM

PDF Editor

Ian Isaac
Resaltado
Ian Isaac
Resaltado
Page 37: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

37 |

PeopleCode

PeopleSoft Application Engine PeopleCode proporciona una excelente forma de

construir SQL dinámicos, realizando simples if/else, establecidos por default y otras

operaciones que no requieren una consulta a la base de datos.

Lo más importante, PeopleCode proporciona acceso a las tecnologías de integración de

PeopleSoft como PeopleSoft Integration Broker, Component Interface y Business

Interlinks.

Log Message

Se utiliza la acción Log Message para escribir un mensaje basado en una condición en

su programa. Esto da a su programa capacidad multilenguaje. El sistema almacena el

mensaje generalmente como un mensaje conjunto, números de mensaje y valores de

los parámetros.

Cuando el usuario ve los mensajes utilizando la pagina de Application Engine Message

Log, el sistema recupera el mensaje apropiado del catalogo de mensajes basado en el

idioma seleccionado por el usuario.

Call Section

Puede también insertar una acción que llame a otra sección. La sección llamada puede

estar en el mismo programa, o puede ser en un programa externo. Esto le permite

reutilizar el programa, en lugar de crear la acción. Si una sección ya existe en un

programa, en vez de copiarla en otro programa, sólo mándela llamar.

State Records

El State Record es un registro que se debe crear y mantener por el desarrollador del

Application Engine. Este registro define los campos que un programa utiliza para pasar

valores de una acción a otra.

Un State Record puede ser cualquier record físico o record de trabajo, y cualquier

número de State Records que puedan ser asociados con el programa.

Tipos de programas del Application Engine

Hay cinco tipos de programas en el Application Engine. Usted especifica el tipo de

programa en cuadro de dialogo de las propiedades para la definición de el programa.

Los tipos son:

Standard, es un punto de entrada normal del programa.

Upgrade Only, es utilizada para las actualizaciones de PeopleSoft.

Import Only, el cual es utilizado importar utilerías de PeopleSoft.

TM

PDF Editor

Ian Isaac
Resaltado
Page 38: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

38 |

Daemon Only, un tipo de programa utilizado como un demonio proceso.

Transform Only, un tipo de programa utilizado para apoyar Extensible Stylesheet

Language Transformaciones (XSLT).

Daemon Program

Application Engine proporciona un Daemon Program, llamado PSDAEMON, que se

ejecuta continuamente cuando el Process Scheduler esta corriendo, y es identificado

por trabajos recurrentes. Un conjunto predefinido de condiciones es un evento.

Transform Program

Los tipos de programas Transform Only, permite diferentes sistemas para comunicarse

uno con el otro transformando mensajes en formatos apropiados. Cuando se especifica

un Application Engine program como Transform Only, se debe especificar la acción del

tipo XSLT o PeopleCode.

Puede utilizar Transform Program para hacer cualquiera de lo siguiente:

Aplicar una transformación a un mensaje para hacer su estructura

cumplir con el objetivo de los requerimientos del sistema.

Realizar una traducción de datos en un mensaje como los datos están

representados de acuerdo a los convenios del sistema.

Determinar si para pasar un mensaje a través de su objetivo, para filtrar

esto basado en su contenido.

Creando programas de Application Engine

Un Application Engine incluye un orden lógico de secciones, pasos, y acciones. Un

programa ejecutable debe contener al menos una sección llamada Main, utilizada para

identificar el punto de comienzo del programa, este debe contener al menos un paso y

cada paso debería contener al menos una acción.

Visualizando programas de Application Engine

Utilizando vista Definition

Utilice la vista Definition para crear definiciones dentro de una estructura jerárquica

definida, en la cual los nodos representan las definiciones. Un nodo es una

representación visual de una sección, un paso o una acción que puede seleccionar

colapsar, modificar, etc.

TM

PDF Editor

Page 39: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

39 |

Las secciones que aparecen en la vista Definition no necesariamente aparecen en el

orden en que estos se ejecutan. Para ver el orden real en las cuales las secciones se

ejecutan, cambie a la vista Program Flow.

Puede navegar en esta vista utilizando las siguientes teclas de combinaciones:

Presione CTRL + HOME para desplazarse a la parte superior de la definición del

programa y seleccione el primer nodo.

Presione CTRL + END para desplazarse hasta el final de la definición del

programa y seleccione el último nodo visible.

Presione TAB para pasar del campo seleccionado actualmente a la próximo

campo actualizado

Presione CTRL + DOWN ARROW para desplazarse desde el nodo

seleccionado actualmente para el próximo nodo.

Presione CTRL + UP ARROW para pasar de la actual nodo seleccionado a la

anterior nodo.

La siguiente ilustración muestra la vista Definition.

Definición de la vista Pop-up Menu

La siguiente tabla describe cada tema que ve cuando le da clic a la ventana de

Definition. Algunos elementos del menú se activan sólo cuando una definición en

particular está seleccionada.

TM

PDF Editor

Page 40: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

40 |

Comando del menú Descripción

View PeopleCode Ejecuta el editor de PeopleCode con el PeopleCode

apropiado. Se habilita cuando una acción PeopleCode es

seleccionada.

View SQL Ejecuta el editor SQL con el SQL apropiado. Se habilita

cuando una acción que contiene un SQL es seleccionada.

View XSLT Ejecuta el editor SQL cuando el se relacionan el texto

cargado y el Extensible Stylesheet Language

Transformations (XSLT). Se habilita solo para un programa

tipo Transform Only, cuando una acción XSLT es

seleccionada.

Cut Remueve el elemento seleccionado y sus copias del

portapapeles. No puede copiar o pegar dentro de ningún

programa.

Copy Copia un elemento seleccionado.

Paste Pega el contenido del portapapeles de PeopleTools, (el

más reciente corte o copiado) a la ubicación actual del

cursor.

Delete Borra el nodo actualmente seleccionado de la definición del

programa.

Refresh View Actualiza la vista actual y reordena la definición de objetos,

según sea necesario.

Insert Section Inserta una nueva sección en el programa actual, en el

lugar donde el cursor esta en posición. Esta opción está

habilitada sólo cuando tienes MAIN u otra sección

seleccionada.

Insert Step/Action Inserta un nuevo paso y la acción dentro de la sección

seleccionada actualmente. Esta opción está activada sólo

cuando usted tiene una sección o un paso seleccionado.

Insert Action Inserta una nueva acción en el paso actualmente

seleccionado. Esta opción está habilitada sólo cuando se

tiene un paso o acción seleccionada.

Jump to This Program

Flow

Cambia a el programa Program Flow view

TM

PDF Editor

Page 41: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

41 |

Comando del menú Descripción

Con la primera aparición de la actual selección definiendo

en el punto de mira.

Print Muestra el cuadro de diálogo Imprimir para la vista de la

definición.

Insert Section Into

Project

Se aplica a las secciones. Inserta la actual selección en el

proyecto.

Utilizando la vista Program Flow

La vista Program Flow es solo de lectura, muestra las secuencias de los pasos para ser

ejecutados en el programa que se esta desarrollando. La siguiente ilustración muestra

el programa:

Usted puede controlar la cantidad de detalle que aparece para cada definición haciendo

clic en ella para ampliar al siguiente nivel. También puede ver el SQL o PeopleCode en

la parte inferior (splitter) del área de la ventana, haciendo clic en la parte baja de la

misma.

Si un nodo de primer paso (uno que no es el resultado de llamar una sección) es

seleccionado, el cuadro de dialogo Print Options permite la impresión, ya sea para

comenzar en ese nodo de paso o la impresión de todo el programa. Sin embargo, si un

nodo del segundo paso (uno que es el resultado de llamar una sección), un nodo de la

segunda acción, un nodo SQL o un nodo PeopleCode, es seleccionado en la vista

Program Flow, el cuadro de dialogo Printf Options solo permite la impresión de todo el

programa.

TM

PDF Editor

Page 42: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

42 |

Para mostrar el menú pop-up para un nodo, de clic derecho al mismo nodo. No tiene

que seleccionar primero el nodo.

Puede también mostrar los comentarios asociados con las definiciones seleccionando

View, Show All Comments o para un nodo en particular, haga clic derecho y seleccione

Show Comment.

Menú pop-up del Program Flow

La siguiente tabla contiene cada tema de menú pop-up de la vista Program Flow.

Comando del menú Descripción

View PeopleCode Ejecuta el editor de PeopleCode con el apropiado

PeopleCode cargado. Habilitado cuando una acción de

PeopleCode esta seleccionada.

View SQL Ejecuta el editor de SQL con el apropiado SQL cargado.

Habilitado cuando una acción con SQL esta seleccionada.

Refresh View Actualiza la vista actual y reordena la definición de objetos,

según sea necesario.

Show Comment Revela los comentarios para un simple objeto que aparece

en la vista Program Flor.

Jump to This Definition Cambia a la vista Definition con la primera aparición de la

definición actual del objeto seleccionado actualmente.

Print Ejecuta el cuadro de diálogo para imprimir para la vista del

programa.

Cambiando éntre las vistas Definition y Program Flow

Por default, la navegación dentro de cualquier vista no afecta a la fila activa actual en

otra vista. Esto permite recuperar el lugar mientras se desplaza en alguna otra.

Para cambiar entre dos vistas, puede utilizar cualquiera de los siguientes métodos:

Pestañas de vistas.

Como con cualquier interfaz con pestañas, si selecciona una pestaña, la vista de

la interfaz asociada se convierte en una interfaz activa. Cuando regrese la vista

previa, este sigue posicionada en el actual o ultimo nodo dentro del programa

cuando se encienda.

Menú de vistas

TM

PDF Editor

Page 43: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

43 |

Seleccione una sección o paso en la actual vista (note que seleccionando una

acción no habilita esta funcionalidad). Seleccione View Jump to Program Flow

o View Jump to Definition, dependiendo en que vista este activo actualmente.

Cuando selecciona uno de estos comandos, el centro del objetivo depende de

que lo tenga seleccionado en la vista previa.

Menú pop-up

Los mismos comandos como el menú View también están disponibles desde el

menú pop-up.

Cambiando dentro de la vista Program Flow

Mientras se encuentre en la vista Program Flow, puede seleccionar estas opciones del

menú pop-up:

Go to Next Reference

Seleccione esta opción para cambiar la siguiente referencia de una definición de

un objeto en particular. Esto le ayuda a navegar rápidamente a través del

programa. Por ejemplo, si las referencias a la sección C, el paso 4 aparece tres

veces, porque hay varias llamadas a este objeto en tiempo de ejecución,

seleccione Go to Next Reference para navegar fácil y rápidamente en cada

referencia.

Jump to this Definition

Seleccione esta opción para ir directamente a la definición del nodo en la vista

Definition que pertenece a la actual selección en la vista Program Flow.

Utilizando la opción actualizar

Como desarrollador de un programa Application Engine, tal vez inserte, renombre y

borre definiciones. En un largo programa puede ser fácil perder su lugar o

desorientarse. La opción actualizar reordena todos los nodos para la actual definición de

acuerdo a la siguiente lógica:

Para las definiciones de un programa estándar, la sección del Main siempre

aparece primero.

Las secciones restantes aparecen alfabéticamente por nombre, esto hace más

fácil localizar una sección dentro de un programa. El sistema ejecuta secciones

a través de la acción Call Sections dentro de los pasos, no por el orden que

fueron definidos.

Los pasos nunca se reordenan automáticamente en la vista Definition, y, en

tiempo de ejecución se ejecutan en el orden en que fueron definidos.

TM

PDF Editor

Page 44: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

44 |

Las acciones se reordenan lógicamente siempre dentro de un paso, basado de

su tipo de acción, que define su tiempo de ejecución.

Filtrando el contenido de la vista

Las sección de las opciones de filtrado le permiten filtrar la vista actual de manera que

sólo vea las secciones y las pasos basados en los criterios especificados. Para habilitar

o modificar las opciones de filtrado, seleccione View Secction Filtering.

Para habilitar o modificar las opciones de filtro, seleccione View Section Filtering.

Puede seleccionar una de las siguientes opciones de filtrado:

Comando de menú Descripción

No Filtering Seleccione para ver todos los objetos en el programa

independientemente de cualquier sección de atributos,

tales como mercado, tipo de base de datos, fecha efectiva

y estado efectivo.

Default Seleccione para mostrar la definición de filtro de acuerdo

con el valor por default de los criterios de filtrado. Si cambia

el valor de cualquier opción de filtrado haga clic en OK,

para tener definido una filtro personalizado.

Custom Seleccione para mostrar el cuadro de diálogo de la

definición de filtro y definir las opciones del filtrado para la

vista actual.

Comportamiento de las opciones de la sección de filtrado

Cuando use la sección de opciones de filtrado considere lo siguiente:

El valor por default es no filtrado, por lo tanto, todas las definiciones de la

sección se incluyen en esta vista.

Si selecciona filtrado, el filtrado de las opciones por defecto se muestran

mientras está en la sección actual de PeopleSoft Application Designer

Si modifica este filtro y da clic en OK, las nuevas opciones serán guardadas

como opciones activas actuales y en consecuencia se actualiza la vista.

Si selecciona los filtros por default, las opciones aparecerán en el cuadro de

dialogo.

Si selecciona Section Filtering, Default o Section Filtering Custom aparecerá el

siguiente cuadro de diálogo:

TM

PDF Editor

Page 45: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

45 |

En este ejemplo, sólo las definiciones que representan a los siguientes criterios

aparecen en las vistas Definition y Program Flor.

Atributo Definición

Market Seleccione un código de mercado para ver sólo las

definiciones dentro de ese mercado. Para ver todos los

agentes del mercado relacionados con las definiciones de

un programa, puedes actualizar el perfil predeterminado, o

definir un filtro personalizado, seleccionando (none) de la

lista desplegable Market Drop-Down.

Platform Seleccione la plataforma de filtrado. En la ilustración, las

secciones que se definen sólo para Microsoft SQL Server

son mostradas. Seleccione Default para mostrar las

secciones definidas para ser independientes de la base de

datos de la plataforma independiente. Las plataformas

especificas incluyen Oracle, DB2 UDB parar OS/390 y

z/OS, DB2/UNIX, Informix, Microsoft, y Sybase.

As of Date Seleccione la fecha filtrada. En la imagen de arriba, las

secciones con secciones como una fecha igual o superior a

7 de abril de 2000. Seleccione None para mostrar todas las

secciones a pesar de la fecha efectiva.

Active Status Seleccione para mostrar las definiciones sección activa

TM

PDF Editor

Page 46: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

46 |

Creando, abriendo y renombrando los programas.

Creando nuevos programas

Para crear nuevos programas:

1. Seleccione File New o presione CTRL + N.

2. En el cuadro de dialogo, seleccione App Engine Program y de clic en OK.

3. Nómbrelo y guarde el programa. Seleccione File Save As ingrese le

nombre del programa en el cuadro de dialogo Save Name As y de clic en OK.

Abriendo programas existentes

Para abrir un programa existente:

1. Seleccione File Open.

2. En el cuadro de dialogo Open Definition seleccione App Engine Program de la

lista desplegable

3. Ingrese su criterio de búsqueda del programa que quiera, seleccione su

programa en los resultados de la búsqueda y de clic en Open.

Renombrando programas

Para renombrar un programa:

1. Seleccione File Rename.

2. En el cuadro de dialogo de renombrar, asegúrese de que aparezca App

Engine Program como el tipo de definición.

3. En el menú desplegado que contiene los resultados de su búsqueda

seleccione el programa que quiera renombrar.

4. Seleccione Rename.

5. Sitúe el cursor en la casilla que aparece destacado en todo el nombre del

programa.

6. Ingrese el nuevo nombre del programa.

7. Haga clic en Rename y, a continuación, responder adecuadamente en el

cuadro de de diálogo Confirm Rename.

TM

PDF Editor

Page 47: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

47 |

Copiando o moviendo elementos del programa

Los siguientes procedimientos aplican a las sesiones, pasos y acciones. Tenga en

cuenta que cuando estas funciones se llevan a cabo para un determinado objeto, el

resultado no sólo se aplica al objeto seleccionado, sino que también incluye las

definiciones asociadas si es que existen.

Para copiar una definición:

1. Seleccione la definición.

2. Seleccione Edit Copy.

3. Sitúe el cursor donde usted desea poner la definición copiada, y seleccione

Edit Paste.

Para mover una definición:

1. Seleccione la definición de objeto.

2. Seleccione Edit Cut.

3. Sitúe el cursor en la ubicación de destino y seleccione Edit Paste.

Probando programas de Application Engine

Después de crear o modificar su programa, usted puede probarlos en PeopleSoft

Application Designer en segundo plano. Puede utilizar Ejecutar en el cuadro de diálogo:

Para ejecutar un programa Application Engine en segundo plano:

1. Seleccione Edit Run Program desde la barra de herramientas de

PeopleSoft Application Designer. El cuadro de dialogo Run Request aparecerá.

TM

PDF Editor

Page 48: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

48 |

2. Introduzca los valores adecuados. Al hacer clic en OK, estos valores se pasan

como parámetros al ejecutable de PeopleSoft Aplicación Engine.

3. Presione OK.

Los datos que necesita son:

Atributo Descripción

Run Control ID Introduzca el run control ID del programa que usted está

probando

Run Minimized Seleccione para que la ventana del proceso solicitado se

minimizara al ejecutar el programa.

Output Log to File Seleccionar para escribir el registro de salida a un archivo.

Log File Name Especifique el nombre del archivo de registro de salida

(permitido sólo cuando la salida del archivo de registro está

seleccionada).

Process Instance Especifique el proceso para ejecutar esta petición, o utilizar

el valor por default de cero si el número de la instancia no

es necesario.

Configurando las propiedades del programa

Accediendo a las propiedades

Cuando tiene un programa Application Engine abierto en el PeopleSoft Application

Designer, puede ver y modificar las propiedades asignadas a la totalidad de un

programa sólo como lo haría un paso o una sección.

Para ver o modificar las propiedades asociadas con un programa, haga clic en el botón

propiedades y seleccione File Definition Properties, mientras que el programa está

abierto. También puede pulsar ALT + ENTER. El cuadro de diálogo Program Properties

aparece.

Configuración las propiedades generales

Acceda al Programa de cuadro de diálogo Propiedades y seleccione la pestaña

General. Puede especificar los valores de identificación para su programa Application

Engine.

Atributo Descripción

Owner ID (Opcional) Introduzca el ID del propietario para el

TM

PDF Editor

Page 49: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

49 |

Atributo Descripción

programa. El propietario de identificación es una forma de

identificar que las definiciones son propiedad de las

aplicaciones de PeopleSoft, como PeopleSoft General

Ledger, Accounts Receivables, y así sucesivamente.

Configurando las propiedades del registro de estado

Seleccione la pestaña del registro de estado.

Atributos Definición

Qualify Search Introduzca los caracteres o nombre de la tabla para limitar

los resultados que aparecen en la lista de registro. De

forma predeterminada, la casilla Record List contiene todos

los nombres de records que terminan con la extensión

AET. Esta extensión identifica el registro como un registro

Application Engine.

Get List Haga clic aquí para rellenar la Record List

Record List Esta casilla contiene los resultados de su búsqueda del

registro de estados

TM

PDF Editor

Page 50: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

50 |

Atributos Definición

Selected Seleccione un registro de estados para su uso con un

programa en particular. Haga clic en Add para incluir

registros seleccionados de la lista de registros. Haga clic en

Remove para eliminar los registros seleccionados de la

lista. Indican que el registro actúa como un registro de

estados por defecto para la selección de su casilla de

verificación.

Especificando las tablas temporales

Seleccione la pestaña de tablas temporales. Las tablas temporales almacena resultados

durante un programa que se esta ejecutando.

Atributo Descripción

Qualify Search Introduzca los caracteres o nombres de tabla completa

para limitar los resultados que aparecen en la lista de

registro. De forma predeterminada, el cuadro Record List

sólo contiene registros que son de tipo tabla temporal.

Get List Haga clic aquí para rellenar la Record List.

TM

PDF Editor

Page 51: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

51 |

Atributo Descripción

Record List Este cuadro de texto contiene resultados de su búsqueda

en tablas temporales

Selected Seleccione las tablas temporales para su uso con un

programa en particular. Haga clic en Add para incluir los

registros seleccionados que aparecen en la lista de

registro. Haga clic en Remove para excluir los registros

seleccionados que aparecen en la lista seleccionada.

Instance Count Introduce el número de tablas físicas que se creará para

cada tabla dedicada a este programa durante el

procedimiento de SQL Build en PeopleSoft Application

Designer.

Insert Selected List into

Project

Si la definición del programa activo de Application Engine

pertenece a un proyecto, seleccionelo para incluir las tablas

temporales para este programa dentro del mismo proyecto.

Runtime Controla como se comporta un programa Application

Engine si una instancia de sus tablas temporales

especificadas no está disponible. Si usted selecciona

Continue, entonces PeopleSoft Application Engine utiliza la

versión baja, o la versión no dedicada, de las tablas

temporales. Si usted selecciona Abort, entonces las salidas

de programa tendrán un mensaje de error.

Configurando propiedades avanzadas

TM

PDF Editor

Page 52: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

52 |

Atributos Descripción

Disable Restart Seleccione para desactivar de la capacidad de reiniciar un

programa en particular.

Application Library En algunos casos, puede que quiera un programa para

contener sólo una colección, o una biblioteca, de las rutinas

comunes que no desea para ejecutarse como un programa

independiente. Cuando las secciones se definen como

público, otros pueden llamar a los programas de las

secciones, o rutinas, que existen en la biblioteca en tiempo

de ejecución.

Batch Only Los programas Batch Only no se ejecutan a partir de la

función CallAppEngine PeopleCode. Cualquier tabla

temporal utilizada para Batch Only crea instancias en línea.

Message Set Especifique el mensaje por default, el valor establecido

para este programa. El sistema utiliza este mensaje de

valor para todos los mensajes de registro, acciones en las

que el mensaje conjunto no se especifica.

Program Type • Standard: Utilizado por programas Entry-Point.

• Upgrade Only: Utilizado por PeopleSoft para actualizar.

• Import Only: Utilizado por PeopleSoft para importar

utilidades.

• Daemon Only: Utiliza los programas Daemon Type.

• Transform Only: Apoyado por programas XSLT.

Agregando secciones

Una sección incluye pasos y es equivalente a un párrafo de COBOL o una función de

PeopleCode. Puede crear secciones que son independientes de la plataforma o

plataformas específicas, destinados a un mercado particular, y de fecha efectiva.

Cuando usted crea un nuevo programa, al mismo tiempo crea una sección llamada

Main. La sección Main identifica el punto de inicio del programa para que pueda ser

llamado por otro programa.

TM

PDF Editor

Page 53: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

53 |

Sección de orden de ejecución

Una sección es única basada en el programa y los nombres de la sección, y basada en

la plataforma de la base de datos y fecha efectiva. Cuando ejecuta un programa de

Application Engine, este ejecuta secciones basadas en el siguiente orden de

precedencia:

1. Si una sección por el mercado actual existe, ejecútela.

De otra manera, ejecute la sección de mercado global.

2. Si una sección por la plataforma actual o base de datos existe, ejecútela.

De otra manera, ejecute la sección por default de la plataforma de la base de datos.

3. Si secciones múltiples de fecha efectiva existen, ejecute la sección con la más

reciente fecha efectiva, basada en el dato actual.

Insertando secciones

Para insertar una sección:

1. Seleccione Insert Section o con el clic derecho seleccione Insert Section

El nombre por default para una sección que se inserta es Section N, donde N es

un número que incrementa los intentos lo que proporciona un nombre único para

cada una de los objetos de sección. Sino renombra las secciones, las secciones

se llamaran Sección N + 1, donde N es la última sección que se insertó. En

consecuencia, se obtiene como nombres, Section1, Section2, Section3, y así

sucesivamente.

Nota. Las secciones son siempre reordenadas alfabéticamente por nombre al momento de guardar para

hacer más fácil localizar la sección dada.

2. Introduzca los valores restantes de la propiedad de la sección.

3. Guarde el programa

Localizando las secciones.

Hay varios métodos para localizar las referencias de las secciones dentro toda una base

de datos, así como dentro de un programa.

Buscando las llamadas a las secciones de referencia

Puede generalizar una lista de todas las referencias para una sección en particular. La

lista aplica solo a programas de Application Engine definidas dentro de una simple base

de datos.

TM

PDF Editor

Page 54: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

54 |

Para localizar las secciones de referencia:

1. Abra el programa que contenga la sección compartida o llamada.

2. Seleccione EditFind References

3. Aparece el cuadro de dialogo Definition Reference

4. En la pestaña Call Sections, seleccione la sección apropiada de la lista de

nombres de sección o introduzca en nombre directamente

5. Clic Ok

La ventana de salida enlista los programas y secciones que llama a un programa en

particular. Esta lista muestra el total de llamadas de referencias realizadas a una

sección particular. Las secciones llamadas dentro del programa actual aparecen en la

lista en primer lugar.

Buscando secciones en el programa actual

Mientras mas largos y complicados los programas Application Engine, tales como

actualizaciones, no es común tener mas de cien secciones. En lugar de desplazarse a

través del programa, use la función Go To.

Configurando las propiedades de las sección

Los controles que especifican las propiedades de la sección están localizadas en las

vista Definition. Por ejemplo para cada sección que incluye en su programa, esta un

nodo, como se muestra en el siguiente ejemplo, a partir de la cual usted especificara

todos los atributos que se asocian con una sección específica.

Los valores que especificas en el nivel de la sección generalmente aplican a todos los

objetos contenidos dentro de la sección.

Atributo Descripción

Section Name Elaborar una convención de nomenclatura y ser coherentes

en todo su proyecto. Usted está limitado a ocho caracteres.

Market Seleccione el mercado para el cual la sección esta

destinada. Si un mercado es irrelevante a su programa por

batch (lotes), mantener el valor por defecto el valor de

mercado de Global (GBL).

TM

PDF Editor

Page 55: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

55 |

Atributo Descripción

Platform Seleccione la plataforma de la base de datos de para la

definición que esta se esta ejecutando. Deje el valor

predeterminado para todas las secciones cuyas acciones

definidas no son específicas para ninguna plataforma de

base de datos.

Effective Date Para hacer una sección particular de fecha-efectiva,

ingrese la fecha.

Effective Status Especifique si una sección está activa, o habilitada en

tiempo de ejecución.

Section Type En el caso de una terminación abrupta del programa, este

valor se especifica al campo al reiniciar la sección.

Auto Commit Seleccione para especificar el nivel del commit de la

sección. Usted omitir el commit o tener un commit después

de que se complete exitosamente el Application Engine

Public Seleccionar para habilitar la llamada a la sección desde

otro programa.

Agregando pasos

Un paso representa la más pequeña unidad de trabajo que puede ser incluida en un

programa. Cuando crea un programa, se tiene por default la sección Main y un paso,

inicialmente llamado step01.

Insertando pasos

1. Resaltar la sección o el paso que necesite precede al nuevo paso.

Por ejemplo, si quiere que el nuevo paso sea el primero en la sección,

seleccione el nodo. Dé lo contrario, seleccione le paso existente que quiera

que sea el siguiente paso.

2. Seleccione Insert Step/action.

Por default, los pasos tienen un nombre de StepN + 1 empezando con

Step01. Renombre el paso para una mejor definición del tipo de acción que

contiene el paso.

3. Especifica el nombre de un paso y los restantes valores.

TM

PDF Editor

Page 56: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

56 |

Para renombrar el nombre del paso, posicione del cursor en el nombre del

paso de el cuadro de dialogo e ingrese un nombre. Sólo se acepta el nombre

predeterminado para la creación rápida, sencilla y programas con fines de

capacitación.

Configurando las propiedades de los pasos

Puede establecer las propiedades de paso en Definition view.

Atributo Definición

Step Name Ingrese un nombre (máximo ocho caracteres)

Commit Especifica el nivel del “commit” para el paso:

Default: Seleccione para heredar cualquier nivel de

COMMIT que ha especificado para la sección en la que

esta el paso.

Later: Seleccione para posponer el COMMIT hasta que se

produzca otro COMMIT. Aquí puede anular le nivel del

Commit.

After Step: Seleccione si tiene un nivel de COMMIT de

NONE especificado en el nivel de sección. De esta manera

puede anular el nivel de COMMIT de la sección y

especificar un paso COMMIT dentro de una sección con

ningún otro COMMIT

Frequency Habilitado sólo cuando un paso contiene una de las

siguientes acciones: Do While, Do Select, or Do Until.

Introduzca la frecuencia numérica con la que PeopleSoft

Application Engine debería hacer el COMMIT. Si ninguna,

PeopleSoft Application Engine hace COMMITS cada N

iteraciones y, a continuación, de nuevo después de la

última iteración.

On Error Especifica cómo la aplicación PeopleSoft Engine debe

responder a un error en el nivel de paso. En la rutina de

error se comporta de la misma manera para SQL y

acciones Peoplecode. El programa termina sólo en los

errores, y no en las advertencias.

Abort: La aplicación termina con error en los mensajes.

Ignore: El programa continúa pero registra un mensaje de

TM

PDF Editor

Page 57: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

57 |

Atributo Definición

error.

Suppress: El programa continúa y no presenta mensajes

de error.

SQL: Por lo general, un programa termina si una

declaración SQL falla. Si selecciona Ignore o Suppress, los

errores en la ejecución de programas son suprimidos, pero

los errores de compilación continúan hasta que el

programa termine. Por lo tanto, si selecciona para reutilizar

sobre la sentencia de actualizacion, el programa falla al

compilar se la sentencia SQL es incorrecta, pero no falla en

una duplicación de llaves o error similar cuando se ejecuta

el programa

PeopleCode: Hay un error en el programa PeopleCode si el

código regresado satisface la sentencia If(nRet &

PCM_ERROR)

Status Seleccione para activar un paso. Si el paso es actualmente

aplicable a su programa (y trabajo) probablemente querrá

que le mantenga activo.

Especificando las acciones

Esta sección provee una especificación de las acciones

Entendiendo las acciones

Hay ocho tipos de acciones que puedes incluir dentro de un paso, y un paso puede

contener múltiples acciones. Las acciones que define para un paso dependen del

resultado que el programa requiera en cada etapa de la ejecución.

Las únicas acciones mutuamente exclusivas dentro de un simple paso son llamadas

secciones y sentencias SQL; no puede agregar una llamada a las acciones de la

sección que ya contenga acciones de SQL y viceversa. Puede incluir solo uno en cada

tipo de acción dentro de un paso. Porque hay ocho tipos de acciones y dos son

mutuamente excluyentes, el máximo número de acciones en un simple paso son siete.

Acción orden de ejecución

En tiempo de ejecución, el sistema evalúa las acciones por tipo y las ejecuta dentro de

una estricta jerarquía. Por ejemplo un Do When y Peoplecode existen dentro de un

determinado paso. Application Engine siempre ejecuta el Do When primero

TM

PDF Editor

Page 58: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

58 |

El siguiente diagrama muestra la secuencia y el nivel de ejecución para cada tipo de

acción:

A medida que se añaden acciones a un paso en Definition View las acciones son

inicialmente insertadas después de la definición. Sin embargo, tras guardar una solicitud

o un recargar una vista, el Designer reordena pedidos de todas las acciones para que

coincida con la ejecución jerárquica. Esta característica le ayuda a visualizar la

secuencia en la que cada paso de su programa será ejecutado.

Insertando acciones

Para insertar una acción:

1. Resalte el paso en el que desea insertar la acción.

2. Insertar la acción. Seleccione insert Step/Action. Haga clic en el paso

insertar y seleccione Step/Action.

3. Seleccione el tipo de acción desde el cuadro de lista desplegable, o cuando el

tipo de acción actual está seleccionada, escriba el primer carácter, o de la acción

deseada tipo, a continuación, presione TAB.

4. Escriba una descripción de la acción.

5. Especificar las propiedades de la acción que ha seleccionado.

TM

PDF Editor

Page 59: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

59 |

Configurando las propiedades de la acción

Para modificar las propiedades de acción, debe tener Definition view activa. Dado que

puede incluir una variedad de acciones dentro de un paso, hay diferentes tipos de

propiedades específicas para un tipo particular de acción. Dependiendo de la tipo de

acción que seleccione, las propiedades que aparecen cambian.

Por ejemplo, puede especificar el reutilización de características con una acción SQL.

Esta característica no aplica para una acción PeopleCode.

La siguiente ilustración muestra cómo se puede seleccionar las propiedades

específicas para los diferentes tipos de acciones.

Gestionando los programas de Application Engine

Ejecutando programas de Application Engine

Entendiendo las opciones de ejecución de un programa

Los programas del Application Engine se ejecutan en uno de los siguientes modos:

modo batch utilizando PeopleSoft Process Scheduler, modo en línea utilizando

funciones PeopleCode y manualmente utilizando la línea de comandos. La siguiente

tabla lista algunas diferencias entre programas en línea y programas batch:

Ejecución en línea Ejecuciones Batch

Empeza por la función CallAppEngine de

PeopleCode

Empeza a través de PeopleSoft Process

Scheduler

Los programas se ejecutan rápidamente,

sincrónicamente, y al azar

Los programas se ejecutan a largo plazo

de forma asincrónica y en tiempos

previstos.

Potencial para la ejecución simultanea Puede ser diseñado para la ejecución

paralela

Utiliza la tabla temporal en línea Utiliza las tablas temporales de

batch/dedicated.

TM

PDF Editor

Page 60: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

60 |

Programas batch utilizando PeopleSoft Process Scheduler

Este es el modo típico de ejecución. Usted invoca programas que se ejecutan en este

modo utilizando PeopleSoft Process Scheduler o la página de Application Engine

Process Request. El modo batch también se conoce como ejecución asincrónica, lo que

significa que se ejecuta independientemente en el fondo. PeopleSoft Application Engine

se ejecuta en cualquier sistema operativo que soporte PeopleSoft como un servidor de

aplicación. Si su sitio utiliza un sistema operativo que no es soportado por PeopleSoft

Application Engine, usted debe ejecutar programas de Application Engine en el servidor

de aplicaciones (La única excepción es OS/390 [z/OS]).

Para ejecutar programas de Application Engine en el servidor batch, usted debe instalar

BEA Tuxedo. Esto aplica tanto servidores batch UNIX y como Microsoft Windows NT. Si

usted ejecuta su servidor batch en la misma maquina del servidor de aplicaciones

entonces el servidor de aplicaciones y el servidor batch puede compartir una instalación

BEA Tuxedo. Si su servidor batch esta separado de su servidor de aplicación, usted

debe instalar BEA Tuxedo en su servidor batch.

Los parámetros TOOLBINSRV en los archivos de configuración del PeopleSoft Process

Scheduler determinan donde PeopleSoft Process Scheduler invoca un programa

Application Engine.

Programas en línea utilizando PeopleCode

Los programas de Application Engine que se ejecutan en línea son ejecutados

típicamente de una página con las funciones CallAppEngine de Peoplecode. Tal

proceso en línea es síncrono, lo que significa que los procesos posteriores esperan los

resultados.

Programas manuales utilizando la línea de comando

Normalmente, se utiliza esta técnica solo durante las pruebas o si se necesita reiniciar

el programa.

Creando las definiciones del proceso

Seleccione PeopleToolsProcess SchedulerProcesses para acceder a la página

Process Process Definition.

TM

PDF Editor

Page 61: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

61 |

Al utilizar PeopleSoft Process Scheduler para empezar programas batch en el

Application Engine, debe crear una definición de proceso para cada programa. Los

programas Running Application Engine son muy parecidos a la ejecución de cualquier

programa de COBOL o SQR que usted invoca normalmente en PeopleSoft Process

Scheduler.

Utilice PeopleSoft Application Engine como la definición de un tipo de proceso genérico.

Cada programa de Application Engine que invoque utilizando PeopleSoft Process

Scheduler requiere una única definición del proceso derivada de la definición del tipo de

proceso genérico.

Listando los parámetros del proceso de definición

Acceda a la página Processes Process Definition Options.

Utilice esta página para la lista de parámetros. Aquí está la lista completa de

parámetros:

TM

PDF Editor

Page 62: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

62 |

ct MICROSFT

cd %%DBNAME%%

co%%OPRID%%

cp %%OPRPSWD%%

r %%RUNCNTLID%%

i %%INSTANCE%%

ai %%PRCSNAME%

Empezando programas con la página Application Engine Process Request

Usted puede empezar un programa Application Engine mediante el uso de la página

Process Request. Utilizando esta página de solicitud permite especificar valores

adicionales y parámetros que los que aparecen dentro de las definiciones de proceso de

PeopleSoft Process Scheduler.

La mayoría de los usuarios inician los programas de Application Engine desde una

página de solicitud de una aplicación específica utilizando el PeopleSoft Process

Scheduler. Un experto en sistema, a veces, necesita crear procesos de solicitud

estándar que requieren programas múltiples para realizar procesos en paralelo o que

necesiten un conjunto específico, iniciar valores en un State Record. Este es un ejemplo

de donde podría utilizar la página de solicitudes de proceso del Application Engine.

Tablas utilizadas en la página Process Request.

El Process Request inserta valores dentro de las siguientes tablas.

AEREQUESTTBL.

Contiene todos los valores que aparecen en la página a excepción de los parámetros en

el grupo.

AEREQUESTPARM.

Incluye solo valores iníciales en el State Record especificados del grupo de parámetros,

si es necesario.

Usted necesita para utilizar la página Application Engine Request, invocar un

Application Engine e insertar filas en los registros requeridos del Application Engine solo

si necesita realizar cualquiera de las siguientes tareas.

Ingresar valores iníciales en el State Record asociado con un programa en

particular.

TM

PDF Editor

Page 63: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

63 |

Establecer una fecha para el programa Application Engine para realizar

procesamiento retroactivo.

No establecer una marca por default para el programa.

Configurar una imagen de tabla temporal para utilizarse si se presenta un

proceso de solicitud PeopleSoft EPM que realice un proceso paralelo.

Requisitos de Application Engine

Seleccione Peopletools Application Engine Request Application Engine para

acceder a la página Application Engine Request.

Atributo Descripción

Process Origin Muestra donde fue invocado el programa: desde

PeopleSoft Process Scheduler, desde línea de comando ,

etc.

Process Instance Muestra el proceso asignado a la ejecución del programa

anterior

Status Muestra el estado del último programa que se ejecuto, si

tiene éxito, esta pendiente, etc.

Process Frequency Especifica cuanto tiempo requiere que el proceso

permanecer activo o valido:

Always: Seleccione para correr el proceso como necesario.

Once: Seleccione si solamente requiere el proceso una

vez.

Don’t: Seleccione para desactivar el proceso, para que

nadie lo invoque y potencialmente corrompa los datos

TM

PDF Editor

Page 64: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

64 |

Atributo Descripción

As Of Date Si requiere procesos retroactivos, especifique la fecha

apropiada

Bind Variable Name Introduzca el campo apropiado o la variable obligada para

el cual se esta ingresando un valor

Value Introduzca el valor inicial que desea establecer para el

campo especificado

Utilizando el PeopleCode para invocar programas del Application Engine

Para llamar un programa particular del Application Engine de una página utilizando

PeopleCode, utilice la función CallAppEngine en SavePreChange o SavePostChange

PeopleCode.

Sintaxis:

CallAppEngine(applid [, Statereclist ] );

Se utiliza CallAppEngine si el programa que esta llamado es un proceso rápido. Debido

a que el proceso es sincrónico, un usuario debe esperar por cualquier proceso invocado

por CallAppEngine hasta que se complete, antes de hacer cualquier otra cosa. Si el

programa llamado causa una demora injustificada, entonces utilice otra alternativa,

como la funcion ScheduleProcess de PeopleCode

Se utiliza CallAppEngine cuando tiene un negocio complejo e intenso en el que la

mayoría de los procesos corren en batch y en línea, o el proceso requiere que se

utilicen tablas temporales. Si este no es el caso, es mejor escribir el programa en

PeopleCode. Si tiene lógica el PeopleCode para la ejecución en línea, y desea volver a

utilizarlo en un programa batch, puede ser forzado a procesarlo fila por fila. Diseñe

primero la lógica del batch, y entonces decida si tener una versión en línea separada o

solo rehusar el código batch utilizando CallAppEngine.

No utilice un CallAppEngine dentro de un paso de PeopleCode del Application Engine.

Si usted necesita llamar un programa Application Engine de otro programa Application

Engine, debe de utilizar la acción Call Section.

No utilice CallAppEgine para controlar la operación commit. Los programas llamados

con CallAppEngine son incrustados dentro de una mayor unidad de trabajo definida por

la página de activación, tal como guardar una pagina.

TM

PDF Editor

Page 65: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

65 |

Utilizando la línea de comandos para invocar programas Application

Engine

Usted podría llamar programas de Application Engine a través de la línea de comandos

en las siguientes situaciones:

Reiniciando

Cuando un programa truena, un administrador de sistemas podrá reiniciar el

programa utilizando la línea de comandos. Si necesita, usted puede localizar

todos los programas específicos y la información de los procesos del

Process Monitor en el cuadro de dialogo del Process Request Detail.

Desarrollo o prueba

Muchos desarrolladores incluyen la línea de comandos en archivos batch

para lanzar los programas que están desarrollando. De esta forma pueden

fácilmente ejecutar los archivos batch como necesiten. Esto también permite

la separación del desarrollo de programas de aplicación de sus páginas

asociadas.

Depuración

Para depurar un programa que se ejecuta en el servidor usted puede entrar

al servidor y llamar al programa en la línea de comandos.

Para empezar un programa Application Engine en la línea de comandos usted debe

especificar el ejecutable Application Engine (PSAE.EXE) seguido por los parámetros

requeridos,

Ejemplo:

psae -CT dbtype -CS server -CD database_name -CO oprid -CP oprpswd?

-R run_control_id -AI program_id -I process_instance -DEBUG (Y|N)?

-DR (Y|N) -TRACE tracevalue -DBFLAGS flagsvalue -TOOLSTRACESQL value?

-TOOLSTRACEPC value -OT outtype -OF outformat -FP filepath

O si las opciones línea de comandos son almacenadas en el archivo de texto puede

ingresar lo siguiente:

Ejemplo:

psae optfilename

TM

PDF Editor

Page 66: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

66 |

Opciones de la línea de comando

Atributo Descripción

-CT Especifica el tipo de base de datos al cual esta conectado

(ORACLE, MICROSFT, SYBASE, INFORMIX, DB2UNIX, y

DB2ODBC.)

-CS Requerido para Sybase e Informix. Para las plataformas

que requieran un nombre del servidor como parte de sing-

on, ingrese el nombre correcto. Esto afecta a Sybase,

Informix, y Microsoft SQL Server.

Sin embargo para Microsoft SQL Server, esta opción es

valida pero no requerida.

-CD Introduzca el nombre de la base de datos para la cual el

programa se conectara.

-CO Introduzca el ID del usuario que esta ejecutando el

programa.

-CP Introduzca el password asociado con el ID especifico del

usuario.

-R Especifique el run control ID para este programa

-AI Especifique el programa de Application Engine para

ejecutar

-I Requerido para reiniciar. Introduzca el proceso para

ejecutar el programa. El default es 0, lo que significa que

PeopleSoft Application Engine utilice el siguiente proceso

disponible

-DEBUG Este parámetro controla las utilidades de depurador.

Introduzca Y para indicar que usted quiere el programa a

ejecutar este en modo de depuración, o introduzca N para

indicar lo contrario.

-DR Este parámetro controla la capacidad de reinicio.

Introduzca Y para desactivar el reinicio, o introduzca N para

activar el reinicio.

-TRACE Para permitir el rastreo desde la línea de comando,

introduzca este parámetro y un valor específico de la señal.

TM

PDF Editor

Page 67: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

67 |

Atributo Descripción

-DBFLAGS Para deshabilitar %UpdateStats meta-SQL construct,

ingrese 1.

-TOOLSTRACESQL Habilita la señal de SQL.

-TOOLSTRACEPC Habilita la señal de PeopleCode.

-OT (Opcional) iniciar el PeopleCode meta-variable

%OutDestType (numerico).

Ejemplo:

&ProcessRqst.OutDestType =

%OutDestType ;

-OF (Opcional) Iniciar PeopleCode meta-variable

%OutDestFormat (numérico).

Ejemplo:

Query.RunToFile(Record

QryPromptRecord, %OutDestFormat);

-FP (Opcional) Initialize the PeopleCode meta-variable

%FilePath (cadena de caracter).

Ejemplo:

If All(%FilePath) Then

&FILENAME = %FilePath | &FILENAME;

&MYFILE = GetFile(&FILENAME, "E",

%FilePath_Absolute);

Else

&MYFILE = GetFile(&FILENAME, "E",

%FilePath_Relative);

End-If;

optfilename

Si envía un archivo para PeopleSoft Application Engine

como el primer parámetro en la línea de comandos,

Application Engine lee el contenido del archivo e interpreta

TM

PDF Editor

Page 68: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

68 |

Atributo Descripción

el contenido como si fueran parámetros ingresados por la

línea de comandos .Esta opción es destinada

principalmente para ambiente de servidor Microsoft

Windows NT o UNIX Process Scheduler

Depurando los programas de Application Engine

Activando el depurador de PeopleSoft Application Engine

Para ejecutar un programa en modo de depuración:

1. Configurar la opción de depuración.

Usted puede configurar la opción de depuración en las siguientes locaciones:

Abra PeopleSoft Configuration Manager y seleccione la pestaña Process

Scheduler.

Si usted esta utilizando la opción de línea de comando para invocar a su

programa de Application Engine, entonces puede incluir el parámetro –

DEBUG Y en la línea de comendos y envíelo a PSAE.EXE.

Si usted tiene código PeopleCode en su programa de Application Engine,

habilite el depurador de PeopleCode.

2. Ejecute el programa del Application Engine para depurarlo.

3. En el prompt Application Engine Debugger ingrese un comando para habilitar

la opción de depuración.

Cada comando esta representado por una única letra como X, L o M. Ingrese la

letra que corresponde a la opción que usted quiere ejecutar. Para ver la lista de

opciones disponibles de depuración, ingrese el símbolo ? en el prompt.

Para habilitar el depurador de PeopleCode para Application Engine.

1. Acceda a las PeopleTools con el mismo usuario que utiliza cuando llama a los

programas del Application Engine

2. Abra PeopleSoft Application Designer

3. Seleccione Debug PeopleCode Debugger Mode.

4. Seleccione Debug Break at Start

Esto causa que los programas de Application Engine truenen antes de ejecutar

cualquier PeopleCode dentro del programa.

TM

PDF Editor

Page 69: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

69 |

Definiendo las opciones de depuración

Cada opción de depuración es representada por una letra sencilla que se especifica en

el prompt. Para ejecutar la opción que usted selecciono, presione ENTER.

Tips de depuración

En algunos casos, como cuando se establecen interrupciones los submenús

ofrecen más opciones.

Después de estar familiarizado con los comandos, puede introducir múltiples

temas en la línea de comando para combinar comandos y pasar por alto los

submenús.

Los comandos de letras no distinguen entre mayúsculas o minúsculas.

Opciones de depuración

Opción Descripción

Quit Ingrese Q. Esta opción realiza un rollback y termina la

depuración.

Exit Esta opción es valida solo después de que un paso se ha

completado y otro aún no ha empezado.

Commit Ingrese C. para dar commit a la actual unidad de trabajo en

su programa. Es valida solo después de que un paso se ha

completado y antes de que comience otro.

Break Ingrese B, para establece un punto de interrupción.

Las opciones del Breakpoint incluyen:

Set: Escriba S para establecer un punto de interrupción

para la localizacion.

Unset: Introduzca U para eliminar los puntos de

interrupción establecidos anteriormente

List: Ingrese L para enlistar los puntos de interrupción.

Look Ingrese L. Puede especificar el nombre del campo en el

State Record en el prompt Field Name.

Modify Ingrese M. Permite modificar el valor del State Record para

propósitos de depuración.

TM

PDF Editor

Page 70: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

70 |

Opción Descripción

Watch Ingrese W. Cuando especifique un campo como watch, el

programa se detiene cuando el valor del campo cambia.

Step Over Ingrese S. Ejecuta el paso actual hasta terminarlo y se

detiene en el siguiente paso en la sección actual

Step Into Ingrese I. Use esta opción para observar un paso o una

sección en un nivel mas granular.

Step Out of Ingrese O. Después de que se ha aumentado un paso o

sección, utilice las opciones del Step Out of para ejecutar el

resto del paso o la sección y se detiene.

Go Ingrese G. Después de que el programa se detuvo en una

locación específica y ha examinado su estado actual, usted

puede utilizar el comando GO para resumir la ejecución del

programa.

Run to commit Ingrese R. Resume la ejecución de su programa después

de que se ha detenido

Restaurando los programas Application Engine

Una característica clave de PeopleSoft Application Engine es la construcción de punto

de restauración y capacidad para restaurarse. Si hay una terminación abrupta o un paso

fallido en el programa, puede restaurar desde el último punto de restauración exitosa, o

un paso antes del paso que fallo. Restaure el programa desde la página de solicitud de

procesos.

Los programas Application Engine guardan en la base de datos (ejecutando un commit)

solo cuando un programa termina exitosamente. Puede establecer commits donde

considere necesario.

En el nivel de sección, puede poner un commit después de cada paso en la sección. En

el nivel de paso, puede exigir o aplazar los commits en cada paso, o puede aumentarlos

en una iteración con las acciones de ciclos dentro de un paso, como en acciones Do

Select, o Do While.

El nivel de commit que seleccione juega un papel importante cuando se restaura el

programa. Cada vez que PeopleSoft Application Engine utiliza un commit permite

restaurar el programa, en el registro actual.

Utilizar la característica de restaurar, permite que ejecute mas a menudo commits en un

programa. Restaurar reduce todo el impacto en otros usuarios y procesos mientras el

TM

PDF Editor

Page 71: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

71 |

programa de respaldo se ejecuta, debido a que reduce la cantidad de registros

bloqueados por el programa, permitiendo que múltiples instancias del programa corran,

lo que puede ser útil en programas de altos volúmenes de información.

Con la restauración, si ocurre una falla en cualquier punto del proceso, el usuario puede

restaurar el programa y esperar que el programa se comporte de las siguientes

maneras:

Ignorar los pasos que estén completados hasta el último commit.

Empezar el procesamiento hasta el siguiente paso después del último

commit exitoso.

Cuando un programa se ejecuta, cada vez que PeopleSoft Application Engine establece

un commit esto también guarda toda la información solicitada de un programa

restaurado en el registro AERUNCONTROL.

Determinando cuando utilizar la restauración

Usualmente, desea desarrollar programas para tomar ventaja de las capacidades de

restauración del PeopleSoft Application Engine. Los programas que son buenos

candidatos para hacer uso de la restauración son los que tiene que hacer muchas

tareas, como tablas de unión y datos de carga en tablas de trabajo temporales. Como

regla general, la restauración es esencial para programas que principalmente hacen

procesos Set-based.

De cualquier manera, si su programa tiene una de las siguientes características, puede

habilitar la restauración:

Procesar línea por línea

Las cabeceras involucradas con PeopleSoft Application Engine ejecutan un

checkpoint durante la ejecución de un programa que no es deseado.

El programa hace commit después de N iteraciones en un ciclo, y la

sentencia Select que maneja el ciclo esta compuesta de tal manera que

termina y se inicia de nuevo, ignora procesos corrieron previamente.

Utilizando la restauración a nivel de programa

El Application Engine automáticamente realiza todas las actualizaciones del State

Record. Cuando un programa Application Engine comienza, este inserta una fila en el

State Record de una asignada instancia de proceso. Entonces el sistema actualiza el

State Record siempre que el programa realice un commit para cambiar valores dentro

de la base de datos.

TM

PDF Editor

Page 72: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

72 |

Utilizando la restauración en el nivel de sección

Si una sección solo prepara datos, los selecciona, llena tablas temporales o actualiza

las tablas temporales entonces configure el tipo sección para Prepare Only. Pero, si la

sección actualiza permanentemente las tablas de aplicaciones en la base de datos,

configure la opción Critical Updates.

Durante el tiempo de ejecución, cuando el sistema llega a la primera sección define el

Critical Updates, y esta define el valor AE_CRITICAL_PHASE en el registro

AERUNCONTROL como Y. una vez definido, el valor de AE_CRITICAL_PHASE sigue

siendo Y hasta que el programa se complete exitosamente. Cuando el programa se

completa, le fila correspondiente en AERUNCONTROL es eliminada.

Utilizando la restauración en el nivel de pasos

En las sentencias Where del programa de una seccion Do Select, deben incluir

condiciones que reduzcan la respuesta que regresa desde la sentencia Select.

Ejemplo:

SELECT RECNAME, FIELDNAME

FROM PS_AE_RECFIELD

ORDER BY RECNAME, FIELD NAME

Si ejecuta este Select como parte de una acción DO Select con Restartable, como tipo

Do Select, el sistema puede procesar algunas filas dos veces antes de iniciar. Por esto,

si específica Reselect, el programa puede ejecutar de manera infinita el ciclo, por que

no hay nada para salir del ciclo. Sin embargo, si modifica la sentencia Select para que

se parezca más a la siguiente, puede hacerlo Restartable.

Ejemplo:

SELECT RECNAME, FIELDNAME

FROM PS_AE_RECFIELD

WHERE RECNAME > %BIND (RECNAME)

OR (RECNAME = %BINF (RECNAME) AND FIELDNAME > %BIND (FIELD NAME))

ORDER BY RECNAME, FIELDNAME

Una acción do select que ha sido codificada para Restartable puede ser convertida a

Select/Fetch, pero no de manera inversa.

TM

PDF Editor

Page 73: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

73 |

Los ejemplos previos muestran el uso de una llave columna para reducir el grupo de

respuestas. Esto puede ser conveniente si el record tiene solo uno o dos campos llaves.

Sin embargo, si el record tiene dos o tres campos llaves, su SQL se convertirá en algo

complejo.

Controlando las terminaciones anormales

Un control de terminaciones anormales (a veces llamado un abend) significa que hay

salidas del Application Engine por medio de una condición de error calculado. Algunos

ejemplos de abends (termino anormal) controlados son:

Errores SQL mientras se define un Abourt en On Error.

Un valor PeopleCode regresa, cuando en On Return se define un Abourt.

Una sentencia SQL que no afecta a las filas, cuando se define un Abort en On

No Rows.

En estos casos el campo Run Status del Process Monitor leerá “Error”.

Una terminación no controlada ocurre cuando se viola la memoria o un usuario termina

un proceso. En este caso, el campo Run Status del Process Monitor muestra

“Processing”.

Restaurando los programas del Application Engine

Hay dos formas de restaurar un programa del Application Engine

Desde la línea de comandos.

Desde la página Process Request.

Restaurando desde la línea de comando

Normalmente solo los desarrolladores utilizan la línea de comando para restaurar

programas del Application Engine. Los usuarios en la mayoría de los casos no suelen

ser expertos en este método.

Se puede utilizar la opción de línea de comando para restaurar un programa que se

ejecuta en el servidor. El Application Engine referencia solo las instancias de los

procesos en los procesos no exitosos.

Para restaurar la aplicación del comando de línea

1. Coleccione los valores de la línea de comandos asociados con el programa

fallido.

Este valor incluye los tipos de base de datos, nombre de la base de datos,

usuarios, password, run control ID, nombres del programas y las insyancias de

TM

PDF Editor

Page 74: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

74 |

proceso. Usted puede encontrar estas variables en el cuadro de diálogo del

Process Detalis, el correspondiente State Record o en la tabla del run control del

Application Engine. Donde los valores dependen de cómo usted llama a los

programas.

2. ingrese la siguiente línea de comandos sustituyendo los valores del paso

anterior.

Ejemplo:

PSAE.EXE −CT DB_TYPE -CD DB_NAME -CO OPRID -CP PASSWORD -R

RUN_CONTROL -AI PROGRAM

NAME –I PROCESS_INSTANCE

Restaurando desde la página Process Request

Se pueden restaurar programas desde la página de Process Request solo para los

programas que se ejecutan en el servidor.

Para restaurar un programa del Application Engine desde una pagina de Process

Request:

1. Abra PeopleSoft Process Scheduler, seleccione Peopletools Process

Scheduler, System Process Request.

2. Localice el número del run control ID del programa que se restablecerá.

3. Para mostrar los detalles de los procesos fallidos de clic en el hipervínculo

Process Detail

4. En la página del Process Request Details, seleccione Restart Request y de clic

en OK.

Empezando los programas de Application Engine desde el principio

Cuando un programa del Application Engine termina normalmente usted puede tiene

que decidir si quiere restaurar el proceso o solo empezar desde el principio. Como su

programa del Application Engine ejecuto al menos una parte puede dejar sus datos en

un lugar desconocido.

Para empezar el programa desde el principio usted necesita utilizar SQL para eliminar

los registros que correspondan al programa que fallo de la tabla del Run Control del

Application Engine y su State Record.

Para restaurar un programa Application Engine desde el principio:

TM

PDF Editor

Page 75: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

75 |

1. Abra su editor SQL nativo y manualmente borre los records en la tabla

PS_AERUNCONTROL que corresponda al programa que quiera empezar desde

el principio. Utilice el siguiente SQL para lograr este paso.

Ejemplo:

DELETE FROM PS_AERUNCONTROL

WHERE OPRID=OPRID

AND RUN_CNTL_ID=Run_Control_ID

2. Elimine de su State Record los registros que correspondan al programa fallido.

Utilice el siguiente SQL para lograr este paso.

Ejemplo:

DELETE FROM PS_MY_AET

WHERE PROCESS_INSTANCE=Process_Instance

Habilitando y deshabilitando la restauración

Para deshabilitar la restauración utilice cualquiera de estos métodos:

Seleccione el Disable Restart en el cuadro de dialogo de Peoplesoft Application

Engine. Para acceder a las propiedades del programa, seleccione File

Definition Properties, y seleccione la petaña Advanced.

Seleccione el Disable Restart en el perfil Configuration Manager. Para acceder al

perfil, se abrirá el Configuration Manager, seleccione la pestaña Propfile, y de

clic en Edit. Después seleccione la pestaña Process Scheduler.

Incluya la opción –DR Y en la línea de comando de PSAE.EXE.

TM

PDF Editor

Page 76: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

76 |

PeopleSoft Component Interface

Un Component Interface es una definición de PeopleSoft PeopleTools que se crea en

Application Designer. Este permite un acceso síncrono a un componente desde otra

aplicación.

Iniciando con PeopleSoft Component Interface

Un Component Interface es un conjunto de interfaces de aplicación de programación

(APIs) que se pueden utilizar para acceder y modificar información de base de datos

mediante programación. PeopleSoft Component Interface expone un componente

PeopleSoft (un conjunto de páginas agrupadas para propósitos de negocios) para un

acceso síncrono desde otra aplicación (PeopleCode, Java, C/C++ o Component Object

Model [COM]). Un programa PeopleCode o un programa externo (Java, C/C++ o COM)

pueden ver, entrar, manejar y acceder a datos del componente de PeopleSoft, la lógica

y la funcionalidad de negocio. Adicionalmente, se puede utilizar el Component Interface

Tester para revisar la validación del Component Interface y el Excel al Component

Interface Utility para manejar los datos.

Los Component Interface son creados en Application Designer, así que debe

asegurarse de estar familiarizado con las PeopleTools.

Introducción al Component Interface

En este capítulo se expondrá:

Arquitectura del Component Interface.

Conceptos del Component Interface, como nombres y propiedades.

Definición del Component Interface en Application Designer.

Comprendiendo el Component Interface

Un Component Interface permite la exposición de un componente PeopleSoft (un

conjunto de páginas agrupadas para un propósito de negocio) para un acceso síncrono

desde otra aplicación (como PeopleCode, Java, C/C++, COM, o XML). Los Component

Interface pueden ser utilizados para integrar una aplicación con otra o con sistemas

externos. Los Component Interface ejecutan la lógica de negocio construida en el

componente y como resultado, proporcionan un nivel más alto de validación de datos

que un simple SQL.

Se pueden crear múltiples Component Interface para el mismo componente. Cuando se

crea un Component Interface en Application Designer. Los campos del registro en el

TM

PDF Editor

Ian Isaac
Resaltado
Ian Isaac
Resaltado
Ian Isaac
Resaltado
Page 77: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

77 |

componente son mapeados a las llaves y propiedades del Component Interface. Los

métodos son utilizados para encontrar, crear, modificar y borrar datos.

Arquitectura del Component Interface

La arquitectura del Component Interface comprende tres elementos fundamentales-

componentes, Component Interface y el Component Interface API.

Cada Component Interface tiene los siguientes atributos principales:

Nombre

Llaves (obtener, crear y encontrar llaves)

Propiedades y Colecciones (fields y records)

Métodos

Atributos del Component Interface

Nombre

Cada Component Interface requiere un nombre único que es especificado cuando el

Component Interface es creado. Los programas llamados utilizan el nombre del

Component Interface para acceder a las propiedades y métodos.

Llaves

Las llaves son propiedades especiales que contienen valores que recuperan una

instancia (obtener llaves) o una lista de instancias (encontrar llaves) del Component

Interface. Cuando se crea un nuevo Component Interface, obtener (get) y encontrar

(find) llaves son creadas basadas en la búsqueda de la definición del registro para el

componente. Sin embargo, se pueden agregar, eliminar o cambiar las llaves en

Application Designer.

Propiedades

Las propiedades proporcionan acceso tanto a los datos del componente como a la

configuración del Component Interface. Los Component Interface incluyen dos tipos de

propiedades: estándar y definidas por el usuario (user-defined).

Propiedades Estándar son asignadas automáticamente cuando un Component

Interface es creado.

Las propiedades estándar pueden estar definidas como verdaderas o falsas.

Estas propiedades no son mostradas en Application Designer.

TM

PDF Editor

Page 78: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

78 |

Propiedades Definidas por el Usuario mapean los campos del registro en el

Component Interface y son mostrados en Application Designer.

Una propiedad puede corresponder a un campo o a un scroll. Se tiene control

sobre las propiedades definidas por el usuario las cuales son incluidas en el

Component Interface.

Colecciones

Una colección del Component Interface es un tipo específico de propiedad que

corresponde a un scroll. Por default cada colección utiliza el nombre del registro

primario para el scroll subyacente.

Métodos

Un método es una función que realiza una tarea específica en un Component Interface

en un tiempo de ejecución. Existen dos tipos principales de métodos: estándar y

definidos por el usuario. Por ejemplo, los métodos se pueden utilizar para guardar o

crear una nueva orden de compra. El acceso al tiempo de ejecución para cada método

es determinado por la seguridad que se tenga para ese método específico.

Métodos Estándar son aquellos que son disponibles para todos los Component

Interface.

Los métodos de Find, Get, Save y Cancel son generados automáticamente por el

Application Designer cuando un nuevo Component Interface es creado. En el

Component Interface, los métodos estándar son resaltados en gris.

Métodos definidos por el usuario son creados en Application Designer para

proporcionar funcionalidad añadida al Component Interface.

Estos métodos son funciones que son hechas accesibles a través del Component

Interface. Cada función mapea un método definido por el usuario. En el Component

Interface estos métodos son resaltados en azul.

Definiciones y vistas del Component Interface

Se puede crear, modificar y revisar la definición del Component Interface utilizando

Application Designer. Cuando trabaja con una definición del Component Interface en

Application Designer, se puede observar que la vista del componente se encuentra del

lado izquierdo, y la vista del Component Interface se encuentra del lado derecho.

La siguiente pantalla muestra las vistas del componente y del Component Interface en

Application Designer.

TM

PDF Editor

Page 79: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

79 |

La vista del componente muestra los registros y scrolls utilizando un árbol de la

representación. Arrastre los campos y colecciones que desee exponer a la vista del

Component Interface.

La vista del Component Interface muestra las llaves, propiedades y métodos, utilizando

un árbol de representación. Cuando un Component Interface es abierto, las propiedades

son mostradas en el orden en el cual éstas aparecen en la vista del componente.

El árbol tanto en la vista del componente como en la del Component Interface tiene

diferentes íconos. Algunos íconos son utilizados tanto en la vista del componente y en la

del Component Interface con significados ligeramente diferentes. A continuación se

explica el significado de cada icono y columna en la vista del Component Interface.

Iconos del Component Interface

Ícono Descripción

Component Interface.

Grupo de llaves.

Propiedad que es un campo llave desde el registro.

Llave de búsqueda alterna.

Grupo de Propiedades o Métodos.

TM

PDF Editor

Page 80: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

80 |

Ícono Descripción

Colección.

Propiedad o método definido por el usuario.

Método Estándar.

Propiedad que indica que es un campo requerido para el

registro.

Elemento en un Component Interface que no está en

sincronía con el Componente.

Columnas del Component Interface

Nombre Descripción

Name Nombre de un elemento específico en un Component

Interface (como el nombre de una propiedad o un método).

El nombre por default para las propiedades de los campos

es el nombre del campo. El nombre por default para las

colecciones es el nombre primario del record.

Record Nombra el record en el cual un elemento específico es

basado. Si el nombre del record cambia el Component

Interface continua con registro apropiado

Field Nombre del campo al cual la propiedad del Component

Interface hace referencia. Como con el nombre del registro,

el campo también puede cambiar y el Component Interface

continúa con el campo apropiado.

Read Only Y en esta columna indica que una propiedad específica ha

sido marcada de sólo lectura.

Comment Identifica comentarios que existen en el cuadro de Edit

Property para las llaves, colecciones o propiedades.

Nota. En la vista del Component Interface, las propiedades aparecen en el mismo orden como aparecen en

el componente y no están ordenadas alfabéticamente

Desarrando un Component Interface

Este capítulo expondrá como:

TM

PDF Editor

Page 81: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

81 |

Crear un Component Interface.

Utilizar llaves, propiedades, colecciones y métodos del Component Interface.

Validar el Component Interface.

Configurar la seguridad del Component Interface.

Probar el Component Interface.

Comprender consideraciones de tiempo de ejecución.

Creando la definición del Component Interface

Como cada Component Interface se refiere a un componente, se debe conocer la

estructura del componente por el cual se está construyendo un Component Interface.

Se puede utilizar un componente existente o bien crear uno nuevo. Muchas partes del

Component Interface, tales como las llaves, son creadas en base a la configuración en

el componente de referencia.

Creando un nuevo Component Interface

1. Selecciona del menú de Application Designer FileNew.

2. Selecciona Component Interface.

3. Selecciona el componente en el cual este Component Interface estará

basado.

TM

PDF Editor

Page 82: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

82 |

Después de seleccionar el componente apropiado, aparece un mensaje en el

cual pregunta si se desea que los campos expuestos en el componente

seleccionado tengan las propiedades por default del Component Interface.

4. Haga clic en Yes para confirmar las definiciones de propiedades por default

o No si no se quiere ninguna propiedad creada inicialmente.

Si se elije tener las definiciones de propiedades automáticamente por default

por el sistema, todas las propiedades que aparecen en las páginas del

componente son añadidas al Component Interface. Incluso aunque el

sistema agrega las propiedades por default, quizás se necesita mover otras

propiedades a la vista del componente para que este funcione.

5. Guarde el Component Interface.

Asociando un Component Interface con un menú

1. Seleccione FileOpen desde Application Designer para abrir un Component

Interface existente.

2. Seleccione FileDefinition Properties desde el menú de Application

Designer.

3. Seleccione el nombre del menú apropiado para este Component Interface.

TM

PDF Editor

Page 83: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

83 |

Determinando cuales campos exponer

La primera vez que se arrastra un scroll del componente a la vista del Component

Interface, el sistema utiliza las siguientes reglas para determinar que propiedades

exponer:

Las llaves son expuestas solo en el nivel mas alto de la colección en la cual

éstas aparecen

Asegúrese de no borrar las propiedades dentro de la colección ya que esto

traería como resultado una colección vacía. Si existen colecciones vacías,

elimínelas; de lo contrario, aparecerán con X en la vista del Component

Interface.

No exponga campos que no son visibles en la vista del componente.

Utilizando llaves

La siguiente tabla muestra los tres tipos de llaves del Component Interface:

Tipo de llave Características de llave

Get keys Estas llaves automáticamente mapean la búsqueda de

encontrar llaves (field keys) en el componente. Se puede

cambiar Get keys solo si se modifican las llaves del

componente después de crear un Component Interface.

Find keys Estas mapean tanto los campo llave como los campos llave

de búsqueda alterna. Se puede eliminar cualquier Find

Keys basado en campos llave de búsqueda alterna que no

se quieran hacer disponibles para búsqueda.

Create keys Si el componente permite la acción Add, Create Keys son

generadas por el Component Interface automáticamente.

Cada búsqueda de campo llave produce un Get key y un Find key.

Cada búsqueda de campo llave también produce un Create key si el

componente permite el modo Add.

Cada campo llave de búsqueda alterna produce un Find key.

Agregando y borrando llaves

Para agregar una llave

TM

PDF Editor

Page 84: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

84 |

1. Expandir la colección de la llave de búsqueda (la primera colección) en la vista

del componente.

2. Arrastrar la llave a la vista del Component Interface.

Para borrar una llave

1. Seleccionar la llave en la vista del Component Interface.

2. Presionar DEL Key.

Propiedades de configuración

Esta sección expone como:

Crear propiedades definidas por el usuario

Borrar propiedades

Renombrar propiedades

Nombrar propiedades del Component Interface.

Propiedades estándar

Las propiedades estándar no aparecen en la vista del Component Interface en el

Application Designer. La siguiente tabla nombra y define las propiedades estándar del

Component Interface:

Nombre Descripción

CreateKeyInfoCollection Regresa una colección de elementos que describen las

llaves Create. Esta propiedad es sólo de lectura.

GetKeyInfoCollection Regresa una colección de elementos que describen las

llaves Get. Esta propiedad es de sólo lectura.

FindKeyInfoCollection Regresa una colección de elementos que describen las

llaves Find. Esta propiedad es de sólo lectura.

GetHistoryItems Controla si el componente se ejecuta en modo

Update/Display o modo Correction cuando el componente

es de fecha efectiva. Si GetHistory es definido como

verdadero, los datos pueden ser recuperados pero no

modificados.

El valor por default es Falso. Esta propiedad es de sólo

lectura.

TM

PDF Editor

Page 85: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

85 |

Nombre Descripción

EditHistoryItems Controla si el Component Interface se ejecuta en modo

Update/Display All , Update /Display o Correction cuando el

componente es de fecha efectiva. Si los elementos

EditHistory son definidos como verdaderos, entonces los

datos pueden ser modificados, los elementos EditHistory

trabajan en conjunto con los elementos GetHistory.

El valor por default es Falso. Esta propiedad es sólo de

lectura.

InteractiveMode Controla si los valores se aplican y las reglas de negocio se

ejecutan inmediatamente, o si los elementos están en

espera y las reglas de negocio se ejecutan después en un

paso individual.

El valor por default es falso. Esta propiedad es de solo

lectura.

StopOnFirstError Cuando esta propiedad es definida como verdadera, el

primer error generado por el Component Interface detiene

el programa.

El valor por default es falso. Esta propiedad es de solo

lectura

CompIntfcName Regresa el nombre de la clase de Component Interface

como es nombrado en el Application Designer. Esta

propiedad es de solo lectura.

ComponentName Regresa el nombre de la clase de Component Interface

como es nombrado en el Application Designer. Esta

propiedad es de solo lectura. (Actúa igual que

CompIntfcName)

Description Regresa la descripción de la clase de Component Interface

como esta definida en el Application Designer. Esta

propiedad es de solo lectura.

Market Regresa la configuración de mercado del componente

utilizado para construir el Component Interface. Esta

propiedad es de solo lectura.

GetDummyRows Cuando un nuevo scroll es insertado en una página, este

TM

PDF Editor

Page 86: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

86 | Q u a l s y s C o n s u l t i n g S . C

Nombre Descripción

scroll es mostrado aunque no tenga dato. Cualquier scroll

que este vacío tiene una fila dummy con solo la definición

por default. Si esta propiedad es verdadera y se muestra la

fila dummy, si es fals no se muestra la fila dummy. El valor

por default es verdadero y es de lectura y escritura.

PropertyInfoCollection Regresa una colección de elementos que describen una

propiedad específica. Esta propiedad es de solo lectura.

Los objetos CompIntfPropInfoCollection soportan las siguientes propiedades:

Nombre Descripción

Name Esta propiedad regresa el nombre del objeto como una

cadena si se ejecuta la propiedad. Esta propiedad es de

solo lectura.

RecordName Esta propiedad regresa el Record Name asociado con el

objeto, ejecutando la propiedad. Esta propiedad es de solo

lectura.

FieldName Esta propiedad regresa el Field Name asociado con el

objeto, ejecutando la propiedad. Esta propiedad es de solo

lectura.

LabelLong Esta propiedad regresa el valor del campo del registro

LongName como una cadena. Si hay un componente

anulado para este valor, este no será incluido. Esta

propiedad es de solo lectura.

LabelShort Esta propiedad regresa el valor del campo del registro

ShortName como una cadena. Si hay un componente

anulado para este valor, este no será incluido. Esta

propiedad es de solo lectura.

IsCollection Esta propiedad regresa verdadera si el objeto es una

colección de datos, ejecutando la propiedad, y falso en

caso contrario. Esta propiedad es de solo lectura.

Type Regresa el tipo del campo como un número del objeto.

Esta propiedad es de solo lectura.

OAType Regresa el tipo del campo como un número del objeto.

Esta propiedad es de solo lectura. (Igual que Type).

TM

PDF Editor

Page 87: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

87 |

Nombre Descripción

Format Regresa el formato del campo del objeto en un número,

ejecutando la propiedad. Esta propiedad es de solo lectura.

Key Regresa verdadera si el objeto, ejecutando la propiedad, es

una llave. Esta propiedad es de solo lectura.

Required Regresa verdadera si el objeto, ejecutando la propiedad, es

una propiedad requerida. Esta propiedad es de solo

lectura.

Xlat Regresa verdadera si el objeto, ejecutando la propiedad, es

asociado con una tabla XLAT. Esta propiedad es de solo

lectura.

Yesno Regresa verdadera si el objeto, ejecutando la propiedad, es

asociado con la tabla Yes/No. Esta propiedad es de solo

lectura.

Prompt Regresa verdadera si el objeto, ejecutando la propiedad, es

asociado con una tabla prompt. Esta propiedad es de solo

lectura.

Length Regresa la longitud del objeto, ejecutando la propiedad.

Esta propiedad es de solo lectura.

DecimalPosition Regresa la posición decimal del objeto, ejecutando la

propiedad. Esta propiedad es de solo lectura.

IsReadOnly Regresa verdadera si la propiedad es marcada como solo

lectura en la definición del Component Interface. Esta

propiedad es de solo lectura.

Altkey Regresa verdadera si el objeto, ejecutando la propiedad es

una llave alterna. Esta propiedad es de solo lectura.

Listboxitem Regresa verdadera si el objeto, ejecutando la propiedad es

asociado con una List Box. Esta propiedad es de solo

lectura.

Creando propiedades definidas por el usuario

Las propiedades son aquellas propiedades en el componente que están expuestas a

través del Component Interface. Las propiedades definidas por el usuario son derivadas

TM

PDF Editor

Page 88: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

88 |

del componente al cual el Component Interface esta asociado y debe ser añadido

manualmente.

Para crear una propiedad definida por el usuario, arrastre un registro, campo o scroll

desde la vista del componente a la vista del Component Interface. En la vista del

Component Interface, no importa donde los inserte, porque cuando el Component

Interface es abierto, el sistema convierte automáticamente el campo o registro en la

propiedad del Component Interface y lo coloca en el lugar adecuado dentro de la lista

de las propiedades. Cuando se arrastra una definición de la vista del componente a la

del Component Interface, todas las definiciones se colocan en el Component Interface

automáticamente. Cuando estas propiedades son agregadas al Component Interface,

se puede eliminar cada propiedad individualmente, si se desea.

Eliminación de propiedades

Para eliminar una propiedad:

1. Seleccione la propiedad que desee eliminar

2. Presione la tecla DEL o haga clic derecho y seleccione Delete.

Renombrar las propiedades definidas por el usuario

Los nombres de las propiedades son generados automáticamente en función a los

campos correspondientes del componente. Cambiar el nombre de una propiedad no

cambia el campo al que las propiedades hacen referencia.

Para renombrar una propiedad:

1. Haga doble clic en el nombre de la propiedad o clic derecho en el nombre de la

propiedad y seleccione Edit Name desde el menú emergente.

2. Introduzca el nuevo nombre de la propiedad.

3. Agregue comentarios que puedan ser útiles.

TM

PDF Editor

Page 89: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

89 |

4. Seleccione la casilla de Read-Only para hacer esta propiedad de sólo lectura.

Nota. Application Designer genera un error si detecta que un Component Interface tiene propiedades con el

mismo nombre cuando se crea, guarda o abre el Component Interface.

Creando las propiedades de referencia

Cada Component Interface es aislado e inconsciente de otros Component Interface en

el sistema. Para acceder y actualizar información desde otros Component Interface, las

referencias establecen relaciones entre los Component Interface.

Cree una propiedad de referencia en un Component Interface para acceder datos

expuestos en otro Component Interface.

Para acceder al cuadro de texto Create Reference haga clic derecho en la propiedad y

seleccione Create Reference.

El cuadro de texto Create Reference tiene los siguientes campos:

Nombre Descripción

Name Describe el nombre de la referencia que se está creando.

Related Component

Interface

Designa el Component Interface referenciado desde el

actual Component Interface.

TM

PDF Editor

Page 90: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

90 |

Nombre Descripción

Comments Introduce cualquier comentario para mantener la

referencia.

Related Key Mapping Mapea la propiedad desde el Component Interface a la

propiedad seleccionada de éste.

Valid Reference Path Apoya objetos que pueden ser seleccionados como valores

de propiedades de referencia definidas.

Creando las propiedades de sólo lectura

Se puede hacer cualquier propiedad de sólo lectura. En el tiempo de ejecución, el valor

de una propiedad de sólo lectura podrá ser leído pero no actualizado.

Para hacer una propiedad de sólo lectura:

1. Seleccione la propiedad

2. Seleccione EditToggle Read Only Access desde el menu de Application

Designer

Trabajando con colecciones

Una colección es una propiedad que apunta a un scroll en el componente. Las

colecciones se crean de la misma manera que se crean las propiedades (arrastre el

scroll desde la vista del componente a la vista del Component Interface). Considere los

siguientes puntos cuando cree colecciones:

Cuando arrastre un scroll a la vista del Component Interface, todos los scrolls

asociados vienen con éste.

Este es el mismo comportamiento que se esperaría cuando se crea una

propiedad. Las propiedades asociadas son siempre añadidas automáticamente

cuando se arrastra un campo desde la vista del componente la vista del

Component Interface. Después de que la propiedad o colección ha sido creada,

tú puedes borrar propiedades individuales asociadas o colecciones

manualmente si es necesario.

Cuando se arrastra un scroll a la vista del Component Interface, todos los

campos del registro contenidos en ese scroll vienen con él.

Los campos en ese nivel de scroll están expuestos como parte de la misma

colección.

TM

PDF Editor

Page 91: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

91 |

Cuando se arrastra un scroll hijo a la vista del Component Interface, las

colecciones padres son creadas automáticamente.

Trabajando con métodos

Esta sección explicará como:

Habilitar y Deshabilitar métodos estándar.

Crear métodos definidos por el usuario.

Trabajando con funciones y métodos de sesión.

Las funciones y métodos de sesión conectan a una sesión en un servidor de aplicación.

Esta conexión debe ser realizada antes de poder utilizar los métodos del Component

Interface.

Funciones de sesión del Component Interface.

Nombre Descripción

CreateSession Regresa un objeto de sesión.

Métodos de sesión del Component Interface

Nombre Descripción

Connect Lo conecta al servidor de la aplicación.

getCompIntfc Regresa una referencia a un Component Interface.

Métodos estándar

Un método es una definición que realiza una función específica en un Component

Interface al momento de ejecución. Cada método estándar es añadido por default

cuando el Component Interface es creado y esta disponible en PeopleCode u otros

lenguajes de programación. Como las propiedades, los métodos son guardados como

parte de un Component Interface. Existen dos tipos de métodos: los métodos estándar y

los definidos por el usuario.

Nombre Descripción

Cancel Regresa al Component Interface actual, cancelando los

cambios hechos desde la última vez que fue guardado.

Regresa verdadero si fue exitoso, y falso en caso contrario.

Create Crea una nueva instancia de un Component Interface.

TM

PDF Editor

Page 92: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

92 |

Nombre Descripción

Regresa verdadero si fue exitoso y falso en caso contrario.

Find Realiza una búsqueda de llave parcial de una instancia

particular de un Component Interface, utilizando las llaves

de búsqueda del nivel 0.

Get Recupera una instancia particular de un Component

Interface. Regresa verdadero si fue exitoso y falso en caso

contrario.

Save Guarda una instancia de un Component Interface. Regresa

verdadero si fue exitoso y falso en caso contrario.

GetPropertyByName Regresa el valor de una propiedad que es especificada por

el nombre. Esta función es utilizada normalmente solo en

aplicaciones que no pueden obtener el nombre del

Component Interface.

SetPropertyByName Define el valor de una propiedad que especificada por el

nombre. Esta función es utilizada normalmente solo en

aplicaciones que no pueden definir los nombres de las

propiedades del Component Interface, hasta el tiempo de

ejecución.

GetPropertyInfoByName Regresa información específica, como longitud, sobre la

definición de una propiedad que es especificada por el

nombre. Esta función es utilizada normalmente solo en

aplicaciones que no pueden obtener los nombres de las

propiedades del Component Interface, hasta el tiempo de

ejecución.

Por default cada Component Interface es creado con 4 métodos estándar (Cancel, Find,

Get y Save).

TM

PDF Editor

Page 93: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

93 |

Habilitar y deshabilitar métodos estándar

Para habilitar o deshabilitar métodos Standard:

1. Seleccione FileDefinition Properties desde el menú de Application Designer.

2. Seleccione la pestaña de Standard Methods

Creando métodos definidos por el usuario

Esta sección expone como crear métodos definidos por el usuario.

TM

PDF Editor

Page 94: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

94 |

Para crear un método definido por el usuario:

1. Haga clic derecho en cualquier parte de la vista del Component Interface.

2. Seleccione View PeopleCode desde el menú emergente.

Aparece el editor del PeopleCode. Si está utilizando un nuevo Component

Interface, el PeopleCode no aparecerá en el editor porque los métodos definidos

por el usuario no han sido creados.

3. Escriba las funciones requeridas del PeopleCode.

Las funciones del PeopleCode que usted escribe son almacenadas en un

programa PeopleCode que es adjunto al Component Interface y asociado con el

evento Methods.

Nota. Un nuevo método definido por el usuario no aparece en la lista de métodos hasta que guarde el

Component Interface. Haga doble clic en el icono de cualquier método definido por el usuario para regresar

a éste programa PeopleCode.

4. Defina los permisos para los métodos que creó.

Se deben definir permisos para cada método definido por el usuario. Si se

definen los permisos a Full Access, al ejecutarse esa función esta expuesta a

sistemas externos como un método en el objeto del Component Interface.

Validación de un Component Interface

La validación asegura que la estructura del Component Interface aún sea válida. La

estructura de un Component Interface puede convertirse en inválida debido a los

cambios estructurales del componente y a sus modificaciones. Por ejemplo, puede

suceder siempre y cuando un componente elimina o agrega un registro o un campo.

Esto puede pasar si las llaves en el componente son añadidas o eliminadas.

Nota. EL proceso de validación sólo determina si el componente de un Component Interface ha cambiado,

no valida el PeopleCode que es asociado con el Component Interface. Para validar el PeopleCode, abra el

componente y seleccione ToolsValidate del menú del Application Designer.

Para corregir un componente inválido, se tienen que borrar las propiedades por las

cuales no hay campos o registros. Si la estructura del componente de origen ha

cambiado, tendrá que borrar las propiedades viejas y agregar las nuevas propiedades

en sus lugares adecuados. También quizás necesite renombrar la propiedad o la

colección.

Para validar un Component Interface:

1. Abra el Component Interface en Application Designer

TM

PDF Editor

Page 95: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

95 |

La validación ocurre automáticamente siempre que se abra un Component

Interface en Application Designer.

2. Seleccione ToolsValidate from Consistency desde el menú de Application

Designer.

Configurando las opciones de seguridad

Después de crear un Component Interface, se debe configurar la seguridad para éste.

La seguridad para el Component Interface es proporcionada a través de las páginas de

PeopleSoft Internet Architecture. Los permisos del Component Interface se establecen

en la lista de permisos de la seguridad de PeopleSoft.

Para establecer la seguridad del Component Interface

1. Acceder a PeopleSoft Pure Internet Arquitecture a través del navegador y

seleccionar PeopleToolsSecurityPermissions & RolesPermission Lists.

2. Seleccionar la lista de permisos para el cual se desee establecer la seguridad

3. Acceder a la página de Component Interface.

4. Seleccionar el Component Interface para el cual se desee establecer seguridad.

Si desea agregar otro Component Interface a la lista, haga clic en el botón Add.

5. haga clic en Edit.

6. Establece el permiso de acceso para cada método.

Seleccione Full Access o No Access. Debe conceder Full Access a por lo menos

un método para hacer el componente disponible para pruebas y otros usos en

línea.

7. Haga clic en OK cuando haga hecho todo lo anterior.

TM

PDF Editor

Page 96: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

96 |

8. Guarde la página.

Probando el Component Interface

Después de establecer la seguridad para el Component Interface, se procede a probar

los contenidos y el comportamiento utilizando el Component Interface de pruebas. Se

debe probar el Component Interface antes de utilizarlo en el sistema externo.

Esta herramienta ayuda a descubrir problemas en el componente o en el Component

Interface. Cuando se está probando un Component Interface datos reales de la base de

datos son utilizados. Por tanto, si se guarda la información que se cambió llamando el

método de Save, la información es cambiada en la base de datos.

Búsqueda de un Component Interface

Para probar el Component Interface, primero se realiza la búsqueda del Component

Interface a probar, y después se prueba.

Acceder al Component Interface Tester

Buscar el Component Interface para probarlo:

1. Abrir el Component Interface en Application Designer.

2. Seleccionar ToolsTest Component Interface desde el menú de Application

Designer.

El Component Interface Tester muestra en pantalla las llaves (en la columna del

lado izquierdo) para obtener, crear o encontrar una instancia del Component

TM

PDF Editor

Page 97: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

97 |

Interface. La columna del lado derecho proporciona un espacio para introducir

los valores de las llaves a probar.

3. Introducir los valores de las llaves.

Los datos que son utilizados para la prueba corresponden a los valores de las llaves

que se introducirán aquí.

Nombre Descripción

Interactive Mode En el modo interactivo cualquier acción requerida ocurre

inmediatamente. Cada propiedad siendo configurada causa

un envío inmediato al servidor de aplicación. Esto difiere un

modo no interactivo en el cual las acciones a menudo son

ocultas y enviadas más tarde en batches. Por ejemplo, en

el modo no interactivo si se configura una propiedad, ésta

no es validada hasta realizar el momento de guardar. Sin

embargo, en el modo interactivo la propiedad es validada

inmediatamente.

En el modo no interactivo, los errores y propiedades no son

actualizados hasta que el método es ejecutado.

Get History Items Esta opción recupera datos, aplica en los campos de fecha

efectiva y es equivalente a ejecutar el modo Update/Display

o Update/Display All

Edit History Items Habilita la opción de borrar y guardar datos. Aplica para

campos de fecha efectiva y es equivalente a ejecutar en el

modo Update/Display o Correction

Get Dummy Rows Esta opción es seleccionada por default. El procesador del

componente proporciona líneas dummy para permitir la

entrada de datos rápida cuando al nivel al que se

accediendo no tiene ningún dato.

Get Existing Es equivalente a abrir un registro en modo Update/Display

o Correction. Este recupera una instancia de la base de

datos.

Create New Es equivalente a crear una nueva línea en el modo Add.

Obtención de registros existentes utilizando llaves parciales

Si se quiere recuperar una llave parcial, haga clic en el botón Find. El cuadro de diálogo

Find Results aparece:

TM

PDF Editor

Page 98: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

98 |

Se puede elegir la instancia específica seleccionando el botón Get Selected. Si no

introduce una llave parcial antes de dar clic en Find, todos los valores de las llaves en la

base de datos son regresados. Esto es lo mismo que llamar el método Find a través del

Component Interface API; continuando por seleccionar un valor del Find Results,

configurando el Get Key y llamando el método Get. Después de hacer clic en el botón

Get Selected, el cuadro de diálogo del Component Interface Tester aparece.

Prueba del Component Interface

Prueba de las propiedades de Component Interface

Desde el cuadro de diálogo del Component Interface, cambie el valor de una propiedad,

haga doble clic en un valor e introduzca un nuevo valor. Esta validación incluye los

eventos FieldChange y Field Edit de PeopleCode. La validación debe ser hecha cuando

el método Save es llamado (SaveEdit, SavePreChange, Workflow, y SavePostChange).

Si hay errores se mostrarán en el área Error Message Log.

TM

PDF Editor

Page 99: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

99 |

Prueba de los métodos de Component Interface

Pruebe los métodos del Component Interface haciendo clic derecho en el nombre del

componente.

Un menú emergente aparece mostrando los métodos estándar Save y Cancel y

métodos definidos por el usuario que existen para el Component Interface. Los métodos

estándar Find, Create y Get no son válidos para una instancia del componente y por lo

tanto no son mostrados.

Si un método de Component Interface requiere uno o más parámetros, un cuadro de

diálogo aparece para introducirlos. Después de que el método es ejecutado, el mismo

cuadro de diálogo aparece, mostrando los cambios a los parámetros que fueron

causados por el método. Si un Component Interface no requiere parámetros.

Probando los métodos de colección

La prueba de los métodos de colección se realiza dando clic derecho en el nombre de la

colección.

Para que aparezca un menú pop-up se deben mostrar los métodos de colección

estándar. Seleccione el método de colección que desee para probar este Component

Interface. Ingrese un número de objeto para el método de colección que esta utilizando.

Este valor que esta utilizando puede regresar, insertar o borrar un objeto, de acuerdo a

las siguientes reglas.

Después de ingresare l número, el resultado aparecerá en el cuadro de dialogo. Si se

regresa un valor, este se mostrara en el titulo de la barra. En caso contrario se mostrara

un NO. De clic en OK o Cancel para cerrar el cuadro de dialogo.

Reglas del método de colección

La siguiente tabla contiene las reglas del método de colección:

TM

PDF Editor

Page 100: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

100 |

Nombre del método Descripción

Item (index) Regresa la línea del índice indicado. Solo el éxito o fracaso

de esta rutina es interesante en el interior de la prueba del

componente.

InsertItem (index) Inserta una nueva línea antes del índice especificado si la

colección es de fecha efectiva, o después del índice si no

es de fecha efectiva.

DeleteItem (index) Elimina las líneas designadas por el número de índice

especificado en el cuadro de dialogo en el parámetro Enter.

ItemByKeys (key1, key2,

…)

Regresa la fila correspondiente a las llaves especificadas.

Solo el éxito o el fracaso de esta rutina es de interés en el

interior de la prueba del componente.

CurrentItem Este método regresa la línea efectiva en un registro de

fecha efectiva. Solo el éxito o el fracaso de esta rutina es

de interés en el interior de la prueba del componente.

GetEffectiveItem

(DateString, SeqNum)

Regresa el DataRow que es efectivo para la fecha y

numero de secuencia específicos. Este es un caso más

general de la función GetCurrentItem, la cual regresa la

definición que es efectiva en ese momento. Este método

solo trabaja con registros de fecha efectiva.

GetEffectiveItemNum

(DateString, SeqNum)

Regresa el número del objeto que se encuentra dentro de

la colección del DataRow que es efectivo para la fecha y

numero de secuencia específicos. Este es un caso más

general de la función GetCurrentItemNum, la cual regresa

el número de la definición que es efectiva en ese momento.

Este método solo trabaja con registros de fecha efectiva.

Nota. Las clases de Component Interface contienen información sobre los métodos de colección.

Determinando los parámetros ItemByKeys

Usted puede obtener la firma del método ItemByKeys (o cualquier otro método) cuando

este probando un Component Interface. Esto es útil para el método ItemByKeys, porque

la firma es diferente para cada Component Interface.

TM

PDF Editor

Page 101: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

101 |

Para determinar los parámetros ItemByKeys:

1. Abra la definición.

2. Seleccione Tools Test Component Interface.

3. Encuentre u obtenga un apropiado Component Interface poblado.

4. Navegue por la colección apropiada.

5. De clic derecho y seleccione ItemByKeys del menú pop-up.

Aparecerá un cuadro de dialogo que muestra el parámetro y tipos específicos, y

el orden en el cual serán llamdos por el ItemByKeys.

Entendiendo la sincronización

La pestaña Component Interface Properties Synchronization es utilizada con PeopleSoft

Mobile Agent. Este último extiende la funcionalidad de PeopleSoft Pure Internet

Architecture para desconectar los dispositivos móviles, permitiendo a los usuarios

continuar trabajando con sus aplicaciones PeopleSoft en una laptop o en un asistente

digital personal (PDA) mientras se encuentra desconectado de internet o la red local.

TM

PDF Editor

Page 102: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

102 |

Consideraciones del tiempo de ejecución

En varias formas, acceder a un Component Interface es funcionalmente equivalente a

trabajar con un componente en línea. Sin embargo, hay algunas diferencias importantes

entre Componente Interface y componentes. En este tema hablaremos de cómo estas

diferencias afectan la operación interactiva, funcionalidad diseñada para interfaces

graficas, operación cliente contra servidor, y situaciones diversas.

Consideraciones generales

Consideración Descripción

WinMessage no

disponible

Puede utilizar un WinMessage en un componente que se

podrá utilizar para construir un Component Interface.

Email de un Component

Interface

Para enviar un email de un Component Interface, utilice un

evento TriggerBusinessEvent de PeopleCode, no un

evento SendMail.

Related Display Este campo no esta disponible para utilizarse en un

Component Interface.

Row Insert Si se encuentra deshabilitado el RowInsert en una página,

se debe tener cuidado cuando se llama un Component

Interface correspondiente para ser insertado.

Conflictos de ámbito

Conflicto Descripción

Procesamiento de

bucles infinitos

Un Component Interface no debe llamar el mismo a ningún

PeopleCode incluido dentro de su definición de

componente, porque tal vez resulte un bucle infinito del

Component Interface.

Instancias múltiples de

un Component Interface

Porque los conflictos de memoria potencial, no deben crear

instancias múltiples o simultaneas de un mismo

Component Interface, ya sea en un procedimiento simple o

en uno padre e hijo.

Programación de un Component Interface en

PeopleCode

Existen algunas funciones de PeopleCode que son ignoradas al llamar un Component

Interface. Estas son:

TM

PDF Editor

Page 103: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

103 |

Función Descripción

WinMessage Muestra un mensaje en un cuadro de mensajes. Solo

muestra información simple.

CheckMenuItem Cambia el estado el menú colocando una marca de

verificación al elemento del menú. Esta función es obsoleta.

DisableMenuItem Deshabilita el elemento del menú especificado.

EnableMenuItem Habilita el elemento del menú especificado.

HideMenuItem Esconde el elemento del menú especificado.

UncheckMenuItem Remueve una marcada de verificación de un elemento del

menú especificado.

SetCursorPos Posiciona el cursor en un campo específico en cualquier

lugar del componente actual.

TransferPanel Controla la transferencia del panel indicado dentro de

PANEL.panel_name.

TransferPage Controla la transferencia de la página indicada dentro de

PAGE.page_name.

DoModalPanelGroup Ejecuta un componente modal.

IsModalPanelGroup Prueba si un componente modal es ejecutado actualmente.

DoModalComponent Ejecuta un componente modal. (Igual que

DoModalPanelGroup)

IsModalComponent Prueba si un componente modal es ejecutado actualmente.

(Igual que IsModalPanelGroup)

GetSelectedTreeNode Determina que nodo de usuario tiene seleccionado un

control de árbol dinámico.

GetTreeNodeParent Ingresa datos de un control de árbol dinámico.

RefreshTree Actualiza el árbol dinámico.

DoSave Salva la página actual.

DoSaveNow Esta diseñada primordialmente para utilizarse con llamadas

remotas.

TM

PDF Editor

Page 104: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

104 |

Función Descripción

Gray Deshabilita los campos de una página.

Ungray Habilita los campos de una página.

Generando una plantilla de PeopleCode

Para acceder a un Component Interface utilizando un PeopleCodee, el Application

Designer genera una plantilla en forma de lenguaje PeopleCode que puede ser

adaptado para un propósito.

Para generar una plantilla de PeopleCode siga los siguientes pasos:

1. Abra la definicón del Component Interface deseado en el Application Designer.

2. Inserte el Component Interface dentro del proyecto.

a. Seleccione Insert Current Object into Project.

b. Guarde el proyecto.

3. Abra el editor del PeopleCode.

Puede asociar el Component Interface de PeopleCode con un record, un

componente un operador manual de servicio o un programa Application Engine.

4. Seleccione el Component Interface del área de trabajo del proyecto.

Arrastre y suelte el objeto dentro del proyecto en el editor de PeopleCode.

5. Haga los cambios necesarios en el PeopleCode.

Entendiendo la plantilla de PeopleCode

El código mostrado en esta sección es una plantilla de PeopleCode generada

dinámicamente que puede ser utilizada como un punto de partida. Reemplace todos los

valores por default o notaciones <*> por valores o referencias específicos para validar

las variables del PeopleCode.

TM

PDF Editor

Page 105: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

105 |

Establezca la sesión de PeopleCode en modo de mensaje de error. Esta propiedad es

utilizada para determinar cuantos mensajes han salido. También toma un valor

numérico o una constante. El valor por default es 1.

Esta propiedad determina el valor de la sesión. Aquí se muestra la lista de los modos

que se pueden utilizar:

Valor del modo Efecto

0 No regresan mensajes.

1 Valor por default. Mensajes tipo Log dentro de la colección

PSMessage.

2 Emerge un cuadro de dialogo de mensajes.

3 La unión del 1 y 2.

Notas de las plantillas de PeopleCode

Tome una referencia para el Component Interface proporcionándole un nombre

(Ocurrirá un error en tiempo real si el Component Interface no existe).

Obtenga las llaves para el Component Interface. En este ejemplo la llave Get es

SDK_EMPLID.

El método get() regresa un dato de la base de datos asociado con los valores de

la llave.

Obtenga e imprima las propiedades del nivel 0.

Un código similar es generado para las propiedades SDK_BIRTHDATE y

SDK_DEPTID.

TM

PDF Editor

Page 106: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

106 |

Obtenga la colección de nivel 1 (SDK_BUS_EXP_PER).

Obtenga e imprima las propiedades del nivel 1.

Un código similar es generado para las propiedades SDK_EMPLID y

SDK_BUS_EXP_SUM en la colección SDK_BUS_EXP_PER.

Obtenga la colección de nivel 2 (SDK_BUS_EXP_DTL).

Sintaxis:

&oSdkBusExpDtlCollection = &oSdkBusExpPer.SDK_BUS_EXP_DTL;

Obtenga e imprima las propiedades del nivel 2.

Un código similar es generado para las propiedades SDK_EMPLID,

SDK_EXP_PER_DT, SDK_EXPENSE_CD, SDK_EXPENSE_AMT,

SDK_CURRENCY_CD, SDK_BUS_PURPOSE Y SDK_DEPTID.

TM

PDF Editor

Page 107: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

107 |

Glosario

API: Application Programming Interface (Interfaz de aplicación).

COM: Component Object Model

Component Interface Tester: Uso del Component Interface que sirve para validar el

Component Interface

Metastring: Son sentencias especiales incluidas en cadenas SQL. Un metastring tiene

el prefijo (%)

Script: Un guión o conjunto de instrucciones. Permiten la automatización de tareas

creando pequeñas utilidades

Triggers: Un trigger o un disparador en una base de datos es un evento que se ejecuta

cuando se cumple una condición establecida al realizar una operación de inserción

(INSERT), actualización (UPDATE) o borrado (DELETE).

XSLT: Es un estándar que presenta una forma de transformar documentos XML en

otros e incluso a formatos que no son XML. Las hojas de estilo XSLT realizan la

transformación del documento utilizando una o varias reglas de plantilla. Estas reglas de

plantilla unidas al documento fuente a transformar y alimentan un procesador de XSLT,

el que realiza las transformaciones deseadas poniendo el resultado en un archivo de

salida, o, como en el caso de una página web, las hace directamente en un dispositivo

de presentación tal como el monitor del usuario.

TM

PDF Editor

Page 108: PeopleSoft-PeopleTools-Procesos

Procesos PeopleSoft

108 |

Bibliografía

Enterprise PeopleTools 8.49 PeopleBook: PeopleCode Developer’s Guide

Enterprise PeopleTools 8.49 PeopleBook: Application Engine

Enterprise PeopleTools 8.49 PeopleBook: Component Interface

Enterprise PeopleTools 8.49 PeopleBook: Application Designer

Enterprise PeopleTools 8.49 PeopleBook: Security Administration

TM

PDF Editor