Home | 10% - Off! | New | VCL | DB-Aware | Tools | DB Tools | Apps | Samples | .NET | .NET DB-Aware | .NET Tools | .NET Samples | Kylix | Docs | Bold | Discussion | Sites | Tips | DPFL | Authors | Uploads | RSS | Store | Advertisement | About
What's New

Last 7 days
  DB Tools
  Updates, docs, patches


What's New > DB-Aware Components > Last 7 days  

Companies News:

FastCube VCL 2 released
FastCube VCL 2 released

Desktop OLAP components set which supports Delphi/C++Builder/RAD Studio from version 7 up to XE6

    I. Revolutionary improvements in grids view and work
    II. Optimized and advanced Data analysis
    III. New Cubes possibilities
    IV. Global filter
    V. And much more...

Get more info here

Want to know more ?


18 Dec 2014

DB-Aware Components > Direct DB Access > Other
CSV v.4.0SW 1255 k NEW
18 Dec 2014
By Erik Salaj, Winsoft. Delphi and C++ Builder comma-separated values (CSV) library.
  • read and modify existing csv files
  • create new csv files
  • optimized for large data
  • selectable field separator
  • selectable CR/LF/CRLF output
  • optimized output, double-quotes emitted "as needed"
  • WideString fields
  • UTF8 and Ansi files supported
  • UTF8, AnsiString and WideString data supported
  • lines with variable number of fields supported
  • insertion and deletion of lines and fields supported
  • supports Windows 32, Windows 64, OS X, iOS and Android
  • available for Delphi 6 - XE7 and Lazarus 1.2.6
  • source code included in full version
  • royalty free distribution in applications

With Nag-Screen
Source: On purchase/registration
Price: $25
Source Price: $25
Download: C2k10 C2k6 C2k7 C2k9 CB6 CB64 CBXE CBXE2 CBXE3 CBXE4 CBXE5 CBXE6 CBXE7 D2005 D2006 D2007 D2009 D2010 D6 D7 DXE DXE2 DXE3 DXE4 DXE5 DXE6 DXE64 DXE7 FM FM2 FM3  Register NowHomepage

DB-Aware Components > Visual > Edits and Memos
Advanced DBEdit Controls v.2.00FNC 1854 k NEW
18 Dec 2014
By Gregor Markowski. The suite of enhanced edit components:
  • TAdvEdit
  • TAdvMemo
  • TAdvTreeView
  • TAdvPopupEdit
  • TAdvDropDownEdit
  • TAdvDateTimeEdit
  • TAdvNumericEdit
  • TAdvComboBox
  • TAdvColorBox
  • TAdvDBEdit
  • TAdvDBMemo
  • TAdvDBTreeView
  • TAdvDBDateTimeEdit
  • TAdvDBNumericEdit
  • TAdvDBComboBox
  • TAdvDBLookupComboBox
  • TAdvDBLookupTreeView
  • TAdvDBColorBox
for fast and easy data entering.

All these components (except TAdvTreeView and TAdvDBTreeView) are descendants of TAdvCustomEdit class and TAdvCustomEdit class is improved descendant of TCustomEdit. I have created these components with minimum programming code. Wherever the original Borland code was not optimal I have overriden it, but generally Ive tried to take the maximum advantage of Borland code.

My idea also was to make these components maximum friendly for both keyboard and mouse using and to give them pretty look (see TMathCalculator and TDateTimeSelector which descendants are also used as dropdown window appropriately in TAdv(DB)NumericEdit and TAdv(DB)DateTimeEdit).

You will be amazed at the potentiality, efficiency and look and feel of AdvEdit components.

Some of important features in all components:

  • property Allignment
  • property AllowExitOnKeyPress lets You decide if after pressing key UP, key DOWN or RETURN focus is changed to previous or next control (in Memos case, behaviour after RETURN press depends also on WantReturns setting, if AllowExitOnKeyPress = True then if key Up was pressed and Carret was in top line then previous control is focused and if key down was pressed and Carret was in bottom line then next control is focused)
  • properties ColorWhenFocused and FontColorWhenFocused let You to change colors of the control when it receives focus, without a need of writing additional code anywhere in Form
  • improved border drawing (see DEMO-exe)
  • in components with dropped down windows:
    • property AllowInput lets You decide if user can enter data (also paste is controlled) or only choose something from the dropped down window (generally there is a system that lets You fully control data entering in very easy way)
    • property CursorOverButton lets You change mouse cursor when it moves over edit controls button
  • TAdvColorBox - smart component for selecting colors
    • Standard Colors List
    • Hue/Saturation/Lumination Color Palette
    • You can easely switch between these two PopupWindows
  • TAdv(DB)NumericEdit with dropped down calculator with rounding feature
    • TMathCalculator is small TCustomControl descendants, and same as TDateTimeSelector, contains no other control - only graphic function and event handlig
  • in TAdvDBLookupComboBox:
    • property EditingOptions lets You define how user can modify ListSources Dataset (insert, edit, delete / accessed by clicking on Buttons or PopupMenu) and how KeyValue should be set
    • property ListTitles is a semicolon separated string that lets You set column titles (if ListFields.Count > 1 and lvoColumnTitles in ListViewOptions); if ListTitles is empty then titles are taken from columns Field.DisplayLabel properties
    • properties ListTitlesColor and ListViewOptions let You customize appearance of the dropped down list (column headers, vertical and horizontal lines, rounding float fields to CurrencyDecimals)
    • HotTrack property and MouseWheel scroll let You walk through the dropdown list in much more comfortable way than in standard TDBLookupComboBox
    • support for multifield KeyField
  • in TAdvDBLookupTreeView
    • works just like TAdvDBLookupComboBox
    • tree is built dynamically, "on demand" of expanding node
    • very fast node locating when setting a KeyValue
    • SizingBorder for popup TreeView window
    • You can decide if only Childless nodes can be selected
    • property MultiParentAllowed: if set to True then You can attach same nodes to varies Parents
  • in TAdvCheckListBox, TAdvComboCheckBox, TAdvDBComboCheckBox
    • check flag can be stored as integer or bytes
    • options are identified by list item indexes
  • and much more - see DEMO application (using TObject descendants class hierarchy)
  • see History.Txt for changes
  • You can register the components under Your own names if You already have components with such names in Your Delphi IDE. Take a look at the AdvEditCtrls_RegDeclar.pas placed in Source folder. You can use them in Your IDE completly free - there is no time limit or NAGscreen.
    Trial (work while IDE is running)
    Source: None
    Exe-Demo Included
    Download: D2006 D2007 D6 D7  Discuss product

    DB-Aware Components > Direct DB Access > Memory Tables
    Memory Dataset v.3.11FNC 1704 k NEW
    18 Dec 2014
    By Gregor Markowski. The TMemoryDataset is a perfect replacement for Delphi TClientDataset.

    I have created this component with minimum programming code and tried to achieve the maximum functionality Wherever the original Borland code was not optimal I have overridden it, but generally Ive tried to take the maximum advantage of Borland code.You will be amazed at the potentiality and efficiency of TMemoryDataset component - TMemoryDataset not only allocates circa 1/3 of the memory that TClientDataset allocates but also is much faster in opening and creating indexes (especially multiple field indexes)

    The package contains also TTreeDataset component that is a descendant of TMemorydataset.

    Here are some features of the TMemoryDataset component:

    • no Midas and no external DLLs are used, TMemoryDataset is written in pure pascal code
    • borland TDatasetProvider functionality is integrated into TMemoryDataset, and property ProviderOptions implements apropriate TDatasetProvider options
    • cascade updates are performed on nonTMemoryDataset datasets as well, if detail dataset has properties MasterFields and IndexFieldNames
    • unlike TClientDataset, TMemoryDataset method ApplyUpdates doesn't perform Commit, so You can apply updates for multiple datasets in one transaction, by explicit call Commit method of Database assosiated with DefaultDestDataset after last call of ApplyUpdates
    • You can use TMemoryDataset with nonSQL based datasets as well
    • You can create fields in field editor without any link to other dataset or just use a dataset as FieldDefsSource, or set DefaultSrcDataset or DefaultDestDataset; if DefaultSrcDataset and DefaultDestDataset are different use the DefFieldValueAssignment (avByFieldIndex, avByFieldName,avByFieldNo) to link fields between the datasets
    • create indexes by setting IndexFieldNames; You can use 'desc' and 'cs' keywords to create descanding or casesensitive index for example: 'field1name desc cs; field2name;field3name cs;field4name desc';
    • by setting ranges, You don't need to think if field is indexed descending or ascending, TMemoryDataset will allways take values greater (or equal depending on KeyExclusive value) then lower value of range values and lower (or equal) then greater value of range values
    • ingenious algorithms for FASTEST creating of multiple field indexes and exact and nearest record locating
      • sorting on fkLookup fields (if LookupDataset allows to set index on LookupResultField it means there is IndexFieldDefs/IndexName or IndexFieldNames published property) without allocating any additional memory, sorting algorithm uses index in LookupDataset
      • a Calculated field can also be sorted; if it has an equivalent sort order in a fkData field, then put this fkData field name into Origin property of the calculated field
    • full support for FASTEST filtering (especially when using 'IN' expressions: 'aField in (value1,value2,..., valueN)'
    • MasterSourceFields are defined regardless of IndexFieldNames, it means You can sort detail Dataset as You want without loosing link to MasterSource
      • in opposite to TClientDataset,TDatasetField is natively used in connection with MasterSource, showing in simply way details in TDBGrid descendants
      • in dsInsert state, TMemoryDataset assigns for You MasterFields values to appropriate LinkedFields automatically
      • You can use Borland Field Link Designer at design-time to set relationship between master-detail fields
    • records are stored with minimum allocation of memory (string fields occupy actual length); there are 2 strategies of storing data (property StorageModel):
      • smVariableFieldsOffsets - minimum amount of memory is allocated for fields data (each null field value takes just one bit of memory)
      • smFixedFieldsOffsets - little more memory used for fields storage but faster creation of fields indexes and faster locating on searched records
    • all field types are fully supported
    • property StoreEmptyStrAsNull; if set to True then:
      • strings with 0 length or containing only whitespaces are stored as null
      • memory is saved in smVariableFieldsOffsets StorageModel
    • property StoreZeroAsNull for TNumericField descendants; if set to True then:
      • zero values are stored as null
      • negative values are placed before nulls in sort order
      • more clarity is given when browsing data in TCustomDBGrid descendants
      • memory is saved in smVariableFieldsOffsets StorageModel
    • SparseArrayElementCount published property lets You set the way of storing array fields:
      • -1 means all array elements are created in TArrayField Fields property
      • 0 means all array elements are stored but only one child field named 'Array_Elements' is created, but still You have access to each array element
      • >0 defines the maximum chilld field count that can be created and accessed
      • if array field is created in field editor it is highly recommended to use TmArrayField for which You can set value of property Size at design time
    • extreme fast locating of required records; nearest locate methods let You search with options (nloLowestDifference, nloKeyExclusive)
    • LoadDataFromTextFile method allows import not only text fields but multiline Memos and Blobs (in form of hexadecimal strings) as well
    • You can use TMemoryDataset in You Delphi IDE without any restrictions
    • try DEMO-exe to see an example of using TMemoryDataset (including TADTField)

    Trial (work while IDE is running)
    Source: None
    Exe-Demo Included
    Download: D2006 D2007 D6 D7  Discuss product

    DB-Aware Components > Visual > Grids
    TAdvDBGrid v.1.31FNC 1611 k NEW
    18 Dec 2014
    By Gregor Markowski. TAdvDBGrid is descendant of TDBGrid and implements following features:


    • multiline columns headers
    • bands for group of columns
    • footers with various kind of counting (sum, min, max, avg); scope can be set for entire dataset or only for visible rows
    • property ColumnKind let You customize visualization and editing way of data; can be one the following values
      • ckDefault, ckBoolean, ckOptions, ckLookupEdit, ckDate, ckDateTime, ckTime, ckLinkTo_wwwSite, ckLinkTo_eMail, ckPassword, ckProgressbar, ckColor
    • for all numeric and datetime fields appropriate (extreme lightweight) Popup window is available (if property ExtendedEditor is set to True - default)
    TAdvDBGrid has also following features:
    • AutoSort; if underlaying Dataset has properties IndexDefs and IndexName, or IndexFieldNames then clicking on title automatically sorts underlaying dataset (holding Ctrl or Alt You can click multiple columns for sorting on multiple fields)
    • blobs editors (images can be shown in hint windows)
    • variable colouring of rows (in both state: on focus in and focus out)
    • columns are scrolled horizontally directly on thumb move; vertically, You can decide by including or not oeThumbTracking into OptionsEx
    • fields can be edited even if the selected Row is highlighted (dgRowSelect is included into Options)
    • rows can be selected by checking checkboxes in indicator column
    • support for multifield KeyField of LookupDataList
    • for more features see DEMO application
    the package contains also TAdvDBGridTreeView component that as a descendant of TAdvCustomDBGrid introduces only one new published property TreeParams with following features:
    • ButtonStyle: TDBGTVButtonStyle default bsRectangle
    • LineStyle: TDBGTVLineStyle default lsDotted
    • TreeColumnAlign: TBGTVTreeColumnAlign default tcaAlignToTree
    • if assigned TDataset is not recognized as TTreeDataset then TAdvDBGridTreeView acts exactly as TAdvDBGrid

    Trial (work while IDE is running)
    Source: None
    Exe-Demo Included
    Download: D2006 D2007 D6 D7  Discuss product

    DB-Aware Components > Direct DB Access > Memory Tables
    TreeDataset v.1.17FNC 1939 k NEW
    18 Dec 2014
    By Gregor Markowski.

    TTreeDataset as a descendants of TMemoryDataset lets You handle tree data structures in very easy way. For example a descendant of TCustomDBGrid needs just a few methods to be overriden to work with TTreeDataset.

      main features
    • if You attach a data source then poLoadDataOnOpen in ProviderOptions lets You decide if all nodes are loaded on open; if the option is excluded then tree is builded dynamically according to the progress of node expanding
    • when dataset is filtered then You can use FilteredRecordHandling to decide if not filtered out descendants of filtered out record can be attached to the nearest not filtered out ancestor or excluded from the tree
    • in multiparent tree data structure all data is preserved on changing parent and no additional memory is allocated
    • following published properties let You adjust any visual-data aware component for TTreeDataset access
      • Depth - the level of the node; root branch starts with 0
      • HasChildren and Expanded - for correct visualization of expand buttons; by setting Expanded to True or False You can expand or collapse node
      • IsLastChild (if needed IsFirstChild as well) and IsAncestorLastChild - for drawing of tree lines; IsAncestorLastChild returns a string of 'Depth' count character indicators: 'F' for False and 'T' for True where first character indicates if ancestor on root branch is last child, and so on...

    Try DEMO-exe to see an example of a random generated human population.

    Trial (work while IDE is running)
    Source: None
    Exe-Demo Included
    Download: D2006 D2007 D6 D7  Discuss product

    News from our Sponsors

      Stellar Phoenix SQL Database Repair
    Stellar Phoenix SQL Database Repair is the perfect tool that facilitates complete recovery of SQL - MDF and NDF database files. With very professional looking user interface, the software lists all the options in the ribbon fashion. The efficient scan engine of the software handles all the corruptions in the database objects, including tables, queries, views, indexes, and stored procedures and saves the repaired data as a new database file. more... more...

      Bring fresh look to your applications!
    ThemeEngine is a library of components which allows to change visual appearance and behavior of your application with use of the powerful set of tools including visual components, convenient designers, easy-to-use non-visual components, the optimized graphic algorithms and a set of ready themes. ThemeEngine can add themes to forms, to the menu and to the elements of the management. 150+ stable easy to use components and 1000+ free skins. more... more...

    Advertising on Torry's Delphi Pages


    Quick Search
    Exact phrase

    Advertising on Torry's Delphi Pages

    Guest Book
    Guest Book

    Subscribe to news in RSS 2.0 format!Subscribe to news in RSS 2.0 format!
    Bookmark and Share
    Up | Home | 10% - Off! | New | VCL | DB-Aware | Tools | DB Tools | Apps | Samples | .NET | .NET DB-Aware | .NET Tools | .NET Samples | Kylix | Docs | Bold | Discussion | Sites | Tips | DPFL | Authors | Uploads | RSS | Store | Advertisement | About
    Copyright  Torry's Delphi Pages Torry's Delphi Pages Maintained by Torry Team. Notes? Comments? Feel free to send...

    The Ultimate Source of Object Pascal and Delphi Programming Knowledge.

    Copyright © 1996-2014
    All trademarks are the sole property of their respective owners
    Privacy Policy