Conceptual overview

This is a quick summary of some concepts and terminology that Apsona uses.

An application is a collection of related tables. For example, a lead management application might contain a lead table listing the leads being tracked, and an activity table showing the activities carried out.

A table is a list of records, each of which is a collection of fields that contain values. For instance, a lead table might contain records with fields Full name, Phone number, Contacted date and Product interest.

Each field is identified by a field name is of a particular field type. All records in a table are required to have the same set of field names and types. Every field of a table has a distinct name.

A field type specifies the type of value stored in a field. Here are the field types currently supported by apsona.

Type nameDescriptionExample
CurrencyA number, possibly with a fraction part treated, as money $3,503.07
DateA date item consisting of year, month and date 5/13/2008
Date & timeAn instant in time, consisting of year, month, date, hour, minute and second 5/14/2007 12:15 pm
DurationA duration of time, in hours, minutes and seconds 2h 3m 15s or 2:03:15
Email address student@university.edu
Fractional numberA number with a fraction part 15.733
Phone number
PicklistA value chosen from a predetermined list of possible choicesOne of Mon, Tue, Wed, Thu, Fri
ReferenceA reference to another tableDiscussed below
StringA short string of up to 500 characters, shown in one line. "apsona"
TextA long string of up to 16,000 characters, shown in multiple lines.
Time of dayA time of day: hour, minute and second9:30 am or 15:25:33
URL for imageA URL that refers to an image, shown in the browser as the image
Web URL A URL that is shown in the browser as a link that opens in a new window
Whole numberA number with no fraction part
Yes/NoA value that is either "yes" or "no"
Zip codeA valid US zip code, either 5-digit or 9-digit02182 or 87324-3535

Each Apsona table has a special record uid field that contains a unique identifier. The value in this field uniquely identifies the record. The Apsona server generates this value as a globally-unique identifier, so that no two records ever created in the system will have the same record uid value. This uniqueness makes it easy to synchronize Apsona data with other data stores. (Note, though, that it is not necessary for the record uid to be generated only from within Apsona. Apsona can use any record UID structure, e.g., the record UIDs generated by salesforce.com, Outlook or ACT systems.)

Each Apsona table has a specially identified display field, which is the "primary" field at the user level. For example, the "Full name" field might be the primary field of a "Contact" table, and the "Subject" field might be that of an "Activity" table. The application designer can specify any field of the table as its display field.

Apsona also provides each table with four built-in fields for maintaining audit trails. These fields track the created and modified times of each record as well as the creator and modifier.

A reference field is one that enables the records of one table to refer to those in another table. For example, we might have a reference field "For whom" in an "Activity" table that refers to the "Lead" table, so that for each activity record, we can identify the lead for whom the activity was intended. Within the reference field of a referring record (e.g., activity), Apsona stores the record uid of the referred-to record (e.g., contact), but the value displayed in a reference field is the value of the display field of the referred-to record; in the above example, when displaying an activity, the "For whom" field shows the "Full name" of the corresponding lead.

A view is a display of some the records and fields of one table in a particular layout. Currently, Apsona supports three types of views: full view, tabular view and calendar view. Over time, we will offer more types of views.

A filter is a condition imposed on the data records being shown in a view. For example, you might filter the records to show only those with "State" field matching California. Note that the ideas of filter and view are complementary. You can apply a filter in any of the supported views: You might want just your California records, but shown in calendar view or in tabular view as appropriate. The key distinction is that the view specifies what fields to show and how to lay them out in the display, while the filter specifies what records to show in the view.

A report is a list of records whose fields are collected from multiple related tables, possibly with calculated functions. As a simple example, in a lead management application, you might create a lead activity report with three fields: The name and email address of the contact, from the lead table, and the most recent activity record for that contact, from the activity table. Apsona enables you to display and visualize the report's records in different ways, e.g, as a table, in a calendar or as a chart.