by QAZWSX2K » Sat Mar 30, 2013 4:33 pm
agradezcos sus respuestas pero la cosa es mas compleja de lo que parece, sucede que dentro del campo blob que deseo leer existe toda una estructura, que es la siguiente:
RegCostos = Record
CodeCompra : String[50]; //Utilizado en el modulo de compras y el generador de reportes solo ejecucion
VImpuesto1 ,
VImpuesto2 : Boolean; //Impuestos Activados
CostoAnteriorBs ,
CostoAnteriorEx ,
CostoActualBs ,
CostoActualEx ,
CostoPromedioBs ,
CostoPromedioEx ,
MImpuesto1 ,
MImpuesto2 : Currency;
PorcentImp1 ,
Exento1 ,
PorcentImp2 ,
Exento2 : Boolean;
FechaVencimiento: TDateTime; //Lo uso en el modulo de compras para incluir el vencimiento
NumeroDeLote : String[42]; //y el numero de lote de los productos con costos por lote
CostoReferencia : Double; //Costo de referencia para aumentar los precios
Precios : RegDePrecios;
por si se complica mas, el campo precios que esta dentro del blob es un array, entonces necesito leer ese array
en delphi se haria asi:
if FX_FIXED.FindKey('B',XXXXX); Codigo del producto
if OkR then
begin
SourceField :=FX_FIXED.FindField('FX_COSTOS');
Try
BlobStreamData :=TDBISAMBlobStream.Create(TBlobField(SourceField),bmRead);
BlobStreamData.Seek(0,0);
BlobStreamData.Read(CostosProducto,SizeOf(CostosProducto)); //CostosProducto : RegCostos
Finally
BlobStreamData.Free;
end;
end;
otra manera
SourceField :=FX_FIXED.FindField('FX_COSTOS'); //este es el campo del registro que llamamos al hacer la consulta
// aqui utilizamos blobstream.create para convertir en stream el campo BlobStreamData:=TDBISAMBlobStream.Create(TBlobField(SourceField),bmRead);
BlobStreamData.Seek(0,0);
BlobStreamData.Read(CostosProducto,SizeOf(CostosProducto));aqui le decimos que lea el record de arriba que se llama regcostors //CostosProducto : RegCostos
costosproducto es una variable tipo regcostos
regcostos es el record donde se van a almacenar los "campos" que estas sacando de esecampo (fx_costos) el cual contiene un campo llamado precios que es el que te interesa,este campo es de tipo regdeprecios que es un array que contiene los 6 precios, 6 costos etc
RegDePrecios = Array[1..6] of RegUnPrecio;
como hago eso en equivalente fivewin, gracias y a ver quien se le mide a esto
Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian
alex_patino74@hotmail.comwhatsapp 57+3214777217