Hackman1971
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Код: Процедура КнопкаВыполнитьНажатие(Кнопка) ОчиститьСообщения(); i=0; j=0; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СпрНоменклатура.Ссылка КАК Ссылка, | ТоварыНаСкладахОстаткиСейчас.КоличествоОстаток, | ТоварыНаСкладахОстаткиРаньше.КоличествоОстаток, | СпрНоменклатура.ОсновноеИзображение |ИЗ | Справочник.Номенклатура КАК СпрНоменклатура | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаС, ) КАК ТоварыНаСкладахОстаткиСейчас | ПО СпрНоменклатура.Ссылка = ТоварыНаСкладахОстаткиСейчас.Номенклатура | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаР, ) КАК ТоварыНаСкладахОстаткиРаньше | ПО СпрНоменклатура.Ссылка = ТоварыНаСкладахОстаткиРаньше.Номенклатура |ГДЕ | (ТоварыНаСкладахОстаткиСейчас.КоличествоОстаток ЕСТЬ NULL) И | (ТоварыНаСкладахОстаткиРаньше.КоличествоОстаток ЕСТЬ NULL) И |(СпрНоменклатура.ЭтоГруппа = ложь) |УПОРЯДОЧИТЬ ПО | Ссылка"; Запрос.УстановитьПараметр("ДатаС", ТекущаяДата()); Запрос.УстановитьПараметр("ДатаР", ТекущаяДата() - 14 * 60 * 60 * 24); Выборка=Запрос.Выполнить().Выбрать(); Количество = Выборка.Количество(); Сообщить("Будут помечены на удаление все фотографии у " + Количество + " товаров."); Пока Выборка.Следующий() Цикл i = i + 1; Состояние("Обработано " + i + " из " + Количество); текТовар = Выборка.Ссылка.ПолучитьОбъект(); текТовар.ОсновноеИзображение = Справочники.ХранилищеДополнительнойИнформации.ПустаяСсылка(); текТовар.Записать(); //Сообщить(текТовар.ОсновноеИзображение); ТабКартинок= ПолучитьТабКартинок(Выборка.Ссылка); Для Каждого Стр Из ТабКартинок Цикл j = j+1; Об = Стр.Ссылка.ПолучитьОбъект(); Об.УстановитьПометкуУдаления(Истина); //Об.Удалить(); КонецЦикла; КонецЦикла; Предупреждение("Удаление завершено. Помечено фото на удаление: " + j); КонецПроцедуры Функция ПолучитьТабКартинок(вхНом) Запрос= Новый Запрос; Запрос.Текст= "ВЫБРАТЬ | ХранилищеДополнительнойИнформации.Хранилище, | ХранилищеДополнительнойИнформации.Ссылка |ИЗ | Справочник.ХранилищеДополнительнойИнформации КАК ХранилищеДополнительнойИнформации |ГДЕ | ХранилищеДополнительнойИнформации.Объект = &Объект | И ХранилищеДополнительнойИнформации.ВидДанных = &ВидДанных"; Запрос.УстановитьПараметр("Объект",вхНом); Запрос.УстановитьПараметр("ВидДанных",Перечисления.ВидыДополнительнойИнформацииОбъектов.Изображение); ТЗ=Запрос.Выполнить().Выгрузить(); Если Запрос.Выполнить().Пустой() Тогда Возврат Новый ТаблицаЗначений; Иначе Возврат ТЗ; КонецЕсли; КонецФункции; | | Всего записей: 168 | Зарегистр. 06-02-2009 | Отправлено: 06:32 30-09-2015 | Исправлено: Hackman1971, 07:45 30-09-2015 |
|