|   |   | 
| 
 | Ускорение процедуры Свернуть в ТЗ | ☑ | ||
|---|---|---|---|---|
| 0
    
        Coldboy 25.10.13✎ 17:01 | 
        Здравствуйте. Как можно ускорить выполнение функции Свернуть()? можно через запрос, а то имею такой код ускорение работы процедуры Таблица.Свернуть()
 СтрокиАвтопеределов = ТаблицаПроизводства.НайтиСтроки(Новый Структура("ИзАвтопеределов", Истина)); ТаблицаАвтопеределов = ТаблицаПроизводства.Скопировать(СтрокиАвтопеределов, "НоменклатурнаяГруппа, Ингредиент, РецептураАвтопередела, ИзАвтопеределов, КоличествоИнгредиентаНорма, КоэффициентИнгредиента, ЕдиницаИзмеренияИнгредиента"); ТаблицаАвтопеределов.Свернуть("НоменклатурнаяГруппа, Ингредиент, РецептураАвтопередела, ИзАвтопеределов, КоэффициентИнгредиента, ЕдиницаИзмеренияИнгредиента", "КоличествоИнгредиентаНорма"); Работает очень долго, хочу ускорить момент Свернуть, он как раз долго и работает. | |||
| 1
    
        H A D G E H O G s 25.10.13✎ 17:06 | 
        Никак. Это максимум.     | |||
| 2
    
        H A D G E H O G s 25.10.13✎ 17:06 | 
        он как раз долго и работает.
 Неверю. | |||
| 3
    
        МихаилМ 25.10.13✎ 17:09 | 
        бред . либо неверная типизация     | |||
| 4
    
        ptiz 25.10.13✎ 17:12 | 
        (0) Долго - это сколько? Сколько строк в таблице?     | |||
| 5
    
        wms 25.10.13✎ 17:36 | 
        ну запросом сверни и сравни     | |||
| 6
    
        МихаилМ 25.10.13✎ 17:44 | 
        можно еще использовать скд, Анализ данных и возможно построитель запроса     | |||
| 7
    
        Coldboy 25.10.13✎ 18:00 | 
        я лах, простите меня ошибся строчкой ... опять ошибка была в строче РегистрыБухлагетерии.Остатки(); как и в предыдущем перевожу на запрос и думаю опять ускорение ... 
 а на самом деле нашел статью на мисте можно ускорить в разы Тз.Свернуть() функцию. | |||
| 8
    
        Coldboy 25.10.13✎ 18:01 | 
        (5) а запросом как свернуть?     | |||
| 9
    
        Fragster модератор 25.10.13✎ 18:04 | 
        Вариант синтаксиса: Скопировать по отбору
 Синтаксис: Скопировать(<ПараметрыОтбора>, <Колонки>) Параметры: | |||
| 10
    
        hhhh 25.10.13✎ 18:09 | 
        (8) проиндексируй таблицу. Тогда побыстрее будет работать     | |||
| 11
    
        kiruha 25.10.13✎ 18:10 | 
        Он еще не написал сколько строк.
 Может он в цикле 10 000 раз сворачивает | |||
| 12
    
        kiruha 25.10.13✎ 18:11 | 
        И не напишет     | |||
| 13
    
        Coldboy 25.10.13✎ 19:09 | 
        (10) индексировать то зачем обыную ТЗ?     | |||
| 14
    
        Coldboy 25.10.13✎ 19:09 | 
        http://kb.mista.ru/article.php?id=228 вот какую тему нашел кому интересно вдруг будет.     | |||
| 15
    
        Rovan модератор 25.10.13✎ 19:12 | 
        (8) в запрос умеешь ТЗ передавать ?     | |||
| 16
    
        Coldboy 25.10.13✎ 19:29 | 
        (15) нет вот и спрашиваю или где прочитать про это с комментариями лучше.     | |||
| 17
    
        Рэйв 25.10.13✎ 19:31 | 
        >>ТаблицаАвтопеределов = ТаблицаПроизводства.Скопировать(
 Нахрена? Если тз настолько юольшая, то лишнее ее копирование это чуть ли не + 2 к замедлению. | |||
| 18
    
        Coldboy 25.10.13✎ 19:39 | 
        (17) в типовой конфигурации Общепит Рарус вопрос к ним. у них знаешь скоко моментов я уже оптимизировал, тьфу тьфу, время группового перепроведения месяца с 32.5 часов до 6.5 сократил, не хило да?     | |||
| 19
    
        hhhh 25.10.13✎ 20:02 | 
        (13) в 8.0 медленно работал метод свернуть. Поэтому начиная с 8.1 придумали индексировать таблицу. Основная цель - чтобы быстрее работал метод Свернуть.     | |||
| 20
    
        Coldboy 25.10.13✎ 20:05 | 
        ТЗ.свернуть() сам индексирует и значит щас работает оптимально?
 (19) а я думал в 8.2.14 начали такие вещи править читал в обновлениях платформы ... | |||
| 21
    
        Coldboy 25.10.13✎ 20:06 | 
        (19) а разве средставим СУБД не быстрее будет? тока бы знать как в запрос и средствами субд все это рулить ...     | |||
| 22
    
        kiruha 27.10.13✎ 11:04 | 
        Когда сознаешься сколько элементов в таблице сворачиваешь ?
 Как бы несколько раз спросили ? Или проще на разработчиков 1С наехать, чем свою нетленку показать ? В цикле небось сворачиваешь по 5 000 раз ? | |||
| 23
    
        dmpl 27.10.13✎ 12:21 | 
        (19) Медленно метод Свернуть() работал в 7.7. А в 8.0 уже нормально.
 (21) Дык кто тебе скажет быстрее или нет? Надо же знать, сколько строк за раз сворачивается и сколько раз сворачивается. Можно сказать, что оптимально будет написать такой запрос, который выдаст уже все свернутое. | |||
| 24
    
        H A D G E H O G s 28.10.13✎ 11:28 | 
        "Что ж такое: были же люди как люди, и вдруг все сразу стали кретины. Парадокс! …" © Брат-2
 Фееричный аленистый метод Гения порадовал, спасибо. Про индексы, придуманные для свертки - тоже поржал, жгите еще. | |||
| 25
    
        Infsams654 28.10.13✎ 11:38 | 
        (0) А зачем НайтиСтроки из ТаблицаПередела, а потом еще раз из ТаблицаПредела их Скопировать?
 Можно сразу Скопировать(<ПараметрыОтбора>, <Колонки>) | |||
| 26
    
        Infsams654 28.10.13✎ 11:39 | 
        (25) блин, из ТаблицаПроизводства     | |||
| 27
    
        dk 28.10.13✎ 11:53 | 
        про типизацию уже было?     | |||
| 28
    
        Fragster гуру 28.10.13✎ 11:55 | 
        вот у меня есть вопрос: как ускорить соединение ТЗ которые источники данных в СКД?     | |||
| 29
    
        H A D G E H O G s 28.10.13✎ 11:56 | 
        (27) Что там не так с типизацией?     | |||
| 30
    
        Coldboy 28.10.13✎ 12:04 | 
        (22) см (7)     | |||
| 31
    
        kiruha 28.10.13✎ 12:08 | 
        (30)
 Остатки() - это неявный запрос. Пишешь свой запрос(он выполняется столько же) и там вместо последующего свернуть - сгруппировать как хошь. Если нужны несколько разрезов свертки - итоги. Если и тоги не годятся - помещаешь во временную и оттуда в пакете в разных комбинациях группирования | |||
| 32
    
        Bober 28.10.13✎ 12:11 | 
        (28) сложные условия соединения?     | |||
| 33
    
        Coldboy 28.10.13✎ 12:12 | 
        (30) за что вы так со мной?     | |||
| 34
    
        kiruha 28.10.13✎ 13:01 | 
        В смысле ? 
 Если хочешь ускорить - не метод сгруппировать нужно, а по возможности все преобразования в запросе сделать - это вплне возможно, хотя бывает очень сложно | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |