Llamar una Clase-Metodo

Hola foro se que es algo fácil esta pregunta pero no recuerdo, debo llamar un método de una clase que me pasaron en un odata pero la cuestión es que me da error, la estoy llamando así : (no sé si está mal por si acaso me corrigen eso

DATA: ICL_MI_IS_CONSULTA_OT TYPE REF TO ZICL_MI_IS_CONSULTA_OT.
      CREATE OBJECT ICL_MI_IS_CONSULTA_OT.

call METHOD ICL_MI_IS_CONSULTA_OT->MI_IS_CONSULTA_OT.

Ese método tiene un input ZIMT_CONSULTA_OT asi que asumo que lo debo poner al llamar al método:

call METHOD ICL_MI_IS_CONSULTA_OT->MI_IS_CONSULTA_OT (ZIMT_CONSULTA_OT ).

image

image

Creo que sería así pero no estoy seguro

DATA: INPUT_ZIMT_CONSULTA_OT    TYPE ZIMT_CONSULTA_OT,
      OUTPUt_ZIMT_COMPROMISO_OT TYPE ZIMT_COMPROMISO_OT.

DATA: ICL_MI_IS_CONSULTA_OT TYPE REF TO ZICL_MI_IS_CONSULTA_OT.

call METHOD ICL_MI_IS_CONSULTA_OT->ZIII_MI_IS_CONSULTA_OT~MI_IS_CONSULTA_OT( INPUT_ZIMT_CONSULTA_OT ).

Ya tengo un tiempo sin tocar clases en abap jejejje aunque donde me devolveria mis datos resultantes? no deberia devolverme alguna tabla o algo ?

Ah ya vi hice esto:

CALL METHOD ICL_MI_IS_CONSULTA_OT->ZIII_MI_IS_CONSULTA_OT~MI_IS_CONSULTA_OT
  EXPORTING
    input = INPUT_ZIMT_CONSULTA_OT
  IMPORTING
    output = OUTPUt_ZIMT_COMPROMISO_OT.

Donde INPUT_ZIMT_CONSULTA_OT y OUTPUt_ZIMT_COMPROMISO_OT. Son del mismo tipo declarado en parametros del metodo tengo otro problema pero no se relaciona con la pregunta :C

Hola @abapero, podrías indicar el error, para que te podamos orientar de una forma mas precisa.
Saludos.

1 me gusta

Por lo que veo estas instanciando la clase.
DATA: instancia_zclase TYPE REF TO zclase.

Entonces, para consumir los metodos, lo puedes hacer de la siguiente forma:

instancia_zclase->metodo( EXPORTING parametro  = valor
                          IMPORTING parametro  = valor
                          CHANGING  parametro  = valor ).

Saludos!!

1 me gusta

lo que no recordaba era como llamar exactamente el metodo pero leyendo me acorde nuevamente jeje gracias :smiley:

1 me gusta

Este tema se cerró automáticamente 7 días después del último post. No se permiten nuevas respuestas.