• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 442
  • Last Modified:

Access 2013 Data Macros

I'm working on a warehouse database project.  I'm attaching a sample database with 2 tables.  The locations table has all the warehouse locations listed.   A01, A02, B1, Etc.

I have a lookup function on the Table1 that gets the locations from the locations table. It is setup for multiple values.  I need this because some products will have to be stored in multiple locations.  That part was easy.
What I would like to do now and I think the data macros would be the best option is that when a location is selected in table 1 it sets the occupied field in the locations table to true or it hides the location so it can't be selected again.
Database-12.accdb
0
Mwvarner
Asked:
Mwvarner
  • 4
  • 2
  • 2
1 Solution
 
ste5anSenior DeveloperCommented:
As far as I understand: A product can have multiple locations. A location can only have one product?

I would model this explicitly using a bridge table. Cause this allows to declare this kind of relationship, instead of using code to maintain it.

Relationship diagram
with

Bridge table data
0
 
MwvarnerAuthor Commented:
That will work but one of the things I'm trying to work out is how to visually represent the locations and indicate which locations are available and which ones are vacant.  Otherwise how can someone who is receiving the pallets know where to tell someone to put them?
0
 
ste5anSenior DeveloperCommented:
Use a concatenation function like Allen Browne's.

And use a dialog for assigning the locations.
ConcatRelated.vbs
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
Jim Dettman (Microsoft MVP/ EE MVE)PresidentCommented:
<<What I would like to do now and I think the data macros would be the best option is that when a location is selected in table 1 it sets the occupied field in the locations table to true or it hides the location so it can't be selected again. >>

  Just as a general comment, I don't think you really want that.   The concept of not storing a product in a given location more than once is not a good one.  Most inventory systems have two levels:

1. Location
2. Lots

Even for the first, you need to be able to handle multiple entries as more often than not, you've got some accounting tied in.   Your accounting may be done on FIFO, LIFO, etc.   In order to account for that, you need to be able to receive  to a location multiple times.

So normally, you'll have tables that look like this:

tblLocations - One Record per location
LocationID - AN - PK
LocationCode - Text - CK1 - "AA01", "AA02", "AA03"
LocationType - Long - Floor, Rack, Bin etc

tblItems - One record per item
ItemID - AN - PK
Descritption

tblLocationQtys -
LocationQtyID - AN - PK
LocationID - Long
ItemID - Long
QtyReceived
ReceivedOn
Cost

 This allows you to have:

1. Different items in the same location.
2. The same item in the same location several times (so you can keep track of multiple receiving or costs)

 It also let's you handle cases where you might now have a rack, which can only hold a single pallet, but then you change to a floor setup, which might hold a dozen pallets.

 So you really do want to allow for multiple records of an item to exist in the same location.

Jim.
0
 
MwvarnerAuthor Commented:
I still don't see how I will be able to visually represent the locations and show which locations are available and which ones are filled.   Do you know of any warehouse data base examples that do this?
0
 
MwvarnerAuthor Commented:
This solves the table structure I think but it still doesn't answer my question on how to visually represent the storage areas and which locations are occupied and which are not.
0
 
Jim Dettman (Microsoft MVP/ EE MVE)PresidentCommented:
<<I still don't see how I will be able to visually represent the locations and show which locations are available and which ones are filled.   Do you know of any warehouse data base examples that do this? >>

  You would do that on the tblLocations record; a simple Y/N of "IsLocationFilled".

  Then it's simply a WHERE (criteria) check on the flag:

 SELECT * FROM tblLocations WHERE IsLocationFilled = False

  just as you might be putting a pallet away and want only locations that will hold pallets.

Jim.
0
 
MwvarnerAuthor Commented:
That should work.

Thanks Jim
0

Featured Post

[Webinar] Improve your customer journey

A positive customer journey is important in attracting and retaining business. To improve this experience, you can use Google Maps APIs to increase checkout conversions, boost user engagement, and optimize order fulfillment. Learn how in this webinar presented by Dito.

  • 4
  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now