ЗиК 265 зацикливается при обновлении ИБ. Как исправить?
21.03.2006
08:41
#1
"Как исправить? Зацикливается вот в этом месте:
Обработка.ОбновлениеИБ
Если Док.ПервичныйБольничный.Выбран() = 1 Тогда
//сначала поищем самый первый день самого первого больничного:
ПредыдущийПервичный = Док.ПервичныйБольничный;
Пока ПредыдущийПервичный.ПервичныйБольничный.Выбран() = 1 Цикл
ПредыдущийПервичный = ПредыдущийПервичный.ПервичныйБольничный;
КонецЦикла;
НачалоБЛ = ПредыдущийПервичный.Начало;
КонецЕсли;"
Обработка.ОбновлениеИБ
Если Док.ПервичныйБольничный.Выбран() = 1 Тогда
//сначала поищем самый первый день самого первого больничного:
ПредыдущийПервичный = Док.ПервичныйБольничный;
Пока ПредыдущийПервичный.ПервичныйБольничный.Выбран() = 1 Цикл
ПредыдущийПервичный = ПредыдущийПервичный.ПервичныйБольничный;
КонецЦикла;
НачалоБЛ = ПредыдущийПервичный.Начало;
КонецЕсли;"
23.03.2006
22:06
#2
"Такое ощущение, что неправильно указаны первичные больничные (сори за стиль).
Если не хочешь искать ошибку вручную через отладчик, то напиши:
Спс=СоздатьОбъект("СписокЗначений");
Если Док.ПервичныйБольничный.Выбран() = 1 Тогда
//сначала поищем самый первый день самого первого больничного:
ПредыдущийПервичный = Док.ПервичныйБольничный;
Пока ПредыдущийПервичный.ПервичныйБольничный.Выбран() = 1 Цикл
Если Спс.НайтиЗначение(ПредыдущийПервичный.ПервичныйБольничный)=0 Тогда
Спс.ДобавитьЗначение(ПредыдущийПервичный.ПервичныйБольничный);
Иначе
Сообщить("Смотри структуру подчиненности у б/л "+ПредыдущийПервичный.ПервичныйБольничный);
Прервать;
КонецЕсли;
ПредыдущийПервичный = ПредыдущийПервичный.ПервичныйБольничный;
КонецЦикла;
НачалоБЛ = ПредыдущийПервичный.Начало;
КонецЕсли;
Вроде все так."
Если не хочешь искать ошибку вручную через отладчик, то напиши:
Спс=СоздатьОбъект("СписокЗначений");
Если Док.ПервичныйБольничный.Выбран() = 1 Тогда
//сначала поищем самый первый день самого первого больничного:
ПредыдущийПервичный = Док.ПервичныйБольничный;
Пока ПредыдущийПервичный.ПервичныйБольничный.Выбран() = 1 Цикл
Если Спс.НайтиЗначение(ПредыдущийПервичный.ПервичныйБольничный)=0 Тогда
Спс.ДобавитьЗначение(ПредыдущийПервичный.ПервичныйБольничный);
Иначе
Сообщить("Смотри структуру подчиненности у б/л "+ПредыдущийПервичный.ПервичныйБольничный);
Прервать;
КонецЕсли;
ПредыдущийПервичный = ПредыдущийПервичный.ПервичныйБольничный;
КонецЦикла;
НачалоБЛ = ПредыдущийПервичный.Начало;
КонецЕсли;
Вроде все так."
Читают тему
(гостей: 1)