Buenas noches amigos, para comenzar me disculpo por la ausencia, la red aquí en Venezuela ha estado bastante inestable. Ahora bien me gustaría comentarles mi duda para ver si alguno me da una idea de lo que debo hacer.
Practico actualmente con un minisap virtualizado que encontré en internet, alguien de mi trabajo me sugirió un ejercicio que comento por orden.
1.- Crear una tabla transparente con la misma estructura que la HRP1000 (esa parte pude hacerla).
2.- Me piden copiar los datos de la HRP1000 a mi tabla Z_HRP1000 (eso también lo pude hacer por medio de tablas internas).
Mi actual problema que no he podido solucionar.
3.- Luego como pude copiar eso, el amigo me pidió otro ejercicio de copiar los datos a mi tabla Z_HRP1000, pero que cada 500 registros que copie, el programa me haga un “COMMIT WORK” y continúe con la copia de los datos, esto con el fin de asentar los cambios y liberar memoria.
He intentado con “insert” en estructuras repetitivas pero obviamente me da error porque sobreescribe información.
¿Alguno tendrá una idea con la que pudiera orientarme a realizar esto?
Muchas gracias amigo @sconoredhot yo lo estuve intentando y mis 2 errores fueron:
1.- Confusión tonta en los ciclos (soy noob en esto de abap jeje).
2.- Que al hacer el “insert” a mi tabla transparente(zcm_hrp1000 que es la copia de la hrp1000 que había creado anteriormente) lo hacia desde mi tabla interna y obviamente ésta estaba cargada con todos los datos de la “hrp1000” (ese error si me di cuenta y lo solucione haciendo el “insert” desde mi “work area”, de ese modo insertaba un registro a la vez.
Por otro lado, le comente mis dudas y errores al amigo que me dio el ejercicio y pude solucionar lo del “commit work” de una manera mucho mas sencilla, destaco que tu solución la entiendo solo un poco y la probaré a ver como me resulta, pero en cuanto a mi consulta ya esta solucionada, de hecho se hizo de la siguiente manera:
SELECT * FROM hrp1000 INTO TABLE it_tab1000.
LOOP AT it_tab1000 INTO wa_hrp1000.
INSERT zcm_hrp1000 FROM wa_hrp1000.
ivar = ivar + 1.
IF ivar = 500.
COMMIT WORK.
CLEAR ivar. " limpiar contador
ENDIF.
ENDLOOP.
COMMIT WORK.
De verdad muchas gracias, puedo dar el post por cerrado.