带你进入SAP BSP系列—实战部分(3)


前面我们做了一个简单的Hello world, 仅仅包含了屏幕的输出, 其中, 我们使用了两种模式, 一种有HTMLB, 另外一种是纯HTML+ABAP.

在这节我们会简单的处理用户输入输出, 同样使用两种模式完成.

任务:

存在两个页面, 在第一个页面提供用户输入, 包含一个label, 一个输入框, 一个提交按钮. 在第二个屏幕显示用户输入结果.

由于只有两个页面, 所以我们选择静态导航.

首先, 要熟悉几个全局变量:

  • REQUEST: 接口IF_HTTP_REQUEST, 存储HTTP请求
  • RESPONSE: 接口IF_HTTP_RESPONSE, 存储HTTP响应
  • NAVIGATION: 接口IF_BSP_NAVIGATION, 存储页面导航
  • RUNTIME: 接口IF_BSP_RUNTIME, 存储运行时对象

实现如下:

  1. 使用HTML+ABAP

1) 创建一个BSP application:

SE80àBSP applicationà名称: ZBOBO_001

2) 创建两个页面, 如图:

clip_image002

clip_image004

3) 编辑start.htm àlayout

代码如下:

<%@page language=”abap”%>
<html>
<head><title>处理用户输入输出</title></head>
<body>
请输入你的名字:
<form action=”result.htm” method=”get” >
<input type=”text” name=”un”/></br>
<input type=”submit” value=”确定”>
</form>
</body>
</html>

说明:

action=”result.htm”: 定义静态导航页面

4) 编辑result.htm

设置页面属性:

clip_image006

处理页面初始化事件, 得到HTTP请求的参数

clip_image008

Layout代码如下:

<%@page language=”abap”%>
<html><body>Your input is: <%=un %></body></html>

5) 激活运行测试

clip_image010

输入一个字符串, 点确定

clip_image012

clip_image014

6) 注意上面IE地址栏的信息, 可以看到在进入result页面的时候, 时候参数传递的, 因为我们用的是GET方法, 所以参数在HTTP请求的Header中, 并显示在地址栏.如果使用POST方法, 则在地址栏不显示参数信息.

  1. 使用HTMLB+ABAP

1) 创建一个新的BSP application, 同上1à1)

2) 创建两个页面, 同上1à2)

3) 编辑start.htm, 如下:

<%@page language=”abap”%>
<%@extension name=”htmlb” prefix=”htmlb”%>
<htmlb:content design=”design2003″>
<htmlb:page title=”处理用户输入输出”>
<htmlb:form>
<%–这是label,用于标识输入的标签–%>
<htmlb:label for=”input” text=”请输入”/>
<%–定义输入字段–%>
<htmlb:inputField id=”input” value=”<%= g_input%>” />
<%–定义按钮–%>
<htmlb:button id=”ok” text=”确定” onClick=”OnInputProcessing” />
</htmlb:form>
</htmlb:page>
</htmlb:content>

4) 编辑开始页的输入事件

clip_image016

5) 设定navigation

注意: 下面的navigation request的名字, 就是调用next_page中指定的参数的名字.

clip_image018

6) 编辑result页面

clip_image020

clip_image022

7) 最终效果如下:

clip_image024

clip_image026


About The Author

从事SAP行业有些年头,对SAP技术稍有了解; 如无特别声明,本博客文章为原创,转载请注明; 博主MSN:xuchunbo0901@hotmail.com; 博主邮箱:bob.xu@abaptech.com。

3 Comments

  1. Chigon 说道:

    Thanks for your BSP course, it’s very good for the new learner. By the way where to find the 带你进入SAP BSP系列—实战部分4,5,6…

  2. haivy 说道:

    写得不错,还有继续更新吗?

    • Bob 说道:

      呵呵,有点忙,一直没有更新,再说考虑到BSP已经过时,特别是在国内已经很少应用,所以写的比较简单,我想在有空的时候会继续更新,谢谢支持.

Leave A Reply


注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。

无觅相关文章插件,快速提升流量