PostgreSQL - Trabajar Imagen usando Power Builder con Postgres

 
Vista:

Trabajar Imagen usando Power Builder con Postgres

Publicado por Jonathan (1 intervención) el 15/07/2005 00:18:15
Le agredeceria mucho que me respondieran a la siguiente pregunta, stoy usando powerbuilder8 con postgres y no se como trabajar las imagenes, trato de jalar una imagen que se encuentra en la bd el tipo de dato en la bd es de oid, usando select blob.., y acontinuacion lo almaceno en un control picture u ole, ahy empieza mi poblema por que la imagen de la bd lo carga en la variable pero no lo puede asignar al control y me sale un error : ahi les paso el codigo para q loa chequen:

sqlca.autocommit=true

blob img

selectblob employees.photo
into :img
from employees
where employees.employeeid=1
using sqlca;

//p_1.setpicture( img)
ole_1.objectdata=img

sqlca.autocommit=false

en muchos lugares he visto q es la sentencia correcta pero no me funciona si pruebo con el picture se cierra el power y con el control ole sale un error de asignacion (R0021)

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Trabajar Imagen usando Power Builder con Postgr

Publicado por yo (1 intervención) el 21/04/2006 17:32:10
ta que fea nota won ..
lo que tienes que hacer es llevar un curso de postgres

tambien puedes pegar las fotos con un pegamento ....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Trabajar Imagen usando Power Builder con Postgr

Publicado por luis (1 intervención) el 06/12/2013 19:35:53
en verdad eres el mas idiota... de la existencia en el mundo, imbesil mediocre... si no sabes lo que se habla aqui no te mentas..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Trabajar Imagen usando Power Builder con Postgr

Publicado por mauricio (1 intervención) el 28/05/2006 20:59:23
prueba con este codigo la primera funcion de blob a archivo y la segunda de un archivo a blob yo trabajo con pb 6.5 y me funciono. esto lo encontre en internet me parecio muy interesante

saludos desde ecuador

$PBExportHeader$wf_filetoblob.srf
global type wf_filetoblob from function_object
end type

forward prototypes
global function blob wf_filetoblob (string as_filename)
end prototypes

global function blob wf_filetoblob (string as_filename);//////////////////////////////////////////////////////////////////////////
//
// Autor: ¿?
//
// E-mail:
//
// Versión: 6.5
//
// Función: Wf_FILETOBLOB
//
// Descripción: Pasa un fichero a una variable tipo BLOB
//
// Ambito: public
//
// Argumentos: as_filename //path y nombre del fichero a pasar a blob
//
// Retorna: lblb_Input NULL SI NO EXISTE EL FICHERO
// lblb_Input BLOB EN CASO CORRETO CON EL FICHERO
//
// Ejemplo:
// blob cfichero
// string docname, named
// integer value
// value = GetFileOpenName("Seleccione Fichero", docname, named, "BMP","Bitmap File (*.BMP),*.BMP,")
// IF value = 1 THEN
// cfichero=wf_filetoblob(docname)
// end if
//
//////////////////////////////////////////////////////////////////////////
Integer li_FileNum, li_Index, li_Loops
Long ll_FileLength, ll_Bytes_Read
Blob lblb_Input, lblb_Temp
// RETURN NULL SI EL FICHERO NO EXISTE
IF NOT FileExists(as_filename) THEN
SetNull(lblb_Input)
RETURN lblb_Input
END IF
ll_FileLength = FileLength(as_filename)
IF ll_FileLength > 32765 THEN
IF Mod(ll_FileLength, 32765) = 0 THEN
li_Loops = ll_FileLength / 32765
ELSE
li_Loops = (ll_FileLength / 32765) + 1
END IF
ELSE
li_Loops = 1
END IF
li_FileNum = FileOpen(as_filename, StreamMode!, Read!, LockReadWrite!)
FOR li_Index = 1 TO li_Loops
FileRead(li_FileNum, lblb_Temp)
lblb_Input = lblb_Input + lblb_Temp
NEXT
FileClose(li_FileNum)
RETURN lblb_Input

end function



ALREVES

$PBExportHeader$wf_blobtofile.srf
global type wf_blobtofile from function_object
end type

forward prototypes
global subroutine wf_blobtofile (string as_filename, blob ablb_blob)
end prototypes

global subroutine wf_blobtofile (string as_filename, blob ablb_blob);//////////////////////////////////////////////////////////////////////////
//
// Autor: ¿?
//
// E-mail:
//
// Versión: 6.5
//
// Función: Wf_BLOBTOFILE
//
// Descripción: Pasa una variable tipo BLOB fichero
//
// Ambito: public
//
// Argumentos: as_filename //path y nombre del fichero a grabar
// ablb_blob //variable tipo BLOB a convertir a fichero
//
// Retorna: none
//
//
// Ejemplo:
// blob cfichero //se supone ya con un valor usa por ejemplo wf_filetoblob para asignarla
// string docname, named
// integer value
// value = GetFileSaveName("Seleccione Fichero",docname, named, "BMP","Bitmap File (*.BMP),*.BMP,")
// IF value = 1 THEN
// wf_blobtofile(docname,cfichero)
// end if
//
//////////////////////////////////////////////////////////////////////////
Long ll_FileLength
Integer li_Loops, li_Index, li_FileNum
Blob lblb_Temp
ll_FileLength = Len(ablb_blob)
IF ll_FileLength > 32765 THEN
IF Mod(ll_FileLength, 32765) = 0 THEN
li_Loops = ll_FileLength / 32765
ELSE
li_Loops = (ll_FileLength / 32765) + 1
END IF
ELSE
li_Loops = 1
END IF
li_FileNum = FileOpen(as_filename, StreamMode!, Write!, LockReadWrite!, Replace!)
FOR li_Index = 1 TO li_Loops
lblb_Temp = BlobMid(ablb_blob, ((32765 * li_Index) - 32765 + 1), 32765)
FileWrite(li_FileNum, lblb_Temp)
NEXT
FileClose(li_FileNum)
end subroutine

si tienes alguna duda escribeme ojala te sea de ayuda

mauricio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar