Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Стоимость продукции в одном документе из другого документа.

Стоимость продукции в одном документе из другого документа.
Я
   JuixyJes
 
29.04.19 - 17:37
В документе Заявка имеется несколько строчек в таблице "Заявка"(Продукция), при активации одной из них в двух оставшихся ТЧ строчки заполняются, если в них были данные. Среди реквизитов этих ТЧ есть реквизит  СУММА. Как мне сумму строчек Из каждой ТЧ взять только по активной "Продукции"?
 
 
   JuixyJes
 
1 - 29.04.19 - 21:57
А что, никто не знает как?
   HawkEye
 
2 - 29.04.19 - 23:07
(1) я же тебе писал... Итог() можно еще Свернуть()
   catena
 
3 - 30.04.19 - 06:30
По отбору сумму можно взять через построитель
   JuixyJes
 
4 - 30.04.19 - 09:00
(2) Итог он выдает по всем строкам, а не только по активной.
   JuixyJes
 
5 - 30.04.19 - 09:46
(2) Мне нужен итог по ЭлементФормы.ТЧ тогда, а как обратиться к этому, не знаю
   HawkEye
 
6 - 30.04.19 - 09:49
(4) у строки - нет итога ))

(5) ну имена же есть у тех "в двух оставшихся ТЧ строчки заполняются," вот по имена и обращайся...
   JuixyJes
 
7 - 30.04.19 - 10:22
(6) Если обращаться к ним, тогда итог будет рассчитываться по всей табличной части по реквизиту сумма, а мне нужно чтоб Итог высчитывался только по отфильтрованным записям
   HawkEye
 
8 - 30.04.19 - 10:25
(7) ты же пишешь: " при активации одной из них в двух оставшихся ТЧ строчки заполняются,"

т.е. в двух оставшихся заполняется только по активной строке первой, или не так?
   JuixyJes
 
9 - 30.04.19 - 10:39
Если активна 1 строка , то заполнение оставшихся тч идет одними данными
активна 2 - другими данными (8)
   JuixyJes
 
10 - 30.04.19 - 10:39
Процедура ЗаявкаПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
    
    Данные = ЭлементыФормы.Заявка.ТекущаяСтрока;
    Если НоваяСтрока Тогда 
        Данные.ИД = Новый УникальныйИдентификатор;
    КонецЕсли;

КонецПроцедуры

Процедура МатериалыПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
    
    Данные = ЭлементыФормы.Заявка.ТекущаяСтрока;
    ТекДанные = ЭлементыФормы.Материалы.ТекущаяСтрока;
    Если НоваяСтрока Тогда
        ТекДанные.ИД = Данные.ИД;
    КонецЕсли;
    
КонецПроцедуры

Процедура ЗаявкаПередУдалением(Элемент, Отказ)
    Данные = ЭлементыФормы.Заявка.ТекущаяСтрока;
    Отбор = Новый Структура("ИД",Данные.ИД);
    Масс = Материалы.НайтиСтроки(Отбор);
    масс1 = Технологии.НайтиСтроки(Отбор);
    Для каждого Строка из Масс Цикл
        Материалы.Удалить(Строка);
    КонецЦикла;
    Для каждого Строка из масс1 Цикл
        Технологии.Удалить(Строка);
    КонецЦикла;
КонецПроцедуры

Процедура ЗаявкаПриАктивизацииСтроки(Элемент)
    
    ЭлементыФормы.Надпись1.Заголовок = "Материалы: " + Строка(ЭлементыФормы.Материалы.Колонки.Сумма.ТекстПодвала)+ "р";
    ЭлементыФормы.Надпись2.Заголовок = "Технологии: " + Строка(ЭлементыФормы.Технологии.Колонки.Сумма.ТекстПодвала)+ "р";

    Данные = ЭлементыФормы.Заявка.ТекущаяСтрока;
    Если Данные = Неопределено Тогда
        Возврат;
    КонецЕсли;
    
    ЭлементыФормы.Материалы.ОтборСтрок.ИД.Значение = Данные.ИД;
    ЭлементыФормы.Материалы.ОтборСтрок.ИД.Использование = истина;
    ЭлементыФормы.Технологии.ОтборСтрок.ИД.Значение = Данные.ИД;
    ЭлементыФормы.Технологии.ОтборСтрок.ИД.Использование = истина;
    
    М=Материалы.Итог("Сумма");
    Т=Технологии.Итог("Сумма");     
    С = Т + М;
            
    ЭлементыФормы.Надпись3.Заголовок = "Всего: " + Строка(С) + "р Материалы: " + Строка(М) + "р Технологии: " + Строка(Т)+ "р";
КонецПроцедуры

Процедура ТехнологииПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
    Данные = ЭлементыФормы.Заявка.ТекущаяСтрока;
    ТекДанные = ЭлементыФормы.Технологии.ТекущаяСтрока;
    Если НоваяСтрока Тогда
        ТекДанные.ИД = Данные.ИД;
    КонецЕсли;
    


КонецПроцедуры

Процедура ЗаявкаПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
    
    
        ЭлементыФормы.Надпись1.Заголовок = "Материалы: " + Строка(ЭлементыФормы.Материалы.Колонки.Сумма.ТекстПодвала)+ "р";
        ЭлементыФормы.Надпись2.Заголовок = "Технологии: " + Строка(ЭлементыФормы.Технологии.Колонки.Сумма.ТекстПодвала)+ "р";

    
КонецПроцедуры


Вот код, как установлен фильтр.
 
 Рекламное место пустует
   bootini
 
11 - 30.04.19 - 11:12
ПостроительЗапроса = Новый ПостроительЗапроса; 
ПостроительЗапроса.ИсточникДанных = Новый ОписаниеИсточникаДанных(Заявка); 
Для Каждого ЭлементОтбора из ЭлементыФормы.Заявка.ОтборСтрок Цикл
    ЗаполнитьЗначенияСвойств(ПостроительЗапроса.Отбор.Добавить(ЭлементОтбора.ИД), ЭлементОтбора);
КонецЦикла; 
ИтогТаблицаЗначений = ПостроительЗапроса.Результат.Выгрузить();
//тут решите как посчитать ваш итог по получившейся ТЗ и выведите его в подвал

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует