ldm에 도큐먼트에 첨부된 문서를
.net 에서 bapi checkoutview 를 이용해서 가져오려는데
“RFC Callback server not available”
이런 예외처리가 뜨면서 잘안되네요.. 테이블의 정보들은 다가져올수있는데 첨부된파일은 다른방법을 써야하나요?
댓글 6
-
oracleuser
2015.05.16 06:09
-
아밥뚜밥
2015.05.18 22:44
쉽지않네요 다들 바이너리로 넘기는 방법을 쓰고계신건지..
-
ClearB
2015.05.20 07:11
언급하신 함수는 SAP GUI 기반에서 동작하고 RFC로 사용이 가능합니다만,
RFC를 통해 실제 로컬 경로로 파일을 직접 내려받을 수는 없습니다.
RFC 함수 만들고 GUI_DOWNLOAD해도 동작하지 않는 다는 점을 생각해보시면 이해가 빠를 거 같네요.
결국 바이너리로 전환하여 호출하는 쪽에서 해당 바이너리를 받아다가 파일로 만드시는 게 간편하실겁니다.
-
아밥뚜밥
2015.05.29 20:45
잘해결되었습니다. 감사합니다.^^
-
ClearB
2015.05.23 07:56
아직 미해결이라고 하시니... 샘플코드입니다, 참고해보세요.
DATA: PT_FILES LIKE CVAPI_DOC_FILE OCCURS 0 WITH HEADER LINE,
FILE_OUT TYPE TABLE OF DRAO.
** 해당 문서에 파일이 있는지 점검
CALL FUNCTION 'CVAPI_DOC_GETDETAIL'
PF_DOKAR = '문서유형'
PF_DOKNR = '문서번호'
PF_DOKVR = '00'
PF_DOKTL = '000'
TABLES
PT_FILES = PT_FILES.
*** 파일이 있는 경우 후속 로직 진행
CHECK LINES( PT_FILES ) > 0.
CALL FUNCTION 'CVAPI_DOC_CHECKOUTVIEW'
EXPORTING
PF_DOKAR = '문서유형'
PF_DOKNR = '문서번호'
PF_DOKVR = '00'
PF_DOKTL = '000'
PF_CONTENT_PROVIDE = 'TBL'
PF_STD_URL = 'X'
TABLES
PT_FILES = PT_FILES[]
PTX_CONTENT = FILE_OUT.
FILE_OUT을 RFC 결과 테이블에 넣어 주시면 되고, .NET기반에서 호출시에는
해당 테이블을 FOREACH로 돌리시면서 FILESTREAM에 ORBLK블럭을 BYTE[]형태로 WRITE하시면 됩니다.
(해당 필드 길이는 2550이니 별 다른 어려움은 없으실겁니다.)
-
아밥뚜밥
2015.05.23 00:18
아직도 해결을 못하고있네요 ㅎㅎ 결국엔 바이너리로 호출해서 쓰는 방법으로 작업중인데
아밥을 별로 안해봐서 헤메고있네요 ㅎ
답변감사합니다.
http://scn.sap.com/thread/3448697
정확한 내용을 모르지만 유사한 증상 같습니다.
한번 확인해 보시는건 어떨까 싶습니다.