Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DE
DESARROLLO
VERSION 1.0
Agosto 2001
Estndar de desarrollo
NDICE
TABLA DE FIGURAS.....................................................................................................2
Revisiones.........................................................................................................................4
Entorno de desarrollo......................................................................................................6
Procedimiento de desarrollo............................................................................................8
Interfaces de usuario (pantallas)...................................................................................11
Interfaces de usuario (informes)...................................................................................20
Normas de desarrollo.....................................................................................................23
Sangrado................................................................................................................................23
Maysculas/Minsculas........................................................................................................23
SQL & PL/SQL. Reglas bsicas en la programacin.........................................................24
Alias.......................................................................................................................................26
Comentarios..........................................................................................................................27
Optimizacin.........................................................................................................................28
Reglas generales sobre ndices:...........................................................................................................28
Combinaciones.....................................................................................................................................33
Optimizacin Or..................................................................................................................................35
Operador In..........................................................................................................................................36
Operador Exists....................................................................................................................................36
Cuaderno de pruebas.....................................................................................................39
TABLA DE FIGURAS
Figura 1. Definicin de etiquetas.................................................................................................................11
Figura 2. Ttulo de la ventana forms mdi.....................................................................................................12
Figura 3. Ttulo de una ventana de un mdulo de la aplicacin..................................................................12
Figura 4. Ttulo de una ventana de un mdulo de la aplicacin maximizada..............................................12
Figura 5. Cabecera de la aplicacin.............................................................................................................13
Figura 6. Barra de herramientas...................................................................................................................14
Figura 7. Campos no accesibles...................................................................................................................15
Figura 8. Radio Groups................................................................................................................................16
Figura 9. Check Box y Buttons....................................................................................................................16
Figura 10. Bloque multiregistro con datos no continuos.............................................................................17
Figura 11. Bloque multiregistro con datos continuos..................................................................................17
Figura 12. Canvas stacked view..................................................................................................................18
Figura 13. Canvas Tab o de pestaas...........................................................................................................18
Figura 14. Lista de valores...........................................................................................................................19
Figura 15. Hoja de cabecera de un informe.................................................................................................20
Figura 16. Cabecera de un informe con parmetros en todas las pginas...................................................21
Figura 17. Pie de un informe en todas las pginas.......................................................................................21
Figura 18. Cabecera de un listado con logotipo...........................................................................................22
Pgina 2 de 38
Estndar de desarrollo
Pgina 3 de 38
Estndar de desarrollo
Revisiones
Usuario
Versin
Pendiente de incluir:
1.
2.
3.
4.
5.
6.
7.
Pgina 4 de 38
Estndar de desarrollo
Objetivos.
descripcin de las pruebas genricas a realizar en todos los mdulos que se generen,
independientemente de las pruebas especficas de cada mdulo.
Pgina 5 de 38
Estndar de desarrollo
Entorno de desarrollo
El entorno de desarrollo se define de la siguiente forma:
Todas las aplicaciones se encuentran en un Sistema de archivos distribuido (DFS) soportado
por Windows 2003 Server , en la raiz \\dasa\informatica, carpeta desarrollo\proyectos\ .
La estructura de directorios de desarrollo ser la siguiente:
Directorio
Proyectos
Aplicacin 1
Listados
Pantallas
SQL
Funcin
Contiene las aplicaciones desarrolladas por la empresa
Aplicacin de
Iconos
Contiene todos los iconos de las aplicaciones
Resto de aplicaciones
Estructura igual que la existente en aplicacin 1
Genrico
Contiene los ficheros necesarios para el correcto funcionamiento
de las aplicaciones (*.dll, *.res, etc.)
Libreras
Contiene todos los fuentes de las libreras usadas en las
aplicaciones
Menus
Contiene todos los fuentes de mens usados en las aplicaciones
Plantillas
Contiene todas las plantillas que se usarn como base en el
desarrollo de los mdulos.
Envios
Directorio donde se realizan las entregas de mdulos finalizados
por el proveedor
Traspaso
Contiene mdulos desarrollados en Forms 6.0 pendientes de
pasar a explotacin
Pgina 6 de 38
Estndar de desarrollo
Procedimiento de desarrollo
A continuacin se describen los pasos a realizar para el desarrollo y puesta en explotacin de los mdulos.
Estos pasos afectarn tanto a los mdulos migrados como a cualquier mdulo nuevo desarrollado.
Desarrollo de aplicaciones
Envo de fuentes
El jefe del proyecto enviar los fuentes a modificar junto con un documento con la descripcin de los
cambios a realizar
Recepcin de las aplicaciones
Cuando el proveedor termina con la migracin de los mdulos, nos entrega un documento con la
relacin de los mdulos migrados, as como una breve descripcin de las posibles incidencias
encontradas.
Los mdulos migrados sern puestos por parte del proveedor en el directorio del servidor de
desarrollo \\Nombre_equipo\envios. Una vez recibidos los mdulos, se copiarn todos en el
directorio de traspaso (\\Nombre_equipo\traspaso, para realizar la compilacin. En este directorio se
encuentran siempre los ficheros de plantillas (Plantilla*.fmb), as como las libreras (*.pll), para que
no se produzcan errores de compilacin.
De igual forma, en este directorio existen dos ficheros, genera.bat y genera60.bat, que nos permiten
realizar compilaciones masivas. Para compilar todos los mdulos residentes en traspaso, basta con
ejecutar el fichero genera60.bat. Los ficheros tipos men, debemos compilarlos manualmente Si no
se produce ningn error, procedemos a la recolocacin de todos los mdulos:
1.
Pgina 7 de 38
Estndar de desarrollo
\\Nombre_equipo_explotacion\Aplicaciones\nombre_aplicacion\pantallas
Los ficheros *.rdf (pantallas) se copiarn en el directorio listados y en binarios de la aplicacin
migrada, tanto en el servidor de desarrollo como en el de explotacin. Ej.:
\\Nombre_equipo_desarrollo\Aplicaciones\nombre_aplicacion\listados
\\Nombre_equipo_explotacion\Aplicaciones\nombre_aplicacion\listados
\\Nombre_equipo_explotacion\Aplicaciones\binarios
Las libreras *.pll pasarn al directorio de libreras y a binarios. Ej.:
\\Nombre_equipo_desarrollo\Aplicaciones\librerias
\\Nombre_equipo_explotacion\Aplicaciones\librerias
\\Nombre_equipo_explotacion\Aplicaciones\binarios
Mens.
\\Nombre_equipo_desarrollo\Aplicaciones\Menus
\\Nombre_equipo_explotacion\Aplicaciones\Menus
2.
Pgina 8 de 38
Estndar de desarrollo
Pgina 9 de 38
Estndar de desarrollo
Pgina 10 de 38
Estndar de desarrollo
Consultar
Campo
Entrar Consulta
Campo Anterior
Ejecutar Consulta Campo Siguiente
Cancelar Consulta Limpiar
Ayuda
Teclas
Visualizar Error
Duplicar
Pgina 11 de 38
Estndar de desarrollo
10. La barra de herramienta estndar se incorporar a todas las ventanas que proceda, y ser
como la mostrada en la Figura 6. Barra de herramientas. Algunos botones de la barra de
herramientas aparecern deshabilitados en algunas pantallas, inhibiendo de esta forma su
funcin. Todos los botones irn encuadrados en un rectngulo con la propiedad bevel a
lowered y con color de fondo darkgray. Esta barra de herramientas estar definida en una
plantilla y se incorporar a los mdulos como referencia.
Pgina 12 de 38
Estndar de desarrollo
Campos
informativos
Lnea de separacin de
totales
Campos no accesibles
Cada bloque de informacin estar incluido en un rectngulo con la propiedad bevel con
valor Inset, y mostrarn la etiqueta con la definicin del bloque en la esquina superior
izquierda. De igual forma, si existen datos que se deban agrupar por relacin en la
informacin de los campos (y segn la definicin de cada diseo en particular), estos
aparecern encuadrados en rectngulos rectngulo con la propiedad bevel con valor Inset y
con la etiqueta (segn diseo) en la esquina superior izquierda.
Pgina 13 de 38
Estndar de desarrollo
Check Box
Buttons
que sea completamente intuitivo (al estilo de los botones de la barra de herramientas), segn
se decida en el diseo en cada caso (ver Figura 9. Check Box y Buttons).
Pgina 14 de 38
Estndar de desarrollo
Pgina 15 de 38
Estndar de desarrollo
Pgina 16 de 38
Estndar de desarrollo
Los campos que sean de tipo lista y que no lleven valores fijos asociados, se cargarn en
tiempo de ejecucin a partir de la tabla CG_REF_CODES, en caso de estar definidos en
dicha tabla.
18. Listas de valores
Las listas de valores asociadas a campos se mostrarn siempre al lado del campo que
contiene la lista, poniendo la propiedad Automatic Position a Yes. Si el nmero de
registros a mostrar es demasiado grande, se ejecutar la lista de valores con un filtro previo,
poniendo la propiedad Filter Before Display a Yes. El atributo visual de una lista de
valores debe incluir la letra Ms Sans Serif de tamao 8 y el fondo gris igual que el canvas.
La altura quedar establecida en 200 puntos y la anchura depender de los datos a mostrar.
Todas las listas de valores llevarn ttulos descriptivos asociados.
Pgina 17 de 38
Estndar de desarrollo
Si el n de parmetros es excesivo, de forma que en la cabecera de todas las hojas del listado
ocupa mucho espacio, crearemos una pgina inicial con la informacin de todos los
parmetros, y en las cabeceras de las restantes hojas, mostraremos nicamente los
parmetros ms importantes.
Si el n de parmetros del listado no es excesivo, no se incluir una pgina inicial. Todos los
parmetros aparecern en la cabecera de las hojas del listado.
Usuario. Nombre de usuario que ejecuta el listado (se pasa como parmetro).
Parmetros. Parmetros que se le pasan al listado para su ejecucin.
Pgina 18 de 38
Estndar de desarrollo
2. Los listados sin pgina de cabecera llevar los parmetros en la cabecera de todas las hojas
del listado. Siempre se pondrn los parmetros en la cabecera segn se defina en el diseo
de cada mdulo.
3. Excepto en la pgina de cabecera, todas las hojas incluirn en el pie el texto Servicio de
Informtica. Este texto estar definido en el margen de los listados.
Pgina 19 de 38
Estndar de desarrollo
Pgina 20 de 38
Estndar de desarrollo
Normas de desarrollo
En este apartado se detallan una serie de reglas para que la generacin de cdigo PL/SQL sea
legible, modular y optimizado.
Sangrado
La programacin de triggers, procedimientos, funciones o paquetes en Forms 6.0 utilizar el
sangrado de TRES espacios utilizando el tabulador para introducirlos. Para ello es necesario
modificar o incluir en el registro de Windows la siguiente cadena:
HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/DE_PREFS_TABSIZE = 3.
Las clusulas FROM, GROUP BY, ORDER BY, HAVING, etc. debern estar sangradas a la
misma altura que la instruccin SELECT (o cualquier otra instruccin DML/DDL).
Una subconsulta dentro de una consulta se regir por las mismas reglas que las instrucciones
DDL, manteniendo el sangrado como si de una consulta principal se tratara.
Maysculas/Minsculas
Todas las palabras clave se escriben en maysculas.
Todos los elementos definidos por el usuario se escriben en minsculas.
Ejemplo:
DECLARE
v_numero NUMBER(8);
BEGIN
SELECT *
FROM nombre_de_tabla
WHERE empresa = 1;
EXCEPTION
WHEN NO_DATA_FOUND THEN
V_numero := 0;
END;
Pgina 21 de 38
Estndar de desarrollo
Todos los nombres de tablas irn precedidos por el nombre del propietario.
Comentarios
Comentar las sentencias SQL siempre que sea posible, y en caso de excesiva complejidad. Si un
comentario ocupa una nica lnea, utilizar ; si por el contrario, va a ocupar ms de una lnea,
utilizar /* y */ para delimitar el inicio y fin del comentario.
Poner los comentarios en lneas nuevas, a no ser que sean aclaratorios de determinadas
instrucciones (partes de un select, etc.) y quepan en una nica lnea, en cuyo caso irn a la
derecha de la codificacin con la marca .
Si utilizamos comentarios o mensajes para depurar el programa, eliminarlos una vez se finalice
la comprobacin.
Los comentarios que ocupen ms de una lnea irn encima del cdigo comentado, y alineados
con la instruccin comentada.
Pgina 22 de 38
Estndar de desarrollo
Comentarios en triggers
En la cabecera del trigger creado se debe incluir una breve descripcin de la funcionalidad del
programa
/* Descripcin del trigger */
Cualquier funcin, procedimiento o paquete incluir una pequea cabecera con los siguientes
datos:
/* Descripcin:
Parmetros de entrada:
Parametros de salida:
Programador:
Fecha de creacin:
Programador
*/
Fecha
Comentarios en el mdulo
Optimizacin
Pgina 23 de 38
Estndar de desarrollo
Las siguientes reglas se definen como base para intentar optimizar las consultas. De cualquier
forma, si es posible, usar herramientas de depuracin para mejorar el tiempo de respuesta de las
consultas.
Pgina 24 de 38
Estndar de desarrollo
Pgina 25 de 38
Estndar de desarrollo
Utilizando la parte conductora Emp_no del ndice concatenado emp_no, apellido, sal.
Select apellido
From
emp
Where emp_no = 1234
Utilizando el ndice completo emp_no, apellido, sal.
Select apellido
From
emp
Where emp_no
= 1234
and apellido = APELLIDO
and sal
= 10000000
7. Valores Null.
No hay entrada de ndices si todos los valores de columna de u ndice tienen un valor nulo.
Los valores nulos no se almacenan en un ndice de columna simple.
En un ndice formado por varios campos, los valores nulos se almacenan si al menos una
columna en el ndice tiene un valor (distinto de nulo).
En un ndice los valores nulos de todas las columnas se recuperan mediante un anlisis
completo de la tabla.
Ejemplo:
No se usa ndice sobre comision.
Select apellido
From
emp
Where comision is null
Se usa ndice sobre sal y comision.
Select apellido
From
emp
Where sal
= 1000000
and comision is null
8. Operador Not.
Las condiciones Not Null recuperan la mayor parte de los registros, por lo que no se usarn
ndices.
Ejemplo:
No se usa ndice sobre dept_no.
Select apellido
From
emp
Where dept_no <> 10
Se puede utilizar ndice sobre dept_no ( y es ms rpida que la instruccin anterior).
Select apellido
From
emp
Where dept_no < 10
or dept_no > 10
9. Clusula Order by.
Se puede utilizar un ndice en una clusula Order by si:
Pgina 26 de 38
Estndar de desarrollo
Si no se puede utilizar un ndice para una clusula order by, entonces se utilizar una
operacin de clasificacin.
Ejemplo:
El ndice sobre dept_no puede ser utilizado por la clusula Order by si dept_no est definido
como not null.
Select apellido
From
emp
order by dept_no
El ndice sobre dept_no no puede ser utilizado en la clusula order by si existe un ndice
sobre sal.
Select apellido
From
emp
Where sal
= 1000000
order by dept_no
10. Funciones Max y Min.
Se utilizar un ndice para una funcin max o min cuando:
No hay clusula where o order by.
La consulta no es una combinacin.
La funcin max o min es la nica expresin en la consulta.
No se utilizan otros operadores distintos de concatenacin o adicin en la funcin max
o min.
Slo hay una nica funcin max o min.
Slo hay una ocurrencia simple de una columna en la funcin max o min.
Ejemplo:
Se usa el ndice sobre la columna sal.
Select max(sal)
From
emp
Select max(sal + 10000)
From
emp
No se utiliza el ndice sobre sal.
Select max(sal)
From
emp
Where dept_no = 10
Pgina 27 de 38
Estndar de desarrollo
apellido
emp
emp_no
= 1234
apellido = APELLIDO
apellido
emp
emp_no
= 1234
apellido = APELLIDO
Pgina 28 de 38
Estndar de desarrollo
Mezcla de ndices.
Create index iemp1 on emp(emp_no);
Create index iemp2 on emp(apellido);
Select
from
Where
and
apellido
emp
emp_no
= 1234
apellido = APELLIDO
apellido
emp
emp_no
= 1234
apellido > A
apellido
emp
emp_no
> 1234
apellido > A
apellido
emp
dept_no = 10
sal > 10000000
Pgina 29 de 38
Estndar de desarrollo
Ejemplo:
Select d.nombre, e.apellido
From
dept d, emp e
Where d.dept_no > e.dept_no.
2. Combinacin de clasificacin/mezcla.
Las combinaciones de anlisis completo de tabla se utilizan para combinaciones del tipo no
indexadas de igualdad. Las tablas son mezcladas y clasificadas en base a la condicin de
combinacin. No importa cual es la tabla conductora.
Ejemplo:
Select d.nombre, e.apellido
From
dept d, emp e
Where d.dept_no = e.dept_no.
Esto se ejecuta como dos consultas separadas, mezclndose los resultados.
Select d.dept_no, d.nombre
from dept d
order by d.dept_no.
Select e.dept_no, e.apellido
from emp e
order by e.dept_no
3. Combinacin con utilizacin de ndice.
Si se puede utilizar un ndice para una sola columna del predicado de una combinacin,
entonces la tabla conductora ser aquella que no tiene un ndice utilizable en la condicin de
combinacin.
Ejemplo:
Create index idept1 on dept(dept_no)
Select d.nombre, e.apellido
From
dept d, emp e
Where d.dept_no = e.dept_no.
La tabla conductora ser emp. Se usar el ndice sobre dept_no para acceder a la tabla
dept. La tabla emp ser analizada completamente.
Si el predicado de una combinacin no est indexado, se consideran el resto de los ndices
para elegir la tabla conductora.
Ejemplo:
Create index iemp1 on emp(sal)
Select
From
Where
and
dept_no, dnombre
dept, emp
dept_no = dept_no.
sal
= 100000
Pgina 30 de 38
Estndar de desarrollo
Se utilizar el ndice sobre Sal para combinar las tablas. Se elige como conductora
aquella que tiene ndice.
Se utilizarn los ndices de las tablas no conductoras para acceder a dichas tablas. Si se
puede utilizar un predicado de fila simple para un predicado de no combinacin, entonces la
tabla conductora ser la tabla con el predicado de fila simple.
Ejemplo:
Create unique index idept1 on dept(dnombre)
Create index iemp1 on emp(sal)
Select
From
Where
and
and
dnombre, apellido
dept, emp
dept_no = dept_no.
dnombre = DEPARTAMENTO
sal = 1000000
La tabla conductora es dept. Se usar el ndice sobre dnombre para acceder a la tabla
dept. Se usar el ndice sobre sal para acceder a la tabla emp.
Si se pueden utilizar predicados de fila simple para predicados de no combinacin en ms
de una tabla, entonces la tabla conductora ser la tabla mencionada en ltimo lugar en la
lista from.
Ejemplo:
Create unique index idept1 on dept(dnombre)
Create unique index iemp1 on emp(sal)
Select
From
Where
and
and
dnombre, apellido
dept, emp
dept_no = dept_no.
dnombre = DEPARTAMENTO
sal = 1000000
La tabla conductora es dept. Se usar el ndice nica sobre sal para acceder a la tabla
emp. Se usar el ndice nico sobre dnombre para acceder a la tabla dept.
Optimizacin Or
Esta optimizacin se utilizar si podemos usar un ndice para la clusula where en ambos lados
de la condicin Or. La consulta ser dividida en mltiples consultas, a partir de las cuales se
combinarn los resultados. Esta optimizacin tambin ser usada en una tabla simple con
clusula in.
Ejemplo:
Create index iemp1 on emp(dept_no)
Create index iemp2 on emp(oficio)
Select apellido
From
emp
Where dept_no = 10
or
oficio = OFICIO
Pgina 31 de 38
Estndar de desarrollo
Operador In
Ejemplo:
Select dept_no
From Dept
Where Dept_no in
(Select dept_no
From emp)
La tabla conductora para la consulta es la que aparece en la subconsulta.
Esta consulta se transforma en un join, donde el acceso a la subconsulta es secuencial
(clasificando los registros y eliminando duplicados), y el acceso a la consulta externa permitir
el uso de ndices.
Slo conviene utilizar este operador si la consulta interna es muy selectiva.
No utilizar el operador Not In.
Operador Exists
Ejemplo:
Select dept_no
From Dept
Where exists
(Select null
From emp
Where emp.dept_no = dept.dept_no)
La tabla conductora para la consulta es la que aparece en la consulta principal.
Se ejecuta la subconsulta para cada fila de la consulta principal. En ambas consultas pueden
utilizarse ndices.
Slo conviene utilizar este operador si la consulta principal es muy restrictiva.
No utilizar el operador Not Exists.
Pgina 32 de 38
Estndar de desarrollo
v_nombre_variable
Sin regla. Se antepone el prefijo global.
p_nombre_procedimiento
f_nombre_funcion
pk_nombre_paquete
exc_nombre_excepcin
t_nombre_tabla
r_nombre_registro
cn_nombre_constante
cur_nombre_cursor
Pgina 33 de 38
Estndar de desarrollo
Declaraciones
Cualquier declaracin de una variable que vaya a contener valores de una columna de una tabla
de la base de datos, utilizar el atributo %TYPE, para independizar la variable de posibles
cambios en la estructura de la base de datos. Adems, debera llamarse loa ms aproximado
posible a la columna de la base de datos, o en su defecto, un nombre suficientemente
descriptivo.
V_ob_anno_obra
tutor.pr_cargo_producs.ob_anno_obra%type;
Los cursores debern ser declarados siempre con el prefijo c_nombre_cursor, intentando poner
el nombre de la tabla seleccionada, o en su defecto, un nombre significativo.
Si una variable debe ser inicializada, se har en la seccin de declaracin de variables.
Pgina 34 de 38
Estndar de desarrollo
Los nombres de los objetos de un formulario se deben basar en las siguientes reglas:
Objeto
Pantallas
Alerts
Canvases
Editors
Lovs
Object groups
Parameters
Popups Menu
Property Classes
Record Groups
Visual Attributes
Windows
Bloques
Marco de pantalla
Item pantalla (no B.D)
Botones
Informes
Querys
Summary Columns
Formula Columns
Placeholder Column
Grupos
Cross Product
Fields
Nombre
al_nombre_alerta
cv_nombre_canvas
ed_nombre_editor
lv_nombre_lov
ob_nombre_grupo_objetos
p_nombre_parmetro
pm_nombre_men
pc_nombre_clase_propiedad
rg_nombre_grupo_registros
va_nombre_atributo_visual
w_nombre_ventana
b_nombre_bloque (bloque
control blk_ctrl)
Fr_nombre_de_marco
n_nombre_de_item
bt_nombre_boton
de
q_Nombre_consulta
cs_columna_sumatoria
cf_columna_formula
cp_columna_placeholder
g_nombre_grupo
g_cp_nombre_matriz
f_nombre_campo
Pgina 35 de 38
Estndar de desarrollo
Ejemplos:
Maestro de artculos: ARTICULO
Maestro de articulos por almacn (existencias, precios, costo etc): ALMA_ARTI
Cabeceras de pedido cliente: CABE_PEDI_CLIE
Partes de fabricacin: CABE_PART_FABR y LINE_PART_FABR
Columnas.
Se nombran con un mximo de 10 caracteres. Siguiendo las mismas normas que las tablas y
adems:
- Las fechas se nombran comenzando con f_ salvo que sea suficiente con la
palabra fecha
Constrains
Se utilizar la opcin de nombre automtico asignado por el sistema
Pgina 36 de 38
Estndar de desarrollo
Cuaderno de pruebas
En este apartado se definen el conjunto de pruebas a realizar en los mdulos desarrollados.
Todas las pantallas debern haber superado este conjunto de pruebas generales,
independientemente de haber superado las pruebas especficas de cada mdulo en particular.
Verificar la completa funcionalidad del ratn en las pantallas, comprobando que se realizan
las validaciones necesarias en los campos dnde estn definidas, as como el no poder
acceder a campos dnde no est permitido el acceso. En los desarrollos en Forms 3.0, la
navegacin por los campos era secuencial, realizando determinadas funciones de validacin
o inicializacin cuando se pasaba de un campo a otro. Todas estas funciones deben
realizarse de la misma manera en forms 6.0. Cuando utilizamos el ratn para realizar la
navegacin entre dos campos, se deben ejecutar todas las validaciones que existen entre los
campos intermedios. Tambin se debe controlar el acceso condicionado, probando que
nicamente se puede acceder a un campo en determinadas condiciones que lo habilitan.
Comprobar la correcta navegacin entre campos y entre bloques, verificando todas las
validaciones.
Pgina 37 de 38
Estndar de desarrollo
Comprobar todas las teclas de funcin que se han particularizado para los mdulos,
manteniendo la compatibilidad con la nueva definicin del teclado en Forms 6.0.
Comprobar que todos los listados funcionan correctamente en euros y en pesetas (donde sea
necesario).
Verificar que un listado puede ser convertido a fichero ASCII, manteniendo el sangrado
correcto en las columnas.
Todos los listados deben poder ser enviados a fichero, incluyendo todos los tipos de fichero
que proporciona la herramienta. El usuario debe ser capaz de manipular los ficheros
generados.
Ejecutar el listado con todos los campos al mximo n de caracteres (obtenido a partir de la
informacin de las tablas o informacin de control), para evitar que aparezcan campos
rellenos con * cuando se desbordan.
Pgina 38 de 38