民航航班时刻计划与预先飞行计划联动变更一致性方法转让专利

申请号 : CN202111549566.6

文献号 : CN114299764B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李翠霞苏祖辉庄青吴伯军雷馥鸣陶敬财陈雅彬

申请人 : 南京莱斯信息技术股份有限公司

摘要 :

本发明公开了一种民航航班时刻计划与预先飞行计划联动变更一致性方法,步骤如下:建立航班时刻计划库和预先飞行计划库,及两个计划库的变更信息库;建立CK布置报库,记录CK布置报被解析后的报文信息;季度航班时刻发布计划管理;日常航班时刻发布计划管理;数据错误或操作失误回退管理。本发明根据CK布置报的格式类型,制定两种处理规则,使得信息系统实现时更容易自动处理;当报文内容中航班计划为执行周期的格式,系统通过航班时刻库的维护,同步预先飞行计划库中相应信息;当航班计划为执行日期的格式,系统先开展格式转换,再对航班时刻计划库维护,同步对预先飞行计划库中相应信息进行联动变更。

权利要求 :

1.一种民航航班时刻计划与预先飞行计划联动变更一致性方法,其特征在于,步骤如下:

1)建立航班时刻计划库和预先飞行计划库,设计关键字段关联两个所述计划库;建立两个计划库的变更信息库,及变更信息库与当前库之间的关联字段;

2)建立CK布置报库,记录CK布置报被解析后的报文信息;

3)季度航班时刻发布计划管理:校验季度航班时刻管理发表的季度航班时刻信息,将季度航班时刻信息计划导入到航班时刻计划库中,并将周期性数据分解展开成每个具体执行日数据,分解展开后信息保存在预先飞行计划库中;

4)日常航班时刻发布计划管理:解析CK布置报报文,对航班时刻计划库、预先飞行计划库中计划信息进行修订,根据所述CK布置报的格式进行匹配判断,当航班计划为执行周期的格式时,则根据该航班计划的操作类型,将CK布置报信息与航班时刻计划库进行匹配校验,执行新增、修改或删除指令对航班时刻计划库的航班计划信息开展维护,再同步预先飞行计划库中相应信息;当航班计划为执行日期的格式时,则根据该航班计划的操作类型,将CK布置报信息与预先飞行计划库进行匹配校验,然后开展执行日期的格式转换,再对航班时刻计划库进行维护,同步将预先飞行计划库中相应信息进行联动变更;

5)数据错误或操作失误回退管理:当发生信息错误时,选定待回退的记录,从航班时刻计划库的变更信息库、预先飞行计划库的变更信息库中匹配出最后一次维护前的原始记录,分别恢复原始记录进入航班时刻计划库、预先飞行计划库两个当前库,同时删除选定待回退的记录在当前库内相关数据;

所述步骤1)具体包括:

11)航班时刻计划库,保存当前航空运行时使用的航班时刻计划数据,字段包括:航班时刻表ID、航季、航班号、执行周期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、起始时间、终止时间、变更航班时刻表ID、信息来源、状态、操作时间、操作人;

12)变更航班时刻计划库,当航班时刻计划库的数据变更时,保存航班时刻计划表对应的原始数据,作为变更记录,形成航班时刻计划的信息变更履历,字段包括:航班时刻表ID、航季、航班号、执行周期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、起始时间、终止时间、变更航班时刻表ID、信息来源、状态、操作时间、操作人、变更时间、变更人;

13)预先飞行计划库,保存当前航空运行时使用的预先飞行计划数据,字段包括:预先飞行计划表ID、航季、航班号、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、变更预先飞行计划表ID、航班时刻表ID、信息来源、状态、操作时间、操作人;

14)变更预先飞行计划库,当预先飞行计划库的数据变更时,保存预先飞行计划表对应的原始数据,作为变更记录,形成预先飞行计划的信息变更履历,字段包括:预先飞行计划表ID、航季、航班号、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、变更预先飞行计划表ID、航班时刻表ID、信息来源、状态、操作时间、操作人、变更时间、变更人;

所述步骤2)具体包括:

CK布置报库,用于保存经过解析后CK布置报的报文信息,字段包括:航班号、执行周期、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、起始时间、终止时间、航班时刻表ID、操作类型、操作成功标志、备注说明、格式类型、操作时间、操作人;

所述步骤3)具体包括:

31)建立星期转日期模型,该模型的输入参数:开始日期、结束日期、星期,输出参数:返回日期列表;

32)建立序列号生成器,该生成器输入参数:类型,时间;输出参数:序列号;该生成器返回序列号的值,根据输入参数类型、时间按天获取,每日从初值1开始按序累加,该值长度为

5位,长度不足左边补0;

33)将季度航班时刻发布的数据导入到航班时刻计划库中,并展开相关信息生成预先飞行计划库;

所述步骤33)具体包括:

331)读取季度航班时刻信息,经过数据校验后,保存至航班时刻计划库中;

332)基于航班时刻计划库中包含起始时间、终止时间、执行周期的字段展开到具体日期的执行日期,调用所述建立的星期转日期模型,生成执行日期队列;

333)根据所述执行日期队列,将保存到航班时刻计划库中的数据,分解生成到每个具体执行日期的信息,循环保存至预先飞行计划库中;

所述步骤332)具体为:运用蔡勒公式将输入参数起始时间、终止时间分别转换为具体星期;采用值班表方式,标识起始时间和终止时间在值班表上的具体星期位置,依次在起始时间与终止时间之间取得输入参数执行周期的各具体执行日期;将所有获取的具体执行日期按序形成队列输出;

所述步骤4)具体包括:

41)CK布置报解析,将解析后报文各字段信息存入CK布置报库的各字段中,字段包括航班号、执行周期、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、起始时间、终止时间、航班时刻表ID、操作类型、操作成功标志、备注说明、格式类型、操作时间、操作人;

42)依据CK布置报库的格式类型,当格式类型字段值为CK航班时,CK布置报内容与航班时刻计划库进行匹配校验;当值为CK计划时,CK布置报内容与预先飞行计划库进行匹配校验;

43)CK布置报库的格式类型为CK航班,操作类型为新增时;则将经过步骤41)解析后CK报文信息保存入航班时刻计划库;基于航班时刻计划库中包含起始时间、终止时间、执行周期的字段展开到具体日期的执行日期,调用星期转日期模型,生成执行日期队列;根据所述执行日期队列,将保存到航班时刻计划库中的数据,分解生成到每个具体执行日期的信息,循环保存至预先飞行计划库中;

44)CK布置报库的格式类型为CK航班,操作类型为修改或取消时,则根据步骤42)匹配成功数据进行航班时刻计划库的信息变更;

45)将步骤44)所述变更后的航班时刻计划库信息,分解生成到每个具体执行日期的信息,联动变更预先飞行计划库;

46)CK布置报库的格式类型为CK计划时,维护航班时刻计划库和预先飞行计划库;

所述步骤44)具体包括:

441)将航班时刻计划库中匹配到的信息保存到航班时刻计划库的变更信息库中,作为匹配的原数据备份;

442)根据CK布置报信息,进行航班时刻计划库的维护;

所述步骤45)具体包括:

451)将预先飞行计划库中匹配到的信息保存到预先飞行计划库的变更信息库中,作为匹配的原数据备份;

452)根据航班时刻计划库变更后信息的起始时间、终止时间、执行周期字段值调用星期转日期模型,分解生成到具体执行日期,联动变更预先飞行计划库相关信息;

所述步骤5)具体包括:

51)若航班时刻计划库中信息错误:选定待回退记录,通过该记录的变更航班时刻表ID、航班时刻表ID、操作时间、操作人、信息来源字段值,从航班时刻计划库的变更信息库、预先飞行计划库的变更信息库匹配出最后一次维护前的原始记录,按变更信息库与当前库字段对应规则,分别恢复原始记录进入航班时刻计划库、预先飞行计划库两个当前库,同时删除选定待回退的记录在当前库内相关数据;

52)若预先飞行计划库中信息错误:从预先飞行计划库选定数据的航班时刻表ID字段值查询到对应航班时刻计划库的数据,再根据所述步骤51)中的航班时刻计划库中信息错误的回退方法完成回退操作。

说明书 :

民航航班时刻计划与预先飞行计划联动变更一致性方法

技术领域

[0001] 本发明属于民用航空空中交通管理(ATM)的航班时刻管理领域,具体涉及一种民航航班 时刻计划与预先飞行计划联动变更一致性方法。

背景技术

[0002] 近年来,随着民航空中交通量的迅猛增加,各地飞行量持续迅速增长,为适应新时期航 班时刻管理的需要,民航空管局按照民用航空局管理发布的航班时刻计划,展开每日生成需 要执行的预先飞行计划,组织协调各类保障资源,为飞行中的民用航空器提供空中交通服务, 有效的维护和促进空中交通安全,维护空中交通秩序,保障空中交通畅通。
[0003] 当前空管局航班时刻管理系统根据发布的季度航班时刻计划生成航班时刻库,系统针对 确认存储在数据库中的航班时刻表,将周安排转换成按天安排,展开生成每日航班的预先飞 行计划库。后续,在季度航班时刻执行期内,管制员通过接收CK布置报或纸制传真件来维护 系统中的航班计划,因为航班时刻库中保存的是周期性的航班时刻,没有预先飞行计划库中 存储的到具体日期的飞行计划清晰易见,并且实际运行时每日最后真正将要执行的飞行计划 都是来源于预先飞行计划库,因此管制员在对航班计划维护时,大多只是对预先飞行计划库 中航班计划开展维护,由于航班时刻库与预先飞行计划库差异性比较大,系统目前无法实现 自动联动变更。这样,由于航班时刻库与预先飞行计划库没有联动变更,航班时刻库内信息 只是季度发布时的航班时刻计划,CK布置报发布的越多,两个库内信息差别越大,无法保证 信息的一致性,对航班时刻安排合理性的分析造成困难。

发明内容

[0004] 针对于上述现有技术的不足,本发明的目的在于提供一种民航航班时刻计划与预先飞行 计划联动变更一致性方法,以解决现有技术中航班时刻库与预先飞行计划库差异性比较大, 系统目前无法实现自动联动变更的问题,本发明基于CK布置报内容格式分类和维护方便性原 则,实现在航班计划变更时,保证两个信息库相关信息的一致性。
[0005] 为达到上述目的,本发明采用的技术方案如下:
[0006] 本发明的一种民航航班时刻计划与预先飞行计划联动变更一致性方法,步骤如下:
[0007] 1)建立航班时刻计划库和预先飞行计划库,设计关键字段关联两个所述计划库;建立两 个计划库的变更信息库,及变更信息库与当前库之间的关联字段;
[0008] 2)建立CK布置报库,记录CK布置报被解析后的报文信息;
[0009] 3)季度航班时刻发布计划管理:校验季度航班时刻管理发表的季度航班时刻信息,将季 度航班时刻信息计划导入到航班时刻计划库中,并将周期性数据分解展开成每个具体执行日 数据,分解展开后信息保存在预先飞行计划库中;
[0010] 4)日常航班时刻发布计划管理:解析CK布置报报文,对航班时刻计划库、预先飞行计 划库中计划信息进行修订,根据所述CK布置报的格式进行匹配判断,当航班计划为执行周期 的格式时,则根据该航班计划的操作类型,将CK布置报信息与航班时刻计划库进行匹配校验, 执行新增、修改或删除指令对航班时刻计划库的航班计划信息开展维护,再同步预先飞行计 划库中相应信息;当航班计划为执行日期的格式时,则根据该航班计划的操作类型,将CK布 置报信息与预先飞行计划库进行匹配校验,然后开展执行日期的格式转换,再对航班时刻计 划库进行维护,同步将预先飞行计划库中相应信息进行联动变更;
[0011] 5)数据错误或操作失误回退管理:当发生信息错误时,选定待回退的记录,从航班时刻 计划库的变更信息库、预先飞行计划库的变更信息库中匹配出最后一次维护前的原始记录, 分别恢复原始记录进入航班时刻计划库、预先飞行计划库两个当前库,同时删除选定待回退 的记录在当前库内相关数据。
[0012] 进一步地,所述步骤1)具体包括:
[0013] 11)航班时刻计划库,保存当前航空运行时使用的航班时刻计划数据,字段包括:航班 时刻表ID、航季、航班号、执行周期、起飞机场、计划起飞时间、降落机场、计划降落时间、 计划航路、起始时间、终止时间、变更航班时刻表ID、信息来源、状态、操作时间、操作人;
[0014] 12)变更航班时刻计划库,当航班时刻计划库的数据变更时,保存航班时刻计划表对应 的原始数据,作为变更记录,形成航班时刻计划的信息变更履历,字段包括:航班时刻表ID、 航季、航班号、执行周期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、 起始时间、终止时间、变更航班时刻表ID、信息来源、状态、操作时间、操作人、变更时间、 变更人;
[0015] 13)预先飞行计划库,保存当前航空运行时使用的预先飞行计划数据,字段包括:预先 飞行计划表ID、航季、航班号、执行日期、起飞机场、计划起飞时间、降落机场、计划降落 时间、计划航路、变更预先飞行计划表ID、航班时刻表ID、信息来源、状态、操作时间、操 作人;
[0016] 14)变更预先飞行计划库,当预先飞行计划库的数据变更时,保存预先飞行计划表对应 的原始数据,作为变更记录,形成预先飞行计划的信息变更履历,字段包括:预先飞行计划 表ID、航季、航班号、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计 划航路、变更预先飞行计划表ID、航班时刻表ID、信息来源、状态、操作时间、操作人、变 更时间、变更人。
[0017] 进一步地,所述步骤2)具体包括:
[0018] CK布置报库,用于保存经过解析后CK布置报的报文信息,字段包括:航班号、执行周 期、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、起始时间、 终止时间、航班时刻表ID、操作类型、操作成功标志、备注说明、格式类型、操作时间、操 作人。
[0019] 进一步地,所述步骤3)具体包括:
[0020] 31)建立星期转日期模型,该模型的输入参数:开始日期、结束日期、星期,输出参数: 返回日期列表;
[0021] 32)建立序列号生成器,该生成器输入参数:类型,时间;输出参数:序列号;该生成 器返回序列号的值,根据输入参数类型、时间按天获取,每日从初值1开始按序累加,该值 长度为5位,长度不足左边补0;
[0022] 33)将季度航班时刻发布的数据导入到航班时刻计划库中,并展开相关信息生成预先飞 行计划库。
[0023] 进一步地,所述步骤33)具体包括:
[0024] 331)读取季度航班时刻信息,经过数据校验后,保存至航班时刻计划库中;
[0025] 332)基于航班时刻计划库中包含起始时间、终止时间、执行周期的字段展开到具体日期 的执行日期,调用所述建立的星期转日期模型,生成执行日期队列;
[0026] 333)根据所述执行日期队列,将保存到航班时刻计划库中的数据,分解生成到每个具体 执行日期的信息,循环保存至预先飞行计划库中。
[0027] 进一步地,所述步骤332)具体为:运用蔡勒(Zeller)公式将输入参数起始时间、终 止时间分别转换为具体星期;采用值班表方式,标识起始时间和终止时间在值班表上的具体 星期位置,依次在起始时间与终止时间之间取得输入参数执行周期的各具体执行日期;将所 有获取的具体执行日期按序形成队列输出。
[0028] 进一步地,所述步骤4)具体包括:
[0029] 41)CK布置报解析,将解析后报文各字段信息存入CK布置报库的各字段中,字段包括 航班号、执行周期、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划 航路、起始时间、终止时间、航班时刻表ID、操作类型、操作成功标志、备注说明、格式类 型、操作时间、操作人;
[0030] 42)依据CK布置报库的格式类型,当格式类型字段值为CK航班时,CK布置报内容与航 班时刻计划库进行匹配校验;当值为CK计划时,CK布置报内容与预先飞行计划库进行匹配 校验;
[0031] 43)CK布置报库的格式类型为CK航班,操作类型为新增时;则将经过步骤41)解析后 CK报文信息保存入航班时刻计划库;基于航班时刻计划库中包含起始时间、终止时间、执行 周期的字段展开到具体日期的执行日期,调用星期转日期模型,生成执行日期队列;根据所 述执行日期队列,将保存到航班时刻计划库中的数据,分解生成到每个具体执行日期的信息, 循环保存至预先飞行计划库中;
[0032] 44)CK布置报库的格式类型为CK航班,操作类型为修改或取消时,则根据步骤42)匹 配成功数据进行航班时刻计划库的信息变更;
[0033] 45)将步骤44)所述变更后的航班时刻计划库信息,分解生成到每个具体执行日期的信 息,联动变更预先飞行计划库;
[0034] 46)CK布置报库的格式类型为CK计划时,维护航班时刻计划库和预先飞行计划库。
[0035] 进一步地,所述步骤44)具体包括:
[0036] 441)将航班时刻计划库中匹配到的信息保存到航班时刻计划库的变更信息库中,作为匹 配的原数据备份;
[0037] 442)根据CK布置报信息,进行航班时刻计划库的维护。
[0038] 进一步地,所述步骤442)具体包括:
[0039] 分拆匹配数据,精确到需要实际维护的具体数据队列;
[0040] 匹配航班时刻计划库的数据维护。
[0041] 进一步地,所述步骤45)具体包括:
[0042] 451)将预先飞行计划库中匹配到的信息保存到预先飞行计划库的变更信息库中,作为匹 配的原数据备份;
[0043] 452)根据航班时刻计划库变更后信息的起始时间、终止时间、执行周期字段值调用星期 转日期模型,分解生成到具体执行日期,联动变更预先飞行计划库相关信息。
[0044] 进一步地,所述步骤46)具体包括:
[0045] 461)运用蔡勒公式,建立日期转星期模型;
[0046] 462)调用所述日期转星期模型,将接收到的CK布置报中信息由CK计划格式转为CK航 班类型,生成CK布置报库(CK航班);
[0047] 463)采用CK布置报库(CK航班),进行航班时刻计划库和预先飞行计划库的维护。
[0048] 进一步地,所述步骤5)具体包括:
[0049] 51)若航班时刻计划库中信息错误:选定待回退记录,通过该记录的变更航班时刻表ID、 航班时刻表ID、操作时间、操作人、信息来源字段值,从航班时刻计划库的变更信息库、预 先飞行计划库的变更信息库匹配出最后一次维护前的原始记录,按变更信息库与当前库字段 对应规则,分别恢复原始记录进入航班时刻计划库、预先飞行计划库两个当前库,同时删除 选定待回退的记录在当前库内相关数据;
[0050] 52)若预先飞行计划库中信息错误:从预先飞行计划库选定数据的航班时刻表ID字段值 查询到对应航班时刻计划库的数据,再根据所述步骤51)中的航班时刻计划库中信息错误的 回退方法完成回退操作。
[0051] 本发明的有益效果:
[0052] 1)根据CK布置报的格式类型,制定两种处理规则,使得信息系统实现时更容易自动处 理;当报文内容中航班计划为执行周期的格式,系统通过航班时刻库的维护,同步预先飞行 计划库中相应信息;当航班计划为执行日期的格式,系统先开展格式转换,再对航班时刻计 划库维护,同步对预先飞行计划库中相应信息进行联动变更;
[0053] 2)建立变更信息管理体系,在运行库和变更库之间设计关键字段关联,便于事后追溯变 更来源,并能够通过关键字段实现信息回退功能,提高航班飞行计划维护的高效性和准确性;
[0054] 3)本发明代替管制员人工判断CK布置报的样式类型,再运用相对应的处理流程,减少 了人工操作,减轻管制员的工作负荷,提升航班计划维护的智能性;
[0055] 4)本发明覆盖了各种特殊情况,最大保障了航班时刻计划与预先飞行计划信息的一致性, 促进航班时刻资源高效配置和高效使用。

附图说明

[0056] 图1为本发明方法的原理图。
[0057] 图2为本发明季度航班时刻发布计划管理运行信息流程示意图。
[0058] 图3为本发明日常航班时刻发布计划管理运行信息流程示意图。

具体实施方式

[0059] 为了便于本领域技术人员的理解,下面结合实施例与附图对本发明作进一步的说明,实 施方式提及的内容并非对本发明的限定。
[0060] 对本发明中所用的专用术语和常用缩写进行定义:
[0061] 航班时刻计划:民用航空局(简称:民航局)为促进民航航班运行的正常与有序,按航 班时刻优先配置量化规则,对照时刻资源供给与需求的矛盾程度,发布的季度性航班飞行计 划,一般一年发布两套,分别为夏秋版和冬春版两个版本,是航空器周期性飞行的航班计划。
[0062] 部分关键字段项如下表1所示:
[0063] 表1
[0064]
[0065] 中国国航CA6509航班从20200201至20200215之间每周星期一、二、五、日,12时00 分从北京首都机场(ZBAA)飞往中国香港国际机场(VHHH),预计降落时间15时55分,计划 航路执行北京与中国香港间城市对的默认航线(AS SKED)。
[0066] 预先飞行计划:周期性的航班时刻计划数据展开到每一天的具体航班飞行计划。根据上 表的航班时刻展开如下图2所示:
[0067] 表2
[0068]
[0069]
[0070] CK布置报:民航局通过AFTN(民航固定格式电报网)线路发布的航班时刻计划信息,该 报文不是标准格式的明文报文,包括对即将执行的航班时刻计划新增、变更和取消。
[0071] 参照图1所示,本发明的一种民航航班时刻计划与预先飞行计划联动变更一致性方法, 步骤如下:
[0072] 1)建立航班时刻计划库和预先飞行计划库,设计关键字段关联两个所述计划库;建立两 个计划库的变更信息库,及变更信息库与当前库之间的关联字段;
[0073] 具体地,所述步骤1)具体包括:
[0074] 11)航班时刻计划库,保存当前航空运行时使用的航班时刻计划数据,字段包括:航班 时刻表ID、航季、航班号、执行周期、起飞机场、计划起飞时间、降落机场、计划降落时间、 计划航路、起始时间、终止时间、变更航班时刻表ID、信息来源、状态、操作时间、操作人;
[0075] 航班时刻表ID:指航班时刻计划库中本行记录的唯一ID号,本示例中生成规则为“S+ 操作时间+航班号+序列号”,字段之间用“/”分割,如:操作时间为“20191001”、航班号为 “CA6509”,“航班时刻表ID”的字段值为:“S/20191001/CA6509/00001”。
[0076] 变更航班时刻表ID:“航班时刻计划库”关联“变更航班时刻计划库”的唯一标志,本 字段对应“变更航班时刻计划库”的“航班时刻表ID”字段。
[0077] 信息来源:表示本条记录最后信息来源,具体值包括“季度航班”、“CK航班”、“CK计划”; “季度航班”指接收季度性航班飞行计划的航班信息;“CK航班”指接收CK布置报的航班信 息,CK布置报信息的样式是“执行周期”格式;“CK计划”指接收CK布置报的航班信息,CK 布置报信息的样式是“执行日期”格式。
[0078] 状态:值分别为“1”(表示:有效)、“0”(表示:无效),表示本条航班时刻计划是否正 常有效。
[0079] 12)变更航班时刻计划库,当航班时刻计划库的数据变更时,保存航班时刻计划表对应 的原始数据,作为变更记录,形成航班时刻计划的信息变更履历,字段包括:航班时刻表ID、 航季、航班号、执行周期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、 起始时间、终止时间、变更航班时刻表ID、信息来源、状态、操作时间、操作人、变更时间、 变更人;
[0080] 航班时刻表ID:“航班时刻计划库”变更前的原始数据,对应“航班时刻计划库”表中 当前数据“变更航班时刻表ID”字段。
[0081] 13)预先飞行计划库,保存当前航空运行时使用的预先飞行计划数据,字段包括:预先 飞行计划表ID、航季、航班号、执行日期、起飞机场、计划起飞时间、降落机场、计划降落 时间、计划航路、变更预先飞行计划表ID、航班时刻表ID、信息来源、状态、操作时间、操 作人;
[0082] 预先飞行计划表ID:指预先飞行计划库中本行记录的唯一ID号,本示例中生成规则为 “P+操作日期+航班号+序列号”,字段之间用“/”分割,如操作日期为“20191001”、航班号 为“CA6509”,“预先飞行计划表ID”的字段值为:“P/20191001/CA6509/00001”。
[0083] 变更预先飞行计划表ID:“预先飞行计划库”关联“变更预先飞行计划库”的唯一标志, 本字段对应“变更预先飞行计划库”的“预先飞行计划表ID”字段。
[0084] 航班时刻表ID:“预先飞行计划库”关联“航班时刻计划库”的唯一标志,本字段对应 “航班时刻计划库”的“航班时刻表ID”字段。
[0085] 信息来源:表示本条记录最后信息来源,包括“季度航班”、“CK航班”、“CK计划”;“季 度航班”指接收季度性航班飞行计划的航班信息;“CK航班”指接收CK布置报的航班信息, CK布置报信息的样式是“执行周期”格式;“CK计划”指接收CK布置报的航班信息,CK布 置报信息的样式是“执行日期”格式。
[0086] 状态:值分别为“1”(表示:有效)、“0”(表示:无效),表示本条预先飞行计划是否正 常有效。
[0087] 14)变更预先飞行计划库,当预先飞行计划库的数据变更时,保存预先飞行计划表对应 的原始数据,作为变更记录,形成预先飞行计划的信息变更履历,字段包括:预先飞行计划 表ID、航季、航班号、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计 划航路、变更预先飞行计划表ID、航班时刻表ID、信息来源、状态、操作时间、操作人、变 更时间、变更人;
[0088] 预先飞行计划表ID:“预先飞行计划库”变更前的原始数据,对应“预先飞行计划库” 表中当前数据“变更预先飞行计划表ID”字段。
[0089] 变更航班时刻表ID:对应“预先飞行计划库”变更前的原始数据的“预先航班时刻表 ID”字段。
[0090] 2)建立CK布置报库,记录CK布置报被解析后的报文信息;
[0091] 其中,所述步骤2)具体包括:
[0092] CK布置报库,用于保存经过解析后CK布置报的报文信息,字段包括:航班号、执行周 期、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划航路、起始时间、 终止时间、航班时刻表ID、操作类型、操作成功标志、备注说明、格式类型、操作时间、操 作人。
[0093] 具体地,执行周期和执行日期依据解析的CK布置报航班执行日期的具体格式分别填入, 若是周期格式填入字段“执行周期”、“起始时间”和“终止时间”,若是日期格式填入字 段“执行日期”、“起始时间”和“终止时间”,原则上,这两个方式一条记录只能有一种。
[0094] 执行周期;表示本条航班计划在一星期内每星期几执行,如字段值为“123”时表示航班 计划在每周一、每周二、每周三执行。
[0095] 执行日期:表示本条航班计划在具体填入的日期执行,如字段值为“20200202”时表示 航班计划在2020年02月02日执行。
[0096] 航班时刻表ID:本条记录变更“航班时刻计划库”中对应的记录,该对应记录“航班时 刻表ID”字段的值填入本项中。
[0097] 操作类型:表示CK布置报中本条记录对“航班时刻计划库”中数据是新增、修改或者取 消,具体数值:1表示新增、2表示修改,3表示取消。
[0098] 操作成功标志:对计划库(航班时刻计划库和预先飞行计划库)执行“操作类型”要求 的操作是否成功标志,“1”(表示:成功)、“0”(表示:不成功)。
[0099] 备注说明:当操作操作成功标志为“0”时,填写不成功说明。
[0100] 格式类型:表示本条记录样式是“执行周期”或“执行日期”,具体值分别为“CK航 班”、“CK计划”。
[0101] 3)季度航班时刻发布计划管理:校验季度航班时刻管理发表的季度航班时刻信息,将季 度航班时刻信息计划导入到航班时刻计划库中,并将周期性数据分解展开成每个具体执行日 数据,分解展开后信息保存在预先飞行计划库中;如图2所示;
[0102] 具体地,所述步骤3)具体包括:
[0103] 31)建立星期转日期模型(GetWeekDayUtil),该模型的输入参数:开始日期(dataBegin)、 结束日期(dataEnd)、星期(weekDays),输出参数:返回日期列表(DayList);
[0104] 例如:输入参数dataBegin=‘20200201’,dataEnd=‘20200215’,weekDays=‘2/4’ 时,输出参数DayList=‘20200204/20200206/20200211/20200213’。
[0105] 32)建立序列号生成器(GetSID),该生成器输入参数:类型(Type),时间(Day); 输出参数:序列号(SID);该生成器返回序列号(SID)的值,根据输入参数类型(Type)、 时间(Day)按天获取,每日从初值1开始按序累加,该值长度为5位,长度不足左边补0;
[0106] 类型(Type)字段格式为:sche(表示:获取航班时刻的SID)、plan(表示:获取预先 飞行计划的SID);
[0107] 时间(Day)字段格式为:YYYYMMDD(从左到右表示:4位是年、2位是月、2位是日), 本示例中传入数值为当前调用该序列号生成器(GetSID)时的系统操作时间。
[0108] 33)将季度航班时刻发布的数据导入到航班时刻计划库中,并展开相关信息生成预先飞 行计划库。
[0109] 进一步地,所述步骤33)具体包括:
[0110] 331)读取季度航班时刻信息(系统操作人CZR1,操作时间2019年10月01日),经过 数据校验后,保存至航班时刻计划库中;具体各字段项的数据值生成如下:
[0111] 航季、航班号、执行周期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划 航路、起始时间、终止时间等字段值直接从季度航班时刻信息中获得,其他字段:
[0112] “信息来源”=‘季度航班’,
[0113] “状态”=‘1’,
[0114] “操作时间”=‘20191001’,
[0115] “操作人”=‘CZR1’,
[0116] “航班时刻表ID”=GetSID(‘sche’,‘20191001’)
[0117] 具体案例详见表3(季度航班时刻发布的数据生成示例)中航班时刻计划库栏目中示例。
[0118] 表3
[0119]
[0120]
[0121] 332)基于航班时刻计划库中包含起始时间、终止时间、执行周期的字段展开到具体日期 的执行日期,调用所述建立的星期转日期模型,生成执行日期队列;
[0122] 进一步地,所述步骤332)运用蔡勒(Zeller)公式将输入参数起始时间、终止时间分 别转换为具体星期;采用值班表方式,标识起始时间和终止时间在值班表上的具体星期位置, 依次在起始时间与终止时间之间取得输入参数执行周期的各具体执行日期;将所有获取的具 体执行日期按序形成队列输出。
[0123] 333)根据所述执行日期队列,将保存到航班时刻计划库中的数据,分解生成到每个具体 执行日期的信息,循环保存至预先飞行计划库中;
[0124] 具体各字段项的数值生成如下:
[0125] 执行日期根据执行日期队列循环按序生成,
[0126] 对应执行日期的每行其他字段,
[0127] 航季、航班号、起飞机场、降落机场、计划航路、信息来源、状态、操作时间、操作人 直接对应“航班时刻计划库相应的值,
[0128] 计划起飞时间=本行数据的“执行日期”+“航班时刻计划库”的“计划起飞时间”,(“预 先飞行计划库”中“计划起飞时间”格式‘YYYYMMDD24HHMM’从左到右表示:4位是年、2 位是月、2位是日、2位是时‘格式为24小时样式’、2位是分;“航班时刻计划库”的“计 划起飞时间”格式‘24HHMM’,从左到右表示:2位是时‘格式为24小时样式’、2位是分);
[0129] 当“航班时刻计划库”的“计划降落时间”>“航班时刻计划库”的“计划起飞时间”时:
[0130] 计划降落时间=本行数据的“执行日期”+“航班时刻计划库”的“计划降落时间”,(“预 先飞行计划库”中“计划降落时间”格式‘YYYYMMDD24HHMM’从左到右表示:4位是年、2 位是月、2位是日、2位是时‘格式为24小时样式’、2位是分;“航班时刻计划库”的“计 划降落时间”格式‘24HHMM’,从左到右表示:2位是时‘格式为24小时样式’、2位是分);
[0131] 当“航班时刻计划库”的“计划降落时间”<“航班时刻计划库”的“计划起飞时间”时 (表示:本次航班是跨天计划):
[0132] 计划降落时间=(本行数据的“执行日期”+1天)+“航班时刻计划库”的“计划降落时间”,
[0133] 航班时刻表ID=“航班时刻计划库”的“航班时刻表ID”,
[0134] 预先飞行计划表ID=GetSID(‘plan’,‘20191001’)。
[0135] 4)日常航班时刻发布计划管理:解析CK布置报报文,对航班时刻计划库、预先飞行计 划库中计划信息进行修订,根据所述CK布置报的格式进行匹配判断,当航班计划为执行周期 的格式时,则根据该航班计划的操作类型,将CK布置报信息与航班时刻计划库进行匹配校验, 执行新增、修改或删除指令对航班时刻计划库的航班计划信息开展维护,再同步预先飞行计 划库中相应信息;当航班计划为执行日期的格式时,则根据该航班计划的操作类型,将CK布 置报信息与预先飞行计划库进行匹配校验,然后开展执行日期的格式转换,再对航班时刻计 划库进行维护,同步将预先飞行计划库中相应信息进行联动变更;日常航班时刻发布计划管 理运行流程如图3所示;
[0136] 具体地,所述步骤4)具体包括:
[0137] 41)CK布置报解析,将解析后报文各字段信息存入CK布置报库的各字段中,字段包括 航班号、执行周期、执行日期、起飞机场、计划起飞时间、降落机场、计划降落时间、计划 航路、起始时间、终止时间、航班时刻表ID、操作类型、操作成功标志、备注说明、格式类 型、操作时间、操作人;
[0138] 其中,“执行周期”和“执行日期”依据解析的CK布置报航班执行日期的具体格式分别 填入,若是周期格式填入字段“执行周期”、“起始时间”和“终止时间”,若是日期格式填 入字段“执行日期”、“起始时间”和“终止时间”,原则上,这两个方式一条记录只能有一 种。
[0139] 注意:日期格式时,填入字段“执行日期”、“起始时间”和“终止时间”也有两种方式, 当CK布置报里是时间范围时,“执行日期”为空值。
[0140] 格式类型:表示本条记录样式是“执行周期”或“执行日期”,具体值分别为“CK航 班”、“CK计划”。
[0141] 操作类型:CK布置报中每个单条计划内容中是新增(ADD)时填“1”、修改(CHG)是 填2,取消(CNL)时填3;
[0142] 航班时刻表ID=空,
[0143] 操作时间=‘20200205’,
[0144] 操作人=‘CZR1’,
[0145] 其他字段根据CK布置报解析对应填入;示例如表4所示:
[0146] 表4
[0147]
[0148]
[0149] 检查本次保存入“CK布置报库”的数据是否有效,如果CK布置报内容中的“终止时间” <当前日期,表示需要变更的航班计划已经执行过,本次日常航班时刻维护无意义,记录日 志,结束本次维护流程;如果“终止时间”<=当前日期或者“起始时间”>=当前日期, 表示需要变更的航班计划包括当天正在执行或将执行的航班计划,记录日志,转人工处理, 结束本次流程;如果CK布置报内容中的“起始时间”>当前日期,表示需要变更的航班计 划未执行,继续执行步骤42)。
[0150] 42)依据CK布置报库的格式类型,当格式类型字段值为CK航班时,CK布置报内容与航 班时刻计划库进行匹配校验;当值为CK计划时,CK布置报内容与预先飞行计划库进行匹配 校验;
[0151] (421)当CK布置报库的操作类型=‘1’(新增)时,不与航班时刻计划库或预先飞行计 划库中原数据匹配,继续执行步骤43);
[0152] (422)当CK布置报库的操作类型=‘2’(修改)或‘3’(取消)时,格式类型=‘CK航 班’,需要与航班时刻计划库中原数据匹配,匹配规则如下:
[0153] “CK布置报库”.“航班号”=“航班时刻计划库”.“航班号”AND
[0154] “CK布置报库”.“起飞机场”=“航班时刻计划库”.“起飞机场”AND
[0155] “CK布置报库”.“计划起飞时间”=“航班时刻计划库”.“计划起飞时间”AND[0156] “CK布置报库”.“降落机场”=“航班时刻计划库”.“降落机场”AND
[0157] “CK布置报库”.“计划降落时间”=“航班时刻计划库”.“计划降落时间”AND[0158] “CK布置报库”.执行周期IN“航班时刻计划库”.执行周期AND
[0159] (“CK布置报库”.起始时间>=“航班时刻计划库”.起始时间AND
[0160] “CK布置报库”.终止时间<=“航班时刻计划库”.终止时间)
[0161] 当匹配到数据为0条或多条时,记录错误日志,转人工处理,结束本次流程;当匹配到 数据为1条时,表示正常,继续执行步骤44)。
[0162] (423)当CK布置报库的操作类型=‘2’(修改)或‘3’(取消)时,格式类型=‘CK计 划’,需要与预先飞行计划库中原数据匹配,匹配规则如下:
[0163] ①当CK布置报库中“执行日期”字段有值时,
[0164] “CK布置报库”.“航班号”=“预先飞行计划库”.“航班号”AND
[0165] “CK布置报库”.“起飞机场”=“预先飞行计划库”.“起飞机场”AND
[0166] “CK布置报库”.“计划起飞时间”=“预先飞行计划库”.“计划起飞时间”AND[0167] “CK布置报库”.“降落机场”=“预先飞行计划库”.“降落机场”AND
[0168] “CK布置报库”.“计划降落时间”=“预先飞行计划库”.“计划降落时间”AND[0169] “CK布置报库”.“执行日期”=“预先飞行计划库”.“执行日期”
[0170] 当匹配到数据为0条或多条时,记录错误日志,转人工处理,结束本次流程;当匹配到 数据为1条时,表示正常,继续执行步骤46);
[0171] ②当CK布置报库中“执行日期”字段无值时,
[0172] “CK布置报库”.“航班号”=“预先飞行计划库”.“航班号”AND
[0173] “CK布置报库”.“起飞机场”=“预先飞行计划库”.“起飞机场”AND
[0174] “CK布置报库”.“计划起飞时间”=“预先飞行计划库”.“计划起飞时间”AND[0175] “CK布置报库”.“降落机场”=“预先飞行计划库”.“降落机场”AND
[0176] “CK布置报库”.“计划降落时间”=“预先飞行计划库”.“计划降落时间”AND[0177] (“CK布置报库”.起始时间<=“预先飞行计划库”.执行日期AND
[0178] “CK布置报库”.终止时间>=“预先飞行计划库”.执行日期)
[0179] 当匹配到数据为0时,记录错误日志,转人工处理,结束本次流程;当匹配到数据时, 表示正常,继续执行步骤46)。
[0180] 43)CK布置报库的格式类型为CK航班,操作类型为新增时;则将经过步骤41)解析后 CK报文信息保存入航班时刻计划库;基于航班时刻计划库中包含起始时间、终止时间、执行 周期的字段展开到具体日期的执行日期,调用星期转日期模型,生成执行日期队列;根据所 述执行日期队列,将保存到航班时刻计划库中的数据,分解生成到每个具体执行日期的信息, 循环保存至预先飞行计划库中;
[0181] 重复数据效验规则的关键字段为“航班号”、“起飞机场”、“计划起飞时间”、“降落机 场”、“计划降落时间”、“执行日期”,效验规则主要由下列两条组成:
[0182] (1)“航班号”、“起飞机场”、“降落机场”、“执行日期”这四个字段,新数据与“航班 时刻计划库”内数据相同;
[0183] (2)同时满足起飞降落时间至少相隔16个小时内,示例:(新数据“计划起飞时间”< “预先飞行计划库”的“计划降落时间”+16小时)OR(新数据“计划降落时间”>“预先 飞行计划库”的“计划起飞时间”‑16小时);
[0184] 当重复数据效验结果为0时,表示现有预先飞行计划库中没有与本条新数据相冲突的数 据,新数据正常保存入库;当结果不为0时,有冲突数据出现,记录错误日志,转人工处理, 结束本次流程。
[0185] 44)CK布置报库的格式类型为CK航班,操作类型为修改或取消时,则根据步骤42)匹 配成功数据进行航班时刻计划库的信息变更;
[0186] 所述步骤44)具体包括:
[0187] 441)将航班时刻计划库中匹配到的信息保存到航班时刻计划库的变更信息库中,作为匹 配的原数据备份;示例如表5:
[0188] 表5
[0189]
[0190] 442)根据CK布置报信息,进行航班时刻计划库的维护;具体包括:
[0191] 分拆匹配数据,精确到需要实际维护的具体数据队列;维护数据时,不能直接改原始数 据,原始数据有可能被分拆多条;具体规则如下:
[0192] 规则1:CK布置报匹配航班时刻计划库信息的“起始时间”和“终止时间”完全相同, 判断航班时刻计划库中数据是否开始执行,如表5中CK布置报库中示例①匹配上航班时刻计 划库数据的“起始时间”为“20200201”、“终止时间”为“20200215”,当前CK布置报发布 时间是2020年02月05日,航班时刻计划库中数据已经开始执行,为保证已执行的数据原状, 需要将表5中“航班时刻计划库”中数据分拆两条,第一条数据的“起始时间”为“20200201”、 “终止时间”为“20200205”,第二条的数据“起始时间”为“20200206”、“终止时间”为 “20200215”,本次CK布置报内容只对第二条数据进行变更;否则当前CK布置报发布时间如 是2020年01月01日,航班时刻计划库中数据未执行,表5中航班时刻计划库中数据无需分 拆;特别注意,本条规则执行完后,继续执行规则的第4条。
[0193] 规则2:CK布置报匹配到的航班时刻计划库中信息,在本匹配信息的开始执行时间段或 结束执行时间段,当表5中CK布置报库中示例①数据的“起始时间”改为“20200106”、“终 止时间”改为“20200210”(匹配开始执行时间段:匹配“航班时刻计划库”信息的“起始时 间”是“20200201”),或者“起始时间”为“20200210”、“终止时间”为“20200215”(匹配 结束执行时间段:匹配“航班时刻计划库”信息的“终止时间”是“20200215”),会将匹配 的航班时刻计划库数据分拆两条;其次还要综合考虑本条航班时刻计划是否已经开始执行, 参见规则1,本规则中“开始执行时间段”的示例,上一步已被分拆两条信息的第一条将被 再次分拆两条。特别注意,本条规则执行完后,继续执行规则的第4条。
[0194] 规则3:CK布置报匹配到的航班时刻计划库中信息,CK布置报库的执行时间范围在本条 航班时刻计划的中间执行时间段,如表5中CK布置报库中示例①数据的“起始时间”改为 “20200209”、“终止时间”改为“20200211”(匹配中间执行时间段:匹配“航班时刻计划库” 信息的“起始时间”是“20200201”,“终止时间”是“20200215”),会将匹配的航班时刻计 划库数据分拆三条。本次CK布置报内容只对第二条数据进行变更。同样,还要考虑第二条数 据航班时刻计划是否已经开始执行,当部分数据已经执行过,需把已执行(包括CK布置报发 布当天的执行计划)的时间段的信息与分拆的第一条数据进行合并,第二条的“起始时间” 从CK布置报发布次日开始。特别注意,本条规则执行完后,继续执行规则的第4条。
[0195] 规则4:规则1、规则2与规则3互斥,本条规则在规则1、规则2、规则3执行完后接 着执行。判断本次修改数据的“执行周期”或“时间范围”是否覆盖前面分拆数据段对应的 匹配数据。如表5中CK布置报库中示例①,不能全覆盖,本条数据将再次被分拆为两条,示 例如表6:
[0196] 表6
[0197]
[0198]
[0199] 匹配航班时刻计划库的数据维护;数据维护具体如下,
[0200] 原航班时刻计划库数据如被分为多段,“变更航班时刻表ID”、“信息来源”、“操作时间”、 “操作人”字段统一更新,“变更航班时刻表ID”的值为原数据的“航班时刻表ID”值;第 一条数据只需按分拆多条的时间段规则改变“终止时间”字段的值,“航班时刻表ID”不变; 其他新生成的数据列的“航班时刻表ID”,调用GetSID生成新ID,示例可见表6。
[0201] 当CK布置报库的操作类型=“2”(修改)时,根据CK布置报内容修改匹配到的分段航 班时刻计划,如“计划航路”等关键业务字段。当CK布置报库的操作类型=“3”(取消) 时,修改匹配到的分段航班时刻计划“状态”信息为“0”(本示例对取消的航班不删除,采 用对数据信息标注标志的方式区别“有效”或“无效”状态),示例可见表6中航班时刻计 划库示例①和②的第二列数据。
[0202] 45)将步骤44)所述变更后的航班时刻计划库信息,分解生成到每个具体执行日期的信 息,联动变更预先飞行计划库;
[0203] 具体地,所述步骤45)具体包括:
[0204] 451)将预先飞行计划库中匹配到的信息保存到预先飞行计划库的变更信息库中,作为匹 配的原数据备份;
[0205] 具体方法是:以步骤44)维护后的航班时刻计划库数据“变更航班时刻表ID”作为关键 字段,关联预先飞行计划库的“航班时刻表ID”,查询到的预先飞行计划库中的数据保存到 预先飞行计划库的变更信息库中,对于预先飞行计划库的变更信息库中“变更时间”和“变 更人”两个增加的字段,填入步骤44)维护后的航班时刻计划库对于记录的“操作时间”和 “操作人”的字段值。
[0206] 452)根据航班时刻计划库变更后信息的起始时间、终止时间、执行周期字段值调用星期 转日期模型,分解生成到具体执行日期,联动变更预先飞行计划库相关信息;
[0207] 首先,基于航班时刻计划库中“起始时间,终止时间,执行周期”字段展开到具体日期 的“执行日期”,调用“星期转日期模型”,生成执行日期队列。
[0208] 其次,根据执行日期队列,分解生成到每个具体执行日期的信息,循环变更预先飞行计 划库匹配信息。
[0209] 匹配预先飞行计划库中原数据,进行数据变更。匹配关键字段为“航班号”,“执行日期”, “起飞机场”、“计划起飞时间”、“降落机场”、“计划降落时间”,若数据未匹配到,记录此数 据变更操作的错误日志,提交人工处理,结束本次流程;若数据匹配到,当修改操作时,根 据航班时刻计划库信息修改匹配到的预先飞行计划库信息,如“计划航路”等关键业务字段。
[0210] 当取消操作时,修改匹配到的预先飞行计划库信息的“状态”字段为“0”(本示例对取 消的航班不删除,采用对数据信息标注标志的方式区别“有效”或“无效”状态)。
[0211] 所述预先飞行计划库原数据的数据变更还包括:预先飞行计划表ID字段值为原值,无需 新生成;变更预先飞行计划表ID字段值等于预先飞行计划表ID的字段值。
[0212] 表6航班时刻计划库示例①联动变更生成的预先飞行计划库如表7所示:
[0213] 表7
[0214]
[0215]
[0216] 最后,回填CK布置报库对应信息,包括“变更航班时刻表ID”、“操作成功标志”、“备 注说明”等字段。
[0217] “变更航班时刻表ID”填写航班时刻计划库变更前原数据的“航班时刻表ID”值(或 者是变更后新数据的“变更航班时刻表ID”值;“操作成功标志”根据对计划库(航班时刻 计划库和预先飞行计划库)执行是否成功,填写“1”(成功)、“0”(不成功);“备注说明” 当操作操作成功标志为“0”时,必须填写不成功说明。
[0218] 如表6示例①,“变更航班时刻表ID”=“S/20191001/CA6509/00001”,“操作成功标志” =“1”,“备注说明”=NULL。
[0219] 46)CK布置报库的格式类型为CK计划时,维护航班时刻计划库和预先飞行计划库;
[0220] 461)运用蔡勒(Zeller)公式,建立日期转星期模型(GetWeekUtil);该模型入参: 开始日期(dataBegin)、结束日期(dataEnd),出参:返回星期列表(Week)。例如入参dataBegin =‘20200310’,dataEnd=‘202003212’,出参Week=‘234’。
[0221] 462)调用所述日期转星期模型,将接收到的CK布置报中信息由CK计划格式转为CK航 班类型,生成CK布置报库(CK航班);如表8所示:
[0222] 表8
[0223]
[0224] 463)采用CK布置报库,进行航班时刻计划库和预先飞行计划库的维护;
[0225] 当操作类型=‘1’(新增),则将经过步骤462)生成CK布置报库(CK航班)信息保存入 航班时刻计划库;基于航班时刻计划库中包含起始时间、终止时间、执行周期的字段展开到 具体日期的执行日期,调用星期转日期模型,生成执行日期队列;根据所述执行日期队列, 将保存到航班时刻计划库中的数据,分解生成到每个具体执行日期的信息,循环保存至预先 飞行计划库中;
[0226] 当操作类型=‘2’(修改)或‘3’(取消)时,则将经过步骤462)生成CK布置报库(CK 航班)内容与航班时刻计划库进行匹配校验;根据匹配成功数据进行航班时刻计划库的信息 变更;变更后的航班时刻计划库信息,分解生成到每个具体执行日期的信息,联动变更预先 飞行计划库。
[0227] 5)数据错误或操作失误回退管理:当发生信息错误时,选定待回退的记录,从航班时刻 计划库的变更信息库、预先飞行计划库的变更信息库中匹配出最后一次维护前的原始记录, 分别恢复原始记录进入航班时刻计划库、预先飞行计划库两个当前库,同时删除选定待回退 的记录在当前库内相关数据;
[0228] 具体地,所述步骤5)具体包括:
[0229] 51)若航班时刻计划库中信息错误:选定待回退记录,通过该记录的变更航班时刻表ID、 航班时刻表ID、操作时间、操作人、信息来源字段值,从航班时刻计划库的变更信息库、预 先飞行计划库的变更信息库匹配出最后一次维护前的原始记录,按变更信息库与当前库字段 对应规则,分别恢复原始记录进入航班时刻计划库、预先飞行计划库两个当前库,同时删除 选定待回退的记录在当前库内相关数据;
[0230] 511)选定航班时刻计划库需要回退的数据,查询出本条数据的NVL(“变更航班时刻表 ID”、“航班时刻表ID”)(备注:如果本条数据为第一次新增数据,“变更航班时刻表ID”为 空值,取“航班时刻表ID”值,以下步骤中有NVL条件的原因与此相同)、“操作时间”、“操 作人”、“信息来源”字段值,赋予变量BackChaID、BackDay、BackPeo、BackSou。例如:
[0231] Select NVL(“变更航班时刻表ID”、“航班时刻表ID”),“操作时间”,“操作人”,“信 息来源”into BackChaID、BackDay、BackPeo、BackSou from“航班时刻计划库”Where rowid=’ 选定这条数据’;
[0232] 512)根据变量BackChaID、BackDay、BackPeo值与航班时刻计划库的NVL(“变更航班 时刻表ID”、“航班时刻表ID”)、“操作时间”、“操作人”字段相匹配,获取“航班时刻表 ID”值赋予数据组变量BackQueID;
[0233] 513)展开数据组变量值,循环赋予变量BackID,执行下步操作:
[0234] ①根据BackID、BackDay、BackPeo条件与预先飞行计划库的“航班时刻表ID”、“操作 时间”、“操作人”字段相匹配,取出NVL(“变更预先飞行计划表ID”,“预先飞行计划表ID”) 赋予数据组变量BackQueFlyID,同时删除相应记录。
[0235] ②按BackQueFlyID、BackDay、BackPeo条件与预先飞行计划库的变更信息库中的“预先 飞行计划表ID”、“变更时间”、“变更人”字段相匹配,查询到数据恢复到预先飞行计划库, 同时删除相应记录。例如:where(“预先飞行计划表ID”in BackQueFlyID)and“变更 时间”=BackDay and“变更人”=BackPeo;(注释:本步操作,需要容错记录为0的情况, 因为首次新增的记录,“变更预先飞行计划库”中无数据)
[0236] 当数据组变量值BackQueID完成最后一个值的①和②操作后,结束循环。
[0237] 514)删除步骤512)中查询到的航班时刻计划库的数据。
[0238] 515)按BackQueID、BackDay、BackPeo条件与航班时刻计划库的变更信息库中的“航班 时刻表ID”、“变更时间”、“变更人”字段相匹配,查询到数据恢复到航班时刻计划库,同时 删除相应数据。例如:where(“航班时刻表ID”in BackQueID)and“变更时间”=BackDay and“变更人”=BackPeo;(备注:本步操作,需要容错记录为0的情况,因为首次新增的 记录,“变更航班时刻计划库”中无数据)。
[0239] 516)当BackSou=“CK航班”或“CK计划”时,执行本步操作,按BackChaID、BackDay、 BackPeo条件与CK布置报库的“变更航班时刻表ID”、“操作时间”、“操作人”字段相匹配。 修改匹配数据的“操作成功标志”、“备注说明”字段,
[0240] “操作成功标志”=‘0’,
[0241] “备注说明”=‘记录执行回退操作’。
[0242] 517)记录操作日志,并提交上述所有步骤的操作。
[0243] 52)若预先飞行计划库中信息错误:从预先飞行计划库选定数据的航班时刻表ID字段值 查询到对应航班时刻计划库的数据,再根据所述步骤51)中的航班时刻计划库中信息错误的 回退方法完成回退操作;
[0244] 521)选定预先飞行计划库需要回退的数据,查询出本条数据的“航班时刻表ID”,赋 值变量FlyBackChaID;
[0245] 522)根据变量FlyBackChaID查询航班时刻计划库的NVL(“变更航班时刻表ID”、“航班 时刻表ID”)、“操作时间”、“操作人”、“信息来源”字段值,赋予变量BackChaID、BackDay、 BackPeo、BackSou;例如:
[0246] Select NVL(“变更航班时刻表ID”、“航班时刻表ID”),“操作时间”,“操作人”,“信 息来源”into BackChaID、BackDay、BackPeo、BackSou from“航班时刻计划库”Where“航 班时刻表ID”=FlyBackChaID;
[0247] 523)执行所述步骤512)至步骤517)。
[0248] 本发明具体应用途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技 术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进,这些改 进也应视为本发明的保护范围。