외부 시스템에서 케릭터 350자리 데이터를 테이블 형식으로 전송 받게 하는데요
저희쪽 펑션에 IMPORT 파라미터 타입을 테이블 유형으로 케릭터 350으로 선언했는데
외부에서 RFC펑션을 콜할때마다 덤프가 떨어지는데 뭐가 문제인지 아시는분요..^^;;
혹시 IMPORT에서 변수 선언을 테이블 유형으로 하면 안돼는건가요?
이런 덤프가 떨어지네요....
TSV_TNEW_PAGE_ALLOC_FAILED
외부 시스템에서 케릭터 350자리 데이터를 테이블 형식으로 전송 받게 하는데요
저희쪽 펑션에 IMPORT 파라미터 타입을 테이블 유형으로 케릭터 350으로 선언했는데
외부에서 RFC펑션을 콜할때마다 덤프가 떨어지는데 뭐가 문제인지 아시는분요..^^;;
혹시 IMPORT에서 변수 선언을 테이블 유형으로 하면 안돼는건가요?
이런 덤프가 떨어지네요....
TSV_TNEW_PAGE_ALLOC_FAILED
음.. 제 생각인데요. rfc 는 타 시스템과 연계되기 때문에 ABAP에서 사용하는 모든 유형을
다 쓸수 없는 것 아닌가 하는 생각이 듭니다.
파라미터 관련된 내용이 있어서 SAP Library 에서 퍼왔습니다.
[Parameter Handling in Remote Calls]
When you make a remote function call, the system handles parameter transfer differently than it does with local calls.
TABLES parameters
The actual table is transferred, but not the table header. If a table parameter is not specified, an empty table is used in the called function.
The RFC uses a delta managing mechanism to minimize network load during parameter and result passing. Internal ABAP tables can be used as parameters for function module calls. When a function module is called locally, a parameter tables is transferred “by reference". This means that you do not have to create a new local copy. RFC does not support transfer “by reference”. Therefore, the entire table must be transferred back and forth between the RFC client and the RFC server. When the RFC server receives the table entries, it creates a local copy of the internal table. Then only delta information is returned to the RFC client. This information is not returned to the RFC client every time a table operation occurs, however; instead, all collected delta information is passed on at once when the function returns to the client.
The first time a table is passed, it is given an object-ID and registered as a "virtual global table" in the calling system. This registration is kept alive as long as call-backs are possible between calling and called systems. Thus, if multiple call-backs occur, the change-log can be passed back and forth to update the local copy, but the table itself need only be copied once (the first time).