|
Отбор\сортировка по динамическому списку 8.3 | ☑ | ||
---|---|---|---|---|
0
Baris
20.03.24
✎
04:36
|
Добрый день! УТ 11.4, есть динамический список на форме списка документа, внутри документа есть реквизит дата выполнения, нужно в форме списка показывать сколько дней просрочено. Дни то выводятся, но руководству нужно чтобы был фильтр по этому полю - например только просроченные, или хотя бы сортировка, сверху все просроченные. Она не работает, как я понимаю потому что перед ПриПолученииДанных это поле обнуляется. Как то можно решить это? Может есть идеи?
|
|||
1
rphosts
20.03.24
✎
05:58
|
(0) ну если в лоб - доработать отчёт так, что-бы этот реквизит выбирался запросом.
|
|||
2
Baris
27.03.24
✎
12:19
|
Поднимаю тему - отвлекли)
(1) да, дни вычислил в запросе дин.списка, это ладно. Есть еще одно поле - статус, там уже посложнее, нужно вычислять по подчиненным документам, была ли отгрузка(точнее заказ поставщику), по каждой номенклатуре документа. И в зависимости от результата статус отгружен/не отгружен/частично или вообще отменен. В ПриПолученииДанных все ок, заполняется, но опять же потом это видимо затирается запросом самого дин.списка и пользователь вроде видит эти статусы, но отладчиком я вижу что они пустые. Меня бы устроило, главное визуально это видеть, а пользователю надо фильтровать по статусам) соот-но ни сортировка ни отбор не работают - поля же пустые. В запрос дин.списка не знаю впихнется ли это все, может есть как обойти это? Кто-то может сталкивался? |
|||
3
lodger
27.03.24
✎
12:53
|
(2) такую жесть со статусами всегда перепиливают на РС статусов, а потом просто левое соединение со срезом последних.
|
|||
4
Волшебник
27.03.24
✎
13:06
|
(3) За левое соединение со срезом последних отрывают руки
|
|||
5
ptiz
27.03.24
✎
13:11
|
(4) Почему? Если подхватывается физическая таблица среза - ничего страшного.
|
|||
6
RVN
27.03.24
✎
13:11
|
(2) 1. Статусы вынести в регистр сведений "АктуальныйСтатус" (если надо историю изменения статуса добавить еще и периодический регистр сведений "ИсторияСтатусов"). Данные в него писать по результатам проведения соотв. документов (ну или регл. заданием для эстетов)
2. В запросе дин. списка левое соединение основной таблицы и р/с "АктуальныйСтатус и поле "Статус" 3. Так же в запросе вычислять поле "ДнейПросрочено" 4. все это вывести на форму. 5 В "ПриПолученииДанных" не делать ничего |
|||
7
PR
27.03.24
✎
13:11
|
(2) Читай внимательно https://wonderland.v8.1c.ru/blog/obrabotka-i-oformlenie-dannykh-dinamicheskogo-spiska/
Особенно то место, где "Если не предпринять дополнительных мер, то пользователь может быть сильно удивлён результатами группировки, сортировки или отбора (в том числе и поиска) по тем полям, которые вы изменили. Ведь эти действия будут выполняться по исходным данным, получаемым запросом, а не по тем данным, которые видит пользователь." |
|||
8
Волшебник
27.03.24
✎
13:12
|
(5) Имейте в виду, я Вас предупредил
|
|||
9
RVN
27.03.24
✎
13:14
|
(5) Мммм.... а когда это появилась ФИЗИЧЕСКАЯ таблица среза последних?
|
|||
10
ptiz
27.03.24
✎
13:19
|
(9) С добрым утром! Щас заклюют :)
|
|||
11
PR
27.03.24
✎
13:21
|
(9) Мммм... уже давно, с добрым утром
Открой регистр сведений в конфигураторе, увидишь много интересного |
|||
12
RVN
27.03.24
✎
13:25
|
(10) (11) Старею, однако. Отстал от жизни...
|
|||
13
osa1C
27.03.24
✎
14:06
|
(8) имеете ввиду, что надол срез последних сначала во временную таблицу загонять?
|
|||
14
Волшебник
27.03.24
✎
14:10
|
(13) Да, так будет быстрее
|
|||
15
Garykom
27.03.24
✎
14:13
|
Динамический список это фактически ВТ
Т.е. данные показываемые на форме в ДС и данные в базе могут различаться уже Чтобы привести в соответствие есть специальный метод ОповеститьОбИзменении |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |