![]() |
Visual FlagShip 8 specification |
The compilation of your application is done in the following phases:
| Language
& Compiler |
|||
| Fully source compatible | Clipper 87, 5.0, 5.2, 5.3 and FlagShip 4.4, 5, 6 | ||
| Almost source compatible | dBASE, FoxBase, FoxPro * | ||
| Common source code for DOS (Clipper), UNIX and MS-Windows | yes * | ||
| User defined commands and functions | yes | ||
| User defined OOP classes | yes * | ||
| Preprocessor directives of Clipper 5.x | yes | ||
| Additional preprocessor directives | yes * | ||
| Macro evaluation at run-time | yes | ||
| Code blocks | yes | ||
| All Clipper commands, functions and predefined classes | yes | ||
| Additional commands, functions and classes | yes * | ||
| Abbreviation of commands and some functions | yes | ||
| Function or procedure name length | 128 chars, first 10 chars are significant | ||
| Class method name length | unlimited, fully significant | ||
| Number of UDFs and procedures | unlimited * | ||
| Nesting of UDFs | unlimited * | ||
| Structure nesting | unlimited * | ||
| Number of nested loops | unlimited * | ||
| Expression and macro length | up to 4 KB * | ||
| Nesting of each macro | up to 255 depth * | ||
| Break from loops | yes * | ||
| Save & restore screen | yes | ||
| PC-8 and ANSI character set support in source code | yes * | ||
| Binary 0 in string | yes, selectable * | ||
| Extend-C system (Clipper compatible) | yes | ||
| Open-C system with unlimited access to variables and UDFs | yes * | ||
| Inline C code within the .prg file | yes * | ||
| Translation of .prg source into the C language. | yes * | ||
| Produces native executables | yes (32bit * or 64bit ** mode, statically or dynamically * linked) | ||
| Mode of
operation |
|||
| GUI environment | yes * auto-detected, compiler-switch or via user request | ||
| Terminal environment (also remote terminals) | yes auto-detected, compiler-switch or via user request | ||
| Stream/basic mode (e.g. for CGI or background) | yes * compiler-switch or via user request | ||
| Input /
Output: |
|||
| GUI environment | yes * | ||
| Color and b/w terminals | yes | ||
| Stream i/o mode (e.g. for CGI) | yes * | ||
| ASCII/PC-8/OEM or ISO/ANSI character set | yes * | ||
| Additional character mapping | yes * | ||
| Printer output | spooled * | ||
| Low-level input/output | yes | ||
| Variable
system: |
|||
| Dynamic variable scoping | yes | ||
| Public, private, arrays, static, local, constant* | yes | ||
| Typed static, local, global | yes * | ||
| Number of memory variables | unlimited * | ||
| Length of variable name | unlimited, first 10 chars signif. | ||
| Character variables | size up to 2GB * | ||
| Numeric variables | 8 byte double float, precision 15 digits | ||
| Date variables | 4 byte long integer | ||
| Logical variables | 1 byte character | ||
| Screen variables | 4 byte memory pointer * | ||
| Arrays | one- and multi-dimensional | ||
| Array size | limited by memory only (65000 each dimension) * | ||
| Array element type | all variable types incl. arrays and objects | ||
| Store/restore of arrays in .mem files | yes * | ||
| Automatic (and user defined) garbage collection | yes | ||
| Classes,
Objects: |
|||
| Predefined classes, Clipper compatible, many of them with additional properties and extended functionality* (each for GUI, textual and basic/ stream mode - assigned/detected automatically) | CheckBox, Error, Get, ListBox, MenuItem, PopUp, PushButton, RadioButton, RadioGroup, Tbrowse, TbColumn, TopBar | ||
| Additional predefined classes, many of them are VO compatible (each for GUI, textual and basic/stream mode - assigned/detected automatically) | Applic, AppWindow, Color, ColorPair, ComboBox, DataServer, DbServer, Dbfidx, Dimension, ErrorBox, Font, InfoBox, MessageBox, Mouse, Point, Printer, Prompt, Rectange, Size, TextBox, WarningBox (all *) | ||
| User definable classes in VO syntax | yes * | ||
| Inheritance of classes | yes * | ||
| Number of user defined classes | unlimited * | ||
| Class inheritance depth | unlimited * | ||
| Method, Access, Assign | yes * | ||
| Protected and Static methods | yes * | ||
| Instances, protect, hidden, export | yes * | ||
| Prototyping of methods | yes * | ||
| Automatic prototypes by the FS compiler | yes * | ||
| Files,
Multiuser, Multitasking |
|||
| Maximal program size (executable) | 2 to 4 Gigabyte ** (system specific) | ||
| Maximal size of .dbf, .dbt, .dbv, .idx | nearly unlimited, large files >> 2GB (up to 16 TB ***) are supported * ** | ||
| Fully compatible .DBF and.DBT files | yes | ||
| Compatible .MEM files | yes | ||
| File & record locking, exclusive & shared dbf | yes | ||
| Multiple record locking | yes * | ||
| Automatic locking, user-modifiable | yes * | ||
| Network database share | yes | ||
| Multiuser, multitasking | yes * | ||
| Filename Length | up to 255 chars ** | ||
| Path name Length | 255 characters ** | ||
| Simultaneously opened files | unlimited ** | ||
| Database
and Index |
|||
| Simultaneously opened working areas | unlimited * (64.000) | ||
| Simultaneously opened files | unlimited ** (64.000 in Linux and Unix, 2.400 in Windows) | ||
| Indices per working area | unlimited * (64.000) | ||
| Relations per working area | unlimited * | ||
| Records per database | 4 billion (4.000.000.000) | ||
| Fields per record | 65000 * | ||
| Character field | 8-bit ASCII, up to 64 KB * | ||
| Numeric field | ASCII format up to 19 digits incl. sign and deci point | ||
| Date field | ASCII 8 digits incl. full year (1/1/0001...12/31/9999) | ||
| Logical field | one ASCII character ('T','F','Y','N') | ||
| Memo field (.dbt) | 10 digits pointer to .dbt block | ||
| Compressed memo field with variable block size (.dbv) | yes * with up to 2 GB block size each | ||
| Other field types | Int, Real, Byte, Blob * | ||
| Structure of .dbf file | Binary header + sequential records of fixed length in ASCII format, unlimited total file size*** | ||
| Structure of .dbt file | blocks of 512 bytes, up to 32 MB ea., unlimited total file size*** | ||
| Structure of .fpt file | blocks of variable size (usually 64bytes ea), up to 2 GB total file size * | ||
| Structure of .dbv file | blocks of variable size, up to 2 GB ea.* unlimted total file size*** | ||
| Structure of .idx file | Binary header + Btree binary structure, automat. data integrity* , unlimited total file size*** | ||
| Index key size | 430 bytes * | ||
| Database vs. index integrity checking | yes * | ||
| Record and File locking | yes | ||
| Multiple record locking | yes * | ||
| Automatic locking (user-modifiable) | yes * | ||
| Network database share | yes (also via NFS or Samba) * | ||
| Other RDDs (replaceable database drivers) | available * (click here for details) including SQL | ||
| Creating own RDDs via OOP | possible * (examples available) | ||
| System: | |||
| Supported Unix systems | 32 and 64 bit: more than 50 * (see more...) incl. Linux (see more...) | ||
| Supported MS-Windows systems | 32 and 64 bit: Windows systems like NT4, 2000, 2003, 2008, XP, Vista, Windows-7 and Windows-8 (see more...) | ||
| User requirements | none | ||
| Developer requirements | FlagShip for the target system + standard C compiler (for MS-Windows: BCC or MS-VC6++) | ||
| Run-time royalties | none | ||
| Produces stand alone executables | yes (32bit * or 64bit ** mode) | ||
| Full Y2K conformance | yes * (click here for details) | ||
| Additional 3rd party tools | available (click here for details) |
Notes:
*
marked items are FlagShip extensions to Clipper.
**
marked items depends on the used Unix or Windows system.
*** the
size of .dbf, .dbt, .dbv and .idx files is nearly unlimited, theoretically up
to 2^63 = 9.223.372.036.854.775.808 bytes (9 EB = 9.000.000 GB), practically
approx. 16 TB (= 16.000 GB),
limited only by the used operating and file system.
Please see additional details in the FlagShip manual, section LNG and REL. The on-line manual named "fsman" is installed automatically also with the test drive. Complete manual (2500+ pages) is a part of the usual distribution, or available on-line.
For further information and
local distributors, contact:
multisoft
Datentechnik, Schönaustr. 7, D-84036 Landshut, Germany
Telephone
(voice): ++49-871-3300237, Telefax: ++49-871-96561648 (24 hr)
E-mail
:
info@flagship.de
or sales@multisoft.de
Web :
http://www.flagship.de
Last modified: 14-Oct-2016