|
#1
|
|||
|
|||
Data Set
Tengo que leer y procesar un archivo plano con longitud variable con tabulación para la separación de campos, pero el proceso me cancela cuando intenta hacer el READ de c/u de las líneas para insertarlas en una tabla interna.
El error que me está dando dice algo del juego de caracteres, como que no pude interpretar determinado caracter y convertirlo. ¿Aguna idea? OPEN DATASET pFile FOR INPUT IN LEGACY TEXT MODE CODE PAGE '4110' . " '4103'. IF SY-SUBRC <> 0. MESSAGE E000(ZFI_RET) with pfile. ENDIF. DO. READ DATASET pfile INTO recline. append recLine to REC_AUX. IF sy-subrc <> 0. EXIT. ENDIF. ENDDO. Texto breve A character set conversion is not possible. ¿Qué ha sucedido? At the conversion of a text from codepage '4110' to codepage '4103': - a character was found that cannot be displayed in one of the two codepages; - or it was detected that this conversion is not supported The running ABAP program 'ZFI_RET_UPDEXENCION' had to be terminated as the conversion would have produced incorrect data. The number of characters that could not be displayed (and therefore not be converted), is 1. If this number is 0, the second error case, as mentioned above, has occurred. ¿Qué puede hacer? Please make a note of the actions and input which caused the error. - To resolve the problem, contact your SAP system administrator. With transaction ST22 for the ABAP dump analysis, you can analyze and administrate termination messages, or store them for a longer time period. If you were requested by the application to enter a codepage, the termination may be avoided after the restart of the application if you enter a different codepage. If characters could not be converted: Please use transaction SCP to analyse the codepages used by you. Search for characters you wanted to convert, which are not entered in the table. (If you changed a codepage, you can use transaction SP12 to invalidate the character set buffer (CCC). You find further help tools to codepages in transaction SNLS. Anál.errores An exception occurred that is explained in detail below. The exception, which is assigned to class 'CX_SY_CONVERSION_CODEPAGE', was not caught in procedure "CARGAR_ARCHIVO" "(FORM)", nor was it propagated by a RAISING clause. Since the caller of the procedure could not have anticipated that the exception would occur, the current program is terminated. The reason for the exception is: Characters are always displayed in only a certain codepage. Many codepages only define a limited set of characters. If a text from a codepage should be converted into another codepage, and if this text contains characters that are not defined in one of the two codepages, a conversion error occurs. Moreover, a conversion error can occur if one of the needed codepages '4110' or '4103' is not known to the system. If the conversion error occurred at read or write of screen, the file name was '/home/exenciones/exenciones.txt'. (further information about the file: "X 248 152976rwxrwx---200912030929092009120221320820091202213555") Notas para corregir errores If the error occures in a non-modified SAP program, you may be able to find an interim solution in an SAP Note. If you have access to SAP Notes, carry out a search with the following keywords: "CONVT_CODEPAGE" "CX_SY_CONVERSION_CODEPAGE" "ZFI_RET_UPDEXENCION" or "ZFI_RET_UPDEXENCION" "CARGAR_ARCHIVO" If you cannot solve the problem yourself and want to send an error notification to SAP, include the following information: 1. The description of the current problem (short dump) To save the description, choose "System->List->Save->Local File (Unconverted)". 2. Corresponding system log Display the system log by calling transaction SM21. Restrict the time interval to 10 minutes before and five minutes after the short dump. Then choose "System->List->Save->Local File (Unconverted)". 3. If the problem occurs in a problem of your own or a modified SAP program: The source code of the program In the editor, choose "Utilities->More Utilities->Upload/Download->Download". 4. Details about the conditions under which the error occurred or which actions and input led to the error. The exception must either be prevented, caught within proedure "CARGAR_ARCHIVO" "(FORM)", or its possible occurrence must be declared in the RAISING clause of the procedure. To prevent the exception, note the following: Propiedades fichero /home/exenciones/exenciones.txt Autorizaciones rwxrwx--- Modificado el 02.12.2009 21:32:08 Último acceso 03.12.2009 09:29:09 Última modif.status 02.12.2009 21:35:55 Tam. 152976 Byte Posición actual 248
__________________
Gustavo A. Biglia Consultor SAP FI |
#2
|
|||
|
|||
Has probado a poner enconding default?
|
#3
|
||||
|
||||
al especificar el CODE PAGE '4110' estas determinando como leer el archivo a nivel de bytes, tal vez el archivo no respete este ordenamiento, proba quitando el adicional LEGACY y dejalo así
__________________
Sebastián Chiavia |
#4
|
|||
|
|||
Seba:
Así estaba abierto el archivo originalmente y también cancelaba. Ahora estoy probando con diferentes alternativas * OPEN DATASET pFile FOR INPUT IN TEXT MODE ENCODING DEFAULT. * OPEN DATASET pFile FOR INPUT IN TEXT MODE ENCODING UTF-8. * OPEN DATASET pFile FOR INPUT IN LEGACY TEXT MODE CODE PAGE '4110'. OPEN DATASET pFile FOR INPUT IN LEGACY TEXT MODE CODE PAGE '4110' . " '4103'.
__________________
Gustavo A. Biglia Consultor SAP FI |
#5
|
|||
|
|||
Les adjunto el archivo para que puedan analizarlo. Como ya comenté el error lo arroja al intentar leer el segundo registro
rg830.zip Saludos, desde ya muchísimas gracias...
__________________
Gustavo A. Biglia Consultor SAP FI |
#6
|
||||
|
||||
Holas, una vez me sucedio algo parecido, tal vez puede q sea el atributo del programa, tiene activado el check de "Verif.unicode activa"?
__________________
David Carballido Córdova |
Herramientas | Buscar en Tema |
Desplegado | |
|
|