Size: a a a

1С, БСП, DevOps и Архитектура

2020 August 18

Ș

Șȅŗǧȇẏ in 1С, БСП, DevOps и Архитектура
gosn1ck
привет. можно, делал для этого запрос по тексту списка и выделял строки
а запрос зачем?
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Șȅŗǧȇẏ
Привет, товарищи и господа!
Подскажите, можно ли в дин.список на панельку добавить кнопку "выделить всё"? Штатно, без всяких wsh...
Можно. И даже стрелочки навигации.
источник

Ș

Șȅŗǧȇẏ in 1С, БСП, DevOps и Архитектура
John Doe
Можно. И даже стрелочки навигации.
как???
источник

g

gosn1ck in 1С, БСП, DevOps и Архитектура
чтобы получить массив ссылок, которые в свойство ВыделенныеСтроки списка
источник

Ș

Șȅŗǧȇẏ in 1С, БСП, DevOps и Архитектура
а, это если ссылки есть в дин.списке
источник

s

shsv in 1С, БСП, DevOps и Архитектура
Рассчитываю на опыт на знания, чатик. Нуждаюсь в совете/рекомендации по рефакторингу.
Есть форма, некоего АРМ, с кучей дин.списков. При навигации по страницам, установке значений в разные поля, которые играют роль фильтров, выполняются тяжелые серверные вызовы, потому что в этих вызовах происходит изменение свойств элементов формы и некоторые запросы к БД.
Какие то обработчики оптимизировал и отправил на фоновое выполнение, но этого оказалось мало для обеспечения комфортной работы.
Замена дин.списков на таб.документы формируемые СКД сможет улучшить ситуацию?
источник

NG

Nikita Gryzlov in 1С, БСП, DevOps и Архитектура
shsv
Рассчитываю на опыт на знания, чатик. Нуждаюсь в совете/рекомендации по рефакторингу.
Есть форма, некоего АРМ, с кучей дин.списков. При навигации по страницам, установке значений в разные поля, которые играют роль фильтров, выполняются тяжелые серверные вызовы, потому что в этих вызовах происходит изменение свойств элементов формы и некоторые запросы к БД.
Какие то обработчики оптимизировал и отправил на фоновое выполнение, но этого оказалось мало для обеспечения комфортной работы.
Замена дин.списков на таб.документы формируемые СКД сможет улучшить ситуацию?
а какие конкретно места тормозят? код? передача данных между клиентом и сервером? излишнее количество серверных вызовов?
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
shsv
Рассчитываю на опыт на знания, чатик. Нуждаюсь в совете/рекомендации по рефакторингу.
Есть форма, некоего АРМ, с кучей дин.списков. При навигации по страницам, установке значений в разные поля, которые играют роль фильтров, выполняются тяжелые серверные вызовы, потому что в этих вызовах происходит изменение свойств элементов формы и некоторые запросы к БД.
Какие то обработчики оптимизировал и отправил на фоновое выполнение, но этого оказалось мало для обеспечения комфортной работы.
Замена дин.списков на таб.документы формируемые СКД сможет улучшить ситуацию?
В худшем случае готовься реализовывать свою пагинацию и отображение таблицы / списка на форме
источник

s

shsv in 1С, БСП, DevOps и Архитектура
Nikita Gryzlov
а какие конкретно места тормозят? код? передача данных между клиентом и сервером? излишнее количество серверных вызовов?
Сейчас посмотрю по замеру производительности, чтобы прям точно сказать
источник

s

shsv in 1С, БСП, DevOps и Архитектура
Nikita Gryzlov
а какие конкретно места тормозят? код? передача данных между клиентом и сервером? излишнее количество серверных вызовов?
Отправка данных с серверным контекстным методом.
1) Установили на клиенте какое то значение поля
2) Событие ПриИзменении вызывает серверный метод
3) Серверный метод устанавливает фильтры дин.списка
и вот между 2-3 замер производительности показывает просадки и в простом пользовательском режиме приходится ждать пока всё обновиться
источник

s

shsv in 1С, БСП, DevOps и Архитектура
Примерно вижу что можно упростить - кешировать что-то и устанавливать фильтры дин списка без явного вызова сервера.
источник

NG

Nikita Gryzlov in 1С, БСП, DevOps и Архитектура
shsv
Примерно вижу что можно упростить - кешировать что-то и устанавливать фильтры дин списка без явного вызова сервера.
может быть попробовать фильтры устанавливать на клиенте?
источник

NG

Nikita Gryzlov in 1С, БСП, DevOps и Архитектура
возврат с сервера на клиент вызывает ПриАктивизацииСтроки у всех текущих списков. тут тоже может быть просадка
источник

s

shsv in 1С, БСП, DevOps и Архитектура
Nikita Gryzlov
может быть попробовать фильтры устанавливать на клиенте?
Как раз сейчас займусь этим.
Но не теряю из головы и вариант с скд)
источник

NG

Nikita Gryzlov in 1С, БСП, DevOps и Архитектура
скд - это более тяжелый механизм, чем дин список. сомневаюсь, что на нем будет экономия. разве что действительно на представлении в виде табдока, а не ДС. но с табдоками тоже есть свои особенности - они в несжатом виде очень долго едут на клиента. а если в них еще и ссылки протекут, то вообще абзац)
источник

H

Hero in 1С, БСП, DevOps и Архитектура
shsv
Отправка данных с серверным контекстным методом.
1) Установили на клиенте какое то значение поля
2) Событие ПриИзменении вызывает серверный метод
3) Серверный метод устанавливает фильтры дин.списка
и вот между 2-3 замер производительности показывает просадки и в простом пользовательском режиме приходится ждать пока всё обновиться
Зачем при изменении вызывает серверный метод?
Отборы можно установить на клиенте.
Возможно чтобы получить значения отборов выполняется большой запрос?
Или, к примеру, значения отборов являются огромным массивом данных и списку тяжело фильтровать по такому массиву.
В таком случае не нужно значения отборов передавать с сервера на клиент, нужно устанавливать их в той директиве, где они формируются
источник

H

Hero in 1С, БСП, DevOps и Архитектура
shsv
Рассчитываю на опыт на знания, чатик. Нуждаюсь в совете/рекомендации по рефакторингу.
Есть форма, некоего АРМ, с кучей дин.списков. При навигации по страницам, установке значений в разные поля, которые играют роль фильтров, выполняются тяжелые серверные вызовы, потому что в этих вызовах происходит изменение свойств элементов формы и некоторые запросы к БД.
Какие то обработчики оптимизировал и отправил на фоновое выполнение, но этого оказалось мало для обеспечения комфортной работы.
Замена дин.списков на таб.документы формируемые СКД сможет улучшить ситуацию?
Если при вызове серверного метода с клиента вы меняет например заголовок любого элемента формы, то это жутко тормозит всю форму со списком, как будто список обновляется ещё несколько раз.
источник

s

shsv in 1С, БСП, DevOps и Архитектура
Hero
Зачем при изменении вызывает серверный метод?
Отборы можно установить на клиенте.
Возможно чтобы получить значения отборов выполняется большой запрос?
Или, к примеру, значения отборов являются огромным массивом данных и списку тяжело фильтровать по такому массиву.
В таком случае не нужно значения отборов передавать с сервера на клиент, нужно устанавливать их в той директиве, где они формируются
Тяжёлых запросов для получения значений отборов нет, есть 1 простой совсем, значение которого буду кешировать.
В рамках серверного вызова изменяется оформление элементов формы (заголовки, цвета)
источник

H

Hero in 1С, БСП, DevOps и Архитектура
shsv
Тяжёлых запросов для получения значений отборов нет, есть 1 простой совсем, значение которого буду кешировать.
В рамках серверного вызова изменяется оформление элементов формы (заголовки, цвета)
Отключайте это.
Это 100% из за этого.
Если вы делаете это из обработчика Активизации, тем более отключайте.
Добавляйте изменяемые заголовки через реквизиты формы или меняйте их через обработчик ожидания.
Закомментируйте сейчас строки, где изменяются заголовки и другое у элементов при клиент-серверном вызове и проверьте гипотезу.
источник

H

Hero in 1С, БСП, DevOps и Архитектура
Будет у вас шок)))
источник