I have another Microsoft Access question:
I am building a contact database, and some of these contacts have relationships with each other. For example, two contacts in the database might be brother and sister, and I will have marked their relationship within the database accordingly. I can generate a report with SQL that will give me the information that I want (i.e. who is related to what person). However, the problem is not the information itself, but how I would like to display said information.
Instead of a list format detailing every contact somehow related to the person in question. I would like to graphically represent a web of people. So if John Doe is the brother of Scott Doe and a sister of Jane Doe, then the Access report would have John Doe's name in the middle and then two lines coming out of the name pointing to Scott Doe and Jane Doe.
I am not even sure if this graphical representation is possible in Access, which is why I'm curious to know if anyone has ever attempted this before or if it is even possible. And then, how would one go about setting that up programmatically?
I realize that this is a fairly open-ended question, but any help would be much appreciated. For the record, I am proficient in VBA.
You could consider introducing a treeview control. And since you don't know how many levels, then in our industry, we typically use what is called recursion.
There is an example here of code to fill the treeview:
http://support.microsoft.com/kb/209891
Related
I'm creating an Access application that improves the workflow of our book fair at our school. One of the features is the locker management since that's a part of the school bill.
I have made a dropdown menu with all the lockers and restricted it. I placed an index on it and disallowed duplicates.
Now, is it possible to hide the already chosen options? For example, if locker A001 has been chosen, that when you go to the next student, you are unable to even SEE the locker A001, because it has been selected already? Or alternativally, that the name of the student that already chose that locker is shown.
EDIT: Yes, I could ask the sql code but I would also love to know how to implement this in Access.
Thanks in advance
Please excuse me if this isn't the traditional format of how questions are asked or if it is too broad.
I am currently looking for suggestions on how to design and build a customer database with some very simple fields. I work in the sales department for a company that retails after-market truck accessories both online and over the phone. I have some basic programming skills and a little technical ability, the goal of this project is to create a method of targeting sales leads we would like to follow up with.
We will be collecting information from the salesman individually, I imagined creating a web portal that allowed them to answer the following questions:
Customer Email?
How did they find us?
The website they called in on.
Year of the Vehicle?
Make of the Vehicle?
Was the initial investment < $750.00?
Date of purchase?
I would like to query and target customers based on those questions I have listed above.
Any suggestions or insight would be very much appreciated.
-Luke
You have to face a three-stage process:
First Step: Collect all the information you need to include in your database. You can collect this information from people or documents.
Second Phase: Develops a relational database model that allows you to manage the information according to the first 3 formalization rules. If the database is used by external users, you should designs queries and forms to facilitate their work.
Third Phase: Make your own database. If you do not have a software yet, look for one that supports the relational model. Have you already tried MS access?
I want to build a small Access database to better keep track of the companies we are looking at. I read Access 2010 Inside Out by Conrad/Viescas, did a lot of their examples and had the feeling I understood the basics, so I started with my own data base. Now the struggle begins, I think I have a basic misunderstanding here.
The relation I started with is quite simple: Each company we look at can have listed peers that we want to use to compare this company to. Of course, each company can have many peers and each peer can be the peer of many of our companies. So I modelled this relation as a many-to-many relationship:
Next, I created the form for a company, which looked something like this:
I related the subform I used to show the peers with a query that is based on tblPeersCompanies_1 and gives some additional information. What I now want from a user perspective is straightforward: A user should simply add peers to this subform for the company he is currently viewing. Access should then automatically update tblPeersCompanies_1 and tblPeers_1. The peers really serve no other purpose than to relate them to a company.
However, I struggle implementing this. Adding a new peer to the subform does not work, simply because it is not based on tblPeers_1 and if I enter the information there, Access notices that the peer is not in that table yet. (That is at least what I think the problem is). How can this be achieved though? I don't want the user to open another form, enter the peer first, go back to this form, type the peer again and the other related information. I hope that there must a simple way to do that automatically. Or is this indeed not so simple.
In summary, the question probably can be phrased as: "How to add records to a matching table and a related one-table on the fly in a form?"
Thanks to the great comment by #Remou, I found a solution to this problem. It contais three steps:
Use a combo box as outlined in another SO post
Use this function to automatically enter new records in case the peer is missing. Call this function in the "On Not in List" event
Show other values from tblPeers by linking it to the selected value in the combo box, as explained here
I have to say, this is much harder than I hoped it to be. Let's hope that the learning curve is steep and that it will at least be easy to use for the user and quite robust.
I need to know how to insert data into table. For example (Table - students info) :
No | Student Name | Address | Phone Number
1. | Add | |
Add - is a hyperlink. The user need to click Add(hyperlink) to add student. After the user click Add, then this page will be display :
Student : <textbox>
Address : <textbox>
Phone Number : <dropdownlist> <textbox>
Submit<submit button>
Then, the user will click Submit button and the data that the user enter will be display in the table. Like this :
No | Student Name | Address | Phone Number
1. | Patrick | Malaysia| 013366666
2. | Add | |
I'm using Microsoft FrontPage 2003. Thank You.
it sounds to me like you are wanting to perform 3 functions. 1.) functionality to add to the list. (the add link.) 2.) to build a form to input the data for the list. 3.) to print the list out. (or echo the list in a table).
You mentioned that your using frontpage, however some more information would be great in order to better assist you. For example, what server technologies do you have available? (php, database type?, cgi, asp, etc.) or is your add functionality going to add the data to a flat file? (.txt, etc.) usually only used for storing the data locally. If you are unsure which server technologies you have available (if any), you can ask your web server administrator, isp, or web hosting provider.
I know I should avoid statements based on opinion.. However, probably the best way to get a very good output would be to use php and a database server to conduct all of this. I say this because, if you use a database server as opposed to a flat file, you can "echo" the data with some organization, instead of the organization just being what student information was entered first. With the database technology, you could organize it with the country they are from, or by the first or last name, etc. Making it so that if the list gets really long you aren't hunting for the students information you are looking for, or needing to use the find functionality in your browser or other program you might use with this. just a little insight to help you avoid future headaches. :)
Ok so if you can give use some of that information, it might help us help you a lot easier!
oh, and here is a link about what Microsoft has to say about collecting and storing form data entered by site users: http://office.microsoft.com/en-us/frontpage-help/collect-and-store-form-data-entered-by-site-visitors-HP005261723.aspx
Hope you find this helpful, or at least somewhat informative. Sorry I couldn't help you further without knowing more information about what server technologies you have available. However, if you get that information to us I am sure that we can assist you a lot "better".
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 9 years ago.
Improve this question
I haven't had to interact w/MSSQL much in my development career, though I've spent many an hour working with MySQL.
An M.B.A. friend of mine is starting a job where she needs to gain functional knowledge of MSSQL Server, and I'd really like to help.
What are the differences between MSSQL and MySQL?
How would you recommend a non-technical person go about learning the ups and downs of MSSQL Server?
[update] Previous database design skills are naught. I've given her to short and long on what a database does from a high-level.
I'd love to say, "you can't". But that would be untrue (or at least mean).
If she has any background with database design at all, then this is merely a new RDBMS.
If she's never done database design, the place to start is not so much with MS SQL, but with how databases work, in my opinion.
Database Design for Mere Mortals is a good place to start. From there I'd move to an MS SQL -specific book, such as Microsoft SQL Server Unleashed.
Download the free SQL Express and start using it. Microsoft also has several video tutorials that would be helpful. They start pretty much from the beginning with "What is a database" and move to more advanced topics.
From the perspective of the database user, the backend is generally irrelevant if they understand some basic concepts.
First and most important concept for the non-technical user is GIGO (Garbage in Garbage out). Bad data is useless data. Check everything you enter into a database for correctness. You really don't want the customer's product to be mailed to San Diego, VA instead of CA.
Then next most important thing is to really understand your user interface and how it works. I've spent a lot of time fixing up junk because users didn't know what they were supposed to put in fields in databases (it would have helped if the developers had not allowed non-email type data to be entered into the email field, but you can't send an email to 757-111-6789). It is never a good idea to put the wrong kind of data into a field because you don't have another place to put it. As a user, you may have no idea what the database is going to use that data for and wrong data can completely stop a process or break something really important. If you don't know what to put in a field, then ask. Don't put junk into a field just because it is required. (Hint, it is required for a reason, that usually means this is data critical to the operation of the database, do not fake this information.)
Now if this person is doing reporting, then the critical concepts become understanding boolean algebra and a very strong undertanding of joins. If you have these two concepts down pat, you have 80-90% of what you need to query a database.
The specifics of the database supported also become important. You need to understand what is stored in what tables (or what views to use) and how they relate to each other. Coming into a new job, I would sit down with the developers if possible and get an overview of the design and whatI would need to know to get the data. I would review existing report queries to see how the data is currently being retrieved and use that to ask questions if I don't understand what the person did. Even a database expert will need to spend some time doing this when faced with a new database, so there is no reason to be shy in asking these questions when you are new.
Final thing is to learn how to report a problem to the developers. Problems that are not reported don't get fixed! Problems that are not reproducable because the user didn't provide screen shots and a context for what she was doing when the error occurred, don't get fixed either. New data fields that are needed as business requirements change, don't get added to the database until the developers know about them (Please ask for a Notes field if you need it instead of entering junk data into a field like email that you personally are not using for instance). New business requirements often require a lot of work in the backend to change how things work, it isn't as simple as adding a field on a form. Please be aware of that too when you make requests.
I learned from Robert Vieira's Professional SQL Server 2000 Programming -- well written and comprehensive. I am pretty sure the 2005 version is very similar, just updated. Despite the 'professional' label, I found it a great intro (I had practically no database experience at the time).
Also I second Erikk's comment. Download SQL Express and PLAY!