Académique Documents
Professionnel Documents
Culture Documents
In the earlier example, we have created a WebDynpro application to populate the data into the custom table ZDEPT. In this, we would display the data from the ZDEPT using ABAP WebDynpro.
Select the Interface type as ABAP Dictionary-Based Interface, this time we are not going to use the XML schema based interface, this is to demonstrate that we can make use of any of the existing forms inside the Web Dynpro.
Enter the Import parameter ZDEPT and type ZDEPTTBL. Save and activate the interface
Drag
and
drop
the
Node
ZDEPT
onto
the
context
Go to the Layout tab and Drag & Drop the ZDEPT node on to the form layout, Save and Activate the form
You can also create a Report program (Print Program) and call the above mentioned form, but we are going to write the print program logic in the Web Dynpro. Go to transaction SE80 and create a Web Dynpro component Z_NON_INT_FRM.
You can see the Component Controller, Interface controller and window being created
Go to the layout tab of the MAIN_VIEW and create a place holder for the adobe form as shown below
Give the name of the node as adobe and type Interactive form
In the properties list set the Height and width and the template source as ZDEPFRM this is the actual name of the adobe form which we have created earlier, you can see the interface context is automatically mapped to the data source.
You can see the mapped data source in the context tab of the MAIN_VIEW
Go to the Methods table of the MAIN_VIEW and double click on the WDDOINIT method,
We are going to write the print programs logic in this method, we are not going to use the standard function modules that we use normally in the Report print program such as FP_JOB_OPEN, FP_FUNCTION_MODULE_NAME, FP_JOB_CLOSE.
method WDDOINIT . data: Node_Zdepfrm type ref to If_Wd_Context_Node, Elem_Zdepfrm type ref to If_Wd_Context_Element, Stru_Zdepfrm type If_Main_View=>Element_Zdepfrm , Item_ZDEPT like Stru_Zdepfrm-ZDEPT, i_dept type zdepttbl. * navigate from <CONTEXT> to <ZDEPFRM> via lead selection Node_Zdepfrm = wd_Context->get_Child_Node ( Name = IF_MAIN_VIEW=>wdctx_Zdepfrm ). * @TODO handle not set lead selection if ( Node_Zdepfrm is initial ). endif. * get element via lead selection Elem_Zdepfrm = Node_Zdepfrm->get_Element( ). * @TODO handle not set lead selection if ( Elem_Zdepfrm is initial ). Elem_Zdepfrm = Node_Zdepfrm->create_element( ). endif. select * from zdept into table i_dept. Item_Zdept = i_dept. * get single attribute Elem_Zdepfrm->set_Attribute( exporting Value = Item_Zdept Name = `ZDEPT` ). Node_Zdepfrm->bind_element( Elem_Zdepfrm ). endmethod. Go to the window Z_NON_INT_FRM and select the window tab as shown below
Enter the name of the application Z_NON_INT_FRM and save the application