CN103309736A | 2013-09-18 | |||
CN102750630A | 2012-10-24 | |||
CN102542437A | 2012-07-04 | |||
US20050047279A1 | 2005-03-03 |
北京超凡志成知识产权代理事务所(普通合伙) (CN)
权利要求 1. 定时器设置方法, 其特征在于, 包括以下步骤: 步骤 1 : 设置日期集, 所需要设置的参数包括: 名称、 循环周期、 周期日期列表、 例外日期列表, 循环周期的可选项包括按星期循环、 按阳历月循环、 按农历月循环; 步骤 2 : 设置定时器, 所需要设置的参数包括: 定时时间、 需要引 用的日期集、 日期集引用方式, 所述日期集引用方式的可选项包括正 常引用、 取反引用; 步骤 3 : 若有需要, 可在任意时间执行步骤 1或步骤 2, 修改日期集 或定时器, 修改时可根据用户需求任意修改所设置的参数。 2. 根据权利要求 1所述的定时器设置方法, 其特征在于, 所述步 骤 1中的日期集的数量不少于一个。 3. 根据权利要求 1所述的定时器设置方法, 其特征在于, 所述步 骤 1中的周期日期列表包括循环周期内的任意顺数或倒数日期及其组 合, 其列表内的日期为循环周期内根据用户需要加入到日期集的日期。 4. 根据权利要求 1所述的定时器设置方法, 其特征在于, 所述步 骤 1中的例外日期列表为用户设置的具体日期的组合, 其具体日期包括: 在所述周期日期列表中但用户认为不应加入到日期集的日期、 不在所 述周期日期列表中但用户认为应当加入到日期集的日期、 以及用户认 为应当显式设置是否在日期集的日期。 5. 根据权利要求 1所述的定时器设置方法, 其特征在于, 针对所述 步骤 1中的例外日期列表中的任意个例外日期, 设置其对应的例外类型, 例外类型的可选项包括 "在日期集" 、 "不在日期集" 、 "取反" 。 6. 基于权利要求 1或 5所述定时器设置方法的定时器执行方法, 其 特征在于, 包括以下步骤: 步骤 4 : 判断某日期是否在所述定时器所引用的日期集内; 步骤 5 : 根据步骤 4的判断结果, 确定在所述日期所述定时器是否 需要执行。 7. 根据权利要求 6所述的定时器执行方法, 其特征在于, 所述步 骤 4包括以下步骤: 步骤 41 : 判断所述日期是否在例外日期列表, 如果在, 则判断该 日期是否设置有例外类型,及例外类型是以下中的哪种: "在日期集"、 "不在日期集" 、 "取反" ; 步骤 411 :如果已设置例外类型为 "在日期集",则返回结果"在"; 步骤 412 : 如果已设置例外类型为 "不在日期集" , 则返回结果 "不 在,, ; 步骤 41 3: 如果未设置例外类型或已设置例外类型为 "取反" , 则 判断该日期是否在周期日期列表, 如果在周期日期列表, 则返回结果 "不在" ; 如果不在周期日期列表, 则返回结果 "在" ; 步骤 42 : 如果该日期不在例外日期列表, 则判断该日期是否在周 期曰期列表; 步骤 421 : 如果在周期日期列表, 则返回结果 "在" ; 步骤 422 : 如果不在周期日期列表, 则返回结果 "不在" 。 8. 根据权利要求 6所述的定时器执行方法, 其特征在于, 所述步 骤 5包括以下步骤: 步骤 51 : 所述日期在所述日期集内, 且所述定时器的日期集引用 方式为正常引用, 则所述定时器执行; 步骤 52 : 所述日期在所述日期集内, 且所述定时器的日期集引用 方式为取反引用, 则所述定时器不执行; 步骤 53 : 所述日期不在所述日期集内, 且所述定时器的日期集引 用方式为正常引用, 则所述定时器不执行; 步骤 54 : 所述日期不在所述日期集内, 且所述定时器的日期集引 用方式为取反引用, 则所述定时器执行。 |
技术领域 本发明涉及一种定时器设置及执行方法。 背景技术 在电子计算设备中, 定时器有着广泛的应用。 现有的技术在设置定时 器的循环方式时, 一般釆用对每个定时器单独设置的方法, 比如设置在每 天的 7: 00定时执行开机、 在每周一至周五的 7: 30定时执行闹铃、 在每周 六至周日的 10: 00定时执行闹铃, 等等。 该方法逻辑简单、 容易实现, 现 有产品基本上都是釆用上述方法来设置定时器 ;
但是基于以上的定时器存在明显的缺陷, 具体的表现在:
当有多个定时器以相同的方式循环时, 用户需要重复定义每一个定时 器的循环方式; 如果循环方式有变化, 用户需要重复对每一个定时器的循 环规则进行修改; 循环规则不具有显而易见的可读性。
另外, 当遇上特殊日期需要临时调整定时器的循环方 法时, 在现有技 术下用户需要进行多次操作, 比较不方便, 而且也容易忘记而误事。例如, 对于一个工作日闹铃的定时器, 有一天放假需要临时取消当天的闹铃, 那 么用户至少需要两次操作: 闹铃时间之前取消闹铃、 闹铃时间之后再次激 活该闹铃。
本发明公开了一种可以解决以上技术缺陷的定 时器设置及执行方法。 发明内容 本发明的目的在于提供一种定时器的设置及执 行方法, 主要利用预先 设置的日期集来设置定时器的循环执行日期。
为实现上述目的, 本发明提供定时器设置方法, 包括以下步骤: 步骤 1 : 设置日期集, 所需要设置的参数包括: 名称、 循环周期、 周期 日期列表、 例外日期列表, 循环周期的可选项包括按星期循环、 按阳历月 循环、 按农历月循环;
步骤 2 : 设置定时器, 所需要设置的参数包括: 定时时间、 需要引用的 曰期集、 日期集引用方式, 所述日期集引用方式的可选项包括正常引用、 取反引用;
步骤 3 : 若有需要, 可在任意时间执行步骤 1或步骤 2, 修改日期集或 定时器, 修改时可根据用户需求任意修改所设置的参数 。
优选地, 所述步骤 1中的日期集的数量不少于一个。
优选地, 所述步骤 1 中的周期日期列表包括循环周期内的任意顺数 或 倒数日期及其组合, 其列表内的日期为循环周期内根据用户需要加 入到日 期集的日期。
优选地,所述步骤 1中的例外日期列表为用户设置的具体日期的 合, 其具体日期包括: 在所述周期日期列表中但用户认为不应加入到 日期集的 曰期、 不在所述周期日期列表中但用户认为应当加入 到日期集的日期、 以 及用户认为应当显式设置是否在日期集的日期 。
优选地, 针对所述步骤 1 中的例外日期列表中的任意个例外日期, 设置其对应的例外类型, 例外类型的可选项包括 "在日期集" 、 "不 在曰期集" 、 "取反" 。
本发明还提供一种基于上述定时器设置方法的 定时器执行方法, 包括 以下步骤:
步骤 4 : 判断某日期是否在所述定时器所引用的日期集 内:
步骤 5 : 根据步骤 4的判断结果, 确定在该日期所述定时器是否需要执 行。
进一步地, 所述步骤 4包括以下步骤:
步骤 41 : 判断该日期是否在例外日期列表, 如果在, 则判断该曰 期是否设置有例外类型, 及例外类型是以下中的哪种: "在日期集" 、 "不在日期集" 、 "取反" ;
步骤 41 1 :如果已设置例外类型为 "在日期集",则返回结果"在"; 步骤 412 : 如果已设置例外类型为 "不在日期集" , 则返回结果 "不 在,, ;
步骤 41 3: 如果未设置例外类型或已设置例外类型为 "取反" , 则 判断该日期是否在周期日期列表, 如果在周期日期列表, 则返回结果 "不在" ; 如果不在周期日期列表, 则返回结果 "在" ;
步骤 42 : 如果该日期不在例外日期列表, 则判断该日期是否在周 期曰期列表;
步骤 421 : 如果在周期日期列表, 则返回结果 "在" ;
步骤 422 : 如果不在周期日期列表, 则返回结果 "不在" 。
进一步地, 所述步骤 5包括以下步骤:
步骤 51 : 该日期在所述日期集内, 且所述定时器的日期集引用方 式为正常引用, 则所述定时器执行;
步骤 52 : 该日期在所述日期集内, 且所述定时器的日期集引用方 式为取反引用, 则所述定时器不执行;
步骤 53 : 该日期不在所述日期集内, 且所述定时器的日期集引用 方式为正常引用, 则所述定时器不执行;
步骤 54 : 该日期不在所述日期集内, 且所述定时器的日期集引用 方式为取反引用, 则所述定时器执行。
本发明的有益效果: 利用本发明提供的定时器设置方法及基于该定 时 器设置方法设置的定时器执行方法, 用户在设置定时器的循环执行日期时, 只需引用已设置的日期集, 而无需对每个定时器重复设置所要执行的曰期 ; 同时当碰到特殊日期需临时修改该日期的循环 方式时, 只需将该日期添加 到相应的日期集的例外日期列表中, 而无需额外的操作; 另外基于上述定 时器设置方法及执行方法的定时器还可以按照 取反引用方式, 直接对日期 集以外的日期设置定时器。
为了能更进一步了解本发明的特征以及技术内 容, 请参阅以下有关本 发明的详细说明与附图, 然而附图仅提供参考与说明用, 并非用来对本发 明加以限制。
附图说明
下面结合附图, 通过对本发明的具体实施方式详细描述, 将使本发明 的技术方案及其有益效果显而易见。
附图中,
图 1为本发明定时器设置方法流程示意图;
图 2为本发明定时器设置方法中的日期集设置示 图;
图 3为本发明定时器设置方法中的日期集引用示 图;
图 4为本发明定时器执行方法流程示意图;
图 5 为本发明定时器执行方法中判断某日期是否在 周期日期列表的流 程图;
图 6为本发明定时器执行方法中判断某日期是否 日期集内的流程图; 图 Ί为本发明定时器执行方法中定时器是否执行 辑图。 具体实施方式 为更进一步阐述本发明所釆取的技术手段及其 效果, 以下结合本发明 的优选实施例及其附图进行详细描述。
实施方式 1 :
请参阅图 1, 图 1为本发明定时器设置方法流程示意图。 为实现上述目 的, 本发明提供的定时器设置方法, 包括以下步骤:
步骤 1 : 设置日期集, 所需要设置的参数包括: 名称、 循环周期、 周期 日期列表、 例外日期列表, 循环周期的可选项包括按星期循环、 按阳历月 循环、 按农历月循环, 本实施方式中优选按星期循环。
日期集的名称可以预先设置好, 也可以开放给用户自定义, 一般应命 名为具有实际含义的名称, 本实施方式中优选命名为 "工作曰"。
所述步骤 1中的日期集的数量不少于一个,本实施方式 优选为一个。 参阅图 2, 图 2为本发明定时器设置方法中的日期集设置示 图, 所述 步骤 1中的周期日期列表包括循环周期内的任意顺 或倒数日期及其组合, 其列表内的日期为循环周期内根据用户需要加 入到日期集的日期, 本实施 方式中优选为 5天顺数日期, 为周一至周五。
所述步骤 1 中的例外日期列表为用户设置的具体日期的组 合, 其具体 曰期包括: 在所述周期日期列表中但用户认为不应加入到 日期集的曰期、 不在所述周期日期列表中但用户认为应当加入 到日期集的日期、 以及用户 认为应当显式设置是否在日期集的日期。 如果没有所述特殊日期, 则所 述的例外日期列表为空。 这里所说的 "在所述周期日期列表中但用户认为 不应加入到日期集的日期"是指,该日期属于 期日期列表所表示的日期, 但是由于某些原因不希望它加入到日期集, 例如: 用户由于请假不上班的
" 201 3年 5月 6 日, 星期一"; "不在所述周期日期列表中但用户认为应当 加入到日期集的日期" 是指, 该日期不属于周期日期列表所表示的曰期, 但是由于某些原因希望它加入到日期集, 例如, 由于放假调休需要上班的
" 201 3年 5月 4 日, 星期六"; "用户认为应当显式设置是否在日期集的 日期" 是指, 用户直接指定是否属于日期集的日期, 例如, 用户由于 长期休假而将 2 01 3年 7月 1 日至 2 01 3年 8月 31 日全部 62天都直接 指定为不在 "工作日" 日期集, 而不管这些日期是否属于周期日期列表 所表示的曰期。
所述例外日期列表中的日期应该是由年月日表 示的具体曰期。
本实施方式中优选例外日期列表为空。
步骤 2 : 设置定时器, 所需要设置的参数包括: 定时时间、 需要引用的 曰期集、 日期集引用方式, 所述日期集引用方式的可选项包括正常引用、 取反引用;
需要引用的日期集是在所述步骤 1 中提前设置好参数的, 设置定时器 时用户可选择所要引用的日期集。
参阅图 3, 图 3为本发明定时器设置方法中的日期集引用示 图。 日期 集引用具有两种方式, 其中正常引用是指直接引用日期集所表示的曰 期, 即 "所有在日期集内的日期", 所述取反引用是指对日期集所表示的日期进 行取反, 即 "所有不在日期集内的日期", 利用取反引用可以直接引用日期 集之外的剩余日期, 而无需重新设置一个新的日期集。
所述的取反引用方式可以在所述例外日期列表 为空的情况下引用, 也 可以在例外日期列表非空的情况下引用。
在本实施方式中, 需要引用的以 "工作日" 命名的日期集优选为: 循 环周期为按星期循环, 周期日期列表的日期为 "周一、 周二、 周三、 周四、 周五", 引用方式设置为正常引用, 定时时间为 9: 00, 上述参数即设定了一 个在实际生活中常用的 "每个工作日 9: 00定时执行" 的定时器。
步骤 3 : 若有需要, 可在任意时间执行步骤 1或步骤 2, 修改日期集或 定时器, 修改时可根据用户需求任意修改所设置的参数 , 本实施方式中无 需执行此步骤。
为了更好的说明所述的本实施方式, 以 201 3年 4月 29 日至 201 3年 5 月 19日为例进行说明, 见下表 1。
表 1
实施方式 2 :
本实施方式与实施方式 1相比, 在实施方式 1的基础上执行步骤 3 ,修 改了日期集的例外日期列表。 在所述例外日期列表中添加如下日期: 由于 放假而无需上班的 201 3年 4月 29 日、 201 3年 4月 30日, 由于调休而需要 上班的 201 3年 5月 4 日, 以及由于个人请^^而无需上班的 201 3年 5月 6 曰, 这里, 所有例外日期均未设置例外类型。
实施方式 3:本实施方式与实施方式 1相比所设置的日期集数量有两个, 其中一个日期集与实施方式 1 中所述的 "工作日" 相同, 另一个日期集单 独设置参数;
本实施方式与实施方式 1相比还重新设置了数个定时器,此处优选为 4 个。
设置的日期集及定时器参数如下:
名称: 单数日; 循环周期: 按星期循环;
周期日期列表: 周一、 周三、 周五、 周曰;
例外日期列表: 空;
定时器的定时时间: A、 8: 00 , B、 9: 00 , C、 21: 00 , D、 22: 00;
定时器 A正常引用 "工作日", 定时器 B正常引用 "单数日"
定时器 C取反引用 "工作日", 定时器 D取反引用 "单数日"。
实施方式 1. 1
参阅图 4, 图 4为本发明定时器执行方法流程示意图。基于 述实施方 式 1中定时器设置方法所设置的定时器执行方法 包括以下步骤:
步骤 4 : 判断某日期是否在所述定时器所引用的日期集 内;
步骤 5:根据步骤 4的判断结果,确定某日期所述定时器是否需 执行。 图 5 为本发明定时器执行方法中判断某日期是否在 周期日期列表的流 程图。
图 6为本发明定时器执行方法中判断某日期是否 日期集内的流程图。 图 Ί为本发明定时器执行方法中定时器是否执行 辑图。
在本实施方式中由于所述的例外日期列表为空 , 所述 2013年 4月 29 日至 2013年 5月 19 日的日期是否在 "工作日" 日期集内, 具体如下表 1. 1 所示,
表 1. 1
2013年 4月 29日 -一 2013年 5月 19 日 周一 周二 周三 周四 周五 周六 周曰
4. 2 在 4. 3 在 5. 1 在 5. 2 在 5. 3 在 5. 4 不在 5. 5 不在 5.6 在 5.7 在 5.8 在 5.9 在 5.1 在 5.1 不在 5.1 不在
0 1 2
5.1 在 5.1 在 5.1 在 5.1 在 5.1 在 5.1 不在 5.1 不在
3 4 5 6 7 8 9
, 所述定时器在所述
2013年 4月 29日至 2013年 5月 19日是否需要定时执行的日期如下表 1.2 所示。
表 1.2
本实施方式的实施结果是:在所述 2013年 4月 29 日至 2013年 5月 19 日的时间段内, 每个星期的周一至周五的 9: 00定时器定时执行; 在每星期 的周六与周日, 定时器不执行。
实施方式 2. 1
基于实施方式 2 中定时器设置方法所设置的定时器, 其周期日期列表 包括: 周一至周五, 例外日期列表为: 2013年 4月 29 日、 2013年 4月 30 日、 2013年 5月 4 日, 2013年 5月 6日, 这里, 所有例外日期均未设置例 外类型。
本实施方式所设置的定时器釆用与实施方式 1.1 中定时器执行方法相 同的步骤 4及步骤 5后, 所述定时器在所述 2013年 4月 29 日至 2013年 5 月 19日是否需要定时执行的日期如下表 2.2所示。
表 2.2
本实施方式的实施结果是:在所述 2013年 4月 29 日至 2013年 5月 19 日的时间段内, 2013年 4月 29 日(周一)、 2013年 4月 30日(周二)、 2013 年 5月 6 日 (周一), 以及除 2 013年 5月 4 日 (周六)之外的每周的周六、 周日定时器不执行, 在表 2.2所剩的其他日期中, 每天 9: 00定时器定时执 实施方式 3. 1
本实施方式基于实施方式 3 中定时器设置方法所设置的两个日期集及 四个定时器, 其定时器执行釆用的方法与所述实施方式 1.1 中步骤 4及步 骤 5相同。 根据实施方式 3中所设置的参数, 得到该四个定时器是否需要 执行的结果。
定时器 A (8: 00)正常引用 "工作日", 在所述 2013年 4月 29 日至 2013 年 5月 19 日之间是否需要执行情况如下表 3.11
表 3.11
2013年 4月 29日 -一 2013年 5月 19 日
周一 周二 周三 周四 周五 周六 周曰
4.2 疋 4.3 疋 5.1 疋 5.2 疋 5.3 疋 5.4 否 5.5 否 5.6 疋 5.7 疋 5.8 疋 5.9 疋 5.1 疋 5.1 否 5.1 否
0 1 2
5.1 疋 5.1 疋 5.1 疋 5.1 疋 5.1 疋 5.1 否 5.1 否
3 4 5 6 7 8 9
定时时间 B (9: 00)正常引用"单数日",在所述 2013年 4月 29日至 2013 年 5月 19 日之间是否需要执行情况如下表 3. 12
表 3.12
定时时间 C (21: 00)取反引用"工作日"在所述 2013年 4月 29日至 2013 年 5月 19 日之间是否需要执行情况如下表 3.13
表 3.13
定时时间 D (22: 00)取反引用 "单数日", 在所述 201 3年 4 月 29 日至 201 3年 5月 19 日之间是否需要执行情况如下表 3. 14
表 3. 14
综合表 3. 11—表 3. 14, 本实施方式的实施结果如表 3. 15所示。
表 3. 15 0
: 00 疋 疋 疋 疋 疋 否 否: 00 5. 1 疋 5. 1 否 5. 1 疋 5. 1 否 5. 1 疋 5. 1 否 5. 1 疋1 : 0 3 否 4 否 5 否 6 否 7 否 8 疋 9 疋
0
2: 0 否 疋 否 疋 否 疋 否
0
综上所述, 利用本发明提供的定时器设置方法及基于该定 时器设置方 法设置的定时器执行方法, 用户在设置定时器的循环执行日期时, 只需引 用已设置的日期集, 而无需对每个定时器重复设置所要执行的日期 ; 同时 当碰到特殊日期需临时修改该日期的循环方式 时, 只需将该日期添加到相 应的日期集的例外日期列表中, 而无需额外的操作; 另外基于上述定时器 设置方法及执行方法的定时器还可以按照取反 引用方式, 直接对日期集以 外的日期设置定时器。
实施方式 4
本实施方式是针对某些特殊场景的需要而对一 段时间进行设置, 例如, 老师或学生在寒、 署假对工作日进行的设定, 如果按照实施方式 2 的设置 方式, 则需要把寒署假中的每个周一至周五添加到例 外日期列表, 比较繁 瑣。 这时可以釆用将一段时间添加至例外日期列表 的方法来设置。
以 201 3年的署 4叚时间 201 3年 7月 1 日至 201 3年 8月 31 日为例, 可 以将 201 3年 7月 1 曰至 201 3年 8月 31 曰设置为例外曰期,例外类型为"不 在曰期集" 也即, 例外日期列表中包含了 201 3年 7月 1 日至 201 3年 8月 31 日这一段时间, 而不管这些日期是星期几。
图 7为基于图 6判断结果的定时器是否执行的流程图。
在定时器执行时, 包括两个步骤:
步骤 1, 判断某日期是否在 "日期集", 结果是 "在日期集" 或 "不在 曰期集", 如图 6 所示。 首先判断该日期是否在 "例外日期列表"。 举例来 说, 2013年 7月 6 日为星期六, 该日期在 "例外日期列表" 中, 这时需要 判断是否设置 "例外类型"及 "例外类型"是哪种。 (1 )如果已设置且 "例 外类型" 为 "在日期集", 那么返回的结果就是 "在", 则无需再进行后续 的判断; (2 )如果已设置且 "例外类型" 为 "不在曰期集", 那么返回的结 果就是 "不在", 也无需再进行后续的判断; (3 )如果未设置, 或已设置且 "例外类型"为 "取反",则需要判断该日期是否在 "周期日期列表",( 3. 1 ) 如果在 "周期日期列表", 则 "取反" 的结果是 "不在", 无需进行后续判 断; (3. 2 )如果不在 "周期日期列表", 则 "取反" 的结果是 "在", 无需 进行后续判断。
如果某日期不在 "例外日期列表", 那么需要判断该日期是否在 "周期 曰期列表"。举例来说, 2013年 6月 29 日为星期六,不在"例外日期列表", 也不在日期集为 "工作日" 的 "周期日期列表", 则该日期 "不在日期集"。 再例如, 2013年 6月 28 日为星期五, 不在 "例外日期列表", 在日期集为 "工作日" 的 "周期日期列表", 则该日期 "在日期集"。
步骤 2,根据步骤 1的结果和所设置的定时器引用日期集的方式 判断 定时器在该日期是否需要执行。 步骤 1 的结果包括 "在日期集" 和 "不在 日期集", 定时器引用日期集的方式包括 "正常引用" 和 "取反引用"。 这 样, 就分为以下 4种情况:
"在日期集" 和 "正常引用", 则定时器执行;
"在日期集" 和 "取反引用", 则定时器不执行;
"不在日期集" 和 "正常引用", 则定时器不执行;
"不在日期集" 和 "取反引用", 则定时器执行。
实施方式 4 考虑了将一段连续较长时间统一添加至 "例外日期列表" 的应用场景, 进一步提高了设置效率, 方便用户使用。
以上所述, 对于本领域的普通技术人员来说, 可以根据本发明的技术 方案和技术构思作出其他各种相应的改变和变 形, 而所有这些改变和变形 都应属于本发明权利要求的保护范围。