Ver Mensaje Individual
  #6  
Antiguo 09-09-2003
frankmch frankmch is offline
Miembro
 
Registrado: jul 2003
Ubicación: venezuela
Posts: 76
Reputación: 21
frankmch Va por buen camino
Thumbs up

muchas gracias a todos por interesarse, pero he aqui una solucion que logre construir, aunque confieso que no me convence mucho, hasta ahora es lo que he logrado.
reconosco debo pulir un poco mas la idea...

procedure TForm1.Button2Click(Sender: TObject);

type
RegUnPrecio = Record
PorcUtil,PorcUtilEx : Boolean;
Utilidad,UtilidadEx,SinImpuesto,MtoImpuesto1,MtoImpuesto2 ,
TotalPrecio ,TotalPrecioEx: Currency;
TipoRound : Byte;
end;

RegCostos = Record
CodeCompra : String[50];
VImpuesto1 ,
VImpuesto2 : Boolean;
CostoAnteriorBs ,
CostoAnteriorEx ,
CostoActualBs ,
CostoActualEx ,
CostoPromedioBs ,
CostoPromedioEx ,
MImpuesto1 ,
MImpuesto2 : Currency;
PorcentImp1 ,
Exento1 ,
PorcentImp2 ,
Exento2 : Boolean;
FechaVencimiento: TDateTime;
NumeroDeLote : String[50];
Precios : Array[1..6] of RegUnPrecio;
end;
var
registro:regcostos;
Stream1 : tStream;
begin
//inicializar el registro...
dbisamtable1.Open;
dbisamtable1.edit;
Stream1 :=DBISAMTable1FX_COSTOS.DataSet.CreateBlobStream(DBISAMTable1FX_COSTOS,bmread); //creo una variable blob para lectura
stream1.read(registro,Sizeof(registro));//leo la variable blob en mi record

label3.Caption:=floattostr(registro.Precios[1].SinImpuesto);//imprimo en valor (opcional)
stream1.Free; //libero el stream, no se por que. lo recomienda borland


Stream1 :=DBISAMTable1FX_COSTOS.DataSet.CreateBlobStream(DBISAMTable1FX_COSTOS,bmwrite); //instancio un nuevo stream en modo de escritura

registro.Precios[1].SinImpuesto:=strtofloat(label3.Caption)+500;
stream1.Write(registro,Sizeof(registro)); //actualizo en registro



dbisamtable1.Post; //grabo en la tabla

end;




si `pueden brindar alguna sugerencia estare argadecido...
__________________
ing. frankmch
Responder Con Cita