一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

排程数据的处理方法和设备与流程

2023-01-02 19:02:26 来源:中国专利 TAG:


1.本公开涉及生产排程技术领域,具体涉及一种排程数据的处理方法、电子设备、存储介质、计算机程序产品和生产排程系统。


背景技术:

2.在生产排程中,海量数据被存储在数据库中,当用户想向前追溯,直观地了解某物品(成品或者半成品)的生产制造过程时,用户往往会通过在数据库中查询碎片化的信息来自己拼造自己需要的信息,效率低下且容易出错,极大地增加了用户的工作负担。


技术实现要素:

3.本公开提供了一种排程数据的处理方法、电子设备、存储介质、计算机程序产品和生产排程系统。
4.根据本公开的一方面,提供了一种排程数据的处理方法,包括:获取排程数据,排程数据包含多个工艺路线以及各个工艺路线的投入对象和产出对象;在排程数据中遍历与目标对象相关的工艺路线以及相关工艺路线的投入对象和产出对象,以生成表示目标对象的生产工艺流程的树结构。
5.根据本公开的实施例,在排程数据中遍历与目标对象相关的工艺路线以及相关工艺路线的投入对象和产出对象,以生成表示目标对象的生产工艺流程的树结构包括:以目标对象为当前节点,从排程数据中查询以当前节点为产出对象的工艺路线以及查询到的工艺路线的投入对象;将查询到的工艺路线作为当前节点的子节点,并将查询到的工艺路线的投入对象作为所确定的子节点的子节点;以查询到的工艺路线的投入对象作为新的当前节点来返回执行查询,直至当前节点没有任何子节点。
6.根据本公开的实施例,排程数据包括多个条目,每个条目包括工艺路线标识、对象标识以及对象类型标识,工艺路线标识表示工艺路线,对象标识表示对象,对象类型标识指示了对象标识所表示的对象是投入工艺路线的对象还是工艺路线产出的对象。
7.根据本公开的实施例,从排程数据中查询以当前节点为产出对象的工艺路线以及查询到的工艺路线的投入对象包括:从排程数据中查询表示当前节点的对象标识所在的第一条目,其中第一条目中的对象类型标识指示产出对象;将第一条目中的工艺路线确定为以当前节点为产出对象的工艺路线;确定第一条目中的工艺路线所在的第二条目,其中第二条目中的对象类型标识指示投入对象;将第二条目中的对象标识所标识的对象确定为查询到的工艺路线的投入对象。
8.根据本公开的实施例,所述方法还包括:将树结构的节点存储为节点模型,将树结构的各个节点之间的关系存储为关系模型。
9.根据本公开的实施例,所述方法还包括:基于树结构来生成树状图。
10.根据本公开的实施例,基于树结构来生成树状图包括:根据树结构中各个节点所在的层级,确定各个节点在树状图中在第一方向上的位置;根据树结构中各个节点的末级
子节点的数量,确定各个节点在树状图中在第二方向上的位置,第二方向与第一方向交叉,末级子节点是不具有子节点的子节点;根据各个节点在第一方向和第二方向上的位置来生成包括各个节点的树状图,其中在每个节点与该节点的子节点之间具有连接线。
11.根据本公开的实施例,根据树结构中各个节点所在的层级,确定各个节点在树状图中在第一方向上的位置包括:根据以下等式计算节点i在树状图中在第一方向上的坐标x:x=(ltotal
ꢀ–ꢀ
li)
×
w ;其中ltotal表示树结构的总层数,li表示节点i在树结构中所在的层级,w表示节点i在第一方向上的占用空间的大小。
12.根据本公开的实施例,根据树结构中各个节点的末级子节点的数量,确定各个节点在树状图中在第二方向上的位置包括:从根节点开始,根据每个节点的末级子节点的数量为每个节点确定在树状图中在第二方向上的占用空间的大小;从树结构的末级子节点开始,根据节点之间的关系在第二方向上给各个节点分配对应大小的占用空间,以确定各个节点在第二方向上的坐标y。
13.根据本公开的实施例,所述方法还包括:在树状图中,在表示工艺路线的节点与表示该工艺路线的投入对象和产出对象的节点之间的连接线上设置该工艺路线的投入产出比率。
14.根据本公开的实施例,所述方法还包括:针对树结构中的表示各个工艺路线的节点,确定该工艺路线涉及的生产设备;在树状图中,将每个工艺路线涉及的生产设备的标识设置在表示该工艺路线的节点周围。
15.根据本公开的实施例,所述方法还包括:展示用户交互界面;通过用户交互界面来接收表示目标对象的对象标识;以及通过用户交互界面来展示树状图。
16.根据本公开的实施例,所述方法还包括:基于物料清单数据和工艺路线数据来生成排程数据。
17.根据本公开的实施例,物料清单数据包括多个物料清单条目,每个物料清单条目包括物料标识和子物料标识,其中物料标识表示物料,子物料标识表示用于生产物料的子物料;工艺路线数据包括多个工艺路线条目,每个工艺路线条目包括物料标识和工艺路线编号;排程数据包括多个排程数据条目,每个排程数据条目包括工艺路线标识、对象标识以及对象类型标识;其中,基于物料清单数据和工艺路线数据来生成排程数据包括:针对物料清单数据中的每个物料标识,基于工艺路线数据中包括该物料标识的工艺路线条目来生成排程数据中的工艺路线标识,并将所生成的工艺路线标识按照对应的工艺路线编号来排序;根据排序结果,针对所生成的每个工艺路线标识生成包括该工艺路线标识的至少两个排程数据条目,其中至少一个排程数据条目的对象类型标识指示产出对象,至少另一个排程数据条目的对象类型标识指示投入对象,其中对于对象类型标识为产出对象的排程数据条目,该排程数据条目中的对象标识是基于在排序结果中处于当前位置的工艺路线标识得到的;对于对象类型标识为投入对象的排程数据条目,该排程数据条目中的对象标识是在排序结果中处于当前位置上游的工艺路线标识所对应的产出对象的对象标识;其中对于工艺路线标识在排序结果中处于最上游且对象类型标识为投入对象的排程数据条目,该排程数据条目的对象标识是基于物料标识对应的子物料标识得到的。
18.根据本公开的另一方面,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有所述处理器可执行的指令,所述指令在由所述处理器执行时使所述处理器执行
上述方法。
19.根据本公开的另一方面,还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行上述方法。
20.根据本公开的另一方面,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述方法。
21.根据本公开的另一方面,还提供了一种生产排程系统,包括:存储过程引擎,用于获取原始数据,基于原始数据来建立具有数据版本信息的数据快照,并使用数据快照来生成数据模型,将数据模型转换成供排程引擎使用的数据,供排程引擎使用的数据包括物料清单数据和工艺路线数据;暂存数据库,用于存储所获取的原始数据;基础数据库,与暂存数据库通信连接,用于存储数据快照;建模转换数据库,与基础数据库通信连接,用于存储数据模型;排程数据库,与建模转换数据库通信连接,用于存储供排程引擎使用的数据;排程引擎,用于使用排程数据库中的数据来执行排程任务;用户交互引擎,用于基于物料清单数据和工艺路线数据来生成排程数据,排程数据包含多个工艺路线以及各个工艺路线的投入对象和产出对象;以及在排程数据中遍历与目标对象相关的工艺路线以及相关工艺路线的投入对象和产出对象,以生成表示目标对象的生产工艺流程的树结构;优化器数据库和优化器引擎,优化器数据库与建模转换数据库通信连接,用于存储供优化器引擎使用的数据;用户数据库,与用户交互引擎和基础数据库通信连接,用于存储用户信息和用户权限;以及管理器,用于在生产排产系统中执行最高权限操作。
22.根据本公开的实施例,存储过程引擎用于:响应于创建第一排程任务,获取原始数据;接收针对第一排程任务的配置信息;基于所获取的原始数据来建立具有数据版本信息的数据快照;使用所建立的数据快照来生成针对第一排程任务的数据模型,其中针对第一排程任务的数据模型和配置信息用于第一排程任务的执行;响应于创建第二排程任务来接收针对第二排程任务的数据版本信息和针对第二排程任务的配置信息,从先前建立的数据快照中提取与接收到的数据版本信息匹配的数据快照,以及基于所提取的数据快照来生成针对第二排程任务的数据模型,其中针对第二排程任务的数据模型和配置信息用于第二排程任务的执行。
23.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
24.附图用于更好地理解本方案,不构成对本公开的限定。
25.图1示出了根据本公开实施例的排程数据的处理方法100的流程图。
26.图2示出了根据本公开实施例的排程数据的处理方法中生成树结构的示例方法的流程图。
27.图3a示出了根据本公开实施例的排程数据的示意图。
28.图3b示出了根据图3a所示的排程数据生成的示例树结构的示意图。
29.图4示出了根据本公开另一实施例的排程数据的处理方法200的流程图。
30.图5a示出了根据本公开实施例的交互界面中的输入框的示意图。
31.图5b示出了根据本公开实施例的交互界面中的树状图的示意图。
32.图6示出了根据本公开实施例的树状图的生成方法300的示例的流程图。
33.图7示出了根据本公开另一实施例的交互界面的示意图。
34.图8示出了根据本公开实施例的物料清单数据。
35.图9示出了根据本公开实施例的工艺路线数据。
36.图10示出了根据本公开实施例的排程数据。
37.图11示出了根据图10的排程数据生成的树结构的示意图。
38.图12是根据本公开实施例的生产排程系统的框图。
39.图13示意性示出了根据本公开实施例的适于实现排程数据的处理方法的电子设备的方框图。
具体实施方式
40.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
41.需要说明的是,以下方法中各个操作的序号仅作为该操作的表示以便描述,而不应被看作表示该各个操作的执行顺序。除非明确指出,否则该方法不需要完全按照所示顺序来执行。
42.图1示出了根据本公开实施例的排程数据的处理方法100的流程图。
43.在操作s110,获取排程数据,所述排程数据包含多个工艺路线以及各个工艺路线的投入对象和产出对象。
44.例如,排程数据可以包括多个条目,每个条目可以包括工艺路线标识、对象标识以及对象类型标识。在每个条目中,工艺路线标识表示工艺路线,对象标识表示对象,对象类型标识指示了对象标识所表示的对象是投入工艺路线的对象还是工艺路线产出的对象。
45.在一些实施例中,排程数据可以是基于物料清单(bom,bill of material)数据和工艺路线(routing)数据来生成的。例如,生产排程系统可以对抓取的原始数据进行建模,得到物料清单数据和工艺路线数据,然后根据物料清单数据和工艺路线数据来生成上述排程数据。由于排程数据体现了各个工艺路线的投入对象和产出对象,因此根据投入和产出的关系能够追溯得到生产工艺流程。
46.在操作s120,在排程数据中遍历与目标对象相关的工艺路线以及所述相关工艺路线的投入对象和产出对象,以生成表示所述目标对象的生产工艺流程的树结构。
47.例如,可以以目标对象为当前节点,从排程数据中查询以当前节点为产出对象的工艺路线以及查询到的工艺路线的投入对象。然后,将查询到的工艺路线作为所述当前节点的子节点,并将查询到的工艺路线的投入对象作为所确定的子节点的子节点。然后,以所述查询到的工艺路线的投入对象作为新的当前节点来返回执行所述查询,直至当前节点没有任何子节点。
48.利用本公开实施例的方法,能够根据排程数据自动生成能够体现目标对象的生产工艺流程的树结构,以辅助用户进行排程工作。相比于传统方式中用户手动调取各种复杂数据表格来逐个查看和分析,本公开的实施例通过树结构的自动生成,使得用户输入目标
对象即可获知该目标对象的生产工艺流程,从而提高排程工作效率。
49.图2示出了根据本公开实施例的排程数据的处理方法中生成树结构的示例方法的流程图。
50.在操作s1201,根据用户输入来确定目标对象,作为当前节点。例如,如果用户需要获知目标对象(例如某成品或半成品)的生产工艺流程,则可以输入表示该目标对象的对象标识。计算机可以将目标对象作为当前节点,例如可以将目标对象的对象标识存储在当前节点中,此时当前节点为根节点。在一些实施例中,当前节点中还可以存储与目标对象相关的其他信息,例如但不限于生产目标对象需要用到的设备资源、生产工艺条件、工艺参数等等。
51.在操作s1202,判断排程数据中是否存在以当前节点为产出对象的工艺路线,如果是,则执行操作s1203,否则结束流程。
52.例如,如果排除数据中存在以目标对象作为产出对象的工艺路线,则表明目标对象是通过该工艺路线得到的产出对象。这意味着目标对象不是工艺流程起始点的原始物料,通过该工艺路线向上游追溯可以得到用于生产目标对象的物料,因此流程继续进行至操作s1203。如果排程数据中找不到以目标对象作为产出对象的工艺路线,则表明目标对象不是由任何工艺流程生产得到的,而是提供给工艺流程起始点的原始物料,那么流程结束,从而停止追溯。
53.在操作s1203,从排程数据中查询以当前节点为产出对象的工艺路线的投入对象。
54.所谓投入对象指的是投入工艺路线的对象,例如但不限于物料或半成品。在操作s1202确定了工艺路线之后,可以进一步在排程数据中查找该工艺路线的投入对象,从而能够确定以下关系:在操作s1023中确定的投入对象经过在操作s1202中确定的工艺路线的加工处理之后得到了上述操作s1021中用户输入的目标对象。
55.在操作s1204,将操作s1202中查询到的工艺路线作为所述当前节点的子节点,将操作s1203中查询到的工艺路线的投入对象作为所确定的子节点的子节点。
56.至此,从目标对象开始经过第一轮追溯,得到以下节点关系:投入对象(第三层级节点)

工艺路线(第二层级节点)

目标对象(根节点,即第一层级节点)。
57.在操作s1205,以操作s1203查询到的工艺路线的投入对象作为新的当前节点,返回执行操作s1202。
58.例如,以第一轮追溯的终点为起点来开始第二轮追溯,即,在排程数据中继续查找以上述操作s1203确定的对象为产出对象的工艺路线及其对应的投入对象,从而确定第四和第五层级节点,以此类推,直至最终找到没有上游工艺路线的节点为末级节点,也称作目标节点的末级子节点。
59.本公开实施例的排程数据能够体现工艺路线和对象之间的产入产出关系,基于这种产入产出关系来检索信息,构建出易于用户理解的树状结构,该树结构以目标对象为根节点,以目标对象涉及的生产工艺路线和物料(例如半成品、原材料等等)为各层子节点,从而以直观的方式体现了生产该目标对象的生产工艺流程。基于该树结构,用户能够以直观的方式了解目标对象的复杂生产工艺流程,大大降低了用户的工作负担,提高了排程效率。
60.图3a示出了根据本公开实施例的排程数据的示意图。图3b示出了根据图3a所示的排程数据生成的示例树结构的示意图。
61.如图3a所示,排程数据包括多个条目,在本实施例中为了便于说明仅示出了两个条目i1和i2,然而本公开的实施例不限于此,排程数据中可以包含更多数量的条目。每个条目i1和i2可以包括工艺路线标识route_id、对象标识inventory_id以及对象类型标识bom_tpye,其中工艺路线标识route_id表示工艺路线,对象标识inventory_id表示对象,对象类型标识bom_tpye指示了对象是工艺路线的投入对象还是产出对象。换言之,在每个条目中,对象类型标识bom_tpye指示了对象标识inventory_id所表示的对象是工艺路线标识route_id所表示的工艺路线的产入的对象还是产出的对象。多个条目可以包括两种类型的条目,即第一条目和第二条目(在图3a中分别由i1和i2表示),其中第一条目i1中的对象类型标识bom_tpye为p,其指示对象是产出对象;第二条目i2中的对象类型标识bom_tpye为c,其指示对象是投入对象。
62.假设用户输入了目标对象的对象标识inv1,那么计算机将以目标对象为根节点来生成树结构。例如,如图3b所示,可以首先将目标对象的对象标识inv1存储为根节点node1,这里根节点node1是第一层级节点。
63.然后,从如图3a所示的排程数据的多个条目中确定对象标识inventory_id为inv1且对象类型标识bom_tpye为p的条目(本实施例中为i1)作为第一条目。然后,将第一条目i1中的工艺路线确定为当前节点(此时为根节点node1)的子节点。在图3a中第一条目i1中的工艺路线标识为r1,可以将工艺路线标识r1存储为图3b所示的节点node2,节点node2是根节点node1的子节点,即第二层级节点。接下来,在如图3a所示的排程数据中查找工艺路线标识route_id为r1且对象类型标识bom_tpye为c的条目(本实施例中为i2)作为第二条目。可以将第二条目i2中的对象标识inv2所表示的对象确定为工艺路线r1的投入对象。例如,如图3b所示,将第二条目i2中的对象标识inv2存储为节点node3,其中节点node3为节点node2的子节点,即第三层级节点。
64.至此完成了第一轮追溯,得到如图3b所示的最简单形式的树结构。然而图3b仅仅是为了示意说明,本公开实施例不限于此,接下来可以将节点node3作为当前节点来开始下一轮追溯。例如在排程数据中查找对象标识为inv2且对象类型标识为p的条目作为第一条目,并将第一条目中的工艺路线标识(例如r2)存储为节点node3的子节点node4;然后从排程数据中查找工艺路线标识为r2且对象类型标识为c的条目作为第二条目,并将第二条目中的对象标识(例如inv3)存储为节点node4的子节点node5。以此类推,直至当前节点在排程数据中找不到对应的工艺路线,则完成树结构的生成。
65.图4示出了根据本公开另一实施例的排程数据的处理方法200的流程图。
66.在操作s210,获取排程数据,所述排程数据包含多个工艺路线以及各个工艺路线的投入对象和产出对象。
67.例如可以获取如以上实施例所述的排程数据。
68.在操作s220,展示用户交互界面。
69.例如,可以展示如图5a所示的交互界面,交互界面可以包括多个展示元素e1、e2、e3等等。例如交互界面中可以包含输入框e1,用户可以在输入框e1中输入想要查询的目标对象(例如成品或半成品)的对象标识。在一些实施例中,交互界面中还可以包括资源选项e2,计算机可以响应于用户对资源选项e2的操作(例如勾选资源选项e2)在交互界面中展示工艺路线涉及的设备资源。在一些实施例中,交互界面中还可以包括搜索按钮e3,当用户在
输入框e1中输入对象标识之后,计算机可以响应于用户对搜索按钮e3的操作(例如点击搜索按钮e3)来执行后续操作。在一些实施例中,交互界面中还可以包含位于输入框一侧的下拉框选项,以供用户选择。计算机可以响应于用户对下拉框的操作(例如点击下拉框选项)来展示多个候选的对象标识,以供用户选择。
70.在操作s230,通过用户交互界面来接收表示目标对象的对象标识。例如计算机可以接收用户在输入框中输入的对象标识或者从下拉框选项中选择的对象标识作为目标对象标识。
71.在操作s240,在排程数据中遍历与目标对象相关的工艺路线以及所述相关工艺路线的投入对象和产出对象,以生成表示目标对象的生产工艺流程的树结构。
72.例如,可以如以上实施例中描述的方式来生成树结构。
73.在操作s250,将树结构的节点存储为节点模型,将树结构的各个节点之间的关系存储为关系模型。
74.以图3b所示的树结构为例,节点模型中存储了节点node1(包含对象标识inv1)、节点node2(包含工艺路线标识r1)和节点node3(包含对象标识inv2),例如可以存储为列表形式。关系模型中存储了节点node1、node2和node3之间的父子关系,即,节点node1为根节点,节点node2为节点node1的子节点,节点node3为节点node2的子节点。在一些实施例中,关系模型中还可以存储投入产出比。
75.在操作s260,基于树结构来生成树状图。
76.树状图可以展示树结构的各个节点以及它们之间的关系。可以基于上述节点模型和关系模型来生成树状图。例如,可以根据树结构中各个节点所在的层级,确定各个节点在树状图中在第一方向上的位置;并根据树结构中各个节点的末级子节点的数量,确定各个节点在树状图中在第二方向上的位置。然后可以根据各个节点在第一方向和第二方向上的位置将它们设置在树状图中,并根据各个节点之间的关系在节点之间设置连接线。由此,得到了要展示的树状图。
77.例如,可以生成如图5b所示的树状图。在图5b中,树状图包括第一层级节点node1、一个第二层级节点node2、两个第三层级节点node3_1、node3_2,两个第四层级节点node4_1、node4_2和四个第五层级节点node5_1、node5_2、node5_3、node5_4。节点node2节点node1的子节点,因此分别通过一条连接线与节点node1连接,连接线可以为箭头线,以体现二者之间的从属关系。类似地,节点node3_1和node3_2是节点node2的子节点,节点node4_1是节点node3_1的子节点,节点node4_2是node3_2的子节点;节点node5_1和node5_2是节点node4_1的子节点,节点node5_3、node5_4是节点node4_2的子节点。在图5b中,三角形表示物料,矩形表示工艺路线。从图5b可以看出,节点node5_1和node5_2所表示的物料经过节点node4_1所表示的工艺流程之后得到了节点node3_1所表示的物料,而节点node5_3和node5_4所表示的物料经过节点node4_2所表示的工艺流程之后得到了节点node3_2所表示的物料。接下来,节点node3_1和node_2所表示的物料经过节点node2表示的工艺流程之后,得到了节点node1表示的物料,即目标对象。由此,树状图直观地体现了目标对象的整个生产工艺流程。
78.在操作s270,通过用户交互界面来展示树状图。
79.例如计算机可以利用所连接的显示设备来展示树状图。在一些实施例中,计算机
可以将树状图发送给其他电子设备(例如远程终端设备),以便在其他电子设备上展示树状图。
80.本公开的实施例能够接收用户输入的目标对象标识,根据用户输入自动生成表示目标对象的生产工艺流程的树结构,并转换成树状图展示给用户。通过上述方式,用户输入目标对象标识后即可获得表示目标对象的生产工艺流程的树状图,无需在数据库的海量数据中查询碎片化的信息并结合经验来主观拼造生产工艺流程,大大降低了用户的工作负担,提高了生产排程的效率。
81.图6示出了根据本公开实施例的树状图的生成方法300的示例的流程图。
82.在操作s310,根据树结构中各个节点所在的层级,确定各个节点在树状图中在第一方向上的位置。
83.例如,可以根据以下等式计算节点i在树状图中在第一方向上的坐标x:x=(ltotal
ꢀ–ꢀ
li)
×
w ;其中ltotal表示树结构的总层数,li表示节点i在树结构中所在的层级,w表示节点i在第一方向上的占用空间的大小。
84.以图5b所示的树状图为例,该树状图共包括5个层级的节点,即,节点总数ltotal=5。各个节点在第一方向(图5b中为x方向)上的占用空间的大小w可以是预设值。w的数值单位可以是像素数量,也可以是长度,例如厘米或毫米,本公开对此不作限制。在这种情况下,位于第一层级节点node1在x方向上的位置x=(ltotal
ꢀ–ꢀ
li)
×
w=4w。类似地,位于第二层级节点node2在x方向上的位置x=3w,位于第三层级节点node3_1和node3_2在x方向上的位置x=2w,以此类推。
85.在操作s320,根据树结构中各个节点的末级子节点的数量,确定各个节点在树状图中在第二方向上的位置,所述第二方向与所述第一方向交叉,所述末级子节点是不具有子节点的子节点。
86.例如,可以从根节点开始,根据每个节点的末级子节点的数量为每个节点确定在树状图中在第二方向上的占用空间的大小。然后,从树结构的末级子节点开始,根据节点之间的关系在第二方向上给各个节点分配对应大小的占用空间,以确定各个节点在第二方向上的坐标y。
87.如图5b所示,第一层级节点(即根节点)node1的末级子节点的数量为4个(即node5_1至node5_4)。第二层级子节点node2的末级子节点数量也同样是4个(即node5_1至node5_4)。第三层级子节点node3_1的末级子节点的数量为2个(即node5_1和node5_2),第三层级子节点node3_2的末级子节点的数量为2个(即node5_3和node5_4)。第四层级子节点node4_1的末级子节点的数量为2个(即node5_1和node5_2),第四层级子节点node4_2的末级子节点的数量为2个(即node5_3和node5_4)。每个节点node5_1至node5_4本身即是末级子节点,可以认为其末级子节点数量为1。
88.据此,可以确定各个子节点在第二方向(图5b中为y方向)上的占用空间的大小。例如,每个节点node5_1至node5_4的末级子节点数量为1,则可以将其在y方向上的占用空间大小设置为一个单位尺寸k。k可以为预设数值,k的数值单位可以是像素数量,也可以是长度单位,例如厘米或毫米等。相应地,给每个节点node4_1和node4_2在y方向上的占用空间大小设置为2k,给每个节点node3_1和node3_2在y方向上的占用空间大小设置为2k,给节点
node2在y方向上的占用空间大小设置为4k,给节点node1在y方向上的占用空间大小设置为4k。
89.然后,按照各个节点在y方向上的占用空间的大小,结合树结构的节点关系和树状图的图像尺寸,给各个节点分配其在y方向上的占用空间。例如,假设树状图的图像在y方向上的尺寸为120mm,那么k可以设置为120mm/4=30mm,以将图像在y方向的尺寸四等分,得到y方向上的四个空间:[0mm,30mm],[31mm,60mm],[61m,90mm],[90mm,120mm]。可以将等尺寸的这四个空间分配给节点node5_1至node5_4。节点node5_1至node5_4的位置关系可以根据树结构的节点关系来设置。例如节点node5_1和node5_2是节点node4_1的子节点,而node5_3和node5_4是节点node4_2的子节点。可以将节点node5_1和node5_2作为第一组,分别设置在[0mm,30mm]和[31mm,60mm]这两个空间;而将node5_3和node5_4作为第二组,分别设置在[61m,90mm]和[90mm,120mm]这两个空间。由此,如图5b所示,完成了节点node5_1至node5_4在y方向上占用空间的分配。然后以类似的方式,给每个节点node4_1和node4_2分配其在y方向上的占用空间,在本实施例中分配给节点node4_1的占用空间为[0mm,60mm],分配给节点node4_2的占用空间为[61mm,120mm]。以此类推,给节点node3_1和node3_2分别分配占用空间[0mm,60mm],[61mm,120mm];给节点node2分配占用空间[0mm,120mm];给节点node1分配占用空间[0mm,120mm]。
[0090]
然后,可以根据各个节点在y方向上的占用空间,确定各个节点在y方向上的位置。各个节点在y方向上的位置可以位于其占用空间中的任意位置,例如中点。例如,可以将节点node5_1至node5_4在树状图中的y坐标分别设置为15mm、45mm、75mm和105mm。类似地,节点node4_1和node4_2的y坐标分别设置为30mm和60mm,节点node3_1和node3_2的y坐标分别设置为30mm和60mm,节点node2的y坐标设置为60mm,节点node1的y坐标设置为60mm。
[0091]
然而本公开的实施例不限于此,在一些实施例中,在设置每个节点的y坐标时,还可以综合考虑其相邻层级节点的y坐标。例如,每个节点的坐标y可以与该节点的在第二方向上距离最远的两个子节点的坐标y等间距。同样以图5b为例,假设node5_1至node5_4在树状图中的y坐标分别设置为10mm、40mm、70mm和10mm,那么节点node4_1在树状图中的y坐标可以设置为与其两个子节点node5_1和node5_2等距离,即设置在15mm处,类似地node4_2的y坐标设置在35mm处。以类似的方式,节点node3_2和node3_1的y坐标也分别设置为15mm和35mm,以在y方向上分别与各自的子节点node4_1和node4_2对齐。节点node2的y坐标设置在30mm处,以便与其两个子节点node3_2和node3_1在y方向上等间距。节点node1的y坐标设置在30mm处,以便与其子节点node2在y方向上对齐。
[0092]
如图5a和5b所示,树状图中各个节点可以表示为相应的几何形状,例如对应工艺路线的节点在图中表示为矩形,对应物料的节点在图中表示为三角形。上面提到的每个节点在树状图中的位置可以由该节点的几何中心来定义,也可以由节点的其他位置点(例如一侧边缘的中心)来定义,本公开对此不作限制。
[0093]
在操作s330,根据各个节点在第一方向和第二方向上的位置来生成包括所述各个节点的树状图,其中在每个节点与该节点的子节点之间具有连接线。
[0094]
例如,在图像中,可以在节点node1与其子节点node2之间设置带箭头的连接线,箭头方向可以指向节点node1,以表示生产工艺的走向。类似地,在节点node2与其子节点node3_1和node3_2之间分别设置连接线,以此类推,得到如图5b所示的树状图。
[0095]
在一些实施例中,在表示工艺路线的节点与表示该工艺路线的投入对象和产出对象的节点之间的连接线上设置该工艺路线的投入产出比率。例如在图5b中,各个工艺路线的投入产出比率均为1。
[0096]
在一些实施例中,排程数据的处理方法300还可以包括操作s340和s350。
[0097]
在操作s340,针对树结构中的表示各个工艺路线的节点,确定该工艺路线涉及的生产设备。
[0098]
工艺路线涉及的生产设备也称作生产资源或资源设备,待加工的物料投入工艺路线之后,经过工艺路线中包含的各个生产设备的处理,得到产出的物料。一个工艺路线可以包含一个或多个生产设备。在一些实施例中,排程数据中还可以包含工艺路线所涉及的生产设备的信息,例如排程数据的各个条目还可以包括工艺路线涉及的生产设备的标识。可以从排程数据中查询各个工艺路线涉及的生产设备。在另一些实施例中,可以从用于生成排程数据的建模数据(例如工艺路线数据)中查找各个工艺路线涉及的生产设备。
[0099]
在操作s350,在树状图中,将每个工艺路线涉及的生产设备的标识设置在表示该工艺路线的节点周围。
[0100]
例如,可以将该工艺路线涉及的生产设备作为工艺路线的子节点设置在表示该工艺路线的节点周围。可以使工艺路线与其生产设备相距预设的距离。例如,可以将工艺路线的图形的几何中心作为圆心,以预设的距离将各个生产设备的标识分布在圆心周围。例如,对于每个工艺路线节点,可以根据以下公式计算其生产设备节点在x和y方向上的坐标x’和y’:x’=x

d*cos(180
°
/n*n);y’=y

d*sin(180
°
/n*n);其中x和y分别表示工艺路线节点在x和y方向上的坐标,d表示预设距离,n表示工艺路线节点涉及的生产设备的总数,n表示第n个生产设备,其中n和n均为整数,1≤n≤n。
[0101]
图7示出了根据本公开另一实施例的交互界面的示意图。
[0102]
如图7所示,交互界面包括输入区域a1和展示区域a2。在输入区域a1中包含输入框e1、资源选项e2和搜索按钮e3。用户在输入框e1中输入了目标对象的对象标识并勾选了资源选项e2之后,可以点击搜索按钮e3。然后,可以在交互界面的展示区域a2中展示树状图。树状图中各个节点可以表示为不同形状的几何图形。例如在图7中,工艺路线r1涉及多个生产设备d1、d2、d3、d4,工艺路线r2涉及多个生产设备d4、d5、d6。表示生产设备d1至d7的节点(统称生产设备节点d)可以设置成椭圆形,以与表示工艺路线r1至r2的矩形节点(统称工艺路线节点r)和表示对象inv1至inv3的三角形节点(统称对象节点inv)相区分。然而本公开的实施例不限于此,树状图中各个节点的几何图形可以通过其他方式相区分,例如采用不同的形状、颜色、阴影等等。在一些实施例中,同一个工艺路线与其各个生产设备的距离可以相等。在一些实施例中,不同的工艺路线与各自生产设备的距离可以设置成相等的。
[0103]
如图7所示,在一些实施例中,可以在工艺设备节点d与工艺路线节点r之间设置连接线。在一些实施例中,工艺路线节点r和生产设备节点d之间的连接线可以在诸如形状、颜色、线条粗细等方面与工艺路线节点r和对象节点inv之间的连接线相区分。例如在图7中,相比于工艺路线节点r与对象节点inv之间的连接线,工艺路线节点r与生产设备节点d之间的连接线无箭头且更细。在图7中,各个节点被表示为平面几何图形,但是本公开的实施例
不限于此。在一些实施例中,节点也可以表示为立体图形。
[0104]
在一些实施例中,可以将树状图中的各节点设置成可拖动的,使得用户可以根据需要改变各节点的位置。在一些实施例中,在确定各节点在树状图中的位置之后,还可以根据各节点的图形尺寸和位置关系来判断节点之间是否存在遮挡,如果是,则调整节点位置。在一些实施例中,可以随着节点位置的改变适应性调整节点之间的连接线长度,以使树状图看上去随着用户的拖动以平滑的方式改变。
[0105]
在一些实施例中,可以将节点设置成可展开的。例如,在生成树结构的过程中,将对象标识连通对象的其他信息存储在节点中。例如,对于表示物料的节点来说,可以将物料标识连同物料的用量、库存、替代物料等信息一并存储在该节点中。在生成树形图的过程中,可以将该节点设置成可展开的。例如,在默认状态下,该节点的几何图形中包含对象标识;响应于用户点击该节点,使得节点的几何图形中除了包含对象标识之外还包括对象的其他信息,例如物料的用量、库存、替代物料等等。然而本公开的实施例不限于此,节点可以采用其他方式展开,例如以弹窗或下拉框的形式展示对象的其他信息,或者将对象的其他信息展示在节点周围。以上以表示对象的节点为例进行了说明。然而本公开的实施例不限于此。例如对于表示工艺路线的节点来说,节点中除了包含工艺路线标识之外,还可以包含工艺路线的其他信息,例如但不限于加工参数、加工时长等等。
[0106]
在一些实施例中,还可以在节点之间的连接线上展示所需的信息。例如,可以在工艺路线节点与其投入和产出对象的节点之间的连接线上展示投入产出比率。如图7所示,工艺路线r1与其投入对象inv2和产出对象inv1之间的连接线上示出的投入产出比率为1,表示投入1个投入对象inv2经过工艺路线r1的加工之后得到一个产出对象inv1。在一些实施例中,可以在工艺路线节点与其生产设备节点之间的连接线上展示各个生产设备的工作时长。如图7所示,工艺路线r1涉及多个生产设备d1、d2、d3、d4的工作时长均为15小时40分。在一些实施例中,可以将各个生产设备按照加工顺序排列。例如在图7中,工艺路线r1的各个生产设备按照d1、d2、d3、d4的顺序工作,因此以此顺序顺时针排列在工艺路线r1周围。在一些实施例中,可以将各个生产设备按照其他方式排列,例如按照优先级排列。
[0107]
根据本公开的实施例,可以根据物料清单数据和工艺路线数据来生成上述实施例中使用的排程数据。例如,针对物料清单数据中的每个物料标识,可以执行以下操作:首先,基于工艺路线数据中包括该物料标识的工艺路线条目来生成排程数据中的工艺路线标识,并将所生成的工艺路线标识按照对应的工艺路线编号来排序;然后,根据排序结果,针对所生成的每个工艺路线标生成包括该工艺路线标识的至少两个排程数据条目。所述至少两个排程数据条目中,至少一个排程数据条目的对象类型标识指示产出对象,至少另一个排程数据条目的对象类型标识指示投入对象,其中对于对象类型标识为产出对象的排程数据条目,该排程数据条目中的对象标识是基于在排序结果中处于当前位置的工艺路线标识得到的;对于对象类型标识为投入对象的排程数据条目,该排程数据条目中的对象标识是在排序结果中处于当前位置上游的工艺路线标识所对应的产出对象的对象标识。对于工艺路线标识在排序结果中处于最上游且对象类型标识为投入对象的排程数据条目,该排程数据条目的对象标识是基于所述物料标识对应的子物料标识得到的。
[0108]
下面将参考图8至图10来描述生成排程数据的示例方法。
[0109]
图8示出了根据本公开实施例的物料清单数据。图9示出了根据本公开实施例的工
艺路线数据。图10示出了根据本公开实施例的排程数据。
[0110]
生成排程系统在获取原始数据之后,对原始数据进行建模处理,得到物料清单数据和工艺路线数据。如图8所示,物料清单数据可以包括多个条目,每个条目至少包括物料标识item_id和子物料标识mtrl_id。物料标识item_id表示要生产得到的物料,例如成品、半成品等。子物料标识mtrl_id表示生产该半成品或成品需要使用的物料。例如物料标识item_id可以表示某种型号的显示面板,其对应的子物料标识mtrl_id表示生产该型号显示面板需要使用的物料。在一些实施例中,物料清单数据的每个条目还可以包括物料使用量std_use_qty,其表示生产物流所需要的子物料的量,使用量的计量单位可以为数量、重量或其他任何合适的计量单位。在一些实施例中,物料清单数据的每个条目还可以包括诸如物料来源标识、物料使用量等其他物料相关信息,这里不作限制。
[0111]
如图9所示,工艺路线数据也包括多个条目,每个条目也可以包括物料标识item_id。物料标识item_id表示物料。另外每个条目还包括工艺路线编号proc_schl_seq。工艺路线编号表示用于生产所述物料的工艺路线的执行顺序。例如,编号为4001的工艺路线在编号为4002的工艺路线之前执行,前者的产出对象可以作为投入对象提供给后者。在一些实施例中,工艺路线数据的每个条目还可以包括诸如物料来源标识、工艺路线名称等其他工艺路线相关信息,这里不作限制。
[0112]
可以基于图8所示的物料清单数据和图9所示的工艺路线数据来生成如图10所示的排程数据。
[0113]
首先,基于工艺路线数据中包括该物料标识的工艺路线条目来生成排程数据中的工艺路线标识,并将所生成的工艺路线标识按照对应的工艺路线编号来排序。图10的排程数据包括多个条目,每个条目包括工艺路线标识route_id和对象标识inventory_id。工艺路线标识route_id可以是基于工艺路线数的每个条目中的一项或多项得到的。如图9所示,可以将第一个条目中的物料标识“001”与工艺路线编号“4001”进行组合,得到工艺路线标识“001_4001”;将第二个条目中的物料标识“001”与工艺路线编号“4002”进行组合,得到工艺路线标识“001_4002”,其中工艺路线标识“001_4002”排在工艺路线标识“001_4001”之后。此外,对于物料清单数据中的子物料标识,可以认为其表示的物料是投入生产工艺流程起点处的原始物料,那么可以针对子物料生成排序在工艺路线标识“001_4001”之前的表示初始工艺路线的工艺路线标识。例如,如图10所示,针对图8中同一个物料001的多个子物料6041098、6041099、9713365a,将这些子物料对应的物料标识“001”与预设字段(例如“input”)组合,得到工艺路线标识“001_input”,其排序在工艺路线标识“001_4001”之前。至此,确定了排程数据对应三个工艺路线,依次为“001_input”、“001_4001”、“001_4002”。
[0114]
然后可以针对各个工艺路线生成排程数据中的对应条目。
[0115]
如图10所示,针对工艺路线“001_input”生成四个条目。这四个条目的工艺路线标识均为“001_input”,其中三个工艺路线的对象类型标识为c,一个条目的对象类型标识为p,对象类型为c的条目排在对象为p的条目之前。对于对象类型标识为c的三个条目,其对象标识是通过将图8中的三个子物料标识分别与预设字段相组合而生成的,表示工艺路线“001_input”的三个投入对象。例如在图10中三个条目中的对象标识分别是6041098@b8、6041099@b8、9713365a@b8,其中“@b8”是预设字段,其可以是物料来源标识。对于对象类型标识为p的一个条目,其对象标识是基于当前工艺路线的工艺路线标识“001_input”得到
的,在图10中为“001_input@b8”,表示工艺路线“001_input”的产出对象。
[0116]
如图10所示,针对工艺路线“001_4001”生成两个条目,这两个条目的工艺路线标识均为“001_4001”,对象类型标识分别为p和c,对象类型为c的条目排在对象为p的条目之前。对于对象类型标识为p的条目,其对象标识是基于当前工艺路线的工艺路线标识“001_4001”得到的,在图10中为“001_4001@b8”。对于对象类型标识为c的条目,其对象标识是上游工艺路线“001_input”的产出对象标识,即“001_input@b8”。
[0117]
如图10所示,针对工艺路线“001_4002”生成两个条目,这两个条目的工艺路线标识均为“001_4002”,对象类型标识分别为p和c,对象类型为c的条目排在对象为p的条目之前。对于对象类型标识为c的条目,其对象标识是基于上游工艺路线“001_4001”的产出对象标识,即“001_4001@b8”。假设编号为4002的工艺路线是生产物料001最后一道工序,那么其产出对象即为物料清单中要生产的物料“001”。因此,针对工艺路线标识为“001_4002”且对象类型标识为p的条目,其对象标识是基于物料标识“001”得到的,在图10中为“001@b8”。
[0118]
在一些实施例中,排程数据的每个条目还可以包括投入产出比bom_rate,其可以根据物料清单中的物料使用量的比例来确定。例如,图8的物料清单数据中,三种子物料6041098、6041099、9713365a的物料使用量的比例为2:2:1,因此可以图10所示的排程数据中将将三种子物料“6041098@b8”、“6041099@b8”、“9713365a@b8”对应的投入产出比设置为2、2、1。可以认为产生中间物料001_input@b8的损耗是忽略不计的,因此将其对应的投入产出比设置为1。可以认为生产最终物料“001@b8”是有损耗的,可以根据经验或使用数学模型来计算该损耗,在图10的示例中这种损耗是2%,因此将其投入产出比设置为0.98。
[0119]
如此,生产了图10所示的排程数据。基于图10的排程数据,通过上述实施例的数据处理方法,可以生成如图11所示的树结构。在图11中示出了三个工艺路线,按照工艺顺序依次为“001_input”、“001_4001”、“001_4002”,从图11的树结构能够直观体现出:物料“6041098@b8”、“6041099@b8”、“9713365a@b8”投入工艺路线“001_input”,得到产出对象“001_input@b8”;然后对象“001_input@b8”投入下一个工艺路线“001_4001”,得到产出对象“001_4001@b8”;然后对象“001_4001@b8”投入下一个工艺路线“001_4002”,得到最终的产出对象“001@b8”。在图11的树结构中,还能够体现生产过程中各个工艺路线的投入产出比。
[0120]
图12是根据本公开实施例的生产排程系统的框图。
[0121]
如图12所示,生产排程系统包括存储过程引擎501、暂存数据库503、基础数据库504、建模转换数据库505。
[0122]
存储过程引擎501用于获取原始数据,基于原始数据来建立具有数据版本信息的数据快照,并使用数据快照来生成数据模型,将所述数据模型转换成供排程引擎使用的数据,所述供排程引擎使用的数据包括物料清单数据和工艺路线数据。例如存储过程引擎501可以响应于创建第一排程任务来获取原始数据,接收针对第一排程任务的配置信息,基于所获取的原始数据来建立具有数据版本信息的数据快照,以及使用所建立的数据快照来生成针对第一排程任务的数据模型。
[0123]
暂存数据库503可以从诸如遗产系统(legacy systems)之类的数据源获取数据并临时存储,例如可以用于存储所获取的原始数据,暂存数据库503中的原始数据不具有数据版本信息。根据本公开的实施例,在用户创建第一排程任务以及第一排程任务的任务版本
信息之后,可以利用数据库(例如oracle数据库)配置的程序(例如存储过程)从外部数据源获取原始数据。该原始数据包括但不限于产品的生产路径、原材料、半成品/成品、产能以及库存信息等。在一个示例中,可以利用数据库中对应的程序从外部数据源来获取各种原始数据。该原始数据可以用于建立具有数据版本信息的数据快照。例如,可以利用oracle数据库的scmapp.if_bz.export_cell_pi_bor存储过程获取与其关联的原始数据。scmapp.if_bz.export_cell_pi_bor存储过程是oracle数据库提供的程序开发环境,计算机可以执行基于scmapp.if_bz.export_cell_pi_bor存储过程开发的程序指令以实现原始数据的获取。类似地,可以采用oracle数据库的其他存储过程来获取其他原始数据,这里不再赘述。
[0124]
基础数据库504与暂存数据库503通信连接,用于存储数据快照。建模转换数据库505与基础数据库504通信连接,用于存储数据模型。
[0125]
根据本公开的实施例,生产排程系统还可以包括排程引擎502。排程引擎502通过网关508与存储过程引擎501通信连接。排程引擎502可以使用针对第一排程任务的数据模型和配置信息来执行第一排程任务。排程引擎502可以是t3supplynet排程引擎,其是一种用于生产排程的后台程序,可以用于例如但不限于基础数据检验生、产计划模拟、计划报表分析、工厂产能利用率分析等等。
[0126]
根据本公开的实施例,存储过程引擎501还可以响应于创建第二排程任务来接收针对所述第二排程任务的数据版本信息和针对所述第二排程任务的配置信息,从先前建立的数据快照中提取与接收到的数据版本信息匹配的数据快照,以及基于所提取的数据快照来生成针对所述第二排程任务的数据模型。排程引擎502还可以使用针对所述第二排程任务的数据模型和针对所述第二排程任务的配置信息来执行所述第二排程任务。
[0127]
根据本公开的实施例,上述生产排程系统还可以包括排程数据库506。排程数据库506与建模转换数据库505通信连接,用于存储供排程引擎502使用的数据。在一些实施例中,排程数据库506还可以用于存储来自于排程引擎502的数据,例如排程引擎502在处理过程中产生的各种数据。
[0128]
根据本公开的实施例,上述生产排程系统还可以包括优化器引擎509和优化器数据库510。优化器数据库510与建模转换数据库505通信连接,用于存储供优化器引擎509使用的数据。在一些实施例中,优化器数据库510还可以用于存储来自于优化器引擎509的数据,例如优化器引擎509在处理过程中产生的各种数据。
[0129]
根据本公开的实施例,上述生产排程系统还可以包括管理器507、用户数据库511和用户交互引擎512。用户交互引擎512用于实现人机交互,在一些实施例中可以被实现为用户交互界面(ui,user interface)或者具有用户交互界面展示功能的终端设备,例如客户端。例如,用户交互引擎512用于接收用户输入的配置信息和/或数据版本信息。用户数据库511与用户交互引擎512和基础数据库504通信连接,用于存储用户信息和用户权限。管理器507用于在生产排产系统中执行最高权限操作。
[0130]
举例来说,当用户创建第一排程任务时,存储过程引擎501可以从暂存数据库503获取原始数据,通过用户交互引擎512接收用户输入的配置信息,基于原始数据来建立具有数据版本信息的数据快照并存储在基础数据库504中,使用数据快照来生成数据模型并存储在建模转换数据库505中。建模转换数据库505中的数据模型可以被转换成适用于优化器引擎509的数据并存储在优化器数据库510中,并且还可以被转换成适用于排程引擎502的
数据并存储在排程数据库506中。排程引擎502可以从排程数据库506中获取针对所述第一排程任务的数据模型和配置信息来执行所述第一排程任务。通过这种方式完成了第一排程任务的执行。在这过程中创建了具有数据版本号的数据快照并存储在了基础数据库504中,以供后续使用。
[0131]
当用户创建第二排程任务时,存储过程引擎501可以通过用户交互引擎512接收用户针对所述第二排程任务而输入的数据版本信息和针对所述第二排程任务的配置信息。存储过程引擎501可以从基础数据库504中提取与接收到的数据版本信息匹配的数据快照,基于所提取的数据快照来生成针对所述第二排程任务的数据模型并存储在建模转换数据库505中。以类似的方式,排程引擎502可以使用针对所述第二排程任务的数据模型和针对所述第二排程任务的配置信息来执行所述第二排程任务。
[0132]
在一些实施例中,当用户一并创建了第一排程任务和第二排程任务时,存储过程引擎501可以针对第一排程任务和第二排程任务来进行用户交互,以获取用户分别针对第一排程任务和第二排程任务而输入的配置信息和/或数据版本信息等。然后存储过程引擎501以类似于上述的方式来生成针对第一排程任务的数据模型,排程引擎502基于第一排程任务的数据模型和配置信息来执行所述第一排程任务。在完成第一排程任务的执行之后,存储过程引擎501以类似于上述的方式来生成针对第二排程任务的数据模型,排程引擎502基于第二排程任务的数据模型和配置信息来执行所述第二排程任务。在上述过程中获取的原始数据被存储在暂存数据库503,产生的数据快照被存储在基础数据库504,产生的数据模型被存储在建模转换数据库505。
[0133]
在一些实施例中,在执行排程任务(包括第一排程任务和第二排程任务)的过程中,优化器引擎509和排程引擎502可以配合工作。例如,可以利用优化器引擎509来进行初步排程,再使用排程引擎502来进行精细排程,以此来提高排程结果的准确性。以上述排程方式为例,可以使用优化器引擎509基于线性规划求解模型对产品进行初步排程,得到多个第一条目,每个第一条目包括产品的生产日期、生产数量和对应的生产资源等等,线性规划求解模型中针对瓶颈工序的限制条件以及目标函数可以根据配置信息来确定。然后,可以将多个第一条目合并为第二条目以实现产品排序,并按照订单交期和订单优先级中的至少之一对该产品的订单进行排序。此后,可以使用排程引擎502来对订单排序结果执行精细排程,例如可以从每个订单提取各个工序的生产需求,并基于数据模型和订单排序结果将各个订单的生产需求分配给对应的生产资源和生产时段,从而确定每个生产资源在各个生产时段对应的生产需求。
[0134]
上述任意实施例中使用的物料清单数据和工艺路线数据可以存储在排程数据库506中。上述任意实施例的排程数据的处理方法可以由用户交互引擎512来执行。例如,存储过程引擎501可以将建模转换数据库505中的数据模型转换成可供排程引擎502处理的数据,包括但不限于上述实施例中使用的物料清单数据和工艺路线数据,并将其存储在排程数据库中。用户交互引擎512可以展示用户界面以接收目标对象的对象标识,使用排程数据库506中存储的物料清单数据和工艺路线数据来执行上述实施例的排程数据处理方法,以生成表示目标对象的生产工艺流程的树状图并展示在交互界面上。该过程与生产排程系统的上述排程处理(例如建立快照、建模和执行排程)可以彼此独立地执行。例如用户在使用生产排程系统进行排程的过程中,可以在任意环节启动树状图的生成,以根据需要随时查
看目标对象的生产工艺流程,有助于提高用户工作效率。
[0135]
本公开的实施例可以适用于任何类型的产品的生产排程,例如但不限于显示设备相关产品,如显示面板、显示模组等等。上述实施例中提及的物料可以是待排程的产品及其相关物料,例如但不限于用于制造显示面板的物料。上述工艺路线可以制造产品所需要经过的各个工序。对于显示模组的制造来说,工艺路线可以包括但不限于阵列基板(array)制造工序、显示单元(cell)制造工序、显示模组(module)制造工序等。上述工艺路线也可以是针对某个工序的子工序,例如光刻工艺涉及的涂胶、光照和彰显工艺等等。
[0136]
需要说明的是,装置部分实施例中各模块/单元/子单元等的实施方式、解决的技术问题、实现的功能、以及达到的技术效果分别与方法部分实施例中各对应的步骤的实施方式、解决的技术问题、实现的功能、以及达到的技术效果相同或类似,在此不再赘述。
[0137]
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。另外,在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
[0138]
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
[0139]
图13示意性示出了根据本公开实施例的适于实现排程数据的处理方法的电子设备的方框图。
[0140]
如图13所示,根据本公开实施例的电子设备600包括处理器601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。处理器601例如可以包括通用微处理器(例如cpu)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic))等等。处理器601还可以包括用于缓存用途的板载存储器。处理器601可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
[0141]
在ram 603中,存储有电子设备600操作所需的各种程序和数据。处理器601、rom 602以及ram 603通过总线604彼此相连。处理器601通过执行rom 602和/或ram 603中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除rom 602和ram 603以外的一个或多个存储器中。处理器601也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
[0142]
根据本公开的实施例,电子设备600还可以包括输入/输出(i/o)接口605,输入/输出(i/o)接口605也连接至总线604。电子设备600还可以包括连接至i/o接口605的以下部件中的一项或多项:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分606;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
[0143]
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被
执行时,实现根据本公开实施例的方法。
[0144]
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的rom 602和/或ram 603和/或rom 602和ram 603以外的一个或多个存储器。
[0145]
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的排程数据的处理方法。
[0146]
在该计算机程序被处理器601执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
[0147]
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分609被下载和安装,和/或从可拆卸介质611被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0148]
在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被处理器601执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
[0149]
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如java,c ,python,“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0150]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组
合来实现。
[0151]
本领域技术人员可以理解,本公开的各个实施例中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
[0152]
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献