Гость
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Ошибка при отладке процедуры / 4 сообщений из 4, страница 1 из 1
18.02.2016, 16:16
    #39174466
m7m
m7m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при отладке процедуры
Отладчик спотыкается с сообщением
Overflow occurred during data type conversion. conversion error from string "......"
на вот таком:

Код: sql
1.
2.
3.
  update Tbl
    set Enddate = :Meterenddate - :Offset_Enddate
    where ....




Переменные
Meterenddate - date
Offset_Enddate - integer

поле в таблице
Enddate - date
...
Рейтинг: 0 / 0
19.02.2016, 05:33
    #39174879
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при отладке процедуры
Сделай, пожалуйста, тесткейз - скрипт с тестовой таблицей и процедурой. Я тоже ленивый.
...
Рейтинг: 0 / 0
19.02.2016, 07:04
    #39174889
m7m
m7m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при отладке процедуры
IBExpertСделай, пожалуйста, тесткейз - скрипт с тестовой таблицей и процедурой. Я тоже ленивый.

Без проблем


Код: 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.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
CREATE TABLE TMP_TBL (
    CODE     INTEGER,
    ENDDATE  DATE
);

COMMIT;

SET TERM ^ ;

create or alter procedure Tmp_Test
as
declare variable Meterenddate   date;

declare variable Offset_Enddate integer;
begin

  delete from Tmp_Tbl
    where Code = 1;
  insert into Tmp_Tbl (Code)
    values (1);

  Offset_Enddate = 0;

  Meterenddate = date '01.01.2016';

  -- Вот здесь и скажет все что думает
  update Tmp_Tbl
    set Enddate = :Meterenddate - :Offset_Enddate
    where Code = 1;
end^

SET TERM ; ^

/* Следующие операторы GRANT сгенерированы автоматически */

GRANT SELECT,INSERT,DELETE,UPDATE ON TMP_TBL TO PROCEDURE TMP_TEST;

/* Существующие привилегии на эту процедуру */

GRANT EXECUTE ON PROCEDURE TMP_TEST TO SYSDBA;
COMMIT;

...
Рейтинг: 0 / 0
19.02.2016, 09:21
    #39174930
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при отладке процедуры
Поковырял... В упомянутом апдейте при препарировании оба параметра определяются как date, а отладчик один из них подсовывает как integer. Не знаю, как это эмулировать.
Явный кастинг второго параметра к integer решает проблему, но автоматом я все кастить не буду, ибо уже пробовал и натыкался на грабли.
...
Рейтинг: 0 / 0
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Ошибка при отладке процедуры / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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