Список форумов BOSSForum.RU - Форум. БОСС-Кадровик
Независимый форум, посвященный системе БОСС-Кадровик
и всему, что с ней связано
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

scan . Объявить и обнулить переменную до скана

 
Начать новую тему   Ответить на тему    Список форумов BOSSForum.RU - Форум. БОСС-Кадровик -> X-язык
Предыдущая тема :: Следующая тема  
Автор Сообщение
Dimich1978



Зарегистрирован: 18.05.2010
Сообщения: 69

СообщениеДобавлено: Ср Авг 21, 2013 17:30    Заголовок сообщения: scan . Объявить и обнулить переменную до скана Ответить с цитатой

есть код, как видим переменные i и j необходимо обнулить до скана для корректной работы алгоритма, один вопрос и думаю из него же следует - Ошибку выдает "invalid column name i". Как тут можно победить ситуевину?
scan @del1
select * from prtb_used_leave
where id_period_leave in (select id_period_leave from #gmc2)
execute
{
let all_days= @del1:days_used; --дни из текущей записи (из скана)
if i=0 then {let s1=all_days-(select summanach from #nach) };

if i>0 and j=0 then { s1=all_days-s1};

if s1>=0 then {
update prtb_used_leave set days_used=s1 where id_used_leave=@del1:id_used_leave;
let j=j+1;
};
if s1<0 then {
update prtb_used_leave set days_used=0 where id_used_leave=@del1:id_used_leave;
let i=i+1;
};
};
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Dimich1978



Зарегистрирован: 18.05.2010
Сообщения: 69

СообщениеДобавлено: Ср Авг 21, 2013 17:32    Заголовок сообщения: Ответить с цитатой

на всякий случай взял в скобки все условия, но ошибка осталась
scan @del1
select * from prtb_used_leave
where id_period_leave in (select id_period_leave from #gmc2)
execute
{
return 123;
let all_days= @del1:days_used; --дни из текущей записи (из скана)
if (i=0) then {let s1=all_days-(select summanach from #nach) };

if ((i>0) and (j=0)) then { s1=all_days-s1};

if (s1>=0) then {
update prtb_used_leave set days_used=s1 where id_used_leave=@del1:id_used_leave;
let j=j+1;
};
if (s1<0) then {
update prtb_used_leave set days_used=0 where id_used_leave=@del1:id_used_leave;
let i=i+1;
};
};
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
RVV
Большой шоколадный орден
Большой шоколадный орден


Зарегистрирован: 14.01.2010
Сообщения: 449

СообщениеДобавлено: Чт Авг 22, 2013 11:51    Заголовок сообщения: Ответить с цитатой

1 Объявите СВОИ переменные до SCAN
LOCAL {_my_i := 0; _my_j := 0;};

2 Не пользуйтесь именами переменных i и j
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Dimich1978



Зарегистрирован: 18.05.2010
Сообщения: 69

СообщениеДобавлено: Пт Авг 23, 2013 16:58    Заголовок сообщения: Ответить с цитатой

Спасибо , помогла замена имен переменных.

Вопрос, если есть скан в скане. Как можно выйти из вложенного, но чтобы внешний продолжил работу.
breack рубит все.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Dimich1978



Зарегистрирован: 18.05.2010
Сообщения: 69

СообщениеДобавлено: Пт Авг 23, 2013 17:30    Заголовок сообщения: Ответить с цитатой

вроде как goto мне в помощь
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Dimich1978



Зарегистрирован: 18.05.2010
Сообщения: 69

СообщениеДобавлено: Пт Авг 23, 2013 17:54    Заголовок сообщения: Ответить с цитатой

нет, и goto останавливает работу программы почему то.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
RVV
Большой шоколадный орден
Большой шоколадный орден


Зарегистрирован: 14.01.2010
Сообщения: 449

СообщениеДобавлено: Пн Авг 26, 2013 09:44    Заголовок сообщения: Ответить с цитатой

GOTO должен работать.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов BOSSForum.RU - Форум. БОСС-Кадровик -> X-язык Часовой пояс: GMT + 4
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Pоwerеd by рhpВB © 2001, 2005 рhpВB Grouр
Русская поддержка phрВB
Rambler's Top100 Рейтинг@Mail.ru Список форумов BOSSForum.RU