Имя: Пароль:
1C
1С v8
Бизнес-процесс не останавливается программно
0 Suvar19
 
14.11.23
20:05
Вот такой код:

		ВыборкаДанные = Запрос.Выполнить().Выбрать();
		Пока ВыборкаДанные.Следующий() Цикл
			// останавливаем БП
			БизнесПроцессОбъект = ВыборкаДанные.Ссылка.ПолучитьОбъект();
			БизнесПроцессОбъект.ДатаЗавершения			= ТекущаяДата();
			БизнесПроцессОбъект.Завершен				= Истина;
			БизнесПроцессОбъект.Состояние				= Перечисления.СостоянияБизнесПроцессов.Остановлен;
			БизнесПроцессОбъект.РезультатВыполнения		= Перечисления.РезультатыВыполнения.Выполнено;
			БизнесПроцессОбъект.ОстановленАвтоматически	= Истина;
			БизнесПроцессОбъект.Записать();
		КонецЦикла;



Код проходит, ошибок нет, но с бизнес-процессаим ничего не происходит вообще.

А интерактивно остановиться получается, там лишь такой код на кнопке:

БизнесПроцессыИЗадачиКлиент.ОстановитьБизнесПроцессИзФормыОбъекта(ЭтотОбъект);

Процедура ОстановитьБизнесПроцессИзФормыОбъекта(Форма) Экспорт
	Форма.Объект.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияБизнесПроцессов.Остановлен");
	ОчиститьСообщения();
	Форма.Записать();
	ПоказатьОповещениеПользователя(
		НСтр("ru = 'Бизнес-процесс остановлен'"),
		ПолучитьНавигационнуюСсылку(Форма.Объект.Ссылка),
		Строка(Форма.Объект.Ссылка),
		БиблиотекаКартинок.Информация32);
	ОповеститьОбИзменении(Форма.Объект.Ссылка);
	
КонецПроцедуры


Подскажите пожалуйста в чем может быть дело?
1 Волшебник
 
14.11.23
20:04
В Вашем коде нет БП.Записать()
2 Волшебник
 
14.11.23
20:05
и проверьте, что транзакция фиксируется
3 Suvar19
 
14.11.23
20:16
(1) есть
(2) нет транзакции
4 Suvar19
 
14.11.23
20:16
кстати так тоже не работает: БизнесПроцессыИЗадачиВызовСервера.ОстановитьБизнесПроцесс(ПараметрКоманды)
5 Donkey_hot
 
14.11.23
20:39
(0) Странненько, но я бы покурил модуль менеджера БП, скорее всего там есть что-то готовое для вашей задачи.
6 Волшебник
 
14.11.23
20:44
(3) Вы заблуждаетесь. Чудес не бывает.
7 Волшебник
 
14.11.23
20:46
(4) Перестаньте надеяться на оболочки типа БСП, а вызывайте прямые методы объектов платформы, которые делают дело.
8 Suvar19
 
14.11.23
21:53
(6) Явно тут не чудеса, но какая то дичь в платформе может.
(7) прямые методы тоже не работаю.
9 Valdis2007
 
15.11.23
07:54
(8) ОповеститьОбИзменении(Форма.Объект.Ссылка);

смотри кто ловит это оповещение
10 Suvar19
 
15.11.23
09:29
(9) Это процедура оповещает форму списка чтобы там отобразились изменения
11 RomanYS
 
15.11.23
09:36
(8) что значит "БП не останавливается"?
Флажок "Завершен" установился?
Новые задачи создаются?
12 Suvar19
 
15.11.23
11:52
(11) это значит что ничего не происходит, код выполняется ничего не происходит
13 RomanYS
 
15.11.23
11:55
(12) В ЖР что пишется?
14 Suvar19
 
15.11.23
12:54
Разобрался, всем спасибо!
15 RomanYS
 
15.11.23
13:00
Поделился бы, что ты там записывал.
(6) как не грустно это слышать от Волшебника, но чудес не бывает