CyberMatrix Corp. - appointment scheduling, meeting scheduling, time tracking, time recording, timesheet entry, resource scheduling, class scheduling, attendance management and time management software

  

 

Main

  » Home

  » Sitemap

 
 

Products

  » Meeting Manager

  » Pro Schedule

  » Project Clock

  » Employee Project Clock

  » Timesheets

  » Class Scheduler

  » In Out Scheduler

  » Point of Sale

  » Employee Scheduler
  » CyberMatrix Office

  » More...

 
 

Information

  » About us

  » Downloads

  » Purchase Products

  » News

  » Press Release

  » Testimonials

  » Jobs

  » Subscribe to News

 
 

Support

  » Common Questions

  » Contact

 
 

Tech Links

  » Delphi

  » Visual Basic

  » MS Access

  » UNIX

 

Optimal Delphi

This page is dedicated to helping Dephi programmers build fast/stable applications. It is intended for beginner to intermediate developers. 

Optimizing Delphi

TListBox, TComboBox

- Always surround the code to fill the listbox derived component with a ListBox.BeginUpdate and ListBox.EndUpdate. A speed hit comes from windows redrawing the listbox everytime you add a new item.

IniFiles

- Try to save to network as little as possible.

Optimizing DBISAM

TDBISAMTable

- Use ranges on tables instead of filters or SQL queries whenever possible, they are much faster.
- Make sure you have an index on each field involved in a filter.

FindKey
- For simple searches use findkey instead of a query whenever you have an index on the searched field(s), it's a lot faster.
- FindKey works best when using the primary index.
- Scalers (integer etc.) must use 0 not null for empty values.

TDBISAMQuery

- Set RequestLive to True.
- Make sure you have an index on each field involved in a join or in the WHERE clause of a query.
- Order SQL WHERE clauses so that the smallest tables come first.
- When a field has a case-insenstitive index you should use the SQL UPPER function with queries. eg. WHERE UPPER(Name)="ALLAN"

TDBISAMDataset

- Only do TDBISAMDataset.Refresh on views not updates. Before an update the dataset is automatically refreshed.
- Use FlushBuffers after a Post (not needed for transactions) to prevent table corruption.

 

Back | Top

Home | Products | News | Download | Order | Help | Pricing | Privacy | Contact Us

TPA Member

Copyright © 1998-2011 CyberMatrix Corporation, Inc.