
Ayuda con programa ABM en Registros (Urgente pls)
Publicado por German (1 intervención) el 13/05/2014 19:08:18
hola a todos, tengo un problema con un programa de registros de ABM en pascal, no logro que guarde correctamente el archivo o que lo imprima bien, en realidad no se que parte es la que no funciona.
les dejo el archivo, si alguien puede ayudarme les agradecería.
cuando agrego un producto, proveedor o realizo una venta AL PARECER lo hace bien, pero al consulta la lista correspondiente, no imprime nada en pantalla mas que los titulos, registros vacios y con valores 0.
algunos procedimientos son:
les dejo el archivo, si alguien puede ayudarme les agradecería.
cuando agrego un producto, proveedor o realizo una venta AL PARECER lo hace bien, pero al consulta la lista correspondiente, no imprime nada en pantalla mas que los titulos, registros vacios y con valores 0.
algunos procedimientos son:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Procedure Mostrar_ventas;
var
fila, cant: integer;
begin
clrscr;
fila:=4;
Writeln('**************************Listado de Ventas********************************|');
Writeln('||CV|| ||Fecha|| ||Producto|| ||Cantidad Vendida|| Monto Total||');
seek (archventas,0);
cant:=0;
if filesize(archventas) <> 0 then
begin
While cant <= filesize(archventas) do
begin
write('|');gotoxy(4,fila);write(cant+1);gotoxy(8,fila);write('|');
write('|');gotoxy(10,fila);write(vent.fecha);gotoxy(20,fila);write('|');
write('|');gotoxy(26,fila);write(vent.codproduc_venta);gotoxy(38,fila);write('|');
write('|');gotoxy(46,fila);write(vent.cant_venta);gotoxy(54,fila);writeln('|');
fila:=fila+1;
cant:=cant+1;
end;
end
else
begin
clrscr;
write ('No hay archivos');
end;
Writeln('******************************************************************************');
readkey;
close (archventas);
reset (archventas);
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Procedure Vender;
begin
clrscr;
reset (archprod);
reset (archventas);
MUESTRA_PROD;
reset (archprod);
seek (archventas,filesize(archventas));
GOTOXY (23,7); Write ('***Registrar Venta***');
GOTOXY (23,11); Write ('Codigo del producto: '); ///////////////////////////////////////////////////////////////////////////////////////////////////////////
READ (vent.codproduc_venta);
GOTOXY (23,13); Write ('Fecha (dd/mm/aa): ');
READ (vent.fecha);
GOTOXY (23,15); Write ('Cantidad a Vender: ');
READ (vent.cant_venta);
seek (archprod,vent.codproduc_venta + 1);
vent.Monto_total:= vent.cant_venta * prod.presuni;
prod.Stock:= prod.Stock - vent.cant_venta;
write (archventas,vent);
write (archprod,prod);
close(archprod);
close(archventas);
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Procedure ALTA_PROVEEDORES;
VAR
aux:char;
BEGIN
clrscr;
GOTOXY (20,7); Writeln ('**Dar de alta nuevo Proveedor**');
GOTOXY (20,8); Writeln ('Esta seguro que quiere AGREGAR PROVEEDOR?');
GOTOXY (20,9); Write ('Precione cualquier tecla para continuar o "N" para salir:');
read (aux);
if (aux <> 'n') then
begin
clrscr;
writeln;
MUESTRA_PROV;
seek (archprov,filesize(archprov));
GOTOXY (23,4); Writeln ('**Dar de alta nuevo Proveedor**');
GOTOXY (23,8); Write ('Ingrese Nombre: ');
Readln (prov.Nom_prov);
GOTOXY (23,10); Write ('Ingrese Direccion: ');
Readln (prov.Direc_prov);
GOTOXY (23,12); Write ('Ingrese Telefono: ');
Readln (prov.Tel_prov);
Write (archprov,prov); (*Guarda en el archivo*)
close (archprov);
reset(archprov);
end;
end;
Procedure BAJA_PROV;
Var (*Variables locales*)
Cod_baja: integer; (* Variable independiente*)
aux: char;
Begin
clrscr;
gotoxy (20,7);Writeln ('**Dar de baja a Proveedor**');
gotoxy (20,8); Write ('¿Esta seguro que quiere dar de baja el proveedor? Precione cualquier tecla para continuar o "N" para salir:');
read(aux);
if(aux<>'N')then
begin
clrscr;
MUESTRA_PROV;
gotoxy (22,5);write ('**Dar de baja a Proveedor**');
gotoxy(22,6);write ('Codigo:');
readln (cod_baja);
seek (archprov,cod_baja+1);
prov.Status:='B';
end;
End;
- CREA_ARCHIVOS.zip(3,9 KB)
Valora esta pregunta


0