home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 5 Edit
/
05-Edit.zip
/
p2demo21.exe
/
PEL
/
DBASE.PEL
< prev
next >
Wrap
Text File
|
1995-03-22
|
16KB
|
344 lines
# $Header: P:\source\wmacros\dbase.pev 1.2 22 Mar 1995 10:54:40 PFHJXM0 $
## $Tabs:4 7$
##############################################################################
#
# Compuware Corporation
# 31440 Northwestern Highway
# Farmington Hills, Michigan 48334-2564
#
# This source code listing contains information that is
# proprietary to Compuware Corporation and may not be copied
# duplicated, translated, transmitted, stored, retrieved
# or in any manner or by any method conveyed or disclosed
# to a third party or parties without express written
# permission from Compuware Corporation.
#
#
##############################################################################
#### $Workfile: dbase.pel $: DBase support functions
global function dBaseDialect( dialect )
{
if ( argcount() < 1 )
{
dialect = tolower( prompt_history(
"DB_DIALECT", "dBase Dialect: ", D_DIALECT, 1, "dbase_prompt" ))
}
else
{
dialect = tolower(dialect)
}
if ( dialect == "clipper50" || dialect == "clipper87" ||
dialect == "force" || dialect == "dbase" )
{
D_DIALECT = dialect
}
else
{
D_DIALECT = "dbase"
warning("Valid choices are 'clipper87' 'clipper50' 'force' 'dbase'(default)")
}
ELEC_LANG = D_DIALECT
if ( ELEC_LANG == "clipper87" )
setup_clipper87_template();
else if ( ELEC_LANG == "clipper50" )
setup_clipper50_template();
else if ( ELEC_LANG == "force" )
setup_force_template();
else
setup_dbase_template();
}
local function setup_clipper87_template()
{
delete( language_template ); # delete last template and start over
ELEC_LANG = "clipper87"
language_template[ "#d" ] = "#define `var`"
language_template[ "#i" ] = "#include `var`"
language_template[ "&" ] = "\t\t&& `expression`"
language_template[ "(" ] = "( `expression` )"
language_template[ "*" ] = "***\n*** `comment` \n***"
language_template[ "[" ] = "[ `expression` ]"
language_template[ "al" ] = "alias `var` "
language_template[ "as" ] = "asc( `var` )"
language_template[ "at" ] = "at( `var`,)"
language_template[ "be" ] = "begin sequence\n\t`statement`\n\bend"
language_template[ "bf" ] = "bof( )"
language_template[ "ca" ] = "do case\n\tcase `condition`\n\t`statement`\n\botherwise\n\t`statement`\n\b\bendcase"
language_template[ "ch" ] = "chr( `var` )"
language_template[ "cl" ] = "clear `var` "
language_template[ "cm" ] = "cmonth( `var` )"
language_template[ "co" ] = "copy to `var` fields for while "
language_template[ "ct" ] = "ctod( `var` )"
language_template[ "da" ] = "day( `var` )"
language_template[ "dc" ] = "dtoc( `var` )"
language_template[ "de" ] = "delete `var` for while "
language_template[ "do" ] = "do `statement` with "
language_template[ "ds" ] = "dtos( `var` )"
language_template[ "dt" ] = "date( )"
language_template[ "ef" ] = "elseif( `condition` )\n\t`statement`"
language_template[ "ef" ] = "eof( )"
language_template[ "el" ] = "else\n\t`statement`"
language_template[ "en" ] = "endif"
language_template[ "fo" ] = "for `expression`\n\t`statement`\n\bnext"
language_template[ "fu" ] = "function `name`\nparameters\n\t`statement`\n\breturn('')"
language_template[ "gb" ] = "go bottom"
language_template[ "gt" ] = "go top"
language_template[ "ie" ] = "if( `expression` )\n\t`statement`\n\belse\n\t`statement`\n\bendif"
language_template[ "if" ] = "if( `expression` )\n\t`statement`\n\bendif"
language_template[ "ii" ] = "iif(( `expression` ),,)"
language_template[ "in" ] = "index `var` "
language_template[ "le" ] = "len( `var` )"
language_template[ "lo" ] = "lower( `var` )"
language_template[ "ma" ] = "max( `var`,)"
language_template[ "mi" ] = "min( `var`,)"
language_template[ "mo" ] = "month( `var` )"
language_template[ "pc" ] = "pcount( ) = `var` "
language_template[ "pi" ] = "picture `var` "
language_template[ "pr" ] = "procedure `name`\nparameters\n\t`statement`\n\breturn"
language_template[ "pu" ] = "public `statement`"
language_template[ "pv" ] = "private `statement`"
language_template[ "ra" ] = "rat( `var`,)"
language_template[ "re" ] = "replicate( `var`,)"
language_template[ "rp" ] = "replace `var` "
language_template[ "rs" ] = "restore screen from `var` "
language_template[ "se" ] = "select `var` "
language_template[ "sp" ] = "space( `var` )"
language_template[ "ss" ] = "save screen to `var` "
language_template[ "su" ] = "substr( `var`,,)"
language_template[ "tf" ] = "transform( `var`,)"
language_template[ "tr" ] = "trim( `var` )"
language_template[ "up" ] = "upper( `var` )"
language_template[ "us" ] = "use `var` "
language_template[ "va" ] = "val( `var` )"
language_template[ "vl" ] = "valid( `var` )"
language_template[ "wh" ] = "do while ( `condition` )\n\t`statement`\n\benddo"
language_template[ "yr" ] = "year( `var` )"
}
local function setup_clipper50_template()
{
delete( language_template ); # delete last template and start over
ELEC_LANG = "clipper50"
language_template[ "#c" ] = "#command `var`\t=>\t"
language_template[ "#d" ] = "#define `var`"
language_template[ "#i" ] = "#include \"`file`\""
language_template[ "#t" ] = "#translate `var`\t=>\t"
language_template[ "&" ] = "\t\t// `expression`"
language_template[ "(" ] = "( `expression` )"
language_template[ "*" ] = "/*\n** `comment` \n*/"
language_template[ "/" ] = "// `comment` "
language_template[ "[" ] = "[ `expression` ]"
language_template[ "{" ] = "{ `expression` }"
language_template[ "al" ] = "alias( )"
language_template[ "ar" ] = "Array( `var` )"
language_template[ "as" ] = "asc( `var` )"
language_template[ "at" ] = "at( `var`,)"
language_template[ "be" ] = "begin sequence\n\t`statement`\n\bend"
language_template[ "bf" ] = "bof( )"
language_template[ "ca" ] = "do case\n\tcase `expression`\n\t`statement`\n\botherwise\n\t`statement`\n\b\bend"
language_template[ "ch" ] = "chr( `var` )"
language_template[ "cm" ] = "cmonth( `var` )"
language_template[ "ct" ] = "ctod( `var` )"
language_template[ "da" ] = "day( `var` )"
language_template[ "dc" ] = "dtoc( `var` )"
language_template[ "ds" ] = "dtos( `var` )"
language_template[ "dt" ] = "date( )"
language_template[ "dv" ] = "DevPos( `var`,)"
language_template[ "ef" ] = "eof( )"
language_template[ "ei" ] = "elseif( `var` )\n\t`statement`"
language_template[ "el" ] = "else\n\t`statement`"
language_template[ "en" ] = "end"
language_template[ "fo" ] = "for `var` := `start` to `finish`\n\t`statement`\n\bnext"
language_template[ "fu" ] = "function `name`( )\n\t`statement`\n\breturn(NIL)"
language_template[ "ie" ] = "if( `condition` )\n\t`statement`\n\belse\n\t`statement`\n\bend"
language_template[ "if" ] = "if( `condition` )\n\t`statement`\n\bend"
language_template[ "ii" ] = "iif(( `condition` ),,)"
language_template[ "in" ] = "index `var` "
language_template[ "lc" ] = "local `var` "
language_template[ "le" ] = "len( `var` )"
language_template[ "lo" ] = "lower( `var` )"
language_template[ "ma" ] = "max( `var`,)"
language_template[ "mi" ] = "min( `var`,)"
language_template[ "mo" ] = "month( `var` )"
language_template[ "pc" ] = "pcount( ) == `var` "
language_template[ "pr" ] = "procedure `name`\nparameters\n\t`statement`\n\breturn"
language_template[ "pu" ] = "public `var` "
language_template[ "pv" ] = "private `var` "
language_template[ "qo" ] = "QOut( `var` )"
language_template[ "qq" ] = "QQOut( `var` )"
language_template[ "ra" ] = "rat( `var`,)"
language_template[ "re" ] = "replicate( `var`,)"
language_template[ "rp" ] = "FIELD-> `var` := `value`"
language_template[ "rs" ] = "restscreen(0, 0, maxrow(), maxcol(), `var` )"
language_template[ "sp" ] = "space( `var` )"
language_template[ "ss" ] = " `var` := savescreen(0, 0, maxrow(), maxcol())"
language_template[ "st" ] = "static `var` "
language_template[ "su" ] = "substr( `var`,,)"
language_template[ "tf" ] = "transform( `var`,)"
language_template[ "tr" ] = "trim( `var` )"
language_template[ "up" ] = "upper( `var` )"
# language_template[ "us" ] = "use `var` "
language_template[ "va" ] = "val( `var` )"
language_template[ "vt" ] = "valtype( `var` )"
language_template[ "wh" ] = "while( `condition` )\n\t`statement`\n\bend"
language_template[ "yr" ] = "year( `var` )"
#############################################################################
# Special Note: The following macro expansions are supplied in two forms.
# The first form is the form preferred by Nantucket for use with Clipper 5.0
# The second form is the translation form as performed by the Clipper 5.0
# preprocessor. It is to the programmer's discretion to choose which of
# these macro sets to utilize, however it should be noted that the use of
# the internal form may not be supported in future Clipper releases.
#############################################################################
## Nantucket preferred form
#language_template[ "cl" ] = "clear"
#language_template[ "gb" ] = "go bottom"
#language_template[ "gt" ] = "go top"
#language_template[ "se" ] = "select @"
#language_template[ "us" ] = "use @"
## Internal form
language_template[ "cl" ] = "__Clear()"
language_template[ "gb" ] = "__dbGoBottom()"
language_template[ "gt" ] = "__dbGoTop()"
language_template[ "se" ] = "__dbSelect( `var` )"
language_template[ "us" ] = "__dbUse(0,NIL, `var`,,.T.,.F.)"
#####################################################################
}
local function setup_force_template()
{
delete( language_template ); # delete last template and start over
ELEC_LANG = "force"
language_template[ "#d" ] = "#define `var`"
language_template[ "#i" ] = "#include `name`"
language_template[ "*" ] = "**\n**\t`comment`\n**"
language_template[ "as" ] = "asc( `var` )"
language_template[ "at" ] = "at( `var`,)"
language_template[ "bf" ] = "bof( )"
language_template[ "ca" ] = "DO CASE\n\tCASE `var`\n\t`statement`\n\bOTHERWISE\n\t`statement`\n\b\bENDCASE"
language_template[ "cd" ] = "COLUMNDEF\n\t`column`\n\bENDDEF"
language_template[ "ch" ] = "chr( `var` )"
language_template[ "cl" ] = "CLEAR `var` "
language_template[ "cm" ] = "cmonth( `var` )"
language_template[ "co" ] = "COPY `var` TO `var` "
language_template[ "ct" ] = "ctod( `var` )"
language_template[ "da" ] = "day( `var` )"
language_template[ "dc" ] = "dtoc( `var` )"
language_template[ "dd" ] = "DBFDEF `var`\n\t`statement`\n\bENDDEF"
language_template[ "de" ] = "DELETE `var` "
language_template[ "do" ] = "DO `statement` WITH `var`"
language_template[ "ef" ] = "eof( )"
language_template[ "el" ] = "ELSE\n\t`statement`"
language_template[ "en" ] = "ENDIF"
language_template[ "fm" ] = "FORMAT `var`\n\tENDPRO"
language_template[ "fu" ] = "FUNCTION `name`\nPARAMETERS\n\t`statement`\n\bENDPRO"
language_template[ "gb" ] = "GOTO BOTTOM"
language_template[ "gd" ] = "GROUPDEF\n\t`group`\n\bENDDEF"
language_template[ "gt" ] = "GOTO TOP"
language_template[ "id" ] = "INDEXDEF\n\t`index`\n\bENDDEF"
language_template[ "ie" ] = "IF( `condition` )\n\t`statement`\n\bELSE\n\t`statement`\n\bENDIF"
language_template[ "if" ] = "IF( `condition` )\n\t`statement`\n\bENDIF"
language_template[ "in" ] = "INDEX `var` "
language_template[ "ld" ] = "LABELDEF `var`\n\t`label`\n\bENDDEF"
language_template[ "le" ] = "len( `var` )"
language_template[ "lo" ] = "locate `var` "
language_template[ "lo" ] = "lower( `var` )"
language_template[ "mo" ] = "month( `var` )"
language_template[ "pi" ] = "picture `var` "
language_template[ "pr" ] = "PROCEDURE `name`\nPARAMETERS\n\t`statement`\n\bENDPRO"
language_template[ "ra" ] = "rat( `var`,)"
language_template[ "rd" ] = "REPORTDEF `var`\n\t`report`\n\bENDDEF"
language_template[ "re" ] = "replicate( `var`,)"
language_template[ "rp" ] = "replace `var`"
language_template[ "rs" ] = "restorescrn( `var` )"
language_template[ "ru" ] = "REPEAT\n\t`statement`\n\bUNTIL `condition` "
language_template[ "se" ] = "SET `var` "
language_template[ "sg" ] = "SUBGROUPDEF\n\t`subgroup`\n\bENDDEF"
language_template[ "ss" ] = "savescrn( `var`,,,)"
language_template[ "st" ] = "stuff( `var`)"
language_template[ "su" ] = "substr( `var`,,)"
language_template[ "tr" ] = "trim( `var` )"
language_template[ "up" ] = "upper( `var` )"
language_template[ "us" ] = "USE `var` "
language_template[ "va" ] = "val( `var` )"
language_template[ "vd" ] = "VARDEF\n\t`statement`\n\bENDDEF"
language_template[ "wh" ] = "DO WHILE ( `condition` )\n\t`statement`\n\bENDDO"
language_template[ "yr" ] = "year( `var` )"
}
local function setup_dbase_template()
{
delete( language_template ); # delete last template and start over
ELEC_LANG = "dbase"
language_template[ "&" ] = "\t\t&& `var`"
language_template[ "(" ] = "( `var` )"
language_template[ "*" ] = "**\n**\t`comment`\n**"
language_template[ "[" ] = "[ `index` ]"
language_template[ "al" ] = "ALIAS `var` "
language_template[ "as" ] = "ASC( `var` )"
language_template[ "at" ] = "AT( `var`,)"
language_template[ "bf" ] = "BOF( )"
language_template[ "ca" ] = "DO CASE\n\tCASE `var`\n\t`statement`\n\bOTHERWISE\n\t`statement`\n\b\bENDCASE"
language_template[ "ch" ] = "CHR( `var` )"
language_template[ "cl" ] = "CLEAR `var` "
language_template[ "cm" ] = "CMONTH( `var` )"
language_template[ "co" ] = "COPY `var` TO `var` "
language_template[ "ct" ] = "CTOD( `var` )"
language_template[ "da" ] = "DAY( `var` )"
language_template[ "dc" ] = "DTOC( `var` )"
language_template[ "de" ] = "DELETE `var` "
language_template[ "do" ] = "DO `var` WITH `var` "
language_template[ "ds" ] = "DTOS( `var` )"
language_template[ "dt" ] = "DATE( )"
language_template[ "ef" ] = "EOF( )"
language_template[ "el" ] = "ELSE\n\t`statement`"
language_template[ "en" ] = "ENDIF"
language_template[ "fu" ] = "FUNCTION `name`\nPARAMETERS\n\t`statement`\n\bRETURN( )"
language_template[ "gb" ] = "GO BOTTOM"
language_template[ "gt" ] = "GO TOP"
language_template[ "ie" ] = "IF( `var` )\n\t`statement`\n\bELSE\n\t`statement`\n\bENDIF"
language_template[ "if" ] = "IF( `condition`)\n\t`statement`\n\bENDIF"
language_template[ "ii" ] = "IIF(( `condition` ),,)"
language_template[ "in" ] = "INDEX `var` "
language_template[ "le" ] = "LEN( `var` )"
language_template[ "lo" ] = "LOCATE `var` "
language_template[ "lw" ] = "LOWER( `var` )"
language_template[ "ma" ] = "MAX( `var`,)"
language_template[ "mi" ] = "MIN( `var`,)"
language_template[ "mo" ] = "MONTH( `var` )"
language_template[ "pc" ] = "PCOUNT() = `var` "
language_template[ "pi" ] = "PICTURE `var` "
language_template[ "pr" ] = "PROCEDURE `name`\nPARAMETERS\n\t`statement`\n\bRETURN"
language_template[ "pu" ] = "PUBLIC `var` "
language_template[ "pv" ] = "PRIVATE `var` "
language_template[ "ra" ] = "RAT( `var`,)"
language_template[ "re" ] = "REPLICATE( `var`,)"
language_template[ "rp" ] = "REPLACE `var` "
language_template[ "rs" ] = "RESTORE SCREEN FROM `var` "
language_template[ "se" ] = "SELECT `var` "
language_template[ "sp" ] = "SPACE( `var` )"
language_template[ "ss" ] = "SAVE SCREEN TO `var` "
language_template[ "su" ] = "SUBSTR( `var`,,)"
language_template[ "tf" ] = "TRANSFORM( `var`,)"
language_template[ "tr" ] = "TRIM( `var` )"
language_template[ "up" ] = "UPPER( `var` )"
language_template[ "us" ] = "USE `var` "
language_template[ "va" ] = "VAL( `var` )"
language_template[ "vl" ] = "VALID( `var` )"
language_template[ "wh" ] = "DO WHILE ( `conditon` )\n\t`statement`\n\bENDDO"
language_template[ "yr" ] = "YEAR( `var` )"
}