Ir ao conteúdo

Posts recomendados

Postado

Olá, realizando um programa para cadastro de clientes em File notei que algumas vezes o programa se recusa a apagar a database se for solicitado.

Alguém consegue dar uma força?

Lá embaixo na opção 7:

 

(Iniciante em pascal aqui.)

Program Pzim ;
	uses 
		crt;
	type
		funcionario = record
		matricula:integer;
		nome:string[50];
		cpf:string;
		rg:integer;
		titulo:integer;
		cnh:String;
		cep:integer;
		endereco:string;
		bairro:string;
		cidade:string;
		pais:string;
		sexo:char;
		uf:string[2];
		estadocivil:string;
		email:string;
		telefone:integer;
		dataa:integer;
		datad:integer;
		status:string;
	end;
	type
		dependente = record
		nome:string;
		matricula:integer;
		cpf:integer;
	end;
	const maxli=2000;
	var op,opc,mat,opr:integer; 
    	fu:funcionario;
    	de:dependente;
    	arquivo: file of funcionario;
    	dep:array[1..maxli] of dependente;
	  	func:array[1..maxli] of funcionario;
	 
			Procedure Imprimir;	 
			var linha,contador,mtt,mtt2:integer;
		begin				
					assign(arquivo, 'C:\tete\armazem.dat');
						{$I-} reset(arquivo); {$I+};
						  if ioresult <> 0 then
							  begin
							    writeln;
							    write(' Nada encontrado no arquivo!');
							    delay(1000);
							  end
						  else
							  begin
							seek(arquivo, 0);
						while not eof(arquivo) do
							  begin
							    read(arquivo, fu);
							 	textbackground(white);
					for mtt2:=1 to filesize(arquivo) do
						begin	
						gotoxy(05,linha+05);		textcolor(white);		textbackground(white);		write('                                     ' );// Início do fundo branco
						gotoxy(05,linha+06);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+07);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+08);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+09);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+10);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+11);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+12);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+13);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+14);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+15);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+16);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+17);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+18);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+19);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+20);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+21);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+22);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+23);		textcolor(white);		textbackground(white);		write('                                     ' );
						gotoxy(05,linha+24);		textcolor(white);		textbackground(white);		write('                                     ' );// Final do fundo branco
					  gotoxy(05,linha+05);		textbackground(cyan );		write(' ··································· ' );//Início das bordas
						gotoxy(05,linha+06);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+06);		textbackground(cyan );		write('· '                                    );
						gotoxy(05,linha+07);		textbackground(cyan );		write(' ··································· ' );
						gotoxy(05,linha+08);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+08);		textbackground(cyan );		write('· '                                    );		
						gotoxy(05,linha+09);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+09);		textbackground(cyan );		write('· '                                    );		
						gotoxy(05,linha+10);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+10);		textbackground(cyan );		write('· '                                    );		
						gotoxy(05,linha+11);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+11);		textbackground(cyan );		write('· '                                    );	
						gotoxy(05,linha+12);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+12);		textbackground(cyan );		write('· '                                    );		
						gotoxy(05,linha+13);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+13);		textbackground(cyan );		write('· '                                    );		
						gotoxy(05,linha+14);		textbackground(cyan ); 		write(' ·'                                    );
					  gotoxy(40,linha+14);		textbackground(cyan ); 		write('· '                                    );		
						gotoxy(05,linha+15);		textbackground(cyan ); 		write(' ·'                                    );
					  gotoxy(40,linha+15);		textbackground(cyan ); 		write('· '                                    );
						gotoxy(05,linha+16);		textbackground(cyan ); 		write(' ·'                                    );
					  gotoxy(40,linha+16);		textbackground(cyan ); 		write('· '                                    );							
						gotoxy(05,linha+17);		textbackground(cyan ); 		write(' ·'                                    );
					  gotoxy(40,linha+17);		textbackground(cyan ); 		write('· '                                    );
						gotoxy(05,linha+18);		textbackground(cyan ); 		write(' ·'                                    );
					  gotoxy(40,linha+18);		textbackground(cyan ); 		write('· '                                    );
						gotoxy(05,linha+19);		textbackground(cyan ); 		write(' ·'                                    );
					  gotoxy(40,linha+19);		textbackground(cyan ); 		write('· '                                    );
						gotoxy(05,linha+20);		textbackground(cyan ); 		write(' ·'                                    );
					  gotoxy(40,linha+20);		textbackground(cyan ); 		write('· '                                    );
						gotoxy(05,linha+21);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+21);		textbackground(cyan );		write('· '                                    );
						gotoxy(05,linha+22);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+22);		textbackground(cyan );		write('· '                                    );					
						gotoxy(05,linha+23);		textbackground(cyan );		write(' ·'                                    );
					  gotoxy(40,linha+23);		textbackground(cyan );		write('· '                                    );					
						gotoxy(05,linha+24);		textbackground(cyan );		write(' ·'                                    );
						gotoxy(40,linha+24);		textbackground(cyan );		write('· '                                    );
						gotoxy(05,linha+25);		textbackground(cyan );		write(' ·'                                    );
						gotoxy(40,linha+25);		textbackground(cyan );		write('· '                                    ); 
						gotoxy(05,linha+26);		textbackground(cyan );		write(' ·'                                    );
						gotoxy(40,linha+26);		textbackground(cyan );		write('· '                                    ); 
						gotoxy(05,linha+27);		textbackground(cyan );		write(' ·'                                    );
						gotoxy(40,linha+27);		textbackground(cyan );		write('· '                                    );
						gotoxy(05,linha+28);		textbackground(cyan );		write(' ··································· ' );//Final das bordas
						gotoxy(17,linha+06);		textbackground(white);		textcolor(black);			write('   IMPRESSÃO     ');// Título da tela
						gotoxy(08,linha+08);		textbackground(white);		textcolor(black);			write('Matrícula: '        	       );//Opções da tela
						gotoxy(08,linha+09);		textbackground(white);		textcolor(black);			write('Nome: _________________________');
						gotoxy(08,linha+10);		textbackground(white);		textcolor(black);			write('CPF: __________________________');
						gotoxy(08,linha+11);		textbackground(white);		textcolor(black);			write('RG: ___________________________');
						gotoxy(08,linha+12);		textbackground(white);		textcolor(black);			write('Título: _______________________');
						gotoxy(08,linha+13);		textbackground(white);		textcolor(black);			write('CNH: __________________________');
						gotoxy(08,linha+14);		textbackground(white);		textcolor(black);			write('CEP: __________________________');
						gotoxy(08,linha+15);		textbackground(white);		textcolor(black);			write('Endereço: _____________________');
						gotoxy(08,linha+16);		textbackground(white);		textcolor(black);			write('Bairro: _______________________');
						gotoxy(08,linha+17);		textbackground(white);		textcolor(black);			write('Cidade: _______________________');
						gotoxy(08,linha+18);		textbackground(white);		textcolor(black);			write('País: _________________________');
						gotoxy(08,linha+19);		textbackground(white);		textcolor(black);			write('Sexo: _________________________');
						gotoxy(08,linha+20);		textbackground(white);		textcolor(black);			write('UF: ___________________________');
						gotoxy(08,linha+21);		textbackground(white);		textcolor(black);			write('Estado Civil: _________________');
						gotoxy(08,linha+22);		textbackground(white);		textcolor(black);			write('E-mail: _______________________');
						gotoxy(08,linha+23);		textbackground(white);		textcolor(black);			write('Telefone: _____________________');
						gotoxy(08,linha+24);		textbackground(white);		textcolor(black);			write('Data de admissão: _____________');
						gotoxy(08,linha+25);		textbackground(white);		textcolor(black);			write('Status: _______________________');
						gotoxy(10,linha+26);		textbackground(white);		textcolor(red);				write('                          ');	
	 			   inc(linha,22);
				 	op:=0;
				 	close(arquivo);
				 end;
				end;
		end;		 
	 end; 	
 	Procedure FundoBranco;
 		begin
 			textbackground(white);
			clrscr;
			gotoxy(05,05);	textcolor(white);			textbackground(white);		write('                                     ' ); 
			gotoxy(05,06);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,07);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,08);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,09);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,10);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,11);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,12);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,13);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,14);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,15);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,16);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,17);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,18);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,19);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,20);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,21);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,22);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,23);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,24);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,25);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,26);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,27);	textcolor(white);			textbackground(white);		write('                                     ' );
			gotoxy(05,28);	textcolor(white);			textbackground(white);		write('                                     ' );
 		end;
	Procedure Bordas;
		begin
			gotoxy(05,05);		textbackground(cyan );		write(' ··································· ' );
			gotoxy(05,06);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,06);		textbackground(cyan );		write('· '                                    );
			gotoxy(05,07);		textbackground(cyan );		write(' ··································· ' );
			gotoxy(05,08);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,08);		textbackground(cyan );		write('· '                                    );		
			gotoxy(05,09);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,09);		textbackground(cyan );		write('· '                                    );		
			gotoxy(05,10);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,10);		textbackground(cyan );		write('· '                                    );		
			gotoxy(05,11);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,11);		textbackground(cyan );		write('· '                                    );	
			gotoxy(05,12);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,12);		textbackground(cyan );		write('· '                                    );		
			gotoxy(05,13);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,13);		textbackground(cyan );		write('· '                                    );		
			gotoxy(05,14);		textbackground(cyan ); 		write(' ·'                                    );
			gotoxy(40,14);		textbackground(cyan ); 		write('· '                                    );		
			gotoxy(05,15);		textbackground(cyan ); 		write(' ·'                                    );
			gotoxy(40,15);		textbackground(cyan ); 		write('· '                                    );
			gotoxy(05,16);		textbackground(cyan ); 		write(' ·'                                    );
			gotoxy(40,16);		textbackground(cyan ); 		write('· '                                    );							
			gotoxy(05,17);		textbackground(cyan ); 		write(' ·'                                    );
			gotoxy(40,17);		textbackground(cyan ); 		write('· '                                    );
			gotoxy(05,18);		textbackground(cyan ); 		write(' ·'                                    );
			gotoxy(40,18);		textbackground(cyan ); 		write('· '                                    );
			gotoxy(05,19);		textbackground(cyan ); 		write(' ·'                                    );
			gotoxy(40,19);		textbackground(cyan ); 		write('· '                                    );
			gotoxy(05,20);		textbackground(cyan ); 		write(' ·'                                    );
			gotoxy(40,20);		textbackground(cyan ); 		write('· '                                    );
			gotoxy(05,21);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,21);		textbackground(cyan );		write('· '                                    );
			gotoxy(05,22);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,22);		textbackground(cyan );		write('· '                                    );					
			gotoxy(05,23);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,23);		textbackground(cyan );		write('· '                                    );
			gotoxy(05,24);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,24);		textbackground(cyan );		write('· '                                    );
			gotoxy(05,25);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,25);		textbackground(cyan );		write('· '                                    );
			gotoxy(05,26);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,26);		textbackground(cyan );		write('· '                                    );
			gotoxy(05,27);		textbackground(cyan );		write(' ·'                                    );
			gotoxy(40,27);		textbackground(cyan );		write('· '                                    );					
			gotoxy(05,28);		textbackground(cyan );		write(' ··································· ' );
		end;
	Procedure tela;
		begin 
			FundoBranco;
			Bordas;
			gotoxy(17,06);		textbackground(white);		textcolor(black);		write(' TELA INICIAL');
			gotoxy(17,09);		textbackground(white);		textcolor(cyan);			write('1 - ');		textcolor(black);		write('REGISTRAR');
			gotoxy(17,11);		textbackground(white);		textcolor(cyan);			write('2 - ');		textcolor(black);		write('CONSULTAR');
			gotoxy(17,13);		textbackground(white);		textcolor(cyan);			write('3 - ');		textcolor(black);		write('ALTERAR'  );
			gotoxy(17,15);		textbackground(white);		textcolor(cyan);			write('4 - ');		textcolor(black);		write('ARQUIVO MORTO');
			gotoxy(17,17);		textbackground(white);		textcolor(cyan);			write('5 - ');		textcolor(black);		write('IMPRIMIR' );
			gotoxy(17,19);		textbackground(white);		textcolor(cyan);			write('6 - ');		textcolor(black);		write('SAIR'     );
			gotoxy(17,21);		textbackground(white);		textcolor(cyan);			write('7 - ');		textcolor(black);		write('APAGAR DATA BASE');
			gotoxy(11,23);		textbackground(white);		textcolor(red);			write('DIGITE A OPÇÃO DESEJADA [ ]'          );
			gotoxy(36,23);		textbackground(white);		textcolor(black);			read(op);
			
		end; 
		procedure informações;
		begin
			gotoxy(08,06);		textbackground(white);		textcolor(black);			write('   1 - Novo  2- Sair  [ ]      ');
			gotoxy(08,08);		textbackground(white);		textcolor(black);			write('Matrícula: '        	           );
			gotoxy(08,09);		textbackground(white);		textcolor(black);			write('Nome: _________________________');
			gotoxy(08,10);		textbackground(white);		textcolor(black);			write('CPF: __________________________');
			gotoxy(08,11);		textbackground(white);		textcolor(black);			write('RG: ___________________________');
			gotoxy(08,12);		textbackground(white);		textcolor(black);			write('Título: _______________________');
			gotoxy(08,13);		textbackground(white);		textcolor(black);			write('CNH: __________________________');
			gotoxy(08,14);		textbackground(white);		textcolor(black);			write('CEP: __________________________');
			gotoxy(08,15);		textbackground(white);		textcolor(black);			write('Endereço: _____________________');
			gotoxy(08,16);		textbackground(white);		textcolor(black);			write('Bairro: _______________________');
			gotoxy(08,17);		textbackground(white);		textcolor(black);			write('Cidade: _______________________');
			gotoxy(08,18);		textbackground(white);		textcolor(black);			write('País: _________________________');
			gotoxy(08,19);		textbackground(white);		textcolor(black);			write('Sexo: _________________________');
			gotoxy(08,20);		textbackground(white);		textcolor(black);			write('UF: ___________________________');
			gotoxy(08,21);		textbackground(white);		textcolor(black);			write('Estado Civil: _________________');
			gotoxy(08,22);		textbackground(white);		textcolor(black);			write('E-mail: _______________________');
			gotoxy(08,23);		textbackground(white);		textcolor(black);			write('Telefone: _____________________');
			gotoxy(08,24);		textbackground(white);		textcolor(black);			write('Data de admissão: _____________');
			gotoxy(10,25);		textbackground(white);		textcolor(red);				write('                          ');
			gotoxy(10,26);		textbackground(white);		textcolor(red);				write('                          ');	
		end;
	Procedure registroTitular;
		var cad,mat,opr:integer;
	  begin		
			FundoBranco;
			Bordas;
			informações;
		end;
	procedure cadastrar;
		var o,op,opr,z:integer;
				le:char;
				cpf:string;
		begin
			repeat
				registroTitular;
				gotoxy(31,06);read(o);
				if o=1 then
					begin
						assign(arquivo, 'C:\tete\armazem.dat');
		 					{$I-} reset(arquivo); {$I+};
		  						if ioresult <> 0 then
		   							rewrite(arquivo);
		 
		  				if filesize(arquivo) > 0 then
		   		   seek(arquivo, filesize(arquivo));	   		   
						mat:=filesize(arquivo)+1;
						gotoxy(18,08);write(mat);
						fu.matricula:=mat;
						gotoxy(18,08);write(fu.matricula);
						gotoxy(14,09);read(fu.nome); 
						gotoxy(13,10);read(fu.cpf);
						gotoxy(12,11);read(fu.rg);								
						gotoxy(16,12);read(fu.titulo);
						gotoxy(13,13);read(fu.cnh);
						gotoxy(13,14);read(fu.cep);
						gotoxy(18,15);read(fu.endereco);
						gotoxy(16,16);read(fu.bairro);
						gotoxy(16,17);read(fu.cidade);
						gotoxy(14,18);read(fu.pais);
						gotoxy(14,19);read(fu.sexo);
						gotoxy(12,20);read(fu.uf);
						gotoxy(22,21);read(fu.estadocivil);
						gotoxy(16,22);read(fu.email);
						gotoxy(18,23);read(fu.telefone);
						gotoxy(25,24);read(fu.dataa);
						gotoxy(08,06);		textbackground(white);		textcolor(black);			write('                               ');
						gotoxy(10,25);		textbackground(white);		textcolor(red);				write('1 - Salvar   2 - Cancelar');
						gotoxy(10,26);		textbackground(white);		textcolor(red);				write('Digite a opção desejada [ ]');
						gotoxy(35,26);read(opr);
						close(arquivo);
				if opr=1 then
					begin
						fu.status:='ATIVO';
								  assign(arquivo, 'C:\tete\armazem.dat');
		 								 {$I-} reset(arquivo); {$I+};
		  									if ioresult <> 0 then
									 
										seek(arquivo, filesize(arquivo));
									 
									  		write(arquivo, fu);
									  			close(arquivo);
							end;
				if opr=2 then
					dec(mat);																
					end
				else
					begin	 				
						textcolor(red);
						gotoxy(10,26);write('Saindo...');
						delay(1000);
					end;
			until (o=2);
		end;
	Procedure registroOpcao;
		begin
			FundoBranco;
			Bordas;
			gotoxy(17,06);		textbackground(white);		textcolor(black);		write('   REGISTRO');
			gotoxy(17,09);		textbackground(white);		textcolor(cyan);			write('1 - ');		textcolor(black);		write('TITULAR');
			gotoxy(17,11);		textbackground(white);		textcolor(cyan);			write('2 - ');		textcolor(black);		write('DEPENDENTE');
			gotoxy(17,13);		textbackground(white);		textcolor(cyan);			write('3 - ');		textcolor(black);		write('SAIR'  );
			gotoxy(11,21);		textbackground(white);		textcolor(red);			write('DIGITE A OPÇÃO DESEJADA [ ]'          );			
		end; 
	Procedure registroDependente;
		var x,y,r,op:integer;
				e:boolean;
		begin
			FundoBranco;
			Bordas;
			gotoxy(17,06);		textbackground(white);		textcolor(black);			write('   REGISTRO');
			gotoxy(08,09);    textbackground(white);		textcolor(black);     write(' 1 - Novo  2 - Sair  [ ] ');
			gotoxy(30,09);Read(r);
			case r of
				2:begin;
						clrscr;
						registroOpcao;
					end;	 
				1:begin
						gotoxy(08,10);		textbackground(white);		textcolor(black);			write('Matrícula:_____________________');//Opções da tela
						gotoxy(18,10); read(mat);
						if func[mat].matricula=mat then
							begin
								de.matricula:=mat;
								gotoxy(08,11);		textbackground(white);		textcolor(green);			write('Matricula Válida!');
								gotoxy(10,30);    textbackground(white);		textcolor(red);       write('Matricula em Nome de: ',func[mat].nome);
								gotoxy(10,31);    textbackground(white);		textcolor(red);       write('Matricula No Cpf: ',func[mat].cpf);
								gotoxy(08,12);		textbackground(white);		textcolor(black);			write('Nome: _________________________');
								gotoxy(15,12); Read (de.nome);
								gotoxy(08,13);		textbackground(white);		textcolor(black);			write('CPF: __________________________');
								gotoxy(13,13); Read	(de.cpf);
								gotoxy(10,25);		textbackground(white);		textcolor(red);				write('1 - Salvar   2 - Cancelar');
								gotoxy(10,26);		textbackground(white);		textcolor(red);				write('Digite a opção desejada [ ]');
								gotoxy(35,26); Read (op);
								case op of
									1:begin
											dep[mat]:=de;
											Clrscr;
											gotoxy(08,12);  Textbackground(white); 	textcolor(green);			write('Registro Salvo com Sucesso!!');
											tela;
										end;
									2:begin
											Clrscr;
											gotoxy(08,12);  Textbackground(white); 	textcolor(green);			write('Operação Cancelada!!');
											tela;
										end;
							end;
						end
						else
							begin
								gotoxy(08,11);		textbackground(white);		textcolor(red);			write('Matricula Inválida!');
								delay(750);
								registroDependente;
							end;
					end;
			end;
		end;				
	Procedure alterarOpcao;
		begin
			FundoBranco;
			Bordas;
			gotoxy(17,06);		textbackground(white);		textcolor(black);		write('   ALTERAR');
			gotoxy(17,09);		textbackground(white);		textcolor(cyan);			write('1 - ');		textcolor(black);		write('TITULAR');
			gotoxy(17,11);		textbackground(white);		textcolor(cyan);			write('2 - ');		textcolor(black);		write('DEPENDENTE');
			gotoxy(17,13);		textbackground(white);		textcolor(cyan);			write('3 - ');		textcolor(black);		write('SAIR'  );
			gotoxy(11,21);		textbackground(white);		textcolor(red);			write('DIGITE A OPÇÃO DESEJADA [ ]'          );
			gotoxy(36,21);		textbackground(white);		textcolor(black);			read(op);			
		end;
	Procedure alterarBusca;
		begin
			FundoBranco;
			Bordas;
			gotoxy(17,06);		textbackground(white);		textcolor(black);		write('BUSCA ALTERAR');
			gotoxy(17,09);		textbackground(white);		textcolor(cyan);			write('1 - ');		textcolor(black);		write('MATRÍCULA');
			gotoxy(17,11);		textbackground(white);		textcolor(cyan);			write('2 - ');		textcolor(black);		write('CPF');
			gotoxy(17,13);		textbackground(white);		textcolor(cyan);			write('3 - ');		textcolor(black);		write('SAIR'  );
			gotoxy(11,21);		textbackground(white);		textcolor(red);			write('DIGITE A OPÇÃO DESEJADA [ ]'          );
			gotoxy(36,21);		textbackground(white);		textcolor(black);			read(op);			
		end;
	Procedure BuscaCPF;
		begin
			FundoBranco;
			Bordas;
			gotoxy(17,06);		textbackground(white);		textcolor(black);		write('BUSCA POR CPF');
			gotoxy(08,09);		textbackground(white);		textcolor(cyan);			write('CPF: ');		textcolor(black);		write('__________________________');
			gotoxy(13,21);		textbackground(white);		textcolor(red);			write('DESEJA BUSCAR ?[S/N]: '          );
			gotoxy(34,21);		textbackground(white);		textcolor(black);			read(op);	
		end;
	Procedure BuscaMatricula;
				var op:integer;
						e:boolean;
						busca:integer;
		begin
			FundoBranco;
			Bordas;
			e:=false;
			gotoxy(15,06);		textbackground(white);		textcolor(black);		write('BUSCA POR MATRICULA');
			gotoxy(08,09);		textbackground(white);		textcolor(cyan);			write('MATRÍCULA: ');		textcolor(black);		write('____________________');
			gotoxy(19,09); read(busca);
  			assign(arquivo, 'C:\tete\armazem.dat');
						{$I-} reset(arquivo); {$I+};
						  if ioresult <> 0 then
							  begin
							    writeln;
							    write(' Nada encontrado no arquivo!');
							    delay(1000);
							  end
						  else
							  begin
							seek(arquivo, 0);
						while not eof(arquivo) do
							  begin
							    read(arquivo, fu);
							    if fu.matricula = busca then
							  begin
					e:=true;
					gotoxy(08,10);   textbackground(white);		textcolor(cyan);  write('Nome: ');
					gotoxy(14,10);   textbackground(white);   textcolor(black); write(fu.nome);
					gotoxy(08,11);   textbackground(white);		textcolor(cyan);  write('CPF: ');
					gotoxy(13,11);   textbackground(white);   textcolor(black); write(fu.cpf);
					gotoxy(08,12);   textbackground(white);		textcolor(cyan);  write('RG: ');
					gotoxy(12,12);   textbackground(white);   textcolor(black); write(fu.rg);
					gotoxy(08,13);   textbackground(white);		textcolor(cyan);  write('Titulo: ');
					gotoxy(16,13);   textbackground(white);   textcolor(black); write(fu.titulo);
					gotoxy(08,14);   textbackground(white);		textcolor(cyan);  write('CNH: ');
					gotoxy(12,14);   textbackground(white);   textcolor(black); write(fu.cnh);
					gotoxy(08,15);   textbackground(white);		textcolor(cyan);  write('CEP: ');
					gotoxy(12,15);   textbackground(white);   textcolor(black); write(fu.cep);
					gotoxy(08,16);   textbackground(white);		textcolor(cyan);  write('Endereço: ');
					gotoxy(17,16);   textbackground(white);   textcolor(black); write(fu.endereco);
					gotoxy(08,17);   textbackground(white);		textcolor(cyan);  write('Bairro: ');
					gotoxy(15,17);   textbackground(white);   textcolor(black); write(fu.bairro);
					gotoxy(08,18);   textbackground(white);		textcolor(cyan);  write('Cidade: ');
					gotoxy(15,18);   textbackground(white);   textcolor(black); write(fu.cidade);
					gotoxy(08,19);   textbackground(white);		textcolor(cyan);  write('Pais: ');
					gotoxy(13,19);   textbackground(white);   textcolor(black); write(fu.pais);
					gotoxy(08,20);   textbackground(white);		textcolor(cyan);  write('Sexo: ');
					gotoxy(13,20);   textbackground(white);   textcolor(black); write(fu.sexo);
					gotoxy(08,21);   textbackground(white);		textcolor(cyan);  write('UF: ');
					gotoxy(11,21);   textbackground(white);   textcolor(black); write(fu.uf);
					gotoxy(08,22);   textbackground(white);		textcolor(cyan);  write('Estado Civil: ');
					gotoxy(21,22);   textbackground(white);   textcolor(black); write(fu.estadocivil);
					gotoxy(08,23);   textbackground(white);		textcolor(cyan);  write('Email: ');
					gotoxy(15,23);   textbackground(white);   textcolor(black); write(fu.Email);
					gotoxy(08,24);   textbackground(white);		textcolor(cyan);  write('Telefone: ');
					gotoxy(17,24);   textbackground(white);   textcolor(black); write(fu.telefone);
					gotoxy(08,25);   textbackground(white);		textcolor(cyan);  write('Data de Admissão: ');
					gotoxy(25,25);   textbackground(white);   textcolor(black); write(fu.dataa);
					gotoxy(08,26);   textbackground(white);		textcolor(cyan);  write('Status: ');
					gotoxy(15,26);   textbackground(white);   textcolor(black); write(fu.status);
					gotoxy(08,27);   textbackground(white);   textcolor(black); write('1 - Consultar 2 - Sair [ ]');
					gotoxy(32,27); read(op);
					end;
				end;
			end;
					  case op of
					  			1:BuscaMatricula;
					  			2:begin
					  					close(arquivo);
					  					tela;
					  				end;
					  			end;
					  		end;
					
Begin
	tela;
	repeat
 		case op of
 			0:tela;
  		1:begin
   				clrscr;
   				registroOpcao;
   				gotoxy(36,21);		textbackground(white);		textcolor(black);			read(opc);;
					case opc of
						1:begin
								registroTitular;
								cadastrar;
							end;
						2:registroDependente;
						3:begin
								clrscr;
								tela;
							end;
					end;
				end;
			2:buscaMatricula; 
			5:begin
				imprimir;
				readkey;
			end;
			7:begin
				clrscr;
				gotoxy(15,15); textcolor(red); textbackground(white); write('Digite a senha de destruição: ');
				gotoxy(44,15); read(opr);
					if  opr=0206 then
						begin	
							assign(arquivo, 'C:\tete\armazem.dat');						
							close(arquivo); 
							erase(arquivo);
							gotoxy(15,17); write('Arquivo excluído');
							delay(1000);
							tela;
						end
					else
						tela;
		end;
	end;
		until op=6;
	clrscr;
	gotoxy(15,15);write('Sistema finalizado com sucesso!');
	delay(1000); 
End.

 

  • Membro VIP
Postado
 

Olá, realizando um programa para cadastro de clientes em File notei que algumas vezes o programa se recusa a apagar a database se for solicitado.

Alguém consegue dar uma força?

Lá embaixo na opção 7:

 

Qual erro está ocorrendo?

 

A depender, coloque para imprimir o valor do IOResult().

 

Ex.:

7:begin
  ClrScr;
  Textcolor(red); Textbackground(white);
  GotoXY(15,15); write('Digite a senha de destruição: ');
  GotoXY(44,15); {read(opr);} readln(opr);
  if opr=0206 then
    begin	
    {Assign(arquivo, 'C:\tete\armazem.dat');} //só precisa assinalar uma vez lá no início do programa
    {$I-} Close(arquivo); {$I+}
    IOCode := IOResult();
    if IOCode <> 0 then
      begin
      writeln('Deu pau no Close(). Code Error: ', IOCode);
      ReadKey();
      exit;
      end;
    {$I-} Erase(arquivo); {$I+}
    IOCode := IOResult();
    if IOCode <> 0 then
      begin
      writeln('Deu pau no Erase(). Code Error: ', IOCode);
      ReadKey();
      exit;
      end;
    GotoXY(15,17); write('Arquivo excluído');
    Delay(1000);
    {tela;}
    end
  {else}
  tela;
  end;

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!