Ver Mensaje Individual
  #6  
Antiguo 07-09-2006
bismarck_sierra bismarck_sierra is offline
Miembro
 
Registrado: ene 2004
Ubicación: Morelia, Michoacán, México
Posts: 70
Reputación: 21
bismarck_sierra Va por buen camino
Que tal

Te paso unas modificaciones, con esto te debe funcionar, haber que tal te parece.

Código Delphi [-]
Tart_imagen  = Class
  Private
    ptipinv    :integer;
    pcodart    :string;
    pcodimg    :integer;
    pdirimg    :string;
    pformato   :Variant;
    strImagen: TMemoryStream;
  Public
    Property tipinv  :integer   read ptipinv write ptipinv;
    Property codart  :string   read pcodart write pcodart;
    Property codimg  :integer   read pcodimg write pcodimg;
    Property dirimg  :string   read pdirimg write pdirimg;
    Property imagen  :tblobdata   read pimagen write pimagen;
    Property formato :string   read pformato write pformato;
    property Imagen: TMemoryStream read strImagen write strImagen;
   Constructor Create;
   procedure   Clear;
  end;

constructor Tart_imagen.Create;
begin
  inherited;
  strImagen:= TMemoryStream.Create;
  Clear;
end;

procedure Tart_imagen.Clear;
begin
  tipinv:=0;
  codart:='';
  codimg:=0;
  dirimg:='';
  imagen:=nil;
  formato:='';
  strImagen.Clear;
end;

function GetArticulo_imagen(Conexion:TADOConnection;Articulo_imagen:Tart_imagen):boolean;
var
  sw             : Boolean;
  PArtImagen   : TADODataSet;
  fldCampo: TField;
begin
  Sw:=False;
  PArtImagen := TADODataSet.Create(nil);
  PArtImagen.Connection:=Conexion;
  PArtImagen.CommandText:=' Select   tipinv,codart,codimg,dirimg,imagen,formato'+
                          ' from art_imagen '+
                          ' where tipinv = : p01 and Codart = : p02 and Codimg = : p03 ';
  PArtImagen.Parameters.ParamByName('p01').Value:=Articulo_imagen.tipinv;
  PArtImagen.Parameters.ParamByName('p02').Value:=Articulo_imagen.codart;
  PArtImagen.Parameters.ParamByName('p03').Value:=Articulo_imagen.codimg;
  PArtImagen.Open;
  PArtImagen.First;
  if not(PArtImagen.Eof) then
   begin
     Articulo_imagen.tipinv :=PArtImagen.FieldByName('tipinv').Value;
     Articulo_imagen.codart :=PArtImagen.FieldByName('codart').Value;
     Articulo_imagen.codimg :=PArtImagen.FieldByName('codesp').Value;
     Articulo_imagen.dirimg :=PArtImagen.FieldByName('dirimg').Value;
     Articulo_imagen.formato :=PArtImagen.FieldByName('formato').Value;
    fldCampo:= FieldByName('imagen');
    Articulo_imagen.strImagen:= CreateBlobStream(fldCampo, bmRead);
     SW:=True;
   end;
  PArtImagen.Close;
  PArtImagen.Free;
  Result:=sw;
end;

Última edición por bismarck_sierra fecha: 07-09-2006 a las 16:39:43.
Responder Con Cita