Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Войти | Зарегистрироваться )




>  как опредилить уровень группы
mariorv
Отправлено: 29.06.22, 13:38


Молчаливый
*

Группа: Пользователи
Сообщений: 2
Регистрация: 05.12.19
Пользователь №: 67659


lolmatrix @ Сегодня, 9:17 * ,

Насколько понял есть справочник номенклатуры иерархия, регистр остатков с измерением Номенклатура.Группа, есть необходимость выделить определенную номенклатуру в зависимости от уровня вложения(принадлежности к той или иной группе номенклатуры), с последующей обработкой/анализом на наличие остатков на складе при формировании движений. Когда- то делал что -то подобное вот и писнул по памяти . Через код, как мне кажеться, можно получить таблицу значений в которой номенклатура будет сопоставлена с "нужная группой" в иерархии. А поле родитель - стандартное поле, указывающее на группу, к которой относиться элемент, или не о том вопрос.
Вопрос на который отвечал видел здесь
Цитата(lolmatrix @ 04.06.22, 21:31) *
Есть регистр в котором хранятся группы номенклатуры по которым должен соблюдаться минимальный товарный запас (измеренения группаНоменклатуры и Склад, реквизит минимальный товарный запас и есть регистр ТоварыНаСкладе.Остатки. надо выбрать остатки по определненному складу. и этим товарам надо проставить количество минимального товарного запаса соответственно группе в которой лежит этот товар, в случае пересечения групп, запас выбираеся из самой нижней группы(если у группы запас 3 единицы, у товара должно быть 3 единицы

  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #175915 · Ответов: 20 · Просмотров: 4048
 

>  как опредилить уровень группы
mariorv
Отправлено: 27.06.22, 21:54


Молчаливый
*

Группа: Пользователи
Сообщений: 2
Регистрация: 05.12.19
Пользователь №: 67659


lolmatrix @ 17.06.22, 10:02 * ,
Такая функция вернет родителя- группу самого верхнего уровня, но зная глубину можно задать произвольное количество итераций

Функция  РодительВерхнегоУровня(Номенклатура.Ссылка);
  Если Не ЗначениеЗаполнено(Номенклатура.Ссылка.Родитель) Тогда
     Возврат Номенклатура.Ссылка;
  Иначе
     Возврат РодительВерхнегоУровня(Номенклатура.Ссылка.Родитель);
  КонецЕсли;
КонецФункции


и перебрать значения справочника с заполнением ТЗ
ТЗ = Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("Группа")
ТЗ.Колонки.Добавить("НужнаяГруппа")
   Для Каждого Элемент из Номенклатура Цикл
        Если  Элемент.ЭтоГруппа Тогда
                        НоваяСтрока =ТЗ.Добавить();
                        НоваяСтрока.Группа     = Элемент;
            НоавяСтрока.НужныйРодитель =  РодительВерхнегоУровня(Элемент.Ссылка);
        КонецЕсли;
    КонецЦикла;


а с полученной ТЗ уже делать что надо, так как там все группы (НИЖЕ выбранного уровня) будет связанна с нужной Группой-родителем
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #175909 · Ответов: 20 · Просмотров: 4048
 


Новые сообщения  Открытая тема (есть новые ответы)
Опрос  Опрос (есть новые голоса)
Нет новых сообщений  Открытая тема (нет новых ответов)
Нет новых голосов  Опрос (нет новых голосов)
Популярная тема  Горячая тема (есть новые ответы)
Закрыта  Закрытая тема
Нет новых  Горячая тема (нет новых ответов) Перемещена  Тема перемещена
 

RSS Текстовая версия Сейчас: 26.04.24, 6:38
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!