Гость
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Отладка функции и RETURN. / 4 сообщений из 4, страница 1 из 1
19.08.2021, 03:04
    #40091649
CyberMax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отладка функции и RETURN.
CREATE OR ALTER FUNCTION TEST_FUN
RETURNS INTEGER
AS
BEGIN
IF (1 = 1) THEN
RETURN 1;

RETURN 2;
END[SRC sql][/SRC]

При пошаговой отладке функции, отладчик доходит до RETURN 1 и продолжает дальше выполнять шаги. По итогу отладки получается, что функция возвращает 2, но на самом деле 1.
...
Рейтинг: 0 / 0
20.08.2021, 03:42
    #40092089
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отладка функции и RETURN.
Исправил.
...
Рейтинг: 0 / 0
25.08.2021, 09:21
    #40093010
CyberMax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отладка функции и RETURN.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
SET TERM ^ ;

CREATE OR ALTER PACKAGE TEST_PACKAGE
AS
BEGIN
    FUNCTION MAIN() RETURNS INTEGER;
END^

RECREATE PACKAGE BODY TEST_PACKAGE
AS
BEGIN
    FUNCTION MULT(ARG INTEGER) RETURNS INTEGER
    AS
    BEGIN
        RETURN :ARG * 2;
    END

    FUNCTION MAIN() RETURNS INTEGER
    AS
    DECLARE VARIABLE VAL INTEGER;
    BEGIN
        :VAL = TEST_PACKAGE.MULT(10);

        RETURN TEST_PACKAGE.MULT(100);
    END
END^

SET TERM ; ^



1. Сейчас при отладке функции, когда отладчик доходит до RETURN, сразу же происходит переход на END и закрытие окна с отладкой функции. Можно сделать, чтобы окно не закрывалось? Мне надо посмотреть параметры и прочие вещи по окончанию работы функции.
2. Невозможно отладить строку "RETURN TEST_PACKAGE.MULT(100);" - режим входа внутрь отключен. Отладка строки ":VAL = TEST_PACKAGE.MULT(10);" работает без проблем.
...
Рейтинг: 0 / 0
25.08.2021, 10:08
    #40093018
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отладка функции и RETURN.
CyberMax

1. Сейчас при отладке функции, когда отладчик доходит до RETURN, сразу же происходит переход на END и закрытие окна с отладкой функции. Можно сделать, чтобы окно не закрывалось? Мне надо посмотреть параметры и прочие вещи по окончанию работы функции.


Не совсем понимаю, какие именно параметры и прочие вещи ты собираешься смотреть ПОСЛЕ того, как выполнение функции завершено и управление вернулось в основную программу. Вот там и смотри то, что надо.

CyberMax

2. Невозможно отладить строку "RETURN TEST_PACKAGE.MULT(100);" - режим входа внутрь отключен. Отладка строки ":VAL = TEST_PACKAGE.MULT(10);" работает без проблем.


Это сделаю.
...
Рейтинг: 0 / 0
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Отладка функции и RETURN. / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]