【SAP Abap】X档案:SAP Flight 航班系统数据模型简介(SCARR、SPFLI、SFLIGHT、SBOOK等)

本文介绍了SAPABAP系统中的SAPFlight航班数据模型,包括关键表如SCARR、SPFLI、SFLIGHT、SBOOK等,以及如何查看和生成演示数据,强调了该模型在SAP开发练习中的作用。

SAP Flight 航班系统数据模型简介(SCARR、SPFLI、SFLIGHT、SBOOK等)

1、本文目的

SAP ABAP 系统都会自带 Flight 航班系统数据模型,其大量应用于 SAP ABAP 帮助文档、系统 Demo 程序。对于开发者,也可以基于该模型数据,进行 ABAP 程序的练习与测试。因此理解该数据模型对于学习 SAP 开发就非常有必要。

2、数据模型

SAP Flight 模型是一个简易的航空公司订票系统模型,描述了乘客进行航班预定的过程。航空公司基于航线,安排航班计划。乘客通过航空公司的销售柜台或者旅行社进行航班预定。
在这里插入图片描述

该模型包含了多个数据库表并通过外键进行关联。
模型主要数据库表如下:

T000:客户端表。
在这里插入图片描述

SCURX:币别表,本数据模型中引用的币别基础数据,包括金额小数位数。
在这里插入图片描述

SBUSPART:航空公司业务伙伴表,可以是乘客或者旅行社,表中的每一条记录都会有对应的一条记录在表STRAVELAG或者表SCUSTOM中。
在这里插入图片描述

STRAVELAG:旅行社表,记录旅行社相关信息。
在这里插入图片描述

SCUSTOM:乘客表,记录乘客相关信息。
在这里插入图片描述

SCARR:航空公司表,包含航空公司的ID和名字。
在这里插入图片描述

SCOUNTER:销售柜台表,航空公司在机场设置的销售柜台。
在这里插入图片描述

SPFLI:航线表,每家航空公司有多条航线。
在这里插入图片描述

SFLIGHT:航班表,基于航线安排的实际飞行航班数据。
在这里插入图片描述

SBOOK:航班预定表,记录每个航班的预定数据,包括乘客号码或者旅行社号码,如果乘客在销售柜台直接预订航班,销售柜台号也会存储到表SBOOK中。
在这里插入图片描述

3、查看模型数据

SE11,查看 SCARR 表数据
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、生成演示数据

如果SE11没有查询到数据,可以通过SAP系统程序,生成演示数据。
具体方法如下:
回到SE11查看表定义界面,点击“显示对象清单”
在这里插入图片描述
展开:SAPBC_DATAMODEL→Embedded Packages→SAPBC_DATAMODEL_SERVICE→程序,
双击:SAPBC_DATA_GENERATOR,执行
在这里插入图片描述
在这里插入图片描述
执行结束之后,即可生成演示数据。

备注: 以上查找程序方式仅适用于 SAP ECC 系统,SAP S4 系统,请直接在 SE38 中,运行 SAPBC_DATA_GENERATOR 程序。

5、模型应用

(1)基于该模型数据开发的 SAP ALV DEMO
(2)基于该模型数据的教程《SAP HANA SQL 基础教程》
请关注本人博客,会陆续发布基于该模型数据的相关开发教程。

6、附:数据表创建语句

以下脚本为HANA导出,如果要导入其他关系型数据库,可能需要做少量适配调整。

CREATE COLUMN TABLE NEWUSER."T000" 
(
	"MANDT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "MTEXT" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 "ORT01" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 CONSTRAINT "T000~0" PRIMARY KEY ("MANDT")
) ;

CREATE COLUMN TABLE NEWUSER."SCURX" 
(
	"CURRKEY" NVARCHAR(5) DEFAULT '' NOT NULL ,
	 "CURRDEC" SMALLINT CS_INT DEFAULT 0 NOT NULL ,
	 CONSTRAINT "SCURX~0" PRIMARY KEY ("CURRKEY")
) ;

CREATE COLUMN TABLE NEWUSER."SBUSPART" 
(
	"MANDANT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "BUSPARTNUM" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "CONTACT" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 "CONTPHONO" NVARCHAR(30) DEFAULT '' NOT NULL ,
	 "BUSPATYP" NVARCHAR(2) DEFAULT '' NOT NULL ,
	 CONSTRAINT "SBUSPART~0" PRIMARY KEY ("MANDANT", "BUSPARTNUM")
);

CREATE COLUMN TABLE NEWUSER."STRAVELAG" 
(
	"MANDT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "AGENCYNUM" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "NAME" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 "STREET" NVARCHAR(30) DEFAULT '' NOT NULL ,
	 "POSTBOX" NVARCHAR(10) DEFAULT '' NOT NULL ,
	 "POSTCODE" NVARCHAR(10) DEFAULT '' NOT NULL ,
	 "CITY" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 "COUNTRY" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "REGION" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "TELEPHONE" NVARCHAR(30) DEFAULT '' NOT NULL ,
	 "URL" NVARCHAR(255) DEFAULT '' NOT NULL ,
	 "LANGU" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "CURRENCY" NVARCHAR(5) DEFAULT '' NOT NULL ,
	 CONSTRAINT "STRAVELAG~0" PRIMARY KEY ("MANDT", "AGENCYNUM")
);	 

CREATE COLUMN TABLE NEWUSER."SCUSTOM" 
(
	"MANDT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "ID" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "NAME" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 "FORM" NVARCHAR(15) DEFAULT '' NOT NULL ,
	 "STREET" NVARCHAR(30) DEFAULT '' NOT NULL ,
	 "POSTBOX" NVARCHAR(10) DEFAULT '' NOT NULL ,
	 "POSTCODE" NVARCHAR(10) DEFAULT '' NOT NULL ,
	 "CITY" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 "COUNTRY" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "REGION" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "TELEPHONE" NVARCHAR(30) DEFAULT '' NOT NULL ,
	 "CUSTTYPE" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "DISCOUNT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "LANGU" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "EMAIL" NVARCHAR(40) DEFAULT '' NOT NULL ,
	 "WEBUSER" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 CONSTRAINT "SCUSTOM~0" PRIMARY KEY ("MANDT", "ID")
);

CREATE COLUMN TABLE NEWUSER."SCARR" 
(
	"MANDT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "CARRID" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "CARRNAME" NVARCHAR(20) DEFAULT '' NOT NULL ,
	 "CURRCODE" NVARCHAR(5) DEFAULT '' NOT NULL ,
	 "URL" NVARCHAR(255) DEFAULT '' NOT NULL ,
	 CONSTRAINT "SCARR~0" PRIMARY KEY ("MANDT", "CARRID")
);
	 
CREATE COLUMN TABLE NEWUSER."SCOUNTER" 
(
	"MANDT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "CARRID" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "COUNTNUM" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "AIRPORT" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 CONSTRAINT "SCOUNTER~0" PRIMARY KEY ("MANDT", "CARRID", "COUNTNUM")
);	 

CREATE COLUMN TABLE NEWUSER."SPFLI" 
(
	"MANDT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "CARRID" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "CONNID" NVARCHAR(4) DEFAULT '0000' NOT NULL ,
	 "COUNTRYFR" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "CITYFROM" NVARCHAR(20) DEFAULT '' NOT NULL ,
	 "AIRPFROM" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "COUNTRYTO" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "CITYTO" NVARCHAR(20) DEFAULT '' NOT NULL ,
	 "AIRPTO" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "FLTIME" INTEGER CS_INT DEFAULT 0 NOT NULL ,
	 "DEPTIME" NVARCHAR(6) DEFAULT '000000' NOT NULL ,
	 "ARRTIME" NVARCHAR(6) DEFAULT '000000' NOT NULL ,
	 "DISTANCE" DECIMAL(9,4) CS_FIXED DEFAULT 0 NOT NULL ,
	 "DISTID" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "FLTYPE" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "PERIOD" SMALLINT CS_INT DEFAULT 0 NOT NULL ,
	 CONSTRAINT "SPFLI~0" PRIMARY KEY ("MANDT", "CARRID", "CONNID")
);
CREATE FULLTEXT INDEX "SPFLI~FT1" ON NEWUSER."SPFLI" ("CITYFROM") ASYNC PHRASE INDEX RATIO 0.200000 FUZZY SEARCH INDEX OFF SEARCH ONLY OFF FAST PREPROCESS ON TEXT MINING OFF TEXT ANALYSIS OFF TOKEN SEPARATORS '\;,.:-_()[]<>!?*@+{}="&)/' COMPRESSION LEVEL 0;
CREATE FULLTEXT INDEX "SPFLI~FT2" ON NEWUSER."SPFLI" ("CITYTO") ASYNC PHRASE INDEX RATIO 0.200000 FUZZY SEARCH INDEX OFF SEARCH ONLY OFF FAST PREPROCESS ON TEXT MINING OFF TEXT ANALYSIS OFF TOKEN SEPARATORS '\;,.:-_()[]<>!?*@+{}="&)/' COMPRESSION LEVEL 0;

CREATE COLUMN TABLE NEWUSER."SBOOK" 
(
	"MANDT" NVARCHAR(3) DEFAULT '000' NOT NULL ,
	 "CARRID" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "CONNID" NVARCHAR(4) DEFAULT '0000' NOT NULL ,
	 "FLDATE" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "BOOKID" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "CUSTOMID" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "CUSTTYPE" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "SMOKER" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "LUGGWEIGHT" DECIMAL(8,4) CS_FIXED DEFAULT 0 NOT NULL ,
	 "WUNIT" NVARCHAR(3) DEFAULT '' NOT NULL ,
	 "INVOICE" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "CLASS" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "FORCURAM" DECIMAL(15,2) CS_FIXED DEFAULT 0 NOT NULL ,
	 "FORCURKEY" NVARCHAR(5) DEFAULT '' NOT NULL ,
	 "LOCCURAM" DECIMAL(15,2) CS_FIXED DEFAULT 0 NOT NULL ,
	 "LOCCURKEY" NVARCHAR(5) DEFAULT '' NOT NULL ,
	 "ORDER_DATE" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "COUNTER" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "AGENCYNUM" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 "CANCELLED" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "RESERVED" NVARCHAR(1) DEFAULT '' NOT NULL ,
	 "PASSNAME" NVARCHAR(25) DEFAULT '' NOT NULL ,
	 "PASSFORM" NVARCHAR(15) DEFAULT '' NOT NULL ,
	 "PASSBIRTH" NVARCHAR(8) DEFAULT '00000000' NOT NULL ,
	 CONSTRAINT "SBOOK~0" PRIMARY KEY ("MANDT", "CARRID", "CONNID", "FLDATE", "BOOKID")
); 

原创文章,转载请注明来源-X档案

课程设计报告 机票预定管理系统 组员: 学号: 学院: 班级: 机票预定管理系统uml数据建模分析课程设计全文共21页,当前为第1页。 机票预定管理系统uml数据建模分析课程设计全文共21页,当前为第1页。 目录 一、需求分析 3 1、系统开发背景 3 2、软件主要组成及功能 3 二、系统建模 6 1、创建系统用例模型 6 2、系统用例分析 7 三、创建系统静态模型 10 1、类图 11 四、创建系统动态模型 11 1、时序图 12 2、协作图 14 3、状态图 17 五、创建系统部署模型 19 六、小结 20 1、设计总结 20 2、改善 20 3、小组分工说明: 21 七、参考资料 21 机票预定管理系统uml数据建模分析课程设计全文共21页,当前为第2页。 机票预定管理系统uml数据建模分析课程设计全文共21页,当前为第2页。 一、需求分析 1、系统开发背景 当今世界,以信息技术为主要标志的科技进步日新月异,高科技成果向现实生产力的转化越来越快。纵观全球经济发展,信息技术和信息产业已经成为经济增长的主要推动力之一,正在改变着传统的生产和经营方式以至生活方式,发达国家经过产业结构的升级和经济结构 的转型已进入信息经济阶段。信息资源已经成为国民经济和社会发展的战略资源,信息化水 平也已成为现代水平和综合国力的重要标志。党和国家已将国民经济和社会信息化放在优先发展位置,体现了先进生产力的客观要求,是一项重要的战略决策。这是民航加快发展的机遇,更是民航信息化的难得机遇。 随着知识经济的到来,人类已经逐步进入信息化社会,信息增长的速度越来越快,人们 希望利用先进的管理理论方法手段来得到并处理越来越多的信息,以提高工作效率和管理水 平。由于信息资源对人们生活的重要性,不断提高信息的收集,传输,加以利用等活动,日 益成为人们社会生活的重要组成部分。网上机票预订管理系统的产生和发展正好满足人们的 这种需求。 2、软件主要组成及功能 功能说明: 新用户注册,新用户可以注册,注册时输入用户名可以查询用户可不可用,可用就可以注册,注册时可以判断用户输入的密码和验证密码是否相同,相同才给以注册,如果满意可以点注册,注册成功后用户可以选择不用在回到登陆界面,可以直接陆到用户主界面,以后就可以用这个用户登录了,如果不满意,点取消,所有信息清空,重新输入。 验证登陆名密码,正确进入主菜单,根据登录时所选的登录方式(客户、管理员)的不同分别对用户设定不同的访问权限(如果是输入的客户用户名和密码正确,选择以客户方式登陆则主界面里面的管理员界面不能用,如果输入的是管理员的相应用户密码正确,以管理员的方式登陆则管理员界面可用)不正确则清空登录框,最多可以输入三次,三次不正确系统会自动关闭。 主窗体的用户信息界面,用户点击个人查询按钮,可以把自己的个人信息显示到界面上,还可以对自己的信息进行相应的修改(用户编号和用户名不能修改),还可以点击我的机票查询,查询该用户的订票记录。基本信息查询及设置。显示当前登录用户的个人基本信息,姓名,住址,邮箱等信息。除此之外,可以更改设置自己的密码。 机票预定管理系统uml数据建模分析课程设计全文共21页,当前为第3页。我的航班界面。你可以点击你想查询的有关机票的信息的按钮(舱位信息查询,客机信息查询,航线查询,客户类型信息查询)获得相关信息的表,根据表的内容,你可以在下面的下拉框中选择你要定的票信息,点确定后在下面会显示你的机票的相关内容,如果满意可以点击订票,把相关信息添加到机票数据库表中,如果不满意,可以点重置,所有信息清空,再重新选择。 机票预定管理系统uml数据建模分析课程设计全文共21页,当前为第3页。 可以选定已定航班的订票信息进行转让信息发布。相关的转让二手票的业务信息发布到系统的公共信息服务页面上。查询公共信息服务。打开相应的页面,查询感兴趣的信息。包括系统发布的机票打折信息,以及二手票信息。 退票功能。用户可以根据用户信息表中的我的机票信息查询,找出机票号,在输入到机票号查询里,点击查询获得你的机票信息以及价格显示,点击退票则在数据库机票信息表中删除本条信息。 我的账户信息。由于订购机票需要进行支付票费功能,开设网上账户便于进行票务交易。开设我的账户,可以相关连自己的网上银行,查询账户余额,进行缴费,以及转账等业务。 管理员界面的管理员添加界面能对管理员信息进行查询、添加、删除和修改,包括用户名、登陆密码和联系方式。管理员界面的舱位信息的查询、添加、删除和修改,包括舱位等级编号、舱位等级名称、提供的各种服务类别,以及备注信息等。 管理员界面的客机信息界面对客机信息的添加、修改、删除和查询,包括客机编号、客机型号、购买时间、服役时间、经济舱座位数量、公务舱座位数量、头等舱座位数量以及备注信息等。 管理员界面
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值