Sunday, September 23, 2012

BAPI for assigning object to class CL20N class type 032 (Release Strategy)

CL20N is an enjoy T-code because of that BDC will not work properly.

BAPI to change or create value is BAPI_OBJCL_CREATE this BAPI will not update in table, to get data updated in table we have to use BAPI commit  BAPI_TRANSACTION_COMMIT along with BAPI_OBJCL_CREATE.

Sample code.

REPORT  YTEST_CL20N.
* data
data: lw_object type OBJNUM,
      lc_table type TABELLE,
      lw_class type KLASSE_D,
      lw_cltype type KLASSENART.
*table
data: li_valuesnum  type STANDARD TABLE OF BAPI1003_ALLOC_VALUES_NUM WITH HEADER LINE,
      li_valueschar type STANDARD TABLE OF BAPI1003_ALLOC_VALUES_CHAR WITH HEADER LINE,
      li_valuescurr type STANDARD TABLE OF BAPI1003_ALLOC_VALUES_CURR WITH HEADER LINE,
      li_return     type STANDARD TABLE OF BAPIRET2.
*
concatenate 'SZ' 'A9' into lw_object.
CONDENSE lw_object.
lc_table = 'T16FS'.
lw_class = 'PR_OVERALL_RELEASE'.
lw_cltype = '032'.

* character
li_valueschar-CHARACT = 'PR_DOCUMENT_TYPE'.
li_valueschar-VALUE_CHAR = 'ZI02'.
append li_valueschar.
clear: li_valueschar.

*Currency
li_valuescurr-CHARACT = 'PRVALUE1'.
li_valuescurr-VALUE_FROM = '0'.
li_valuescurr-VALUE_TO = '4999'.
li_valuescurr-CURRENCY_FROM = 'SAR'.
li_valuescurr-CURRENCY_TO = 'SAR'.
APPEND li_valuescurr.
CLEAR: li_valuescurr.

* NUMERIC
li_valuesnum-CHARACT = 'ZEMER_PRIO'.
li_valuesnum-VALUE_FROM = '1'.
append li_valuesnum.
clear: li_valuesnum.

CALL FUNCTION 'BAPI_OBJCL_CREATE'
        EXPORTING
          objectkeynew    = lw_object
          objecttablenew  = lc_table
          classnumnew     = lw_class
          classtypenew    = lw_cltype
        TABLES
          allocvaluesnum  = li_valuesnum
          allocvalueschar = li_valueschar
          allocvaluescurr = li_valuescurr
          return          = li_return.

BREAK-POINT.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
* EXPORTING
*   WAIT          =
* IMPORTING
*   RETURN        =
          .

Please find CL20N screen




1 comment:

Torrescano said...

Hola, buen aporte.

solo para completar tu aportacion.

aqui la ayuda de SAP para rangos en caracteristicas tipo moneda

Txt.brv.
Código para relación de valores
Definición
En la definición de valores se pueden definir intervalos, cuyo valor-DESDE, o bien, valor-HASTA se proveen de un operador.
Ejemplo: 1,54>-<2,088
La codificación de las posibilidades individuales se describen a continuación.
Código Operador Valor1 Operador Valor2
1 EQ
2 GE LT
3 GE LE
4 GT LT
5 GT LE
6 LT
7 LE
8 GT
9 GE

para rangos en caracteristicas tipo caracter

solo deben ir separados por ;

saludos.