Opción 1:
Puede ser que el Dataset esté cerrado y por eso la función numero_a devuelva 0.
Código Delphi
[-]procedure tfac.Numero_A;{incremento a el Nº de la Factura 1 mas} begin na:=0; datos.Historial_Factura.Last; inc(na); na:=na+datos.Historial_FacturaNumero_a.Value ; end;
Opción 2:
Luego de hacer el Post, quizás deberías hacer un Refresh o un Close;Open; de la tabla Historial_Factura, para refrescar los datos y que la función Numero_A funcione correctamente.
Código Delphi
[-]
with datos do begin
historial_factura.Insert;
Historial_FacturaVendedor.Value := dbedit10.Text ;
Historial_FacturaTipodeComprobante.Value := Tipo_Comprobantesdescripcion.Value;
Historial_FacturaLetraComprobante.Value := Letra_CompLetra.Value;
Historial_FacturaFechadeEmision.Value := Trunc(Now);
Historial_FacturaCodigo_de_Cliente.Value:= ClientesCodigodeCliente.Value;
Historial_FacturaNombre_Apellido_Cliente.value:= ClientesNombre_Apellido.Value;
Historial_FacturaForma_de_Pago.Value:= cond_ventaDescripcion.Value;
Historial_FacturaSubtotal.Value:= FFac_SubTotal;
Historial_Facturatotal.Value:= FFac_Total;
Historial_facturaNumero_presupuesto.Value:=NP;
historial_FacturaNumero_A.Value:=NA;
Historial_FacturaNumero_B.Value:=NB;
Historial_FacturaNumero_c.Value:=NC;
datos.Historial_Factura.Post;
datos.Historial_Factura.Close;
datos.Historial_Factura.Open;