2011-09-30 139 views
2

靜態公共類方法,zcl_abc => DoSomething的,具有一個進口參數ABAP類方法不是類型兼容形式參數「LT ....」

it_lines type TLINE_T optional

而且還有一個稱爲zfm_dosame FM。它有一個參數

TABLES IT_LINES TYPE TLINE_T OPTIONAL

zfm_dosame調用zcl_abc => DoSomething的,並試圖it_lines傳遞給it_lines。但是,語法錯誤:

IT_LINES is not type-compatible with formal parameter IT_LINES.

這個錯誤讓我發瘋。我不知道怎麼來...請幫忙!

回答

8

函數接口的TABLES部分在運行時創建帶有標題行的內部表。 因此,爲了傳遞整個表格而不是僅僅一個工作區域,您應該將IT_LINES[]而不是IT_LINES傳遞給您要調用的方法。

+0

對不對。非常感謝! – lonelyloner

0

如果沒有更多信息,比如函數模塊,函數組和類的完整源代碼很難說,但我會猜測:很可能您的TLINE_T類型不是全局類型,而是在功能模塊的功能組和類中的本地定義(以及不同的定義)。

嘗試在兩個位置雙擊TLINE_T類型,然後查看給您帶來的位置。如果它在兩個地方都帶給你一個全局類型(你應該能夠在SE11中看到),那麼我錯了,還有其他事情正在發生。

+0

'TLINE_T'是一個字典類型,由SAPscript函數使用。 –

+0

是的,你是對的René:-) –

相關問題