CN102930397B - discrete enterprise intelligent operation control method - Google Patents

discrete enterprise intelligent operation control method Download PDF

Info

Publication number
CN102930397B
CN102930397B CN201210433134.3A CN201210433134A CN102930397B CN 102930397 B CN102930397 B CN 102930397B CN 201210433134 A CN201210433134 A CN 201210433134A CN 102930397 B CN102930397 B CN 102930397B
Authority
CN
China
Prior art keywords
record
time
product
parts
validity
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
Application number
CN201210433134.3A
Other languages
Chinese (zh)
Other versions
CN102930397A (en
Inventor
陈友春
许清
王龙莹
陈国胜
胡文花
唐晓冬
聂永海
张云龙
吴庆
曹磊
郭晓丹
马宁
程晓敏
付羽翀
赵晓宝
季冬
孙士亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
North Information Control Group Co Ltd
Original Assignee
North Information Control Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by North Information Control Group Co Ltd filed Critical North Information Control Group Co Ltd
Priority to CN201210433134.3A priority Critical patent/CN102930397B/en
Publication of CN102930397A publication Critical patent/CN102930397A/en
Application granted granted Critical
Publication of CN102930397B publication Critical patent/CN102930397B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The invention discloses a kind of discrete enterprise intelligent operation control method, first the multiple product with not fixed subcomponent sum of series multiple tracks assembly process is adopted and do not fix the nested circulation number of plies and array structure product tree, and calculate productive capacity just fixed each operation unit station number; Considering the optimal path that product subordinate relation, Product Assembly flow process, production schedule time, product supporting time, Short Item polishing time, abnormal retardation time, actual finish time, product priority, normal workday each operation unit station number and each operation unit station overtime tens of kinds of factor Automatic-searching parts assemble, this optimal path is with the real-time display and control site work of Gantt chart mode, operation goes into operation to choose and calls job instruction and carry out operation and operation process returns feedback, thus realizes the Operation control of discrete enterprise intelligence.The present invention can enterprise capability of fast response, improves the quality of products and throughput rate, guarantees agreement fulfillment rate.<!--1-->

Description

Discrete enterprise intelligent operation control method
Technical field
The invention belongs to intelligent operation control technology, particularly a kind of discrete enterprise intelligent operation control method.
Background technology
Modern enterprise must promote production control level, just can boost productivity, guarantee agreement fulfillment rate.The production efficiency of enterprise has four kinds of modes: introduce advanced production equipment, improve job operation, improve the production level of operating personnel and promote production control level.
A lot of enterprise of China introduces ERP system, also has some enterprises R & D Enterprises production management system voluntarily.They are all adopt top-down way to manage.In the formulation production schedule, tissue is produced and finished product, semi-manufacture warehouse-in aspect, achieves management process informationization.
Inner at discrete enterprise, there is the product of the subordinate relation of not fix level progression in the face of multiple and there is the built-up member of certain sequencing, many employings using product as a kind of project, the parts in product, subassembly, resulting devices, part, parts peerization process, and are manually split as the method for the sub-project fair play of project.The artificial fractionation needs plenty of time, the result of fractionation, specially for specific model, does not possess versatility.
The large quantities of mass production method of single variety often adopts pipeline system to reach balanced production object.Be characterized in designing productive temp and production line in advance.To the mode of production of multi-varieties and small-batch, adopt traditional production line balance mode, productive capacity can not effectively control, and productive temp often changes, and production line frequently moves a large amount of manpower and materials of needs.
Current many enterprises production locales are in non-fully state of a control mostly.The blindness of production scene, randomness is very large, production control means are deficient, visual management lacks, information can not disclose well, and require far apart with production Panel management, proceeding in quality control can not ensure well, producing potential problem can not Timeliness coverage, and work efficiency can not improve effectively.
Some enterprises of China arrange production management many employings scene, manual note, record mode.The duplication of labour is many, and production data does not accumulate.The production schedule is delayed, and scheduling of production is random large, and manufacturing schedule uncertain factor is many, information tomography.
Developed country and world-class enterprise, focus on based on the scientific management on time study basis especially, notice the research of activity duration.To the mode of production of multi-varieties and small-batch, along with product technology content constantly increases, improvement of operation is endless, and the Utopian measurement data usually adopted needs the input of a large amount of man power and materials.In operation process, accidentalia happens occasionally, and measurement result can differ greatly.To the discrete enterprise for the purpose of getting a profit and honouring an agreement, special time measurement has more exemplary in production control, and operability is not strong.
Summary of the invention
Object of the present invention provides a kind of discrete enterprise intelligent operation control method, can enterprise capability of fast response, improves the quality of products and throughput rate, guarantees agreement fulfillment rate.
The technical scheme realizing the object of the invention is: a kind of discrete enterprise intelligent operation control method, it is characterized in that adopting the multiple product with not fixed subcomponent sum of series multiple tracks assembly process not fixing the nested circulation number of plies and array structure product tree; Be divided into pincers dress, dress wiping, Denso, electricity tune, total school, uniting and adjustment, vanning, outer eight productive units of dress by similarity, each unit arranges again the station that can control the size, and half a day, by 210 minutes, calculates productive capacity and just determines each operation unit station number; In consideration product subordinate relation, Product Assembly flow process, production schedule time, product supporting time, Short Item polishing time, abnormal retardation time, actual finish time, product priority, normal workday each operation unit station number and each operation unit station overtime tens of kinds of factors, the optimum time point that each parts controlling to have subordinate relation product assemble on each station, the optimal path of Automatic-searching parts assembling; This optimal path is with the real-time display and control site work of Gantt chart mode; Operation goes into operation to choose and calls job instruction and carry out operation and operation process returns feedback, thus realizes the Operation control of discrete enterprise intelligence.Compared with prior art, its remarkable advantage is in the present invention:
(1) product tree is built.The subordinate relation progression of product is not fixed, and the quantity of subassembly parts is not also fixed.The inherent law of not fixing progression subordinate relation for product is specialized in, find out and possess this kind of general rule of not fixing the product of progression subordinate relation characteristic, the method of not fixing the nested circulation number of plies and array is adopted to carry out the multiple product tree display with not fixed subcomponent progression, to understand product structure and product framework fast, realize product synchronization.
(2) calculate productive capacity, and allocate normal workday each operation unit station number and overtime each operation unit station number.Fast for Multi-varieties and Small-batch Production mode rhythm, batch is little, the feature that route is distinct, assembly technology is classified according to similarity, be divided into pincers dress, dress wiping, Denso, electricity tune, total school, uniting and adjustment, vanning, outer eight the operation unit of dress, calculate the productive capacity of each operation unit, allotment normal workday each operation unit station number and overtime each operation unit station number.Job instruction is divided into pincers dress, dress wiping, Denso, electricity tune, total school, uniting and adjustment, vanning, outer eight classes of dress according to eight kinds of assembly process unit, is shown the type of the job instruction of feedback terminal by this multipotency work of mode synchronization control system changing multipotency work password type.Ensure that peak load shifting by technological means, eliminate production bottleneck, reach the object of balanced production, realize production smoothing.
(3) under consideration product subordinate relation, Product Assembly flow process, production schedule time, product supporting time, Short Item polishing time, abnormal retardation time, actual finish time, product priority, normal workday each operation unit station number and each operation unit station overtime tens of kinds of actual combat constraints, Automatic-searching has the parts assembling optimal path of the product not fixing progression subordinate relation.Waste maximum in production is the waste waited for.By the optimal path that Automatic-searching parts assemble, can at utmost eliminate the wastes such as excessive production, stand-by period, transport, stock, process, action, product defects, shorten the product manufacturing cycle, enhance productivity, adapt to the Production requirement of modern enterprise multi-varieties and small-batch, promote the capability of fast response of discrete enterprise, improve crew's throughput rate, realize response rapid.
(4) optimal path is shown in real time in Gantt chart mode.Showing optimal path in Gantt chart mode is a kind of visual management mode having technical support, is that the perfection of billboard and network engages.It is shown as means with visual signal, is principle with information disclosure, is the strong guarantee realizing the production automation, Panel management, conscientiously proceeding in quality control can be improved, play excitation and coordinative role, produce good effect of mentality and physiology, show intuitively and produce potential problem.Network information transfer can also be given full play to fast, in time and the advantage of cooperation.Be conducive to the raising of work efficiency, realize information visualizing.
(5) operation goes into operation to choose and calls job instruction and carry out operation and operation process returns feedback.After operation goes into operation and chooses, there is job instruction in operating personnel's aobvious feedback terminal.Operation process is returned feedback and is confirmed that operation completes.Papery assembly technology and arbitrarily operation is replaced with task instruction; Utopian time measurement and arbitrarily estimation is replaced with the data accumulation of science.The time data of operation is accumulated in real time, the optimal path associated that the parts simultaneously arrived with Automatic-searching assemble, the raising of throughput rate can be fulfilled, realize data actual combatization.
Below in conjunction with accompanying drawing, the present invention is described in further detail.
Accompanying drawing explanation
Fig. 1 is the structural drawing of discrete enterprise intelligent operation control method of the present invention.In figure, solid line represents that forward produces, and dotted line represents reverse generation; Real frame line represents the information of collection or the final information of generation, and empty frame line represents the intermediate information of generation.
Fig. 2 is the hardware configuration realizing discrete enterprise intelligent operation control method.Method of the present invention adopts C/S structure, is run by constructing local network; Deposit data is at server end, and client is divided into acquisition terminal, control terminal, aobvious feedback terminal according to effect.The effect of acquisition terminal gathers the data realized needed for the inventive method, and the effect of control terminal is adjustment and the data controlling the inventive method, and the effect of aobvious feedback terminal is display optimal path and feedback operation process.Acquisition terminal, control terminal, aobvious feedback terminal all carry out exchanges data by netting twine and server, and by deposit data in the server.
Embodiment
Composition graphs 1 and Fig. 2, discrete enterprise intelligent operation control method of the present invention, first adopts the multiple product with not fixed subcomponent sum of series multiple tracks assembly process and does not fix the nested circulation number of plies and array structure product tree; And being divided into pincers dress, dress wiping, Denso, electricity tune, total school, uniting and adjustment, vanning, outer eight productive units of dress by similarity, each unit arranges again the station that can control the size, and half a day, by 210 minutes, calculates productive capacity and just determines each operation unit station number; In consideration product subordinate relation, Product Assembly flow process, production schedule time, product supporting time, Short Item polishing time, abnormal retardation time, actual finish time, product priority, normal workday each operation unit station number and each operation unit station overtime tens of kinds of factors, the optimum time point that each parts controlling to have subordinate relation product assemble on each station, the optimal path of Automatic-searching parts assembling; This optimal path is with the real-time display and control site work of Gantt chart mode; Operation goes into operation to choose and calls job instruction and carry out operation and operation process returns feedback, thus realizes the Operation control of discrete enterprise intelligence.Particular content is as follows.
One, product tree is built
(1) annotate
1) in the present invention, the A parts as fruit product are subordinated to B parts, claim just to there is one-level subordinate relation between B parts and A parts, and A parts are the one-level subassembly of B parts, and B parts are father's parts of A parts; If A parts belong to the one-level subassembly of B parts, so just there is secondary subordinate relation between B parts and A parts, A parts are the secondary subassembly of B parts; The progression of the subordinate relation of the product object of the present invention's research is not identical, unfixed, in the present invention, this kind of product with not identical or unfixed subordinate subassembly is called the product with not fixed subcomponent progression;
2) in the present invention, if A circulation is placed in B circulation, claim B circulation and A circulation composition two layers circulation, A circulation is interior loop, and B circulation is called outer loop; If A circulation is placed in B circulation, B circulation is placed on again C circulation, claims C circulation, B circulation, A circulation composition three layers circulation; For the product of not fixed subcomponent progression, the number of plies arranging circulation corresponding with it has not stationarity and uncertainty, is called and does not fix the nested circulation number of plies;
3) said product tree in the present invention, refer to the file directory as computer resource management device, the production schedule that parts have subordinate relation is expressed in the mode of tree view, wherein each parts of product, device are called list items when showing in tree view, express each parts, display text that the word of title of device is called list items in tree view;
4) tree view could can only be increased and deleted data item by editor, the construction method of the fixed bed tree view such as one deck, two layers or three layers is ripe, the present invention's research be the method product of not fixed subcomponent progression being built to the tree view of not fixed bed;
5) the display text that corresponding with having father's parts of product of subordinate relation, subassembly in the present invention tree view expresses father node and child node is called father's item and subitem;
6) production schedule is containing product designation, part number, component names, separate unit number, pass principal characteristic, affiliated product, associated components, supporting operation and remarks nine fields;
(2) production schedule data importing: production schedule reflects product subordinate relation, by TrueTable software, generates text by DWG formatted file, text is imported the production schedule of software;
(3) utilize the production schedule imported by adopting the method for not fixing the nested circulation number of plies and array to build product tree tv_pst to the product of not fixed subcomponent progression, step is as follows:
1) production schedule is pressed product designation cpdh, part number ljdh, affiliated product zcc, associated components zcb field ascending sort;
2) the record number of test products detail list, is denoted as variable li_row;
3) judge production schedule whether record, if li_row=0, represent production schedule not record, exit this step, if li_row>0, represent that production schedule has record; Read the product designation cpdh of Article 1 record, part number ljdh, affiliated product zcc, associated components zcb, tree view list items subitem display text assignment;
4) variable interior loop number of plies inti is set, array stringzcc [20], zcb [20], li_row [20];
5) production schedule is pressed zcc, zcb Field Sanitization, obtain all subassemblies;
6) assignment i=1, tests the record number of all subassemblies, is denoted as li_row [i];
7) judge subassembly whether record, if li_row [i]=0, represent there is no subassembly, so add tree view list items, before this list items, do not have subitem not add "+" number; Recover father's item filtercondition, its next record of cursor pointing, reads the product designation cpdh of next recording-member, part number ljdh, affiliated product zcc, associated components zcb, tree view list items display text assignment; Repeat step 5), 6), 7);
If li_row [i] >0, represent that Article 1 recording-member has subassembly, so add tree view list items; Subitem is had to add "+" number before this list items; Read the product designation cpdh of the Article 1 record of subassembly, part number ljdh, affiliated product zcc [i], associated components zcb [i], tree view list items subitem display text assignment;
8) production schedule is pressed zcc [i], zcb [i] Field Sanitization, obtains all subassemblies;
9) test the record number of all subassemblies, be denoted as li_row [i+1];
10) judge all subassemblies whether record, if li_row [i+1]=0, represent that it does not have subassembly, so add tree view list items; Subitem is not had not add "+" number before this list items; Recover father's item filtercondition, its next record of cursor pointing, read the product designation cpdh of next record, part number ljdh, affiliated product zcc [i], associated components zcb [i]; Tree view list items display text assignment, repeats step 8), 9), 10);
If li_row [i+1] >0, indicates subassembly, so add tree view list items; Subitem is had to add "+" number before this list items; Assignment i=i+1; Read the product designation cpdh of the Article 1 record of its subassembly, part number ljdh, affiliated product zcc [i], associated components zcb [i], tree view list items subitem display text assignment;
11) repeat step 8), 9), 10);
12) when the ending of cursor pointing i level subassembly, get back to father's item, i=i – 1 is set; Judge cursor get back to father's item from the 1st article to li_row [i] article record one article record or the ending record of father's item; If when getting back to one article of record between father Xiang Cong 1 article to li_row [i] article record, then recover the filtercondition of father's item, carry out test and the judgement of next record; If get back to the ending record of father's item, then enter last layer circulation, i=i – 1 is set again;
13) until i=1, products catalogue structure is just constructed in this way.
Two, productive capacity just fixed each operation unit station number is calculated
Calculate productive capacity just fixed each operation unit station number: adopt the method for not fixing the nested circulation number of plies and array to search out all built-up members of product to the product of not fixed subcomponent progression, according to the productive capacity of the operation time counting yield of all built-up member of product; Determine each operation unit station quantity.
(1) annotate
1) parts assembled in the present invention have two layers of meaning: the one-level subassembly of parts, part, device are dressed up father's parts by specific operation by a kind of referring to, are called built-up member in the present invention; The time needed for each procedure dressing up built-up member can be determined by time measurement and experience accumulation, is obtained by data acquisition modes; The time needed for each procedure that built-up member is dressed up can be chosen by operation the data obtained and upgrade; Another kind is all processes that all level subassemblies of whole subassemblies of finger assemble step by step, is called general assembly (GA) parts in the present invention;
2) productive capacity reckoner comprises sequence number, product designation, pincers dress, dress wipings, Denso, electricity are adjusted, total school, uniting and adjustment, vanning, outside dress, product 11 fields in man-hour;
3) operation unit station table comprises operation title and station number two fields;
4) manufacturing plan sheet comprises product designation, part number, component names, batch number, quantity, supporting date, target date, performance, priority and memo field; Manufacturing plan sheet can be imported by text;
5) assemble flow table comprises product designation, part number, component names, operation number, operation title, operation time, non-operation time and memo field; Activity duration (being denoted as tj) is the time all added up workpiece and operating personnel, and non-operation time (being denoted as te) only adds up workpiece, to the time that operating personnel does not add up; Assemble flow table can be imported by text;
6) assembly process of all products of discrete enterprise is classified by similarity, define the operation title of every operation unit, according to assembling process of products feature, assembly process is divided into pincers dress, dress wiping, Denso, electricity tune, total school, uniting and adjustment, vanning, outer eight the operation unit of dress;
(2) to the product with subordinate relation, as follows according to the step of the manufacturing plan sheet imported, assemble flow table calculating productive capacity:
1) select to need to calculate closing time of productive capacity, filter the product plan of manufacturing plan sheet during this period of time, test filter after manufacturing plan sheet whether record, if there is no record, calculate and terminate; If there is record, record number scale makes li_row, carries out productive capacity calculating, generates productive capacity reckoner;
2) manufacturing plan sheet presses product designation, part number, batch number field ascending sort;
3) read in the different product designation of the manufacturing plan sheet filtered successively, as each entry of productive capacity reckoner, after record runs through, increase plan man-hour, reach volume man-hour, ability man-hour, station number four record close item;
4) expression circulation layer number variable inti is set, array stringzcc [20], zcb [20], longlii_row [20]; Read product designation, part number, the planned quantity ljsll of manufacturing plan sheet Article 1 record;
5) operation time corresponding to each operation unit of assemble flow table is searched, if read less than data or the data read as empty, so operation time value is 0, the data operation time of corresponding with corresponding component for planned quantity ljsll operation unit be multiplied are added with the former data of product designation in the corresponding manufacturing plan sheet of productive capacity reckoner, result are set to the respective field of the record of product designation in corresponding manufacturing plan sheet in productive capacity reckoner; If the former data of product designation are empty in corresponding manufacturing plan sheet in productive capacity reckoner, then the data that the operation time of corresponding with corresponding component for planned quantity ljsll operation unit is multiplied are set to the respective field of the record of product designation in corresponding manufacturing plan sheet in productive capacity reckoner;
6) production schedule is pressed product designation, part number Field Sanitization, obtain all subassemblies;
7) assignment i=1, the record number of test subassembly, is denoted as lii_row [i];
8) judge whether have subassembly, if lii_row [i]=0, represent there is no subassembly, next record of cursor pointing so in manufacturing plan sheet, read next record product designation, part number, planned quantity ljsll, repeat step 5), 6), 7), 8);
If lii_row [i] >0, indicate subassembly, read the product designation cpdh of the Article 1 record of its subassembly, part number ljdh, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity (ljsl), ljsl1=ljsl1*ljsl;
9) with the operation time that product designation, part number are each operation unit of conditional search assemble flow table corresponding component, if read less than data or the data read as empty, so operation time value is 0, the data operation time of corresponding with corresponding component for planned quantity ljsll operation unit be multiplied are added with the former data of product designation in corresponding manufacturing plan sheet in productive capacity reckoner, result are set to the respective field of the record of product designation in corresponding manufacturing plan sheet in productive capacity reckoner; If the former data of product designation are empty in corresponding manufacturing plan sheet in productive capacity reckoner, then the data that the operation time of corresponding with corresponding component for planned quantity ljsll operation unit is multiplied are set to the respective field of the record of product designation in corresponding manufacturing plan sheet in productive capacity reckoner;
10) production schedule is pressed zcc [i], zcb [i] Field Sanitization, obtains all subassemblies;
11) test the record number of subassembly, be denoted as lii_row [i+1];
12) judge whether have subassembly, if lii_row [i+1]=0, represent there is no subassembly, so recover father's item filtercondition; Next record of cursor pointing, reads product designation cpdh, the part number ljdh of next record, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity (ljsl), ljsl1=ljsl1*ljsl; Repeat step 9), 10), 11), 12);
If lii_row [i+1] >0, indicates subassembly; Assignment i=i+1; Read product designation cpdh, the part number ljdh of the Article 1 record of subassembly, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity (ljsl), ljsl1=ljsl1*ljsl;
13) repeat step 9), 10), 11), 12);
14) when the ending of cursor pointing i level subassembly level, get back to father's item, i=i – 1 is set; Judge cursor get back to father's item from the 1st article to li_row [i] article record one article record or the ending record of father's item; If get back to father's item from the 1st article to li_row [i] article record one article of record, then recover the filtercondition of father item, carry out test and judgement of next record; If get back to the ending record of father's item, then enter last layer circulation, i=i – 1 is set again, until i=1;
15) each operation unit transverse in each bar product record calculated in productive capacity reckoner is gathered summation, be set to the product field in man-hour of this record;
16) each operation unit in each bar product record calculated in productive capacity reckoner and product are carried out longitudinal direction man-hour and gather summation, the data obtained are set to the corresponding each field of plan record of work;
17) numerical value of each operation unit in man-hour will be planned in productive capacity reckoner divided by working days, then divided by the number of minutes of operation every day, the approximate value that each operation unit number arranges in productive capacity reckoner of arriving to obtain;
18) plan of operation unit each in productive capacity reckoner be multiplied with the volume rate of reaching man-hour with product man-hour, the data obtained are set to and reach the corresponding each field of volume record of work;
19) be multiplied with each operation unit station number by operating time and obtain ability man-hour, the data obtained are set to and reach the corresponding each field of volume record of work;
(3) station digital section in operation unit station table is filled according to the approximate value of station quantity arrangement in productive capacity reckoner.
Three, Automatic-searching has the parts assembling optimal path of the product not fixing progression subordinate relation
Consider the table of product subordinate relation, Product Assembly flow process, production schedule time, product supporting time, Short Item polishing time, abnormal retardation time, actual finish time, product priority, normal workday each operation unit station number and each operation unit station overtime tens of kinds of factors, the optimum time point that each parts that searching controls to have subordinate relation product assemble on each station, Automatic-searching has the parts assembling optimal path of the product not fixing progression subordinate relation.
(1) annotate
1) in the present invention before the parts program representing optimal path, in order to reduce the difficulty in generative process, first generate activity time table;
2) Short Item polishing timetable comprises sequence number, product designation, part number, component names, batch number, quantity, polishing date and remarks eight fields; Short Item polishing timetable is imported by text;
3) add shift report and comprise operation title, overtime work kind, station number, overtime work date and remarks five fields; Add shift report to be imported by text;
4) activity time table comprises sequence number, serial number, operation title, initial time, validity six fields;
5) parts program comprises batch number, affiliated product, associated components, product designation, part number, component names, operation number, operation title, sequence number, serial number, row number, sequence number, priority, start time, end time, operation time, non-operation time, validity, turns to operation number, turns to operation name, turns to sequence number field;
(2) by the determination adding shift report and operation unit station table and use number of days between viewing area, the judgement at weekend, in circulation, the step of the method generation process timetable such as expression of date and time is as follows:
1) data that clearing process timetable is original;
2) user inputs cut-off date em_2, and the date between second day of today and cut-off date is called between viewing area, is denoted as variable xx;
3) if the time of cut-off date equal time of today today (), number of days xx between viewing area is number number of cut-off date, deduct number number of today today (), add the cumulative sum of number number from last day every month during the previous moon in month month to cut-off date of today today ();
4) if time of equaling today today () in the time of cut-off date add 1, number of days xx between viewing area is number number of cut-off date, deduct number number of today today (), add number number from last day every month during today () Dec then month to today of today today (), the cumulative sum of number number of last day every month during adding cut-off date in month January to the cut-off date previous moon then;
5) if time of being greater than today today () in the time of cut-off date add 1, number of days xx between viewing area is number number of cut-off date, deduct number number of today today (), add number number from last day every month during today () Dec then month to today of today today (), number number of last day every month during adding cut-off date in month January to the cut-off date previous moon then, adds the cumulative sum of number number from last day every month during Dec the previous year January next year to cut-off date of today today ();
6) method of getting last day every month is: be set to variable li_month month, if li_month=12, so number number of last day is 31; If li_month<12, so month next month is this month add 1, i.e. li_month+1, and the last day of every month is exactly the previous day on next month 1;
7) with the number of times that the number of days between viewing area circulates for ground floor, with the number of times that the operation name field of operation unit station table circulates for the second layer, with the station digital section of operation unit station table for third layer cycle index enters circulation, reading, assignment, setting are until complete three layers of circulation successively, and activity time table completes setting;
8) in the circulation of step 7), reading, assignment, setting are until the method completing three layers of circulation is as follows successively:
Read the operation title of every bar record in operation unit station table, be set to the operation name field of activity time table;
Read the station number of every bar record in operation unit station table, be set to the sequence number field of activity time table;
The sequence number of activity time table represents with double figures n-m, and n represents the today today () of which number of days afterwards, and n is from 1 to xx; M represents the time period, represents with 1,2,3; 1 represents morning shifts 8:00-11:30, and 1 represents afternoon shift 12:30-16:00, and 3 represent night shift 17:00-20:30; Every order of classes or grades at school work hours are respectively: morning shifts time 08:00; Afternoon shift time 12:30; Night shift time 17:00;
The initial time of activity time table is date-time type data, containing date and time;
Get n-th day date after today today (), judge within n-th day, to be Sunday or Saturday; If so, the station number so in operation unit station table does not participate in circulation;
The validity of activity time table is all set to 0;
Read the record added in shift report; By number field descending sort in order of activity time table; Search the serial number of the corresponding record with the period and with operation title in activity time table; If found, then insert new respective record, the serial number of record is arranged from the serial number found later; If search less than, then insert new respective record, the serial number of record is arranged from 1, until circulation terminate;
9) after activity time table generates, by operation title, initial time, sequence number field ascending order, sequence number field descending sort;
(3) reserved unit program represents record that is that gone into operation, abnormal, completion, removes other records, and the serial number that the reservation record binding parts program is corresponding with activity time table.
Reserved unit program validity field is the record representing the value 3 gone into operation, the value 4 representing exception, represent the value 5 of completion, removes other records.
Parts program validity is 3,4 or 5 and the start time record that is not less than second day of today today () preferentially does binding process, the serial number that binding activity time table is corresponding, and step is as follows:
1) validity 0 represents that project is determined; Validity 1 represents that the start time is determined; Validity 2 represents that the end time is determined; Validity 3 represents go into operation " operation is chosen "; It is abnormal that operation has been made a report in 4 expressions; Validity 5 represents and completes " operation is chosen ";
2) remaining with validity is 3, or validity be 4 or validity be the record of 5, remove other data of parts programs;
3) record that the validity retained is 3 or 4 or 5 is arranged, batch number, affiliated product, associated components, product designation, part number, operation number, row field ascending sort will be pressed in parts program, batch number is set, affiliated product, associated components, product designation, part number, operation number, a row number identical LSN reset from 1; Batch number in parts program, affiliated product, associated components, product designation, part number, operation number is identical, and row number not identical record row number reset from 1;
(4) method of not fixing the nested circulation number of plies and array is adopted to the multiple product with not fixed subcomponent sum of series multiple tracks assembly process, according to product subordinate relation, Product Assembly flow process, the production schedule, normal workday each unit station number and each unit station number overtime five kinds of factors, the all entries of generating unit program, assignment batch number when generating all entries, affiliated product, associated components, product designation, part number, component names, operation number, operation title, row number, sequence number, priority, operation time, non-operation time, the content of validity field is as follows:
1) manufacturing plan sheet presses batch number, product designation, part number, start time field ascending sort;
2) manufacturing plan sheet is not equal to ' completing ' condition by performance and filters;
3) test production schedule table record number, be denoted as li_row, if li_row=0, exit this step; If li_row>0, represent that manufacturing plan sheet has record;
4) numerical value of product designation cpdh, the part number ljdh of manufacturing plan sheet Article 1 record, component names ljmc, batch number cpph, quantity ljsll, priority yxji field is read;
5) take product designation as cpdh, part number filters assemble flow table for ljdh filtercondition, and test component corresponds to the record number of assemble flow table, is denoted as g_rownumber; If g_rownumber=0, represent assemble flow table not record, forward the content of next joint to; If g_rownumber>0, represent that assemble flow table has record, being two layers of cycle index with g_rownumber, is three layers of cycle index with ljsll; Read operation number gxh and the operation title gxmc of assemble flow table Article 1 record, search in parts program and whether have batch number, affiliated product, associated components, product designation, part number, operation number, row number all identical record, if had, be denoted as xx; So insert ljsll bar record, the row of record are number from xx to (xx+ljsll), sequence number and the value of validity of record are 0, the batch number cpph of record, affiliated product zccp, associated components zcbj, product designation cpdh, part number ljdh, component names Ljmc, operation number gxh, operation title gxmc, row number, sequence number, priority yxji, validity field assignment; If do not had, insert ljsll bar record, the row number of record from 1 to ljsll, the sequence number of record and the value of validity be 0, the batch number cpph of record, affiliated product zccp, associated components zcbj, product designation cpdh, part number ljdh, component names Ljmc, operation number gxh, operation title gxmc, row number, sequence number, priority yxji, validity field assignment; Then next record of cursor pointing assemble flow table ... until two layers circulation terminate, so just the information of all process steps of correspondence is set to the batch number in parts program, affiliated product, associated components, product designation, part number, component names, operation number, operation title, arrange number, sequence number, priority, validity respective field;
6) production schedule is pressed product designation cpdh, part number ljdh Field Sanitization, obtain all subassemblies in production schedule;
7) variable circulation number of plies i is set, array stringzcc [20], zcb [20], longlii_row [20], assignment i=1;
8) its record number is tested, be denoted as lii_row [i], judge whether have subassembly: if lii_row [i]=0, represent there is no subassembly, next record of cursor pointing so in manufacturing plan sheet, reads product designation cpdh, the part number ljdh of next record, component names ljmc, batch number cpph, quantity ljsll, priority yxji, target date wcrq; Repeat step 5), 6), 7), 8);
If lii_row [i] >0, indicate subassembly, read product designation cpdh, the part number ljdh of the Article 1 record of subassembly, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity ljsl, assignment ljsll=ljsl*ljsll;
9) with product designation cpdh, part number ljdh for filtercondition to assemble flow table filter, test set-up flow table record number, is denoted as g_rownumber; If g_rownumber=0, represent assemble flow table not record, forward next joint to; If g_rownumber>0, represent that assemble flow table has record, represent that assemble flow table has record, being two layers of cycle index with g_rownumber, is three layers of cycle index with ljsll; Read operation number gxh and the operation title gxmc of assemble flow table Article 1 record, search in parts program and whether have batch number, affiliated product, associated components, product designation, part number, operation number, row number identical record; If had, be denoted as xx, insert ljsll bar record, the row of record are number from xx to xx+ljsll, sequence number and the value of validity of record are 0, the batch number cpph of record, affiliated product, associated components, product designation cpdh, part number ljdh, component names ljmc, operation number gxh, operation title gxmc, row number, sequence number, priority yxji, validity field assignment; If do not had, insert ljsll bar record, the row of record are number from 1 to ljsll, sequence number and the value of validity of record are 0, the batch number cpph of record, affiliated product, associated components, product designation cpdh, part number ljdh, component names ljmc, operation number gxh, operation title gxmc, row number, sequence number, priority yxji, validity field assignment; Then next record of cursor pointing assemble flow table ... until two layers of circulation terminate; So just the information of all process steps of correspondence is set to the batch number in parts program, affiliated product, associated components, product designation, part number, component names, operation number, operation title, row number, priority, validity respective field;
10) production schedule is pressed zcc [i], zcb [i] Field Sanitization, obtains all subassemblies;
11) test the record number of subassembly, be denoted as lii_row [i+1];
12) judge whether have subassembly, if lii_row [i+1]=0, represent there is no subassembly, so recover father's item filtercondition; Next record of cursor pointing; Read product designation cpdh, the part number ljdh of next record, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity ljsl, assignment ljsll=ljsl*ljsll; Repeat step 9), 10), 11), 12); If lii_row [i+1] >0, indicates subassembly; Assignment i=i+1; Read product designation cpdh, part number ljdh, the component names ljmc of each record of subassembly, affiliated product zcc [i], associated components zcb [i], affiliated quantity ljsl, assignment ljsll=ljsl*ljsll;
13) repeat step 9), 10), 11), 12);
14) when the ending of cursor pointing i level, get back to father's item, i=i – 1 is set; Judge cursor get back to father's item from the 1st article to li_row [i] article record one article record or the ending record of father's item; If get back to father's item from the 1st article to li_row [i] article record one article of record, then recover the filtercondition of father item, carry out test and judgement of next record; If get back to the ending record of father's item, then enter last layer circulation, i=i – 1 is set again, until i=1;
15) parts program presses batch number, affiliated product, associated components, product designation, part number, component names, operation number, row field ascending sort, and deleting validity in batch number, affiliated product, associated components, product designation, part number, component names, operation number, row number all identical record is the record of 0;
(5) use the corresponding multiple father's parts of subassembly, the corresponding method of the many-to-many relationship of a corresponding multiple subassembly of father's parts, the operation number of the steering unit of determining means program reservation record, turn to operation name, turn to the step of order as follows:
Preferentially define the next procedure that validity is the record of 3,4 or 5, by non-operation time zysc and end time wcrq that parts program validity is the record of 3,4 or 5, the method for the method determining means program next procedure be added with continuous time or the start time of father's parts first assembly process is as follows:
1) test component program validity is the record number of 3,4 or 5, if record number is 0, exits this step; If record number is not 0, do following process;
2) batch number, affiliated product, associated components, product designation, part number, operation number, row number, sequence number field ascending sort will be pressed in parts program, batch number, affiliated product, associated components, product designation, part number, operation number, row field in fetch unit program; If batch number, affiliated product, associated components, product designation, part number, operation number, row number record identical with upper one in the parts program read, then skip; If batch number in the parts program read, affiliated product, associated components, product designation, part number, operation number, row are number not identical, then a upper record is handled as follows;
3) assignment wcrq minute be designated as mw; Hourage is designated as hw, and non-operation time is designated as zysc;
4) this order of classes or grades at school work hours of record are set, if m=1, so hs1=8, ms1=0; If m=2, so hs1=12, ms1=30; If m=3, so hs1=17, ms1=0, arranges n1=n;
5) if the start time of the next procedure of setting parts program or father's parts first assembly process is ksrq, ksrq is tysc with the duration when the order of classes or grades at school work hours, so tysc=(hw-hs1) * 60+ (mw-ms1)+zysc;
6) if tysc<=210 and (mw+zysc) <60, so the number of minutes of ksrq is mw+zysc, and hourage is hw;
7) if tysc<=210 and (mw+zysc) >=60, so the hourage of ksrq is hw+int ((mw+zysc)/60), the number of minutes is mw=mod ((mw+zysc), 60);
8) m=m+1, reads the next secondary data of record; If m=4, so m=1, n=n+1; Read activity time table operation name and be called that gxmc, validity are 0, sequence number is the record of n-m; If read record, if the initial time of the activity time table hourage that is and the number of minutes are respectively hs2 and ms2; Hourage and the number of minutes of recording the work hours of order of classes or grades at school are respectively hs and ms; If m=1, assignment hs=8, ms=0; If m=2, assignment hs=12, ms=30; If m=3, assignment hs=17, ms=0; If read the record less than activity time table, so get back to this step 8) beginning circulation, until read record, xx=(n-n1) * 1440+ (hs2-hs1) * 60+ (ms2-ms1), yy=(n-n1) * 1440+ (hs-hs1) * 60+ (ms-ms1)+210;
9) if tysc>210 and tysc<=xx, so the hourage of ksrq is hs2, and the number of minutes is ms2;
If tysc>xx and tysc<=yy, so non-operation time zysc=zysc-((n-n1) * 1440+ (hs2-hw) * 60+ (ms2-mw)); The hourage of ksrq is hs2+int ((ms2+zysc)/60), and the number of minutes is mod ((ms2+zysc), 60);
If tysc>yy, so hs1=hs is set, ms1=ms, hw=hs2, mw=ms2, gets back to this step 9) beginning circulation, until tysc>xx is false;
10) whether decision means program record operation has next procedure, if the operation of this record of parts program has next procedure, the start time arranging it is ksrq, the validity field simultaneously arranging the next procedure of this record is 1, read operation number, the operation title of the next procedure of this record simultaneously, write this record to turn to operation number, turn to operation file-name field, the circulation direction after choosing as workpiece completion;
11) if the operation of this record of parts program does not have next procedure, the separate unit number scale then searching all corresponding record of product designation, part number, affiliated product, associated components in production schedule is ljsl, illustrates that subassembly and the pass of father's parts are corresponding 1 the father's parts of ljsl bar subassembly; Reading operation number is 1, sequence number is all subassemblies of father's parts of the same batch number of 0, its record number scale makes xx1, reading operation number is again 1, sequence number is father's parts of the same batch number of 0, and its record number scale makes xx2, and the result that both are divided by is denoted as xx3, show that father's parts are searched xx3 its validity and just can be changed 1 into, so just establish the uniqueness of the correspondence of the many-to-many relationship for the corresponding multiple subassembly of multiple father's parts;
12) if the operation number of these parts be the start time of the record of father's parts of 1 for empty, be so denoted as ksrq1, the maximal value of getting ksrq and ksrq1 is ksrq, and so the operation number of father's parts of these parts is start time of the record of 1 be set to ksrq; Read operation number and the operation title of his father's parts simultaneously, write this subassembly record and turn to operation number, turn to operation file-name field, the circulation direction after choosing as workpiece completion;
13) if corresponding xx3 the father's parts of the subassembly of father's parts, then the validity of these father's parts is changed into 1;
14) the every bar record of circular treatment, processes the last item record after circulation terminates in the same way;
15) by the not setting model filtration of parts program, if turn to operation number to be 1, illustrate and turn to father's parts, turn to operation number to be not 1, illustrate and turn to next procedure; Using such method is searched every bar record successively and is turned to operation number, turns to the serial number of operation name correspondence, and that inserts record turns to sequence number field.
(6) according to the product supporting time, the Short Item polishing time, actual finish time, operation abnormal retardation time, priority five kinds of factors, sequence is participated in when utilization condition meets, represent workpiece parts program start time with represent that the initial time of activity time table of station is made comparisons and get the method for most optimistic time, the method that break time is added, the method that continuous time is added, corresponding method four kinds of methods of many-to-many relationship, the generating unit program start time, end time, serial number, turn to operation number, turn to operation name, turn to the step of order as follows:
1) parts program is 1 by operation number and validity is 0 condition filter, and the validity of determining means program corresponding record is 1 and just limiting-members program validity is the start time of the record of 1, and method is as follows:
Test component program record number, is denoted as g_rownumber, if g_rownumber=0, represents that parts program does not have exercisable record, EOP (end of program); If g_rownumber>0, represent that parts program has exercisable record, the product designation of fetch unit program Article 1 record is denoted as variable cpdh, part number is denoted as ljdh;
Belonging to searching in parts program, product equals cpdh, and associated components equals ljdh, and validity is the record of 0, if found, subassembly has been described, has jumped out In this Section; If can not find out, represent do not have subassembly, parts program validity is set to 1, and in setting parts program, the date of the start time of this record is latter 1 day of today today (), and the time is 8 points;
Successively fetch unit program next record product designation is denoted as variable cpdh, part number is denoted as ljdh, repeat foregoing; Through g_rownumber circulation, value, filtration, judgement, whether the validity just determining every bar record in parts program is 1, and tentatively defines the start time that validity field is the record of 1;
2) just determine the initial time of the record in Short Item polishing timetable corresponding component program, method is as follows:
The record number of test Short Item polishing timetable is g_rownumber, if g_rownumber>0, represents that Short Item polishing timetable has record; Be that cycle index circulates with g_rownumber, read the polishing date of the Article 1 record in Short Item polishing timetable, product designation, part number, father's parts are searched in production schedule, read affiliated product, associated components, the operation name field data of father's parts, will as condition, search the corresponding record in parts program, the start time of fetch unit program corresponding record; If second day of the polishing date in Short Item polishing timetable synthesizes with time 08:00, the date-time generated is greater than the start time of parts program corresponding record, so the start time that the date-time generated is set to this Short Item associated components corresponding record in parts program is synthesized in second day of the polishing date in this Short Item polishing timetable and time 08:00;
3) activity time table filters by the filtercondition that validity is 0, and parts program filters by the filtercondition of validity 1; The record number scale of test component program makes g_rownumber, and the record number scale of test step timetable makes g_rownumber1; If be all greater than 0, so Article 1 record of fetch unit program; With DO ... LOOPWHILEcondition loop statement does following steps 4), 5), 6), 7), 8) process;
4) participate in when utilization condition meets sequence, represent workpiece parts program start time with represent that the initial time of activity time table of station is made comparisons and get the method for most optimistic time, the method defining start time datetimeksrq that validity is the parts program record of 1 and serial number is as follows:
Parts program presses start time, priority, operation title, batch number, affiliated product, associated components, product designation, part number, row number, sequence number field ascending sort;
Activity time table is sequence number, initial time, operation title, sequence number field ascending sort in due order;
The method defining start time datetimeksrq that validity is the parts program record of 1 and serial number is as follows:
The operation title assignment of fetch unit program Article 1 record to variable gxmc, start time assignment to ksrq;
Calculating ksrq is which sky after today today (), and value is assigned to n, and the hourage variable hk according to ksrq judges activity duration section; If hk>=8 and hk<12, be so morning shifts, m=1, hs=8, ms=0; If hk>=12 and hk<=16, be so afternoon shift, m=2, hs=12, ms=30; Hk>=17 and hk<=20 are so night shifts, m=3, hs=17, ms=0;
By n-m form synthesis sequence number, by operation name, activity time table is called that gxmc, validity are 0, sequence number is filtered for (n-m) filtercondition, the record number li_row of test step timetable; If record number li_row is greater than 0, read activity time table operation name and be called that the serial number assignment of the Article 1 record that gxmc, validity are 0, sequence number is n-m is to variable yy, initial time is to variable qsrq, get qsrq and ksrq maximal value and be assigned to ksrq, the start time of this record of setting parts program is ksrq, sequence number is (n-m), and serial number is yy; If the record number li_row of test step timetable is not more than 0, so m=m+1; If m=4, so m=1, n=n+1, gets back to the circulation of this step 4) beginning, until record number is greater than 0, namely finds free time section;
5) according to parts program start time and operation time, determine that the method for end time datetimewcrq is as follows by the method that break time is added:
The operation time of fetch unit program is zysc;
If the end time wcrq of parts program Article 1 record minute is denoted as variable i ntmw, hour be denoted as variable i nthw, the duration of its end time and work hours is denoted as variable tysc, so tysc=(hk-hs) * 60+ (mk-ms)+zysc, arranges mw=mk+zysc; 3.5 hours working times of half a day are 210 minutes;
If tysc<210 and mw<60, so the number of minutes of end time wcrq is mw=mk+zysc, hourage is hw=hk, arranging its validity is 2, arranging its deadline is wcrq, setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the initial time wcrq of the record of yy;
If tysc<210 and mw>=60, so the hourage of end time wcrq is hw=hk+int ((mk+zysc)/60), the number of minutes is mw=mod ((mk+zysc), 60), the validity arranging this record is 2, the deadline arranging this record is wcrq, and setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the initial time wcrq of the record of yy;
If tysc=210, so the hourage of end time wcrq is hw=hk+int ((mk+zysc)/60), the number of minutes is mw=mod ((mk+zysc), 60), the validity arranging this record is 2, the deadline arranging this record is wcrq, and setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the validity of the record of yy is 1;
If tysc>210, so do following process:
6) setting process timetable operation name is called that the validity that gxmc, validity are 0, sequence number is this record of n-m is 1, needs parts program corresponding record to split into two parts record simultaneously;
The start time of the Part I record that parts program corresponding record splits into is that the former start time is constant, and hs1, ms1 represent hourage and the number of minutes of quitting time respectively; If m=1, so hs1=11, ms1=30; If m=2, so hs1=16, ms1=00; If m=3, so hs1=20, ms1=30; The date of the end time of the Part I record that parts program corresponding record splits into is set to the today today () of n days afterwards, the time hour be hs1, the time minute be ms1; The validity of the Part I record that parts program corresponding record splits into is 2; The operation time of this record Part I record of parts program is (hs1-hk) * 60+ (ms1 – mk), the duration of this record Part I record of parts program is 0.00, setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, serial number is the validity of the record of yy is 1, zysc=zysc-(hs1-hk) * 60-(ms1-mk);
M=m+1, if m=4, so m=1, n=n+1, by operation name, activity time table is called that gxmc, validity are 0, sequence number is filtered for (n-m) filtercondition; The record number li_row of test step timetable, if record number li_row is greater than 0, insert new record capable of parts program corresponding record Part II record, batch number, affiliated product, associated components, product designation, part number, component names, operation number, operation title, priority, row number, non-operation time and former record remain unchanged, its validity value is 2, and operation time is zysc; Read activity time table operation name and be called that the serial number assignment of the Article 1 record that gxmc, validity are 0, sequence number is n-m is to variable yy, initial time is to variable qsrq, qsrq is set to the start time of parts program, arrange its sequence number for (n-m), serial number is yy; If activity time table record number li_row is not more than 0, so get back to the circulation of this step 6) beginning, until record number is greater than 0, namely find free time section;
Determine Part II end time datetimewcrq, if its end time wcrq minute is denoted as variable i ntmw, hour be denoted as variable i nthw, the duration of its end time and work hours is denoted as variable tysc, if the number of minutes of qsrq is mk, hourage is hk, and so tysc=(hk-hs) * 60+ (mk-ms)+zysc, arranges mw=mk+zysc; 3.5 hours working times of half a day are 210 minutes;
If tysc<210 and mw<60, so the number of minutes of its end time wcrq is mw=mk+zysc, and hourage is hw=hk, and arranging its end time is wcrq, and arranging its validity is 2; Arranging its sequence number is 1, if Part II splits again, then the 3rd component serial numbers is 2, the like; Setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the initial time wcrq of the record of yy;
If tysc<210 and mw>=60, so the hourage of the end time wcrq of parts program record is hw=hk+int ((mk+zysc)/60), the number of minutes is mw=mod ((mk+zysc), 60); Arranging its end time is wcrq, and arranging its validity is 2, and arranging its sequence number is 1, if Part II splits again, then the 3rd component serial numbers is 2, the like; Setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the initial time wcrq of the record of yy;
If tysc=210, so the number of minutes of its end time wcrq is hw=hk+int ((mk+zysc)/60), hourage is mw=mod ((mk+zysc), 60), the validity arranging this record is 2, and the deadline arranging this record is wcrq, arranging its sequence number is 1, if Part II splits again, then the 3rd component serial numbers is 2, the like; Setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the validity of the record of yy is 1;
If tysc>210, get back to i.e. this step beginning circulation of step 6), until tysc>=210 is false; Like this with regard to end time wcrq, the validity 2 of setting parts program record; Determine the new field such as sequence number, serial number, sequence number inserting record; Setting process timetable operation name is called the initial time wcrq or validity 1 that gxmc, validity are 0, sequence number is n-m, serial number is the record of yy;
7) by the non-operation time zysc of parts program and end time wcrq, the method for the method determining means program next procedure be added with continuous time or the start time of father's parts first assembly process is as follows:
Assignment wcrq minute is designated as mw; Hourage is designated as hw, and non-operation time is designated as zysc;
This order of classes or grades at school work hours of record are set, if m=1, so hs1=8, ms1=0; If m=2, so hs1=12, ms1=30; If m=3, so hs1=17, ms1=0, arranges n1=n;
If the start time of the next procedure of setting parts program or father's parts first assembly process is ksrq, ksrq is tysc with the duration when the order of classes or grades at school work hours, so tysc=(hw-hs1) * 60+ (mw-ms1)+zysc,
If tysc<=210 and (mw+zysc) <60, so the number of minutes of ksrq is mw+zysc, and hourage is hw;
If tysc<=210 and (mw+zysc) >=60, so the hourage of ksrq is hw+int ((mw+zysc)/60), the number of minutes is mw=mod ((mw+zysc), 60);
M=m+1, reads the next secondary data of record; If m=4, so m=1, n=n+1, reads activity time table operation name and is called that gxmc, validity are 0, sequence number is the record of n-m; If read record, if the initial time of the activity time table hourage that is and the number of minutes are respectively hs2 and ms2; Hourage and the number of minutes of recording the work hours of order of classes or grades at school are respectively hs and ms; If m=1, assignment hs=8, ms=0; If m=2, assignment hs=12, ms=30; If m=3, assignment hs=17, ms=0; If read the record less than activity time table, so get back to the circulation of this section beginning, extremely to reading record, xx=(n-n1) * 1440+ (hs2-hs1) * 60+ (ms2-ms1), yy=(n-n1) * 1440+ (hs-hs1) * 60+ (ms-ms1)+210;
If tysc>210 and tysc<=xx, so the hourage of ksrq is hs2, and the number of minutes is ms2; If tysc>xx and tysc<=yy, so non-operation time zysc=zysc-((n-n1) * 1440+ (hs2-hw) * 60+ (ms2-mw)); The hourage of ksrq is hs2+int ((ms2+zysc)/60), and the number of minutes is mod ((ms2+zysc), 60); If tysc>yy, so hs1=hs is set, ms1=ms, hw=hs2, mw=ms2, gets back to the circulation of this step 7) beginning, until tysc>xx is false;
8) methods such as the correspondence of many-to-many relationship are used to find out the next procedure of parts program or father's parts first assembly process, by start time and validity assignment
Whether decision means program record operation has next procedure, if the operation of this record of parts program has next procedure, the start time arranging it is ksrq, the validity field simultaneously arranging the next procedure of this record is 1, read operation number, the operation title of the next procedure of this record simultaneously, write this record to turn to operation number, turn to operation file-name field, the circulation direction after choosing as workpiece completion;
If the operation of this record of parts program does not have next procedure, the separate unit number scale then searching all corresponding record of product designation, part number, affiliated product, associated components in production schedule is ljsl, illustrates that subassembly and the pass of father's parts are corresponding 1 the father's parts of ljsl bar subassembly; Reading operation number is 1, sequence number is all subassemblies of father's parts of the same batch number of 0, its record number scale makes xx1, reading operation number is again 1, sequence number is father's parts of the same batch number of 0, and its record number scale makes xx2, and the result that both are divided by is denoted as xx3, show that father's parts are searched xx3 its validity and just can be changed 1 into, so just establish the uniqueness of the correspondence of the many-to-many relationship for the corresponding multiple subassembly of multiple father's parts;
If the operation number of these parts is that the start time of the record of father's parts of 1 is not for empty, so be denoted as ksrq1, the maximal value of getting ksrq and ksrq1 is ksrq, so the operation number of father's parts of these parts is start time of the record of 1 be set to ksrq, read operation number and the operation title of his father's parts simultaneously, write this subassembly record to turn to operation number, turn to operation file-name field, the circulation direction after choosing as workpiece completion;
If the subassembly of father's parts is corresponding xx3 father's parts, then change the validity of these father's parts into 1;
9) with DO ... LOOPWHILEcondition loop statement, carries out step 4), 5), 6), 7), 8); Go down by this method always, the all parts determined when parts program all do not have father's parts, and after the start time of all assembly processes of its correspondence and end time all determine, namely after start time of parts program, end time, serial number all generate, or the validity of all records of activity time table is all after 1, circulation terminates;
10) by the not setting model filtration of parts program, if turn to operation number to be 1, explanation turns to father's parts, operation number is turned to not to be 1, explanation turns to next procedure, rule is searched every bar record successively and is turned to operation number, turns to the serial number of operation name correspondence according to this, and that inserts record turns to sequence number field.
Four, show optimal path to show in Gantt chart mode
(1) annotate
1) show the Gantt chart of optimal path and comprise number of days, order of classes or grades at school, serial number and S10, S20, S30, S40, S50, S60, S70, S80, S90, S100, S110, S120, S130, S140, S150, S160, S170, S180, S190, S200, S210 totally 21 fields representing every ten minutes interlude sections;
2) background colour arranging the Gantt chart cell font of display optimal path is: null value is rgb (255,0,0), and non-null value is rgb (0,255,0);
3) cut-off date of the Gantt chart display of display optimal path is selected, consider the sharpness requirement of the Gantt chart of display, the time interval of the Gantt chart display of optimal path selects ten minutes, and the operation time of morning shifts, afternoon shift, night shift all calculated by 210 minutes;
4) Gantt chart of display optimal path is divided into pincers dress, dress wiping, Denso, electricity tune, total school, uniting and adjustment, vanning, outer eight of dress by the operation title of operation unit; Parts program filters by the operation name field of eight operation unit respectively, obtains eight submenus of Gantt chart menu respectively, represents the Gantt chart of eight operation unit;
(2) for Denso operation unit, the step being shown the Gantt chart of optimal path by parts program is as follows:
1) parts program sequence number, serial number, start time, batch number, affiliated product, associated components, product designation, part number, row number, sequence number field ascending sort in due order;
2) parts program filters by operation name field filtercondition;
3) the record number of test component program, if equal 0, represents that parts program does not have record by after above-mentioned condition filter, exits this step;
4) if the record number of parts program is greater than 0, loop statement is set and reads each record from parts program successively;
5) sequence number of the Article 1 record of fetch unit program, finds out '-' in race-card by position from left to right with function, is denoted as l_i [5]; Get sequence number from the 1st, a left side to (l_i [5]-1) individual character string, convert Integer types value to, assignment is to the sky digital section of Gantt chart, individual to Far Left character string from (l_i [5]+1), convert Integer types value to, assignment is to Gantt chart order of classes or grades at school field; If order of classes or grades at school field variable m represents; Then the value of m is 1,2 or 3; If m=1, so hs1=8, ms1=0; If m=2, so hs1=12, ms1=30; M=3, so hs1=17, ms1=0;
The serial number assignment of fetch unit program Article 1 record is to the sequence number field of Gantt chart;
The start time of the Article 1 record of fetch unit program is assigned to variable ksrq, and end time assignment is to variable wcrq;
The product designation assignment of the Article 1 record of fetch unit program is to variable cpdh, and part number assignment is to variable ljdh;
Time of decision means program record, in which section of Gantt chart 21 time periods of half a day, process was:
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <10, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >0 then searches this record of Gantt chart S10 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S10 field;
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <20, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >10 then searches this record of Gantt chart S20 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S20 field;
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <30, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >20 then searches this record of Gantt chart S30 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S30 field;
Use the same method until time of decision means program record whether in Gantt chart the 21st time period of half a day; If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <210, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >200 then searches this record of Gantt chart S210 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S210 field;
6) the sequence number assignment of the Article 2 record of fetch unit program is to character type variable zcc, finds out '-' in zcc by position from left to right, be denoted as l_i with function; Get zcc from the 1st, a left side to (l_i [5]-1) individual character string, convert Integer types value assignment to numeric type variable n; Individual to Far Left character string from (l_i [5]+1), convert Integer types value assignment to numeric type variable m, the serial number of fetch unit program Article 2 record is set to numeric type variable l_i; Search number of days in Gantt chart and equal n, order of classes or grades at school equals m, and serial number equals the record of l_i, if found, shows that Gantt chart has qualified record, is denoted as li_row; If can not find out, show that Gantt chart does not have qualified record, insert new record at Gantt chart, recording mechanism is li_row, and the sky digital section assignment of the new record of the Gantt chart of insertion is n, and order of classes or grades at school field assignment is m, and sequence number field assignment is l_i;
The value of m is 1,2 or 3; If m=1, so hs1=8, ms1=0; If m=2, so hs1=12, ms1=30; M=3, so hs1=17, ms1=0;
The start time of the Article 2 record of fetch unit program is assigned to variable ksrq, and end time assignment is to variable wcrq;
The product designation assignment of the Article 2 record of fetch unit program is to variable cpdh, and part number assignment is to variable ljdh;
Time of decision means program record, in which section of Gantt chart 21 time periods of half a day, process was:
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <10, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >0 then searches this record of Gantt chart S10 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S10 field;
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <20, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >10 then searches this record of Gantt chart S20 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S20 field;
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <30, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >20 then searches this record of Gantt chart S30 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S30 field;
Use the same method until time of decision means program record whether in Gantt chart the 21st time period of half a day; If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <210, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >200 then searches this record of Gantt chart S210 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S210 field;
7) Article 3 of fetch unit program, to the last item record, completes the assignment of Gantt chart data by the method for step 6) successively;
Five, it is as follows that operation process returns feedback process
(1) annotate
1) handling situations table comprises the fields such as sequence number, product designation, part number, component names, batch number, operation number, operation title, start time, end time, operating personnel, operation time, remarks; The handling situations table information that different time obtains by program automatically when operating personnel chooses is respective field assignment;
2) abnormal feedback form comprise sequence number, product designation, part number, component names, batch number, operation number, operation title, abnormal occurrence, abnormal class, solution, the analysis of causes, make a report on personnel, solution personnel, make a report on the date, pre-complete date and memo field; Abnormal feedback form is made a report on by technician;
3) job instruction comprises: product designation, part number, component names, operation number, operation title, job number, job content, equipment, frock, auxiliary material and memo field; Job instruction is made a report on by technician;
(2) the machine date at that time and time at that time can be obtained with today () and time (); In order to prevent operating personnel from reaching the object of amendment operation time by amendment the machine time, program adopts and automatically reads the method for server time as system time, increases the objectivity of start time, end time Equal-time Data; The concrete steps of automatic acquisition activity duration are as follows:
1) vernier a: declareget_datecursorforselectgetdate () is set for reading server time;
2) vernier is opened: openget_date;
3) variable tt_d:fetchget_dateinto:tt_d is set to;
4) vernier: closeget_date is closed;
(3) step that operation " goes into operation and chooses " is:
1) when operating personnel starts operation, on the all-in-one of aobvious feedback terminal, the password login arranged with me, display Gantt chart window;
2) at Gantt chart window, double-click Gantt chart, parts program carries out " go into operation and choose " through the capable double-click of record of the relative recording filtered up;
3) time of server when program automatic acquisition is chosen, the start time field of parts program corresponding record is set to; The value of the validity field of this record of setting parts program is 3;
4) handling situations table inserts a record simultaneously, the batch number of the record inserted by handling situations table, product designation, part number, component names, operation number, operation title, start time, operating personnel's field assignment;
(4), after operation completes, operating personnel need carry out operation " completion is chosen "; The step that operation " completes and chooses " is:
1) after operating personnel fulfils assignment, at the job instruction window of the password login arranged with me on aobvious feedback terminal integrative machine, click " completion is chosen " button and carry out " completion is chosen ", job instruction window exits;
2), when carrying out operation " completion is chosen ", the end time that server time is set to parts program corresponding record is read; Make a report on the operation time field that actual job duration is set to parts program;
3) in setting parts program, the value of the validity field of this record is 5;
4) according to product designation, part number, batch number, operation number, operating personnel's information searching corresponding record, find after, by obtain server time assignment to the end time;
5) if operation does not complete, do not need to carry out " completion is chosen ", want to exit job instruction window, click " exiting " button;
(5), when operation occurs abnormal, operating personnel need carry out operation " abnormal feedback "; The step of operation " abnormal feedback " is:
1) to the manipulating object doing " go into operation and choose ", in operation process, job instruction window " abnormal feedback " button is clicked;
2) click " abnormal feedback " button when operation occurs abnormal, enter " abnormal feedback " window;
3) in parts program, the validity of this record is 4; Operating personnel makes a report on the abnormal occurrence that operation occurs; Fill in the time because the abnormal operation time caused extends simultaneously;
4), after technician to Solve on site exception, abnormal cause and solution is filled in;
5) when parts schedule data refreshes, by new operation time adjustment data;
Embodiment
One, Fig. 1 is intelligent operation control method structural drawing; The construction method of product tree relates to working out a production plan, in the process such as component flow;
Carry out the calculating of the productive capacity of the product with subordinate relation according to data such as the production schedule, assemble flow, the arrangements of each operation unit station, arrange each operation unit station number according to the approximate value of station number arrangement in productive capacity computation process;
Typing or importing production schedule, assemble flow table, manufacturing plan sheet, Short Item polishing timetable data;
Adjustment product priority, normal workday each operation unit station number and overtime each operation unit station number;
According to product subordinate relation, Product Assembly flow process, production schedule time, product supporting time, Short Item polishing time, abnormal retardation time, actual finish time, product priority, normal workday each operation unit station number and the tens of a kind of factor of each operation unit station overtime, this method is used automatically to complete the calculating of parts progress;
Gantt chart is generated, by Gantt chart parts progress according to parts progress;
Two, the configuration shown in Fig. 2 intelligent operation control method hardware configuration, constructing local network; One station server is placed in the frame of special machine room, is connected with netting twine by 48 port switch with client; Client Design 7 acquisition terminals, 1 control terminal, 38 aobvious feedback terminals; 7 acquisition terminals and 1 control terminal adopt ordinary desktop computer, and 38 aobvious feedback terminals adopt all-in-one.
In the frame of server and switch together centre machine room; Server repository client data, server is connected with acquisition terminal, control terminal, aobvious feedback terminal by switch; Acquisition terminal gathers technical data and manufacturing plan sheet, the Short Item polishing timetables such as production schedule, assemble flow table, job instruction, adds the management datas such as shift report; Control terminal is used for the priority being controlled product in the arrangement of each operation unit station and manufacturing plan sheet by password type; Aobvious feedback terminal demonstration Gantt chart, job instruction and carry out that operation " goes into operation and chooses ", " completion is chosen " and " abnormal feed back ".
Fig. 2 intelligent operation control method hardware configuration control terminal desktop computer changes product priority by the numerical values recited of the precedence field of amendment manufacturing plan sheet, changed the arrangement of each operation unit station number by productive capacity result of calculation, carry out synchronous change station by the password type changing cipher table and show the information of presenting terminal demonstration.
At Fig. 2 intelligent operation control method hardware configuration acquisition terminal desktop computer, managerial personnel's typing and inquiry add shift report, manufacturing plan sheet, Short Item polishing timetable; Technician imports the technical data such as production schedule, assemble flow table and job instruction.
The all-in-one display optimal path Gantt chart of feedback terminal is shown at Fig. 2 intelligent operation control method hardware configuration; Two parts are divided at display optimal path Gantt chart interface, bottom is divided into optimal path Gantt chart, it represents interval 10 minutes by 21 fields, the Gantt chart of 210 minutes half a day of duration, indicates that the background colour in the space of operation arranges and represents do not have the background colour in the space of operation different; Upper part is parts programs; By double-clicking any a line recorded in Gantt chart, parts program obtains qualified relative recording.
On the all-in-one of the aobvious feedback terminal on Fig. 2 intelligent operation control method terminal graph, normal operation needs to carry out operation and " goes into operation and choose " and operation " completion is chosen "; When exiting, program makes a report on handling situations table automatically, and revises the information such as the start time of feedback element program; Call number assembly technology simultaneously; Make a report on abnormal conditions feedback form when there is abnormal operation, revise the deadline in parts program and operation time information simultaneously.
On the all-in-one of the aobvious feedback terminal on Fig. 2 intelligent operation control method terminal graph, display job content.

Claims (3)

1. a discrete enterprise intelligent operation control method, is characterized in that adopting the multiple product with not fixed subcomponent sum of series multiple tracks assembly process not fixing the nested circulation number of plies and array structure product tree; Be divided into eight productive units by similarity, each unit arranges again the station that can control the size, and half a day, by 210 minutes, calculates productive capacity just fixed each operation unit station number; In consideration product subordinate relation, Product Assembly flow process, production schedule time, product supporting time, Short Item polishing time, abnormal retardation time, actual finish time, product priority, normal workday each operation unit station number and each operation unit station overtime tens of kinds of factors, the optimum time point that each parts controlling to have subordinate relation product assemble on each station, the optimal path of Automatic-searching parts assembling; This optimal path is with the real-time display and control site work of Gantt chart mode; Operation goes into operation to choose and calls job instruction and carry out operation and operation progress feedback, thus realizes the Operation control of discrete enterprise intelligence;
Described calculating productive capacity is fixed each operation unit station number just: adopt the method for not fixing the nested circulation number of plies and array to search out all built-up members of product to the product of not fixed subcomponent progression, according to the productive capacity of the operation time counting yield of all built-up member of product; Determine that the process of each operation unit station quantity is as follows:
1) select to need to calculate closing time of productive capacity, filter the product plan of manufacturing plan sheet during this period of time, test filter after manufacturing plan sheet whether record, if there is no record, calculate and terminate; If there is record, record number scale makes li_row, carries out productive capacity calculating, generates productive capacity reckoner;
2) manufacturing plan sheet presses product designation, part number, batch number field ascending sort; The assembly process of product is classified by similarity, define the operation title of each operation unit, according to the feature of assembling process of products similarity, assembly process is defined as pincers dress, dress wiping, Denso, electricity tune, total school, uniting and adjustment, vanning, outer eight the operation unit of dress;
3) read in the different product designation of the manufacturing plan sheet filtered successively, as each entry of productive capacity reckoner, after record runs through, increase plan man-hour, reach volume man-hour, ability man-hour, each operation unit station number four record close item;
4) expression circulation layer number variable inti is set, array stringzcc [20], zcb [20], longlii_row [20]; Read product designation, part number, the planned quantity ljsll of manufacturing plan sheet Article 1 record;
5) operation time corresponding to each operation unit of assemble flow table is searched, if read less than data or the data read as empty, so operation time value is 0, the data operation time of corresponding with corresponding component for planned quantity ljsll operation unit be multiplied are added with the former data of product designation in the corresponding manufacturing plan sheet of productive capacity reckoner, result are set to the respective field of the record of product designation in corresponding manufacturing plan sheet in productive capacity reckoner; If the former data of product designation are empty in corresponding manufacturing plan sheet in productive capacity reckoner, then the data that the operation time of corresponding with corresponding component for planned quantity ljsll operation unit is multiplied are set to the respective field of the record of product designation in corresponding manufacturing plan sheet in productive capacity reckoner;
6) production schedule is pressed product designation, part number Field Sanitization, obtain all subassemblies;
7) assignment i=1, the record number of test subassembly, is denoted as lii_row [i];
8) judge whether have subassembly, if lii_row [i]=0, represent there is no subassembly, next record of cursor pointing so in manufacturing plan sheet, read next record product designation, part number, planned quantity ljsll, repeat step 5), 6), 7), 8);
If lii_row [i] >0, indicate subassembly, read the product designation cpdh of the Article 1 record of its subassembly, part number ljdh, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity (ljsl), ljsll=ljsll*ljsl;
9) with the operation time that product designation, part number are each operation unit of conditional search assemble flow table corresponding component, if read less than data or the data read as empty, so operation time value is 0, the data operation time of corresponding with corresponding component for planned quantity ljsll operation unit be multiplied are added with the former data of product designation in corresponding manufacturing plan sheet in productive capacity reckoner, result are set to the respective field of the record of product designation in corresponding manufacturing plan sheet in productive capacity reckoner; If the former data of product designation are empty in corresponding manufacturing plan sheet in productive capacity reckoner, then the data that the operation time of corresponding with corresponding component for planned quantity ljsll operation unit is multiplied are set to the respective field of the record of product designation in corresponding manufacturing plan sheet in productive capacity reckoner;
10) production schedule is pressed zcc [i], zcb [i] Field Sanitization, obtains all subassemblies;
11) test the record number of subassembly, be denoted as lii_row [i+1];
12) judge whether have subassembly, if lii_row [i+1]=0, represent there is no subassembly, so recover father's item filtercondition; Next record of cursor pointing, read product designation cpdh, the part number ljdh of next record, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity (ljsl), ljsll=ljsll*ljsl; Repeat step 9), 10), 11), 12);
If lii_row [i+1] >0, indicates subassembly; Assignment i=i+1; Read product designation cpdh, the part number ljdh of the Article 1 record of subassembly, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity (ljsl), ljsll=ljsll*ljsl;
13) repeat step 9), 10), 11), 12);
14) when the ending of cursor pointing i level subassembly level, get back to father's item, i=i – 1 is set; Judge cursor get back to father's item from the 1st article to li_row [i] article record one article record or the ending record of father's item; If get back to father's item from the 1st article to li_row [i] article record one article of record, then recover the filtercondition of father item, carry out test and judgement of next record; If get back to the ending record of father's item, then enter last layer circulation, i=i – 1 is set again, until i=1;
15) each operation unit transverse in each bar product record calculated in productive capacity reckoner is gathered summation, be set to the product field in man-hour of this record;
16) each operation unit in each bar product record calculated in productive capacity reckoner and product are carried out longitudinal direction man-hour and gather summation, the data obtained are set to the corresponding each field of plan record of work;
17) numerical value of each operation unit in man-hour will be planned in productive capacity reckoner divided by working days, then divided by the number of minutes of operation every day, the approximate value that station quantity arranges in productive capacity reckoner of arriving to obtain;
18) plan of operation unit each in productive capacity reckoner be multiplied with the volume rate of reaching man-hour with product man-hour, the data obtained are set to and reach the corresponding each field of volume record of work;
19) be multiplied with each operation unit station number by operating time and obtain ability man-hour, the data obtained are set to and reach the corresponding each field of volume record of work;
Wherein consider the table of product subordinate relation, Product Assembly flow process, production schedule time, product supporting time, Short Item polishing time, abnormal retardation time, actual finish time, product priority, normal workday each operation unit station number and each operation unit station overtime tens of kinds of factors, the optimum time point that each parts that searching controls to have subordinate relation product assemble on each station, Automatic-searching has the parts assembling optimal path of the product not fixing progression subordinate relation, and process is as follows:
(1) by the determination adding number of days between shift report and operation unit station table utilization viewing area, the judgement at weekend, the expression generation process timetable of date and time in circulation, step is as follows:
1) data that clearing process timetable is original;
2) user inputs cut-off date em_2, and the date between second day of today and cut-off date is called between viewing area, is denoted as variable xx;
3) if the time of cut-off date equal time of today today (), number of days xx between viewing area is number number of cut-off date, deduct number number of today today (), add the cumulative sum of number number from last day every month during the previous moon in month month to cut-off date of today today ();
4) if time of equaling today today () in the time of cut-off date add 1, number of days xx between viewing area is number number of cut-off date, deduct number number of today today (), add number number from last day every month during today () Dec then month to today of today today (), the cumulative sum of number number of last day every month during adding cut-off date in month January to the cut-off date previous moon then;
5) if time of being greater than today today () in the time of cut-off date add 1, number of days xx between viewing area is number number of cut-off date, deduct number number of today today (), add number number from last day every month during today () Dec then month to today of today today (), number number of last day every month during adding cut-off date in month January to the cut-off date previous moon then, adds the cumulative sum of number number from last day every month during Dec the previous year January next year to cut-off date of today today ();
6) method of getting last day every month is: be set to variable li_month month, if li_month=12, so number number of last day is 31; If li_month<12, so month next month is this month add 1, i.e. li_month+1, and the last day of every month is exactly the previous day on next month 1;
7) with the number of times that the number of days between viewing area circulates for ground floor, with the number of times that the operation name field of operation unit station table circulates for the second layer, with the station digital section of operation unit station table for third layer cycle index enters circulation, reading, assignment, setting are until complete three layers of circulation successively, and activity time table completes setting;
8) in step 7) circulation in, successively reading, assignment, setting until complete three layers circulation methods as follows:
Read the operation title of every bar record in operation unit station table, be set to the operation name field of activity time table;
Read the station number of every bar record in operation unit station table, be set to the sequence number field of activity time table;
The sequence number of activity time table represents with double figures n-m, and n represents the today today () of which number of days afterwards, and n is from 1 to xx; M represents the time period, represents with 1,2,3; 1 represents morning shifts 8:00-11:30, and 2 represent afternoon shift 12:30-16:00, and 3 represent night shift 17:00-20:30; Every order of classes or grades at school work hours are respectively: morning shifts time 08:00; Afternoon shift time 12:30; Night shift time 17:00;
The initial time of activity time table is date-time type data, containing date and time;
Get n-th day date after today today (), judge within n-th day, to be Sunday or Saturday; If so, the station number so in operation unit station table does not participate in circulation;
The validity of activity time table is all set to 0;
Read the record added in shift report; By number field descending sort in order of activity time table; Search the serial number of the corresponding record with the period and with operation title in activity time table; If found, then insert new respective record, the serial number of record is arranged from the serial number found later; If search less than, then insert new respective record, the serial number of record is arranged from 1, until circulation terminate;
9) after activity time table generates, by operation title, initial time, sequence number field ascending order, sequence number field descending sort;
(2) reserved unit program represents record that is that gone into operation, abnormal, completion, removes other records, and the serial number that the reservation record binding parts program is corresponding with activity time table, step is as follows:
1) validity 0 represents that project is determined; Validity 1 represents that the start time is determined; Validity 2 represents that the end time is determined; Validity 3 represents go into operation " operation is chosen "; It is abnormal that operation has been made a report in 4 expressions; Validity 5 represents and completes " operation is chosen ";
2) remaining with validity is 3, or validity be 4 or validity be the record of 5, remove other data of parts programs;
3) record that the validity retained is 3 or 4 or 5 is arranged, batch number, affiliated product, associated components, product designation, part number, operation number, row field ascending sort will be pressed in parts program, batch number is set, affiliated product, associated components, product designation, part number, operation number, a row number identical LSN reset from 1; Batch number in parts program, affiliated product, associated components, product designation, part number, operation number is identical, and row number not identical record row number reset from 1;
(3) method of not fixing the nested circulation number of plies and array is adopted to the multiple product with not fixed subcomponent sum of series multiple tracks assembly process, according to product subordinate relation, Product Assembly flow process, the production schedule, normal workday each unit station number and each unit station number overtime five kinds of factors, the all entries of generating unit program, assignment batch number when generating all entries, affiliated product, associated components, product designation, part number, component names, operation number, operation title, row number, sequence number, priority, operation time, non-operation time, validity field, step is as follows:
1) manufacturing plan sheet presses batch number, product designation, part number, start time field ascending sort;
2) manufacturing plan sheet is not equal to ' completing ' condition filters by " performance ";
3) test production schedule table record number, be denoted as li_row, if li_row=0, exit this step; If li_row>0, represent that manufacturing plan sheet has record;
4) numerical value of product designation cpdh, the part number ljdh of manufacturing plan sheet Article 1 record, component names ljmc, batch number cpph, quantity ljsll, priority yxji field is read;
5) take product designation as cpdh, part number filters assemble flow table for ljdh filtercondition, and test component corresponds to the record number of assemble flow table, is denoted as g_rownumber; If g_rownumber=0, represent assemble flow table not record, forward the content of next joint to; If g_rownumber>0, represent that assemble flow table has record, being two layers of cycle index with g_rownumber, is three layers of cycle index with ljsll; Read operation number gxh and the operation title gxmc of assemble flow table Article 1 record, search in parts program and whether have batch number, affiliated product, associated components, product designation, part number, operation number, row number all identical record, if had, be denoted as xx; So insert ljsll bar record, the row of record are number from xx to (xx+ljsll), sequence number and the value of validity of record are 0, the batch number cpph of record, affiliated product zccp, associated components zcbj, product designation cpdh, part number ljdh, component names Ljmc, operation number gxh, operation title gxmc, row number, sequence number, priority yxji, validity field assignment; If do not had, insert ljsll bar record, the row number of record from 1 to ljsll, the sequence number of record and the value of validity be 0, the batch number cpph of record, affiliated product zccp, associated components zcbj, product designation cpdh, part number ljdh, component names Ljmc, operation number gxh, operation title gxmc, row number, sequence number, priority yxji, validity field assignment; Then next record of cursor pointing assemble flow table ... until two layers circulation terminate, so just the information of all process steps of correspondence is set to the batch number in parts program, affiliated product, associated components, product designation, part number, component names, operation number, operation title, arrange number, sequence number, priority, validity respective field;
6) production schedule is pressed product designation cpdh, part number ljdh Field Sanitization, obtain all subassemblies in production schedule;
7) variable circulation number of plies i is set, array stringzcc [20], zcb [20], longlii_row [20], assignment i=1;
8) its record number is tested, be denoted as lii_row [i], judge whether have subassembly: if lii_row [i]=0, represent there is no subassembly, next record of cursor pointing so in manufacturing plan sheet, reads product designation cpdh, the part number ljdh of next record, component names ljmc, batch number cpph, quantity ljsll, priority yxji, target date wcrq; Repeat step 5), 6), 7), 8);
If lii_row [i] >0, indicate subassembly, read product designation cpdh, the part number ljdh of the Article 1 record of subassembly, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity ljsl, assignment ljsll=ljsl*ljsll;
9) with product designation cpdh, part number ljdh for filtercondition to assemble flow table filter, test set-up flow table record number, is denoted as g_rownumber; If g_rownumber=0, represent assemble flow table not record, forward next joint to; If g_rownumber>0, represent that assemble flow table has record, represent that assemble flow table has record, being two layers of cycle index with g_rownumber, is three layers of cycle index with ljsll; Read operation number gxh and the operation title gxmc of assemble flow table Article 1 record, search in parts program and whether have batch number, affiliated product, associated components, product designation, part number, operation number, row number identical record; If had, be denoted as xx, insert ljsll bar record, the row of record are number from xx to xx+ljsll, sequence number and the value of validity of record are 0, the batch number cpph of record, affiliated product, associated components, product designation cpdh, part number ljdh, component names ljmc, operation number gxh, operation title gxmc, row number, sequence number, priority yxji, validity field assignment; If do not had, insert ljsll bar record, the row of record are number from 1 to ljsll, sequence number and the value of validity of record are 0, the batch number cpph of record, affiliated product, associated components, product designation cpdh, part number ljdh, component names ljmc, operation number gxh, operation title gxmc, row number, sequence number, priority yxji, validity field assignment; Then next record of cursor pointing assemble flow table ... until two layers of circulation terminate; So just the information of all process steps of correspondence is set to the batch number in parts program, affiliated product, associated components, product designation, part number, component names, operation number, operation title, row number, priority, validity respective field;
10) production schedule is pressed zcc [i], zcb [i] Field Sanitization, obtains all subassemblies;
11) test the record number of subassembly, be denoted as lii_row [i+1];
12) judge whether have subassembly, if lii_row [i+1]=0, represent there is no subassembly, so recover father's item filtercondition; Next record of cursor pointing; Read product designation cpdh, the part number ljdh of next record, component names ljmc, affiliated product zcc [i], associated components zcb [i], affiliated quantity ljsl, assignment ljsll=ljsl*ljsll; Repeat step 9), 10), 11), 12); If lii_row [i+1] >0, indicates subassembly; Assignment i=i+1; Read product designation cpdh, part number ljdh, the component names ljmc of each record of subassembly, affiliated product zcc [i], associated components zcb [i], affiliated quantity ljsl, assignment ljsll=ljsl*ljsll;
13) repeat step 9), 10), 11), 12);
14) when the ending of cursor pointing i level, get back to father's item, i=i – 1 is set; Judge cursor get back to father's item from the 1st article to li_row [i] article record one article record or the ending record of father's item; If get back to father's item from the 1st article to li_row [i] article record one article of record, then recover the filtercondition of father item, carry out test and judgement of next record; If get back to the ending record of father's item, then enter last layer circulation, i=i – 1 is set again, until i=1;
15) parts program presses batch number, affiliated product, associated components, product designation, part number, component names, operation number, row field ascending sort, and deleting validity in batch number, affiliated product, associated components, product designation, part number, component names, operation number, row number all identical record is the record of 0;
(4) use the corresponding multiple father's parts of subassembly, the corresponding method of the many-to-many relationship of a corresponding multiple subassembly of father's parts, the operation number of the steering unit of determining means program reservation record, turn to operation name, turn to the step of order as follows:
Preferentially define the next procedure that validity is the record of 3,4 or 5, by non-operation time zysc and end time wcrq that parts program validity is the record of 3,4 or 5, the method for the method determining means program next procedure be added with continuous time or the start time of father's parts first assembly process is as follows:
1) test component program validity is the record number of 3,4 or 5, if record number is 0, exits this step; If record number is not 0, do following process;
2) batch number, affiliated product, associated components, product designation, part number, operation number, row number, sequence number field ascending sort will be pressed in parts program, batch number, affiliated product, associated components, product designation, part number, operation number, row field in fetch unit program; If batch number, affiliated product, associated components, product designation, part number, operation number, row number record identical with upper one in the parts program read, then skip; If batch number in the parts program read, affiliated product, associated components, product designation, part number, operation number, row are number not identical, then a upper record is handled as follows;
3) assignment wcrq minute be designated as mw; Hourage is designated as hw, and non-operation time is designated as zysc;
4) this order of classes or grades at school work hours of record are set, if m=1, so hs1=8, ms1=0; If m=2, so hs1=12, ms1=30; If m=3, so hs1=17, ms1=0, arranges n1=n;
5) if the start time of the next procedure of setting parts program or father's parts first assembly process is ksrq, ksrq is tysc with the duration when the order of classes or grades at school work hours, so tysc=(hw-hs1) * 60+ (mw-ms1)+zysc;
6) if tysc<=210 and (mw+zysc) <60, so the number of minutes of ksrq is mw+zysc, and hourage is hw;
7) if tysc<=210 and (mw+zysc) >=60, so the hourage of ksrq is hw+int ((mw+zysc)/60), the number of minutes is mw=mod ((mw+zysc), 60);
8) m=m+1, reads the next secondary data of record; If m=4, so m=1, n=n+1; Read activity time table operation name and be called that gxmc, validity are 0, sequence number is the record of n-m; If read record, if the initial time of the activity time table hourage that is and the number of minutes are respectively hs2 and ms2; Hourage and the number of minutes of recording the work hours of order of classes or grades at school are respectively hs and ms; If m=1, assignment hs=8, ms=0; If m=2, assignment hs=12, ms=30; If m=3, assignment hs=17, ms=0; If read the record less than activity time table, so get back to this step 8) beginning circulation, until read record,
xx=(n-n1)*1440+(hs2-hs1)*60+(ms2-ms1),
yy=(n-n1)*1440+(hs-hs1)*60+(ms-ms1)+210;
9) if tysc>210 and tysc<=xx, so the hourage of ksrq is hs2, and the number of minutes is ms2;
If tysc>xx and tysc<=yy, so non-operation time zysc=zysc-((n-n1) * 1440+ (hs2-hw) * 60+ (ms2-mw)); The hourage of ksrq is hs2+int ((ms2+zysc)/60), and the number of minutes is mod ((ms2+zysc), 60);
If tysc>yy, so hs1=hs is set, ms1=ms, hw=hs2, mw=ms2, gets back to this step 9) beginning circulation, until tysc>xx is false;
10) whether decision means program record operation has next procedure, if the operation of this record of parts program has next procedure, the start time arranging it is ksrq, the validity field simultaneously arranging the next procedure of this record is 1, read operation number, the operation title of the next procedure of this record simultaneously, write this record to turn to operation number, turn to operation file-name field, the circulation direction after choosing as workpiece completion;
11) if the operation of this record of parts program does not have next procedure, the separate unit number scale then searching all corresponding record of product designation, part number, affiliated product, associated components in production schedule is ljsl, illustrates that subassembly and the pass of father's parts are corresponding 1 the father's parts of ljsl bar subassembly; Reading operation number is 1, sequence number is all subassemblies of father's parts of the same batch number of 0, its record number scale makes xx1, reading operation number is again 1, sequence number is father's parts of the same batch number of 0, and its record number scale makes xx2, and the result that both are divided by is denoted as xx3, show that father's parts are searched xx3 its validity and just can be changed 1 into, so just establish the uniqueness of the correspondence of the many-to-many relationship for the corresponding multiple subassembly of multiple father's parts;
12) if the operation number of these parts be the start time of the record of father's parts of 1 for empty, be so denoted as ksrq1, the maximal value of getting ksrq and ksrq1 is ksrq, and so the operation number of father's parts of these parts is start time of the record of 1 be set to ksrq; Read operation number and the operation title of his father's parts simultaneously, write this subassembly record and turn to operation number, turn to operation file-name field, the circulation direction after choosing as workpiece completion;
13) if corresponding xx3 the father's parts of the subassembly of father's parts, then the validity of these father's parts is changed into 1;
14) the every bar record of circular treatment, processes the last item record after circulation terminates in the same way;
15) by the not setting model filtration of parts program, if turn to operation number to be 1, illustrate and turn to father's parts, turn to operation number to be not 1, illustrate and turn to next procedure; Using such method is searched every bar record successively and is turned to operation number, turns to the serial number of operation name correspondence, and that inserts record turns to sequence number field;
(5) according to the product supporting time, the Short Item polishing time, actual finish time, operation abnormal retardation time, priority five kinds of factors, sequence is participated in when utilization condition meets, represent workpiece parts program start time with represent that the initial time of activity time table of station is made comparisons and get the method for most optimistic time, the method that break time is added, the method that continuous time is added, corresponding method four kinds of methods of many-to-many relationship, the generating unit program start time, end time, serial number, turn to operation number, turn to operation name, turn to the step of serial number as follows:
1) parts program is 1 by operation number and validity is 0 condition filter, and the validity of determining means program corresponding record is 1 and just limiting-members program validity is the start time of the record of 1, and method is as follows:
Test component program record number, is denoted as g_rownumber, if g_rownumber=0, represents that parts program does not have exercisable record, EOP (end of program); If g_rownumber>0, represent that parts program has exercisable record, the product designation of fetch unit program Article 1 record is denoted as variable cpdh, part number is denoted as ljdh;
Belonging to searching in parts program, product equals cpdh, and associated components equals ljdh, and validity is the record of 0, if found, subassembly has been described, has jumped out In this Section; If can not find out, represent do not have subassembly, parts program validity is set to 1, and in setting parts program, the date of the start time of this record is latter 1 day of today today (), and the time is 8 points;
Successively fetch unit program next record product designation is denoted as variable cpdh, part number is denoted as ljdh, repeat foregoing; Through g_rownumber circulation, value, filtration, judgement, whether the validity just determining every bar record in parts program is 1, and tentatively defines the start time that validity field is the record of 1;
2) just determine the initial time of the record in Short Item polishing timetable corresponding component program, method is as follows:
The record number of test Short Item polishing timetable is g_rownumber, if g_rownumber>0, represents that Short Item polishing timetable has record; Be that cycle index circulates with g_rownumber, read the polishing date of the Article 1 record in Short Item polishing timetable, product designation, part number, father's parts are searched in production schedule, read affiliated product, associated components, the operation name field data of father's parts, will as condition, search the corresponding record in parts program, the start time of fetch unit program corresponding record; If second day of the polishing date in Short Item polishing timetable synthesizes with time 08:00, the date-time generated is greater than the start time of parts program corresponding record, so the start time that the date-time generated is set to this Short Item associated components corresponding record in parts program is synthesized in second day of the polishing date in this Short Item polishing timetable and time 08:00;
3) activity time table filters by the filtercondition that validity is 0, and parts program filters by the filtercondition of validity 1; The record number scale of test component program makes g_rownumber, and the record number scale of test step timetable makes g_rownumber1; If be all greater than 0, so Article 1 record of fetch unit program; With DO ... LOOPWHILEcondition loop statement does following steps 4), 5), 6), 7), 8) process;
4) participate in when utilization condition meets sequence, represent workpiece parts program start time with represent that the initial time of activity time table of station is made comparisons and get the method for most optimistic time, the method defining start time datetimeksrq that validity is the parts program record of 1 and serial number is as follows:
Parts program presses start time, priority, operation title, batch number, affiliated product, associated components, product designation, part number, row number, sequence number field ascending sort;
Activity time table is sequence number, initial time, operation title, sequence number field ascending sort in due order;
The method defining start time datetimeksrq that validity is the parts program record of 1 and serial number is as follows:
The operation title assignment of fetch unit program Article 1 record to variable gxmc, start time assignment to ksrq;
Calculating ksrq is which sky after today today (), and value is assigned to n, and the hourage variable hk according to ksrq judges activity duration section; If hk>=8 and hk<12, be so morning shifts, m=1, hs=8, ms=0; If hk>=12 and hk<=16, be so afternoon shift, m=2, hs=12, ms=30; Hk>=17 and hk<=20 are so night shifts, m=3, hs=17, ms=0;
By n-m form synthesis sequence number, by operation name, activity time table is called that gxmc, validity are 0, sequence number is filtered for (n-m) filtercondition, the record number li_row of test step timetable; If record number li_row is greater than 0, read activity time table operation name and be called that the serial number assignment of the Article 1 record that gxmc, validity are 0, sequence number is n-m is to variable yy, initial time is to variable qsrq, get qsrq and ksrq maximal value and be assigned to ksrq, the start time of this record of setting parts program is ksrq, sequence number is (n-m), and serial number is yy; If the record number li_row of test step timetable is not more than 0, so m=m+1; If m=4, so m=1, n=n+1, gets back to this step 4) beginning circulation, until record number is greater than 0, namely find free time section;
5) according to parts program start time and operation time, determine that the method for end time datetimewcrq is as follows by the method that break time is added:
The operation time of fetch unit program is zysc;
If the end time wcrq of parts program Article 1 record minute is denoted as variable i ntmw, hour be denoted as variable i nthw, the duration of its end time and work hours is denoted as variable tysc, so tysc=(hk-hs) * 60+ (mk-ms)+zysc, arranges mw=mk+zysc; 3.5 hours working times of half a day are 210 minutes;
If tysc<210 and mw<60, so the number of minutes of end time wcrq is mw=mk+zysc, hourage is hw=hk, arranging its validity is 2, arranging its deadline is wcrq, setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the initial time wcrq of the record of yy;
If tysc<210 and mw>=60, so the hourage of end time wcrq is hw=hk+int ((mk+zysc)/60), the number of minutes is mw=mod ((mk+zysc), 60), the validity arranging this record is 2, the deadline arranging this record is wcrq, setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the initial time wcrq of the record of yy;
If tysc=210, so the hourage of end time wcrq is hw=hk+int ((mk+zysc)/60), the number of minutes is mw=mod ((mk+zysc), 60), the validity arranging this record is 2, the deadline arranging this record is wcrq, and setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the validity of the record of yy is 1;
If tysc>210, so do following process:
6) setting process timetable operation name is called that the validity that gxmc, validity are 0, sequence number is this record of n-m is 1, needs parts program corresponding record to split into two parts record simultaneously;
The start time of the Part I record that parts program corresponding record splits into is that the former start time is constant, and hs1, ms1 represent hourage and the number of minutes of quitting time respectively; If m=1, so hs1=11, ms1=30; If m=2, so hs1=16, ms1=00; If m=3, so hs1=20, ms1=30; The date of the end time of the Part I record that parts program corresponding record splits into is set to the today today () of n days afterwards, the time hour be hs1, the time minute be ms1; The validity of the Part I record that parts program corresponding record splits into is 2; The operation time of this record Part I record of parts program is (hs1-hk) * 60+ (ms1 – mk), the duration of this record Part I record of parts program is 0.00, setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, serial number is the validity of the record of yy is 1, zysc=zysc-(hs1-hk) * 60-(ms1-mk);
M=m+1, if m=4, so m=1, n=n+1, by operation name, activity time table is called that gxmc, validity are 0, sequence number is filtered for (n-m) filtercondition; The record number li_row of test step timetable, if record number li_row is greater than 0, insert new record capable of parts program corresponding record Part II record, batch number, affiliated product, associated components, product designation, part number, component names, operation number, operation title, priority, row number, non-operation time and former record remain unchanged, its validity value is 2, and operation time is zysc; Read activity time table operation name and be called that the serial number assignment of the Article 1 record that gxmc, validity are 0, sequence number is n-m is to variable yy, initial time is to variable qsrq, qsrq is set to the start time of parts program, arrange its sequence number for (n-m), serial number is yy; If activity time table record number li_row is not more than 0, so get back to this step 6) beginning circulation, until record number is greater than 0, namely find free time section;
Determine Part II end time datetimewcrq, if its end time wcrq minute is denoted as variable i ntmw, hour be denoted as variable i nthw, the duration of its end time and work hours is denoted as variable tysc, if the number of minutes of qsrq is mk, hourage is hk, and so tysc=(hk-hs) * 60+ (mk-ms)+zysc, arranges mw=mk+zysc; 3.5 hours working times of half a day are 210 minutes;
If tysc<210 and mw<60, so the number of minutes of its end time wcrq is mw=mk+zysc, and hourage is hw=hk, and arranging its end time is wcrq, and arranging its validity is 2; Arranging its sequence number is 1, if Part II splits again, then the 3rd component serial numbers is 2, the like; Setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the initial time wcrq of the record of yy;
If tysc<210 and mw>=60, so the hourage of the end time wcrq of parts program record is hw=hk+int ((mk+zysc)/60), the number of minutes is mw=mod ((mk+zysc), 60); Arranging its end time is wcrq, and arranging its validity is 2, and arranging its sequence number is 1, if Part II splits again, then the 3rd component serial numbers is 2, the like; Setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the initial time wcrq of the record of yy;
If tysc=210, so the number of minutes of its end time wcrq is hw=hk+int ((mk+zysc)/60), hourage is mw=mod ((mk+zysc), 60), the validity arranging this record is 2, and the deadline arranging this record is wcrq, arranging its sequence number is 1, if Part II splits again, then the 3rd component serial numbers is 2, the like; Setting process timetable operation name is called that gxmc, validity are 0, sequence number is n-m, and serial number is the validity of the record of yy is 1;
If tysc>210, get back to step 6) i.e. this step beginning circulation, until tysc>=210 is false; Like this with regard to end time wcrq, the validity 2 of setting parts program record; Determine the new sequence number, serial number, the sequence number field that insert record; Setting process timetable operation name is called the initial time wcrq or validity 1 that gxmc, validity are 0, sequence number is n-m, serial number is the record of yy;
7) by the non-operation time zysc of parts program and end time wcrq, the method for the method determining means program next procedure be added with continuous time or the start time of father's parts first assembly process is as follows:
Assignment wcrq minute is designated as mw; Hourage is designated as hw, and non-operation time is designated as zysc;
This order of classes or grades at school work hours of record are set, if m=1, so hs1=8, ms1=0; If m=2, so hs1=12, ms1=30; If m=3, so hs1=17, ms1=0, arranges n1=n;
If the start time of the next procedure of setting parts program or father's parts first assembly process is ksrq, ksrq is tysc with the duration when the order of classes or grades at school work hours, so tysc=(hw-hs1) * 60+ (mw-ms1)+zysc,
If tysc<=210 and (mw+zysc) <60, so the number of minutes of ksrq is mw+zysc, and hourage is hw;
If tysc<=210 and (mw+zysc) >=60, so the hourage of ksrq is hw+int ((mw+zysc)/60), the number of minutes is mw=mod ((mw+zysc), 60);
8) m=m+1, reads the next secondary data of record; If m=4, so m=1, n=n+1, reads activity time table operation name and is called that gxmc, validity are 0, sequence number is the record of n-m; If read record, if the initial time of the activity time table hourage that is and the number of minutes are respectively hs2 and ms2; Hourage and the number of minutes of recording the work hours of order of classes or grades at school are respectively hs and ms; If m=1, assignment hs=8, ms=0; If m=2, assignment hs=12, ms=30; If m=3, assignment hs=17, ms=0; If read, less than the record of activity time table, so to get back to step 8) beginning circulation, extremely to reading record,
xx=(n-n1)*1440+(hs2-hs1)*60+(ms2-ms1),
yy=(n-n1)*1440+(hs-hs1)*60+(ms-ms1)+210;
If tysc>210 and tysc<=xx, so the hourage of ksrq is hs2, and the number of minutes is ms2; If tysc>xx and tysc<=yy, so non-operation time zysc=zysc-((n-n1) * 1440+ (hs2-hw) * 60+ (ms2-mw)); The hourage of ksrq is hs2+int ((ms2+zysc)/60), and the number of minutes is mod ((ms2+zysc), 60); If tysc>yy, so hs1=hs is set, ms1=ms, hw=hs2, mw=ms2, gets back to this step 8) beginning circulation, until tysc>xx is false;
9) corresponding method of many-to-many relationship is used to find out the next procedure of parts program or father's parts first assembly process, by start time and validity assignment
Whether decision means program record operation has next procedure, if the operation of this record of parts program has next procedure, the start time arranging it is ksrq, the validity field simultaneously arranging the next procedure of this record is 1, read operation number, the operation title of the next procedure of this record simultaneously, write this record to turn to operation number, turn to operation file-name field, the circulation direction after choosing as workpiece completion;
If the operation of this record of parts program does not have next procedure, the separate unit number scale then searching all corresponding record of product designation, part number, affiliated product, associated components in production schedule is ljsl, illustrates that subassembly and the pass of father's parts are corresponding 1 the father's parts of ljsl bar subassembly; Reading operation number is 1, sequence number is all subassemblies of father's parts of the same batch number of 0, its record number scale makes xx1, reading operation number is again 1, sequence number is father's parts of the same batch number of 0, and its record number scale makes xx2, and the result that both are divided by is denoted as xx3, show that father's parts are searched xx3 its validity and just can be changed 1 into, so just establish the uniqueness of the correspondence of the many-to-many relationship for the corresponding multiple subassembly of multiple father's parts;
If the operation number of these parts is that the start time of the record of father's parts of 1 is not for empty, so be denoted as ksrq1, the maximal value of getting ksrq and ksrq1 is ksrq, so the operation number of father's parts of these parts is start time of the record of 1 be set to ksrq, read operation number and the operation title of his father's parts simultaneously, write this subassembly record to turn to operation number, turn to operation file-name field, the circulation direction after choosing as workpiece completion;
If the subassembly of father's parts is corresponding xx3 father's parts, then change the validity of these father's parts into 1;
10) with DO ... LOOPWHILEcondition loop statement, carry out step 4), 5), 6), 7), 8); Go down by this method always, the all parts determined when parts program all do not have father's parts, and after the start time of all assembly processes of its correspondence and end time all determine, namely after start time of parts program, end time, serial number all generate, or the validity of all records of activity time table is all after 1, circulation terminates;
11) by the not setting model filtration of parts program, if turn to operation number to be 1, explanation turns to father's parts, operation number is turned to not to be 1, explanation turns to next procedure, rule is searched every bar record successively and is turned to operation number, turns to the serial number of operation name correspondence according to this, and that inserts record turns to sequence number field;
Use the correlating method of variable and data in number of days, order of classes or grades at school, the generation method of boundary time field and three layers of circulation, the optimal path assembled by parts is with the time of the different Gantt chart mode real-time display and control station operation of background colour, and method is as follows:
1) parts program sequence number, serial number, start time, batch number, affiliated product, associated components, product designation, part number, row number, sequence number field ascending sort in due order;
2) parts program filters by operation name field filtercondition;
3) the record number of test component program, if equal 0, represents that parts program does not have record by after above-mentioned condition filter, exits this step;
4) if the record number of parts program is greater than 0, loop statement is set and reads each record from parts program successively;
5) sequence number of the Article 1 record of fetch unit program, finds out '-' in race-card by position from left to right with function, is denoted as l_i [5]; Get sequence number from the 1st, a left side to (l_i [5]-1) individual character string, convert Integer types value to, assignment is to the sky digital section of Gantt chart, individual to Far Left character string from (l_i [5]+1), convert Integer types value to, assignment is to Gantt chart order of classes or grades at school field; If order of classes or grades at school field variable m represents; Then the value of m is 1,2 or 3; If m=1, so hs1=8, ms1=0; If m=2, so hs1=12, ms1=30; M=3, so hs1=17, ms1=0;
The serial number assignment of fetch unit program Article 1 record is to the sequence number field of Gantt chart;
The start time of the Article 1 record of fetch unit program is assigned to variable ksrq, and end time assignment is to variable wcrq;
The product designation assignment of the Article 1 record of fetch unit program is to variable cpdh, and part number assignment is to variable ljdh;
Time of decision means program record, in which section of Gantt chart 21 time periods of half a day, process was:
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <10, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >0 then searches this record of Gantt chart S10 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S10 field;
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <20, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >10 then searches this record of Gantt chart S20 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S20 field;
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <30, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >20 then searches this record of Gantt chart S30 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S30 field;
Use the same method until time of decision means program record whether in Gantt chart the 21st time period of half a day; If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <210, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >200 then searches this record of Gantt chart S210 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S210 field;
6) the sequence number assignment of the Article 2 record of fetch unit program is to character type variable zcc, finds out '-' in zcc by position from left to right, be denoted as l_i with function; Get zcc from the 1st, a left side to (l_i [5]-1) individual character string, convert Integer types value assignment to numeric type variable n; Individual to Far Left character string from (l_i [5]+1), convert Integer types value assignment to numeric type variable m, the serial number of fetch unit program Article 2 record is set to numeric type variable l_i; Search number of days in Gantt chart and equal n, order of classes or grades at school equals m, and serial number equals the record of l_i, if found, shows that Gantt chart has qualified record, is denoted as li_row; If can not find out, show that Gantt chart does not have qualified record, insert new record at Gantt chart, recording mechanism is li_row, and the sky digital section assignment of the new record of the Gantt chart of insertion is n, and order of classes or grades at school field assignment is m, and sequence number field assignment is l_i;
The value of m is 1,2 or 3; If m=1, so hs1=8, ms1=0; If m=2, so hs1=12, ms1=30; M=3, so hs1=17, ms1=0;
The start time of the Article 2 record of fetch unit program is assigned to variable ksrq, and end time assignment is to variable wcrq;
The product designation assignment of the Article 2 record of fetch unit program is to variable cpdh, and part number assignment is to variable ljdh;
Time of decision means program record, in which section of Gantt chart 21 time periods of half a day, process was:
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <10, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >0 then searches this record of Gantt chart S10 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S10 field;
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <20, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >10 then searches this record of Gantt chart S20 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S20 field;
If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <30, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >20 then searches this record of Gantt chart S30 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S30 field;
Use the same method until time of decision means program record whether in Gantt chart the 21st time period of half a day; If inequality (hour (ksrq)-hs1) * 60+ (Minute (ksrq)-ms1) <210, whether (hour (wcrq)-hs1) * 60+ (Minute (wcrq)-ms1) >200 then searches this record of Gantt chart S210 field simultaneously has data, if no, by variable string (cpdh+ '-'+ljdh) assignment to S210 field;
7) successively the Article 3 of fetch unit program to the last item record, by step 6) method complete the assignment of Gantt chart data.
2. discrete enterprise intelligent operation control method according to claim 1, is characterized in that adopting the process of not fixing the nested circulation number of plies and array structure product tree as follows to the multiple product with not fixed subcomponent sum of series multiple tracks assembly process:
1) production schedule is pressed product designation cpdh, part number ljdh, affiliated product zcc, associated components zcb field ascending sort;
2) the record number of test products detail list, is denoted as variable li_row;
3) judge production schedule whether record, if li_row=0, represent production schedule not record, exit this step, if li_row>0, represent that production schedule has record; Read the product designation cpdh of Article 1 record, part number ljdh, affiliated product zcc, associated components zcb, tree view list items subitem display text assignment;
4) variable interior loop number of plies inti is set, array stringzcc [20], zcb [20], li_row [20];
5) production schedule is pressed zcc, zcb Field Sanitization, obtain all subassemblies;
6) assignment i=1, tests the record number of all subassemblies, is denoted as li_row [i];
7) judge subassembly whether record, if li_row [i]=0, represent there is no subassembly, so add tree view list items, before this list items, do not have subitem not add "+" number; Recover father's item filtercondition, its next record of cursor pointing, reads the product designation cpdh of next recording-member, part number ljdh, affiliated product zcc, associated components zcb, tree view list items display text assignment; Repeat step 5), 6), 7);
If li_row [i] >0, represent that Article 1 recording-member has subassembly, so add tree view list items; Subitem is had to add "+" number before this list items; Read the product designation cpdh of the Article 1 record of subassembly, part number ljdh, affiliated product zcc [i], associated components zcb [i], tree view list items subitem display text assignment;
8) production schedule is pressed zcc [i], zcb [i] Field Sanitization, obtains all subassemblies;
9) test the record number of all subassemblies, be denoted as li_row [i+1];
10) judge all subassemblies whether record, if li_row [i+1]=0, represent that it does not have subassembly, so add tree view list items; Subitem is not had not add "+" number before this list items; Recover father's item filtercondition, its next record of cursor pointing, read the product designation cpdh of next record, part number ljdh, affiliated product zcc [i], associated components zcb [i]; Tree view list items display text assignment, repeats step 8), 9), 10);
If li_row [i+1] >0, indicates subassembly, so add tree view list items; Subitem is had to add "+" number before this list items; Assignment i=i+1; Read the product designation cpdh of the Article 1 record of its subassembly, part number ljdh, affiliated product zcc [i], associated components zcb [i], tree view list items subitem display text assignment;
11) repeat step 8), 9), 10);
12) when the ending of cursor pointing i level subassembly, get back to father's item, i=i – 1 is set; Judge cursor get back to father's item from the 1st article to li_row [i] article record one article record or the ending record of father's item; If when getting back to one article of record between father Xiang Cong 1 article to li_row [i] article record, then recover the filtercondition of father's item, carry out test and the judgement of next record; If get back to the ending record of father's item, then enter last layer circulation, i=i – 1 is set again;
13) until i=1, products catalogue tree is just constructed in this way.
3. discrete enterprise intelligent operation control method according to claim 1, it is characterized in that operation goes into operation to choose and call job instruction and carry out operation and operation progress feedback, method is as follows:
(1) concrete steps of automatic acquisition activity duration are as follows:
1) vernier a: declareget_datecursorforselectgetdate () is set for reading server time;
2) vernier is opened: openget_date;
3) variable tt_d:fetchget_dateinto:tt_d is set to;
4) vernier: closeget_date is closed;
(2) step that operation " goes into operation and chooses " is:
1) when operating personnel starts operation, on the all-in-one of aobvious feedback terminal, the password login arranged with me, display Gantt chart window;
2) at Gantt chart window, double-click Gantt chart, parts program carries out " go into operation and choose " through the capable double-click of record of the relative recording filtered up;
3) time of server when program automatic acquisition is chosen, the start time field of parts program corresponding record is set to; The value of the validity field of this record of setting parts program is 3;
4) handling situations table inserts a record simultaneously, the batch number of the record inserted by handling situations table, product designation, part number, component names, operation number, operation title, start time, operating personnel's field assignment;
(3), after operation completes, operating personnel need carry out operation " completion is chosen "; The step that operation " completes and chooses " is:
1) after operating personnel fulfils assignment, at the job instruction window of the password login arranged with me on aobvious feedback terminal integrative machine, click " completion is chosen " button and carry out " completion is chosen ", job instruction window exits;
2), when carrying out operation " completion is chosen ", the end time that server time is set to parts program corresponding record is read; Make a report on the operation time field that actual job duration is set to parts program;
3) in setting parts program, the value of the validity field of this record is 5;
4) according to product designation, part number, batch number, operation number, operating personnel's information searching corresponding record, find after, by obtain server time assignment to the end time;
5) if operation does not complete, do not need to carry out " completion is chosen ", want to exit job instruction window, click " exiting " button;
(4), when operation occurs abnormal, operating personnel need carry out operation " abnormal feedback "; The step of operation " abnormal feedback " is:
1) to the manipulating object doing " go into operation and choose ", in operation process, job instruction window " abnormal feedback " button is clicked;
2) click " abnormal feedback " button when operation occurs abnormal, enter " abnormal feedback " window;
3) in parts program, the validity of this record is 4; Operating personnel makes a report on the abnormal occurrence that operation occurs; Fill in the time because the abnormal operation time caused extends simultaneously;
4), after technician to Solve on site exception, abnormal cause and solution is filled in;
5) when parts schedule data refreshes, by new operation time adjustment data.
CN201210433134.3A 2012-11-01 2012-11-01 discrete enterprise intelligent operation control method Active CN102930397B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210433134.3A CN102930397B (en) 2012-11-01 2012-11-01 discrete enterprise intelligent operation control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210433134.3A CN102930397B (en) 2012-11-01 2012-11-01 discrete enterprise intelligent operation control method

Publications (2)

Publication Number Publication Date
CN102930397A CN102930397A (en) 2013-02-13
CN102930397B true CN102930397B (en) 2016-04-13

Family

ID=47645191

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210433134.3A Active CN102930397B (en) 2012-11-01 2012-11-01 discrete enterprise intelligent operation control method

Country Status (1)

Country Link
CN (1) CN102930397B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105809307A (en) * 2014-12-30 2016-07-27 中国铁道科学研究院电子计算技术研究所 Discrete production line bottleneck detection method based on Internet of Things technology
CN106227165B (en) * 2016-08-10 2019-03-01 江苏绪普信息科技有限公司 A kind of intelligence manufacture management system
CN109947057B (en) * 2019-02-14 2021-08-17 珠海格力智能装备有限公司 Test result control method, device and system
CN111862699B (en) * 2020-07-08 2022-05-27 天津洪恩完美未来教育科技有限公司 Method and device for visually editing teaching courses, storage medium and electronic device
CN111880500B (en) * 2020-07-29 2021-06-25 广东韶钢松山股份有限公司 Steelmaking sample processing method and device based on processing system and processing system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966695A (en) * 1995-10-17 1999-10-12 Citibank, N.A. Sales and marketing support system using a graphical query prospect database
US6901304B2 (en) * 2002-01-11 2005-05-31 Sap Aktiengesellschaft Item tracking system architectures providing real-time visibility to supply chain
CN101727622A (en) * 2009-12-08 2010-06-09 华南理工大学 layering modeling and optimizing method targeting complicated manufacture system
CN102739730A (en) * 2011-10-31 2012-10-17 李宗诚 Operation system technique foundation for intelligent integration of industrial value chain market allocation

Also Published As

Publication number Publication date
CN102930397A (en) 2013-02-13

Similar Documents

Publication Publication Date Title
CN102930397B (en) discrete enterprise intelligent operation control method
US7274375B1 (en) Timekeeping system and method for graphically tracking and representing activities
US5233533A (en) Scheduling method and apparatus
US7921026B2 (en) Method and system for generating a timeline associated with a project schedule
US6678671B1 (en) System for linking a resource management system with an event of a project in a project management system and a method therefor
Singh et al. Justification for the selection of a reconfigurable manufacturing system: a fuzzy analytical hierarchy based approach
CN102982405B (en) Automatic-searching has the method for the parts assembling optimal path of subordinate relation product
CN108932383B (en) Engineering construction organization scheme comprehensive aid decision-making method based on BIM technology
US20070050228A1 (en) Schedule management
CN102063490A (en) Database partition method and device
CN102542437B (en) Task expiration reminding method and device
Komi-Sirvio et al. Measurement automation: methodological background and practical solutions a multiple case study
CN102722784A (en) Method for setting list or quota rapidly
Dombrowski et al. State of the Art-Lean Development
Sun et al. Study on third-party logistics service provider selection evaluation indices system based on analytic network process with BOCR
CN115983551A (en) Intelligent industrial production scheduling method, device, equipment and application
KR101171214B1 (en) Activity Process Management System
CN102096857B (en) Collaboration method and device for data processing process
US7310562B2 (en) System and method for scheduling mold manufacturing
US20040054562A1 (en) Multi-perspective enterprise management tool
AU2013200568A1 (en) Work allocation model
Dombrowski et al. Reengineering of factory planning process for the realization of digital factory 4.0
US20230368309A1 (en) Creating a time entry based on automatically tracking user activity
Fox et al. ISIS: a constraint-directed reasoning approach to job shop scheduling, a system summary
US20230368149A1 (en) Automatically creating a time entry

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