Tengo el siguiente problema:
Poseo 2 tablas internas, para el momento de la consulta, una tabla (it_cal_prec) tiene 2 registros, ambos registros con 2 registros, y la otra (it_cc) posee 5 registros. En la busqueda de una consulta hago un doble loop uno para it_cal_prec donde traere datos para la consulta en el 2do loop con it_cc.
la tabla it_cal_prec posee los siguientes registros:
la tabla it_cc posee 5 registros que se ejecuran en el 2do loop
*& Form BUSCAR_CANAL
*&---------------------------------------------------------------------*
* Proceso para la busqueda de valores en canales comerciales
*----------------------------------------------------------------------*
* -->P_0418 ZPVJ
* -->P_0419 PVJ
*----------------------------------------------------------------------*
FORM buscar_canal_comercial USING value(p_0418)
value(p_0419).
LOOP AT it_cal_prec ASSIGNING <fs_cal_prec>.
LOOP AT it_cc.
v_pos = sy-tabix.
SELECT
ko~kbetr
INTO v_kbert
FROM
a913 AS a
INNER JOIN
konp AS ko
ON
a~knumh = ko~knumh
UP TO 1 ROWS
WHERE
a~datab <= p_fech AND
a~datbi >= p_fech AND
a~kschl = p_0418 AND
a~matnr = it_cal_prec-matnr AND
a~vkorg = p_orgvta AND
a~kvgr1 = it_cc-kvgr1
ORDER BY a~datbi DESCENDING.
ENDSELECT.
v_campo = '<fs_cal_prec>-' && p_0419 && '_' && v_pos.
ASSIGN (v_campo) TO <campo>.
<campo> = v_kbert.
ENDLOOP.
ENDLOOP.
ENDFORM.
al momento de terminar los 2 loops veo que me carga it_cal_prec-matnr con el mismo valor 2 veces, cuando en mi it_cal_prec en el campo matnr posee 2 valores, es decir, no cambia el valor de matnr, por ende me carga los valores 2 veces. Alguna solucion?