Solved

Using MS ACCESS to create routings in process flow

Posted on 2015-01-20
10
378 Views
Last Modified: 2015-01-21
I have a production process with 5 processing centers, for instance:
PC1 is forming
PC2 is welding
PC3 is final assy
PC4 is testing
PC5 is Crating

I would like to create a routine in MS ACCESS that generates all possible paths (routings) for a part or set of parts subject to the following conditions:

Parts can go to any sequence of process centers, minimum number of steps is 1, maximum is 8. I would like to be able to specify the min and max limits.

There are a couple of configurations:
1) Parts can visit the same process center more than once but I'd like to be able to specify the limit of visits to any one process center to 3. So, for instance, I would allow a PC1, PC3, PC4, PC5, PC3, PC4, PC3, PC5 routing.
0
Comment
Question by:EdLB
  • 3
  • 3
  • 2
  • +1
10 Comments
 
LVL 47

Assisted Solution

by:Dale Fye (Access MVP)
Dale Fye (Access MVP) earned 250 total points
ID: 40561172
This isn't a homework assignment, is it?

Well, if you leave out the restriction of no specific process may be visited more than 3 times, it would be the sum of 5^1 + 5^2 + ... + 5^8 = 488,280 combinations.  But the limitation on no single process being "visited" more than 3 times will lower that number of possible combinations significantly.

But to actually generate the set of values, you would have to create an outer loop to determine the # of steps, and then a recursive function that would generate N numbers, and then a series of steps to assess whether the sequence meets your 3 "visits" criteria.
0
 

Author Comment

by:EdLB
ID: 40561185
No but it would make a good one. It is a real world problem for setting up a general model of a production. I think I've found a more practical approach since there is usually lots of knowledge of the process to begin with.
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 40561348
I can see the need for the reverse:

For a given scenario, ... Check to see if the "path" is valid, ...for example:

IsValidPath(PC1, PC3, PC4, PC5, PC3, PC4, PC3, PC5)=True
IsValidPath(PC1, PC3, PC4, PC5, PC3, PC4, PC3, PC5, PC6)=False
IsValidPath(PC1, PC3, PC4, PC5, PC3, PC4, PC3, PC5, PC3)=False
...But I cannot understand the need to generate *All* valid paths...
What would a master list be used for?
Would someone be validating this "Manually"?!?


as always, ...explaining the ultimate need is always helpful to guide experts to an efficient solution.

JeffCoachman
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 40561373
It is also not clear how each segment is being generated or how it will be stored.
0
 
LVL 84
ID: 40561543
I think I've found a more practical approach
So do you still need help with this?
0
Complete VMware vSphere® ESX(i) & Hyper-V Backup

Capture your entire system, including the host, with patented disk imaging integrated with VMware VADP / Microsoft VSS and RCT. RTOs is as low as 15 seconds with Acronis Active Restore™. You can enjoy unlimited P2V/V2V migrations from any source (even from a different hypervisor)

 
LVL 47

Expert Comment

by:Dale Fye (Access MVP)
ID: 40561692
Oh, and I forgot that you would also want to rule out any instance of two consecutive visits to the same process (probably).
0
 
LVL 84

Accepted Solution

by:
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 250 total points
ID: 40561720
BTW, I agree with Jeff - I can't see the need to consider all valid paths. The actual number of those would be very large, as Dale pointed out, so I can't see the value in doing something like this.

If your intent is to insure your work processes follow a specific path, then you need to define that path for each process. Otherwise, you run the risk of an invalid process being considered valid - since a valid process for PartA may not be a valid process for PartB.

I deal with some very complex MRP/ERP and Process Flow programs, and all of them allow the user to create "Templates" or "Operations" where a user defines the specific Routings and Operations needed to complete a process - but none of them validate against a full set of all possible combinations. They simply validate against the stored template, based on the "process" the user is executing.

If you have multiple processes that can be performed for the same part ... then I'd suggest you're not really dealing with the SAME part, but rather a subset/component of a part, or an entirely different part which would need it's own set of instructions.
0
 

Author Comment

by:EdLB
ID: 40562045
Thanks for the comments. The idea of generating all possible solutions is impractical. And besides, in production facilities there is someone who knows something about routings and can specify.
0
 
LVL 84
ID: 40562330
there is someone who knows something about routings and can specify.
I would most fervently hope so, otherwise they'd have a very difficult time producing anything :)
0
 

Author Comment

by:EdLB
ID: 40562362
Roger that.
0

Featured Post

Get up to 2TB FREE CLOUD per backup license!

An exclusive Black Friday offer just for Expert Exchange audience! Buy any of our top-rated backup solutions & get up to 2TB free cloud per system! Perform local & cloud backup in the same step, and restore instantly—anytime, anywhere. Grab this deal now before it disappears!

Join & Write a Comment

Foreword (May 2015) This web page has appeared at Google.  It's definitely worth considering! https://www.google.com/about/careers/students/guide-to-technical-development.html How to Know You are Making a Difference at EE In August, 2013, one …
User Beware!  This is a rather permanent solution to removing your email from an exchange server.  The only way to truly go back is to have your exchange administrator restore your mailbox from backups.  This is usually the option of last resort.  A…
In Microsoft Access, learn how to “cascade” or have the displayed data of one combo control depend upon what’s entered in another. Base the dependent combo on a query for its row source: Add a reference to the first combo on the form as criteria i…
The viewer will learn how to use the =DISCRINV command to create a discrete random variable, use this command to model a set of probabilities and outcomes in a Monte Carlo simulation, and learn how to find the standard deviation of a set of probabil…

759 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now