Menu

GettingStarted Log in to Edit

Leslie Kaye

Getting Started

Create your first Project

So you unpacked the source code or downloaded it from SVN to your new C:\LKAccounts folder

You installed the required third party components into Delphi.

In this description we will assume that your new project is an accounts system for the "ACME Tool Manufacturing Company" and the project is therefore named "ACMEAccounts".
To create this project, we re-badge one of the Zoom templates to "ACME".

  • From Delphi, File | Open project group C:\LKAccounts\Tools\RebadgeTool\ReBadgeProjectGroup.groupproj
    (If your Delphi does not support this you can open the file in Wordpad and work out what you have to do)

  • Right-click the project group in the project Manager and select "Compile all"

  • On success you can right click LKUtilities and select "Install"

  • Activate (Double-click) the ReBadgeTool and Run it.

  • Follow the instructions to create your own accounts project from one of the "Zoom" sample projects

  • Your "ACMEAccounts" project is now in C:\LKAccounts\Projects\ACMEAccounts\. Off you go!

Go here for a detailed component reference.

If accounts systems are something of a black box to you or you want further background reading on how it works you should read the User's Wiki

Do not alter the LK component packages or the Zoom templates!!

The next time you download an update your changes will be overwritten.
If you need to make changes to the Zoom open-source code you should submit a SVN patch via the Bug Tracker (see uploading patches)

Zoom design-time project

Design concepts and principal components

Enterprise records systems, particularly accounts systems are large and complex. Design simplifications will help the developer to understand and maintain the code. The design of Zoom Accounts is highly object orientated, giving the user consistent behaviour and appearance throughout the software and keeping code to a minimum.

A records system is made ip of many sets of master/detail data relationships.
A customer's ledger account contains the customer name and address as the master record and a list of invoice and payment transactions as the detail. An invoice has the list of items purchased as its detail, a diary has its list of dates.
The key component of Zoom Accounts is the TLKDataComponent which encapsulates a master and a detail dataset together with all you might want to do to it including viewing, editing the data, printing, import, export and navigating within the data records or to records held in other related LKDataComponents.

Lists of LKDataComponents are maintained in logical groups and sub-groups using the LKGroup component.
A LKHub connects the LKGroups to a database and provides application wide functions. Normally there will be one LKHub in an application however there should be more than one if multiple databases are used.

TLKContainedRecords is a TLKDataComponent descendent. It provides a means of holding data records within a Hub, Group or Data Component. This provides a design simplification so that for instance a Nominal ledger will contain its Management Accounts, Budgets and other content as subcomponents thereby providing a lot of functionality within a small footprint on your application datamodule.

An accounts system is a set of:

  • Documents and Record datasets holding details of invoices, payments, stock movements and other "paper" inputs.
  • Daybooks which provide the processing mechanism for writing transaction information about the Documents and Records to the Ledgers.
  • Ledgers which store read-only lists of transactions in some logical order.

Zoom Accounts provides the possibility to add extensions to your applications. These can be swiftly prototyped by dropping in basic Ledger, Daybook and Records components, then hard coded as the final specification is agreed with users.

Extending the existing features


Zoom design-time DataModule

Adding fields to data tables

Events and changing behaviour

Adding buttons and Actions

Adding reports

Adding CRM and business process systems


Discussion

Anonymous
Anonymous

Add attachments
Cancel