2011-02-08

Synopse PDF Engine 1.12

Our SynPdf unit has been refreshed to the 1.12 version.

The main enhancements are:

  • Can now generate PDF/A-1 files;
  • Direct methods for creating bookmarks, links and document outline;
  • Document information can now be Unicode encoded;
  • The bitmaps can be cached and reused  if drawn multiple times;
  • Some corrected issues.

Continue reading

2011-02-07

SQLite3 Framework updated to 1.12 - including engine 3.7.5

The Synopse SQLite3 Database Framework was just released under version 1.12:

  • internal SQLite3 database engine was updated to version 3.7.5, and SQL functions have been enhanced;
  • now handle prepared SQL statements with a neutral automated syntax;
  • with Delphi 2009/2010/XE, you can define directly Unicode string properties in TSQLRecord (will be stored as UTF-8);
  • include some overloaded methods using Variants for direct property access (e.g. in any grid);
  • SynPdf has now direct bookmarks and links methods, can reuse any existing bitmap, and generate PDF/A-1 files;
  • internal reporting now supports bookmarks and links (with on screen navigation), and better integrates with SynPdf;
  • a lot of bug fixes, new methods and enhancements.

Continue reading

2011-02-03

TIOBE : Pascal in TOP TEN language

The 2011 TIOBE Index is a gauge that has long tracked the rise and fall of programming languages. First developed during the mid-1990s, the index relies on various data sources to gauge the popularity of languages; that is, the extent to which they're used (but not how much they're liked).

The problem is that it split Delphi and Pascal into two diverse categories. Without this distinction, we would be in the top ten!

Continue reading

2011-01-29

record and object issue in Delphi 2010

In a previous post, I explained why I still like to use, in some special cases, record or object where using a class doesn't perfectly fit my needs.

I just discovered a non reproducing bug in Delphi 2010, about objects: sometimes, reference-counted objects were not initialized!

Continue reading

2011-01-22

Synopse Big Table 1.12a

Synopse Big Table is an open source Delphi unit for very fast data storage and access, using key/values pairs, or records organized with fields.

With this 1.12a version, the unit has evolved into a true field-oriented database, with two new classes:
TSynBigTableRecord to store an unlimited number of records with fields;
TSynBigTableMetaData to store any data (pictures, HTML, text) associated with metadata fields.

Both classes handle variable-length storage of integers, floats, currency, text (Unicode or not) with a field name. On-the-fly field adding, integrated indexing and search capabilities.
Data access can be either fast direct access, or via late-binding (i.e. use Record.Field in your Delphi code).

Classic Key/Value storage is always possible via TSynBigTable or TSynBigTableString, but is now faster and safer. A few issues were corrected.

Update: version 1.12b has been published (same download link).
Some issues have been fixed about packing and the two new classes types.

Continue reading

2010-12-21

Synopse Big Table 1.12

Synopse Big Table is an open source Delphi unit for very fast data storage and access, using key/values pairs.
If you just need to save raw data on disk, and retrieve it with an unique ID number or string, this unit could fit your needs.
The unit has been deeply rewritten for the new version 1.12.

Main enhancements are great speed improving, less disk space use, new dedicated methods (and direct update of any record content).

Continue reading

2010-12-18

SQL parameters can now be prepared "on the fly"

Up to now, most SQL statements were parsed, then prepared before execution.
Only individual TSQLRecord content retrieval was using prepared statements.

For the upcoming version 1.12 of the framework, we added an internal SQL statement cache in the database access.
That is, if a previous SQL statement is run with some parameters, a prepared version, available in cache, is used, and new parameters are bounded to it before the execution by SQLite3.

In some cases, it can speed the SQLite3 process a lot.

Continue reading

2010-12-17

Don't weep, take a breath, and maintain

In a message posted in the EMB forum, Anthony wrote that he "inherited this stuff"... Maintaining a Delphi application pays the bills, but... is sometimes frustrating.

Here are some advices or experiment sharing.

Continue reading

- page 43 of 52 -