MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 06/04/16, 22:18:41
jcortegana1993 jcortegana1993 is offline
Junior Member
 
Fecha de Ingreso: abr 2016
Mensajes: 8
Question Error que no puedo identificar en ABAP

Estoy intentando crear un archivo de texto plano a partir de un reporte ya creado, y al querer generar me sale el siguiente error, no se a que se debe en otro programa no ocaciona ningun error, que podria ser:

este es el error:

A line of "PI_SALDOS" and "GTD_DATA_SALDOS" are not mutually convertible. In a Unicode program, "PI_SALDOS" must have the same structure layout as "GTD_DATA_SALDOS". Irrespective of the length of a Unicode character. Unicode character.
Responder Con Cita
  #2  
Viejo 07/04/16, 13:35:33
Avatar de Jesicka_21
Jesicka_21 Jesicka_21 is offline
Junior Member
 
Fecha de Ingreso: sep 2013
Mensajes: 15
Error

Buen día,

Podrías pasar el código así vemos exactamente que es lo que esta fallando? Tal vez sea cambiar un type por un like line of.
__________________
Saludos!,

Jess.

"...Puedes llegar a cualquier parte, siempre y cuando andes lo suficiente..."
Responder Con Cita
  #3  
Viejo 07/04/16, 15:35:32
jcortegana1993 jcortegana1993 is offline
Junior Member
 
Fecha de Ingreso: abr 2016
Mensajes: 8
Question Este es el codigo

*{@Jhohan


*&---------------------------------------------------------------------*
*& Form generar_archivos_control_sal
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->PI_SALDOS text
*----------------------------------------------------------------------*
FORM generar_archivos_control_sal USING pi_saldos LIKE gtd_faglflext[].
DATA: ls_lines TYPE i, ls_reg(15) TYPE c, ls_hora(8) TYPE c,
ls_fecha LIKE sy-datum.

* PERFORM calcular_fecha CHANGING
ls_fecha = sy-datum.

* Archivo de control de saldos
CLEAR: ls_lines, ls_reg, ls_hora.
DESCRIBE TABLE pi_saldos LINES ls_lines.
ls_reg = ls_lines.
CONDENSE ls_reg. UNPACK ls_reg TO ls_reg.

CONCATENATE sy-uzeit+0(2) sy-uzeit+2(2) sy-uzeit+4(2)
INTO ls_hora SEPARATED BY ':'.

gtd_ctrl_sal-data+0(1) = space.
gtd_ctrl_sal-data+1(30) = space.
gtd_ctrl_sal-data+31(30) = space.
gtd_ctrl_sal-data+61(30) = space.
gtd_ctrl_sal-data+91(2) = '00'.
gtd_ctrl_sal-data+93(30) = space.
gtd_ctrl_sal-data+123(3) = '000'.
gtd_ctrl_sal-data+126(3) = '000'.
gtd_ctrl_sal-data+129(20) = ' 00000000000000.0000'.
gtd_ctrl_sal-data+149(15) = ls_reg.
gtd_ctrl_sal-data+164(8) = ls_fecha.
gtd_ctrl_sal-data+172(8) = ls_hora.
APPEND gtd_ctrl_sal.
CLEAR gtd_ctrl_sal.

ENDFORM. "generar_archivos_control_sal





*&---------------------------------------------------------------------*
*& Form descargar_archivos
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->PI_SALDOS text
* -->PI_CTRL_SAL text
*----------------------------------------------------------------------*
FORM descargar_archivos USING pi_saldos LIKE gtd_faglflext[]
pi_ctrl_sal LIKE gtd_ctrl_sal[].

DATA: ls_directorio LIKE rlgrap-filename.

* Archivo de Saldos
CLEAR ls_directorio.
CONCATENATE gs_ruta gs_broad_sal '.TXT' INTO ls_directorio.

* OPEN DATASET ls_directorio FOR OUTPUT IN TEXT MODE ENCODING DEFAULT. "-@0003
OPEN DATASET ls_directorio FOR OUTPUT IN TEXT MODE ENCODING UNICODE
IGNORING CONVERSION ERRORS. "+@0003
LOOP AT pi_saldos INTO gtd_data_saldos.
TRANSFER gtd_data_saldos TO ls_directorio.
ENDLOOP.
CLOSE DATASET ls_directorio.

* Archivo de Contol de Saldos
CLEAR ls_directorio.
CONCATENATE gs_ruta gs_broad_sal '_CTRL.TXT' INTO ls_directorio.

* OPEN DATASET ls_directorio FOR OUTPUT IN TEXT MODE ENCODING DEFAULT "-@0003
OPEN DATASET ls_directorio FOR OUTPUT IN TEXT MODE ENCODING NON-UNICODE
IGNORING CONVERSION ERRORS. "+@0003
LOOP AT pi_ctrl_sal INTO gtd_data_ctrl_sal.
TRANSFER gtd_data_ctrl_sal TO ls_directorio.
ENDLOOP.
CLOSE DATASET ls_directorio.

ENDFORM. "descargar_archivos

*}@Jhohan

e intentado cambiarlo pero no se me sale el mismo error
Responder Con Cita
  #4  
Viejo 07/04/16, 15:49:06
Avatar de Jesicka_21
Jesicka_21 Jesicka_21 is offline
Junior Member
 
Fecha de Ingreso: sep 2013
Mensajes: 15
Tipo de gtd_data_saldos

Como definiste gtd_data_saldos?
__________________
Saludos!,

Jess.

"...Puedes llegar a cualquier parte, siempre y cuando andes lo suficiente..."
Responder Con Cita
  #5  
Viejo 07/04/16, 16:02:18
jcortegana1993 jcortegana1993 is offline
Junior Member
 
Fecha de Ingreso: abr 2016
Mensajes: 8
Question Decalaracion

*&--------------------------------------------------------------------&*
*& T A B L A S I N T E R N A S G L O B A L E S &*
*&--------------------------------------------------------------------&*
gtd_data_saldos TYPE ty_data_saldos WITH HEADER LINE,



*&--------------------------------------------------------------------&*
*& T I P O S T A B L A S G L O B A L E S &*
*&--------------------------------------------------------------------&*

TYPES: ty_data_saldos LIKE TABLE OF l_data_sal,
ty_ctrl_sal LIKE TABLE OF l_data_sal,
ty_data_ctrl_sal LIKE TABLE OF l_data_sal.

*&--------------------------------------------------------------------&*
*& T I P O S G L O B A L E S &*
*&--------------------------------------------------------------------&*

DATA: BEGIN OF l_data_sal,
data(990) TYPE c,
END OF l_data_sal.

Esa es la declaracion completa.
Responder Con Cita
  #6  
Viejo 07/04/16, 17:07:24
alvarops90 alvarops90 is offline
Junior Member
 
Fecha de Ingreso: abr 2012
Mensajes: 13
Buenos días,

No he revisado el código entero pero estas haçaciendo un loop de PI_Datos en gtd _data_saldos ("LOOP AT pi_saldos INTO gtd_data_saldos").

Te has asegurado que a estructura de datos de pi_datos de tipo gtd_data_saldos? Puedes pasar donde has declarado pi_saldos?.

Un saludo.
Responder Con Cita
  #7  
Viejo 07/04/16, 18:02:05
Avatar de Jesicka_21
Jesicka_21 Jesicka_21 is offline
Junior Member
 
Fecha de Ingreso: sep 2013
Mensajes: 15
Smile Tipo gtd_faglflext

Para mi el problema es la declaración de esta línea (PI_SALDOS) el cual no estoy viendo en el código que mandaste.

Veo que PI_SALDOS tiene la siguiente declaración:

pi_saldos LIKE gtd_faglflext[]

No estoy viendo como esta armado gtd_faglflext. Pero puede ser que no este armado de la misma manera que gtd_data_saldos, ya que esta de la siguiente forma:

DATA: BEGIN OF l_data_sal,
data(990) TYPE c,
END OF l_data_sal.

Corrobora eso o seguimos investigando que puede ser.
__________________
Saludos!,

Jess.

"...Puedes llegar a cualquier parte, siempre y cuando andes lo suficiente..."
Responder Con Cita
  #8  
Viejo 07/04/16, 20:12:38
jcortegana1993 jcortegana1993 is offline
Junior Member
 
Fecha de Ingreso: abr 2016
Mensajes: 8
Unhappy Ya encpontre el error pero se al llegar al loop no pasa los datos

LLegue a ejecutar el programa pero al momento que entra al loop me gennera otro error

Err.tmpo.ejec. UC_OBJECTS_NOT_CHARLIKE
Fecha y hora 07.04.2016 15:04:49

y no manda los datos al archivo.
Responder Con Cita
  #9  
Viejo 07/04/16, 20:42:31
Avatar de Jesicka_21
Jesicka_21 Jesicka_21 is offline
Junior Member
 
Fecha de Ingreso: sep 2013
Mensajes: 15
cl_abap_container_utilities=>fill_container_c

Podrías probar con lo siguiente:

data: ls_string(1000).

LOOP AT pi_saldos
INTO gtd_data_saldos.

CALL METHOD cl_abap_container_utilities=>fill_container_c
EXPORTING
im_value = gtd_data_saldos
IMPORTING
ex_container = ls_string
EXCEPTIONS
illegal_parameter_type = 1
OTHERS = 2.

IF sy-subrc is initial.

TRANSFER ls_string
TO ls_directorio.

ENDIF.

ENDLOOP.
__________________
Saludos!,

Jess.

"...Puedes llegar a cualquier parte, siempre y cuando andes lo suficiente..."
Responder Con Cita
  #10  
Viejo 08/04/16, 15:23:51
jcortegana1993 jcortegana1993 is offline
Junior Member
 
Fecha de Ingreso: abr 2016
Mensajes: 8
Question parece que lo genera pero vota este error

Ejecuto y si me convierte los datos con la función que mandaste pero me sale el siguiente erro:

"/xcom_rep/GAFI/salida/30/SALDOS1.TXT" ist nicht geöffnet.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 16:58:38.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web