|
New Editing/Debugging/Indexing
Functionality
Back
to Top
|
| Toggle
insert mode is now available in every place where you
enter data into fields during filePro development and
runtime execution. |
Now
you can toggle the insert mode in *clerk, ddefine, dmakemenu,
short and extended selection sets, etc. that will allow
you to insert characters without hitting multiple F1's
etc. This has been the case for *cabe but 5.0 extends
this functionality to *clerk, ddefine, dmakemenu, short
and extended selection sets to name a few.
You toggle the insert mode using
Alt-F9 in Dos/Native and typically Ctrl-Z in UNIX |
| *cabe
F9/goto and syntax errors now places the cursor at
the exact location, rather than at the beginning of
the line: |
|
| When
running *clerk, short selection is now a dialog box
which now allows full cursor control while entering
selection criteria: |
|
| If
an extended selection set is left blank, filePro will
ask a "select all" question before continuing: |
|
| Descending
Automatic Indexes Are Now Suported: |
|
| Index
Selection F7 with no value goes to last record: |
If you
go to index selection and select an index and press F7
with no value specified it will take you to the last
record in the index. |
| Dxmaint
no longer builds indexes without a major key sort specified: |
Dxmaint
no longer allows indexes without a major key sort to
be built. Setting the new PFNULLIXSORT=ON will re-enable
this ability. |
| You
can now 'hide' indexes: |
Using
DXMAINT, you can now specify which indexes you want to
'hide' from the Inquire, Update, Add Index Selection
screen. |
| Numeric
config variables: |
Numeric
config variables can now be specified in octal by pre-fixing
with zero.
This new octal syntax is in addition
to the existing hexadecimal ("0x" prefix) and normal
decimal syntax. |
| New
debugger F8 - Extended functions: |
L -
Displays all lookups within this processing table, along
with their status. (closed/failed/open)
An '*' marks which is the current lookup for the given
alias.
F - Displays all open files.


|
|
New Blob Fields
Back
to Top
|
| filePro
5.0 includes support for BLOBs (Binary Large OBjects).
Items such as sound clips, pictures, or even entire
word processor documents can be stored within a filePro
record. New functions allow you to store and retrieve
these objects for use by external programs to display,
edit, print, or otherwise manipulate them. |
BLOB/MEMO
notes:
- BLOB/MEMO fields:
- Type must be either (16,MEMO) or (16,BLOB).
- BLOB/MEMO commands:
- [BLOB|MEMO] field IMPORT filename
- Imports contents of "filename" into the
specified BLOB/MEMO field.
- [BLOB|MEMO] field EXPORT filename
- Exports the specified BLOB/MEMO field into "filename".
- [BLOB|MEMO] field DELETE
- Deletes the specified BLOB/MEMO field.
- MEMO field EDIT (row, col, height, width,
startrow, startcol)
- Brings up the internal filePro memo editor.
All parameters are optional. Blank row/col
means center vertical/horizontal. Blank startrow/startcol
means position at start of memo.
- If: BLOB / MEMO / NOT BLOB / NOT MEMO
- Allows you to determine of the most recent
BLOB/MEMO command succeeded or not. Currently,
BLOB and MEMO are aliases. If a MEMO command
fails, "NOT BLOB" will be true as well. (MEMO
fields are simply a plain-text BLOB.)
|
|
New Text/Memo Fields
Back
to Top
|
| filePro
5.0 includes built-in memo fields. Such fields will
word-wrap within a user-defined area on the screen
or output format. If you change the size of this region,
the word-wrap will change accordingly |
Memo
fields are stored as plain-text BLOBs. See MEMO/BLOB
notes above. |
|
New Commands
Back
to Top
|
| BACKGROUND
ON | OFF |
Turn
on/off ability to enter background via "!G".
Note that you cannot turn it on
if PFBACKGROUND=OFF. (BACKGROUND ON will be ignored.) |
| CALL
NOAUTO |
Ignores
dummy fields defined in automatic processing when calling
another processing table. |
| CURSOR
ON | OFF | DEFAULT |
Forces
the cursor on/off, or restores the default behavior.
Example:
CURSOR OFF
xx = LISTBOX(array)
CURSOR DEFAULT |
| CURSOR
PATH ON | OFF |
Allows
you to turn off forced cursor path in fileProGI. Default
is ON meaning that fileProGI enforces screen cursor path.
Note: You can also use MOUSE PATH. |
| xx
= FILENAME(yy) |
Returns
the filename of the handle specified by yy. The handle
must be a value returned from OPEN() or CREATE(). Invalid
handles return null.
This could be useful in a generic
CALL routine where the filename isn't known. |
| GUI
and NOT GUI |
GUI
and NOT GUI allows you to test if you are running under
a GUI fPclient environment or not. |
| READOUTPUT(
) |
Returns
the text portion of an output format as did READSCREEN()
XX = READOUTPUT( filename, formatname
[ , section ] )
Where "filename" is the name of the filePro file, and "formatname" is
the output format name.
The optional third parameter is the
section of the format to be read.
The currently supported sections are:
0: Graphics characters are returned as text
equivalents. (ie: '|', '-', '+')
1: Graphics characters are returned as-is
2: Graphics characters are returned as spaces.
3: Returns only the graphics characters, as "+-|" text.
All regular text is returned as spaces.
4: Returns only the graphics characters, as-is.
All regular text is returned as spaces.
5: Returns size information of the output format,
as a list of colon-separated 3-digit values:
- width
- height
- format type
- records across page
- records down page
- number of header lines
- number of footer lines (always zero for now)
- number of data lines
- number of break levels (including grand total)
- 9 entries, one for each break level, innermost
first
If not specified, the default section
is zero.
If the output format cannot be read (ie: doesn't exist)
then READOUTPUT() returns a null value.
|
| SAVE
ON | OFF |
SAVE
is a synomyn of "ESCAPE" |
| SHOW
RAW |
Show
a message without filePro interpretation. |
| STATUS(
) |
Allows
you to save/return the status of break, cursor, video,
escape, and background. Allows subroutines to enable
or disable these items, and then restore them to their
original state. |
|
New Financial Functions
Back
to Top
|
| Time-value-of-money
functions have been implemented to calculate n/i/pv/pmt/fv
values, given the other 4. |
N
= TVM_N(i,pv,pmt,fv)
I = TVM_I(n,pv,pmt,fv)
PV = TVM_PV(n,i,pmt,fv)
PMT = TVM_PMT(n,i,pv,fv)
FV = TVM_FV(n,i,pv,pmt)
Where:
N = number of payments
I = interest rate
PV = present value
PMT = amount of payment
FV = future value |
|
New Hyperbolic
Functions
Back
to Top
|
| The
hyperbolic functions SINH/ COSH/ TANH/ ASINH/ ACOSH/
ATANH are implemented. |
xx
= SINH(yy)
xx = ASINH(yy)
xx = COSH(yy)
xx = ACOSH(yy)
xx = TANH(yy)
xx = ATANH(yy) |
|
New Math Function
Back
to Top
|
| result
= x ^ y |
Returns
X raised to the power of Y. (Y can be fractional.)
The power of 0.5 is the same as square root. |
|
New & Enhanced
@Labels
Back
to Top
|
| @ONCE |
The
event labeled by @ONCE will be executed once at the beginning
of the output phase in *report, before the first record
is processed with output processing.
Also, @ONCE will now execute in *clerk, prior to the
first execution of @MENU.
Note: doing a "lookup -" in @ONCE will cause you to jumpto
that record and skip the normal *clerk menu, just as
a "lookup -" in @MENU will do. |
|
Enhanced .prc Commands
Back
to Top
|
| HTML |
The
HTML command has been enhanced to include many new commands
and flags corresponding to a number of HTML commands
that were not implemented with the inital 4.8 release
including:
| :FN
for <FONT> |
:IM
for <IMG> |
:MA
for <MAP> |
| :AR
for <AREA> |
:DT
for <!DOCTYPE |
:IS
for <ISINDEX> |
| :BA
for <BASE> |
:ME
for <META> |
:LN
for <LINK> |
| :AD
for <ADDRESS> |
:RP
for <PRE> |
:DI
for <DIV> |
| :Bq
for <BLOCKQUOTE> |
:UL
for <UL> |
:OL
for <OL> |
| :DL
for <DL> |
:LI
for <LI> |
:DT
for <DT> |
| :DD
for <DD> |
:CE
for <CENTER> |
:SP
for <SPAN> |
|
| INPUT
POPUP ... DEFAULT |
Enhanced
to allow you to set and display a default input value:
|
| LISTBOX |
Enhanced
to take an optional 8th parameter, which is the position
of the initial highlight.
|
| MID() |
Enhanced
so that, if not on the left side of an assignment, to
allow expressions as the first parameter.
Example:
MSGBOX "You were born in the year" < mid(InfoFile[5],"7","4") |
| READ()/READLINE() |
Enhanced
so that they will now accept long-named variables as
the second parameter. |
| READSCREEN(
) |
Enhanced
to return the text, graphics, and color portion of a
screen as a series of 1600-character field (sections
3-6 are new for 5.0)
XX = READSCREEN( filename, screenname
[ , section ] )
Where "filename" is the name of the filePro file, and "screenname" is
the screen name.
New optional third parameters have been added for this
release.
The currently supported sections are:
0: Graphics characters are returned as text equivalents.
(ie: '|', '-', '+')
1: Graphics characters are returned as-is
2: Graphics characters are returned as spaces.
3: Returns only the graphics characters, as "+-|" text.
All regular text is returned as spaces.
4: Returns only the graphics characters, as-is.
All regular text is returned as spaces.
5: Returns size information of the screen, in
the format "www:hhh:nnn" where "www" is the width, "hhh" is
the height, and "nnn" is the format type.
6: Returns the color attributes as a 1600-character
field.
If not specified, the default section is zero.
If the screen cannot be read (ie: doesn't exist) then
READSCREEN() returns a null value. |
|
New or Enhanced
System Maintained Arrays & Variables
Back
to Top
|
| @CMDLINE[] |
Contains
the command line passed to *clerk/*report. (Note: also
known as "@ARGV[]") |
| @CO |
Returns
the column of the first position of the field just entered
or left. |
| @DIRLIST[] |
Contains
the full lines as returned by NEXTDIR() for all files
found by the OPENDIR() command. |
| @DIRLIST_NAME[] |
Contains
the format name as returned in the first column by NEXTDIR()
for all files found by the OPENDIR() command. |
| @DIRLIST_EXT[] |
Contains
the extension as returned in the second column by NEXTDIR()
for all files found by the OPENDIR() command. |
| @DIRLIST_FILENAME[] |
Contains
the full filename as returned in the last column by NEXTDIR()
for all files found by the OPENDIR() command. |
| @SYSFILES[] |
Contains
a list of all open files. Some entries may be blank,
representing an unused (ie: closed) file. |
| @ALLFILES[] |
Contains
a list of all files open by filePro, even those closed
due to dynamic open/close. Some entries may be blank,
representing an unused (ie: closed) file. |
| @FPFILES[] |
Contains
a list of all open filepro files. Some entries may be
blank, representing an unused (ie: closed) file. |
| @FSTAT[] |
Contains
information about the last successful EXISTS() function.
See your O/S manual for a description of each entry.
All entries are numeric, except for the date/time entries,
which are returned as (10,mdyy/) and (8,TIME) respectively.
[0] = length of array (currently
always 14)
[1] = st_dev
[2] = st_ino
[3] = st_mode
[4] = st_nlink
[5] = st_uid
[6] = st_gid
[7] = st_rdev
[8] = st_size
[9] = st_atime_date (date portion of st_atime)
[10] = st_atime_time (time portion of st_atime)
[11] = st_mtime_date
[12] = st_mtime_time
[13] = st_ctime_date
[14] = st_ctime_time
|
| @LI |
Returns
the current line number within the processing. |
| @RO |
Returns
the row of the first position of the field just entered
or left. |
| @UNAME |
Returns
the system uname() information. The meaning of each entry
is system-specific.
[1] = sysname
[2] = nodename
[3] = release
[4] = version
[5] = machine
For Window's systems, the following values are returned.
Sysname: Win9x, WinNT, or Windows (if no specific type).
Nodename: The value from the C programming function "GetComputerName()".
Version: Value of szCSDVersion from the C programming
function "GetVersionEX()".
Machine: blank |
| @VR |
Version
number of *clerk/*report being run. This is the full
version number (ie: "4.9.01K3DN9") that can be moved
into a (4,.1) field to get the major version (ie: "4.9")
for comparisons. |
|
New or Enhanced
Environment Variables
Back
to Top
|
| PFCHECKLOCKPOPUP=OFF
| ON |
Ability
to log non-protected lookups that are not locked records
that are being to/from another file but not do a popup
so the next program in sequence can run without interruption/operator
intervention |
| PFDIALOGPROMPT=
L | C | R |
This
places the message prompts on System popups <C>enter <R> ight
or <L>eft but does not effect MSGBOX or SHOW POPUP |
| PFEOF=chr |
Sets
the end-of-field character to use with filePro's internal
memo editor. |
| PFEOP=chr |
Sets
the end-of-paragraph character to use with filePro's
internal memo editor. |
| PFFIXEDLISTSIZE=ON |
Forces
select lists to be fixed in their location, and single-column
only, rather than adjusting the size based on contents.
This allows screen readers for the blind to know where
the lists are. |
| PFFIXNOLOCK=OFF |
Turns
off forcing of "-p" equivalent on any subsequent executions
of a lookup that modified fields without the "-p". |
| PFFORCECURSORPATH=OFF |
Turns
off forced cursor pathing in fileProGI. |
| PFHELPAUTOGOTO=ON |
Forces
[F9] index search upon entering help. |
| PFHELPDIR=fullpath |
Sets
alternate path to filePro help files. |
| PFINSERTMODE=ON |
Defaults
to insert mode in fields. |
| PFLOOKUPNOFILE=ON |
Allows
you to check syntax on a prc table without it checking
for valid filenames in any lookups. |
| PFLOOKWIZPROT=ON |
Change
default for lookup wizard's "protect record". |
| PFNEWSK=ON |
Allows
new @sk values for fileProGI. |
| PFNOIXHIDE=ON |
Disables
index hiding (all are shown even hidden) |
| PFNOQUAL=OFF |
Turns
off "[NONE]" from the qualifier list. |
| PFNULLIXSORT=ON |
Re-enables
the ability of Dxmaint to build indexes without a major
sort key. |
| PFPERL=fullpath |
Points
to the PERL executible |
| PFQUALMESG=text |
Replaces
the default prompt for -md |
| PFSHOWF6ARROW=ON |
Causes
a down-arrow to be used a EOF marker for fields with
F6 popups [DOS/Native Only for now] |
| PFREFRESHRATE=n |
Sets
screen refresh rate for dxmaint/*report to every n seconds.
(Default: 1) |
| PFSHOWROWCOL=OFF |
Turns
off *cabe/dscreen/dmoedef's display of the cursor position.
The display caused screen readers for the blind to be
constantly reading the cursor position. |
| PFSHOWWINERROR=ON |
Will
cause the internal Windows error code to be displayed
as well as the returned DOS error code. (Windows only) |
| PFSKHEX=ON |
Turns
on display of HEX value for @SK. |
| PFUFLAG=ON |
Same
as -U flag for reports. |
|
New for Native
Windows 5.0.09 filePro to RTF Printer Interface
Back
to Top
|
| Universal
Printing |
Works
on all printers even windows-only printers
Easy landscape printing
Important
Notes on fP2RTF Printer Interface Limitation |