Ir al contenido

Error DBIF_RSQL_INVALID_RSQL CX_SY_OPEN_SQL_DB in program

Respuestas
2
Visitas
12
Iniciado por
damlaplata
Fecha
15 Jun 2012, 15:07
Tema anterior - Siguiente tema

damlaplata

Buen Dia Gente Sabia,
Les consulto a Uds por este error que me aparece.
Por la ST22 encontre que las causas podrian ser:
o The maximum size of an SQL statement was exceeded.
o The statement contains too many input variables.
o The input data requires more space than is available.
o ...

Y ademas me marca esta sentencia:
SELECT pep,acao,conta_debito,ccusto_debito,conta_credito, ccusto_cretito

FROM zistps_mtcd_acao

INTO TABLE tl_mtcd_acao

FOR ALL ENTRIES IN tl_perc_fae

WHERE pep IN rl_pep_ran

AND acao EQ tl_perc_fae-acao.

Yo pienso que podria ser la primera causa, ademas me fije los datos y tengo:

-La tabla Z 'zistps_mtcd_acao' tiene 258 records

-La tabla interna 'tl_perc_fae' tiene 57.

-Pero, el 'Range' rl_pep_ran' tiene 5747 records. Con lo cual la comparacion con este se hace tremenda.
Mi primera forma de encararlo es separar la sentencia where. Primero tomo por rl_pep_ran y luego filtro la tabla resultado 'tl_mtcd_acao' por tl_perc_fae-acao.

Que les parece? no se si funcionaria....eso lo mas choto porque no tengo caso con las misma cantidad de datos.
A alguien le paso esto? como lo soluciono?

Desde antemano muchas gracias por la ayuda.

Un saludo Genial.

Enrique.Borroni

Consulta....Los campos del SELECT los tienes separados por coma ","  ????
Saludos.

Atte.,
Enrique Borroni

maito : enrique.borroni@abap.es

damlaplata

no :D, fue mal tipeo....pasa que estaba viendo una cosa en SQL y se me mezclo jeejejej.....
Pero ya plantee la solucion de dividir el 'where' vamo a ver que pasa...
Gracias por Participar.
Abrazo!