УПП, формирование записей книги продаж: ускоряем заполнение при большом объеме реализаций

Публикация № 617455

Администрирование - Производительность и оптимизация (HighLoad)

20
В конце апреля 2017 года ко мне обратилась бухгалтер по НДС с жалобой на очень длительное заполнение документа "Формирование записей книги продаж" по реализации. По ее словам, заполнение документа могло продолжаться от 40 минут до часа за месяц... Разбираемся в ситуации.

Итак, дана находящаяся в актуальном состоянии клиент-серверная УПП. Квартальный объем документов реализации у нас приличный, но далеко не рекордный — примерно около 40 тыс. реализаций товаров и услуг, правда, с тенденцией к увеличению. Пришлось открыть конфигуратор и взяться за изучение 1Сного кода. Результатами решил поделиться с сообществом, потому что вполне может быть, что у кого-то возникнет та же проблема либо в УПП, либо в УТ 10, где этот документ устроен аналогично.

Вскрытие показало, что грабли ожидали нас в модуле документа ФормированиеЗаписейКнигиПродаж, а более конкретно - в процедуре РаспределитьОплатыПоДеревуСФ. В данной процедуре выполняется отбор из таблицы РаспределенныеОплаты с помощью построителя запроса. Отбор несложный, но используются операции на больше/меньше:

Отбор = Построитель_РаспределенныеОплаты.Отбор;
Отбор.Добавить("СчетФактура");
Отбор.СчетФактура.Использование = Истина;
Отбор.Добавить("РаспределеннаяОплата");
Отбор.РаспределеннаяОплата.ВидСравнения = ВидСравнения.Больше;
Отбор.РаспределеннаяОплата.Значение = 0;
Отбор.РаспределеннаяОплата.Использование = Истина;

Таблица РаспределенныеОплаты в базах с большим объемом реализаций обычно не совсем мала — в моем случае она имела на март месяц пару десятков тысяч строк. Но главная проблема даже не в этом, а в том, что в дальнейшем этот отбор делается многократно в цикле с большим количеством итераций:

Для каждого СтрокаСФ Из Дерево_НДСНачисленный.Строки Цикл

НаличиеОплатыНеТребуется = (СтрокаСФ.Строки[0].МоментОпределенияНалоговойБазыНДС = МоментОпределения_ПоОтгрузке) Или Дата >= '20080101';
ТаблицаОплат.Очистить();
Отбор = Построитель_РаспределенныеОплаты.Отбор;
Отбор.СчетФактура.Значение = СтрокаСФ.СчетФактура;
Отбор.РаспределеннаяОплата.ВидСравнения = ?(СтрокаСФ.СуммаСНДС>0,ВидСравнения.Больше,ВидСравнения.Меньше);

Построитель_РаспределенныеОплаты.Выполнить();

Собственно, вот здесь и проявляются искомые «тормоза» - этот циклический фрагмент мог гоняться от получаса и дольше в зависимости от количества документов в течение месяца.

Сначала я попробовал решить вопрос «малой кровью», проиндексировав таблицу РаспределенныеОплаты, но совместно с построителем запроса никакого эффекта это не дало. Тогда было решено отказаться от построителя и переписать механизм с использованием метода НайтиСтроки. Предлагаю вашему вниманию переписанную часть процедуры с моими комментариями.

Процедура РаспределитьОплатыПоДеревуСФ(Дерево_НДСНачисленный, ТаблицаРезультатов, СписокСчетовФактур, РаспределенныеОплаты, ОтражатьВРеестре = Истина, ОтражатьВидНачисления = Ложь )

НДСНалоговыйПериод = Неопределено;

// Далее используются следующие комментарии
// [-] и дальнейшее комментирование - исходный фрагмент удален
// [+] {...} - новый фрагмент вставлен

// [-] VVP - удаляем подготовку построителя и его отбора
//Построитель_РаспределенныеОплаты = Новый построительЗапроса();
//Построитель_РаспределенныеОплаты.ИсточникДанных = Новый ОписаниеИсточникаДанных(РаспределенныеОплаты);
//
//// Подготовка структуры отбора
//Отбор = Построитель_РаспределенныеОплаты.Отбор;
//Отбор.Добавить("СчетФактура");
//Отбор.СчетФактура.Использование = Истина;
//Отбор.Добавить("РаспределеннаяОплата");
//Отбор.РаспределеннаяОплата.ВидСравнения = ВидСравнения.Больше;
//Отбор.РаспределеннаяОплата.Значение = 0;
//Отбор.РаспределеннаяОплата.Использование = Истина;
//
//Построитель_РаспределенныеОплаты.Порядок.Добавить("ДатаОплаты");

ТаблицаОплат = Новый ТаблицаЗначений();
ТаблицаОплат.Колонки.Добавить("ДокументОплаты");
ТаблицаОплат.Колонки.Добавить("ДатаОплаты",Новый ОписаниеТипов("Дата", , , Новый КвалификаторыДаты(ЧастиДаты.ДатаВремя)));
ТаблицаОплат.Колонки.Добавить("СуммаОплаты",Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15,2)));

// [-] VVP - удаляем ссылку на таблицу источника построителя
//ТаблицаИсточникаПостроителя = Построитель_РаспределенныеОплаты.ИсточникДанных.ИсточникДанных;

// [+] VVP - делаем свою "таблицу источника построителя" и индексируем ее {
ТаблицаИсточникаПостроителя = РаспределенныеОплаты.Скопировать ();
ВыборкаОплат = РаспределенныеОплаты.СкопироватьКолонки ();
ТаблицаИсточникаПостроителя.Индексы.Добавить ("СчетФактура");
// }

МоментОпределения_ПоОтгрузке = Перечисления.МоментыОпределенияНалоговойБазыНДС.ПоОтгрузке;

Для каждого СтрокаСФ Из Дерево_НДСНачисленный.Строки Цикл

ТаблицаОплат.Очистить();

Если УчетНДС.ДляСчетаФактурыНеТребуетсяОплата(СтрокаСФ.СчетФактура) Тогда

НаличиеОплатыНеТребуется = Истина;

Иначе

НаличиеОплатыНеТребуется = (СтрокаСФ.Строки[0].МоментОпределенияНалоговойБазыНДС = МоментОпределения_ПоОтгрузке) Или Дата >= '20080101';

// [-] VVP - удаляем запрос построителем
//Отбор = Построитель_РаспределенныеОплаты.Отбор;
//Отбор.СчетФактура.Значение = СтрокаСФ.СчетФактура;
//Отбор.РаспределеннаяОплата.ВидСравнения = ?(СтрокаСФ.СуммаСНДС>0,ВидСравнения.Больше,ВидСравнения.Меньше);
//
//Построитель_РаспределенныеОплаты.Выполнить();
//Если Построитель_РаспределенныеОплаты.Результат.Пустой() и не НаличиеОплатыНеТребуется и СтрокаСФ.СуммаСНДС >= 0 Тогда
// // Оплата не обнаружена
// Продолжить;
//КонецЕсли;
//
//ВыборкаОплат = Построитель_РаспределенныеОплаты.Результат.Выгрузить(ОбходРезультатаЗапроса.Прямой);

// [+] VVP - делаем свой "запрос" данных через НайтиСтроки и далее навигацией по строкам {

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

Если ((СтрокаСФ.СуммаСНДС > 0) И (СтрокаОплатыПоСФ.РаспределеннаяОплата > 0)) или
((СтрокаСФ.СуммаСНДС <= 0) И (СтрокаОплатыПоСФ.РаспределеннаяОплата < 0)) Тогда

СтрокаВыборкиОплат = ВыборкаОплат.Добавить ();

ЗаполнитьЗначенияСвойств(СтрокаВыборкиОплат, СтрокаОплатыПоСФ);

КонецЕсли;

КонецЦикла;

ВыборкаОплат.Сортировать ("ДатаОплаты");

Если ВыборкаОплат.Количество()=0 и не НаличиеОплатыНеТребуется и СтрокаСФ.СуммаСНДС >= 0 Тогда

// Оплата не обнаружена
Продолжить;

КонецЕсли;

// }

СуммаКПогашению = СтрокаСФ.СуммаСНДС;

В 

... и далее код от 1С без изменений.

Добавлю, что индексация таблицы по колонке СчетФактура в данном случае несколько увеличивает скорость поиска, но несущественно, а вот отказ от построителя в пользу метода НайтиСтроки дает огромную прибавку в скорости даже на неиндексированной таблице. В случае с моей УПП скорость выполнения процедуры без индексации таблицы увеличилась примерно в 10 раз — с 40 минут до 4, а с индексацией удалось добиться примерно 3 минут вместо 4. В конечном итоге я все же оставил индексацию таблицы в рабочем коде.

20

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. ushakovdv 02.05.17 10:27 Сейчас в теме
Спасибо! 20000 строк заполняет за 16 секунд!
2. spectre1978 50 04.05.17 13:10 Сейчас в теме
(1) Рад, что оказалось полезным.
3. vis_tmp 30 14.05.17 20:11 Сейчас в теме
Зачем разработчики сделали это на построителе?...
4. spectre1978 50 14.05.17 22:47 Сейчас в теме
(3) при наличии сложных условий на построителе код, конечно, красивее и читабельнее. Только скорость оставляет желать сильно много лучшего.
5. Lusha_28 33 26.07.17 08:43 Сейчас в теме
Большое спасибо за вашу статью, очень круто. У нас 40-50 тыс. реализаций и возвратов в месяц, формирование записей книги продаж было -30-40мин., теперь -2-3минуты.
И маленький вопрос:
можно конструкцию
СтрокаВыборкиОплат = ВыборкаОплат.Добавить ();

Для каждого Колонка из ВыборкаОплат.Колонки Цикл

ИндексКолонки = ВыборкаОплат.Колонки.Индекс (Колонка);
СтрокаВыборкиОплат.Установить(ИндексКолонки, СтрокаОплатыПоСФ.Получить (ИндексКолонки));

КонецЦикла;
Показать

заменить на
СтрокаВыборкиОплат = ВыборкаОплат.Добавить ();
ЗаполнитьЗначенияСвойств(СтрокаВыборкиОплат, СтрокаОплатыПоСФ);
?
spectre1978; +1 Ответить
6. spectre1978 50 26.07.17 09:09 Сейчас в теме
(5)да, конечно, и это будет правильно
7. spectre1978 50 28.07.17 08:35 Сейчас в теме
Внес изменение в публикацию в соответствии с заметкой в (5). Спасибо за уточнение!
Оставьте свое сообщение

См. также

Весёлые картинки о работе Performance Monitor на Windows Server 2016 Std по мотивам расследования потери производительности на базе 1С 16

Статья Системный администратор Нет файла v8 Windows Бесплатно (free) Производительность и оптимизация (HighLoad)

Данная публикация посвящена одной особенности Performance Monitor на Windows Server 2016 Std. Как понимать графики Performance Monitor на Windows Server 2016 Std при расследовании проблем в работе 1С.

22.10.2019    2201    EugeneSemyonov    10       

Мониторинг высоконагруженной системы 38

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad) Администрирование данных 1С

Высоконагруженной системе (более 8000 клиентских сессий) мониторинг необходим. Про опыт использования инструментов для мониторинга – самописной системы информирования, написанной на C#, и конфигурации «Центр контроля качества» в связке с системой отображения данных Grafana, на конференции Infostart Event 2018 Education рассказал Олег Репников.

13.09.2019    4235    Repich    4       

Использование Zabbix для сбора информации о серверных вызовах и управляемых блокировках с сервера 1С Предприятия, работающего на платформе GNU/Linux 73

Статья Системный администратор Программист Нет файла v8 Linux Бесплатно (free) Администрирование данных 1С Zabbix

Описанные в данном опусе механизмы ни в коей мере не противопоставляются тому, что реализует КИП от 1С или какие-либо другие инструменты (решения)! Это всего лишь еще один взгляд на "проблему", который может быть полезен в некоторых ситуациях.

10.09.2019    8249    Sloth    11       

Анализ производительности APDEX 65

Отчеты и формы Системный администратор Программист Внешний отчет (ert,erf) v8 1cv8.cf Бесплатно (free) Производительность и оптимизация (HighLoad)

Отчет для просмотра и анализа замеров производительности в конфигурациях на базе БСП.

31.08.2019    3472    93    YPermitin    7       

Чеки ККМ для расчетов с ИП по безналу. Новые обязательные реквизиты в чеке 32

Статья Программист Нет файла v8 v8::ОУ УТ11 УУ Windows Оптовая торговля Бесплатно (free) Практика программирования ККМ Разработка

Новые требования законодательства по пробитию чеков ККМ при расчетах с индивидуальными предпринимателями по безналу. Нюансы подключения интеграционной компоненты ДТО 10.5.0 на примере кассы ККТ АТОЛ 11Ф и конфигурации 1С УТ 11.4. Необходимые доработки типовой конфигурации УТ 11.4 для вывода на печать новых обязательных реквизитов: покупатель, ИНН, ГТД, страна происхождения.

22.07.2019    6727    ids79    16       

Неочевидные проблемы производительности: важность системного подхода при анализе 50

Статья Программист Нет файла v8 Россия MS SQL Бесплатно (free) Производительность и оптимизация (HighLoad)

Часто программисты и 1С-ники сталкиваются с совершенно необъяснимыми на первый взгляд проблемами. Но это потому, что их внимание направлено только на один сегмент системы, а не на всю систему полностью. О том, почему нужно стараться смотреть на ситуацию комплексно, рассказал специалист по производительности компании SOFTPOINT Александр Денисов.

19.07.2019    4797    Филин    12       

Ловля блокировок на связке "Microsoft SQL server - 1С" 38

Статья Системный администратор Программист Нет файла v8 v8::blocking MS SQL Бесплатно (free) Производительность и оптимизация (HighLoad)

Материал относится к базам данных на связке «1С - MS SQL Server». Один из способов отлова блокировок в бд 1С . Переход к управляемым блокировкам через режим "Автоматический и управляемый".

16.07.2019    4204    fhqhelp    0       

Анти-оптимизация: как мы ускорили запрос в 4 раза, сделав его неоптимальным 57

Статья Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad) Практика программирования Решение задач на 1С:Специалист Разработка

В этой статье приведен пример неочевидной "оптимизации" запроса, которая противоречит всем правилам, описанным в книгах для подготовки к сертификации "1С:Эксперт по технологическим вопросам", а также преподаваемым на курсах подготовки экспертов.

02.07.2019    6598    igordynets    119       

Ускорение чтения правил обмена в УПП 1.3 в 20 раз! 69

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Производительность и оптимизация (HighLoad)

Способ оптимизации чтения правил обмена конвертации данных. Может понадобиться при большом размере правил и высокой периодичности обмена.

27.06.2019    5185    YPermitin    16       

Хотите снизить нагрузку на процессор сервера в 2 раза? 21

Статья Системный администратор Программист Нет файла v8 Windows Бесплатно (free) Производительность и оптимизация (HighLoad)

В статье рассмотрено влияние частого запуска регламентных заданий на процессор сервера 1С.

27.06.2019    4633    Дмитрий74Чел    6       

Непридуманные истории по оптимизации. История 1 82

Статья Системный администратор Программист Нет файла v8 1cv8.cf Россия Бесплатно (free) Производительность и оптимизация (HighLoad)

Первая статья из планируемого цикла об оптимизации приложений на базе 1С. Без теории. Одна практика.

13.06.2019    8078    Repich    117       

За 5 шагов добавляем мониторинг счетчиков производительности серверов MS SQL и 1С 91

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Статистика базы данных Производительность и оптимизация (HighLoad)

Мы расскажем и покажем, как добавить данные счетчиков производительности серверов 1С и MS SQL в нашу базу мониторинга за 15 минут. Приведем список наиболее важных из них, опишем основные особенности.

28.05.2019    8576    ivanov660    5       

Не думать о секундах свысока... 56

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Производительность и оптимизация (HighLoad)

Несколько примеров оптимизации типовой конфигурации УТ11. Описанные приемы подходят для многих других конфигураций.

21.05.2019    4820    vasilev2015    21       

Альтернативная стратегия управления блокировками 45

Статья Программист Архив с данными v8 v8::blocking 1cv8.cf Россия MS SQL Бесплатно (free) Производительность и оптимизация (HighLoad)

Данная публикация освещает одну из альтернативных стратегий блокирования данных на уровне MS SQL Server, которая недоступна средствами 1С, но может быть весьма полезной. Разбирается практический пример.

20.05.2019    4228    zhichkin    15       

Как работают управляемые блокировки 122

Статья Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Все типовые конфигурации содержат ошибки, потому как управляемые блокировки в 1С слишком уж "управляемые", при понижении уровня изоляции про некоторые "нюансы" просто забыли. Для создания и эксплуатации качественной системы, которая способна поддерживать транзакционную целостность данных при параллельной работе, информацию в этой статье желательно знать, хотя, конечно, ничего особо нового я не открыл.

29.04.2019    14131    comol    198       

Странное потребление места на диске С 33

Статья Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Решение проблемы постоянного роста папки %AppData%/Local/Temp.

26.04.2019    11048    kuzyara    12       

Включение встроенного в платформу механизма "Копии базы данных" и использование "Дата Акселератора". Новый стандартный механизм использования баз OLAP в 1С 51

Статья Системный администратор Программист Нет файла v8 Россия Бесплатно (free) Производительность и оптимизация (HighLoad)

С версии 1С 8.3.14 в платформе появился новый функционал «Копии базы данных». В данной публикации я хочу рассказать, как включить использование данного механизма в платформе 1с и как его использовать для получения отчетов с копии базы данных, которая может быть вынесена на внешний сервер относительно текущей базы данных, а также как использовать систему «Дата акселератор», в которой база данных целиком размещена в оперативной памяти рабочего сервера кластера серверов «1С:Предприятия».

25.04.2019    8899    Elf1k    27       

5 простых шагов и 15 минут на разворачивание инструмента мониторинга проблем производительности базы 1С 202

Статья Системный администратор Программист Нет файла v8 Windows Бесплатно (free) Производительность и оптимизация (HighLoad)

В этой статье мы разберем механизм использования конфигурации "Анализ технологического журнала" на практике, и всего через 15 минут работы вы получите функциональный, удобный инструмент мониторинга проблем производительности базы 1С.

18.04.2019    19207    ivanov660    68       

Как разбить базу на файлы и не сойти с ума 108

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Разбиение базы данных 1C на файлы и последующее сопровождение. Нюансы, грабли и прочее.

06.04.2019    9543    YPermitin    29       

Как одно изменение конфигурации PostgreSQL улучшило производительность медленных запросов в 50 раз 124

Статья Системный администратор Программист Нет файла v8 1cv8.cf Россия Бесплатно (free) Производительность и оптимизация (HighLoad)

В связи с санкциями и другими событиями сейчас все более и более актуальна тема перевода ПО компаний на отечественное и свободное программное обеспечение. Одной из самых востребанных СУБД на рынке на данный момент является PostgreSQL - надежная, высокопроизводительная и хорошо масштабируемая СУБД, которая является прямым конкуретном таким крупным компаниям с их топовыми продуктами, как Oracle, IBM и Microsoft. Однако каждый, кто переходит на PostgreSQL, сталкивается с трудностями, прежде всего с настройкой и производительностью. Не обошли проблемы с производительностью "слоника" и меня. Предлагаю вашему вниманию перевод статьи "How a single PostgreSQL config change improved slow query performance by 50x" автора Pavan Patibandla, которая мне помогла улучшить производительность PostgreSQL.

18.03.2019    10470    w.r.    23       

Простое программное решение проблем с блокировками SQL 17

Статья Системный администратор Программист Нет файла v8 v8::blocking 1cv8.cf Россия Бесплатно (free) Производительность и оптимизация (HighLoad)

Описание одного из способов программного решения проблемы блокировок при проведении документов в клиент-серверной 1С.

06.03.2019    6393    dmitrydemenew    38       

Ещё раз о суммировании группировок в СКД 60

Статья Программист Нет файла v8 v8::СКД 1cv8.cf УУ Производство готовой продукции (работ, услуг) Бесплатно (free) Практика программирования Разработка

Начинающие специалисты, создающие отчеты в СКД, часто сталкиваются с вопросом о суммировании результатов группировок. Столкнувшись с такой задачей, я понял, что часто проблемы возникают от неправильного понимания самой задачи, а также недопонимания действия механизмов платформы. В приведенной ниже статье попробуем с этим разобраться.

11.02.2019    7372    Dioneo    17       

Производительность сервера 1С и фоновые задания 63

Статья Системный администратор Нет файла v8 1cv8.cf Россия Windows Бесплатно (free) Производительность и оптимизация (HighLoad)

В падении производительности сервера 1С зачастую виноваты не регламентные / фоновые задания, они выполняют полезную работу. Но задания нельзя оставлять «наедине» с базой.

05.02.2019    11479    user715208    38       

Новый режим реструктуризации (обновление базы данных на сервере в режиме v2) 170

Статья Системный администратор Программист Нет файла v8 1cv8.cf Бесплатно (free) Производительность и оптимизация (HighLoad)

Данная статья скорее является заметкой и отчетом об успешном использовании нового механизма реструктуризации баз данных 1С. Актуально для больших баз данных.

31.10.2018    19603    Dach    46       

Ограничения и недостатки производственного учёта в 1С: УНФ 40

Статья no Нет файла v8 УНФ УУ Производство готовой продукции (работ, услуг) Бесплатно (free) Управление бизнес-процессами (BPM) Бухгалтерский учет Производство

У любого программного продукта (и не только программного, да и не только у продукта) существуют свои сильные и слабые стороны. О многих сильных сторонах 1С: УНФ (Управление нашей фирмой) я писал и снимал обучающие видеоролики. Мне действительно нравится данная программа в силу сочетания функциональности и простоты учёта. Но давайте объективно коснёмся недостатков 1С: УНФ при внедрении на производственных предприятиях. Но сначала про…

30.10.2018    12833    Gavrik    22       

Нетривиальные подходы в решении всем известных проблем: ускорение «больших» документов в 1С и ускорение поиска по подстроке. Как добиться эффекта в разы? 62

Статья Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Часто у пользователей 1С поиск информации по большим спискам данных по подстроке занимает продолжительное время. Павел Баркетов рассматривает причины торможения запросов с поиском по подстроке и описывает возможности и подходы к их оптимизации и ускорению. Также в статье разобраны причины длительного проведения «больших» документов (более 10 000 строк) и даны рекомендации по ускорению этих операций.

30.08.2018    11513    gallam99    31       

Кейс: как мы разрабатывали систему автоматизации анализа ошибок, связанных со скоростью работы 1С 43

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Бурмистров Андрей рассказывает о создании инструмента по автоматизации анализа неоптимальных запросов в коде 1С. Он поднимает вопрос о предпосылках создания этого инструмента, рассказывает о возникших форс-мажорных ситуациях, с которыми столкнулась команда в процессе разработки, и о том, как они с ними справлялись.

27.08.2018    7804    Andreynikus    20       

3000 пользователей на трехъядерном Athlon – сверхтонкий веб-клиент для 1С 98

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Юрий Лазаренко поделится опытом ускорения 1С нестандартными методами, в том числе с помощью http-сервисов. Он расскажет, как с помощью сверхтонкого клиента для 1С и интеграции с сайтом удалось добиться ускорения 1С на порядок. Также в статье приведена статистика по отчету о нагрузочном тестировании сверхтонкого клиента для 1С:ITIL.

16.08.2018    11809    TitanLuchs    28       

Когда условие в срезе последних даже вредит 20

Статья Системный администратор Программист Нет файла v8 1cv8.cf Бесплатно (free) Производительность и оптимизация (HighLoad)

Спойлер: оптимизатор MSSQL видит внешние, по отношению к срезу, условия, и строит план с их учетом.

05.08.2018    8144    nicxxx    105       

Оптимизация без оптимизации: как мы ускорили 1С в 10 раз без трудоемкой оптимизации запросов и алгоритмов. Практический опыт 81

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Можно ли ускорить 1С, не оптимизируя запросы, не разбивая транзакции и не наращивая оборудование? В статье Аверьянова Алексея рассмотрены три практических кейса повышения производительности системы без трудоемкой оптимизации: отложенное резервирование «в один поток», отложенное создание и проведение реализаций.

26.07.2018    13660    avryanovalexey    100       

Альтернативные технологии нагрузочного тестирования серверной части кода прикладных решений на платформе 1С 56

Статья Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Евгений Филиппов знакомит с альтернативными технологиями нагрузочного тестирования серверной части кода прикладных решений на платформе 1С. Он рассказывает об узких местах традиционной технологии нагрузочного тестирования и методах их обхода путем переноса работы с клиентских соединений на фоновые задания и изменения способа управления сеансами. Также автор приводит примеры с реальных проектов, подтверждающие жизнеспособность предложенных технологий.

12.07.2018    8666    jf2000    10       

Архитектура ИТ-системы на базе 1С в крупной организации. Часть 2. Чудес не бывает 81

Статья Системный администратор Нет файла v8 УТ11 Россия Бесплатно (free) Производительность и оптимизация (HighLoad)

Развернуто отвечаю, как мы боремся с зависаниями системы и вообще решаем проблемы. С примерами, но без слайдов.

04.07.2018    12668    Repich    74       

Архитектура ИТ-системы на базе 1С в крупной организации 101

Статья Системный администратор Нет файла v8 УТ11 Россия Бесплатно (free) Производительность и оптимизация (HighLoad)

В данной статье я хотел бы очень крупными мазками обрисовать архитектуру ИТ системы на базе 1С в крупных (более 1 тысячи пользователей) организациях. Она не несет какой либо образовательной цели, это просто попытка показать – «а как у нас».

02.07.2018    15263    Repich    112       

Взгляд на ошибки и платформу через призму HI-Load 53

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Поговорим об ошибках в целом и их влиянии на Hi-Load системы в частности. Может ли тут помочь платформа 1С? (да и должна ли в принципе?) Немного про сам Hi-Load на примере крупной БД. PS Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2017 COMMUNITY.

18.06.2018    10418    Sergey.Noskov    27       

Контроль суммы задолженности при неоперативном проведении документа продажи (Реализации товаров и услуг) 17

Статья Программист Нет файла v8 КА1 УТ10 УПП1 УУ Дебиторская и кредиторская задолженность Оптовая торговля Бесплатно (free) Практика программирования

Когда требуется провести документ неоперативно в текущем или прошлых днях и быть уверенным, что не возникнет дебиторская задолженность, тогда вам подойдёт данное решение. Решение актуально для КА 1.1, УПП 1.3 и УТ 10.3.

15.06.2018    6916    rpgshnik    1       

Простые регулярные выражения 59

Статья Программист Архив с данными v8 Россия Бесплатно (free) Производительность и оптимизация (HighLoad)

Шпаргалка к экзамену "Эксперт по технологическим вопросам".

30.04.2018    12226    3    vasilev2015    30       

История развития 1С:Торговли, что изменилось в архитектуре учета торговых и складских операций за 15 лет 66

Статья no Нет файла v8 Оптовая торговля, дистрибуция, логистика Россия УУ Оптовая торговля Розничная торговля Учет ТМЦ Ценообразование, анализ цен Бесплатно (free) Пользователю системы

В данном обзоре я хочу рассмотреть историю развития учета торговых и складских операций в 1С с точки зрения архитектуры конфигурации. Еще раз повторюсь, именно конфигурации, структуры данных, а не технологических возможностей платформы. Т.е. речь не про управляемые формы и обычные формы, не про преимущество СУБД перед dbf в расшаренной папке, а про справочники, их реквизиты и код, который этим управляет. Конечно, совсем абстрагироваться от изменений платформы не удастся, но я постараюсь.

23.04.2018    16917    monkbest    57       

Неоптимальности вида «план исполнения запроса "испортился"» - поиск и исправление 69

Статья Системный администратор Программист Нет файла v8 Windows Бесплатно (free) Производительность и оптимизация (HighLoad)

Рассматривается один из частых типов проблем в рабочих базах (второй после блокировок, пожалуй... впрочем, часто и тесно с ними связанный). Материал относится к базам данных на связке «1С - MS SQL Server».

05.02.2018    14157    fhqhelp    20       

Пример поиска неоптимальности при загрузке SQL-сервера по CPU на 100% 83

Статья Системный администратор Программист Нет файла v8 1cv8.cf Россия Windows Бесплатно (free) Производительность и оптимизация (HighLoad)

Вечер пятницы, ничто не предвещало.. Звонок из техподдержки: "центральная база розничной сети лежит". Далее расследование причин.

23.12.2017    15823    fhqhelp    32       

1C:ERP, РАУЗ и встречный выпуск 24

Статья Программист Бизнес-аналитик Бухгалтер Нет файла v8 ERP2 УУ Производство готовой продукции (работ, услуг) Бесплатно (free) Управленческий учет (прочее)

В статье рассматривается пример расчета себестоимости продукции и работ встречного выпуска применительно к 1С:ERP Управление предприятием 2.

15.11.2017    13947    ERP-master    9       

Исследование технологического журнала 1С при помощи регулярных выражений в блокноте 131

Статья Системный администратор Нет файла v8 Бесплатно (free) Производительность и оптимизация (HighLoad)

Все из тех, кто пробовали сдать на сертификат "Эксперт по технологическим вопросам 1С", сталкивались с методикой ЦКТП - разбор файлов технологического журнала при помощи консоли bash. Я, в свою очередь,внёс изменения в данную методику. Мне хотелось достичь более понятного вида и сфокусироваться на Perl, в качестве предпочтительного средства обработки файлов ТЖ. Вот что из этого вышло:

30.10.2017    24963    MrWonder    38       

Вопросы разработки, анализа производительности и оптимизации приложений 1С под управлением СУБД ORACLE 16

Статья Системный администратор Программист Нет файла v8 Oracle Бесплатно (free) Производительность и оптимизация (HighLoad)

Я являюсь сотрудником Комсомольского-на-Амуре филиала компании «Сухой». Наше предприятие производит боевую авиационную технику и комплектующие для гражданской авиационной техники. В статье я вам расскажу про свой опыт работы со связкой 1С и СУБД ORACLE.

05.09.2017    10794    user597755_vices2015    2       

Подробное описание работы механизма расчета себестоимости в программах начиная с версии ERP 2.1.3 (и соответствующих ей версий КА и УТ) 125

Статья Программист Бизнес-аналитик Нет файла v8 ERP2 УТ11 КА2 БУ УУ Производство готовой продукции (работ, услуг) Бесплатно (free) Управленческий учет (прочее)

Зачастую, когда встаёт вопрос о валовой прибыли предприятия, то большой проблемой становится корректная оценка себестоимости товаров. Для того, чтобы программисту было понятно, как программа рассчитывает себестоимость, нужно понимать алгоритмы, которых придерживались разработчики. Данная статья описывает, как это работает в актуальных (начиная с версии ERP 2.1.3 (и соответствующих ей версий КА и УТ)) версиях программы, и наиболее полезна для программиста. Данные алгоритмы описаны разработчиками в комментариях расчета себестоимости.

03.08.2017    36156    feva    11