I have a fairly complete data model, my question is, how best to create tables for entry where I do not have subform after subform, and subforms in subforms. With subforms for the subforms and subforms on top of that.
I am about to start pulling out some teeth because at this point it sounds fun compared to this!
Do I need to use a query to base my table off of to build my Customer entry form? Or is my only option to use 15 frikin' Subforms? I I use a query, does that cause problems with data integrity?
I am having trouble finding useful reference to this, both online and in books I have purchased.
Normalization is fantastic, I understand.... But besides the crumby Northwind sample DB that everyone and their brother directs you to, is there an actual useful sample to look over that illustrates the use of a normalized data model?
I have grown more than a bit irritated with this, mainly because of my own inablilty to make progress in putting this project together.
I would like to create a simple to use, streamlined systems that promotes efficiency and speed, not a super convoluted system that has 85 subforms on every form in the DB.
I would REALLY appreciate some feedback/direction here, I am about to give up on normalized data and go with a simple flat table approach.
I would rather have redundant data than indecipherable forms that I have to answer incessant questions about.
Hi I have designed a database for a small organization. It is a ver small database. can any one verify and tell me the mistakes in my design. It hardly takes 20 min for the people like you. This is my first step in designing. I am attaching the zip file which contains dbm file and business requirements. Complete physical data model is there.
especially in "category_tests" table i feel that i have done some thing wrong.
What's up everyone, I'm new around here and to db design as well...
I'm posting a really rough data model for the first real database I've been putting together.
I'm still in the early stages, and the concepts behind db design are still pretty foreign to me, so there are bound to be many errors I hope to iron out ASAP.
One specific question:
On all of the data models I have referenced, the "OrderDetails" table has no primary key, can someone help me to understand this? Or explain how it is wrong... Thanks
I was hoping some of the experts and advanced users around here could take a look at this and help steer me in the right direction.
I'm fairly new to Access, but have set up a database containing 8 normalized tables. I would like to know if it's possible to update all those tables by importing an Excel file into each table, or importing the Excel file into one Access table and then appending that table to those 8 tables. AND STILL MAINTAIN THE RELATIONSHIPS. The Help directory only talks about importing or appending into one table.
I am looking for a data model to define and track proficiency/currency.
Example:
You earn a licence to do X. You need to renew your licence every 2 years or so. But also, to maintain currency, you need to do what the licence gives you the right to do often enough, or else you need to do a test.
Specifically, you need to do X a specified number of times N within, say, last 3 months at any one time to maintain currency. If you have lost your currency, you need to do a test/check. So at all times, you need to have N times on record within last 3 months, or a test.
In addition, to do X legally, you also need to document that you have done X at least 10 hours within, say, last 6 months, or that you have another test within those last 6 months. This is independet of the previous requirement (concerning the number of times you did X).
Both requirements must be fulfilled at all times for you to do X legally.
So, any suitable model out there? Essentially, something capable of defining and tracking currency for various ratings and license privileges of pilots would do just fine.
I have researched the 'party' data model but it is a bit too complex for what I'm seeking. For those familiar with it, I don't really need the intermediary relationship from-to tables.
I'm interested in ideas about setting up a data structure that will allow users to search contacts or select contacts in dropdowns regardless if the contact type is a person or an organization.
Obviously the fields needed for both are different and the biggest issue is the name field because the person contacts are
The way I am accomplishing it now is writing the company name, or "first name " & "last name" for a person, to kind of a bridge table when a new record is inserted into the person table or the organization table...kind of inefficient.
Is this a relationship thing or should I just write a function to create a temporary recordset when needed?
I have generated two queries called "qry_GetWellName_GetAPI" and "qry_GetWellProduction" that extracts all the data I need from a csv to make two tables.
My issue is that I can not gather all the production data into a query formatted properly for a make table query that contains production history by month / api number.
Ideally the data would be placed in a table called tblProductionHistory with the following unique table index --> [api_fk] [data date]. The api_fk would link to the table that was created by extracting well names using qry_GetWellName_GetAPI.
tblProductionHistory field structure I am trying to achieve:
Currently the qry_GetWellProduction shows each well name and the year it had production as a separate record from the month names and the month's production values. I need to consolidate the data so each record can be matched to the unique table index.
Is there a sub query I need to use to manufacture a data date for each month that includes the year and last day of that month for that year? Also would I need a separate sub query to match each month's production to the api number?
How do you merge / append records from one database into another? The old database was very poorly designed (i.e. no normalization), but much of the data is the same.
Instinct from what I have learned says do this:
- create a query in each database that joins all fields together into a flat table - run an update query that migrates the source data to the new database.
I really have no idea though, and to be honest... even if this is how it is done, I am very unsure how to proceed!
So I’ve been assigned to develop a database in Access which will house information on students who are participating in an internship program sponsored by my employer. I was given a spreadsheet with roughly 40 columns, so it is pretty detailed info about the students. For example personal student info (DOB, email, phone, etc), as well as school, major, year rank, school address, permanent address, etc.
Importing this given table is easy, just by using the import wizard. However I am faced with a challenge. The info I have is up to date at this point however in years to come there will be a need to import new student info. The only way my employer wants that to be done is by taking the new excel spreadsheet and importing that data into the already created database. Now this wouldn't be a problem if the DB is one flat, non-normalized, table because the columns would line up. However I feel that the DB needs to be normalized because of the vast amount of data that is repetitive, such as State or Major.
Is there a way to import an excel sheet into an existing normalized access database? Or even a way to automate it so that the excel columns would be broken up into the separate corresponding normalized tables?
I have a SharePoint list that tracks the date/time of each stop of an order from its origin to its destination. The number of stops varies depending on the type of order (you can use train as a metaphor). The goal is to calculate the average time between each stop (we're trying to figure out where orders typically get held up).
Let's say there are stops A, B, C, D, and E. Every order starts at A and ends at E. If they all made every stop, I could easily get the average of datediff("d", B, A) etc.
However, since they make different numbers of stops, what I need is the difference between the stop and the last stop they actually made. I need a crosstab query (or report) that lists the OrderType as the row, the StopName as the column, and the average(datediff) as the value.
In a perfect world, this would be normalized and I'd have separate tables for the stops and the order types, but trying to do that through SharePoint is Not Fun and is going to confuse the end users.
I am trying to build a table that lists aircraft viewed by plane spotters.
In the “aircraft_spotted” table I have two look up wizards. The first lists the make of aircraft and the second lists the type.
What I am trying to do is filter the models down to the maker. If I select Boeing I will only get Boeing models and nothing else. The same would apply to Airbus and so on.
I would like to keep this information contained within the table without using a query but if I have to use the query for the model lookup then so be it.
I have four tables with unique records as shown below. I'd like to add a record for a new item to the database by selecting the values from combo boxes for Supplier, Item and Unit. If the values do not exist the user would then type in a new value. SuppliersItemCode and Cost would always be new values. What's the best way to go about this? I am unsure how to add a record to a normalized database where you sometimes have to use / reference existing unique values in multiple tables via foreign keys for the new record.
The logic of the form would be:
1. Select existing or add new Supplier. 2. Select existing or add new Item. 3. Select existing or add new Unit. 4. Enter new SuppliersItemCode 5. Enter Cost
It is now possible that some of the products can also be a product group, and a product group would then consist of multiple products. (Note: if a product is a product group as well, both of them have the same names. therefore for consistency, if in future someone alters the product name, that should be reflected for the product group if that product happens to be a product group as well)
So, I started of by thinking that the products table should contain a binary filed like "Is_this_a_ProductGroup", where for any product that is also a product group, while creating or editing the product the user would flag this field "Yes" and "No" otherwise.
S, my revised products table is like:
PRODUCT ======== Prod_id Prod_name Is_it_a_ProductGroup Dept Type :
Based on some earlier suggestions in this forum, I tried to create a junction table like
and joined the Prod_id above to the Prod_idin PRODUCT table and created a copy of the PRODUCT table and joined the Prod_Group_id to Prod_id in the PRODUCT_Copy table.
I would like some help now on:
1. whether this design is really correct?
2. If so, how does one go about the process of data entry through forms for these tables?
In my transaction table, I would like to find out the latest transaction dates of each family models. It sounds a simple Max function can get the desired result. However model number consists of the first 6 characters for the family model and the rest for the versions (variants). The Max function fails to work in this scenario. Is there any other way to group the model numbers once the 1st 6 characters are identical (the rest is ignored)?
Hi, I've been working hard at learning Access for past two months and spent a lot of time Googling and speeding through Alison Balter's books and at a slower pace the Paul Letwin’s Developers Handbook set (fantastic but I probably need a year to absorb the incredible detail).
I've built a prototype reconciliation tool using the recommended FE-BE model. I opted for a total ADO solution and have had great success in putting together a fast and useful tool for 10+ users.
I avoided using Workgroups in my design and developed my own basic sign-on authority model which allowed an Administrator (don't confuse with Admin user in Workgroups) to add new users who can use the Access app. The allowable users and which ones are signed on are stored in the BE. This all works reasonable well until network issues occur and the signed on user record on the BE is not reset as should be if the user signed-off genuinely.
This is where I realised I need to be able to monitor who is connected to the BE. There is a way of doing that using ADO which I can get to work. I then noticed because all users are signed on with Workgroup Admin as default I could not differentiate between users. I then decided to implement Workgroup authority retrospectively.
I decided to place the .mdw on the LAN with the BE (this seems to go against conventional wisdom but could not workout how else I could achieve what I wanted to). This enables the two Administrators in different places to maintain users via the FE. I use the /wrkgrp command line flag to point to the correct .mdw.
I then started getting all sort of problems . . .I'm still in testing . . . not so bad but deadlines are looming and I'm worried.
Sorry, I digress. . .the problem I seem to be getting is when I open the FE :
Run-time error -2147217843 (80040e4d) Cannot start your application. The workgroup information file is missing or opened exclusively by another user
I also have problems developing the FE with the workgroup file in place. It seems to complain about another user is locking the FE.
The problem is a little verbose but just trying to paint a picture . . .now, this is what I'm after. . .I need the following ability:
1. Two Administrators who can maintain users. When a new user is added the Administrator chooses a password. 2. When the new user signs on the user is prompted to enter new password. 3. The administrators can view who is genuinely signed on and reset accounts appropriately.
I am currently studying the Access Security sections in the Paul Letwin book to better understand what is going on. It does seem retro-fitting an app to a workgroup model is not straightforward. Admittedly, I should have considered Workgroups in my design before starting (I will know).
Thanks for staying with me if you're still reading . . .any suggestion/pointers would be great.
I currently have a query of between dates which the user enters, but when I try to get a total count of model numbers it gives totals for each date. I am trying to get a count of model numbers between these dates with the dates excluded in the grouping.
Okay - the other database is in the works and is going sloooow (the one that is being created with normalization).
Meanwhile, my other database that has no normalization I am having a problem running a query (now I know why its so important to have good structure).
To give you an idea on how bad this is...:o .....
3 tables - 94 fields to each table - each table has identicle fields, just different data. :eek:
Anyways, I have students in each table (each table is an Annual Report). I want to be able to run a simple query and combine all the students into one.
How would I achieve this?
Thank you!
And for all who are thinking about designing a database - READ READ READ and do some more reading on normalization!!!
1) I am pretty newbie to this access programming, do forgive me if my questions sounds stupid.
2) Basically I create an application in access capturing or production information for my company. now the top management suddenly wanted whats their main concern:- Total Daily/Monthly, Quarterly, Annual Sales (By Model If possible)
3) I start with daily (Lets don't be too overly ambitious).
4) I try to let user select dates from my calender control and reflect daily sales (in Total & By Model break down) insert into my form.
5) Understand someone told me from my previous post in Calender control I can achieve it either through forms or queries, which is a better way. (in terms of flexibility to change for program maintenance/ scalibility) wise ?
I an trying to create a data entry form (IndividualsEntryFm) to input data for fields such as (First Name),(Birthdate) etc., these to be saved to the (IndividualsTbl)
I also have another table (NamesTbl) which has family names etc. The two tables are linked by a (MainID) field. I want a combo box on the individualsEntryFm so that I can select the family name. Then I wish the empty fields for the IndividualsTbl to be available to enter data.When I press the save button I then want this data saved, together with the MainID from the combo box to the IndividualsTbl.
I have set the IndividualsTbl with a (PersonID) field as an auto number each individual therefore has a unique PersonID but may well share the MainID. I'm trying to link many people to the same address.
i have a main form named(EMP) i have a subform named(SEMP)with EMPID i have an another form Named(SDetail) with EMPID i want to open form Sdetail with filter records for data select in subform (SEMP) ,EMPID field Subform SEMP in as datasheet view. i can open sdetail for selected records only
My aim is to have my forms open to a new record, which I have done, but if my users need to then update or edit data in previous entries, they can click a button that allows this.
My thoughts were to add a button, then put in code so that the necessary properties changed the form from displaying a new record or records entered since opening it, to showing all records in the associated table....
As an example there is a table for purchase orders. When clicking on this from the main menu form, it opens up the purchase order form to create a brand new PO. At times though, we will need to revisit an order to attach a copy of an invoice, or update the cost of whatever was purchased.