掌桥专利:专业的专利平台
掌桥专利
首页

一种用户变量域处理方法

文献发布时间:2023-06-19 13:29:16


一种用户变量域处理方法

技术领域

本发明涉及计算机软件技术领域,具体而言,涉及一种用户自定义变量域的描述和处理技术,用于作业规划类系统的批量计划内容生成。

背景技术

在工业生产序列规划中,有大量需要生成的作业序列,含时间、机器、工序描述、订单等信息以及必要的生产相关场景化信息。比如前后工序、装载配送等工序细节。在不同行业和企业中,需要依靠这些场景化信息明确人的操作,达到人机操作的顺利衔接的目的。如印刷行业的装墨、压版、装订等细致的工序描述。传统的作业规划系统,如工业排产软件,如果没有面向具体行业领域深度定制,就无法高效生成面向行业和场景化的信息。

发明内容

为提高作业规划系统的灵活性,避免面向不同行业和企业深度定制的不便,本发明提出一种基于文本变量域的技术,能够由用户自行定义个性化内容,并在计划中自动输出,形成可用的工序计划。

本发明的技术方案由变量域标记语法、变量域标记识别模块、关键字配置模块、替换模块四部分构成。

(一)变量域标记语法

为完成变量域的标记,需先约定变量域标记的方法。本发明中,标记变量域的方法使用纯文本方式,存在于作业计划的文本模版中,而不是采用明确的数据表格方式。具体语法如下:

1)变量声明:采用成对标点符号(如大括号)连同其中的内容作为变量名,嵌入(夹杂)

在文本模板中,如

文本1 …文本{变量1名称}文本{变量2名称}文本…

2)变量默认值说明:默认值的定义既可以在变量名称声明时同时指定,形如:

文本2 …文本{变量1名称=变量1默认值}文本{变量2名称=变量2默认值}文本…

也可以单独用格式比较严格的变量域默认值信息表中定义,变量域默认值信息表的格式如下表1:

表1

在经过上述语法约定,并辅以变量域默认值信息表后,作业规划系统就可以在文本模板中搜索、识别变量域,从而进一步地完成替换。

文本模板在实施至一批计划条目之前,可以为其中的各个变量域重新指定新的取值表,(其格式与表1相同),而不限于仅使用默认值。

(二)变量域识别模块

变量识别模块的作用是在文本模板数据中识别用户自定义变量域,并记录变量的默认值。

1.给定一段文本模板搜索用户定义的变量,流程图见图1,按如下过程:

流程1变量域识别流程

1.1流程开始

1.2搜索成对的标点符号(如大括号对)。在文本模板数据中向下搜索成对的标点符号,如“{”和“}”。

1.3判定成对的标点符号是否存在。如果不存在,或者成对的标点符号对不合法,如“{”与“}”不成对或者中间没有内容,就转向1.4;如果存在且合法转向1.5。

1.4流程结束。

1.5提取变量名。将成对的标点符号中间的内容提取出来,作为变量名。如“{前导}”,提取出变量名为“前导”。如果是文本2带等号的形式,则需要提取等号前的文本内容作为变量名。

1.6判断变量名是否已存在。从变量值变量列表中检索是否存在1.5中提取出的变量名。如果存在,转向1.2;如果不存在转向1.7。

1.7添加变量值变量列表。向表量值变量列表中插入当前变量名,同时记录开始和结束位置,并赋予一个变量域编号,写入变量域信息列表,变量域信息列表下如表2。随后转向1.2。

表2

2.记录变量的默认值。对于给定的变量名,记录其取值的默认值。如果是基于表1的形式,则直接记录每个变量的默认值;如果是文本2的形式,则通过提取成对的标点符号(如大括号对)中“=”后面部分的文字,作为该变量的默认值。写入表1。

(三)关键字模块

关键字模块主要用来定义具有特殊含义的文本如何替换。该模块含关键字描述表结构和关键字识别子模块。

1、关键字描述表结构如下表3

表3

2、关键字搜索替换模块

关键字搜索替换模块的作用是在文本模板中,按照关键字描述表的指引,搜索出需要特殊处理的关键字,调取关键字替换模块,完成关键字的最终替换。

流程2关键字搜索替换

2.1流程开始

2.2对于当前文本进行向下搜索。

2.3判断文本中是否存在合法中括号对。如果不存在转向2.6;如果存在转向2.4。

2.4呼叫替换函数库。中括号内为关键字,通过读取关键字描述表查询该关键字对应的函数名,如表3中的“Replace前导(1)”函数。

2.5替换函数库执行。通过函数名,在替换函数库中通过“反射”方式,调用对应的替换函数,完成对文本的替换。转向2.2。

2.6流程结束。

(四)变量域替换模块

变量域替换模块是在作业规划的过程中将原有变量域替换为具体内容,从而实现批量输出,并满足每条作业计划的差异化要求。按如下流程:

流程3 变量域替换流程

3.1流程开始

3.2确定替换位置。从变量域信息表中按顺序取一条,根据“开始位置”、“结束位置”,确定下一个需要确定的文本位置,含开始位置和结束位置。

3.3判断替换内容是否存在关键字。如果不是存在关键字,转向3.4。如果是关键字,转向流程2,使用关键字替换模块进行搜索替换。

3.4替换为普通内容。将待替换内容替换为变量列表中指定的普通文本内容,输出到结果文本。转向3.5。

3.5流程结束。

对于每一处需要替换的内容,均按流程3处理,其中可能嵌套流程2的调用处理,直至文本末尾。至此,待处理文本内的全部变量域均被替换为具体内容。

本发明的效果是:

(一)作业规划系统用户可根据行业和场景需要自行定义文本变量域。变量域的定义灵活嵌入于内容,不需要填写制式的变量域信息表。

(二)变量域可结合业务自动批量替换为符合用户要求的内容,实现批量操作,并且在每个计划条目中的替换都可以被替换为与当前条目相关的内容,实现内容多态化。

(三)在作业规划系统发布后,保留了作业规划输出的计划内容的深度定制能力。

附图说明

下面结合附图和实施例对本发明进一步说明。

图1为变量域识别过程,对应流程1。

图2为关键字替换的工作过程,对应流程2。

图3为变量域替换模块的工作过程,对应流程3。

图4为本发明方法的流程图

具体实施方式

根据本发明,提供了两种用户变量域处理的实施例,为本发明的两种具体实施,并不意味着本发明的权利保护范围仅限于该两种情形。

【实施例1】

作业规划系统用户输入待处理的文本模板,用于排产计划的“作业说明”字段:

文本3 检查{前工序}输出工件,经过{本工序}加工后,转移至{后工序}

客户根据软件自动生成的变量域默认值表单填写下变量域默认值信息表,如下表4:

表4

变量域识别模块开始对文本3进行搜索,识别出如下变量域,写进变量域信息列表,如下表5:

表5

接下来,客户操作排产作业规划系统,对所有的“精磨”计划应用文本3。作业规划系统将模板文本3应用至所有“精磨”计划事件上,并调用流程3和流程2对原内容进行替换,形成如下表6所示作业结果:

表6

至此,本实施例所有“精磨”计划条目都被套用了文本模板,并且在每处的具体内容都不完全相同,而是取决于前后工序的具体内容,使“作业说明”具有充分的针对性。

【实施例2】

作业规划系统用户输入待处理的文本模板:

文本4 检查{前工序=[前导工序序号][前导工序名称]}输出工件,经过{本工序=精磨}加工后,转移至{后工序=[后续工序序号][后续工序名称]}

作业规划系统记录了该模板的变量域信息,提取了变量域默认值。在实施至一批“精磨”生产计划条目时,用户重新指定了变量域的取值,如下表7所示变量域取值表,:

表7

应用至整个计划。作业规划系统同样进行模板的识别,变量域信息的记录,进行批量替换,形成结果如下表8所示变量域取值表:

表8

本实施例使用新的变量域取值表覆盖了默认取值表,实现了变量域的灵活定制,使相同的模板在不同的作业规划场景下可以灵活调整,实现内容的多态化。

相关技术
  • 一种用户变量域处理方法
  • 一种对AD域用户隶属的冗余安全组处理方法
技术分类

06120113692812