Создание обработки пометки на удаление

1. Ivan_Abc 08.12.20 07:05 Сейчас в теме
Всем привет! Давно не кодил, а тут снова пришлось, в общем сижу туплю, помогите кто чем может!)
1с 8.3, бухия учебного заведения для Казахстана
Нужно создать обработку для пометки на удаление док-тов с пустыми строками, что написать в методе ПустаяСтрока? Остальное верно написано или есть еще ошибки?
Проверяемая строка Док-ты.Приказ.Список (табл часть).Физлицо

Процедура КнопкаВыполнитьНажатие(Кнопка)
	
	Выборка = Документы.Приказ.Выбрать();
	Пока Выборка.Следующий() Цикл
		
		Если ПустаяСтрока() Тогда
			
			ДокументОбъект = Выборка.ПолучитьОбъект();
			ДокументОбъект.УстановитьПометкуУдаления(Истина);			
			
		КонецЕсли;
		
	КонецЦикла;
	
КонецПроцедуры
Показать


Заранее огромное спасибо!
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Alexei_Siva 182 08.12.20 07:13 Сейчас в теме
Видимо, проверка должна быть примерно такой
Для каждого СтрокаПриказ из ДокументОбъект.Список  Цикл
  Если не значениеЗаполнено(СтрокаПриказ.Физлицо Тогда
  ЭтоПустаяСтрока = Истина;
 КонецЕсли;
КонецЦикла;
3. Ivan_Abc 08.12.20 07:51 Сейчас в теме
(2) немного не понял, можно пожалуйста подробнее? В какое место в коде эта проверка должна быть помещена? Пока вообще не получается проверку подогнать. В своем коде не удается обратиться к реквизиту ТЧ Физлицо в методе ПустаяСтрока(), просто не знаю, что нужно написать в скобках
6. Alexei_Siva 182 08.12.20 08:29 Сейчас в теме
(3) по логике, физ лицо это ссылка на справочник физ.лица, а не строка, поэтому используем проверку значениеЗаполнено(СтрокаПриказ.Физлицо), хотя могу ошибаться и физ. лицо это строка, но и тогда проверка значениеЗаполнено(СтрокаПриказ.Физлицо) (или чтобы наверняка значениеЗаполнено(СокрЛП(СтрокаПриказ.Физлицо)) должно прокатить, хотя и ПустаяСтрока(СтрокаПриказ.Физлицо) тоже прокатит.

Также из вашего сообщения непонятно должны ли быть все строки пустыми или хотя бы одна строка, от этого тоже способ реализации немного зависит
4. XAKEP 08.12.20 08:19 Сейчас в теме
а как документ может быть с пустой строкой ?
записан, но проведен ли ?
7. Ivan_Abc 08.12.20 08:36 Сейчас в теме
(4) при переносе данные полетели
8. XAKEP 08.12.20 08:38 Сейчас в теме
(7)
тестирование и исправление
не осталось старой копии ? ( источника)
при переносе данные не исчезают


их или нет или перенос не верно делаете
9. XAKEP 08.12.20 09:30 Сейчас в теме
(8)
надеюсь без фанатизма :)
Прикрепленные файлы:
5. crazy_xela 08.12.20 08:23 Сейчас в теме
Лучше все же через запрос пойти:

Запрос = новый запрос();
Запрос.ТекстЗапроса = "ВЫБРАТЬ
	| ПриказСписок.Ссылка КАК Ссылка,
	| ПриказСписок.ФизическоеЛицо КАК ФизическоеЛицо
        |  ИЗ
	|  Документ.Приказ.Список КАК ПриказСписок
        | ГДЕ ПриказСписок.ФизическоеЛицо = ЗНАЧЕНИЕ(Справочник.ФизическиеЛица.ПустаяСсылка)";
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
	ДокументОбъект = Выборка.Ссылка.ПолучитьОбъект();
Если НЕ ДокументОбъект.ПометкаУдаления Тогда
    ДокументОбъект.УстановитьПометкуУдаления(Истина);
КонецЕсли;
КонецЦикла;
Показать


Данный код выберет документы с незаполненными физическими лицами в табличной части (даже если в табличной части будет хотябы одна строка с незаполненным физлицом)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот