I have been asked by the chairman of Squaresoftã to create a website to expand on their famous Final Fantasyä theme, but with a twist.
Task Description
I have been asked by the chairman of Squaresoft? to create a website to expand on their famous Final Fantasy? theme, but with a twist. They feel that they need knew ideas, and they want to give the world what they want. So this website is devoted to the creation of games. It will give tutorials on games creation, a place to upload user's games, and a gaming survey. If Squaresoft? like something a user has made, the copyright will be officially bought from the rightful owner, and ideas will be extracted and put in the latest Final Fantasy? games.
It has also come to my attention, that Squaresoft? have five clubs across England that is not able to share data between them. Their situations are as follows:
The fact that only three of the five clubs use modern computer databases for handling their member's data prevents information from being properly, efficiently and conveniently synchronized, updated, edited and stored. In the last year over two thousand members have complained about the bad management, and found that although they may be a member at one club, if they go to another club they are not recognized as a registered member and must reregister, and over 1,500 have recently left for similar reasons. This causes big problems for Squaresoft? to overcome. So I have been asked to help.
Analysis
The following five clubs use old-fashioned ledger driven management.
. Final Fantasy Project (Maidenhead)
* Old fashioned ledger driven management, 2529 members
2. Final Fantasy Extreme (Slough)
* Old fashioned ledger driven management, 1038 members
3. Ultimate Final Fantasy (Burnham)
* Old fashioned ledger driven management, 543 members
4. Final Fantastic (Beaconsfield)
* Old fashioned ledger driven management, 275 members
5. Final Fantasy City (London)
* Head club, old fashioned ledger driven management, 4593 members
Input from the members is gathered in the following stages:
Members are encouraged to play the demo games located around the area, and are visited at regular intervals by workers who give them a survey, which is written down into a handwritten file and stored. Later the file is sent to Final Fantasy City in London, and eventually sent to Squaresoft were the ideas are used in the latest games.
Another inefficiency is the users. The user's names and information are stored in a ledger, ...
This is a preview of the whole essay
* Head club, old fashioned ledger driven management, 4593 members
Input from the members is gathered in the following stages:
Members are encouraged to play the demo games located around the area, and are visited at regular intervals by workers who give them a survey, which is written down into a handwritten file and stored. Later the file is sent to Final Fantasy City in London, and eventually sent to Squaresoft were the ideas are used in the latest games.
Another inefficiency is the users. The user's names and information are stored in a ledger, and users who visit different clubs aren't recognised as a registered member and they have to sign up again. This is a frustration and will need to be updated.
Specification
Members will be encouraged to play the demo games located around the area and enter their user name and password to access them. At regular intervals, the game pauses and a survey comes up, when it is fully completed it is sent off and stored into a relational database, and they can continue playing. Since the server knows who is signed in, they never get the same survey twice. The relational database is set so that once ten survey entries have been stored, they are sent off to Squaresoft and stored in hard copy, and the relational database is reset.
When the server is set up, the users' usernames, passwords and information will be stored in a relational database and easily accessed from all clubs, so the users are registered to any club and can freely access all of them.
Tables
Clubs:
Datasheet View:
This is the datasheet view of my Clubs table. In this table, I listed my five clubs, along with their addresses and post codes.
Design View:
This is the design view of my Clubs table. This example shows how I set the ID to automatically increment for every row of information.
Customer:
Datasheet View:
This is the datasheet view of my Members table. This table lists all of my members and lists their addresses and phone numbers.
Design View:
This is the design view of my Members table. I wrote a description for each one.
Queries
Clubs Members Query:
Datasheet View:
This query is showing the relationships between the clubs and the members.
Design View:
This is the design view of the Clubs Members query; it also shows the relationships in a key field to foreign key link.
Clubs Members Query 2:
Datasheet View:
This is another query stating the relationship between the Clubs and the Members.
Design View:
This picture illustrates the one-to-many relationship that is commonly used in queries.
Customer Query:
Datasheet View:
This query shows the relationship between Clubs and Members. It states the members clubs, addresses postcodes and phone numbers, along with the clubs address owner phone number and address.
Design View:
This is the Design view of the Customer Query.
Forms:
Clubs:
Form View:
This is showing the Form view of the Clubs Form. It shows each clubs ID, affiliation, name, address, town, post code, contact number, activation date, the managers first and second name, the managers address, town post code contact number and employment date.
Design View:
The design view of my Clubs Form shows the layout and options I used to personalize its look.
After creating my Access relational database, I stumbled across a few errors. I used Microsoft Office XP Access Help file to consult these errors.
When opening my relational database I got the error:
"Invalid argument." To prevent this happening again, I used the following processes:
* In the regional settings of Microsoft Windows Control Panel, your location is set to a region that uses a character other than a period (.) as a decimal separator. The settings for properties in data access pages require that the decimal separator be a period for all languages. Either change the region or set the decimal symbol to a period in Windows Control Panel regional settings.
* The value you typed in the property sheet does not match the data type of the property. For example, the Width property of a section can be set to any number, but if you type a string such as Narrow, you will get the "Invalid argument" message.
Next I encountered this error while opening my Clubs table:
"Operation must use an updatable query." This error occurs when the current query's Update To row includes a field from either a crosstab query or select query in which an aggregate (total) was calculated for the field (using either the Totals row or a domain function in the Field row). To update a field using the aggregate of another field, calculate the aggregate in the update query itself, not a different query.
To prevent this happening again, I used the following processes:
* In query Design view for the current query, remove the field you added from the crosstab or select query (where an aggregate was calculated for the field).
* In the Update To cell of the field you want to update, enter a domain function that calculates the same aggregate as is calculated for that field in the select or crosstab query.
For example, if you had a calculated field named Sales So Far in your Products table, you could update it with the product of the Quantity and UnitPrice fields in the Order Details table by adding it to the design grid in the update query and then entering the following domain function in its Update to cell.
DSum("[Quantity] * [UnitPrice]", "Order Details", "[ProductID]=" & [ProductID])
I got this error when opening my Members table:
"The DefaultSort property is invalid." To prevent this from happening again, I used the following process:
* In the DefaultSort property box, type the name of the field or fields you want to sort on. Separate multiple field names with a comma. If you want to sort in ascending or descending order, you can follow each name with a space and the keyword ASC or DESC, respectively. For example, type OrderDate DESC, OrderID ASC. If you don't specify the order, Microsoft Access sorts in ascending order.
* If the control you want to sort on is bound to an expression, you must type the alias of the control as displayed in its ControlSource property. For example, if the ControlSource property of the control you want to sort on is set to GroupOfExtendedPrice: ExtendedPrice, type GroupOfExtendedPrice in the DefaultSort property box.
When accessing my Clubs Members query, I received the follow error:
"Query contains ambiguous outer joins." This is because I tried to execute an SQL statement that contains multiple joins. There are three types of joins in Microsoft Access: inner joins (also called equi-joins), left outer joins, and right outer joins. In some multiple joins, the results of the query can differ depending on the type of join and the order in which the joins are performed.
All in all, my Final Fantasy Relational Database has worked successfully. All of the Final Fantasy Clubs have accepted the new system, and everything is working in order. My next project will to be to create a website for each of the groups, but that will come later.
Communicating and Handling Data
Christian Augustine Page 12 of 28