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

Сумма значений реквизитов группы справочника

Автор Golickoff, 11 фев 2015, 07:42

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

Golickoff

Всем привет.
Есть справочник, состоящий из групп и элементов. У групп и элементов, само собой, одинаковые реквизиты. У каждого элемента есть реквизит "Вес". Выглядит это следующим образом:
НаименованиеКодВес
+Коробка10001
     Брюки00021.00
     Футболка00030.50
В данном случае "Коробка" -- это группа, состоящая из элементов "Брюки" и "Футболка". Каким образом можно присвоить реквизиту "Вес" группы "Коробка" значение суммы реквизитов "Вес" элементов "Брюки" и "Футболка"? То есть, нужно получить таблицу вида
НаименованиеКодВес
+Коробка100011.50
     Брюки00021.00
     Футболка00030.50
Таблица сделана абстрактно в качестве примера. Элементов в каждой группе может быть много. Групп тоже много.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

cska-fanat-kz

Вам обязательно хранить в реквизите группы сумму весов внутри группы?
Рассчитать этот суммарный вес например в отчете недостаточно?
Или функцию написать, которая будет этот суммарный вес возвращать...

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

Golickoff

На самом деле, мне это вообще не нужно. Просто я пытаюсь придумывать себе задачи и если не получается их реализовать, создаю тему на форуме :bleh:
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

LexaK

вообще темы должны быть реальными или применимы к реальности, тогда они интересны,
а такие "высосанные из пальца(21)" кроме недоумения ничего не вызывают,
кроме как встречного вопроса: - А на фига это?
если помогло нажмите: Спасибо!

Golickoff

Цитата: LexaK от 11 фев 2015, 09:57
А на фига это?
Всё дело в том, что я не программист, а только учусь. И делаю это по книгам Радченко, при этом пытаясь думать как мой будущий клиент. То есть, исходя из того что я имею, я ищу что-то, что от меня смогут потребовать, при этом не описанное в книге. Ну и как-то подумал, что гипотетическому заказчику может понадобиться общий вес группы.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

LexaK

не уверен что заказчику может понадобится сумма четных и нечетных чисел в какой-т строке,

учите конкретные вещи Бухучет, Торговлю, Зарплату, Производство
тогда вся ваша лабуда отпадет сама собой.
если помогло нажмите: Спасибо!

Golickoff

С числами я экспериментировал, пытаясь сформировать штрихкод без использования внешней компоненты. И весьма успешно, кстати.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

cska-fanat-kz

Цитата: Golickoff от 11 фев 2015, 10:54при этом пытаясь думать как мой будущий клиент

лучше думайте как будущий разработчик.
который иногда должен послушать, что хочет заказчик,
понять, а потом объяснить заказчику, что на самом деле он хочет.

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

vitasw

Цитата: Golickoff от 11 фев 2015, 11:35
С числами я экспериментировал, пытаясь сформировать штрихкод без использования внешней компоненты. И весьма успешно, кстати.
Изобретаете велосипед - ну-ну

ef0din

ПриЗаписи

Если Объект.ЭтоГруппа = Ложь И ЗначениеЗаполнено(Объект.Родитель) Тогда
ПересчитатьВесГруппы;

_ _ _ _ _ _  _

Процедура ПересчитатьВесГруппы()

// Здесь идет запрос для группы - родителя объекта, в котором выбираются значения веса всех подчиненных элементов

Таб = Запрос.Выполнить().Выгрузить();
Родитель = Объект.Группа;
Родитель = Родитель.ПолучитьОбъект();
Родитель.Вес = 0;
Для Каждого Стр ИЗ Таб Цикл
    Родитель.Вес = Родитель.Вес + Стр.Вес;
КонецЦикла;
Родитель.Записать();
КонецПроцедуры;


_ _ _  _ _  _ _


Мне кажется примерно так как-то.

Теги:

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

Рейтинг@Mail.ru

Поиск