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

Profilling times of ucodes in UTF8 Store

UTF8 Store documentation; version 1.0

How long takes writing and reading the individual ucode options. The times are summaries for 1,000,000 operations.
For example 25~40ms + 13~20ms means that 1,000,000 writes takes between 25ms and 40ms and 1,000,000 reads takes between 13ms and 20ms on average PC in year 2022 in Chrome JavaScript. The higher times in range are usually for bigger numbers or longer strings. 
1 char
0x01 simple positive24ms + 10ms0x02 simple integer26ms + 12ms
0x0B 1 bit  4ms +   6ms0x0C 2 bits  5ms +   8ms 0x0D 3 bits  9ms +   8ms
0x0E 4 bits10ms +   8ms0x0F 5 bits15ms +   9ms
0x0B + 0x08 multi bits11ms + 10ms0x0B + 0x09 multi bits12ms + 10ms 0x0B + 0x0C + 0x0D bits  7ms +   7ms
base positive27ms + 11msbase integer29ms + 13ms
multiple positive27ms + 14msmultiple integer29ms + 16ms
decimals positive31ms + 15msdecimals integer33ms + 15ms
string - 32bit integer34~70ms + 10msstring - other number360~470ms + 13ms
string - string40~66ms + 11ms string - string escape 1+282~99ms + 24ms string - string escape 3140~180ms + 24ms
2 chars
0x11 / 0x12 simple 0~5e325ms + 13ms 0x11 / 0x12 simple -1e9~1e940ms + 18ms 0x11 / 0x12 simple >1e974ms + 26ms
0x1F single float 0~5e338ms + 15ms 0x1F single float -5e6~5e640ms + 20ms 0x1F single float93ms + 24ms
base 0~5e327ms + 14ms base -1e9~1e940ms + 20ms base >1e974ms + 26ms
multiple 0~5e3 * multiple28ms + 16ms multiple -1e9~1e945ms + 22ms multiple >1e976ms + 29ms
decimals 0~5e334ms + 17ms decimals -1e9~1e973ms + 21ms decimals >1e979ms + 29ms
9 digits 0~5e327ms + 14ms 9 digits -1e9~1e941ms + 21ms 9 digits >1e978ms + 26ms
8 digits 0~5e327ms + 14ms 8 digits -1e8~1e840ms + 20ms 8 digits >1e890ms + 25ms
7 digits 57~95ms + 22~38ms
string - 32bit integer54~68ms + 15msstring - other number400~510ms + 19ms
string - string61~92ms + 16ms string - string escape 1+2104~122ms + 27ms string - string escape 3150+190ms + 27ms
3 chars
0x21 / 0x22 simple -1e9~1e955~70ms + 17~25ms0x21 / 0x22 simple >1e994ms + 27ms
base -1e9~1e955~70ms + 18~26msbase >1e994ms + 27ms
multiple -1e9~1e966~78ms + 20~27msmultiple >1e999ms + 28ms
decimals integer70~77ms + 22~29msdecimals floating point99ms + 30ms
13 digits -1e9~1e961~69ms + 19~26ms13 digits >1e9104ms + 32ms
12 digits -1e9~1e961~69ms + 19~26ms12 digits >1e9110ms + 33ms
11 digits -1e9~1e987~92ms + 33ms11 digits >1e9110ms + 33ms
string - 32bit integer70~82ms + 17msstring - other number430~530ms + 21ms
string - string77~110ms + 17ms string - string escape 1+2120~133ms + 29ms string - string escape 3190+230ms + 29ms
5 chars
0x31 / 0x32 simple -1e9~1e9120ms + 24ms0x31 / 0x32 simple -1e14~1e14130ms + 33msdouble float110ms + 37ms
base -1e9~1e9120ms + 24msbase -1e14~1e14130ms + 35ms
multiple -1e9~1e9125ms + 29msmultiple -1e14~1e14130ms + 36ms
decimals -1e9~1e9140ms + 30msdecimals -1e14~1e14140ms + 37ms
13 digits -1e9~1e9120ms + 24ms13 digits -1e22~1e22130ms + 40ms
12 digits -1e9~1e9120ms + 24ms12 digits -1e111~1e111130ms + 40ms
11 digits -1e9~1e9150ms + 40ms11 digits -1e150~1e150150ms + 40ms
string - 32bit integer99~125ms + 23msstring - other number450~580ms + 25ms
string - string98~140ms + 22ms string - string escape 1+2134~179ms + 32ms string - string escape 3200~300ms + 32ms
1, 2, 3, 5 chars
var string - 32bit integer79ms + 38msvar string - other number200~250ms + 38ms
var string - string46~62ms + 33ms var str - string escape 1+273~120ms + 44ms var str - string escape 3125~185ms + 44ms
string / var str - all strings escaped 1+2600ms + 600ms
string / var str - all strings escaped 31200ms + 1200ms
FindUCode (in 1,000,000 values, 100,000 max test)
Boolean 0, 1 (type = 3)     750ms     167 kBucode = 0xB
Numbers 0 ~ 8 (type = 3)  1,000ms     500 kBucode = 0xD
Numbers 0 ~ 10,000 (type = 3)  2,450ms  2,263 kBucode = 0x11
Numbers -5,000 ~ 5,000 (type = 3)  2,500ms  2,263 kBucode = 0x12
Numbers 0 ~ 1e9 (type = 3)  2,300ms  4,949 kBucode = 0x21
Numbers -5e8 ~ 5e8 (type = 3)  2,600ms  4,949 kBucode = 0x22
Numbers 0.00 ~ 100.00 (type = 3)  5,150ms  2,263 kBucode = 0x412
Numbers -50.00 ~ 50.00 (type = 3)  4,900ms  2,263 kBucode = 0x452
Numbers 0.0000 ~ 100000.0000 (type = 3)  3,800ms  4,949 kBucode = 0x424
Numbers -50000.0000 ~ 50000.0000 (type = 3)  3,950ms  4,949 kBucode = 0x464
Numbers 0.00000000 ~ 10.00000000 (type = 3)  4,050ms  4,949 kBucode = 0x428
Numbers 0 ~ 1000.000000 ~ 100000.0000 ~ 10000000.00 ~ 1e9 (type = 3)31,500ms  8,102 kBucode = 0xc24
Numbers 0 ~ 1e14 (type = 3)  6,450ms  8,793 kBucode = 0x1020
Numbers 0 ~ 1.0000e10 (type = 3)  8,500ms  8,381 kBucode = 0x434
Numbers 0 ~ 1e20 (type = 3)13,400ms13,000 kBucode = 0x31
Numbers 0 ~ 1e20 (type = 11)22,900ms  5,856 kBucode = 0x4810
Numbers 0.0000 ~ 1.0000e14 (type = 0)  8,900ms12,958 kBucode = 0x31
Numbers 0.0000 ~ 1.0000e14 (type = 1)14,300ms12,958 kBucode = 0x31
Numbers 0.0000 ~ 1.0000e14 (type = 3)26,000ms12,958 kBucode = 0x31
Numbers 0.0000 ~ 1.0000e14 (type = 8)14,250ms  5,857 kBucode = 0x6811
Numbers 0.0000 ~ 1.0000e14 (type = 11)52,300ms  5,857 kBucode = 0x6811
Numbers 0.000000000000000000 ~ 1.000000000000000000 (type = 0)  5,000ms12,958 kBucode = 0x43E
Numbers 0.000000000000000000 ~ 1.000000000000000000 (type = 1)  6,700ms12,958 kBucode = 0x43E
Numbers 0.000000000000000000 ~ 1.000000000000000000 (type = 3)13,800ms12,958 kBucode = 0x1047E
Numbers 0.000000000000000000 ~ 1.000000000000000000 (type = 8)  7,900ms  5,951 kBucode = 0x1F
Numbers 0.000000000000000000 ~ 1.000000000000000000 (type = 11)27,500ms  5,951 kBucode = 0x1F
Date in ms - 1/1/2022 ~ 12/31/2022 (type = 3)  9,800ms  1,751 kBucode = 0x4ae6044c
Date in ms - 1/1/2022 00h ~ 12/31/2022 23h (type = 3)12,100ms  2,160 kBucode = 0x705b1045b
Date in ms - 1/1/2022 00:00 ~ 12/31/2022 23:59 (type = 3)  5,450ms  3,411 kBucode = 0x22bb20045a
Date in ms - 1/1/2022 00:00:00 ~ 12/31/2022 23:59:59 (type = 3)  5,800ms  3,975 kBucode = 0x6d56ea1060