Как проверить сравнить данные со следующей строкой?

1. user1296699 05.04.23 11:38 Сейчас в теме
Привет всем. Подскажите как правильно условие поставить чтобы пломбу не в каждый документ Изменение состояния оборудования отдельно создавать, а если оборудованиессылка одинаковое то добовлять следующюю запись Док = Демонтаж.Пломбы.Добавить(); в документ,. че т нифига не получается. Спасибо

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

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

	Док                = Демонтаж.Пломбы.Добавить();    
	Док.Оборудование   = Выборка.ОборудованиеСсылка;
	Док.Пломба         = Выборка.ПломбаСсылка;
	Док.МестоУстановки = Выборка.МестоУстановкиСсылка;
	Док.ТипПломбировки = Выборка.ТипПломбировкиСсылка; 
	Док.Действует      = ЛОЖЬ;                             
	 
	           	
	Демонтаж.Примечание = "Добавлено обработкой";
		
	Демонтаж.Записать(РежимЗаписиДокумента.Проведение);   
	
	КонецЦикла;

Показать
Прикрепленные файлы:
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
8. user1880116 05.04.23 13:27 Сейчас в теме
(1) Сравнивай не со следующей строкой, а с предыдущей. Которая вначала пустая, а потом подтаскивается в цикле как обработанная. И про сортировку не забудь, чтобы они подряд шли
2. user1826630 05.04.23 11:59 Сейчас в теме
Что такое "одинаковое оборудование"?
3. user1296699 05.04.23 12:46 Сейчас в теме
(2)Стр.ОборудованиеСсылка; допустим яблоко
4. пользователь 05.04.23 13:07
Сообщение было скрыто модератором.
...
6. user1296699 05.04.23 13:23 Сейчас в теме
(4)итак выбраны яблоки просто есть яблоко 1 яблоко1 , яблоко 2, яблоко 3...
7. user1880116 05.04.23 13:25 Сейчас в теме
(3)
допустим яблоко
Зачем вы пломбируете яблоки у абонента?
10. user1296699 05.04.23 13:28 Сейчас в теме
(7)Чтобы без разрешения не кушал
5. user1357043 05.04.23 13:09 Сейчас в теме
Есть такая волшебная штука - итоги в запросе и "Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам)"
9. user1296699 05.04.23 13:28 Сейчас в теме
(5)
Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам)

а можно указать по чему группировать? в синтаксис-помощнике не указано
11. пользователь 05.04.23 13:30
Сообщение было скрыто модератором.
...
12. user1296699 05.04.23 13:34 Сейчас в теме
13. user1357043 05.04.23 16:00 Сейчас в теме
(9)Вам нужно поменять запрос так, чтобы в нем были итоги по тому полю, которое определяет, что это отдельный документ.
Потом обход запроса сначала по этой группе (создание шапки документов), потом по деталям (заполнение табличной части).
Грубо говоря - нужно сделать что-то похожее на дерево значений.
Не могу сейчас, к сожалению, написать кусок кода, попробуйте в интернете поискать, как это работает.
14. user1826630 05.04.23 16:12 Сейчас в теме
(13)
итоги по тому полю, которое определяет, что это отдельный документ.
У него яблоки в ТЧ. Поэтому Яблоко не может быть определяющим полем.
Вернее - может, но тогда нет никакого смысла в реквизите ТЧ "Оборудование".
Там архитектура кривая. До запроса еще далеко учиться.
15. user1357043 05.04.23 16:24 Сейчас в теме
(14)Возможно тут исключительно для определенной задачи так понадобилось, что в определенном документе должно быть только одно оборудование, а для других задач вполне может быть несколько. Поэтому и на такой архитектуре все решаемо, просто понадобиться больше группировок.
Тоже приходилось так делать, например, при переносе остатков: куча группировок по организации, подразделению, галкам в документе (типа отражать в БУ, НУ и пр...).
Помимо яблока может понадобится еще и яблоня и яблоневый сад))
16. user1826630 05.04.23 16:27 Сейчас в теме
(15) Согласен, при переносе именно так и делали, чтобы не плодить миллионные табличные части.
Но автор нам ничего не хочет рассказывать ни про запрос, ни про результат запроса, ни про условия задачи...
17. user1296699 06.04.23 10:39 Сейчас в теме
(16) рассказал))) только я не настолько умён...че т нифига не получается
Оставьте свое сообщение

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