GeneXus - Blob repetidas

   
Vista:

Blob repetidas

Publicado por Danelia Martinez (2 intervenciones) el 12/11/2007 18:55:04
Hola, mi problema es que, cuando cargo una foto utilizando un Blob y lo guardo en una carpeta lo hace, pero me repite la misma imagen como 6 veces cada una, y es un desorden porque mi aplicacion es de pura fotos y me consume como un total de 12G cuando normalmente solo me deberia consumir 1G. Que hago. Desde ya muchas gracias
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
Imágen de perfil de Patricio Ojeda V

RE:Blob repetidas

Publicado por Patricio Ojeda V (454 intervenciones) el 12/11/2007 21:54:06
No se si entendi bien pero, ¿Tienes una aplicacion que almacena imagenes y estas las dejas en una Carpeta dentro del PC?

¿Es eso? y otra cosa
¿Con que generador y DBMS trabajas?

Patricio Ojeda V
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:Blob repetidas

Publicado por Danelia (2 intervenciones) el 13/11/2007 14:36:17
Por los momentos se esta almacenando en la carpeta web de la KB, para la cual tengo dirrecionada el Blob storage path y temp media directory, que lo almacenen alli. Y cuando desde la aplicacion ya corriendo busco la imagen y la guarda, cuando voy a ver la carpeta web, se ha repetido varias veces la misma foto.
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:Blob repetidas

Publicado por ariel gonzález (1 intervención) el 14/12/2007 15:49:56
Según lo que he visto, el programa que gx genera (creo que independientemente del generador, plataforma y base de datos) escribe un archivo temporal nuevo cada vez que en un objeto se hace referencia a un att blob.

Por ejemplo, si hubiera una serie de llamadas dentro de un prc:

PBlob01.call(&clave)
PBlob02.call(&clave)
PBlob03.call(&clave)

y cada uno de ellos tuviera un for each que hiciera "algo" sobre el campo blob de un mismo registro:

for each
where clave=&clave

acciones sobre el campo (o apenas MENCIÓN del campo)
endfor

entonces, luego de terminar las tres llamadas a los PBlob0*, quedarían tres archivos temporales en la carpeta <blob storage path>

Entonces, una buena idea es "ir limpiando" esta carpeta... en función de la fecha-hora de creación de cada archivo o similar. Por ejemplo, antes de la primer llamada, eliminar de la carpeta todos los archivos que hayan sido creados hace más de un mes, una semana, un día, etc, según le sirva a tu aplicación.

Espero la info sirva. Veo que el post tiene un mes, pero llegué a esta página "sin querer", buscando otra cosa.
Saludos!
Ariel González.
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

Saludos..me ayudan un poquito BLOB

Publicado por stone (4 intervenciones) el 14/01/2008 16:56:28
hola como estan todos, tengo un pequelo percance cuando intento grabar archivos en un campo BLOB con Genexus 8.0 utilizando Oracle 9i.

Mi trasnaccion es la siguiente:
ArchID -- numeric(4.0)
ArchData -- BLOB

y hago un porcedimiento para insertar NewFile, que contiene

New
ArchID = 1
ArchData = 'C:file.doc'
Endnew

Luego de mi webpanel llamo a este procedimiento que contiene la ruta del file, ahora seteo la parte de BLOBO STORAGE PATH = /temp (esta ruta tengo duda si es la que esta dentro de la KB o en el servdor web servlet ???), en mi caso cree una carpeta en la carpetra donde esta la KB (/temp).
Luego ejecuto el procedimiento desde mi webpanel y recibo este error por parte de genexus u oracle...
-------------------------------------------------ERROR----------------------------
500 Servlet Exception
javax.servlet.ServletException: java.lang.AbstractMethodError: oracle.jdbc.driver.OracleResultSetImpl.getBlob(I)Ljava/sql/Blob;
at com.genexus.db.driver.GXResultSet.getBlob(Unknown Source)
at com.genexus.db.BlobUpdateCursor.postExecuteInsert(Unknown Source)
at com.genexus.db.BlobUpdateCursor.postExecute(Unknown Source)
at com.genexus.db.DataStoreProvider.execute(Unknown Source)
at anewfile.execute_int(anewfile.java:77)
at anewfile.execute(anewfile.java:57)
at pnewfile.execute_int(pnewfile.java:64)
at pnewfile.execute(pnewfile.java:55)
at hwevaina_impl.E11DX2(hwevaina_impl.java:323)
at hwevaina_impl.wsdx2(hwevaina_impl.java:165)
at hwevaina_impl.webExecute(hwevaina_impl.java:48)
at com.genexus.webpanels.GXWebObjectBase.doExecute(Unknown Source)
at hwevaina.doExecute(hwevaina.java:29)
at com.genexus.webpanels.GXWebObjectStub.callExecute(Unknown Source)
at com.genexus.webpanels.GXWebObjectStub.doPost(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:165)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
at com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
at com.caucho.server.http.Invocation.service(Invocation.java:315)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:246)
at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:163)
at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
at java.lang.Thread.run(Thread.java:619)

La verdad no se a que se deba, las aplicaciones web que corro estan bien salvo esta prueba de insercion de campos BLOB que no me funciona..

Alguien que me pueda ayudar o que haya tenido el mismo probvlema le estare muy agardecido y saludos a todos.

Atte Jorge
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

Saludos..me ayudan un poquito BLOB

Publicado por stone (4 intervenciones) el 14/01/2008 16:58:59
hola como estan todos, tengo un pequelo percance cuando intento grabar archivos en un campo BLOB con Genexus 8.0 utilizando Oracle 9i.

Mi trasnaccion es la siguiente:
ArchID -- numeric(4.0)
ArchData -- BLOB

y hago un porcedimiento para insertar NewFile, que contiene

New
ArchID = 1
ArchData = 'C:file.doc'
Endnew

Luego de mi webpanel llamo a este procedimiento que contiene la ruta del file, ahora seteo la parte de BLOBO STORAGE PATH = /temp (esta ruta tengo duda si es la que esta dentro de la KB o en el servdor web servlet ???), en mi caso cree una carpeta en la carpetra donde esta la KB (/temp).
Luego ejecuto el procedimiento desde mi webpanel y recibo este error por parte de genexus u oracle...
-------------------------------------------------ERROR----------------------------
500 Servlet Exception
javax.servlet.ServletException: java.lang.AbstractMethodError: oracle.jdbc.driver.OracleResultSetImpl.getBlob(I)Ljava/sql/Blob;
at com.genexus.db.driver.GXResultSet.getBlob(Unknown Source)
at com.genexus.db.BlobUpdateCursor.postExecuteInsert(Unknown Source)
at com.genexus.db.BlobUpdateCursor.postExecute(Unknown Source)
at com.genexus.db.DataStoreProvider.execute(Unknown Source)
at anewfile.execute_int(anewfile.java:77)
at anewfile.execute(anewfile.java:57)
at pnewfile.execute_int(pnewfile.java:64)
at pnewfile.execute(pnewfile.java:55)
at hwevaina_impl.E11DX2(hwevaina_impl.java:323)
at hwevaina_impl.wsdx2(hwevaina_impl.java:165)
at hwevaina_impl.webExecute(hwevaina_impl.java:48)
at com.genexus.webpanels.GXWebObjectBase.doExecute(Unknown Source)
at hwevaina.doExecute(hwevaina.java:29)
at com.genexus.webpanels.GXWebObjectStub.callExecute(Unknown Source)
at com.genexus.webpanels.GXWebObjectStub.doPost(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:165)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
at com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
at com.caucho.server.http.Invocation.service(Invocation.java:315)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:246)
at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:163)
at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
at java.lang.Thread.run(Thread.java:619)

La verdad no se a que se deba, las aplicaciones web que corro estan bien salvo esta prueba de insercion de campos BLOB que no me funciona..

Alguien que me pueda ayudar o que haya tenido el mismo probvlema le estare muy agardecido y saludos a todos.

Atte Jorge
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