SAP BDS
From SapWiki
Contents
BDSTESTOO - BDS: Programa de test p.métodos OO
ejemplo
Método GET_WITH_TABLE Sistema lógico Nombre de categoría PICTURES Tipo de clase OT Mandante 400 Clave HOTEL_5_STAR
WHEN 'GET_WITH_TABLE'.
REFRESH i_signature.
CALL METHOD o_document_set->get_with_table
EXPORTING
logical_system = i_logical_system
classname = i_classname
classtype = i_classtype
client = i_client
object_key = i_object_key
CHANGING
content = i_content
signature = i_signature
components = i_components
EXCEPTIONS
OTHERS = 1.
READ TABLE i_components INDEX 1 INTO ls_components.
IF sy-subrc = 0.
ld_out_len = ls_components-comp_size.
ELSE.
ld_out_len = 0.
ENDIF.
IF ld_out_len > 0.
CALL FUNCTION 'SCMS_BINARY_TO_XSTRING'
EXPORTING
input_length = ld_out_len
IMPORTING
buffer = ed_file
TABLES
binary_tab = i_content.
endif.
Objetos
Paquete SBDS
Clases
- CL_BDS_DOCUMENT_SET
ejemplo
" load patient picture from BDS
cl_bds_document_set=>get_with_table(
EXPORTING
classname = co_bds_classname "PICTURES
classtype = co_bds_classtype "OT
object_key = l_key
CHANGING
content = lt_content
components = lt_components
EXCEPTIONS
error_kpro = 1
internal_error = 2
nothing_found = 3
no_content = 4
parameter_error = 5
not_authorized = 6
not_allowed = 7
OTHERS = 8 ).
l_rc = sy-subrc.
ls_msg-msgid = sy-msgid.
ls_msg-msgno = sy-msgno.
ls_msg-attr1 = sy-msgv1.
ls_msg-attr2 = sy-msgv2.
ls_msg-attr3 = sy-msgv3.
ls_msg-attr4 = sy-msgv4.
CASE l_rc.
WHEN 0. " image found
" continue
WHEN 3 OR 4. " nothing found -> use fallback
RETURN.
WHEN 6. " authorization missing
RAISE EXCEPTION TYPE /iwbep/cx_mgw_busi_exception
EXPORTING
http_status_code = /iwbep/cx_mgw_busi_exception=>gcs_http_status_codes-forbidden
textid = ls_msg.
WHEN OTHERS. " something else
RAISE EXCEPTION TYPE /iwbep/cx_mgw_busi_exception
EXPORTING
http_status_code = '500' " internal server error
textid = ls_msg.
ENDCASE.
READ TABLE lt_components INDEX 1 ASSIGNING FIELD-SYMBOL(<ls_component>).
IF <ls_component> IS ASSIGNED.
" set mime type
es_stream-mime_type = <ls_component>-mimetype.
" set stream data
" convert binary data to xstring
l_size = <ls_component>-comp_size.
CALL FUNCTION 'SCMS_BINARY_TO_XSTRING'
EXPORTING
input_length = l_size
IMPORTING
buffer = es_stream-value
TABLES
binary_tab = lt_content
EXCEPTIONS
failed = 1
OTHERS = 2.
IF sy-subrc <> 0.
CLEAR es_stream-value.
CLEAR es_stream-mime_type.
ENDIF.
ENDIF.
Transacciones
- SBDSV1 - Actualizar clases de documento (tabla BDS_LOCL)