您可以使用服务调用调用Web Dynpro组件中的现有功能模块.要创建服务调用,可以在Web Dynpro工具中使用易于使用的向导.
您可以在ABAP工作台中启动向导以创建服务调用.
运行T-Code : SE80
第1步 : 选择Web Dynpro组件 → 右键单击以打开上下文菜单.去创建 → 服务电话.
它将打开Web Dynpro向导去;开始屏幕.
步骤2 : 您可以选择是否要将服务调用嵌入现有控制器中,或者您想要创建新控制器.
注意 : 服务调用应嵌入全局控制器中,不能与Web Dynpro中的视图控制器一起使用.
步骤3 : 在下一个窗口中,选择服务类型.单击继续按钮.
步骤4 : 在下一个窗口中,选择功能模块作为服务.您可以使用输入帮助.
如果选择具有远程功能的功能模块,则可以选择指定在调用功能模块时要使用的RFC目标.如果您未指定目的地,则将在本地调用功能模块.
注意 : 功能模块必须存在于当前系统中!该向导不支持调用当前系统中不存在的远程功能模块.
步骤5 : 点击继续.
第6步 : 在下一个窗口中,您可以选择使用哪种对象类型来表示Web Dynpro控制器中的服务功能参数 :
作为控制器方法的参数
作为控制器属性
作为上下文节点或上下文属性
为此,请从相关行的列表框中选择所需的对象类型.
注意 : 只有与UI相关的数据才应存储在上下文中.
您还可以单独命名控制器属性和要创建的上下文节点.
生成以下提案 :
根节点接收服务名称.
根据声明类型对参数进行分组的节点会收到相应的名称,例如IMPORTING,EXPORTING,...
参数本身的节点名称和属性名称与参数名称相同.
由于节点的长度和属性名称仅限于如果需要,它们相应地缩写为20个字符.
在下一个窗口中,所选服务使用类型组中的类型作为参数类型和/或定义隐式表参数.
对于所有t下面列出的类型,在数据字典中定义具有相同结构的(表)类型.然后,这些将用于键入由向导创建的控制器属性或方法参数.
第7步 : 输入属性类型;单击"测试"并单击"继续".
步骤8 : 在下一个窗口中,指定应该执行服务的方法的名称.该向导生成用于调用服务和上下文绑定的编码.
控制器中必须不存在该方法.
您现在已经输入了创建面向模型的控制器所需的所有信息.
第9步 : 单击"完成"以创建控制器,或分别对其进行增强,以生成服务调用.
您也可以在此位置取消向导.但是,之前输入的数据会丢失.