CN100407657C - 一种单板告警查询方法及装置 - Google Patents
一种单板告警查询方法及装置 Download PDFInfo
- Publication number
- CN100407657C CN100407657C CN2005101350145A CN200510135014A CN100407657C CN 100407657 C CN100407657 C CN 100407657C CN 2005101350145 A CN2005101350145 A CN 2005101350145A CN 200510135014 A CN200510135014 A CN 200510135014A CN 100407657 C CN100407657 C CN 100407657C
- Authority
- CN
- China
- Prior art keywords
- functional module
- alarm
- inquiry
- sequence number
- query
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及通信技术,特别涉及一种单板告警方法及装置,以解决现有技术中以每个告警作为查询对象时,由于告警结构众多而带来的初始化不便和维护困难的问题。所述单板告警查询方法包括如下步骤:根据单板功能模块的总个数和设定的查询分组数计算每一个分组中的功能模块个数;并顺序根据分组循环查询,每间隔设定时间,根据告警查询序列号确定一个分组中的功能模块,并查询每一个功能模块上的所有告警。所述单板告警查询装置包括:初始化单元、定时查询控制单元和多个告警查询单元。本发明以每个功能模块作为查询对象,实现了循环查询,并简化了告警查询的初始化过程和维护工作。
Description
技术领域
本发明涉及通信技术,特别涉及一种通信用单板的告警查询方法及装置。
背景技术
目前单板上各种告警(如光口线路故障、芯片故障等)的查询和上报告警,由告警查询装置启动定时查询任务实现。如图1所示,图1为现有单板中告警查询装置的结构示意图,包括定时查询控制单元,用于按照设定流程控制每一个告警的查询;告警初始化单元,用于初始化每一个告警的信息,包括每一个告警的查询时间间隔数、告警的位置信息、告警的产生和消除门限等;多个告警查询单元,根据告警的数量对应设置,分别用于查询并处理一个告警。
具体实现时,需要在初始化功能模块中对每个告警的进行初始化,在初始化函数中完成的工作有:
1、对应设定每一个告警的查询时间间隔数;
以间隔时间为100Ms为例,设定第1告警的查询时间间隔为1,第2告警的查询时间间隔为2,第3告警的查询时间间隔为3,以此类推。利用一个计数器对查询时间间隔进行计数,例如,当计数器计算到3时,则启动对第3告警的查询。
2、调用各个告警的结构初始化函数,对每个告警的全局结构进行初始化;
即将每一个告警的告警位置、告警产生和消除门限等到对应的。
告警查询的实现过程为:在单板中设定一个告警定时器监视一次告警查询,设定计数器按照设定时间间隔数每次加1,当该定时器超时时启动定时查询控制单元,同时启动计数器开始计数,当计数器为1时,判断是否有告警时间间隔数设定为1的告警,如果有则查询该告警,否则等待计数器计数到2时,判断是否有告警时间间隔数设定为2的告警,如果有则查询该告警,以此类推,直到告警定时器再一次超时时启动下一轮查询。具体流程如图2所示,包括一下步骤:
S101、监测告警查询定时器是否超时,如果是继续;否则继续监视;
S102、将计数器清零并启动计数器开始计时;
S103、监测计数器是否增加1,如果是继续;否则继续监视;
S104、获取计数器累计值I;
S105、判断是否存在查询间隔时间设定为I的告警,如果有继续;否则返回步骤S103;
S106、查询并处理告警I后返回步骤S103。
从上述流程可以看到,告警查询定时器超时时开始启动一轮告警查询,所有告警查询完后不能自动结束并启动新的一轮告警查询。
每一个告警的具体查询和处理由该告警的查询单元完成,定时查询控制单元在每一个时间间隔到达时,根据初始化单元中记录的每一个告警的时间间隔数判断是否对应,如果某个告警设定的查询时间间隔对应当前计数器的计数时,则调用对应告警的查询单元,由告警查询单元从初始化单元中调用对应的告警信息进行查询并处理。告警查询单元根据该告警的位置进行查询并记录查询结果,当连续故障次数达到告警产生门限时产生告警信号,当故障消失次数达到恢复门限时消除告警信号。
现有技术中,由于需要对每个告警进行初始化并对应设定查询单元,而告警数量种类又非常多,所以初始化函数代码量大,各个告警的初始化函数调用也非常多,代码显得越庞大冗长。每一个告警为一个全局结构,没有统一用结构数组,因此全局结构也非常多,从代码中的修改记录中也反映出在新增/删除告警时需要做的工作量比较大。
由于定时查询控制单元中需要对每个告警依次处理,造成告警很多的情况下,定时查询函数的代码也非常冗长,很容易遗漏某个告警查询处理函数的调用而出错;在有新增告警时除了需增加本身的告警查询处理函数外,还有增加该告警的初始化函数,并在告警定时查询函数中增加对该告警的查询间隔进行判断和对告警查询函数的调用,不利于代码的修改维护,容易引入问题。
所有告警时间间隔没有统一进行分配,因此不能控制每一次查询的告警数量,并且只能被动的等待告警查询定时器的超时来启动下一轮查询,无法根据告警数量实现自动循环查询。
发明内容
本发明提供一种单板告警查询方法及装置,以解决现有技术中以每个告警作为查询对象时,由于告警结构众多而带来的初始化不便和维护困难的问题。
一种单板告警查询方法,所述单板包括至少一个功能模块,每一个功能模块具有设定的告警查询序列号,所述告警查询方法包括如下步骤:
A、根据功能模块的总个数和设定的查询分组数计算每一个分组中的功能模块个数;并
B、顺序根据分组循环查询,每间隔设定时间,根据告警查询序列号确定一个分组中的功能模块,并查询每一个功能模块上的所有告警。
步骤B中具体包括如下步骤:
B1、清零计数器,该计数器每间隔设定时间增加1;
B2、监测计数器是否增加1,如果是则继续B3;否则继续监测;
B3、获取计数器的计数值并判断该计数值是否大于查询分组数,如果是返回步骤A;否则继续步骤B4;
B4、确定与所述计数值相应的分组中功能模块的序列号;
B5、分别根据所述序列号查询每一个功能模块中上的所有告警后返回步骤B2。
所述方法中,所述的告警查询序列号根据每一个功能模块的注册顺序设定,所述功能模块的总个数根据每一个功能模块的注册情况进行更新。
所述方法中还包括:在每一个功能模块注册的同时,将该功能模块上的所有告警信息与该功能模块的告警查询序列号关联记录。
所述方法中,所述功能模块总个数、查询分组数和每一个功能模块的告警查询序列号记录在设备注册信息表中,所述步骤A中,从该设备注册信息表中获取具体信息;
所述每一个功能模块上的所有告警信息与该功能模块的告警查询序列号关联记录告警信息注册表中,所述步骤B5中,以待查询的功能模块的告警查询序列号为索引从该告警信息注册表获取该功能模块上的所有告警信息。
所述步骤B5中,同时查询或依次查询该组中每一个功能模块。
所述计数器进行计数的间隔设定时间大于查询一个分组中所有功能模块所需的最长时间。
一种单板告警查询装置,所述单板包括多个功能模块,每一个功能模块包括至少一个告警,所述告警查询装置包括:
初始化单元,用于存储功能模块总数、查询分组数、每一个功能模块的告警序列号以及该功能模块包括的所有告警信息;
定时查询控制单元,从所述初始化单元中获取功能模块总数和查询分组数并计算每一个查询分组中包括的功能模块个数,然后每间隔设定时间,确定每一个查询分组中功能模块的序列号,并输出相应的查询指示信号;
多个告警查询单元,分别连接每一个功能模块,根据所述查询指示信号从所述初始化单元中获取对应功能模块上所有告警信息并进行告警查询和处理。
所述告警查询装置还包括信息输入单元,连接所述初始化单元,用于输入相关信息。
所述告警查询装置还包括,连接所述定时查询控制单元的计数器,用于监测所述设定时间。
所述初始化单元中包括:设备注册信息存储单元,用于存储功能模块总数、查询分组数、每一个功能模块的告警序列号;和告警信息存储单元,用于根据每一个功能模块的告警序列号关联存储该功能模块上的所有告警信息。
本发明的有益效果如下:
1、本发明以每个功能模块作为查询对象,初始化时只需初始化每个功能模块即可,由于单板上功能模块数一般远少于告警总数,因此对应每个功能模块设置初始化函数,减少了初始化函数的数量,简化了初始化过程。
2、在功能模块的告警内容有所改变(增加或减少),只需修改告警注册表中告警数的值,并不需要每次修改功能模块查询函数,因此告警查询装置的修改和维护也非常简单。
3、采用本发明所述方法,可以方便的根据各功能模块的序列号实现循环查询。
附图说明
图1为现有告警查询装置的结构示意图;
图2为现有告警查询方法流程图;
图3为本发明所述告警查询装置的结构示意图;
图4为本发明所述告警查询方法流程图。
具体实施方式
常用单板一般可以划分为多个功能模块,如E1功能模块、8207功能模块、RFN功能模块等,单板的所有告警分别分布这些功能模块上,本发明的思路如图3所示,以功能模块为对象进行告警查询,为每一个功能模块设定一个告警查询单元,由定时查询控制单元控制启动查询该功能模块上包括的所有告警。
为实现本方法,单板告警查询装置的初始化单元中,需要设置设备注册表和告警注册表,详细说明如下:
一、设备注册表
设备注册表中的注册信息包括该功能模块的序列号,通常做法是根据各功能模块的注册顺序分配序列号,例如:第一个注册的功能模块分配到的功能模块号为0,第二个注册的功能模块分配到的功能模块号为1,依次类推。
在注册表中还登记有该单板中包括的功能模块总数,每增加一个注册功能模块,功能模块总数增加1,以及告警查询分组数。
二、告警注册表
告警注册表用于分别管理每一个功能模块所包括的所有告警,在该告警注册表中,为每一个功能模块登记该功能模块中的所有告警以方便查询。
上述两个表中的信息在初始化过程中注册,初始化时,为每一个功能模块设置一个初始化代码和初始化函数,通过初始化函数将各个功能模块的功能模块信息和告警信息分别登记到两个表中。
初始化函数是维护每一个功能模块中所有告警的统一接口,如果有新增功能模块,只需要在告警查询装置中增加该功能模块的初始化代码和初始化函数,不需改动其他功能模块的初始化信息。如果有新增告警,只要将该告警所在的功能模块的初始化函数调出来,在告警注册表中增加该新增告警的信息即可。如果要删除某个告警,同样通过该告警所在功能模块的初始化函数完成。
这样,由定时查询控制单元进行控制,根据设备注册表中登记的序列号,每间隔一定的时间,确定需要查询的功能模块,然后启动对应的告警查询单元,由告警查询单元再根据告警注册表中登记的信息查询并处理该功能模块中的所有告警。
通过上述的设备注册表和告警注册表,首先,由于单板功能模块的数量远小于告警的数量,因此根据功能模块设定的初始化函数也大为减少,降低了初始化代码的复杂度,根据功能模块对所有告警进行初始化的工作更为有序,可以有效防止告警被遗漏的可能,因此方便了告警查询装置的初始化。而且,如果某个功能模块有新增告警或删除告警时,可以根据该告警所在的功能模块调用对应的初始化函数在告警注册表中增加或删除一次告警注册,不需要新增初始化函数或修改初始化信息,因此也降低了维护告警查询装置的工作量。其次,由于每一个功能模块都有确定的序列号,定时查询控制单元根据序列号可以确定一轮查询是否结束,可以方便的实现循环查询。
如图3所示,根据上述的思路,本发明的单板告警查询装置包括下列几个部分:
初始化单元:以单板中所包括的功能模块为对象,建立设备注册表和告警注册表,并通过每一个功能模块的初始化函数对功能模块进行注册和维护;
定时查询控制单元:根据设备注册表中登记的功能模块总数和各功能模块的序列号来控制整个查询流程;
告警查询单元:告警查询单元对应每一个功能模块设置,根据该功能模块在告警注册表中登记的告警信息查询并处理该功能模块中的所有告警。
定时查询控制单元按照设定的分组数顺序循环查询,具体实现可以设定一个总组数并登记到设备注册表中,定时查询函数根据功能模块总数和总组数计算每一个组中需要查询的功能模块数,然后根据序列号将功能模块顺序划分到不同的组中进行分批查询,每批之间间隔一定时间,在每一组的查询中,可以并行查询该组中的所有功能模块,也可以根据序列号顺序查询。每批查询之间的时间间隔一般为100Ms,如果每一组中的功能模块数较多时,为保证足够的查询时间,间隔时间可以适当延长,为200Ms或300Ms等。
定时查询控制单元每次确定出需要查询的功能模块后,对应启动该功能模块的告警查询单元进行下列步骤:
1、根据功能模块的序列号从告警注册表中查找该功能模块的所有告警;
2、根据查找的结果按照告警登记的顺序逐个进行查询;
3、记录查询结果并进行告警处理,当记录的故障次数连续累积到登记的告警门限时发出告警信号,当无故障次数连续累积到消除门限时取消告警信号。
下面以分4批循环查询为例进行详细说明,本实施例的单板包括12个功能模块,初始化时,在设备注册表中登记每一个功能模块的序列号和对应的功能模块查询函数,序列号按照功能模块的注册顺序分配,例如1、2...12,单板包括的总的功能模块数为12、查询的组为4、以及每批查询之间的间隔时间为100Ms,利用计数器进行监视。包括如下步骤:
当查询定时器超时时,首先计算每一批查询的功能模块个数,并启动计数器每间隔100Ms增加1,定时查询控制单元从初始化单元的设备注册表中,获取总功能模块数为12,组数为4,则每次查询的功能模块数为3个。如果总数不是组数4的倍数时,定时查询控制单元可以设定为自动进行加权处理,例如:总数为11时,自动加1后再计算每次查询功能模块个数。
然后确定第一组查询的起始功能模块序列号和终止功能模块序列号,并在计数器计1时,启动相应功能模块的告警查询单元进行查询;第一批查询的起始功能模块序列号为1,终止功能模块序列号为3,即需要查询的功能模块为1、2、3,定时查询控制单元在计数器到达1时,启动功能模块为1、2、3的告警查询单元开始查询。具体查询方法可以是顺序查询,即先使用功能模块1的查询函数查询从告警注册表中获得该功能模块1中的所有告警并逐个进行查询,登记查询结果,根据查询结果进行处理,然后顺序使用功能模块2和功能模块3的查询函数进行查询,查询完功能模块3后进行第二组;
再确定第二组查询的起始功能模块序列号和终止功能模块序列号,并在计数器到达2时进行查询;第二批查询的起始功能模块序列号为4、终止功能模块序列号6,即第二批查询功能模块4、5、6,定时查询控制单元在计数器到达2时开始查询,启动功能模块为4、5、6的告警查询单元开始查询。
依次再确定第三组、第四组查询的起始功能模块序列号和终止功能模块序列号,并在计数器增加1时进行查询;
每查询完一个组,需要判断是否还有未查询的组,如果是则继续;否则返回重新开始新一轮查询。
综上所述,如图4所示,本发明所述方法包括如下步骤:
S201、获取功能模块总数和总组数M并计算每一组查询的功能模块个数;
定时查询控制单元从初始化单元中获取查询总数M以及功能模块总数,计算每一组查询的功能模块个数。
S202、将时间间隔计数器清零并开始监视;
S203、判断计数器是否增加1,如果是继续;否则继续监视;
S204、获取计数器当前累计值I;
S205、判断I是否大于M,如果是则返回步骤S201进行下一论循环查询,否则继续步骤S206查询下一组;
判断的目的在于确定本轮查询是否结束,一旦I大于M,则所有的组已经查询完毕,应该结束本轮查询,返回步骤S201实现循环查询。
S206、确定第I组中所有功能模块的起始序列号和结束序列号;
S207、根据序列号查询第I组的所有功能模块中的告警后返回S203判断下一组查询时间是否到达。
同一组的所有功能模块可以同时查询,也可以顺序查询。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (11)
1.一种单板告警查询方法,所述单板包括至少一个功能模块,每一个功能模块具有设定的告警查询序列号,所述告警查询方法包括如下步骤:
A、根据功能模块的总个数和设定的查询分组数计算每一个分组中的功能模块个数;并
B、顺序根据分组循环查询,每间隔设定时间,根据告警查询序列号确定一个分组中的功能模块,并查询每一个功能模块上的所有告警。
2.如权利要求1所述的方法,其特征在于,步骤B中具体包括如下步骤:
B1、清零计数器,该计数器每间隔设定时间增加1;
B2、监测计数器是否增加1,如果是则继续B3;否则继续监测;
B3、获取计数器的计数值并判断该计数值是否大于查询分组数,如果是返回步骤A;否则继续步骤B4;
B4、确定与所述计数值相应的分组中功能模块的序列号;
B5、分别根据所述序列号查询每一个功能模块上的所有告警后返回步骤B2。
3.如权利要求2所述的方法,其特征在于,所述方法中,所述的告警查询序列号根据每一个功能模块的注册顺序设定,所述功能模块的总个数根据每一个功能模块的注册情况进行更新。
4.如权利要求3所述的方法,其特征在于,所述方法中还包括:在每一个功能模块注册的同时,将该功能模块上的所有告警信息与该功能模块的告警查询序列号关联记录。
5.如权利要求4所述的方法,其特征在于,所述方法中,
所述功能模块总个数、查询分组数和每一个功能模块的告警查询序列号记录在设备注册信息表中,所述步骤A中,从该设备注册信息表中获取具体信息;
所述每一个功能模块上的所有告警信息与该功能模块的告警查询序列号关联记录在告警信息注册表中,所述步骤B5中,以待查询的功能模块的告警查询序列号为索引从该告警信息注册表获取该功能模块上的所有告警信息。
6.如权利要求2所述的方法,其特征在于,所述步骤B5中,同时查询或依次查询分组中每一个功能模块。
7.如权利要求6所述的方法,其特征在于,所述计数器进行计数的间隔设定时间大于查询一个分组中所有功能模块所需的最长时间。
8.一种单板告警查询装置,所述单板包括多个功能模块,每一个功能模块包括至少一个告警,其特征在于,所述告警查询装置包括:
初始化单元,用于存储功能模块总数、查询分组数、每一个功能模块的告警序列号以及该功能模块包括的所有告警信息;
定时查询控制单元,从所述初始化单元中获取功能模块总数和查询分组数并计算每一个查询分组中包括的功能模块个数,然后每间隔设定时间,确定每一个查询分组中功能模块的序列号,并输出相应的查询指示信号;
多个告警查询单元,分别连接每一个功能模块,根据所述查询指示信号从所述初始化单元中获取对应功能模块上所有告警信息并进行告警查询和处理。
9.如权利要求8所述的装置,其特征在于,所述告警查询装置还包括信息输入单元,连接所述初始化单元,用于输入相关信息。
10.如权利要求8所述的装置,其特征在于,所述告警查询装置还包括,连接所述定时查询控制单元的计数器,用于监测所述设定时间。
11.如权利要求8所述的装置,其特征在于,所述初始化单元中包括:
设备注册信息存储单元,用于存储功能模块总数、查询分组数、每一个功能模块的告警序列号;和
告警信息存储单元,用于根据每一个功能模块的告警序列号关联存储该功能模块上的所有告警信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005101350145A CN100407657C (zh) | 2005-12-23 | 2005-12-23 | 一种单板告警查询方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005101350145A CN100407657C (zh) | 2005-12-23 | 2005-12-23 | 一种单板告警查询方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1852159A CN1852159A (zh) | 2006-10-25 |
CN100407657C true CN100407657C (zh) | 2008-07-30 |
Family
ID=37133629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005101350145A Active CN100407657C (zh) | 2005-12-23 | 2005-12-23 | 一种单板告警查询方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100407657C (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222360B (zh) * | 2008-01-22 | 2012-09-05 | 中兴通讯股份有限公司 | 用于建立告警规则关联的规则引擎系统及方法 |
CN101860450B (zh) * | 2010-03-29 | 2014-11-05 | 中兴通讯股份有限公司 | 一种告警查询的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08228211A (ja) * | 1995-02-22 | 1996-09-03 | Nippon Telegr & Teleph Corp <Ntt> | 故障検出装置 |
KR20040051015A (ko) * | 2002-12-11 | 2004-06-18 | 엘지전자 주식회사 | 알람 처리 시스템 및 방법 |
KR20040073226A (ko) * | 2003-02-13 | 2004-08-19 | 삼성전자주식회사 | 동적 큐오에스 알람 검출 방법 |
CN1553598A (zh) * | 2003-05-29 | 2004-12-08 | 华为技术有限公司 | 一种单板故障的检测方法及装置 |
-
2005
- 2005-12-23 CN CN2005101350145A patent/CN100407657C/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08228211A (ja) * | 1995-02-22 | 1996-09-03 | Nippon Telegr & Teleph Corp <Ntt> | 故障検出装置 |
KR20040051015A (ko) * | 2002-12-11 | 2004-06-18 | 엘지전자 주식회사 | 알람 처리 시스템 및 방법 |
KR20040073226A (ko) * | 2003-02-13 | 2004-08-19 | 삼성전자주식회사 | 동적 큐오에스 알람 검출 방법 |
CN1553598A (zh) * | 2003-05-29 | 2004-12-08 | 华为技术有限公司 | 一种单板故障的检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN1852159A (zh) | 2006-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100555228C (zh) | 一种嵌入式linux应用进程的监控方法 | |
CN101183993B (zh) | 一种网络管理系统和性能数据处理方法 | |
CN106227321B (zh) | 一种终端系统的唤醒监控方法及终端 | |
CN106559395B (zh) | 一种基于工业网络的数据报文检测方法及装置 | |
CN100359481C (zh) | 多任务系统的异常监控装置及其方法 | |
CN100578507C (zh) | 一种数据库空间自动扩展的方法及管理模块 | |
CN100407657C (zh) | 一种单板告警查询方法及装置 | |
CN106649140A (zh) | 一种数据处理方法、装置及系统 | |
CN110620687A (zh) | 多运营商的流量池管理系统 | |
CN1055557C (zh) | 多处理机控制系统中控制单位程序信息过载的方法 | |
US20010010717A1 (en) | Traffic data collection technique | |
CN107221939B (zh) | 无功补偿控制组网系统及其容量分散整合补偿方法 | |
CN101299719A (zh) | 数据流的检测处理方法、中央处理器及交换机 | |
CN100413257C (zh) | 网元告警数据获取方法 | |
US3916112A (en) | Stored program control with memory work area assignment in a communication switching system | |
CN100512263C (zh) | 一种触发相对定时器的方法 | |
CN102013996B (zh) | 数据采集管理方法、采集管理系统及电信网络管理系统 | |
CN105610601B (zh) | 一种epon系统中并行oam的配置管理方法及系统 | |
CN104268293A (zh) | 数据库中的不可累加指标处理方法和装置 | |
CN107621975B (zh) | 基于java timer高可用性的定时器逻辑实现方法 | |
CN113676790B (zh) | 低压集抄设备的采集调度方法、装置、集中器和介质 | |
CN105227648A (zh) | 一种基于时间桶的地铁综合监控系统时间序列触发方法 | |
CN108880930A (zh) | 一种网络环路的检测方法及设备 | |
CN104407960B (zh) | 数据监控方法及装置 | |
CN102447595B (zh) | 多处理单元网源通路检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |