UNIDAD 5: PASCAL REGISTROS Y ARCHIVOS SECUENCIALES

TEMA 9: BAJAS O ELIMINACIONES PASCAL ARCHIVOS

Eliminacion o bajas es el proceso por medio del cual algunos registros del archivo son purgados del archivo, existen dos maneras por las cuales se puede realizar ese proceso.

En la primera manera de la cual se proporciona el ejemplo correspondiente se usaran dos archivos, el archivo original y un archivo temporal, el procedimiento o algoritmo es muy sencillo, se lee el registro del archivo original y si no es el registro a eliminar entonces se almacena en el archivo temporal, cuando se termina de procesar todo el archivo original, el archivo temporal solo contendra todos los registros que no se quisieron eliminar, ya con estos dos archivo se procede a eliminar o borrar usando la instruccion remove de el archivo original y se procede a renombrar usando la instruccion rename de el archivo temporal como nuevo archivo original.

prog22.pas

program prog22;
uses crt;
type
alumnos = RECORD
clave:integer;
nombre:string[30];
estatura:real;
end;
var
alumno:alumnos;
archivo: file of alumnos;
temporal: file of alumnos;
clave:integer;
BEGIN
(* creando y abriendo los dos archivos *)
assign(archivo,'c:\prog\alumnos.dat');
reset(archivo);
assign(temporal,'c:\prog\temporal.dat');
rewrite(temporal);
(* capturando clave a eliminar *)
clrscr;
write('clave a eliminar : ');readln(clave);
(* iniciando ciclo de lectura de registros en archivo original *)
while not(EOF(archivo)) do
begin
READ(archivo,alumno);
if clave <> alumno.clave then
WRITE(temporal,alumno);
end;
(* cerrando archivos *)
close(archivo);
close(temporal);
(* borrando y eliminando archivos *)
erase(archivo);
rename(temporal,'c:\prog\alumnos.dat');
(* avisando *)
write('Registro Eliminado <enter> para continuar');
readln;
END.

corrida prog22

image253.jpg

Para ver el archivo original usar el prog19.pas o mejor aun llamen el modulo apropiado del menu que ya estan construyendo.

EL problema con esta manera de eliminar incluso fisicamente los registros del archivo es que no hay manera de recuperar esa informacion posteriormente.

Es por eso que otra tecnica comun de eliminacion es incluir un campo de estado, status o bandera o semaforo en el registro y conforme se va cargando el registro y antes de mandarlo a disco se le agrega a dicho campo el caracter 'A' –>alta, asi que cuando se quiera una baja solo se pondria dicho campo en 'B' y todos los programas de lectura, busqueda y filtros deberan revisar esta campo de estado antes de hacer algo con el registro.

tareas PROGRAMACION PASCAL :

Construir procedimientos de bajas para los archivos construidos.

Politica de Privacidad