on 09-12-2014 3:44 PM
I tried to execute DTP which extract data from a SAP XI source. But I don't understand this message when I try to execute it:
Source type \CLASS=CX_SY_NO_HANDLER is not compatible, for the purposes of assignment, with target type \CLASS=CX_STATIC_CHECK
I work on SAP BW 7.3.
This DTP used for Purchase Order extraction, get 2 filters with ABAP routines on date and number of PO.
I tried to debug the filter but I can't access ABAP code, the error message appears before the access of the filters extraction.
Can anyone help me?
Thanks
Romain
Hi,
Two things you need cross check.
1. at data source and target connected transformations, there might be miss mapped. mean source and target fields length or type may not be the same.
2. in your dtp filter abap code, they may used fields which are not same type or length of source fields.
if you have access to dev system please check your routines code.
Thanks
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Many thanks for your reply !
I can access of dev system where the problem is (based on7.3). I noticed that the DTP on production system is working very well (based on 7.0).
Both DTP, on production and dev have the same parameters and filters.
It might be the length of source fields but why it's working on production system ? don't you think that the version can influence it ?
Tks,
Romain
Hi,
Maybe my ABAP code can provide more information :
TABLES: tvarv.
DATA: l_max(8) TYPE c,
* l_max TYPE /bi0/oicalday,
l_date TYPE sy-datum,
t_range TYPE rssdlrange.
*$*$ end of global - insert your declaration only before this line *-*
* -------------------------------------------------------------------
* Fieldname = BBP_PO_ID
* data type = CHAR
* length = 000010
* -------------------------------------------------------------------
form c_BBP_PO_ID
tables l_t_range structure rssdlrange
using i_r_request type ref to IF_RSBK_REQUEST_ADMINTAB_VIEW
i_fieldnm type RSFIELDNM
changing p_subrc like sy-subrc.
* Insert source code to current selection field
*$*$ begin of routine - insert your code only below this line *-*
DATA: t_out_nonexisting_po TYPE yeproc_existing_po
OCCURS 0 WITH HEADER LINE,
l_next_po_number(10) TYPE c,
* l_next_po_number TYPE /bi0/oibbp_po_id,
l_next_po_number_c(10) TYPE c,
l_rfc_xi TYPE rfcdes-rfcdest.
CLEAR: t_range, t_range-iobjnm, l_next_po_number.
t_range-fieldname = 'BBP_PO_ID'.
t_range-sign = 'I'.
t_range-option = 'BT'.
SELECT SINGLE logsys FROM rsds
INTO l_rfc_xi
WHERE datasource = 'YAGORA_PO_I_BW'
AND objvers = 'A'.
CALL FUNCTION 'YAGORA_CHECK_PO_XI'
EXPORTING
rfc_xi = l_rfc_xi
TABLES
t_out_nonexisting_po = t_out_nonexisting_po.
SORT t_out_nonexisting_po ASCENDING.
CLEAR t_range-low.
LOOP AT t_out_nonexisting_po.
IF t_out_nonexisting_po-po_number EQ l_next_po_number.
t_range-high = t_out_nonexisting_po-po_number.
ELSE.
IF t_range-low IS NOT INITIAL.
APPEND t_range TO l_t_range.
ENDIF.
t_range-low = t_out_nonexisting_po-po_number.
t_range-high = t_out_nonexisting_po-po_number.
ENDIF.
l_next_po_number = t_out_nonexisting_po-po_number.
l_next_po_number = l_next_po_number + 1.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = l_next_po_number
IMPORTING
output = l_next_po_number_c.
* l_next_po_number_c = l_next_po_number.
WRITE l_next_po_number_c TO l_next_po_number.
ENDLOOP.
APPEND t_range TO l_t_range.
SORT l_t_range ASCENDING BY low.
DELETE ADJACENT DUPLICATES FROM l_t_range.
User | Count |
---|---|
83 | |
10 | |
10 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.