#1
|
|||
|
|||
DUMP AL HACER UN SELECT - RANGE ayuda
Hola, tengo un problema, me explico....al hacer un select donde tengo como condicion a un rango me genera un dump.
RANGES: r_racct FOR glt0-racct. SELECT bukrs ryear rbusa racct drcrk SUM( hslvt ) SUM( hsl01 ) SUM( hsl02 ) SUM( hsl03 ) SUM( hsl04 ) SUM( hsl05 ) SUM( hsl06 ) SUM( hsl07 ) SUM( hsl08 ) SUM( hsl09 ) SUM( hsl10 ) SUM( hsl11 ) SUM( hsl12 ) SUM( hsl13 ) SUM( hsl14 ) SUM( hsl15 ) SUM( hsl16 ) INTO st_glt0 FROM glt0 WHERE rldnr EQ '00' "Asumimos ledger '00' AND bukrs EQ p_bukrs AND ryear EQ p_gjahr AND racct IN r_racct AND rbusa IN s_gsber GROUP BY bukrs ryear rbusa racct drcrk. APPEND st_glt0 TO ti_glt0. ENDSELECT. lo de rojo es el rango establecido, al debagear la tabla r_racct se llena con mas de 2600 registros, lo que hice fue eliminar unos cuanos y quedarme solo con 100; lo curioso es que con 100 no se cae...creo que existe un limite de regisros para un rango, espero me ayuden, gracias. |
#2
|
|||
|
|||
Si, sucede eso.
Cuando el rango es muy grande da un dump. Fijate en la descripcion del dump ahi te vas a dar cuenta. Me paso con varios reportes std. Hay que acotar esa busqueda... Slds. |
#3
|
|||
|
|||
Alternativa
Si, como ya dijo SAPING es por que el r_racct tiene muchos registros, los rangos tienen limitaciones en la cantidad de registros para los select. Como posible solución: puedes verificar su los registros de r_racct no son únicos, porque podrías borrar los registros repetidos en el rango si los hay, así puedes disminuir la cantidad de registros. Alternativa: puedes utilizar FOR ALL ENTRIES en tu select y podrás solucionar tu dump, ya que en el FOR ALL ENTRIES no hay limitaciones en la cantidad de registros. Espero que te sirva Saludos,
__________________
-- SapConexion.com Servidor SAP ECC 6.0 Acceso Remoto |
#4
|
|||
|
|||
pregunta
Saludos
makys te pregunto como va a utilizar un for all entries en un rango?????? me puedes aclara eso??? en especial cuando sea que vaya en un rango de fechas????? puede sonar muy tonta la pregunta pero me gustaria aprender ese truco |
#5
|
|||
|
|||
Hola.
asclevius una posible solución, supongo que el rango es de una pantalla de selección (select-options) entonces antes de hacer la selección que coja el rango e informe una tabla interna donde los valores sean equal, de esta manera disminuirá considerablemente la cantidad de registros del rango. si con 100 registros no se produce el dump, divide el rango de 100 en 100 y realiza la selección, no entiendo muy bien el select end select para recuperar un registro y luego hacer un append. PD: ahora mismo no tengo un sistema para poder darte alguna solución más precisa. un saludo |
Herramientas | Buscar en Tema |
Desplegado | |
|
|