Имя: Пароль:
1C
1С v8
Таблица значение Группировка
0 alexodel
 
04.09.19
12:36
Ребят помогите пожалуйста... Есть таблица значений. Но не могу по колонке дата собирать одинаковые наименование по колонке операции и по колонке Количество собрать их если они есть...
Ну если выложить фотку .... http://prntscr.com/p1m94q

А код :
&НаСервере
Процедура ВыгрузитьНаСервереНаряд()
    
    
    // Вставить содержимое обработчика.
    ТЗ_Сырой = Новый ТаблицаЗначений;
    ТЗ_Сырой.Колонки.Добавить("Исполнитель");
    ТЗ_Сырой.Колонки.Добавить("Дата");
    ТЗ_Сырой.Колонки.Добавить("Операция");
    ТЗ_Сырой.Колонки.Добавить("Расценки");
    ТЗ_Сырой.Колонки.Добавить("КоличествоФакт");
    ТЗ_Сырой.Очистить();
    
    ТЗ_Обработка = Новый ТаблицаЗначений;
    ТЗ_Обработка.Колонки.Добавить("Исполнитель");
    ТЗ_Обработка.Колонки.Добавить("Дата");
    ТЗ_Обработка.Колонки.Добавить("Операция");
    ТЗ_Обработка.Колонки.Добавить("Расценки");
    ТЗ_Обработка.Колонки.Добавить("КоличествоФакт");
    ТЗ_Обработка.Очистить();
    
    Для каждого док из ТабСдельныхНарядов Цикл
        
        Если ЗначениеЗаполнено(Объект.Исполнитель) Тогда
            
            ТабОперации = док.СдельныйНаряд.Операции;
            
            Для каждого СтрМ из ТабОперации Цикл
                
                стрЗ1                     = ТЗ_Сырой.Добавить();
                СтрЗ1.Исполнитель         = Док.Исполнитель;
                СтрЗ1.Дата                 = Док.Дата;
                СтрЗ1.Операция             = СтрМ.Операция;
                СтрЗ1.Расценки          = СтрМ.Расценка;
                СтрЗ1.КоличествоФакт    = СтрМ.КоличествоФакт;  
                
                стрТЗН                     = ТабСводаСдельногоНаряда.Добавить();
                стрТЗН.Исполнитель         = Док.Исполнитель;
                стрТЗН.Дата             = Док.Дата;
                стрТЗН.Операция         = СтрМ.Операция;
                стрТЗН.Расценки            = СтрМ.Расценка;
                стрТЗН.Количество        = СтрМ.КоличествоФакт;

            КонецЦикла;
            
        Иначе
            Прервать;
            
        КонецЕсли;
        
    КонецЦикла;
    
    КопияТаб = ТЗ_Сырой.Скопировать();
    КопияТаб.Свернуть("Операция", "КоличествоФакт");
    Для Каждого Стр Из КопияТаб Цикл
        Сообщить(Стр.Операция);
        //Сообщить(Стр.КоличествоФакт);
    КонецЦикла;
    
    
КонецПроцедуры
1 Йохохо
 
04.09.19
12:40
Прервать -> Продолжить
5 копеек
2 alexodel
 
04.09.19
12:55
(1) Я на данный момент пока что чайник чайник ))) Так что помоги реально )))
3 Йохохо
 
04.09.19
12:59
(2) по средам не бывает реально, только посредственно
4 alexodel
 
04.09.19
13:02
(3) )))
5 alexodel
 
04.09.19
13:02
(3) Давай давай помоги будь добр...
6 ДенисЧ
 
04.09.19
13:07
ЯНХНП.
Уже есть свёртка. Что ещё надо?
7 Russiagreat
 
04.09.19
13:08
(5) так он помог
8 alexodel
 
04.09.19
13:09
Ну это свертка (6) по всему всего четыре штуки и вывел, но мне нужно по дате .... т.е. если у операции разные даты... тогда их не надо свертывать...
9 ДенисЧ
 
04.09.19
13:09
(8) Свернуть("Дата, Операция", ...)
10 alexodel
 
04.09.19
13:29
(9) Неет не сработало (((
11 catena
 
04.09.19
13:34
(10)Еще 10 сообщений будем пытать, как именно "не сработало"?
12 Дмитрий
 
04.09.19
13:40
Не сработало потому что не Док.Дата, а СтрМ.Дата
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший