Re: Sql*Forms/Packaged Procedure
From: <rzx2122_at_mcvax2.d48.lilly.com>
Date: 16 Jun 93 13:53:38 EST
Message-ID: <1993Jun16.135338.1_at_mcvax2.d48.lilly.com>
Date: 16 Jun 93 13:53:38 EST
Message-ID: <1993Jun16.135338.1_at_mcvax2.d48.lilly.com>
Reply-To: 72072.2122_at_compuserve.com
Sender: 72072.2122_at_compuserve.com
Jenny_Farnham_at_stortek.com writes:
>I have one character field on the screen with a
>post-change or on-validate-field (take your choice).
>
>The problem with this is that "exit_form" is a packaged
>procedure and won't execute, i get an error. HOW do
>I get around this.
Jenny,
Try using an ON-NEW-FIELD-INSTANCE trigger in a nondisplayed field
following the input field. See example below.
chicago ,--------+ detroit
Tom Harleman | |
INOUG Committee Member |Indiana |
Paradigm Consulting, Inc. st. | Oracle |
11080 Willowmere Drive louis | Users |
Indianapolis, IN 46280 | Group|
USA | |
| _,+cincinnati
INTERNET: 72072.2122_at_compuserve.com / _,'
Compuserve: 72072,2122 /_,-'louisville
`
EXECUTE_TRIGGER('DISCLAIMER');
- CUT HERE -----------------------------
SQL*FORMS_VERSION = 03.00.16.04.00
TERSE = ON
DEFINE FORM
NAME = farnham
TITLE = farnham
DEFAULT_MENU_APPLICATION = DEFAULT
DEFINE BLOCK
NAME = TEST
DESCRIPTION = TEST
ROWS_DISPLAYED = 1
BASE_LINE = 1
LINES_PER_ROW = 0
ARRAY_SIZE = 0
DEFINE FIELD
NAME = DISPLAYED_INPUT
DATATYPE = CHAR
LENGTH = 1
DISPLAY_LENGTH = 1
QUERY_LENGTH = 1
BASE_TABLE = OFF
PAGE = 1
LINE = 10
COLUMN = 26
HELP = Press A, B, C or X.
UPDATE = OFF
QUERY = OFF
AUTOSKIP = ON
AUTOHELP = ON
ENDDEFINE FIELD
DEFINE FIELD
NAME = NONDISPLAYED
DATATYPE = CHAR
LENGTH = 1
DISPLAY_LENGTH = 1
QUERY_LENGTH = 1
BASE_TABLE = OFF
PAGE = 1
LINE = 10
COLUMN = 28
UPDATE = OFF
QUERY = OFF
DEFINE TRIGGER
NAME = ON-NEW-FIELD-INSTANCE
TRIGGER_TYPE = V3
TEXT = <<<
IF :DISPLAYED_INPUT = 'A' THEN
MESSAGE('Always');
ELSIF :DISPLAYED_INPUT = 'B' THEN
MESSAGE('Before');
ELSIF :DISPLAYED_INPUT = 'C' THEN
MESSAGE('Can not');
ELSIF :DISPLAYED_INPUT = 'X' THEN
EXIT_FORM;
END IF;
NEXT_FIELD;
>>>
ENDDEFINE TRIGGER
ENDDEFINE FIELD
ENDDEFINE BLOCK DEFINE SCREEN DEFINE PAGE
PAGE = 1
PAGE_XS = 0
PAGE_YS = 0
PAGE_PX0 = 0
PAGE_PY0 = 0
PAGE_PXS = 0
PAGE_PYS = 0
PAGE_SX0 = 0
PAGE_SY0 = 0
MODE = TEXT
LINE = 3
BOILER = <<<
TEST
>>>
LINE = 5
BOILER = <<<
A - Always
B - Before
C - Can not
X - exit
>>>
MODE = BOX
LINE = 4
BOILER = <<<
p--------------q
| |
| |
| |
| |
b--------------d
>>>
ENDDEFINE PAGE
ENDDEFINE SCREEN ENDDEFINE FORM
----------------------------- CUT HERE -----------------------------Received on Wed Jun 16 1993 - 20:53:38 CEST
