|
Por Roberto Corrochano
Superbase 4
Professional, impresionante programa de bases de datos, es el objeto
de este tutorial, destinado a desarrollar una aplicación doméstica
completa. En esta tercera entrega finalizaremos la aplicación,
completando el formato de pantalla. Incluyendo también el programa
de manejo de la aplicación y complementándolo con ficheros
externos, que el usuario habrá de crear manualmente.
Retomando
el número anterior tenemos casi terminado el formato de pantalla.
De hecho, es funcionalmente utilizable, si lo grabamos y loc argamos
desde SuperBase. Solamente nos falta ponerle los títulos a cada
campo, para lo que se seleccionará el gadget texto y se procederá
pulsando sobre el lugar donde debe ir el texto y escribiéndolo.
Se puede proceder como para los campos, creándolos todos y luego
multiseleccionándolos para cambiarles sus atributos. En nuestro
ejemplo hemos utilizado el mismo font que para los campos, letra negrita
de color negro, y fondo transparente, que se selecciona con el botón
correspondiente de la ventana de atributos. Una vez terminado esto,
podríamos incluso añadir una imagen si hubiera sitio y
siempre que su paleta y la de la apliacación fuesen compatibles.
Finalizado
el formato de pantalla, lo grabaremos con la opción del menú
Open->Save as. En el requester que aparecerá seleccionaremos,
en caso de que no lo esté, el camino de acceso a la aplicación
y escribiremos (esto es importante) Pantalla en el recuadro File, pues
es el nombre con el que se va a guardar el mismo y con el que posteriormente
va a operar el programa.
Si quiere usted
visualizar su trabajo, salga dele ditor de pantallas y cargue Superbase
4; seleccione el menú Open->Form y el formato de pantalla
abrirá automáticamente los ficheros Cabecera y Datos,
y ya podrá operar en la aplicación a su gusto, creando
y modificiando registros. pero acuérdese de borrar los ficheros
Cabecera y Datos antes de ejecutar el programa que se incluye a continuación.
EL PROGRAMA
El programa
que acompaña a este artículo es el gestionador de los
dos ficheros, el formato y los ficheros externos (que se explicarán
más adelante) de listados y etiquetas. Para introducirlo en SuperBase
habrá que proceder como en el número 53 de Amiga World.
Es conveniente que, según se va introduciendo, probrar las distintas
subrutinas en orden a comprender su funcionamiento. DML es un lenguaje
basado en el BASIC, y los lectores que tengan mínimos conocimientos
del mismo y de inglés podrán claramente diferenciar las
instrucciones propias de SuperBase y discernir su significado, así
como comprender las estructuras de control y los formatos de las variables:
las variables numéricas acaban en %, las alfanuméricas
en $, etc.
El funcionamiento
del mismo es simple, únicamente seleccionar la opción
adecuada en los menúes de la barra de menú que se crean
con la instrucción MENU. En cuanto a su operación, prácticamente
no deja equivocarse, por lo que se pueden hacer verdaderas borriquerías
con él.
LA CONFIGURACION
Con la instrucción
KEY se han creado teclas de función, utilizables para la introducción
de datos. Los códigos de las teclas de función van de
1 a 10 correspondiendo con F1...F10. Así, F1 introduce la cadena
DEMO, F2 JUEGO, y F3 UTILIDAD. Puede usted definir, con la misma intrucción
y bajo las que figuran en el programa, sus propias teclas conteniendo
cadenas de uso común, como ARCADE, MATAMARCIANOS, etc.
Para finalizar
la aplicación únicamente nos faltan los tres ficheros
externos, dos de listados y uno de etiquetas. Estos no se han creado
vía programa (lo cual no sólo es posible, sino recomendable)
por razones de optimización y compatibilidad con ele quipo que
cada usuario posee.
El modo de
crear los listados es con la opción Process->Query>>Edit
de SuperBase. Teniendo abiertos los dos ficheros, cabecera y datos,
editaremos dos listados. El primero, al que llamaremos originalmente
"uno", contendrá el listado por código de disquette,
y el segundo ("dos"), el listado por nombre.
FICHEROS EXTERNOS
Para el primero,
los campos que conviene listar son Código.datos, Programa.datos,
Número.datos y Total.cabecera. Los demás se dejan a elección
personal. Para introducirlos, pulsar con el ratón sobre Fields,
y proceder como en requesters similares, pulsando sobre los campos requeridos.
Una particularidad es el poder seleccionr la longitud y el encabezamiento
de las columnas, mediante los respectivos gadgets & (Lenght) y AS
(Heading). Su uso, visto en la caja inferior del requester (editable)
es como sigue:
&45 CODIGO
DATOS AS "Código de ordenación" crearía
una columna de 45 caracteres de largo (no de alto) con el título
"Código de...
Una vez definidos
los campos, con el botón Order crearemos el orden de impresión,
el cual será Código.datos. Lo introduciremos de la manera
vista.
Con el botón
Report contaremos los discos que tenemos. Esto se hace seleccionando
en su requester la siguiente fórmula: COUNT GROUP PROGRAMA.DATOS
Con todo seleccionado,
pulsaremos el recuadro Title (título) y crearemos el mismo a
nuestro gusto en la caja de al lado. Concluido esto, pulsamos Ok para
probar, y si todo va divino, lo grabamos con el nombre "Uno"
en nuestro directorio mediante la opción Process->Query>>Save
As.
Para el segundo,
el proceder es similar, pero los datos son:
- Campos: Programa.cabecera,
Tipo.cabecera, Total.cabecera, Comentario.cabecera.
- Orden: Programa.cabecera
- Informe:
COUNT GROUP PROGRAMA.CABECERA
Lo grabaremos
con el nombre "dos".
ETIQUETAS
Se editan en
el menú Process->Labels>>Edit. Con las cajas que rodean
el rectángulo blanco que representa la etiqueta se puede definir
el tamaño de etiqueta y la distancia entre las mismas del papel
de etiquetas que tenga. COn las de la derecha, el número de filas
y columnas por página, así como el margen superior de
la página y las copias por etiqueta. Con la caja que contiene
los campos selecionaremos los que nos convengan y los posicionaremos
en el modelo de etiqueta. Como necesitamos una etiqueta por disco, el
fichero activo en ese momento ha de ser datos.
El modo de
medir el tamaño de las etiquetas es con reglas especiales que
miden en picas y se pueden adquirir en casi cualquier tienda especializada
de informática, o mediante el método tradicional de prueba
y error con el botón Test, que imprime una fila de etiquetas
rellenadas con el carácter X.
Conseguido
nuestro tamaño ideal, grabarlo con el nombre "etiquetas".
Para poder conseguirlo usaremos del menú Process->Labels>>Save
As.
PARA TERMINAR
Con todos los
ficheros externos, más los listados, las etiquetas, los ficheros
principales, el formato de pantalla y el programa, habremos desarrollado
una aplicación completa. Seleccione DML->Run (Amiga Dcha.+g)
y pruebe y disfrute de su trabajo. El objetivo de este tutorial era
que, a través del desarrollo de la aplicación, se comprendan
las posibilidades y el manejo de SuperBase. Si ha entendido y extrapolado
usted todos los conceptos explicados en estos tres artículos,
manejará un 50% de SuperBase. El usuario medio posiblemente jamas
aprovechará todas sus posibilidades, y incluso para ello, harán
falta ciertos conocimientos de informática y programación
de gestión. El manejo de imágenes, sonidos y textos mediante
botones, que la convierten en una aplicación totalmente multimedia,
la comunicación mediante el puerto serie, la creación
de cartas personalizadas, etc., son solamente unas cuantas opciones
más de este impresionante y casi mágico programa.
LISTADO
PARCIAL
DEL PROGRAMA
EN SUPERBASE |
REM --Clasificador Amiga
World--
editar:
SET HEADING "Editando registro"
ENTER tipo.cabecera,1
ENTER clase.cabecera,2
total% = total.cabecera
FILE "datos"
INDEX programa.datos
SELECT KEY programa.cabecera
FOR f% = 1 TO total%
codigo.datos = codigo.datos
ENTER contenido.datos ROW f%
ENTER nombre.datos ROW f%
ENTER formato.datos ROW f%
ENTER posesion.datos ROW f%
STORE
SELECT NEXT FILE "datos"
INDEX programa.datos
NEXT f%
FILE "cabecera"
fecha.cabecera = TODAY
STORE FORM
RETURN
edfiltro:
SET HEADING "Editando listado"
edi% = 1
EDIT QUERY
edi% = 0
REQUEST "¿Imprimir?","",1,
opcion%
IF opcion% = 1 THEN
? QUERY
END IF
RETURN
|
etiqu:
SET HEADING "Creando etiquetas"
LOAD LABELS "etiquetas"
REQUEST "Introduce código infe
rior","",4,opcion%,inf%
IF opcion% = 1 THEN
REQUEST "Introduce código supe
rior","",4,opcion%,sup%
IF opcion% = 1 THEN
IF sup% < inf% THEN
aux% = inf%
inf% = sup%
sup% = aux%
END IF
LABELS FILE "datos" WHERE (co
digo.datos >= inf%) AND (codigo.
datos <=sup%)
END IF
END IF
FILE "datos"
SELECT WHERE
FILE "cabecera"
RETURN
porcodigo:
SET HEADING lis1$
LOAD QUERY "unO"
SET HEADING lis2$
? QUERY TO PRINTER
RETURN
pornombre:
SET HEADING lis1$
LOAD QUERY "dos"
SET HEADING lis2$
? QUERY TO PRINTER
RETURN
|
El modo
de crear
los listados
es con la opción
Process->Query>>Edit
de SuperBase.
Teniendo abiertos
los dos ficheros,
cabecera y datos,
editaremos dos
listados. El primero,
al que llamaremos
originalmente "uno",
contendrá el listado
por código
de disquette,
y el segundo "dos",
el listado
por nombre
|
|