Ver Mensaje Individual
  #1  
Antiguo 22-08-2007
silviodp silviodp is offline
Miembro
 
Registrado: may 2003
Ubicación: General Levalle, Argentina
Posts: 277
Reputación: 22
silviodp Va por buen camino
Problemas con tabla Acces

Hola a todos, estoy haciendo una aplicacion con Delphi 5 y base de datos Acces.
Hice el siguiente procedimiento para que me llene de datos la tabla TblComprobantes para lo cual uso dos tablas mas: TblSocios y TblPeriodos.
El error que me da cuando corro el procedimiento mediantes un boton es que me dice que el campo "Numero" no puede ser modificado.
La estrcutura de la tabla TblComprobantes es la siguiente:

Numero (Numero)
Cod_socio (Numero)
Cod_periodo (Numero)
Importe (Moneda)
Estado (texto)
fecha_pago (Fecha/hora)
fecha (Fecha/hora)
Nota (Memo)

el Procedimeinto del boton Generar es:
Código:
procedure TForm17.generarClick(Sender: TObject);
var
 Periodo: Integer;
 Codigo: Integer;
 Fecha: Variant;
 cont:Integer;
 Numero:Integer;
begin
 Modulodatos.ADOConnection1.Open;
 ModuloDatos.TblSocios.Active:=True;
 ModuloDatos.TblPeriodos.Active:=True;
 ModuloDatos.TblComprobantes.Active:=True;
 ModuloDatos.TblSocios.First;
 cont:= ModuloDatos.TblSocios.RecordCount;
 Form17.ProgressBar1.Max:=cont;//Establezco el valor maximo.
 Form17.ProgressBar1.Cursor:=crHourGlass;  //Establezco el cursor de espera.
 Numero:=StrToInt(Form17.Ultimo_em.Text);  //Inicializo la vble. NUMERO.-
 Fecha:=Form17.fecha_em.Text;
 Periodo:=StrToInt(Form17.txtPeriodo.Text);
 ShowMessage (IntToStr(Numero));
 While Not ModuloDatos.TblSocios.EOF do
  begin
   Codigo:= ModuloDatos.TblSocios.FieldValues['Codigo'];
   ModuloDatos.TblComprobantes.Append;
   ModuloDatos.TblComprobantes.FieldValues['Numero']:=Numero+1;
   ModuloDatos.TblComprobantes.FieldValues['Cod_socio']:= Codigo;
   ModuloDatos.TblComprobantes.FieldValues['Cod_periodo']:=Periodo;
   ModuloDatos.TblComprobantes.FieldValues['Importe']:=6.00;
   ModuloDatos.TblComprobantes.FieldValues['Fecha']:=Fecha;
   ModuloDatos.TblComprobantes.Post;
   Form17.ProgressBar1.StepIt; //Actualizo la barra de progreso.
   Numero:= ModuloDatos.TblComprobantes.FieldValues['Numero'];
   ModuloDatos.TblSocios.Next;
 end;
 ShowMessage('El proceso a terminado correctamente');

end;
Como puedo solucionar este problema?
Gracias a todos ,saludos.
Responder Con Cita