on 11-26-2008 2:47 AM
大家好!
最近,我在做一个添加附件功能的程序!但是在进行预览的时候,不知道为什么总是提示如下信息!
The service <'Attachment list'> is not available
下面是我写的代码:有添加附件的子程序和预览附件的子程序。
PERFORM USER_ATTACH. u201C添加附件
&----
*& Form USER_ATTACH
&----
text
----
--> p1 text
<-- p2 text
----
FORM USER_ATTACH .
DATA: L_KEY TYPE ZTSECP015-ZF15NO.
IF NEW = 'X'.
New item.
SELECT MAX( ZF15NO ) FROM ZTSECP015 INTO L_KEY.
L_KEY = L_KEY + 1.
ELSE.
Change item.
L_KEY = GT_ZTSECP015-ZF15NO.
ENDIF.
PERFORM ATTACH_FILE USING 'ZESE11NO'
L_KEY.
ENDFORM. " USER_ATTACH
&----
*& Form attach_file
*&----
text
----
FORM ATTACH_FILE USING P_OBJTYPE
P_OBJKEY.
DATA GO_MANAGER TYPE REF TO CL_GOS_MANAGER.
DATA: GS_SERVICE_SELECTION TYPE SGOS_SELS,
GT_SERVICE_SELECTION TYPE TGOS_SELS.
DATA GP_SERVICE LIKE SGOSATTR-NAME.
DATA GS_OBJECT TYPE BORIDENT.
DATA GS_BC_OBJECT TYPE SIBFLPOR.
REFRESH GT_SERVICE_SELECTION.
CLEAR GS_SERVICE_SELECTION.
GS_SERVICE_SELECTION-SIGN = 'I'.
GS_SERVICE_SELECTION-OPTION = 'EQ'.
GS_SERVICE_SELECTION-LOW = 'PCATTA_CREA'.
APPEND GS_SERVICE_SELECTION TO GT_SERVICE_SELECTION.
IF GO_MANAGER IS INITIAL.
CREATE OBJECT GO_MANAGER
EXPORTING
IP_NO_COMMIT = ' '
IP_NO_INSTANCE = ' '
IP_MODE = 'E'
IT_SERVICE_SELECTION = GT_SERVICE_SELECTION.
ENDIF.
GP_SERVICE = 'PCATTA_CREA'.
GS_OBJECT-OBJKEY = P_OBJKEY.
GS_OBJECT-OBJTYPE = P_OBJTYPE.
CALL METHOD GO_MANAGER->START_SERVICE_DIRECT
EXPORTING
IP_SERVICE = GP_SERVICE
IS_OBJECT = GS_OBJECT
IS_BC_OBJECT = GS_BC_OBJECT
EXCEPTIONS
NO_OBJECT = 1
OBJECT_INVALID = 2
EXECUTION_FAILED = 3
OTHERS = 4.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " attach_file
PERFORM USER_VIEW. u201D预览附件
&----
*& Form USER_VIEW
&----
text
----
--> p1 text
<-- p2 text
----
FORM USER_VIEW .
DATA: L_KEY TYPE ZTSECP015-ZF15NO.
IF NEW = 'X'.
New item.
SELECT MAX( ZF15NO ) FROM ZTSECP015 INTO L_KEY.
L_KEY = L_KEY + 1.
ELSE.
Change item.
L_KEY = GT_ZTSECP015-ZF15NO.
ENDIF.
PERFORM VIEW_ATTACH USING 'ZESE11NO'
L_KEY
SPACE.
ENDFORM. " USER_VIEW
&----
*& Form view_attach
&----
text
----
FORM VIEW_ATTACH USING P_OBJTYPE
P_OBJKEY
P_READONLY.
DATA GO_MANAGER TYPE REF TO CL_GOS_MANAGER.
DATA: GS_SERVICE_SELECTION TYPE SGOS_SELS,
GT_SERVICE_SELECTION TYPE TGOS_SELS.
DATA GP_SERVICE LIKE SGOSATTR-NAME.
DATA GS_OBJECT TYPE BORIDENT.
DATA GS_BC_OBJECT TYPE SIBFLPOR.
REFRESH GT_SERVICE_SELECTION.
CLEAR GS_SERVICE_SELECTION.
GS_SERVICE_SELECTION-SIGN = 'I'.
GS_SERVICE_SELECTION-OPTION = 'EQ'.
GS_SERVICE_SELECTION-LOW = 'VIEW_ATTA'.
APPEND GS_SERVICE_SELECTION TO GT_SERVICE_SELECTION.
IF GO_MANAGER IS INITIAL.
CREATE OBJECT GO_MANAGER
EXPORTING
IP_NO_COMMIT = ' '
IP_NO_INSTANCE = ' '
IP_MODE = 'E'
IT_SERVICE_SELECTION = GT_SERVICE_SELECTION.
ENDIF.
IF P_READONLY = 'X'.
CALL METHOD GO_MANAGER->SET_RW_MODE
EXPORTING
IP_MODE = 'D'.
ENDIF.
GP_SERVICE = 'VIEW_ATTA'.
GS_OBJECT-OBJKEY = P_OBJKEY.
GS_OBJECT-OBJTYPE = P_OBJTYPE.
CALL METHOD GO_MANAGER->START_SERVICE_DIRECT
EXPORTING
IP_SERVICE = GP_SERVICE
IS_OBJECT = GS_OBJECT
IS_BC_OBJECT = GS_BC_OBJECT
EXCEPTIONS
NO_OBJECT = 1
OBJECT_INVALID = 2
EXECUTION_FAILED = 3
OTHERS = 4.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " view_attach
就是在进行预览附件的时候,总是弹出来上面的那个信息!
上面的OBJECT我已经在SWO1里面创建!
希望大家帮帮我这个初学者! 谢谢!
没问题! 原来是 sap版本的 问题!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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.