|
Examples |
|
|
|
ENHANCE23 |
|
|
|
|
|
FEATURES
@D-Helper a series
of auxiliary @functions to the LOTUS123W
standard @D... database functions e.g. @DSUM, @DCOUNT but with a "?" e.g. @DSUM?
and @DCOUNT? which immediately return the reason for the ever present ERR when using these
functions.
@SUM? Helper function to the must used but
much maligned @SUM.
@SOUNDEX
and @TYPEX performing the industry
standard SOUNDEX sound-alike test on two strings and TYPEX© a LAPSOFT exclusive which
performs a typo (typing error) check on two strings.
The Missing Collection a collection of
@functions missing from the original releases of 123 such as @addressof, @MOVEDOWN @MOVEUP
etc.relating to address manipulation.
|
|
|
|
|
|
|
|
Before
@DSUM(SALES,"TOTAL",STATE="MIS")
Result
ERR
With ENHANCE23's @D Helper
@DSUM?(SALES,"TOTAL",STATE="MIS")
Result
Error:3009 FIELD ARGUMENT "TOTAL", has no field match in range SALARY. |
|
|
|
@D HELPER
Premier feature of ENHANCE23, pronounced "At"-"D"-" Helper".
Tired of those ubiquitous ERR returns when using @D.. series of database functions? Get
them right the first time. The @DHelper instantly returns the reason for @ERR !! Just add
a "?" after the @D.. function e.g. @DSUM? press enter and you have a precise
reason for the ERR! See the animation on the home page which
demonstrates @D-Helper in action. See screen dump :  |
|
|
|
|
|
|
Before
@SUM(SALES)
Result
ERR
With ENHANCE23's @SUM Helper
@SUM?(SALES)
Result
WARNING:6003 RANGE ARGUMENT has possible missed
numerical cells. Numeric cell value found above input range at (A:B17). Totals=[ 2 , 2 ,
0, 0 , 0 , 0 , 8.(A:B20) , 7.(A:B19) ]: [cells, numbers, blanks, strings,
ERR,NA,highest,lowest(non blank)]. |
|
|
|
@SUM?
A Helper function for 123s @SUM Just add "?" e.g. @SUM?(...) which reports on:
* non numeric cells in the sum range: blank, @ERR, and @NA
* missed cells in a sum above (smarticon generated sum)
* max and mins |
Without
@soundex :
@DGET(SALES,"NAME",NAME="Johnston")
With @soundex :
@DGET(SALES, "NAME",@soundex(NAME,"Johnston")). |
|
|
|
@SOUNDEX(string1,[string2])
Performs soundex sound alike comparisons (see soundex FAQ). Example your 123 database
table has names and you wish to extract names close to "Johnston" e.g.
"Johnstone" and "Johnson". This Enhance23 @ function
compares soundalike words allowing for a simple comparisons e.g.
|
| Exact=@DGET(SALES,"Name",
NAME="Johnston") NearTypex=@DCOUNT(
SALES,"Name",@TYPEX(NAME,"Johnston")) |
|
|
|
@TYPEX(string1,string2)
Performs typing error comparisons. Example your 123 database table has fields and you wish
to extract a value e.g. "Johnston" but there has been a typing error on input
e.g. "Johnaton" where "s" was mistyped as "a". This new
Enhance23 @ function compares words with typing errors corresponding to QWERTYUIOP
(or specified) keyboards enabling easy comparison.
|
| @NEAR(NAME,"Johnson) |
|
|
|
@NEAR(string1,string2)
Combines @TYPEX and @SOUNDEX functions into one. |
|
|
|
|
The Missing Collection
A number of @functions and macro functions missing from the standard 123 set:
- @ADDRESSOF(RANGE) gives the full
address of RANGE e.g. @ADDRESSOF(RANGE)=<<filename>>A$:C$4$..A$:E$14$.
- @MOVEDOWN(RANGE,[rowoffset]) returns
address or RANGE moved down one row ( or if rowoffset rows). Similarly :- @MOVEUP(RANGE,[rowoffset]),
@MOVELEFT(RANGE,[coloffset]), @MOVERIGHT(RANGE,[coloffset]) cols.
- @RANGEOFFSET(RANGE,[colL],[colR],[rowT],[rowB],[sheetT],[sheetB])
gives the full address of RANGE with offsets (e.g. left column colL columns right, right
column colR columns right etc.).
- @RANGERESIZE(RANGE,colL,rowT,sheetT,cols,rows,sheets) gives
the full address of RANGE with top left cell offset (e.g. left column colL columns right)
and resized to cols columns, rows rows, sheets sheets.
- @RANGEMOVE(RANGE,[colL],[rowT],[sheetT]) gives the full
address of RANGE moved with top left cell offset (e.g. left column colL columns right).
- @RANGEBELOW(RANGE,[topRowOffset])
gives the full address of the range below RANGE (e.g. where RANGE might be the top left
corner of a database range) with optional top row offset topRowOffset rows down.
- @EQUAL(location1,location2) evaluates
to @TRUE if both location1 AND location2 are of the same type and the same value, avoiding
the trap built into the standard 123 @if(boolexpression,truevalue,falsevalue) which
equates strings with numerical 0 e.g. "text"=0 is @TRUE.
- {REPLACE23
string-to-replace;string-to-use-to-replace;location} use instead of the 123
{EDIT-REPLACE-ALL} macro function (less buggy than the original).
|
|
|
|
|
|