Advanced Review Questions Flashcards
It is possible, in theory, to implement a many-to-many relationship between tables A and B by using multivalued attributes in each table. What important design problem in many-to-many relationships cannot be solved using this technique?
Often it will be necessary to store additional attributes as part of the relationship between the two entities.
i.e., In the many-to-many relationship between Actor and Movie, it would be desirable to store a character’s name for a specific movie. Resolving the relationship using multivalued attributes would leave no place to store such information.
Describe how an object behaves when it has multiple conditional formatting options.
FileMaker Pro will apply the formatting options for all of the true conditions specified. If multiple true conditions are specified with conflicting formatting (such as two conditions that specify different background colors), FileMaker Pro applies only the formatting associated with the last true condition.
What are some of the possible pitfalls of executing a script step in an incorrect context?
The action might be performed against the wrong table, which could lead to records being added to or deleted from a different table than you intended or to actions being performed against an incorrect found set of records.
How might you use FileMaker Server’s ability to trigger an operating-system script?
You might use it to trigger a script with a specific user account that can perform more fine-grained backups than the FileMaker Server tools allow or that copied backed-up files to a remote volume (privileges permitting).
What are three capabilities available via the FileMaker Pro client that are not available via FileMaker WebDirect?
The FileMaker Pro client has the following capabilities that do not translate to FileMaker WebDirect:
- Show multiple open windows at once
- Perform scripted interactions with the user’s file system
- Preview mode
- Custom menus
What is an entity, in database terms?
An entity is a type or class of thing that has a distinct existence—something that one wishes to track in a consistent fashion. Entities can exist at various level of abstraction. Examples of entities could be such things as Invoice, Customer, Animal, Inspection, Horse, Contact, Product, and the like.
How can you tell that you have reached the correct list of entities and attributes for a database?
There is no truly “correct” list of entities and attributes for any database problem. The quality of the list is determined by how well it supports the necessary functions of the system being designed.
Describe a technique for implementing a many-to-many relationship between two tables, A and B, that overcomes the limitations of trying to use multivalued attributes.
Use a third table (“join table” or “join entity”) that contains a foreign key for each of tables A and B and has a many-to-one relationship with table A and table B.
Number fields can store text characters. TRUE or FALSE
TRUE
What are the four object states for which you can specify appearance attributes?
The four object states are:
- Normal State
- Hover
- In Focus
- Pressed
What are some limitations of the ODBC Import feature compared to ESS
- ODBC Import cannot make any changes to data in the original ODBC data source
- ODBC Import must use a DSN on each individual FileMaker Pro desktop, and it cannot use a single DSN on a central hosting machine, as ESS may do.
What are the three most important factors in determining how a container field behaves?
- How the field’s storage options are defined
- How it is optimized on the layout
- How the user inserts data into the container field.
What formula would you use to find the number of characters in the first word of a string?
Length ( LeftWords ( text ; 1 ) )
How does FileMaker Pro store date, time, and timestamp data?
- Dates are stored as the number of days since 1/1/0001
- Time is stored as the number of seconds since midnight
- Timestamps as the number of seconds since midnight on 1/1/0001
What are the drag options available in the Field Picker for Field Placement and Label Position?
- Fields can be positioned side-by-side or in a stack
- Field labels can be placed above or to the left of each field.
What are some advantages of the ODBC Import capability in FileMaker Pro compared to the External SQL Sources (ESS) feature?
- ODBC Import can be used to draw data from any of dozens of ODBC-compatible data sources; ESS currently only supports three major data sources.
- It is possible to extract data using a handcrafted SQL query using ODBC Import, which is not possible with ESS.
Describe the difference between static and a dynamic value lists.
-
Static value list - choices are hard-coded into the value list itself.
- i.e., a Status value list might have Active and Inactive as its two choices.
- Dynamic value list - choices are generated from data in a table. The choices can change dynamically as records are added or removed from the table.
What are some common reasons for choosing bar, line, area, pie, or scatter as a chart type?
- Pie chart - to show comparisons of parts to a whole
- Bar chart - to show comparisons among a set of elements
- Line and area charts - to show data trends over time
- Scatter charts - to show the correlations between two data series
What do you have to do to create a ranking subsummary report?
You have to select the Reorder based on summary field option in the sort records dialog and select a summary field to reorder by.
Why is it important to give users an easy way to log out of a FileMaker WebDirect solution?
As a long as a user is not logged out of a FileMaker WebDirect solution, that user is consuming a licensed connection. If the user is idle, eventually the session timeout will trigger and log them out automatically, but the sooner an idle user gives up their connection, the sooner that connection is free for another client to use.
What is a self-relationship? Give an example.
The term “self-relationship” denotes a scenario in which a table is related to itself. A typical example is an organizational chart, in which each employee record relates to another employee record denoting that employee’s direct manager.
What is a foreign key, and how is it different from a primary key?
A field that holds the value of a primary key from another table (a “foreign” table). Unlike a primary key, it need not be unique and may in some circumstances be empty. It is used to indicate a relationship between rows in one table and those in another.
What are the ramifications of using the Set Error Capture [On] script step?
Turning error capture on makes it necessary to trap for, handle, and report error conditions that otherwise would automatically be handled and reported by FileMaker Pro.
What benefits does FileMaker Server confer when deploying databases?
- Supports FileMaker WebDirect and FileMaker Go clients
- Supports large numbers of FileMakerPro clients
- Backs up solutions on a schedule
- Uses external directories for user authentication
- Added SSL security for data transfer
- Remote ODBC/JDBC support
- PHP and XML support.
Describe the various ways that scripts can be activated.
- By defining a layout object as a button that runs a script
- From the Scripts menu if it has been set to display there (or any other menu through the use of custom menu sets)
- Scripts assigned to certain menu items may be triggered using a keyboard shortcut
- As a subscript of another script
- By some layout, object, or file trigger, such as entering a layout, entering a field, or opening a file; and FileMaker Server can also schedule execution of scripts.
How much data can a text field store?
A text field can hold about 2GB of data ( a billion characters )
What are some important characteristics of a primary key?
A primary key should be:
- unique
- non-empty
- It should not be possible to change the value of a primary key.
Besides FileMaker Server, what other software is necessary to depoloy FileMaker solutions to the web?
FileMaker Server must be installed in conjunction with a supported web server (Apache on OS X, Internet Information Server on Windows).
In what folders can FileMaker Server backups be created?
FileMaker Server backs up databases to folders on one or more local volumes (connected hard drives or SANs). These files should be backed up to other volumes and integrated into an overall backup strategy.
How do you instruct the Insert from URL script step to use an HTTP POST request vs. an HTTP GET request?
- HTTP GET url starts with either HTTP or HTTPS.
- HTTP POST url starts with HTTPPOST or HTTPSPOST
How does FileMaker read a date internally?
As an integer (whole number) representing the number of days elapsed from 1/1/0001 up to the specified date.
What are some of the pros and cons of indexing?
Pros: Indexing dramatically speeds up searches, and is used by relationships, value lists, and the auto-complete functionality.
Cons: Indexing increases file size and may impact performance of operations that require index maintenance, such as importing or deleting large sets of records.
What formula would you use to determine the date exactly one week from today?
Get ( CurrentDate ) + 7
How many concurrent FileMaker WebDirect connections are supported by FileMaker Server?
The number of concurrent FileMaker WebDirect and/or FileMaker Go connections is governed by the number of purchased connection licenses, plus the one connection license that comes with FileMaker Server.
What is a break field?
When you create a subsummary part, the field by which you choose to group records is called the break field.
Whenever the value of the break field changes, the report “breaks” and FileMaker Pro starts a new subsummary group.
When should you consider creating a crosstab report?
Create a crosstab report when data needs to be summarized by two categorical variables, but usig a report with multiple subsummary parts would make the data difficult to analyze.
Rewrite the following formula using a Let() function to avoid the need for nesting functions within one another:
GetValue ( Colors ; ValueCount ( LeftValues ( Colors ; Counter )) - 1 )
Let ([
x = LeftValues (Colors ; Counter); vCount = ValueCount(x)
];
GetValue(Colors ; vCount-1)
)
How many digits of precision do number fields hold?
A number field can hold up to 800 digits of numeric precision, 400 to either side of the decimal point.
The default precision for a number field is 16 decimal places.
Under what circumstances would Int ( x ), Floor( x ), and Truncate( x ; 0 ) not return the same result?
For any positive number x, all three functions will return the same result. However, if x is a negative number, Floor( x ) is different than Int( x ) and Truncate( x ; 0 )
What is external authentication?
External authentication allows FileMaker Pro to interact with a networked authentication server (Active Directory or Open Directory) or with accounts and groups defined on the server itself to test the credentials of users attempting to log into a database. Rather than authenticate against individual accounts stored in a database, FileMaker Server (which is required for external authentication) passes the user’s credentials to the authentication server, which in turn passes back a list of the groups to which the user belongs. You control what level of access members of various groups have (if any) by setting up an account for each group.
What are the differences between summary fields and aggregate functions
- Summary fields aggregate data from a subgroup of the current found set
- Aggregate functions are used to aggregate data from sets of related records.
What effect does enabling the fmreauthenticate10 extended priveleges have?
If a user’s privilege set has the fmreauthenticate10 extended privilege enabled, then the user can put FileMaker Go in the background for up to 10 minutes without having to re-authenticate. After 10 minutes, the user will be prompted to re-enter their username and password.
What forms of database security are controlled from FileMaker Server?
FileMaker Server can control the following forms of database security:
- Use of external directory service for authentication
- Restrict IP addresses that may access the Admin Console
- Use external groups to control access to the Admin Console
- List only the databases each user is allowed to access
- Require secure (SSL) connections for clients
In what ways can a FileMaker Pro developer alter the structure of a shadow table?
- Add “supplemental fields” to a shadow table, though these fields must be either unstored calculations or summary fields.
- Add additional validation criteria to individual shadow fields, though it is not possible to alter any validation criteria already present on the field.
- Select Date, Time, or Timestamp as the FileMaker field type for DATETIME and SMALLDATETIME SQL fields, even though the FileMaker type defaults to Timestamp.
How is time read internally by FileMaker Pro
As an integer representing a duration of seconds from midnight.
i.e. 10 a.m. is seen internally as “36000”
What anchors need to be set in order to make an object stretch vertically when a window is resized?
Setting both the top and bottom anchors will cause an object to stretch vertically when the window is resized.
How many data series can be charted using a pie chart?
A pie chart must contain one data series and one label series. Additional data series will be ignored.
Why are script parameters useful?
They allow you to write scripts that avoid hard-coding specific values. These values can then be passed into the script from the outside, allowing the same script to be used in many different circumstances.
What script steps may be used in FileMaker Pro scripts that are run by FileMaker Server? Give three examples of incompatibile script steps.
Only Server-compatible script steps may be run from FileMaker Server. Three examples of incompatible script steps are:
- Export Field Contents
- Save Records as PDF
What are the three ways to specify the data series for a chart?
The three ways to specify data for a report are
- Using the current found set
- Using delimited data from the current record
- Using data from a related field.
How can you prevent someone from creating an external file reference to a database solution?
Use the File Access settings within the Manage Security dialog to prohibit external file references from being created into your solution.
What are some limitations of shadow tables and fields in FileMaker Pro?
Any native FileMaker Pro features that work with table indexes will not work correctly with shadow fields and tables, except for relationships and value lists. This includes features such as field auto completion, and the Insert from Index command. In addition, styled text and binary data (such as container field data) are not supported in ESS.
Describe what it means for a field to be set to Use global storage.
A field that has been defined to use global storage holds one value per file rather than one value per record. Globally stored values are specific to a single user’s session and are not shared between users.
When would you choose to use a window style of Dialog Window (Modal)?
When you want to strictly control a user’s interaction with the window, to prevent them from navigating away from the dialog before completing the interaction.