When an object is classified with characteristics of type date then, using BAPI BAPI_OBJCL_GETCLASSES
these characteristics are returned as numeric. That means that entries for date characteristics are found in the valuesnum
array which --as you remeber from a couple of postings back -- is defined to be a standard table of bapi1003_alloc_values_num
.
When I first saw this I thought that the actual date value could be acquired by assigning the value_from
part of the returned bapi1003_alloc_values_num
structure to a date variable, but it was not at all like this. The actual value is stored like an integer representing the ABAP internal date fromat which is YYYYMMDD. So an integer value like 20080112 represents January 12th 2008.
In ABAP code this translates as follows
DATA : temp_int TYPE i, temp_date_str(8) TYPE c, my_date TYPE d. FIELD-SYMBOLS :TYPE bapi1003_alloc_values_num. READ TABLE valuesnum WITH KEY charact = 'MY_DATE_CHARACT' ASSIGNING . IF sy-subrc = 0. temp_int = -value_from. temp_date_str = temp_int. my_date = temp_date_str. ENDIF.
No comments :
Post a Comment