Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
24 ноя 2024, 12:17

Регистр Накопления и ЗАПРОС

Автор malvina_l, 15 мая 2014, 06:18

0 Пользователей и 1 гость просматривают эту тему.

malvina_l

Помогите , что-то не срабатывает. ЗАДАЧА: Есть Регистр с полями "Номенклатура " (соответственно из справочника номенклатура, "Ответственные лица " (справочник физлица) . нужно у сотрудника1, сотрудника2,сотрудника3 , удалить номенклатуру,которая находиться в папке "Корзина" из регистра.

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

TreeDogNight

Что имеется ввиду под "папка Корзина"? Группа в справочнике?

malvina_l

Цитата: TreeDogNight от 15 мая 2014, 08:24
Что имеется ввиду под "папка Корзина"? Группа в справочнике?
да группа

TreeDogNight

Точно не уверен, что получится, но попробуйте вот так:

Корзина = Справочники.Номенклатура.НайтиПоКоду("13825");
Сотр1 = Справочники.ФизическиеЛица.НайтиПоНаименованию("ФИО сотра");
Сотр2 = Справочники.ФизическиеЛица.НайтиПоНаименованию("ФИО сотра");
Сотр3 = Справочники.ФизическиеЛица.НайтиПоНаименованию("ФИО сотра");

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Товары.Номерклатура.Наименование
|ИЗ
| РегистрНакопления.Товары КАК Товары
|ГДЕ
| Товары.ФизЛицо.Наименование = &Сотр1
| И &Сотр2
| И &Сотр3
| И Товары.Номерклатура.Наименование В ИЕРАРХИИ(&Корзина)
|
|УПОРЯДОЧИТЬ ПО
| Товары.Физлицо.Наименование"

Запрос.УстановитьПараметр("Сотр1", Сотр1);
Запрос.УстановитьПараметр("Сотр2", Сотр2);
Запрос.УстановитьПараметр("Сотр3", Сотр3);
Запрос.УстановитьПараметр("Корзина", Корзина);

Выборка = Запрос.Выполнить().Выбрать();

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

cska-fanat-kz

TreeDogNight, ТС'у надо записи в регистре очистить, а не элементы справочника удалить.

Может пойти другим путем? Отобрать документы, которые делают движения в этот регистр, отредактировать их табличные части и перепровести.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

malvina_l

Цитата: cska-fanat-kz от 15 мая 2014, 10:38
TreeDogNight, ТС'у надо записи в регистре очистить, а не элементы справочника удалить.

Может пойти другим путем? Отобрать документы, которые делают движения в этот регистр, отредактировать их табличные части и перепровести.
Я с этим кое-как , новичок, поэтому тяжеловато (

cska-fanat-kz

Вам вообще зачем номенклатуру удалять из регистра?
Может вам надо ОСТАТКИ ОБНУЛИТЬ?

(встроенный модуль ясновидения уже дымится от перегруза)
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

malvina_l

Цитата: cska-fanat-kz от 15 мая 2014, 10:49
Вам вообще зачем номенклатуру удалять из регистра?
Может вам надо ОСТАТКИ ОБНУЛИТЬ?

(встроенный модуль ясновидения уже дымится от перегруза)
нужно номенклатуру из регистра удалить . такое задание

cska-fanat-kz

Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск