ABAP - neceito una bapi

 
Vista:

neceito una bapi

Publicado por mario rondon (1 intervención) el 06/01/2006 18:30:03
buenas tardes a todos espero la esten pasando bien necesito una bapi que devuelva el valor de una caracteristica para cualquier clase de objeto. Exactamente es que se traiga el valor de una caracteristica de clase que esta asociada a una operación de un plan de
inspección. si alguien sabe de alguna por favor respondan y si pueden dar una explicacion u orientacion de los valores que retorna les estare agradecido . atentamente mario rondon E.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

BAPI para características de clase

Publicado por Alejandro (226 intervenciones) el 12/04/2023 00:17:41
Hola Mario.

Para obtener el valor de una característica para cualquier clase de objeto en SAP ABAP, puedes utilizar la BAPI "BAPI_OBJCL_GETDETAIL" que te permitirá obtener los detalles de una clase de objeto. Luego, para obtener el valor de una característica de clase que está asociada a una operación de un plan de inspección, puedes utilizar la BAPI "BAPI_INSPOPER_GETDETAIL" que te permitirá obtener los detalles de una operación de inspección.

A continuación te muestro un ejemplo de código ABAP que puedes utilizar para obtener el valor de una característica de clase asociada a una operación de un plan de inspección:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
DATA: lv_classname TYPE char30 VALUE 'CLAS_OBJETO',
      lv_charname TYPE char30 VALUE 'CARACTERISTICA',
      lv_plancode TYPE qpmk-plnnr VALUE 'PLAN_INSPECCION',
      lv_operation TYPE qpmk-vornr VALUE 'OPERACION'.
 
DATA: lt_classdata TYPE STANDARD TABLE OF bapi1003_attr_val,
      lt_inspectiondata TYPE STANDARD TABLE OF bapi2045_values.
 
CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
  EXPORTING
    classname = lv_classname
  TABLES
    classdata = lt_classdata.
 
CALL FUNCTION 'BAPI_INSPOPER_GETDETAIL'
  EXPORTING
    plnnr = lv_plancode
    vornr = lv_operation
  TABLES
    inspectiondata = lt_inspectiondata.
 
READ TABLE lt_inspectiondata WITH KEY attribute = lv_charname
                                    INTO DATA(ls_inspectiondata).
 
IF sy-subrc = 0.
  READ TABLE lt_classdata WITH KEY classnum = ls_inspectiondata-classnum
                                         attrname = lv_charname
                           INTO DATA(ls_classdata).
  IF sy-subrc = 0.
    DATA(lv_charvalue) = ls_classdata-value.
    WRITE: / 'Valor de la característica', lv_charname, ':', lv_charvalue.
  ENDIF.
ENDIF.

En este ejemplo, se utiliza la BAPI "BAPI_OBJCL_GETDETAIL" para obtener los detalles de la clase de objeto "CLAS_OBJETO" y se almacenan en la tabla "lt_classdata". Luego, se utiliza la BAPI "BAPI_INSPOPER_GETDETAIL" para obtener los detalles de la operación de inspección "OPERACION" del plan de inspección "PLAN_INSPECCION" y se almacenan en la tabla "lt_inspectiondata".

A continuación, se busca el valor de la característica "CARACTERISTICA" en la tabla "lt_inspectiondata" y se almacena en la estructura "ls_inspectiondata". Se utiliza el campo "classnum" de la estructura "ls_inspectiondata" para buscar el valor de la característica en la tabla "lt_classdata" y se almacena en la estructura "ls_classdata". Finalmente, se muestra el valor de la característica utilizando la variable "lv_charvalue".

Espero que este ejemplo te sea útil. Ten en cuenta que el código puede variar según tus necesidades específicas y la versión de SAP que estés utilizando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar