Имя: Пароль:
1C
1С v8
Попытка Возврат; Прервать;
0 magicSan
 
08.10.14
16:20
Попытка
ПреобразованиеДата(МнСтр, 2);
Возврат; Прервать;
Исключение
КонецПопытки;

эта штука в цикле первая итерация проходит нормально на второй вылетает - понять не могу что сиё значит?
1 magicSan
 
08.10.14
16:20
Функция ПреобразованиеДата(Стр, Ном)
    Дата = СтрПолучитьСтроку(Стр, Ном);
    Возврат Дата(Число(Сред(Дата, 7, 4)), Число(Сред(Дата, 4, 2)), Число(Сред(Дата, 1, 2)));
КонецФункции
2 Aleksey
 
08.10.14
16:21
и все это обрамлено транзакциями?
3 magicSan
 
08.10.14
16:25
(2) нет. Но что бы это поменяло?
4 YFedor
 
08.10.14
16:26
(0) А после Возврат еще что-то будет? Внезапно.
5 shuhard
 
08.10.14
16:27
(0) а прервать и возврат то зачем ?
6 magicSan
 
08.10.14
16:27
Попытка
ПреобразованиеДата(МнСтр, 2);
Возврат; Прервать;
Исключение
КонецПопытки;
КодОплаты = блаблабла - уже вылетело
7 magicSan
 
08.10.14
16:28
(5) Да это не мой код - какая то обработка перестала работать, сижу фигею
8 Defender aka LINN
 
08.10.14
16:28
(0) Возврат; Прервать;
ВоЧтоБыТоНиСтало;
9 YFedor
 
08.10.14
16:29
(6) Все равно не понятно о чем. И что вылетело
10 KUBIK
 
08.10.14
16:30
Функция вызывается как процедура, не то?
11 Defender aka LINN
 
08.10.14
16:30
(8) Хотя не. Лучше так.
Возврат; Прервать; СтойОстановисьЧтоТыДелаешьСтой:
12 ssh2QQ6
 
08.10.14
16:30
Возврат; Прервать; ЗавершитьРаботуСистемы(Ложь);
13 magicSan
 
08.10.14
16:31
(9) Эта фигня в цикле цикл в процедуре, на второй итерации выходит из процедуры. При первой итерации функция как и при второй отрабатывает нормально.

Понятно что исправить можно но не ясно как раньше работало и почему сейчас на первой итерации работает.

попытка не переваривает "возврат;" ?
14 МойКодУныл
 
08.10.14
16:32
(11) You shell notr pass!
15 Defender aka LINN
 
08.10.14
16:32
(13) "на второй итерации выходит из процедуры"
На второй итерации преобразование в дату происходит успешно. Всегда ваш, К.О.
16 Ymryn
 
08.10.14
16:34
(15) 1С все-таки понимает, что вызывать функцию как процедуру - это нормально и решает жить с этим дальше?
17 Fish
 
08.10.14
16:35
Весёлый программист писал этот код :)
18 Defender aka LINN
 
08.10.14
16:35
(16) Ты так говоришь, как будто это что-то плохое...
19 magicSan
 
08.10.14
16:35
(15) дадада
20 Defender aka LINN
 
08.10.14
16:38
(19) Так что тебя смущает-то?
21 Krolik Bezobraznik
 
08.10.14
16:48
Категоричный программист. Он видимо подозревал что программа будет сопротивляться возврату и он решил убедить ее процедурой Ппрервать. Не хватает для убедительного !удара кулаком по столу" процедуры ПрекратитьРаботуСистемы();
22 Ymryn
 
08.10.14
16:50
(21) ПреркатитьРаботуСистемы() - это на случай скайнета. Если вдруг ПО станет таким умным, что будет обходить Возврат() и Прервать(), чтобы вырубить его нафиг, пока не поздно.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан