mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-22 22:43:03 +01:00
-Removing PYXIS
This commit is contained in:
parent
5f6769cf92
commit
9bf60eadc0
@ -1680,31 +1680,6 @@
|
|||||||
path = exp_proto.h;
|
path = exp_proto.h;
|
||||||
refType = 4;
|
refType = 4;
|
||||||
};
|
};
|
||||||
F616C41F0200B0CF01EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = form.cpp;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C4200200B0CF01EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = form.h;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C4210200B0CF01EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = form__proto.h;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C4220200B0CF01EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = form_proto.h;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C4230200B0CF01EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = form_trn.cpp;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C4240200B0CF01EF0ADE = {
|
F616C4240200B0CF01EF0ADE = {
|
||||||
isa = PBXFileReference;
|
isa = PBXFileReference;
|
||||||
path = ftn.cpp;
|
path = ftn.cpp;
|
||||||
@ -1805,11 +1780,6 @@
|
|||||||
path = msc_proto.h;
|
path = msc_proto.h;
|
||||||
refType = 4;
|
refType = 4;
|
||||||
};
|
};
|
||||||
F616C4390200B0CF01EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = noform.cpp;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C43A0200B0CF01EF0ADE = {
|
F616C43A0200B0CF01EF0ADE = {
|
||||||
isa = PBXFileReference;
|
isa = PBXFileReference;
|
||||||
path = par.cpp;
|
path = par.cpp;
|
||||||
@ -6400,21 +6370,6 @@
|
|||||||
path = expand.cpp;
|
path = expand.cpp;
|
||||||
refType = 4;
|
refType = 4;
|
||||||
};
|
};
|
||||||
F616C83D0200B0D001EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = form.cpp;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C83E0200B0D001EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = form.h;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C83F0200B0D001EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = form_proto.h;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C8400200B0D001EF0ADE = {
|
F616C8400200B0D001EF0ADE = {
|
||||||
isa = PBXFileReference;
|
isa = PBXFileReference;
|
||||||
path = forma_proto.h;
|
path = forma_proto.h;
|
||||||
@ -6490,11 +6445,6 @@
|
|||||||
path = mov_proto.h;
|
path = mov_proto.h;
|
||||||
refType = 4;
|
refType = 4;
|
||||||
};
|
};
|
||||||
F616C8500200B0D001EF0ADE = {
|
|
||||||
isa = PBXFileReference;
|
|
||||||
path = noform.cpp;
|
|
||||||
refType = 4;
|
|
||||||
};
|
|
||||||
F616C8510200B0D001EF0ADE = {
|
F616C8510200B0D001EF0ADE = {
|
||||||
isa = PBXFileReference;
|
isa = PBXFileReference;
|
||||||
path = nounix.cpp;
|
path = nounix.cpp;
|
||||||
|
@ -170,10 +170,6 @@ SOURCE=..\..\..\src\gpre\msc.cpp
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\noform.cpp
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\par.cpp
|
SOURCE=..\..\..\src\gpre\par.cpp
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
@ -242,18 +238,6 @@ SOURCE=..\..\..\src\gpre\exp_proto.h
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form__proto.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form_proto.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\gpre.h
|
SOURCE=..\..\..\src\gpre\gpre.h
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
@ -154,10 +154,6 @@ SOURCE=..\..\..\src\gpre\msc.cpp
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\noform.cpp
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\par.cpp
|
SOURCE=..\..\..\src\gpre\par.cpp
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
@ -246,18 +242,6 @@ SOURCE=..\..\..\src\gpre\exp_proto.h
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form__proto.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form_proto.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\gpre.h
|
SOURCE=..\..\..\src\gpre\gpre.h
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
@ -170,10 +170,6 @@ SOURCE=..\..\..\src\gpre\msc.cpp
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\noform.cpp
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\par.cpp
|
SOURCE=..\..\..\src\gpre\par.cpp
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
@ -242,18 +238,6 @@ SOURCE=..\..\..\src\gpre\exp_proto.h
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form__proto.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\form_proto.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\gpre\gpre.h
|
SOURCE=..\..\..\src\gpre\gpre.h
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
@ -181,10 +181,6 @@ SOURCE=..\..\..\src\qli\mov.cpp
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\..\..\src\qli\noform.cpp
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\qli\parse.cpp
|
SOURCE=..\..\..\src\qli\parse.cpp
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
@ -293,14 +289,6 @@ SOURCE=..\..\..\src\qli\expan_proto.h
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\..\..\src\qli\form.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\qli\form_proto.h
|
|
||||||
# End Source File
|
|
||||||
# Begin Source File
|
|
||||||
|
|
||||||
SOURCE=..\..\..\src\qli\forma_proto.h
|
SOURCE=..\..\..\src\qli\forma_proto.h
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
@ -177,9 +177,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\msc.cpp">
|
RelativePath="..\..\..\src\gpre\msc.cpp">
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\noform.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\par.cpp">
|
RelativePath="..\..\..\src\gpre\par.cpp">
|
||||||
</File>
|
</File>
|
||||||
@ -247,15 +244,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\exp_proto.h">
|
RelativePath="..\..\..\src\gpre\exp_proto.h">
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form__proto.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form_proto.h">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\gpre.h">
|
RelativePath="..\..\..\src\gpre\gpre.h">
|
||||||
</File>
|
</File>
|
||||||
|
@ -177,9 +177,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\msc.cpp">
|
RelativePath="..\..\..\src\gpre\msc.cpp">
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\noform.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\par.cpp">
|
RelativePath="..\..\..\src\gpre\par.cpp">
|
||||||
</File>
|
</File>
|
||||||
@ -248,15 +245,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\exp_proto.h">
|
RelativePath="..\..\..\src\gpre\exp_proto.h">
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form__proto.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form_proto.h">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\gpre.h">
|
RelativePath="..\..\..\src\gpre\gpre.h">
|
||||||
</File>
|
</File>
|
||||||
|
@ -174,9 +174,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\msc.cpp">
|
RelativePath="..\..\..\src\gpre\msc.cpp">
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\noform.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\par.cpp">
|
RelativePath="..\..\..\src\gpre\par.cpp">
|
||||||
</File>
|
</File>
|
||||||
@ -244,15 +241,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\exp_proto.h">
|
RelativePath="..\..\..\src\gpre\exp_proto.h">
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form__proto.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\gpre\form_proto.h">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\gpre\gpre.h">
|
RelativePath="..\..\..\src\gpre\gpre.h">
|
||||||
</File>
|
</File>
|
||||||
|
@ -167,9 +167,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\qli\mov.cpp">
|
RelativePath="..\..\..\src\qli\mov.cpp">
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\qli\noform.cpp">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\qli\parse.cpp">
|
RelativePath="..\..\..\src\qli\parse.cpp">
|
||||||
</File>
|
</File>
|
||||||
@ -287,12 +284,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\qli\expan_proto.h">
|
RelativePath="..\..\..\src\qli\expan_proto.h">
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\qli\form.h">
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\src\qli\form_proto.h">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\src\qli\forma_proto.h">
|
RelativePath="..\..\..\src\qli\forma_proto.h">
|
||||||
</File>
|
</File>
|
||||||
|
@ -1013,67 +1013,3 @@ const short SQL_DOUBLE = 480;
|
|||||||
const short SQL_DATE = 510;
|
const short SQL_DATE = 510;
|
||||||
const short SQL_BLOB = 520;
|
const short SQL_BLOB = 520;
|
||||||
|
|
||||||
/* Forms Package definitions */
|
|
||||||
|
|
||||||
/* Map definition block definitions */
|
|
||||||
|
|
||||||
const char PYXIS_MAP_VERSION1 = 1;
|
|
||||||
const char PYXIS_MAP_FIELD2 = 2;
|
|
||||||
const char PYXIS_MAP_FIELD1 = 3;
|
|
||||||
const char PYXIS_MAP_MESSAGE = 4;
|
|
||||||
const char PYXIS_MAP_TERMINATOR = 5;
|
|
||||||
const char PYXIS_MAP_TERMINATING_FIELD = 6;
|
|
||||||
const char PYXIS_MAP_OPAQUE = 7;
|
|
||||||
const char PYXIS_MAP_TRANSPARENT = 8;
|
|
||||||
const char PYXIS_MAP_TAG = 9;
|
|
||||||
const char PYXIS_MAP_SUB_FORM = 10;
|
|
||||||
const char PYXIS_MAP_ITEM_INDEX = 11;
|
|
||||||
const char PYXIS_MAP_SUB_FIELD = 12;
|
|
||||||
const char PYXIS_MAP_END = -1;
|
|
||||||
|
|
||||||
/* Field option flags for display options */
|
|
||||||
|
|
||||||
const char PYXIS_OPT_DISPLAY = 1;
|
|
||||||
const char PYXIS_OPT_UPDATE = 2;
|
|
||||||
const char PYXIS_OPT_WAKEUP = 4;
|
|
||||||
const char PYXIS_OPT_POSITION = 8;
|
|
||||||
|
|
||||||
/* Field option values following display */
|
|
||||||
|
|
||||||
const char PYXIS_OPT_NULL = 1;
|
|
||||||
const char PYXIS_OPT_DEFAULT = 2;
|
|
||||||
const char PYXIS_OPT_INITIAL = 3;
|
|
||||||
const char PYXIS_OPT_USER_DATA = 4;
|
|
||||||
|
|
||||||
/* Pseudo key definitions */
|
|
||||||
|
|
||||||
const char PYXIS_KEY_DELETE = 127;
|
|
||||||
const char PYXIS_KEY_UP = 128;
|
|
||||||
const char PYXIS_KEY_DOWN = 129;
|
|
||||||
const char PYXIS_KEY_RIGHT = 130;
|
|
||||||
const char PYXIS_KEY_LEFT = 131;
|
|
||||||
const char PYXIS_KEY_PF1 = 132;
|
|
||||||
const char PYXIS_KEY_PF2 = 133;
|
|
||||||
const char PYXIS_KEY_PF3 = 134;
|
|
||||||
const char PYXIS_KEY_PF4 = 135;
|
|
||||||
const char PYXIS_KEY_PF5 = 136;
|
|
||||||
const char PYXIS_KEY_PF6 = 137;
|
|
||||||
const char PYXIS_KEY_PF7 = 138;
|
|
||||||
const char PYXIS_KEY_PF8 = 139;
|
|
||||||
const char PYXIS_KEY_PF9 = 140;
|
|
||||||
const char PYXIS_KEY_ENTER = 141;
|
|
||||||
const char PYXIS_KEY_SCROLL_TOP = 146;
|
|
||||||
const char PYXIS_KEY_SCROLL_BOTTOM = 147;
|
|
||||||
|
|
||||||
/* Menu definition stuff */
|
|
||||||
|
|
||||||
const char PYXIS_MENU_VERSION1 = 1;
|
|
||||||
const char PYXIS_MENU_LABEL = 2;
|
|
||||||
const char PYXIS_MENU_ENTREE = 3;
|
|
||||||
const char PYXIS_MENU_OPAQUE = 4;
|
|
||||||
const char PYXIS_MENU_TRANSPARENT = 5;
|
|
||||||
const char PYXIS_MENU_HORIZONTAL = 6;
|
|
||||||
const char PYXIS_MENU_VERTICAL = 7;
|
|
||||||
const char PYXIS_MENU_END = -1;
|
|
||||||
|
|
||||||
|
|
||||||
|
167
src/jrd/gdsold.h
167
src/jrd/gdsold.h
@ -1939,172 +1939,5 @@ const unsigned char gds_interp_jpn_euc = 6;
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef PYXIS
|
|
||||||
/*****************************/
|
|
||||||
/* Forms Package definitions */
|
|
||||||
/*****************************/
|
|
||||||
|
|
||||||
/************************************/
|
|
||||||
/* Map definition block definitions */
|
|
||||||
/************************************/
|
|
||||||
|
|
||||||
#ifndef __cplusplus /* c definitions */
|
|
||||||
|
|
||||||
#define PYXIS__MAP_VERSION1 1
|
|
||||||
#define PYXIS__MAP_FIELD2 2
|
|
||||||
#define PYXIS__MAP_FIELD1 3
|
|
||||||
#define PYXIS__MAP_MESSAGE 4
|
|
||||||
#define PYXIS__MAP_TERMINATOR 5
|
|
||||||
#define PYXIS__MAP_TERMINATING_FIELD 6
|
|
||||||
#define PYXIS__MAP_OPAQUE 7
|
|
||||||
#define PYXIS__MAP_TRANSPARENT 8
|
|
||||||
#define PYXIS__MAP_TAG 9
|
|
||||||
#define PYXIS__MAP_SUB_FORM 10
|
|
||||||
#define PYXIS__MAP_ITEM_INDEX 11
|
|
||||||
#define PYXIS__MAP_SUB_FIELD 12
|
|
||||||
#define PYXIS__MAP_END -1
|
|
||||||
|
|
||||||
#else /* c++ definitions */
|
|
||||||
|
|
||||||
const char PYXIS_MAP_VERSION1 = 1;
|
|
||||||
const char PYXIS_MAP_FIELD2 = 2;
|
|
||||||
const char PYXIS_MAP_FIELD1 = 3;
|
|
||||||
const char PYXIS_MAP_MESSAGE = 4;
|
|
||||||
const char PYXIS_MAP_TERMINATOR = 5;
|
|
||||||
const char PYXIS_MAP_TERMINATING_FIELD = 6;
|
|
||||||
const char PYXIS_MAP_OPAQUE = 7;
|
|
||||||
const char PYXIS_MAP_TRANSPARENT = 8;
|
|
||||||
const char PYXIS_MAP_TAG = 9;
|
|
||||||
const char PYXIS_MAP_SUB_FORM = 10;
|
|
||||||
const char PYXIS_MAP_ITEM_INDEX = 11;
|
|
||||||
const char PYXIS_MAP_SUB_FIELD = 12;
|
|
||||||
const char PYXIS_MAP_END = -1;
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/******************************************/
|
|
||||||
/* Field option flags for display options */
|
|
||||||
/******************************************/
|
|
||||||
|
|
||||||
#ifndef __cplusplus /* c definitions */
|
|
||||||
|
|
||||||
#define PYXIS__OPT_DISPLAY 1
|
|
||||||
#define PYXIS__OPT_UPDATE 2
|
|
||||||
#define PYXIS__OPT_WAKEUP 4
|
|
||||||
#define PYXIS__OPT_POSITION 8
|
|
||||||
|
|
||||||
#else /* c++ definitions */
|
|
||||||
|
|
||||||
const unsigned char PYXIS_OPT_DISPLAY = 1;
|
|
||||||
const unsigned char PYXIS_OPT_UPDATE = 2;
|
|
||||||
const unsigned char PYXIS_OPT_WAKEUP = 4;
|
|
||||||
const unsigned char PYXIS_OPT_POSITION = 8;
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/*****************************************/
|
|
||||||
/* Field option values following display */
|
|
||||||
/*****************************************/
|
|
||||||
|
|
||||||
#ifndef __cplusplus /* c definitions */
|
|
||||||
|
|
||||||
#define PYXIS__OPT_NULL 1
|
|
||||||
#define PYXIS__OPT_DEFAULT 2
|
|
||||||
#define PYXIS__OPT_INITIAL 3
|
|
||||||
#define PYXIS__OPT_USER_DATA 4
|
|
||||||
|
|
||||||
#else /* c++ definitions */
|
|
||||||
|
|
||||||
const unsigned char PYXIS_OPT_NULL = 1;
|
|
||||||
const unsigned char PYXIS_OPT_DEFAULT = 2;
|
|
||||||
const unsigned char PYXIS_OPT_INITIAL = 3;
|
|
||||||
const unsigned char PYXIS_OPT_USER_DATA = 4;
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/**************************/
|
|
||||||
/* Pseudo key definitions */
|
|
||||||
/**************************/
|
|
||||||
|
|
||||||
#ifndef __cplusplus /* c definitions */
|
|
||||||
|
|
||||||
#define PYXIS__KEY_DELETE 127
|
|
||||||
#define PYXIS__KEY_UP 128
|
|
||||||
#define PYXIS__KEY_DOWN 129
|
|
||||||
#define PYXIS__KEY_RIGHT 130
|
|
||||||
#define PYXIS__KEY_LEFT 131
|
|
||||||
#define PYXIS__KEY_PF1 132
|
|
||||||
#define PYXIS__KEY_PF2 133
|
|
||||||
#define PYXIS__KEY_PF3 134
|
|
||||||
#define PYXIS__KEY_PF4 135
|
|
||||||
#define PYXIS__KEY_PF5 136
|
|
||||||
#define PYXIS__KEY_PF6 137
|
|
||||||
#define PYXIS__KEY_PF7 138
|
|
||||||
#define PYXIS__KEY_PF8 139
|
|
||||||
#define PYXIS__KEY_PF9 140
|
|
||||||
#define PYXIS__KEY_ENTER 141
|
|
||||||
#define PYXIS__KEY_SCROLL_TOP 146
|
|
||||||
#define PYXIS__KEY_SCROLL_BOTTOM 147
|
|
||||||
|
|
||||||
#else /* c++ definitions */
|
|
||||||
|
|
||||||
const unsigned char PYXIS_KEY_DELETE = 127;
|
|
||||||
const unsigned char PYXIS_KEY_UP = 128;
|
|
||||||
const unsigned char PYXIS_KEY_DOWN = 129;
|
|
||||||
const unsigned char PYXIS_KEY_RIGHT = 130;
|
|
||||||
const unsigned char PYXIS_KEY_LEFT = 131;
|
|
||||||
const unsigned char PYXIS_KEY_PF1 = 132;
|
|
||||||
const unsigned char PYXIS_KEY_PF2 = 133;
|
|
||||||
const unsigned char PYXIS_KEY_PF3 = 134;
|
|
||||||
const unsigned char PYXIS_KEY_PF4 = 135;
|
|
||||||
const unsigned char PYXIS_KEY_PF5 = 136;
|
|
||||||
const unsigned char PYXIS_KEY_PF6 = 137;
|
|
||||||
const unsigned char PYXIS_KEY_PF7 = 138;
|
|
||||||
const unsigned char PYXIS_KEY_PF8 = 139;
|
|
||||||
const unsigned char PYXIS_KEY_PF9 = 140;
|
|
||||||
const unsigned char PYXIS_KEY_ENTER = 141;
|
|
||||||
const unsigned char PYXIS_KEY_SCROLL_TOP = 146;
|
|
||||||
const unsigned char PYXIS_KEY_SCROLL_BOTTOM = 147;
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/*************************/
|
|
||||||
/* Menu definition stuff */
|
|
||||||
/*************************/
|
|
||||||
|
|
||||||
#ifndef __cplusplus /* c definitions */
|
|
||||||
|
|
||||||
#define PYXIS__MENU_VERSION1 1
|
|
||||||
#define PYXIS__MENU_LABEL 2
|
|
||||||
#define PYXIS__MENU_ENTREE 3
|
|
||||||
#define PYXIS__MENU_OPAQUE 4
|
|
||||||
#define PYXIS__MENU_TRANSPARENT 5
|
|
||||||
#define PYXIS__MENU_HORIZONTAL 6
|
|
||||||
#define PYXIS__MENU_VERTICAL 7
|
|
||||||
#define PYXIS__MENU_END -1
|
|
||||||
|
|
||||||
#else /* c++ definitions */
|
|
||||||
|
|
||||||
const unsigned char PYXIS_MENU_VERSION1 = 1;
|
|
||||||
const unsigned char PYXIS_MENU_LABEL = 2;
|
|
||||||
const unsigned char PYXIS_MENU_ENTREE = 3;
|
|
||||||
const unsigned char PYXIS_MENU_OPAQUE = 4;
|
|
||||||
const unsigned char PYXIS_MENU_TRANSPARENT = 5;
|
|
||||||
const unsigned char PYXIS_MENU_HORIZONTAL = 6;
|
|
||||||
const unsigned char PYXIS_MENU_VERTICAL = 7;
|
|
||||||
/* Opps, can't set an unsigned value to -1. Used to be:
|
|
||||||
* const unsigned char PYXIS_MENU_END = -1;
|
|
||||||
*/
|
|
||||||
const unsigned char PYXIS_MENU_END = 0xFF;
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* _JRD_GDSOLD_H_ */
|
#endif /* _JRD_GDSOLD_H_ */
|
||||||
|
|
||||||
|
@ -96,75 +96,13 @@ entry(gds__attach_database)
|
|||||||
entry(gds__open)
|
entry(gds__open)
|
||||||
entry(gds__prepare)
|
entry(gds__prepare)
|
||||||
entry(gds__to_sqlda)
|
entry(gds__to_sqlda)
|
||||||
entry(PYXIS_BOX)
|
|
||||||
entry(PYXIS_CLONE)
|
|
||||||
entry(PYXIS_CREATE_ENTREE)
|
|
||||||
entry(PYXIS_CREATE_OBJECT)
|
|
||||||
entry(PYXIS_find_index)
|
|
||||||
entry(PYXIS_DEFINE_FORMS_RELATION)
|
|
||||||
entry(PYXIS_DELETE_ATTRIBUTE)
|
|
||||||
entry(PYXIS_DELETE_FORM)
|
|
||||||
entry(PYXIS_DELETE_NAMED_ATTRIBUTE)
|
|
||||||
entry(PYXIS_DELETE_OBJECT)
|
|
||||||
entry(pyxis__insert)
|
|
||||||
entry(pyxis__fetch)
|
|
||||||
entry(PYXIS_DUMP)
|
|
||||||
entry(PYXIS_DUMP_LENGTH)
|
|
||||||
entry(PYXIS_EDIT)
|
|
||||||
entry(PYXIS_FIND_OBJECT)
|
|
||||||
entry(PYXIS_FORMAT_FORM)
|
|
||||||
entry(PYXIS_FORMAT_MENU)
|
|
||||||
entry(PYXIS_GET_ATTRIBUTE)
|
|
||||||
entry(PYXIS_GET_ATTRIBUTE_VALUE)
|
|
||||||
entry(PYXIS_GET_CHAR)
|
|
||||||
entry(PYXIS_GET_DATA)
|
|
||||||
entry(PYXIS_GET_STRING)
|
|
||||||
entry(PYXIS_GET_VALUE)
|
|
||||||
entry(pyxis__compile_sub_map)
|
|
||||||
entry(PYXIS_MENU)
|
|
||||||
entry(PYXIS_MOVE)
|
|
||||||
entry(PYXIS_NAVIGATE)
|
|
||||||
entry(PYXIS_POP_FORM)
|
|
||||||
entry(PYXIS_PUSH_FORM)
|
|
||||||
entry(PYXIS_PUSH_TAG)
|
|
||||||
entry(PYXIS_PUT_ATTRIBUTE)
|
|
||||||
entry(PYXIS_PUT_DESC)
|
|
||||||
entry(PYXIS_PUT_SEGMENT)
|
|
||||||
entry(PYXIS_REFERENCE)
|
|
||||||
entry(PYXIS_RELATION_FIELDS)
|
|
||||||
entry(PYXIS_RELATION_FORM)
|
|
||||||
entry(PYXIS_REPLACE_ATTRIBUTE)
|
|
||||||
entry(PYXIS_SELECT)
|
|
||||||
entry(PYXIS_SET_DISPLAY_ATTRIBUTE)
|
|
||||||
entry(PYXIS_SET_FIELD_OPTIONS)
|
|
||||||
entry(PYXIS_STORE_FORM)
|
|
||||||
entry(PYXIS_UPDATE)
|
|
||||||
entry(PYXIS_BUGCHECK)
|
|
||||||
entry(PYXIS_COMPUTE_SIZE)
|
|
||||||
entry(PYXIS_ERROR)
|
|
||||||
entry(PYXIS_LOAD)
|
|
||||||
entry(PYXIS_position)
|
|
||||||
entry(PYXIS_find_field)
|
|
||||||
entry(pyxis__load_form)
|
|
||||||
entry(pyxis__drive_form)
|
|
||||||
entry(pyxis__compile_map)
|
|
||||||
entry(pyxis__create_window)
|
|
||||||
entry(pyxis__delete_window)
|
|
||||||
entry(pyxis__pop_window)
|
|
||||||
entry(pyxis__suspend_window)
|
|
||||||
entry(pyxis__menu)
|
|
||||||
entry(pyxis__reset_form)
|
|
||||||
entry(gds__put_error)
|
entry(gds__put_error)
|
||||||
entry(pyxis__delete)
|
|
||||||
entry(gds__blob_size)
|
entry(gds__blob_size)
|
||||||
entry(gds__attach_database_d)
|
entry(gds__attach_database_d)
|
||||||
entry(gds__execute_immediate_d)
|
entry(gds__execute_immediate_d)
|
||||||
entry(gds__prepare_d)
|
entry(gds__prepare_d)
|
||||||
entry(gds__fetch_a)
|
entry(gds__fetch_a)
|
||||||
entry(gds__dsql_finish)
|
entry(gds__dsql_finish)
|
||||||
entry(PYXIS_GET_UPDATED)
|
|
||||||
entry(PYXIS_TRACE_IN)
|
|
||||||
entry(PYXIS_TRACE_OUT)
|
|
||||||
entry(gds__cancel_events)
|
entry(gds__cancel_events)
|
||||||
entry(gds__commit_retaining)
|
entry(gds__commit_retaining)
|
||||||
entry(gds__create_blob2)
|
entry(gds__create_blob2)
|
||||||
@ -183,13 +121,8 @@ entry(gds__attach_database)
|
|||||||
entry(gds__msg_close)
|
entry(gds__msg_close)
|
||||||
entry(gds__msg_put)
|
entry(gds__msg_put)
|
||||||
entry(gds__parse_bpb)
|
entry(gds__parse_bpb)
|
||||||
entry(pyxis__drive_menu)
|
|
||||||
entry(pyxis__get_entree)
|
|
||||||
entry(pyxis__initialize_menu)
|
|
||||||
entry(pyxis__put_entree)
|
|
||||||
entry(gds__get_slice)
|
entry(gds__get_slice)
|
||||||
entry(gds__put_slice)
|
entry(gds__put_slice)
|
||||||
entry(PYXIS_GET_KEYNAME)
|
|
||||||
entry(gds__prefix)
|
entry(gds__prefix)
|
||||||
entry(gds__validate_lib_path)
|
entry(gds__validate_lib_path)
|
||||||
entry(gds__event_wait)
|
entry(gds__event_wait)
|
||||||
@ -291,24 +224,6 @@ entry(gds__attach_database)
|
|||||||
entry(isc_array_get_slice)
|
entry(isc_array_get_slice)
|
||||||
entry(isc_array_put_slice)
|
entry(isc_array_put_slice)
|
||||||
|
|
||||||
entry(isc_compile_map)
|
|
||||||
entry(isc_compile_menu)
|
|
||||||
entry(isc_compile_sub_map)
|
|
||||||
entry(isc_create_window)
|
|
||||||
entry(isc_delete_window)
|
|
||||||
entry(isc_drive_form)
|
|
||||||
entry(isc_drive_menu)
|
|
||||||
entry(isc_form_delete)
|
|
||||||
entry(isc_form_fetch)
|
|
||||||
entry(isc_form_insert)
|
|
||||||
entry(isc_get_entree)
|
|
||||||
entry(isc_initialize_menu)
|
|
||||||
entry(isc_load_form)
|
|
||||||
entry(isc_menu)
|
|
||||||
entry(isc_pop_window)
|
|
||||||
entry(isc_put_entree)
|
|
||||||
entry(isc_reset_form)
|
|
||||||
entry(isc_suspend_window)
|
|
||||||
entry(isc_baddress)
|
entry(isc_baddress)
|
||||||
entry(isc_execute_immediate_d)
|
entry(isc_execute_immediate_d)
|
||||||
entry(isc_prepare_d)
|
entry(isc_prepare_d)
|
||||||
|
@ -493,65 +493,6 @@ static STUFF stuff[] = {
|
|||||||
ITEM(SQL_DATE, SQL, DTYPE)
|
ITEM(SQL_DATE, SQL, DTYPE)
|
||||||
ITEM(SQL_BLOB, SQL, DTYPE)
|
ITEM(SQL_BLOB, SQL, DTYPE)
|
||||||
|
|
||||||
/* Forms Package definitions */
|
|
||||||
/* Map definition block definitions */
|
|
||||||
ITEM(PYXIS__MAP_VERSION1, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_FIELD2, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_FIELD1, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_MESSAGE, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_TERMINATOR, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_TERMINATING_FIELD, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_OPAQUE, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_TRANSPARENT, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_TAG, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_SUB_FORM, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_ITEM_INDEX, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_SUB_FIELD, PYXIS, MAP)
|
|
||||||
ITEM(PYXIS__MAP_END, PYXIS, MAP)
|
|
||||||
|
|
||||||
/* Field option flags for display options */
|
|
||||||
ITEM(PYXIS__OPT_DISPLAY, PYXIS, DISPLAY)
|
|
||||||
ITEM(PYXIS__OPT_UPDATE, PYXIS, DISPLAY)
|
|
||||||
ITEM(PYXIS__OPT_WAKEUP, PYXIS, DISPLAY)
|
|
||||||
ITEM(PYXIS__OPT_POSITION, PYXIS, DISPLAY)
|
|
||||||
|
|
||||||
/* Field option values following display */
|
|
||||||
ITEM(PYXIS__OPT_NULL, PYXIS, VALUE) /* No data: zero/blank filled */
|
|
||||||
ITEM(PYXIS__OPT_DEFAULT, PYXIS, VALUE) /* Defaulted data */
|
|
||||||
ITEM(PYXIS__OPT_INITIAL, PYXIS, VALUE) /* Program initialized valued */
|
|
||||||
ITEM(PYXIS__OPT_USER_DATA, PYXIS, VALUE)
|
|
||||||
|
|
||||||
|
|
||||||
/* User supplied data */
|
|
||||||
/* Pseudo key definitions */
|
|
||||||
ITEM(PYXIS__KEY_DELETE, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_UP, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_DOWN, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_RIGHT, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_LEFT, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF1, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF2, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF3, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF4, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF5, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF6, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF7, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF8, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_PF9, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_ENTER, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_SCROLL_TOP, PYXIS, KEY)
|
|
||||||
ITEM(PYXIS__KEY_SCROLL_BOTTOM, PYXIS, KEY)
|
|
||||||
|
|
||||||
/* Menu definition stuff */
|
|
||||||
ITEM(PYXIS__MENU_VERSION1, PYXIS, MENU)
|
|
||||||
ITEM(PYXIS__MENU_LABEL, PYXIS, MENU)
|
|
||||||
ITEM(PYXIS__MENU_ENTREE, PYXIS, MENU)
|
|
||||||
ITEM(PYXIS__MENU_OPAQUE, PYXIS, MENU)
|
|
||||||
ITEM(PYXIS__MENU_TRANSPARENT, PYXIS, MENU)
|
|
||||||
ITEM(PYXIS__MENU_HORIZONTAL, PYXIS, MENU)
|
|
||||||
ITEM(PYXIS__MENU_VERTICAL, PYXIS, MENU)
|
|
||||||
ITEM(PYXIS__MENU_END, PYXIS, MENU)
|
|
||||||
|
|
||||||
0, 0, 0, 0
|
0, 0, 0, 0
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -40,12 +40,6 @@ define field MAX_NUMBER short;
|
|||||||
define field MODULE varying [32];
|
define field MODULE varying [32];
|
||||||
define field NUMBER short;
|
define field NUMBER short;
|
||||||
define field OLD_SEQUENCE short;
|
define field OLD_SEQUENCE short;
|
||||||
define field PYXIS$FORM blob segment_length 80
|
|
||||||
system_flag 3;
|
|
||||||
define field PYXIS$FORM_NAME char [31]
|
|
||||||
system_flag 3;
|
|
||||||
define field PYXIS$FORM_TYPE char [16]
|
|
||||||
system_flag 3;
|
|
||||||
define field QLI$PROCEDURE blob segment_length 80 sub_type text
|
define field QLI$PROCEDURE blob segment_length 80 sub_type text
|
||||||
system_flag 2;
|
system_flag 2;
|
||||||
define field QLI$PROCEDURE_NAME char [31]
|
define field QLI$PROCEDURE_NAME char [31]
|
||||||
@ -108,15 +102,6 @@ define relation MESSAGES
|
|||||||
TRANS_NOTES,
|
TRANS_NOTES,
|
||||||
CODE computed by (fac_code * 10000 + number) position 0;
|
CODE computed by (fac_code * 10000 + number) position 0;
|
||||||
|
|
||||||
define relation PYXIS$FORMS
|
|
||||||
system_flag 3
|
|
||||||
PYXIS$FORM_NAME position 1
|
|
||||||
system_flag 3,
|
|
||||||
PYXIS$FORM_TYPE position 2
|
|
||||||
system_flag 3,
|
|
||||||
PYXIS$FORM position 3
|
|
||||||
system_flag 3;
|
|
||||||
|
|
||||||
define relation QLI$PROCEDURES
|
define relation QLI$PROCEDURES
|
||||||
system_flag 2
|
system_flag 2
|
||||||
QLI$PROCEDURE_NAME position 0
|
QLI$PROCEDURE_NAME position 0
|
||||||
@ -195,10 +180,6 @@ define index MSG_1 for MESSAGES unique
|
|||||||
FAC_CODE,
|
FAC_CODE,
|
||||||
NUMBER;
|
NUMBER;
|
||||||
|
|
||||||
define index PYXIS$INDEX for PYXIS$FORMS unique
|
|
||||||
inactive
|
|
||||||
PYXIS$FORM_NAME;
|
|
||||||
|
|
||||||
define index SYM1 for SYMBOLS
|
define index SYM1 for SYMBOLS
|
||||||
CLASS,
|
CLASS,
|
||||||
TYPE;
|
TYPE;
|
||||||
|
@ -51,10 +51,5 @@ BLKDEF (type_map, map, 0)
|
|||||||
BLKDEF (type_qpr, qpr, 0)
|
BLKDEF (type_qpr, qpr, 0)
|
||||||
BLKDEF (type_qfn, qfn, 0)
|
BLKDEF (type_qfn, qfn, 0)
|
||||||
BLKDEF (type_qfl, qfl, 0)
|
BLKDEF (type_qfl, qfl, 0)
|
||||||
#ifdef PYXIS
|
|
||||||
BLKDEF (type_frm, frm, 1)
|
|
||||||
BLKDEF (type_ffl, ffl, 1)
|
|
||||||
BLKDEF (type_men, men, 1)
|
|
||||||
#endif
|
|
||||||
BLKDEF (type_fun, fun, sizeof (((FUN) NULL)->fun_arg[0]))
|
BLKDEF (type_fun, fun, sizeof (((FUN) NULL)->fun_arg[0]))
|
||||||
BLKDEF (type_rlb, rlb, 0) /* Request language block */
|
BLKDEF (type_rlb, rlb, 0) /* Request language block */
|
||||||
|
@ -27,7 +27,6 @@
|
|||||||
#include "../qli/compile.h"
|
#include "../qli/compile.h"
|
||||||
#include "../qli/exe.h"
|
#include "../qli/exe.h"
|
||||||
#include "../qli/report.h"
|
#include "../qli/report.h"
|
||||||
#include "../qli/form.h"
|
|
||||||
#include "../jrd/intl.h"
|
#include "../jrd/intl.h"
|
||||||
#include "../qli/all_proto.h"
|
#include "../qli/all_proto.h"
|
||||||
#include "../qli/compi_proto.h"
|
#include "../qli/compi_proto.h"
|
||||||
@ -296,11 +295,7 @@ static QLI_NOD compile_assignment( QLI_NOD node, QLI_REQ request, int statement_
|
|||||||
/* If the assignment is to a variable, the assignment is
|
/* If the assignment is to a variable, the assignment is
|
||||||
completely local */
|
completely local */
|
||||||
|
|
||||||
if (to->nod_type == nod_variable
|
if (to->nod_type == nod_variable) {
|
||||||
#ifdef PYXIS
|
|
||||||
|| to->nod_type == nod_form_field
|
|
||||||
#endif
|
|
||||||
) {
|
|
||||||
statement_internal = FALSE;
|
statement_internal = FALSE;
|
||||||
node->nod_flags |= NOD_local;
|
node->nod_flags |= NOD_local;
|
||||||
}
|
}
|
||||||
@ -674,16 +669,6 @@ static QLI_NOD compile_expression( QLI_NOD node, QLI_REQ request, int internal_f
|
|||||||
case nod_variable:
|
case nod_variable:
|
||||||
field = (QLI_FLD) node->nod_arg[e_fld_field];
|
field = (QLI_FLD) node->nod_arg[e_fld_field];
|
||||||
node->nod_desc.dsc_address = field->fld_data;
|
node->nod_desc.dsc_address = field->fld_data;
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_field:
|
|
||||||
make_descriptor(node, &node->nod_desc);
|
|
||||||
if (internal_flag) {
|
|
||||||
node->nod_export = parm = make_parameter(request->req_send, node);
|
|
||||||
parm->par_value = node;
|
|
||||||
parm->par_desc = node->nod_desc;
|
|
||||||
}
|
|
||||||
return node;
|
|
||||||
#endif
|
|
||||||
case nod_upcase:
|
case nod_upcase:
|
||||||
value = node->nod_arg[0];
|
value = node->nod_arg[0];
|
||||||
node->nod_arg[0] = compile_field(value, request, internal_flag);
|
node->nod_arg[0] = compile_field(value, request, internal_flag);
|
||||||
@ -1380,16 +1365,7 @@ static QLI_NOD compile_statement( QLI_NOD node, QLI_REQ request, int internal_fl
|
|||||||
|
|
||||||
case nod_if:
|
case nod_if:
|
||||||
return compile_if(node, request, internal_flag);
|
return compile_if(node, request, internal_flag);
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_for:
|
|
||||||
compile_statement(node->nod_arg[e_ffr_statement], request, FALSE);
|
|
||||||
return node;
|
|
||||||
|
|
||||||
case nod_form_update:
|
|
||||||
if (node->nod_arg[e_fup_tag])
|
|
||||||
compile_expression(node->nod_arg[e_fup_tag], 0, FALSE);
|
|
||||||
return node;
|
|
||||||
#endif
|
|
||||||
case nod_abort:
|
case nod_abort:
|
||||||
if (node->nod_count)
|
if (node->nod_count)
|
||||||
compile_expression(node->nod_arg[0], 0, FALSE);
|
compile_expression(node->nod_arg[0], 0, FALSE);
|
||||||
@ -1609,10 +1585,6 @@ static int computable( QLI_NOD node, QLI_REQ request)
|
|||||||
case nod_edit_blob:
|
case nod_edit_blob:
|
||||||
case nod_prompt:
|
case nod_prompt:
|
||||||
case nod_variable:
|
case nod_variable:
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_field:
|
|
||||||
case nod_form_for:
|
|
||||||
#endif
|
|
||||||
case nod_format:
|
case nod_format:
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
@ -1724,9 +1696,6 @@ static void make_descriptor( QLI_NOD node, DSC * desc)
|
|||||||
QLI_FLD field;
|
QLI_FLD field;
|
||||||
PAR parameter;
|
PAR parameter;
|
||||||
MAP map;
|
MAP map;
|
||||||
#ifdef PYXIS
|
|
||||||
FFL ffield;
|
|
||||||
#endif
|
|
||||||
FUN function;
|
FUN function;
|
||||||
USHORT dtype;
|
USHORT dtype;
|
||||||
|
|
||||||
@ -1896,14 +1865,7 @@ static void make_descriptor( QLI_NOD node, DSC * desc)
|
|||||||
case nod_negate:
|
case nod_negate:
|
||||||
make_descriptor(node->nod_arg[0], desc);
|
make_descriptor(node->nod_arg[0], desc);
|
||||||
return;
|
return;
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_field:
|
|
||||||
ffield = (FFL) node->nod_arg[e_ffl_field];
|
|
||||||
desc->dsc_dtype = ffield->ffl_dtype;
|
|
||||||
desc->dsc_scale = ffield->ffl_scale;
|
|
||||||
desc->dsc_length = ffield->ffl_length;
|
|
||||||
return;
|
|
||||||
#endif
|
|
||||||
case nod_user_name:
|
case nod_user_name:
|
||||||
desc->dsc_dtype = dtype_varying;
|
desc->dsc_dtype = dtype_varying;
|
||||||
desc->dsc_scale = 0;
|
desc->dsc_scale = 0;
|
||||||
|
@ -43,7 +43,6 @@
|
|||||||
#include "../qli/compi_proto.h"
|
#include "../qli/compi_proto.h"
|
||||||
#include "../qli/err_proto.h"
|
#include "../qli/err_proto.h"
|
||||||
#include "../qli/exe_proto.h"
|
#include "../qli/exe_proto.h"
|
||||||
#include "../qli/form_proto.h"
|
|
||||||
#include "../qli/expan_proto.h"
|
#include "../qli/expan_proto.h"
|
||||||
#include "../qli/gener_proto.h"
|
#include "../qli/gener_proto.h"
|
||||||
#include "../qli/help_proto.h"
|
#include "../qli/help_proto.h"
|
||||||
@ -75,9 +74,6 @@ TEXT *QLI_error;
|
|||||||
bool sw_verify;
|
bool sw_verify;
|
||||||
bool sw_trace;
|
bool sw_trace;
|
||||||
USHORT sw_buffers;
|
USHORT sw_buffers;
|
||||||
#ifdef PYXIS
|
|
||||||
USHORT sw_forms;
|
|
||||||
#endif
|
|
||||||
USHORT QLI_lines = 60, QLI_prompt_count, QLI_reprompt, QLI_name_columns = 0;
|
USHORT QLI_lines = 60, QLI_prompt_count, QLI_reprompt, QLI_name_columns = 0;
|
||||||
|
|
||||||
/* Let's define the default number of columns on a machine by machine basis */
|
/* Let's define the default number of columns on a machine by machine basis */
|
||||||
@ -311,15 +307,8 @@ int CLIB_ROUTINE main( int argc, char **argv)
|
|||||||
temp = QLI_default_pool = ALLQ_pool();
|
temp = QLI_default_pool = ALLQ_pool();
|
||||||
flush_flag = process_statement(flush_flag);
|
flush_flag = process_statement(flush_flag);
|
||||||
ERRQ_pending();
|
ERRQ_pending();
|
||||||
#ifdef PYXIS
|
|
||||||
if (sw_forms)
|
|
||||||
FORM_reset();
|
|
||||||
#endif
|
|
||||||
ALLQ_rlpool(temp);
|
ALLQ_rlpool(temp);
|
||||||
}
|
}
|
||||||
#ifdef PYXIS
|
|
||||||
FORM_fini();
|
|
||||||
#endif
|
|
||||||
HELP_fini();
|
HELP_fini();
|
||||||
MET_shutdown();
|
MET_shutdown();
|
||||||
LEX_fini();
|
LEX_fini();
|
||||||
|
@ -67,16 +67,13 @@ typedef struct vcl {
|
|||||||
ULONG vcl_count;
|
ULONG vcl_count;
|
||||||
SLONG vcl_long[1];
|
SLONG vcl_long[1];
|
||||||
} *VCL;
|
} *VCL;
|
||||||
|
|
||||||
/* Database block */
|
/* Database block */
|
||||||
|
|
||||||
typedef struct dbb {
|
typedef struct dbb {
|
||||||
struct blk dbb_header;
|
struct blk dbb_header;
|
||||||
struct dbb *dbb_next; /* Next database in system */
|
struct dbb *dbb_next; /* Next database in system */
|
||||||
struct qli_rel *dbb_relations; /* Linked list of relations */
|
struct qli_rel *dbb_relations; /* Linked list of relations */
|
||||||
#ifdef PYXIS
|
|
||||||
struct frm *dbb_forms; /* Known forms in database */
|
|
||||||
#endif
|
|
||||||
struct fun *dbb_functions; /* Known functions in database */
|
struct fun *dbb_functions; /* Known functions in database */
|
||||||
FRBRD *dbb_handle; /* database handle */
|
FRBRD *dbb_handle; /* database handle */
|
||||||
FRBRD *dbb_transaction; /* transaction handle */
|
FRBRD *dbb_transaction; /* transaction handle */
|
||||||
@ -107,9 +104,6 @@ typedef struct dbb {
|
|||||||
#define DBB_procedures 1 /* Procedures relation found */
|
#define DBB_procedures 1 /* Procedures relation found */
|
||||||
#define DBB_active 2 /* Database is active in request */
|
#define DBB_active 2 /* Database is active in request */
|
||||||
#define DBB_updates 8 /* Updates in current transaction */
|
#define DBB_updates 8 /* Updates in current transaction */
|
||||||
#ifdef PYXIS
|
|
||||||
#define DBB_form_init 16 /* Forms are initialize for database */
|
|
||||||
#endif
|
|
||||||
#define DBB_prepared 32 /* User transaction has been prepared */
|
#define DBB_prepared 32 /* User transaction has been prepared */
|
||||||
|
|
||||||
/* Bits in dbb_capabilities */
|
/* Bits in dbb_capabilities */
|
||||||
@ -326,17 +320,12 @@ typedef enum nod_t {
|
|||||||
nod_report_loop,
|
nod_report_loop,
|
||||||
nod_repeat,
|
nod_repeat,
|
||||||
nod_if,
|
nod_if,
|
||||||
#ifdef PYXIS
|
|
||||||
nod_form_for,
|
|
||||||
nod_form_update,
|
|
||||||
#endif
|
|
||||||
nod_output,
|
nod_output,
|
||||||
nod_declare,
|
nod_declare,
|
||||||
nod_variable,
|
nod_variable,
|
||||||
nod_abort,
|
nod_abort,
|
||||||
nod_label,
|
nod_label,
|
||||||
nod_leave,
|
nod_leave,
|
||||||
nod_menu,
|
|
||||||
nod_sync,
|
nod_sync,
|
||||||
nod_commit_retaining,
|
nod_commit_retaining,
|
||||||
|
|
||||||
@ -345,7 +334,6 @@ typedef enum nod_t {
|
|||||||
nod_rse,
|
nod_rse,
|
||||||
nod_union,
|
nod_union,
|
||||||
nod_aggregate,
|
nod_aggregate,
|
||||||
nod_form,
|
|
||||||
|
|
||||||
nod_print_item,
|
nod_print_item,
|
||||||
nod_star, /* Bunch of items */
|
nod_star, /* Bunch of items */
|
||||||
@ -377,9 +365,6 @@ typedef enum nod_t {
|
|||||||
|
|
||||||
nod_reference,
|
nod_reference,
|
||||||
nod_field,
|
nod_field,
|
||||||
#ifdef PYXIS
|
|
||||||
nod_form_field,
|
|
||||||
#endif
|
|
||||||
nod_prompt,
|
nod_prompt,
|
||||||
nod_prompt2,
|
nod_prompt2,
|
||||||
nod_edit_blob,
|
nod_edit_blob,
|
||||||
@ -494,9 +479,6 @@ EXTERN CON QLI_matching_language;
|
|||||||
|
|
||||||
EXTERN USHORT QLI_eof, QLI_blr, QLI_skip_line, QLI_statistics, QLI_semi;
|
EXTERN USHORT QLI_eof, QLI_blr, QLI_skip_line, QLI_statistics, QLI_semi;
|
||||||
EXTERN USHORT QLI_abort, QLI_echo, QLI_trace;
|
EXTERN USHORT QLI_abort, QLI_echo, QLI_trace;
|
||||||
#ifdef PYXIS
|
|
||||||
EXTERN USHORT QLI_form, QLI_form_mode;
|
|
||||||
#endif
|
|
||||||
EXTERN USHORT QLI_count;
|
EXTERN USHORT QLI_count;
|
||||||
#ifdef DEV_BUILD
|
#ifdef DEV_BUILD
|
||||||
EXTERN USHORT QLI_explain;
|
EXTERN USHORT QLI_explain;
|
||||||
|
@ -31,7 +31,6 @@
|
|||||||
#include "../qli/err_proto.h"
|
#include "../qli/err_proto.h"
|
||||||
#include "../qli/eval_proto.h"
|
#include "../qli/eval_proto.h"
|
||||||
#include "../qli/exe_proto.h"
|
#include "../qli/exe_proto.h"
|
||||||
#include "../qli/form_proto.h"
|
|
||||||
#include "../qli/lex_proto.h"
|
#include "../qli/lex_proto.h"
|
||||||
#include "../qli/mov_proto.h"
|
#include "../qli/mov_proto.h"
|
||||||
#include "../qli/picst_proto.h"
|
#include "../qli/picst_proto.h"
|
||||||
@ -42,9 +41,6 @@ typedef vary VARY;
|
|||||||
|
|
||||||
|
|
||||||
extern USHORT QLI_prompt_count, QLI_reprompt;
|
extern USHORT QLI_prompt_count, QLI_reprompt;
|
||||||
#ifdef PYXIS
|
|
||||||
extern USHORT sw_forms;
|
|
||||||
#endif
|
|
||||||
static SLONG execute_any(QLI_NOD);
|
static SLONG execute_any(QLI_NOD);
|
||||||
static DSC *execute_concatenate(QLI_NOD, DSC *, DSC *);
|
static DSC *execute_concatenate(QLI_NOD, DSC *, DSC *);
|
||||||
static DSC *execute_edit(QLI_NOD);
|
static DSC *execute_edit(QLI_NOD);
|
||||||
@ -537,10 +533,6 @@ DSC *EVAL_value(QLI_NOD node)
|
|||||||
desc->dsc_length);
|
desc->dsc_length);
|
||||||
desc->dsc_length = p - desc->dsc_address;
|
desc->dsc_length = p - desc->dsc_address;
|
||||||
return desc;
|
return desc;
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_field:
|
|
||||||
return FORM_get_field(node);
|
|
||||||
#endif
|
|
||||||
case nod_user_name:
|
case nod_user_name:
|
||||||
IBERROR(31); // Msg31 user name is supported only in RSEs temporarily
|
IBERROR(31); // Msg31 user name is supported only in RSEs temporarily
|
||||||
|
|
||||||
@ -722,10 +714,7 @@ static DSC *execute_prompt( QLI_NOD node)
|
|||||||
USHORT reprompt;
|
USHORT reprompt;
|
||||||
VARY *data;
|
VARY *data;
|
||||||
int length, l;
|
int length, l;
|
||||||
#ifdef PYXIS
|
|
||||||
if (sw_forms)
|
|
||||||
FORM_reset();
|
|
||||||
#endif
|
|
||||||
ERRQ_pending();
|
ERRQ_pending();
|
||||||
reprompt = QLI_reprompt;
|
reprompt = QLI_reprompt;
|
||||||
desc = &node->nod_desc;
|
desc = &node->nod_desc;
|
||||||
|
@ -22,4 +22,3 @@
|
|||||||
#include "../qli/exe.h"
|
#include "../qli/exe.h"
|
||||||
#include "../qli/report.h"
|
#include "../qli/report.h"
|
||||||
#include "../qli/format.h"
|
#include "../qli/format.h"
|
||||||
#include "../qli/form.h"
|
|
||||||
|
@ -33,7 +33,6 @@
|
|||||||
#include "../qli/err_proto.h"
|
#include "../qli/err_proto.h"
|
||||||
#include "../qli/eval_proto.h"
|
#include "../qli/eval_proto.h"
|
||||||
#include "../qli/exe_proto.h"
|
#include "../qli/exe_proto.h"
|
||||||
#include "../qli/form_proto.h"
|
|
||||||
#include "../qli/forma_proto.h"
|
#include "../qli/forma_proto.h"
|
||||||
#include "../qli/mov_proto.h"
|
#include "../qli/mov_proto.h"
|
||||||
#include "../qli/repor_proto.h"
|
#include "../qli/repor_proto.h"
|
||||||
@ -156,15 +155,6 @@ void EXEC_execute( QLI_NOD node)
|
|||||||
case nod_for:
|
case nod_for:
|
||||||
execute_for(node);
|
execute_for(node);
|
||||||
return;
|
return;
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_for:
|
|
||||||
FORM_display(node);
|
|
||||||
return;
|
|
||||||
|
|
||||||
case nod_form_update:
|
|
||||||
FORM_update(node);
|
|
||||||
return;
|
|
||||||
#endif
|
|
||||||
case nod_list:
|
case nod_list:
|
||||||
ptr = node->nod_arg;
|
ptr = node->nod_arg;
|
||||||
for (i = 0; i < node->nod_count; i++)
|
for (i = 0; i < node->nod_count; i++)
|
||||||
@ -659,10 +649,7 @@ static int copy_blob( QLI_NOD value, PAR parameter)
|
|||||||
ISC_STATUS_ARRAY status_vector;
|
ISC_STATUS_ARRAY status_vector;
|
||||||
USHORT bpb_length, length, buffer_length;
|
USHORT bpb_length, length, buffer_length;
|
||||||
UCHAR bpb[20], *p, fixed_buffer[4096], *buffer;
|
UCHAR bpb[20], *p, fixed_buffer[4096], *buffer;
|
||||||
#ifdef PYXIS
|
|
||||||
if (value->nod_type == nod_form_field)
|
|
||||||
return FORM_get_blob(value, parameter);
|
|
||||||
#endif
|
|
||||||
/* If assignment isn't from a field, there isn't a blob copy, so
|
/* If assignment isn't from a field, there isn't a blob copy, so
|
||||||
do a dumb assignment. */
|
do a dumb assignment. */
|
||||||
|
|
||||||
@ -831,12 +818,6 @@ static void execute_assignment( QLI_NOD node)
|
|||||||
from->nod_desc.dsc_dtype == dtype_blob &&
|
from->nod_desc.dsc_dtype == dtype_blob &&
|
||||||
copy_blob(from, parameter)) return;
|
copy_blob(from, parameter)) return;
|
||||||
}
|
}
|
||||||
#ifdef PYXIS
|
|
||||||
else if (to->nod_type == nod_form_field) {
|
|
||||||
FORM_put_field(from, to);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
else
|
else
|
||||||
parameter = node->nod_import;
|
parameter = node->nod_import;
|
||||||
|
|
||||||
|
@ -72,9 +72,6 @@ typedef enum {
|
|||||||
CTX_RELATION,
|
CTX_RELATION,
|
||||||
CTX_VARIABLE,
|
CTX_VARIABLE,
|
||||||
CTX_AGGREGATE,
|
CTX_AGGREGATE,
|
||||||
#ifdef PYXIS
|
|
||||||
CTX_FORM,
|
|
||||||
#endif
|
|
||||||
CTX_UNION,
|
CTX_UNION,
|
||||||
CTX_STREAM
|
CTX_STREAM
|
||||||
} CTX_T;
|
} CTX_T;
|
||||||
|
@ -28,13 +28,11 @@
|
|||||||
#include "../qli/compile.h"
|
#include "../qli/compile.h"
|
||||||
#include "../qli/exe.h"
|
#include "../qli/exe.h"
|
||||||
#include "../qli/report.h"
|
#include "../qli/report.h"
|
||||||
#include "../qli/form.h"
|
|
||||||
#include "../qli/all_proto.h"
|
#include "../qli/all_proto.h"
|
||||||
#include "../qli/comma_proto.h"
|
#include "../qli/comma_proto.h"
|
||||||
#include "../qli/compi_proto.h"
|
#include "../qli/compi_proto.h"
|
||||||
#include "../qli/err_proto.h"
|
#include "../qli/err_proto.h"
|
||||||
#include "../qli/expan_proto.h"
|
#include "../qli/expan_proto.h"
|
||||||
#include "../qli/form_proto.h"
|
|
||||||
#include "../qli/help_proto.h"
|
#include "../qli/help_proto.h"
|
||||||
#include "../qli/meta_proto.h"
|
#include "../qli/meta_proto.h"
|
||||||
#include "../qli/show_proto.h"
|
#include "../qli/show_proto.h"
|
||||||
@ -59,22 +57,11 @@ static QLI_NOD expand_erase(SYN, LLS, LLS);
|
|||||||
static QLI_NOD expand_expression(SYN, LLS);
|
static QLI_NOD expand_expression(SYN, LLS);
|
||||||
static QLI_NOD expand_field(SYN, LLS, SYN);
|
static QLI_NOD expand_field(SYN, LLS, SYN);
|
||||||
static QLI_NOD expand_for(SYN, LLS, LLS);
|
static QLI_NOD expand_for(SYN, LLS, LLS);
|
||||||
#ifdef PYXIS
|
|
||||||
static FRM expand_form(SYN, QLI_REL);
|
|
||||||
static QLI_NOD expand_form_for(SYN, LLS, LLS);
|
|
||||||
static QLI_NOD expand_form_update(SYN, LLS, LLS);
|
|
||||||
#endif
|
|
||||||
static QLI_NOD expand_function(SYN, LLS);
|
static QLI_NOD expand_function(SYN, LLS);
|
||||||
static QLI_NOD expand_group_by(SYN, LLS, QLI_CTX);
|
static QLI_NOD expand_group_by(SYN, LLS, QLI_CTX);
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_NOD expand_menu(SYN, LLS, LLS);
|
|
||||||
#endif
|
|
||||||
static QLI_NOD expand_modify(SYN, LLS, LLS);
|
static QLI_NOD expand_modify(SYN, LLS, LLS);
|
||||||
static QLI_NOD expand_output(SYN, LLS, PRT *);
|
static QLI_NOD expand_output(SYN, LLS, PRT *);
|
||||||
static QLI_NOD expand_print(SYN, LLS, LLS);
|
static QLI_NOD expand_print(SYN, LLS, LLS);
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_NOD expand_print_form(SYN, LLS, LLS);
|
|
||||||
#endif
|
|
||||||
static ITM expand_print_item(SYN, LLS);
|
static ITM expand_print_item(SYN, LLS);
|
||||||
static QLI_NOD expand_print_list(SYN, LLS);
|
static QLI_NOD expand_print_list(SYN, LLS);
|
||||||
static QLI_NOD expand_report(SYN, LLS, LLS);
|
static QLI_NOD expand_report(SYN, LLS, LLS);
|
||||||
@ -92,10 +79,6 @@ static bool invalid_nod_field(QLI_NOD, QLI_NOD);
|
|||||||
static bool invalid_syn_field(SYN, SYN);
|
static bool invalid_syn_field(SYN, SYN);
|
||||||
static QLI_NOD make_and(QLI_NOD, QLI_NOD);
|
static QLI_NOD make_and(QLI_NOD, QLI_NOD);
|
||||||
static QLI_NOD make_assignment(QLI_NOD, QLI_NOD, LLS);
|
static QLI_NOD make_assignment(QLI_NOD, QLI_NOD, LLS);
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_NOD make_form_body(LLS, LLS, SYN);
|
|
||||||
static QLI_NOD make_form_field(FRM, FFL);
|
|
||||||
#endif
|
|
||||||
static QLI_NOD make_field(QLI_FLD, QLI_CTX);
|
static QLI_NOD make_field(QLI_FLD, QLI_CTX);
|
||||||
static QLI_NOD make_list(LLS);
|
static QLI_NOD make_list(LLS);
|
||||||
static QLI_NOD make_node(NOD_T, USHORT);
|
static QLI_NOD make_node(NOD_T, USHORT);
|
||||||
@ -103,9 +86,6 @@ static QLI_NOD negate(QLI_NOD);
|
|||||||
static QLI_NOD possible_literal(SYN, LLS, bool);
|
static QLI_NOD possible_literal(SYN, LLS, bool);
|
||||||
static QLI_NOD post_map(QLI_NOD, QLI_CTX);
|
static QLI_NOD post_map(QLI_NOD, QLI_CTX);
|
||||||
static QLI_FLD resolve(SYN, LLS, QLI_CTX *);
|
static QLI_FLD resolve(SYN, LLS, QLI_CTX *);
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_FLD resolve_name(SYM, LLS, QLI_CTX *);
|
|
||||||
#endif
|
|
||||||
static void resolve_really(QLI_FLD, SYN);
|
static void resolve_really(QLI_FLD, SYN);
|
||||||
|
|
||||||
static LLS output_stack;
|
static LLS output_stack;
|
||||||
@ -124,9 +104,6 @@ QLI_NOD EXP_expand( SYN node)
|
|||||||
*
|
*
|
||||||
**************************************/
|
**************************************/
|
||||||
QLI_NOD expanded, output;
|
QLI_NOD expanded, output;
|
||||||
#ifdef PYXIS
|
|
||||||
NAM name;
|
|
||||||
#endif
|
|
||||||
QLI_CTX context;
|
QLI_CTX context;
|
||||||
LLS right, left;
|
LLS right, left;
|
||||||
|
|
||||||
@ -189,12 +166,6 @@ QLI_NOD EXP_expand( SYN node)
|
|||||||
case nod_edit_proc:
|
case nod_edit_proc:
|
||||||
CMD_edit_proc(node);
|
CMD_edit_proc(node);
|
||||||
return NULL;
|
return NULL;
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_edit_form:
|
|
||||||
name = (NAM) node->syn_arg[1];
|
|
||||||
FORM_edit((DBB)node->syn_arg[0], name->nam_string);
|
|
||||||
return NULL;
|
|
||||||
#endif
|
|
||||||
case nod_extract:
|
case nod_extract:
|
||||||
node->syn_arg[1] = (SYN) expand_output(node->syn_arg[1], 0, 0);
|
node->syn_arg[1] = (SYN) expand_output(node->syn_arg[1], 0, 0);
|
||||||
CMD_extract(node);
|
CMD_extract(node);
|
||||||
@ -1059,11 +1030,8 @@ static QLI_NOD expand_field( SYN input, LLS stack, SYN subs)
|
|||||||
LLS save_stack;
|
LLS save_stack;
|
||||||
|
|
||||||
if (!(field = resolve(input, stack, &context)) ||
|
if (!(field = resolve(input, stack, &context)) ||
|
||||||
(subs && (
|
(subs && (context->ctx_variable)))
|
||||||
#ifdef PYXIS
|
{
|
||||||
context->ctx_type == CTX_FORM ||
|
|
||||||
#endif
|
|
||||||
context->ctx_variable))) {
|
|
||||||
p = s;
|
p = s;
|
||||||
for (i = 0; i < input->syn_count; i++) {
|
for (i = 0; i < input->syn_count; i++) {
|
||||||
name = (NAM) input->syn_arg[i];
|
name = (NAM) input->syn_arg[i];
|
||||||
@ -1080,10 +1048,6 @@ static QLI_NOD expand_field( SYN input, LLS stack, SYN subs)
|
|||||||
else
|
else
|
||||||
ERRQ_print_error(142, s, NULL, NULL, NULL, NULL); /* Msg142 "%s" is undefined or used out of context */
|
ERRQ_print_error(142, s, NULL, NULL, NULL, NULL); /* Msg142 "%s" is undefined or used out of context */
|
||||||
}
|
}
|
||||||
#ifdef PYXIS
|
|
||||||
if (context->ctx_type == CTX_FORM)
|
|
||||||
return make_form_field(context->ctx_form, (FFL) field);
|
|
||||||
#endif
|
|
||||||
node = make_field(field, context);
|
node = make_field(field, context);
|
||||||
if (subs)
|
if (subs)
|
||||||
node->nod_arg[e_fld_subs] = expand_expression(subs, stack);
|
node->nod_arg[e_fld_subs] = expand_expression(subs, stack);
|
||||||
@ -1146,176 +1110,6 @@ static QLI_NOD expand_for( SYN input, LLS right, LLS left)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef PYXIS
|
|
||||||
static FRM expand_form( SYN input, QLI_REL relation)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* e x p a n d _ f o r m
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Lookup form name. If there isn't a form name and a relation
|
|
||||||
* has been given, use the relation name.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
DBB database;
|
|
||||||
NAM name;
|
|
||||||
FRM form;
|
|
||||||
TEXT *string;
|
|
||||||
|
|
||||||
// Figure out form name
|
|
||||||
|
|
||||||
if (input && (name = (NAM) input->syn_arg[s_frm_form]))
|
|
||||||
string = name->nam_string;
|
|
||||||
else if (relation)
|
|
||||||
string = relation->rel_symbol->sym_string;
|
|
||||||
else
|
|
||||||
IBERROR(143); // Msg143 no default form name
|
|
||||||
|
|
||||||
// Now figure out which database to look in
|
|
||||||
|
|
||||||
database = NULL;
|
|
||||||
|
|
||||||
if (input)
|
|
||||||
database = (DBB) input->syn_arg[s_frm_database];
|
|
||||||
|
|
||||||
if (!database && relation)
|
|
||||||
database = relation->rel_database;
|
|
||||||
|
|
||||||
// Look for form either in explicit or any database
|
|
||||||
|
|
||||||
if (database) {
|
|
||||||
if (form = FORM_lookup_form(database, string))
|
|
||||||
return form;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
for (database = QLI_databases; database;
|
|
||||||
database = database->dbb_next) if (form =
|
|
||||||
FORM_lookup_form(database,
|
|
||||||
string))
|
|
||||||
return form;
|
|
||||||
ERRQ_print_error(144, string, NULL, NULL, NULL, NULL); // Msg144 No database for form
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Form doesn't exist, try to make up a default */
|
|
||||||
|
|
||||||
if (relation &&
|
|
||||||
!(input && input->syn_arg[s_frm_form]) &&
|
|
||||||
(form = FORM_default_form(database, string)))
|
|
||||||
return form;
|
|
||||||
|
|
||||||
ERRQ_print_error(145, string, database->dbb_filename, NULL, NULL, NULL); // Msg145 form is not defined in database
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_NOD expand_form_for( SYN input, LLS right, LLS left)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* e x p a n d _ f o r m _ f o r
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Expand a form invocation. This involve augmenting both the
|
|
||||||
* right and left context stacks.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
SYN form_name;
|
|
||||||
SYM symbol;
|
|
||||||
QLI_CTX context, secondary;
|
|
||||||
FRM form;
|
|
||||||
QLI_NOD node;
|
|
||||||
NAM ctx_name;
|
|
||||||
|
|
||||||
form_name = input->syn_arg[s_ffr_form];
|
|
||||||
context = (QLI_CTX) ALLOCD(type_ctx);
|
|
||||||
context->ctx_type = CTX_FORM;
|
|
||||||
context->ctx_form = form = expand_form(form_name, 0);
|
|
||||||
LLS_PUSH(context, &left);
|
|
||||||
|
|
||||||
if (ctx_name = (NAM) form_name->syn_arg[s_frm_context]) {
|
|
||||||
context->ctx_symbol = symbol = (SYM) ALLOCDV(type_sym, 0);
|
|
||||||
symbol->sym_string = ctx_name->nam_string;
|
|
||||||
symbol->sym_length = ctx_name->nam_length;
|
|
||||||
symbol->sym_type = SYM_form;
|
|
||||||
}
|
|
||||||
|
|
||||||
secondary = (QLI_CTX) ALLOCD(type_ctx);
|
|
||||||
secondary->ctx_type = CTX_FORM;
|
|
||||||
secondary->ctx_primary = context;
|
|
||||||
LLS_PUSH(secondary, &right);
|
|
||||||
|
|
||||||
node = MAKE_NODE(input->syn_type, e_ffr_count);
|
|
||||||
node->nod_arg[e_ffr_form] = (QLI_NOD) form;
|
|
||||||
node->nod_arg[e_ffr_statement] =
|
|
||||||
expand_statement(input->syn_arg[s_ffr_statement], right, left);
|
|
||||||
|
|
||||||
return node;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_NOD expand_form_update( SYN input, LLS right, LLS left)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* e x p a n d _ f o r m _ u p d a t e
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Expand a "form update" statement.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
FRM form;
|
|
||||||
FFL field;
|
|
||||||
LLS stack;
|
|
||||||
QLI_CTX context;
|
|
||||||
NAM name;
|
|
||||||
SYN list, *ptr, *end;
|
|
||||||
QLI_NOD node;
|
|
||||||
|
|
||||||
/* Find form context. If there isn't one, punt */
|
|
||||||
|
|
||||||
for (stack = left; stack; stack = stack->lls_next) {
|
|
||||||
context = (QLI_CTX) stack->lls_object;
|
|
||||||
if (context->ctx_type == CTX_FORM)
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!stack)
|
|
||||||
IBERROR(146); // Msg146 no context for form ACCEPT statement
|
|
||||||
|
|
||||||
form = context->ctx_form;
|
|
||||||
stack = NULL;
|
|
||||||
|
|
||||||
if (list = input->syn_arg[0])
|
|
||||||
for (ptr = list->syn_arg, end = ptr + list->syn_count; ptr < end;
|
|
||||||
ptr++) {
|
|
||||||
name = (NAM) * ptr;
|
|
||||||
if (!(field = FORM_lookup_field(form, name->nam_string)))
|
|
||||||
ERRQ_print_error(147, name->nam_string, form->frm_name, NULL,
|
|
||||||
NULL, NULL); // Msg147 field is not defined in form
|
|
||||||
LLS_PUSH(field, &stack);
|
|
||||||
}
|
|
||||||
|
|
||||||
node = MAKE_NODE(input->syn_type, e_fup_count);
|
|
||||||
node->nod_arg[e_fup_form] = (QLI_NOD) form;
|
|
||||||
|
|
||||||
if (stack)
|
|
||||||
node->nod_arg[e_fup_fields] = make_list(stack);
|
|
||||||
|
|
||||||
if (input->syn_arg[1])
|
|
||||||
node->nod_arg[e_fup_tag] =
|
|
||||||
expand_expression(input->syn_arg[1], right);
|
|
||||||
|
|
||||||
return node;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static QLI_NOD expand_function( SYN input, LLS stack)
|
static QLI_NOD expand_function( SYN input, LLS stack)
|
||||||
{
|
{
|
||||||
/**************************************
|
/**************************************
|
||||||
@ -1411,32 +1205,6 @@ static QLI_NOD expand_group_by( SYN input, LLS stack, QLI_CTX context)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static QLI_NOD expand_menu( SYN input, LLS right, LLS left)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* e x p a n d _ m e n u
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Expand menu statement.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
QLI_NOD node;
|
|
||||||
|
|
||||||
node = MAKE_NODE(input->syn_type, e_men_count);
|
|
||||||
node->nod_arg[e_men_string] =
|
|
||||||
expand_expression(input->syn_arg[s_men_string], 0);
|
|
||||||
node->nod_arg[e_men_labels] =
|
|
||||||
expand_expression(input->syn_arg[s_men_labels], 0);
|
|
||||||
node->nod_arg[e_men_statements] =
|
|
||||||
expand_statement(input->syn_arg[s_men_statements], left, right);
|
|
||||||
|
|
||||||
return node;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static QLI_NOD expand_modify( SYN input, LLS right, LLS left)
|
static QLI_NOD expand_modify( SYN input, LLS right, LLS left)
|
||||||
{
|
{
|
||||||
/**************************************
|
/**************************************
|
||||||
@ -1450,9 +1218,6 @@ static QLI_NOD expand_modify( SYN input, LLS right, LLS left)
|
|||||||
*
|
*
|
||||||
**************************************/
|
**************************************/
|
||||||
QLI_NOD node, loop, list, *ptr;
|
QLI_NOD node, loop, list, *ptr;
|
||||||
#ifdef PYXIS
|
|
||||||
SYN value;
|
|
||||||
#endif
|
|
||||||
SYN syn_list, *syn_ptr;
|
SYN syn_list, *syn_ptr;
|
||||||
LLS contexts;
|
LLS contexts;
|
||||||
QLI_CTX new_context, context;
|
QLI_CTX new_context, context;
|
||||||
@ -1511,11 +1276,6 @@ static QLI_NOD expand_modify( SYN input, LLS right, LLS left)
|
|||||||
if (input->syn_arg[s_mod_statement])
|
if (input->syn_arg[s_mod_statement])
|
||||||
node->nod_arg[e_mod_statement] =
|
node->nod_arg[e_mod_statement] =
|
||||||
expand_statement(input->syn_arg[s_mod_statement], right, left);
|
expand_statement(input->syn_arg[s_mod_statement], right, left);
|
||||||
#ifdef PYXIS
|
|
||||||
else if ((value = input->syn_arg[s_mod_form]) ||
|
|
||||||
(QLI_form_mode && !input->syn_arg[s_mod_list]))
|
|
||||||
node->nod_arg[e_mod_statement] = make_form_body(right, left, value);
|
|
||||||
#endif
|
|
||||||
else if (syn_list = input->syn_arg[s_mod_list]) {
|
else if (syn_list = input->syn_arg[s_mod_list]) {
|
||||||
node->nod_arg[e_mod_statement] = list =
|
node->nod_arg[e_mod_statement] = list =
|
||||||
MAKE_NODE(nod_list, syn_list->syn_count);
|
MAKE_NODE(nod_list, syn_list->syn_count);
|
||||||
@ -1599,15 +1359,6 @@ static QLI_NOD expand_print( SYN input, LLS right, LLS left)
|
|||||||
|
|
||||||
syn_rse = input->syn_arg[s_prt_rse];
|
syn_rse = input->syn_arg[s_prt_rse];
|
||||||
|
|
||||||
// Check to see if form mode is appropriate
|
|
||||||
#ifdef PYXIS
|
|
||||||
if (input->syn_arg[s_prt_form] ||
|
|
||||||
(QLI_form_mode &&
|
|
||||||
!input->syn_arg[s_prt_list] &&
|
|
||||||
!input->syn_arg[s_prt_output] &&
|
|
||||||
!(syn_rse && syn_rse->syn_count != 1)))
|
|
||||||
return expand_print_form(input, right, left);
|
|
||||||
#endif
|
|
||||||
loop = NULL;
|
loop = NULL;
|
||||||
items = NULL;
|
items = NULL;
|
||||||
rse = NULL;
|
rse = NULL;
|
||||||
@ -1721,55 +1472,6 @@ static QLI_NOD expand_print( SYN input, LLS right, LLS left)
|
|||||||
return node;
|
return node;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_NOD expand_print_form( SYN input, LLS right, LLS left)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* e x p a n d _ p r i n t _ f o r m
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Expand a PRINT ... USING FORM <form> statement.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
SYN syn_rse;
|
|
||||||
QLI_NOD node, loop, rse;
|
|
||||||
LLS new_right;
|
|
||||||
|
|
||||||
loop = rse = NULL;
|
|
||||||
new_right = right;
|
|
||||||
|
|
||||||
/* If a record select expression is present, expand it and build a FOR
|
|
||||||
statement. */
|
|
||||||
|
|
||||||
if (syn_rse = input->syn_arg[s_prt_rse]) {
|
|
||||||
loop = MAKE_NODE(nod_for, e_for_count);
|
|
||||||
loop->nod_arg[e_for_rse] = rse = expand_rse(syn_rse, &new_right);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* If no print object showed up, complain! */
|
|
||||||
|
|
||||||
if (!new_right)
|
|
||||||
IBERROR(151); // Msg151 No items in print list
|
|
||||||
|
|
||||||
node = make_form_body(new_right, 0, input->syn_arg[s_prt_form]);
|
|
||||||
|
|
||||||
/* If a FOR loop was generated, splice it in here. */
|
|
||||||
|
|
||||||
if (loop) {
|
|
||||||
loop->nod_arg[e_for_statement] = node;
|
|
||||||
node = loop;
|
|
||||||
if (input->syn_arg[s_prt_order])
|
|
||||||
rse->nod_arg[e_rse_sort] =
|
|
||||||
expand_sort(input->syn_arg[s_prt_order], new_right, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
return node;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static ITM expand_print_item( SYN syn_item, LLS right)
|
static ITM expand_print_item( SYN syn_item, LLS right)
|
||||||
{
|
{
|
||||||
@ -2274,15 +1976,6 @@ static QLI_NOD expand_statement( SYN input, LLS right, LLS left)
|
|||||||
case nod_erase:
|
case nod_erase:
|
||||||
routine = expand_erase;
|
routine = expand_erase;
|
||||||
break;
|
break;
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_for:
|
|
||||||
routine = expand_form_for;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case nod_form_update:
|
|
||||||
routine = expand_form_update;
|
|
||||||
break;
|
|
||||||
#endif
|
|
||||||
case nod_for:
|
case nod_for:
|
||||||
routine = expand_for;
|
routine = expand_for;
|
||||||
break;
|
break;
|
||||||
@ -2300,10 +1993,6 @@ static QLI_NOD expand_statement( SYN input, LLS right, LLS left)
|
|||||||
node->nod_count = 2;
|
node->nod_count = 2;
|
||||||
return node;
|
return node;
|
||||||
|
|
||||||
case nod_menu:
|
|
||||||
routine = expand_menu;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case nod_modify:
|
case nod_modify:
|
||||||
routine = expand_modify;
|
routine = expand_modify;
|
||||||
break;
|
break;
|
||||||
@ -2380,9 +2069,6 @@ static QLI_NOD expand_store( SYN input, LLS right, LLS left)
|
|||||||
*
|
*
|
||||||
**************************************/
|
**************************************/
|
||||||
QLI_NOD node, assignment, loop;
|
QLI_NOD node, assignment, loop;
|
||||||
#ifdef PYXIS
|
|
||||||
SYN sub;
|
|
||||||
#endif
|
|
||||||
SYN rel_node;
|
SYN rel_node;
|
||||||
QLI_REL relation;
|
QLI_REL relation;
|
||||||
QLI_FLD field;
|
QLI_FLD field;
|
||||||
@ -2441,10 +2127,6 @@ static QLI_NOD expand_store( SYN input, LLS right, LLS left)
|
|||||||
node->nod_arg[e_sto_statement] =
|
node->nod_arg[e_sto_statement] =
|
||||||
expand_statement(input->syn_arg[s_sto_statement], right, left);
|
expand_statement(input->syn_arg[s_sto_statement], right, left);
|
||||||
}
|
}
|
||||||
#ifdef PYXIS
|
|
||||||
else if ((sub = input->syn_arg[s_sto_form]) || QLI_form_mode)
|
|
||||||
node->nod_arg[e_sto_statement] = make_form_body(0, left, sub);
|
|
||||||
#endif
|
|
||||||
else {
|
else {
|
||||||
stack = NULL;
|
stack = NULL;
|
||||||
for (field = relation->rel_fields; field; field = field->fld_next) {
|
for (field = relation->rel_fields; field; field = field->fld_next) {
|
||||||
@ -2975,112 +2657,6 @@ static QLI_NOD make_assignment( QLI_NOD target, QLI_NOD initial, LLS right)
|
|||||||
return assignment;
|
return assignment;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_NOD make_form_body( LLS right, LLS left, SYN form_node)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* m a k e _ f o r m _ b o d y
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Build the form body for a form STORE, MODIFY, or PRINT.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
QLI_CTX tmp_context;
|
|
||||||
FFL ffl;
|
|
||||||
QLI_FLD field, initial;
|
|
||||||
FRM form;
|
|
||||||
LLS stack, fields;
|
|
||||||
QLI_NOD node, assignment;
|
|
||||||
QLI_REL relation;
|
|
||||||
|
|
||||||
tmp_context = right ? (QLI_CTX) right->lls_object : (QLI_CTX) left->lls_object;
|
|
||||||
if (right)
|
|
||||||
tmp_context = (QLI_CTX) right->lls_object;
|
|
||||||
else
|
|
||||||
tmp_context = (QLI_CTX) left->lls_object;
|
|
||||||
|
|
||||||
relation = tmp_context->ctx_relation;
|
|
||||||
form = expand_form(form_node, relation);
|
|
||||||
|
|
||||||
// Get stack of database fields and form fields
|
|
||||||
|
|
||||||
stack = fields = NULL;
|
|
||||||
|
|
||||||
if (right)
|
|
||||||
for (ffl = form->frm_fields; ffl; ffl = ffl->ffl_next)
|
|
||||||
if (field = resolve_name(ffl->ffl_symbol, right, &tmp_context)) {
|
|
||||||
assignment = MAKE_NODE(nod_assign, e_asn_count);
|
|
||||||
assignment->nod_arg[e_asn_from] =
|
|
||||||
make_field(field, tmp_context);
|
|
||||||
assignment->nod_arg[e_asn_to] = make_form_field(form, ffl);
|
|
||||||
LLS_PUSH(assignment, &stack);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Build form update
|
|
||||||
|
|
||||||
node = MAKE_NODE(nod_form_update, e_fup_count);
|
|
||||||
node->nod_count = 0;
|
|
||||||
node->nod_arg[e_fup_form] = (QLI_NOD) form;
|
|
||||||
LLS_PUSH(node, &stack);
|
|
||||||
|
|
||||||
/* Unless this is a print, be prepared to update fields */
|
|
||||||
|
|
||||||
if (left) {
|
|
||||||
for (ffl = form->frm_fields; ffl; ffl = ffl->ffl_next)
|
|
||||||
if ((field = resolve_name(ffl->ffl_symbol, left, &tmp_context)) &&
|
|
||||||
!(field->fld_flags & FLD_computed)) {
|
|
||||||
assignment = MAKE_NODE(nod_assign, e_asn_count);
|
|
||||||
assignment->nod_arg[e_asn_to] =
|
|
||||||
make_field(field, tmp_context);
|
|
||||||
assignment->nod_arg[e_asn_from] = make_form_field(form, ffl);
|
|
||||||
if (right) {
|
|
||||||
initial =
|
|
||||||
resolve_name(ffl->ffl_symbol, right, &tmp_context);
|
|
||||||
assignment->nod_arg[e_asn_initial] =
|
|
||||||
make_field(initial, tmp_context);
|
|
||||||
}
|
|
||||||
if (field->fld_validation)
|
|
||||||
assignment->nod_arg[e_asn_valid] =
|
|
||||||
expand_expression(field->fld_validation, left);
|
|
||||||
LLS_PUSH(ffl, &fields);
|
|
||||||
LLS_PUSH(assignment, &stack);
|
|
||||||
}
|
|
||||||
node->nod_arg[e_fup_fields] = make_list(fields);
|
|
||||||
}
|
|
||||||
|
|
||||||
node = MAKE_NODE(nod_form_for, e_ffr_count);
|
|
||||||
node->nod_arg[e_ffr_form] = (QLI_NOD) form;
|
|
||||||
node->nod_arg[e_ffr_statement] = make_list(stack);
|
|
||||||
|
|
||||||
return node;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_NOD make_form_field( FRM form, FFL field)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* m a k e _ f o r m _ f i e l d
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Generate a form field node.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
QLI_NOD node;
|
|
||||||
|
|
||||||
node = MAKE_NODE(nod_form_field, e_ffl_count);
|
|
||||||
node->nod_count = 0;
|
|
||||||
node->nod_arg[e_ffl_form] = (QLI_NOD) form;
|
|
||||||
node->nod_arg[e_ffl_field] = (QLI_NOD) field;
|
|
||||||
|
|
||||||
return node;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static QLI_NOD make_field( QLI_FLD field, QLI_CTX context)
|
static QLI_NOD make_field( QLI_FLD field, QLI_CTX context)
|
||||||
{
|
{
|
||||||
@ -3302,10 +2878,6 @@ static QLI_FLD resolve( SYN node, LLS stack, QLI_CTX * out_context)
|
|||||||
QLI_CTX context;
|
QLI_CTX context;
|
||||||
QLI_REL relation;
|
QLI_REL relation;
|
||||||
QLI_FLD field;
|
QLI_FLD field;
|
||||||
#ifdef PYXIS
|
|
||||||
FRM form;
|
|
||||||
FFL ffield;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Look thru context stack looking for a context that will resolve
|
/* Look thru context stack looking for a context that will resolve
|
||||||
all name segments. If the context is a secondary context, require
|
all name segments. If the context is a secondary context, require
|
||||||
@ -3320,28 +2892,6 @@ static QLI_FLD resolve( SYN node, LLS stack, QLI_CTX * out_context)
|
|||||||
name = *--ptr;
|
name = *--ptr;
|
||||||
|
|
||||||
switch (context->ctx_type) {
|
switch (context->ctx_type) {
|
||||||
#ifdef PYXIS
|
|
||||||
case CTX_FORM:
|
|
||||||
if (context->ctx_primary)
|
|
||||||
*out_context = context = context->ctx_primary;
|
|
||||||
form = context->ctx_form;
|
|
||||||
for (ffield = form->frm_fields; ffield; ffield = ffield->ffl_next)
|
|
||||||
if (compare_names(name, ffield->ffl_symbol)) {
|
|
||||||
if (ptr == base)
|
|
||||||
return (QLI_FLD) ffield;
|
|
||||||
name = *--ptr;
|
|
||||||
|
|
||||||
if (compare_names(name, form->frm_symbol))
|
|
||||||
if (ptr == base)
|
|
||||||
return (QLI_FLD) ffield;
|
|
||||||
|
|
||||||
if (compare_names(name, context->ctx_symbol))
|
|
||||||
if (ptr == base)
|
|
||||||
return (QLI_FLD) ffield;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
#endif
|
|
||||||
case CTX_VARIABLE:
|
case CTX_VARIABLE:
|
||||||
if (ptr == base)
|
if (ptr == base)
|
||||||
for (field = context->ctx_variable; field;
|
for (field = context->ctx_variable; field;
|
||||||
@ -3392,73 +2942,6 @@ static QLI_FLD resolve( SYN node, LLS stack, QLI_CTX * out_context)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef PYXIS
|
|
||||||
static QLI_FLD resolve_name( SYM name, LLS stack, QLI_CTX * out_context)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* r e s o l v e _ n a m e
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Resolve a field node against a context stack. Return both the
|
|
||||||
* field block (by value) and the corresponding context block (by
|
|
||||||
* reference). Return NULL if field can't be resolved.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
QLI_CTX context;
|
|
||||||
QLI_REL relation;
|
|
||||||
QLI_FLD field;
|
|
||||||
FRM form;
|
|
||||||
FFL ffield;
|
|
||||||
/* Look thru context stack looking for a context that will resolve
|
|
||||||
all name segments. If the context is a secondary context, require
|
|
||||||
that the context name be given explicitly (used for special STORE
|
|
||||||
context). */
|
|
||||||
|
|
||||||
|
|
||||||
for (; stack; stack = stack->lls_next) {
|
|
||||||
*out_context = context = (QLI_CTX) stack->lls_object;
|
|
||||||
switch (context->ctx_type) {
|
|
||||||
case CTX_FORM:
|
|
||||||
if (context->ctx_primary)
|
|
||||||
*out_context = context = context->ctx_primary;
|
|
||||||
form = context->ctx_form;
|
|
||||||
for (ffield = form->frm_fields; ffield; ffield = ffield->ffl_next)
|
|
||||||
if (compare_symbols(name, ffield->ffl_symbol))
|
|
||||||
return (QLI_FLD) ffield;
|
|
||||||
break;
|
|
||||||
case CTX_VARIABLE:
|
|
||||||
for (field = context->ctx_variable; field;
|
|
||||||
field = field->fld_next)
|
|
||||||
{
|
|
||||||
if (compare_symbols(name, field->fld_name)
|
|
||||||
|| compare_symbols(name, field->fld_query_name))
|
|
||||||
{
|
|
||||||
return field;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case CTX_RELATION:
|
|
||||||
relation = context->ctx_relation;
|
|
||||||
|
|
||||||
for (field = relation->rel_fields; field; field = field->fld_next)
|
|
||||||
if (compare_symbols(name, field->fld_name) ||
|
|
||||||
compare_symbols(name, field->fld_query_name))
|
|
||||||
{
|
|
||||||
return field;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* We didn't resolve all name segments. Let somebody else worry about it. */
|
|
||||||
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void resolve_really( QLI_FLD variable, SYN field_node)
|
static void resolve_really( QLI_FLD variable, SYN field_node)
|
||||||
{
|
{
|
||||||
|
@ -35,15 +35,11 @@
|
|||||||
#include "../qli/err_proto.h"
|
#include "../qli/err_proto.h"
|
||||||
#include "../qli/eval_proto.h"
|
#include "../qli/eval_proto.h"
|
||||||
#include "../qli/exe_proto.h"
|
#include "../qli/exe_proto.h"
|
||||||
#include "../qli/form_proto.h"
|
|
||||||
#include "../qli/forma_proto.h"
|
#include "../qli/forma_proto.h"
|
||||||
#include "../qli/mov_proto.h"
|
#include "../qli/mov_proto.h"
|
||||||
#include "../qli/picst_proto.h"
|
#include "../qli/picst_proto.h"
|
||||||
|
|
||||||
extern USHORT QLI_columns, QLI_lines;
|
extern USHORT QLI_columns, QLI_lines;
|
||||||
#ifdef PYXIS
|
|
||||||
extern USHORT sw_forms;
|
|
||||||
#endif
|
|
||||||
#ifdef DEV_BUILD
|
#ifdef DEV_BUILD
|
||||||
extern USHORT QLI_hex_output;
|
extern USHORT QLI_hex_output;
|
||||||
|
|
||||||
@ -596,10 +592,6 @@ void FMT_put( TEXT * line, PRT print)
|
|||||||
ib_fprintf((IB_FILE *) print->prt_file, "%s", buffer);
|
ib_fprintf((IB_FILE *) print->prt_file, "%s", buffer);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
#ifdef PYXIS
|
|
||||||
if (sw_forms)
|
|
||||||
FORM_reset();
|
|
||||||
#endif
|
|
||||||
while (*q) {
|
while (*q) {
|
||||||
for (p = buffer; p < end && *q;)
|
for (p = buffer; p < end && *q;)
|
||||||
*p++ = *q++;
|
*p++ = *q++;
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
* Contributor(s): ______________________________________.
|
* Contributor(s): ______________________________________.
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
$Id: gener.cpp,v 1.19 2003-09-10 11:48:08 robocop Exp $
|
$Id: gener.cpp,v 1.20 2003-09-11 02:15:09 brodsom Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "firebird.h"
|
#include "firebird.h"
|
||||||
@ -930,9 +930,6 @@ static void gen_expression( QLI_NOD node, QLI_REQ request)
|
|||||||
|
|
||||||
case nod_prompt:
|
case nod_prompt:
|
||||||
case nod_variable:
|
case nod_variable:
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_field:
|
|
||||||
#endif
|
|
||||||
if (node->nod_export)
|
if (node->nod_export)
|
||||||
gen_parameter(node->nod_export, request);
|
gen_parameter(node->nod_export, request);
|
||||||
return;
|
return;
|
||||||
@ -1760,16 +1757,6 @@ static void gen_statement( QLI_NOD node, QLI_REQ request)
|
|||||||
case nod_if:
|
case nod_if:
|
||||||
gen_if(node, request);
|
gen_if(node, request);
|
||||||
return;
|
return;
|
||||||
#ifdef PYXIS
|
|
||||||
case nod_form_for:
|
|
||||||
gen_statement(node->nod_arg[e_ffr_statement], request);
|
|
||||||
return;
|
|
||||||
|
|
||||||
case nod_form_update:
|
|
||||||
if (node->nod_arg[e_fup_tag])
|
|
||||||
gen_expression(node->nod_arg[e_fup_tag], 0);
|
|
||||||
return;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
BUGCHECK(354); /* Msg354 gen_statement: not yet implemented */
|
BUGCHECK(354); /* Msg354 gen_statement: not yet implemented */
|
||||||
|
@ -33,7 +33,6 @@
|
|||||||
#include "../qli/reqs.h"
|
#include "../qli/reqs.h"
|
||||||
#include "../qli/all_proto.h"
|
#include "../qli/all_proto.h"
|
||||||
#include "../qli/err_proto.h"
|
#include "../qli/err_proto.h"
|
||||||
#include "../qli/form_proto.h"
|
|
||||||
#include "../qli/gener_proto.h"
|
#include "../qli/gener_proto.h"
|
||||||
#include "../qli/hsh_proto.h"
|
#include "../qli/hsh_proto.h"
|
||||||
#include "../qli/meta_proto.h"
|
#include "../qli/meta_proto.h"
|
||||||
@ -934,12 +933,6 @@ void MET_finish( DBB dbb)
|
|||||||
ALL_release((FRB) function);
|
ALL_release((FRB) function);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get rid of any forms
|
|
||||||
#ifdef PYXIS
|
|
||||||
if (dbb->dbb_forms) {
|
|
||||||
FORM_finish(dbb);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
/* Finally, actually close down database connection. */
|
/* Finally, actually close down database connection. */
|
||||||
|
|
||||||
detach(status_vector, dbb);
|
detach(status_vector, dbb);
|
||||||
|
@ -75,9 +75,6 @@ static SYN parse_extract(void);
|
|||||||
static QLI_FLD parse_field(int);
|
static QLI_FLD parse_field(int);
|
||||||
static SYN parse_field_name(SYN *);
|
static SYN parse_field_name(SYN *);
|
||||||
static SYN parse_for(void);
|
static SYN parse_for(void);
|
||||||
#ifdef PYXIS
|
|
||||||
static SYN parse_form(void);
|
|
||||||
#endif
|
|
||||||
static SYN parse_from(USHORT *, USHORT *);
|
static SYN parse_from(USHORT *, USHORT *);
|
||||||
static SYN parse_function(void);
|
static SYN parse_function(void);
|
||||||
static TEXT *parse_header(void);
|
static TEXT *parse_header(void);
|
||||||
@ -90,7 +87,6 @@ static SYN parse_list_fields(void);
|
|||||||
static CON parse_literal(void);
|
static CON parse_literal(void);
|
||||||
static SYN parse_matches(void);
|
static SYN parse_matches(void);
|
||||||
static void parse_matching_paren(void);
|
static void parse_matching_paren(void);
|
||||||
static SYN parse_menu(void);
|
|
||||||
static SYN parse_modify(void);
|
static SYN parse_modify(void);
|
||||||
static SYN parse_modify_index(void);
|
static SYN parse_modify_index(void);
|
||||||
static SYN parse_modify_relation(void);
|
static SYN parse_modify_relation(void);
|
||||||
@ -1537,10 +1533,6 @@ static SYN parse_edit(void)
|
|||||||
LEX_edit((SLONG) start->lls_object, (SLONG) stop->lls_object);
|
LEX_edit((SLONG) start->lls_object, (SLONG) stop->lls_object);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifdef PYXIS
|
|
||||||
else if (MATCH(KW_FORM))
|
|
||||||
IBERROR(484); // FORMs not supported
|
|
||||||
#endif
|
|
||||||
else {
|
else {
|
||||||
type = nod_edit_proc;
|
type = nod_edit_proc;
|
||||||
node = SYNTAX_NODE(type, 2);
|
node = SYNTAX_NODE(type, 2);
|
||||||
@ -1817,10 +1809,6 @@ static SYN parse_for(void)
|
|||||||
SYN node;
|
SYN node;
|
||||||
|
|
||||||
PAR_token();
|
PAR_token();
|
||||||
#ifdef PYXIS
|
|
||||||
if (MATCH(KW_FORM))
|
|
||||||
IBERROR(484); // FORMs not supported
|
|
||||||
#endif
|
|
||||||
node = SYNTAX_NODE(nod_for, s_for_count);
|
node = SYNTAX_NODE(nod_for, s_for_count);
|
||||||
node->syn_arg[s_for_rse] = parse_rse();
|
node->syn_arg[s_for_rse] = parse_rse();
|
||||||
node->syn_arg[s_for_statement] = parse_statement();
|
node->syn_arg[s_for_statement] = parse_statement();
|
||||||
@ -1828,22 +1816,6 @@ static SYN parse_for(void)
|
|||||||
return node;
|
return node;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef PYXIS
|
|
||||||
static SYN parse_form(void)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* p a r s e _ f o r m
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Parse qualified form name, returning a form block.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
IBERROR(484); // FORMs not supported
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static SYN parse_from( USHORT * paren_count, USHORT * bool_flag)
|
static SYN parse_from( USHORT * paren_count, USHORT * bool_flag)
|
||||||
{
|
{
|
||||||
@ -2360,49 +2332,6 @@ static void parse_matching_paren(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static SYN parse_menu(void)
|
|
||||||
{
|
|
||||||
/**************************************
|
|
||||||
*
|
|
||||||
* p a r s e _ m e n u
|
|
||||||
*
|
|
||||||
**************************************
|
|
||||||
*
|
|
||||||
* Functional description
|
|
||||||
* Parse a MENU statement.
|
|
||||||
*
|
|
||||||
**************************************/
|
|
||||||
LLS labels, statements;
|
|
||||||
SYN node;
|
|
||||||
|
|
||||||
PAR_real_token();
|
|
||||||
|
|
||||||
if (QLI_token->tok_type != tok_quoted)
|
|
||||||
SYNTAX_ERROR(192); // Msg192 quoted string
|
|
||||||
|
|
||||||
node = SYNTAX_NODE(nod_menu, s_men_count);
|
|
||||||
node->syn_arg[s_men_string] = parse_primitive_value(0, 0);
|
|
||||||
labels = statements = NULL;
|
|
||||||
PAR_real();
|
|
||||||
|
|
||||||
while (!MATCH(KW_END)) {
|
|
||||||
if (!MATCH(KW_ENTREE))
|
|
||||||
SYNTAX_ERROR(193); // Msg193 ENTREE or END
|
|
||||||
if (QLI_token->tok_type != tok_quoted)
|
|
||||||
SYNTAX_ERROR(194); // Msg194 quoted string
|
|
||||||
LLS_PUSH(parse_primitive_value(0, 0), &labels);
|
|
||||||
MATCH(KW_COLON);
|
|
||||||
LLS_PUSH(parse_statement(), &statements);
|
|
||||||
PAR_real();
|
|
||||||
}
|
|
||||||
|
|
||||||
node->syn_arg[s_men_statements] = make_list(statements);
|
|
||||||
node->syn_arg[s_men_labels] = make_list(labels);
|
|
||||||
|
|
||||||
return node;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static SYN parse_modify(void)
|
static SYN parse_modify(void)
|
||||||
{
|
{
|
||||||
/**************************************
|
/**************************************
|
||||||
@ -2445,11 +2374,6 @@ static SYN parse_modify(void)
|
|||||||
node = SYNTAX_NODE(nod_modify, s_mod_count);
|
node = SYNTAX_NODE(nod_modify, s_mod_count);
|
||||||
|
|
||||||
if (MATCH(KW_USING))
|
if (MATCH(KW_USING))
|
||||||
#if PYXIS
|
|
||||||
if (MATCH(KW_FORM))
|
|
||||||
IBERROR(484); // FORMs not supported
|
|
||||||
else
|
|
||||||
#endif
|
|
||||||
node->syn_arg[s_mod_statement] = parse_statement();
|
node->syn_arg[s_mod_statement] = parse_statement();
|
||||||
else if (!KEYWORD(KW_SEMI)) {
|
else if (!KEYWORD(KW_SEMI)) {
|
||||||
stack = NULL;
|
stack = NULL;
|
||||||
@ -3914,12 +3838,6 @@ static SYN parse_set(void)
|
|||||||
sw = set_echo;
|
sw = set_echo;
|
||||||
PAR_token();
|
PAR_token();
|
||||||
break;
|
break;
|
||||||
#ifdef PYXIS
|
|
||||||
case KW_FORM:
|
|
||||||
case KW_FORMS:
|
|
||||||
IBERROR(484); // FORMs not supported
|
|
||||||
break;
|
|
||||||
#endif
|
|
||||||
case KW_MATCHING_LANGUAGE:
|
case KW_MATCHING_LANGUAGE:
|
||||||
sw = set_matching_language;
|
sw = set_matching_language;
|
||||||
PAR_token();
|
PAR_token();
|
||||||
@ -4184,11 +4102,6 @@ static SYN parse_show(void)
|
|||||||
sw = show_filters;
|
sw = show_filters;
|
||||||
else if (MATCH(KW_FUNCTIONS))
|
else if (MATCH(KW_FUNCTIONS))
|
||||||
sw = show_functions;
|
sw = show_functions;
|
||||||
#ifdef PYXIS
|
|
||||||
else if (MATCH(KW_FORMS)) {
|
|
||||||
sw = show_forms;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
else if (MATCH(KW_GLOBAL)) {
|
else if (MATCH(KW_GLOBAL)) {
|
||||||
PAR_real();
|
PAR_real();
|
||||||
if (MATCH(KW_FIELD)) {
|
if (MATCH(KW_FIELD)) {
|
||||||
@ -4237,10 +4150,6 @@ static SYN parse_show(void)
|
|||||||
sw = show_filters;
|
sw = show_filters;
|
||||||
else if (MATCH(KW_FUNCTIONS))
|
else if (MATCH(KW_FUNCTIONS))
|
||||||
sw = show_functions;
|
sw = show_functions;
|
||||||
#ifdef PYXIS
|
|
||||||
else if (MATCH(KW_FORMS))
|
|
||||||
sw = show_forms;
|
|
||||||
#endif
|
|
||||||
else if (MATCH(KW_GLOBAL)) {
|
else if (MATCH(KW_GLOBAL)) {
|
||||||
PAR_real();
|
PAR_real();
|
||||||
if (MATCH(KW_FIELD)) {
|
if (MATCH(KW_FIELD)) {
|
||||||
@ -4274,11 +4183,9 @@ static SYN parse_show(void)
|
|||||||
sw == show_security_classes
|
sw == show_security_classes
|
||||||
|| sw == show_system_triggers
|
|| sw == show_system_triggers
|
||||||
|| sw == show_system_relations || sw == show_procedures
|
|| sw == show_system_relations || sw == show_procedures
|
||||||
#ifdef PYXIS
|
|
||||||
|| sw == show_forms
|
|
||||||
#endif
|
|
||||||
|| sw == show_filters
|
|| sw == show_filters
|
||||||
|| sw == show_functions || sw == show_global_fields))
|
|| sw == show_functions || sw == show_global_fields))
|
||||||
|
{
|
||||||
if (MATCH(KW_FOR)) {
|
if (MATCH(KW_FOR)) {
|
||||||
MATCH(KW_DATABASE);
|
MATCH(KW_DATABASE);
|
||||||
if (value = (BLK) get_dbb(QLI_token->tok_symbol))
|
if (value = (BLK) get_dbb(QLI_token->tok_symbol))
|
||||||
@ -4286,6 +4193,7 @@ static SYN parse_show(void)
|
|||||||
else
|
else
|
||||||
SYNTAX_ERROR(221); // Msg221 database name
|
SYNTAX_ERROR(221); // Msg221 database name
|
||||||
}
|
}
|
||||||
|
}
|
||||||
LLS_PUSH(value, &stack);
|
LLS_PUSH(value, &stack);
|
||||||
count++;
|
count++;
|
||||||
if (!MATCH(KW_COMMA))
|
if (!MATCH(KW_COMMA))
|
||||||
@ -5185,10 +5093,6 @@ static SYN parse_statement(void)
|
|||||||
node = parse_list_fields();
|
node = parse_list_fields();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case KW_MENU:
|
|
||||||
node = parse_menu();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case KW_MODIFY:
|
case KW_MODIFY:
|
||||||
node = parse_modify();
|
node = parse_modify();
|
||||||
break;
|
break;
|
||||||
@ -5338,12 +5242,7 @@ static SYN parse_store(void)
|
|||||||
|
|
||||||
MATCH(KW_USING);
|
MATCH(KW_USING);
|
||||||
|
|
||||||
#ifdef PYXIS
|
node->syn_arg[s_sto_statement] = parse_statement();
|
||||||
if (MATCH(KW_FORM))
|
|
||||||
IBERROR(484); // FORMs not supported
|
|
||||||
else
|
|
||||||
#endif
|
|
||||||
node->syn_arg[s_sto_statement] = parse_statement();
|
|
||||||
|
|
||||||
return node;
|
return node;
|
||||||
}
|
}
|
||||||
|
@ -105,13 +105,7 @@ KW_FIRST,
|
|||||||
KW_FIXED,
|
KW_FIXED,
|
||||||
KW_FLOAT,
|
KW_FLOAT,
|
||||||
KW_FOR,
|
KW_FOR,
|
||||||
#ifdef PYXIS
|
|
||||||
KW_FORM,
|
|
||||||
#endif
|
|
||||||
KW_FORMAT,
|
KW_FORMAT,
|
||||||
#ifdef PYXIS
|
|
||||||
KW_FORMS,
|
|
||||||
#endif
|
|
||||||
KW_FROM,
|
KW_FROM,
|
||||||
KW_FULL,
|
KW_FULL,
|
||||||
KW_FUNCTION,
|
KW_FUNCTION,
|
||||||
|
@ -118,13 +118,7 @@
|
|||||||
{KW_FIXED, "FIXED"},
|
{KW_FIXED, "FIXED"},
|
||||||
{KW_FLOAT, "FLOAT"},
|
{KW_FLOAT, "FLOAT"},
|
||||||
{KW_FOR, "FOR"},
|
{KW_FOR, "FOR"},
|
||||||
#ifdef PYXIS
|
|
||||||
{KW_FORM, "FORM"},
|
|
||||||
#endif
|
|
||||||
{KW_FORMAT, "FORMAT"},
|
{KW_FORMAT, "FORMAT"},
|
||||||
#ifdef PYXIS
|
|
||||||
{KW_FORMS, "FORMS"},
|
|
||||||
#endif
|
|
||||||
{KW_FROM, "FROM"},
|
{KW_FROM, "FROM"},
|
||||||
{KW_FULL, "FULL"},
|
{KW_FULL, "FULL"},
|
||||||
{KW_FUNCTION, "FUNCTION"},
|
{KW_FUNCTION, "FUNCTION"},
|
||||||
|
Loading…
Reference in New Issue
Block a user