Show TOC

Syntax documentationAppendix: Implementation Program for Object Type Z_BUS2032 Locate this document in the navigation structure

Syntax Syntax

  1. 001	*****      Implementation of object type Z_BUS2032           ****
    002	INCLUDE <OBJECT>.
    003	BEGIN_DATA OBJECT.	" Do not change.. DATA is generated
    004	* only private members may be inserted into structure private
    005	DATA:
    006	" begin of private,
    007	"   to declare private attributes remove comments and
    008	"   insert private attributes here...
    009	" end of private,
    010	BEGIN OF KEY,
    011	    SALESDOCUMENT LIKE VBAK-VBELN,
    012	  END OF KEY,
    013	  SALESGROUP TYPE SWC_OBJECT,
    014	..ITEMS TYPE SWC_OBJECT OCCURS 0,
    015	  TEXTWITHDOCUMENTNO LIKE SYST-TITLE,
    016	  _VBAK LIKE VBAK.
    017	END_DATA OBJECT. " Do not change.. DATA is generated
    018
    019	TABLES VBAK.
    020	*
    021	GET_TABLE_PROPERTY VBAK.
    022	DATA SUBRC LIKE SY-SUBRC.
    023	* Fill TABLES VBAK to enable Object Manager Access to Table Properties
    024	  PERFORM SELECT_TABLE_VBAK USING SUBRC.
    025	  IF SUBRC NE 0.
    026	    EXIT_OBJECT_NOT_FOUND.
    027	  ENDIF.
    028	END_PROPERTY.
    029	*
    030	* Use Form also for other(virtual) Properties to fill TABLES VBAK
    031	FORM SELECT_TABLE_VBAK USING SUBRC LIKE SY-SUBRC.
    032	* Select single * from VBAK, if OBJECT-_VBAK is initial
    033	  IF OBJECT-_VBAK-MANDT IS INITIAL
    034	  AND OBJECT-_VBAK-VBELN IS INITIAL.
    035	    SELECT SINGLE * FROM VBAK CLIENT SPECIFIED
    036	      WHERE MANDT = SY-MANDT
    037	      AND VBELN = OBJECT-KEY-SALESDOCUMENT.
    038	    SUBRC = SY-SUBRC.
    039	    IF SUBRC NE 0. EXIT. ENDIF.
    040	    OBJECT-_VBAK = VBAK.
    041	  ELSE.
    042	    SUBRC = 0.
    043	    VBAK = OBJECT-_VBAK.
    044	  ENDIF.
    045	ENDFORM.
    046
    047	GET_PROPERTY TEXTWITHDOCUMENTNO CHANGING CONTAINER.
    048	  DATA:
    049	    SALESDOCUMENT LIKE VBAK-VBELN,
    050	    DOCUMENTDATE LIKE VBAK-AUDAT.
    051	  SWC_GET_PROPERTY SELF 'SalesDocument' SALESDOCUMENT.
    052	  SWC_GET_PROPERTY SELF 'DocumentDate' DOCUMENTDATE.
    053	  CONCATENATE 'Kundenauftrag' SALESDOCUMENT 'vom' DOCUMENTDATE
    054	    INTO OBJECT-TEXTWITHDOCUMENTNO SEPARATED BY SPACE.
    055	  SWC_SET_ELEMENT CONTAINER 'TextWithDocumentNo'
    056	    OBJECT-TEXTWITHDOCUMENTNO.
    057	END_PROPERTY.
    058
    059	GET_PROPERTY SALESGROUP CHANGING CONTAINER.
    060	    SELECT SINGLE * FROM VBAK WHERE VBELN = OBJECT-KEY-SALESDOCUMENT.
    061	  SWC_CREATE_OBJECT OBJECT-SALESGROUP 'TVKGR' VBAK-VKGRP.
    062	  SWC_SET_ELEMENT CONTAINER 'SalesGroup' OBJECT-SALESGROUP.
    063	END_PROPERTY.
    064
    065	GET_PROPERTY ITEMS CHANGING CONTAINER.
    066	
    067	* Declare data
    068	  TABLES VBAP.
    069	  REFRESH OBJECT-ITEMS.
    070	  DATA ITEM TYPE SWC_OBJECT.
    071	  DATA:
    072	    BEGIN OF VBAP_KEY,
    073	      VBELN LIKE VBAP-VBELN,
    074	      POSNR LIKE VBAP-POSNR
    075	    END OF VBAP_KEY.
    076	  DATA BEGIN OF VBAP_TAB OCCURS 0.
    077	    INCLUDE STRUCTURE VBAP.
    078	  DATA END OF VBAP_TAB.
    079
    080	* Select data
    081	  SELECT * FROM VBAP INTO TABLE VBAP_TAB
    082	    WHERE VBELN = OBJECT-KEY-SALESDOCUMENT.
    083
    084	    VBAP_KEY-VBELN = OBJECT-KEY-SALESDOCUMENT.
    085
    086	*   Create object reference
    087	    LOOP AT VBAP_TAB.
    088	      VBAP_KEY-POSNR = VBAP_TAB-POSNR.
    089	      SWC_CREATE_OBJECT ITEM 'VBAP' VBAP_KEY.
    090	      APPEND ITEM TO OBJECT-ITEMS.
    091	    ENDLOOP.
    092
    093	* Assign object reference to container element
    094	  SWC_SET_TABLE CONTAINER 'Items' OBJECT-ITEMS.
    095
    096	END_PROPERTY.
    097
    098	BEGIN_METHOD EDIT CHANGING CONTAINER.
    099	  SET PARAMETER ID 'AUN' FIELD OBJECT-KEY-SALESDOCUMENT.
    100	  CALL TRANSACTION 'VA02' AND SKIP FIRST SCREEN.
    101	  SWC_REFRESH_OBJECT SELF.
    102	END_METHOD.
    103
    104	BEGIN_METHOD EXISTENCECHECK CHANGING CONTAINER.
    105	  SELECT SINGLE * FROM VBAK
    106	    WHERE VBELN = OBJECT-KEY-SALESDOCUMENT.
    107
    108	    IF SY-SUBRC NE 0.
    109	      EXIT_RETURN 0001 SPACE SPACE SPACE SPACE.
    110	    ENDIF.
    111	END_METHOD.
    112
    113	BEGIN_METHOD DISPLAY CHANGING CONTAINER.
    114	  SET PARAMETER ID 'AUN' FIELD OBJECT-KEY-SALESDOCUMENT.
    115	  CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
    116	END_METHOD.
    117
    118	BEGIN_METHOD CREATE CHANGING CONTAINER.
    119	DATA:
    120	     SALESDOCUMENTTYPE LIKE VBAK-AUART.
    121	  SWC_GET_ELEMENT CONTAINER 'SalesDocumentType' SALESDOCUMENTTYPE.
    122	  SET PARAMETER ID 'AAT' FIELD SALESDOCUMENTTYPE.
    123	  CALL TRANSACTION 'VA01' AND SKIP FIRST SCREEN.
    124	  GET PARAMETER ID 'AUN' FIELD OBJECT-KEY-SALESDOCUMENT.
    125	END_METHOD.
    
End of the code.