Call us toll free
at (877) 988-1099
4Q Demos
To download a free, fully functioning copy of our software, please go
to our demos page.
We now have a series of short QuickTime® movies that demonstrate 4th
Quarter®. You can run these from your browser by visiting our Product
Tours page (or visit the non-flash version of the Tours page).
Documents
Database development is a remarkably complex area of computer technology requiring
a comprehensive knowledge of database programming, interface design,
business rules and software design. Every job we've done has required
extensive communication and education between us and our clients.
For the past ten years Braided Matrix has been working to make
the learning process easier by creating educational material.
Our more general material has appeared in Dimensions Magazine
and 4D Zine. 4th Quarter Developer Notes, that explain the detailed
workings of our products, are available to licensed users of
4th Quarter.
All of the documents here are pertinent to the 4Q Shell, 4th
Quarter Core, and the 4th Quarter Full application.
Click on a title to open the document using Adobe Acrobat.
To download a PDF version to your local machine click on the
link and hold down the mouse button. Select the "Save This
Link As..." option and save the file in the "source"
format. You will need the Adobe Acrobat PDF viewer to open or
print these documents. All documents are in PDF format unless
otherwise noted. Documents in html format are specially marked.
These documents range in size from 6 to 60 pages each. The
average file size is 40k. Files over 250k are noted.
Need to download an Acrobat
Reader?
|
Aberdeen Group: May 2001
Examines the cost of ownership of 4D, Inc. 4D version 6.7
embedded database versus industry average for embedded databases. |
This document examines the following products: MS Access, FileMaker Pro,
and 4th Dimension. It focuses on the ability of these three products to
meet the needs of a middle range of system requirements. |
4th
Dimension's Low Administrative
Requirements Many companies have chosen 4th Dimension (4D) for
its power, flexibility, and reliability. For most companies though, 4D’s
low administrative requirements are often the most important factor in
selecting 4D as their application server. |
Designing
Web Services The View from 60,000'
This overview is for developers interested in creating web services.
It discusses what web services are, why you
should be interested in them, and what risks you should be aware of.
|
4Q Investment Summary
An overview of the opportunity and growth plans for 4th Quarter in the business software marketplace. |
|
|
Tabular list of those features that make 4th Quarter unique, and how
these features benefit you. |
Itemized list of 4Q's current functions, arranged by topic. |
|
General description of 4th Quarter and where it fits in the universe
of accounting products. |
Description of the consulting, project management, programming, training,
and installation services that we provide to users of 4th Quarter. |
|
An overview of the extensive features in 4Q's optional new multi-currency
module. |
4Q offers a customizable interface for the import and export of relational
data. 4Q's system is built on configurable screens and generic code
to provide intelligent, monitored import. |
|
150 pages, 450 K
|
|
|
|
|
|
|
|
300 pages, 4.7 Mb |
4th Quarter Training Materials (password required) |
|
These notes accompany our training classes. We offer 3 levels of training:
- Level 100 for end users.
- Level 200 for administrators and installers.
- Level 300 for programmers and developers.
Classes are offered on an "as requested" basis.
Let us know if your interested in attending a class and we'll let you know when
the next class is scheduled.
4Q
Training - Level 100
(250 pages, 2 meg)
Core Accounting
Interface Overview
Control screens
Import/export
Maintenance screen
User preferences
Passwords
Chart of Accounts
General Transaction
Using Journals
4Q Installation & Setup
Cash Accounting
General Transaction
Templates
General Ledger
AR & AP
Financial Reports
Budgets
Full Business System
Inventory
Clients
Vendors
Invoices
Purchase Orders |
4Q
Training - Level 200
(376 pages, 2.5 meg)
Core Accounting
Introduction
Overview
Chart of Accounts
Transactions
Cash Accounting
Journal Reports
Transaction Templates
General Ledger
Accounts Receivable
Accounts Payable
Financial Report Editor
Budgeting
Multi-Currency
Full Business System
Inventory
Customers
Invoices
Vendors
Purchase Orders
DB Administration
Installation & Set Up
Administration Settings
Importing Data
Low-level Customization
High-level Customization |
User Issues
Core Accounting
Overview of User Areas
Chart of Accounts
Transactions, Ledgers & Journals
GL & Reporting
Journal Reports
Cash Journal
AR & AP Journals
Maintenance Screen
Developer Issues
Integrating Data & GUI
Combining Structures
Startup
Control Screens
Shutdown Integrating Accounting
Programmatic Chart of Accounts
Programmatic Account Creation
Programmatic Transactions
Code Management & Examples
Query, Report, & Custom Check Hooks
Customizing 4Q's Input/Output Forms
Method Patching
Debugging Tips
Version Control
Sample Systems |
4th Quarter Developer's Notes |
|
Database Design
|
General guidelines for organizing a programming project that involves
several programmers. |
A method for deriving a 4D file structure from a description of required
functions. |
|
How to improve the programming process by recognizing the common problems
that plague custom applications. Chapter 1 includes the following sections:
1.1-Introduction
1.2-Understanding the Problem
1.3-Understanding the Object
1.4-Adequate Specifications
1.5-Flexible Coding
1.6-Programmer Inexperience |
Focusing on the difference between 4D and SQL in their ability to search
the datafile. |
Database Programming
| Squeaky
Clean Black Box Methods with Soap Developers interested
in creating and publishing their own web services need to understand
the new middle-ware design requirements of a web services server. This
paper recommends certain designs for web services. |
|
|
A method for locating groups of records in one table with a group of
records in another table. This powerful technique incorporates both
the Joins and Projections in a single operation. |
Describes how to create a choice list that opens in a separate process
so that the list of choices appear in an independent (nonmodal) window.
|
|
An essential description of the various ways that record locking can
be accomplished across multiple tables. |
The basic concepts behind writing robust, maintainable code: careful
design and adherence to discipline. |
|
Describes how 4th Quarter uses subrecords for temporary storage of
information during data entry. This is an important alternative to the
use of arrays. |
This PDF document is a first attempt at providing standards for modular
coding in 4th Dimension. Modular programming is concept that's basic
to understanding and using 4th Quarter Accounting. |
|
Basic primer on implementing accounting functions in a database. |
Describes the basic concept of a generic table that stores all account
information. This is one of the essential components of 4th Quarter's
patented design. |
Accounting the OO and RDB Way
This presents the basic concepts behind the design of 4th Quarter and
explains why these concepts represent a milestone in the design of accounting
applications. |
Accounting Transactions
An in-depth discussion of the different ways accounting transactions
are handled in 4th Quarter. |
The following technical notes provide detailed explanations of the mechanisms
of 4th Quarter Accounting Solution. They cover topics pertinent to the 4Q
Shell, 4th Quarter Core, and the 4th Quarter Full application.
Each note is listed along with its table of contents.
Licensee's of 4th Quarter products are given passwords enabling them to
access these documents.
If you are interested in a particular document and are not currently a customer
of ours, then drop us a line and we will email you the document directly.
|
Describes all tables and fields in the Full version of 4Q.
#1.2 -
Data Dictionary (4Q Core)
Describes all tables and fields in the Core version of 4Q. |
What is Procedure Call Tracing?
When to use Call Tracing
How to use Call Tracing
How Call Tracing Works
Exceptions |
|
What are naming conventions?
When to use naming conventions
Naming conventions are used in 4th Quarter |
Presenting the Search Screen
Search Screen Form Method
Code to Perform the Search
Other Supporting Methods |
|
What are the List Management Screens?
Designer List Management
the Account and Transaction Lists Management Screens
the Data Transfer User Area - a Review
the Record Transfer Lists Screen
User List Management Screen and Storage Mechanism |
The Menu Bars
Menu Bar Library
Adding Menu Bars
Moving Menu Bars into 4th Quarter from Other Applications
Exception: Menu Bar #1
Recording Menu Bar Changes |
|
What is password protection?
How 4D Groups are assigned.
The Required Groups: Design, Administration, Restricted, Payable, Cash
Withdrawal.
How the Administrator manages password protection.
Example: potential users
How to add or modify password access.
Groups assigned to menu items.
Groups assigned to procedures. |
What is the Quit Loop?
Quitting Gracefully
Interprocess Messaging
Determining Which Processes to Message
How Processes Respond
Getting Messages
Handling Exceptions
the _SYQuitLoop Procedure |
|
What are Multiple Processes?
Performance and Multiple Processes
How Processes Use Memory
How 4th Quarter Handles Multiple Processes
Protected Processes
The Control Screen and the User/Runtime Process
4th Quarter's System Process Procedures
Procedures for User Area Processes
Interprocess Messaging
Menu Structure |
What is Output Screen Resizing?
When Output Screen Resizing is Used
How Output Screen Resizing Works
The .SYSetWindSize Procedure
How to Use Output Screen Resizing
|
|
Version Numbering
What is Version Control?
Using the Version Control Application
How to Update the Structure
Notes |
What are ID's and Counters?
When to Use ID's
The ID_Number File
Assigning ID's
The .SYIncrmntSeqNm Procedure
The Procedure_Lock File
Resetting Counters
Creating Your Own Counters |
|
4th Quarter Lists
List Dictionary |
What is Procedure Patching?
When to use Patching
How to use Patching
Combining Pre- and Post-Patching
Initializing the Pre- and Post-Patch Tables
Multi-programmer Patching
Summary |
|
What Are Transaction Types?
The Different Types of Input Layouts
List of Types
How Transaction Types Work
Using Existing Types and Defining New Ones
Where to Record Your Custom Types
Why Define Types?
Utilities |
What are 4D Insider Libraries?
Using Libraries for Code Management
Setting up 4D Insider
How to Use Libraries
How Libraries Work
Tips
Summary |
|
What are Invoice Transactions?
The Role of Invoice Transactions in Customization
Invoice Layout Procedure
The Invoice Entry Sequence
Summary |
Multiple Applications, Multiple Versions
Where Versions are Stored
Uses of Version Numbers
The "vers" Resource
Summary |
|
Accounting Transactions
Linking Transactions to Other Objects
Transaction and Account Updating
Creating Transactions Using Arrays
Creating Transaction Components Using Subrecords
Modifying Transactions
Deleting Transactions
Procedures List |
What are Default Accounts?
How Default Accounts are Used
When Default Accounts are Created
How to Modify Default Accounts
When to use Default Accounts
How Default Accounts Work
Summary
Appendix I: Creating Default GL Accounts
Appendix II: Common Used Default Accounts |
|
What are Inventory Accounts?
How Inventory Accounts are Used
Custom Inventory Accounts
Default Inventory Accounts and GL Accounts
Modifying Inventory Accounting |
Problems with Boolean Fields
Replacements and Extensions
Database Updating Procedure
Consequences of the Change
Testing Boolean Alternatives |
|
The Use of Accounts
General Ledger Accounts and Accounts
Creating Accounts
Updating Accounts
Deleting Accounts |
What are Messages?
When to use Local IP Messaging
When to use Global Semaphores
How to Use 4Q's Local Messaging
How to Use 4Q's Global Semaphores
Other Methods |
#25
- Merging Applications with 4Q
Introduction
Creating the Combined Code Base
Rearranging Tables
Joining Structures
Combining Code - Supporting Items
Combining Code - Methods & Variables
Combining Forms
Compiling
Other Code Elements |
#26-
Installing an Alternate Control Screen
Introduction
Integrating Control Screens
The 4Q Control Screen
4Q Hooks for Installing an Alternate Control Screen
Summary
Methods |
| #27
- System Module Methods
System Module
Methods by Function
Alphabetical List of Methods
|
#28
- Updating a 4Q Structure File
The problem of updating a 4Q structure file
When to update the structure
The new DB Field List function
The "4Q Structure Changes" document
Using BBEdit to find structure changes
Performing the update
Altering 4D Insider
Even 4Q Core users need to update 4Q Full tables
Summary
|
| #29
- Product Serialization
What is Serialization?
Serialization Supports Modules
Serialization in Source Code Versions
The Database User Table
Entering New Serial Numbers
|
#30
- Custom Checks
What Are Custom Checks?
Printing Custom Checks
Installing the SuperReport Plug-in
Creating a Custom Check in SuperReports
Required Variables
Admin Default Setting
Notes
|
| #31
- Custom Import / Export
4Q's Data Transfer System
Automatic I/O Functions
Adding to the I/O List
Setting Up a New I/O Structure
Using the New I/O Form
Importing Related Table Data
|
|
|
General description of the product that includes information on the
4Q certified developer program. |
Discusses benefits and requirements for certified 4Q developers. |
If you have questions about these documents or would like to know more about
using these documents please email
us directly.
Need to download an Acrobat
Reader?
|