News in versions: FastGrid 1.0, TreeGrid 17.0
FastGrid FastSheet ExamplesSamples DocumentationDoc Download Licensing Prices Buy Development
services
References References Contacts
TreeGrid Gantt chart SpreadSheet ExamplesSamples DocumentationDoc Download Licensing Prices Buy Contacts
FastGrid documentation
Search in documentation
FastGrid versions compatibility

Changes log (txt file) Compare FastGrid 1.0 & TreeGrid 17.1

Using in JavaScript frameworks

Angular Ember Express React Svelte Vue Other frameworks NodeJS server SalesForce LWC

Data and creating FastGrid

Simple examples of creating FastGrid Create FastGrid Display grid Access grid by API Sheets, more grids switched in one place Layout and configuration Data rows, columns, toolbars, images Changes in data rows, columns, toolbars Saving changes to server Mark changes Loading children on expand parent Short format

Layout - grid parts

Parts - ColParts and RowParts Part size Part scroll position Sets Column sets Row sets

Toolbars

Toolbar Cells Icon Height Width Toolbar position Dragging and manipulating cells Special toolbars

Rows and columns
Default rows, columns, cells, toolbars
Row and column identity

Row / column id Row / column index Row / column name

Row and column manipulation

API to get grid objects Auto added columns & rows on scroll Blocks of rows / columns Adding / copying / moving Deleting Showing and hiding Layout menu Selecting rows and columns Fill cell values by dragging Locking grid against changes Undo & redo

Row and column tree

Row and column tree Row tree Column tree Expand & collapse

Cells
Cell values and attributes

Read and write any values by API Cell value Cell attributes Cell value & attributes in UTF8 Store

Editing cells

Editing During editing Validation and errors

Cell images

Row cell side icons Icons definition Mark icons and charts Mark icons list Row cell floating images

Cell size

Row height Column width Resizing rows and columns Padding Margin Cell span

Cell style

Grid style and look Cell style permissions Cell style Cell outer border Cell inner border Alternate row & column background

Other cell features

Cell hyperlink Cell tooltip Static cells Other cell attributes Row & column attributes to speed up

Cell types and formats
Cell type and format Range - more values / ranges in cell String type Html type Auto type
Bool type

Bool type Check side icon Bool type & Check side icon

Number type

Format Localization

Date type

Format Localization Calendar

Calculations - formulas
JavaScript formulas

JavaScript formulas Aggregate functions String aggregate functions Other functions

Editable formulas

Formula rules Formula attributes Defined names for editable formulas Conditional functions Lookup functions Cell reference functions Logical functions Informational functions Mathematical functions Trigonometry functions Rounding numbers Number conversions String functions Date functions Summary functions

Dialogs and menus

Dialog Dialog Place Dialog API Menu definition in Script Cell menu List Suggest

Features
Sorting rows / columns

Sorting Sorting settings Comparing strings

Grouping rows / columns

Grouping Grouping settings Comparing strings Pivot grid

Filtering rows and columns

Filtering Filter settings Comparing strings

Search in cells Import files to grid
Export files

Export files Export and copy to clipboard CSV data

Copy & paste via system clipboard

Copy & paste Copy to clipboard Paste from clipboard

Printing

Print Print to PDF

Global grid settings
Grid size & scroll

Grid size Grid scrollbars Paging and view Media rules - responsive design

Saving settings in storage or cookies
Focus and hover cells

Focus cell and cell ranges Mouse hover cells Highlight cells, rows and columns

Events

Mouse events Key events API events

Language

Translation Languages

Messages

Message Message style

Other API

API for iterating rows and columns Paint and repaint Various API methods

Debug & files

Debugging FastGrid files

UTF8 Store - fast & short data
Introduction - License & download

Basic description Main advantages Basic usage License Download Documentation

Script language implementations

JavaScript C# JAVA PHP

Suggested ucodes

Bits - small integers or enums Integers or enums with strings Date and time Floating point numbers Special strings

Basic ucodes

Integer 1 char String 1 char Date 1 char Bits 1 char Integer 2 chars String 2 chars Date 2 chars Float 2 chars Integer 3 chars String 3 chars Date 3 chars Integer and double float 5 chars String 5 chars Date 5 chars Fixed length string Separated strings Adjacent strings Prefix for escaping string Fixed length data Unused custom codes Prefix for stored separator or length Prefix for stored base number Unused basic ucodes

Complex ucodes

chars signed decimals multiple limits varstrings escape base chars2 signed2 decimals2 multiple2 limits2

Internal coding Profiling times for ucode options Function reference

Type Auto - automatic type

FastGrid documentation

Auto type is automatic type, the resulted type is chosen according to the cell value and Format.
It chooses among Bool (as TRUE / FALSE words, not as checkbox), Number, Date and String types.
The Bool type is chosen if the cell Format is set to "!". Or it is chosen if the Format is not set and the value is JavaScript Boolean true or false.
The Date type is chosen if the cell Format is set to some date format.
The Number type is chosen if the cell Format is set to some number format. Or it is chosen if the Format is not set and the value can be converted to number.
The String type is chosen if the cell Format is "@". Or it is chosen if the Format is not set and the value cannot be converted to number.

The displayed values TRUE and FALSE for Bool type are defined in Text object, attributes $true and $false.
Cell, Tool string

Type

["Auto"] Type = "Auto" GetAttr SetAttr
The Auto type is cell default type. It can be set also explicitly by setting Type to "Auto".
Cfg bool

AutoBool

[1] GetCfgAttr SetCfgAttr
If set and the entered value is "true" or "false" (case insensitive), the cell gets the Boolean value true or false.
If not set and the entered value is "true" or "false", it is set to cell value as string.
The true and false keywords are defined in Text object, attributes $true and $false.
Cfg int

AutoDate

[2] GetCfgAttr SetCfgAttr
If can be set and deleted date Format after editing cell or calling SetString.
1 - If entered value is recognized date string and cell has no Format, the Format is set to AutoDateFormat.
2 - Like 1 and it clears the cell Format if it is set to AutoDateFormat and the entered value is not recognized as valid date.
Cfg bits

AutoDateNames

[1] GetCfgAttr SetCfgAttr
If accepts month and am/pm names in date.
1. bit &1 - if set, accepts long month names (min 3 characters or CJK character).
2. bit &2 - if set, accepts all month names, including short names.
3. bit &4 - if set, accept long am/pm names (min 2 characters or CJK character).
4. bit &8 - if set, accepts all am/pm names, including on character names like a or p.
Cfg string

AutoDateFormat

["A2"] GetCfgAttr SetCfgAttr
Date format assigned to the cell Format when entering valid date to Auto type cell and AutoDate is set.
It can be set to any valid date format string.
There are especially predefined formats "a1", "a2", "a3", "a4" and A1", "A2", "A3", "A4" that omit not set parts in the date / time. The higher ax, the more parts are omitted.
The lowercase 'ax' use localized Standard format parts, the uppercase 'Ax' uses Standard full format.
Cfg string

AutoNumberFormat

[ ] / [...] GetCfgAttr
Number format to display numbers in Auto type cell if the cell Format is not set. By default it is empty to use unformatted numbers.
It can be set to any valid number format string.
It can be set also to comma separated string or array of pairs as [max1,format1,max2,format2,max3,format3,...]. The appropritate format is chosen if the value is less than its max. If max is negative, it is chosen if the value is less or equal the max. The array must be sorted according the max ascending.
Default value for Sheet is "-1e11,0.#####E+00,-0.0001,0.#########,-1e-320,0.#####E+00,1e-320,0.#########,0.0001,0.#####E+00,1e11,0.#########,,0.#####E+00".
Cfg int

AutoPercent

[2] GetCfgAttr SetCfgAttr
If can be set and deleted percentage number Format after editing cell or calling SetString.
1 - If entered value is number ending by '%' and cell has no Format or it is AutoDateFormat, the Format is set to AutoPercentFormat.
2 - Like 1 and it clears the cell Format if it is set to AutoPercentFormat and the entered value is not number endeing by '%'.
Cfg string

AutoPercentFormat

["p"] GetCfgAttr SetCfgAttr
Number format assigned to the cell Format when entering percentage number to Auto type cell and AutoPercent is set.
It can be set to any valid number format string containing %.
Cfg int

AutoRange

[0] GetCfgAttr SetCfgAttr
If set and Type is Auto and value contains valid number or date range, it is formatted and aligned as number / date even if cell has not set Range attribute.
If set to 2 and Type is Auto, it also replaces the value and range separators in strings by their display variants.
!! Cfg bool

AutoHtml

[0] / [1] GetCfgAttr SetCfgAttr
If set, the Auto type cell can contain Html code to format the text like in Html Type.
If not set, the Html in Auto type is escaped like in String type.
Using many cells with HTML code remarkably slows down paint!
Cfg int

HideZero

[0] GetCfgAttr SetCfgAttr
If set, all zero values in Number and Auto types are displayed empty or as EmptyValue value.
If set to 2, it hides the zero values also in toolbar cells.
Cfg bool

ExcelDates

[0] / [1] GetCfgAttr
0 - all dates in grid are integer numbers as count of milliseconds since 1/1/1970.
1 - all dates in grid are floating point numbers as count of days since 1/1/1900.
It affects everything, input data and output data if dates are numbers and all dates for API.
Setting to 1 is useful especially if importing xlsx file with dates.
Format string

TextPrefix

[']
Starting cell value by this character forces it to display as String type.
This first character is not displayed in the cell. It is ignored in editable formulas. Default is apostrophe.
Format int

ExactNumbers

[0]
If preserves numbers in strings as strings in Auto type, if exact number representation would change if converted to number.
For Number type the conversion is always done like for ExactNumbers = 0.
0 - preserves none, all number strings are converted to numbers, "0123" => 123, "123 " => 123, "12345678901234567890" => 12345678901234567000 and "1e3" => 1000.
1 - preserves only leading zeros. Preserves "0123" => "0123", but converts the others: "123 " => 123, "12345678901234567890" => 12345678901234567000 and "1e3" => 1000
2 - preserves all except leading and trailing spaces. Preserves "0123" => "0123", "12345678901234567890" => "12345678901234567890" and "1e3" => "1e3", but converts "123 " => 123.
3 - preserves complete string including spaces. Preserves "0123" => "0123", "123 " => "123 ", "012345678901234567890" => "12345678901234567890" and "1e3" => "1e3".
If the number contains spaces inside in input data, the value is always string, including calculations, e.g. "12 3" will be "12 3".