|
#1
|
|||
|
|||
Normalmente se usa un tabuladaor dentro del archivo txt como separador entre campos pero si entu txt viene todo pegado no va a quedar que crees una tabla interna con un solo campo tipo var y que tu funcion te lo cargue en esta tabla interna para que despues la recorras y cortes ese campo por posiciones. por el ejemplo que pusiste me imagino tu codigo es: 81, dia 25 mes 11 año 1984 lo tendra que cortar por posicion codigo = campo+00(02) . dia = campo+02(02) . mes = campo+04(02) . .. y asi como lo uses y le haces appends a tu tabla interna. Saludos.
__________________
Francisco Ramirez. consultor SAP ABAP Netweaver Queretaro, Mexico. |
#2
|
|||
|
|||
Continuacion
Mil gracias pancho, me funciono a la perfeccion, ahora requiro orientacion pues mi archivo txt tiene la sgute estructura:
001234566 11256646664664 22002265877445... ya logro llevar esta data a mi tabla interna, pero no encuentro manera de decirle que cuando una linea comience por 00 ejemplo me mueva esos datos a X tabla. Agradecido si pudieras orientarme al respecto. Saludos...!!! |
#3
|
|||
|
|||
Se me ocurre que cuando estés leyendo tu tabla interna utilices un if para validar con que empieza. es cuestión de jugar con los caracteres data: l_reg(2) type c. LOOP AT IT_tabla. * aquí mandas los primeros dos caracteres de la linea que esta leyendo a una *variable para validar que es lo que viene, *si estuviera en la posición 10 lo que quieres validar o mover seria *it_tabla+10(2) MOVE: IT_tabla(2) TO L_REG. *aqui validas if l_reg eq '00'. ..proceso elseif l_reg eq '11'. ...proceso. endif. endloop. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|