PDA

Ver la Versión Completa : Problema con Smartform con muchos datos.


txuski84
29/05/12, 10:33:15
Bueno, tengo un problema desde hace varios días con un smartform y no consigo solucionarlo. Necesito ayuda urgentemente ya que estoy malgastando mucho tiempo y es un poco frustrante.

La cosa es que tengo un ALV con los datos de un ejercicio entero y son muchas lineas, de echo tarda un ratillo en visualizar el listado.
Pues bien tengo 2 botones, uno es para visualizar un smartform con estos datos con una plantilla que el cliente me pasó y la otra opción es un botón para bajar este mismo smartform a un PDF en la ruta seleccionada por el usuario.

Al darle a cualquiera de los dos botones lanzando el informe anual me sale un dump "No more storage space available for extending an internal table.".

No puedo visualizar el smartform, no puedo generar una orden de spool, no puedo generar el PDF,... cualquier cosa que hago a parte de tardar un buen rato me sale este dump.

Necesito vuestra ayuda ...


Gracias de antemano. ;)

Melandry
29/05/12, 11:06:50
Hola:
Mira a ver si te ayuda este enlace no es tu mismo caso, pero igual te puede ayudar.
http://scn.sap.com/thread/1192562
Saludos.

txuski84
29/05/12, 11:14:25
Hola:
Mira a ver si te ayuda este enlace no es tu mismo caso, pero igual te puede ayudar.
http://scn.sap.com/thread/1192562
Saludos.


Por lo que veo comentan 2 posibles soluciones...

- Pedir a basis que aumenten la memoria. Cosa imposible en este caso.

- Borrar los datos de las tablas temporales y liberar memoria. Ni idea de como hacerlo...

Melandry
29/05/12, 11:26:17
Exacto.
En cuanto a la segunda opción, lo que te diría es que revisaras todas las tablas internas que uses como tablas temporales de datos y hagas un free.
Esto libera la memoria asignada a dichas tablas (con clear no vale, borra el contenido pero sigue con el espacio de memoria reservado), y a lo mejor ganas espacio ya que tu tabla resultado es muy grande.
Un saludo.

txuski84
29/05/12, 12:33:03
Exacto.
En cuanto a la segunda opción, lo que te diría es que revisaras todas las tablas internas que uses como tablas temporales de datos y hagas un free.
Esto libera la memoria asignada a dichas tablas (con clear no vale, borra el contenido pero sigue con el espacio de memoria reservado), y a lo mejor ganas espacio ya que tu tabla resultado es muy grande.
Un saludo.

Voy vaciando y liberando todas las tablas internas paso a paso para no ocupar memoria, pero nada, sigue sin funcionar...

¿Alguna otra idea?

Melandry
29/05/12, 14:42:39
Lo único que se me ocurre es que revises si dentro del SF haces algun otro tipo de cálculo o consultas o si le pasas directamente los datos a mostrar, y que probaras a pasar tablas mas pequeñas para ver si lo hace correctamente.
Si haces mas consultas dentro del SF, prueba también a liberar mermoria.
En cuanto al uso racional de la memoria, se me ocurren dos cosas con las que a lo mejor puedes mejor algo, diseñar tus tablas internas con los campos a usar y evitar SELECT *, y si tienes sentencias FOR ALL ENTRIES chequear que tu tabla no esté vacía.
Siento no poder ayudarte mas.

txuski84
30/05/12, 18:46:34
Ya lo he solucionado...

Al final no era nada de lo que pensábamos, no se porque me dio por quitar el logotipo de la empresa y lo lancé el smartform. Curiosamente se ejecuto bien.

El informe sacaba 900 paginas así que 900 logos a todo color y bastante grandecito, consumía bastante memoria.

Al final he optado por poner el logotipo mas pequeño y en blanco y negro y visualiza el formulario de todo el ejercicio sin problemas.