|
Как в форму списка добавить вычисляемую колонку по которой будет отбор? | ☑ | ||
---|---|---|---|---|
0
Shur1cIT
07.07.15
✎
16:24
|
УПП 1.3 документ "ЗаявкаНаРасходованиеСредств" необходимо вывести колонку состояние Подготовлен,Утвержден,Оплачен. данные о состоянии храниться в РС ,ПриНачалеВывода я запихаю процедуру вывода. а вот как отбор потом делать?
|
|||
1
Shur1cIT
07.07.15
✎
16:45
|
подскажите? у меня только один вариант,менять реквизит в документе при изменении статуса документа, и соответственно вытаскивать его на форму списка, но это не правильно и гиморно так как состояние может меняться из разных мест программы притом возможно и при открытой форме документа
|
|||
2
palpetrovich
07.07.15
✎
16:48
|
примерно такую хрень делал... в общем попробуй сделать по аналогии с:
Процедура СписокПриПолученииДанных(Элемент, ОформленияСтрок) Если НЕ ПроверятьРеализациюВЗаказе Тогда Возврат; КонецЕсли; ТЗЗаказов.Очистить(); Для Каждого ЭлементОформления Из ОформленияСтрок Цикл Если ЭлементОформления.ДанныеСтроки.Ссылка.Проведен Тогда НоваяСтрока = ТЗЗаказов.Добавить(); НоваяСтрока.Ссылка = ЭлементОформления.ДанныеСтроки.Ссылка; КонецЕсли; КонецЦикла; Если ТЗЗаказов.Количество()=0 Тогда Возврат; КонецЕсли; Запрос = Новый Запрос(" |ВЫБРАТЬ | ТЗЗаказов.Ссылка |ПОМЕСТИТЬ ВТЗаказов |ИЗ &ТЗЗаказов КАК ТЗЗаказов |; |ВЫБРАТЬ | ВТЗаказов.Ссылка, | ЕСТЬNULL(СУММА(ЗаказыПокупателейОстатки.СуммаВзаиморасчетовОстаток), 0) КАК СуммаПоЗаказуОстаток, | ЕСТЬNULL(СУММА(РасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток), 0) КАК СуммаВзаиморасчетовОстаток |ИЗ ВТЗаказов КАК ВТЗаказов |ЛЕВОЕ СОЕДИНЕНИЕ | РегистрНакопления.ЗаказыПокупателей.Остатки(&Дата,) КАК ЗаказыПокупателейОстатки |ПО | ЗаказыПокупателейОстатки.ЗаказПокупателя = ВТЗаказов.Ссылка |ЛЕВОЕ СОЕДИНЕНИЕ | РегистрНакопления.РасчетыСКонтрагентами.Остатки(&Дата,) КАК РасчетыСКонтрагентамиОстатки |ПО | РасчетыСКонтрагентамиОстатки.Сделка = ВТЗаказов.Ссылка |СГРУППИРОВАТЬ ПО | ВТЗаказов.Ссылка"); Запрос.УстановитьПараметр("ТЗЗаказов", ТЗЗаказов); Запрос.УстановитьПараметр("Дата", КонецДня(ТекущаяДата())); Результат = Запрос.Выполнить(); Если Результат.Пустой()Тогда Возврат; КонецЕсли; Выборка = Результат.Выбрать(); Для Каждого ЭлементОформления Из ОформленияСтрок Цикл Выборка.Сбросить(); ТекущийЗаказ = ЭлементОформления.ДанныеСтроки.Ссылка; Если Выборка.НайтиСледующий(ТекущийЗаказ, "Ссылка") Тогда Если (Выборка.СуммаПоЗаказуОстаток <= 0) И (Выборка.СуммаВзаиморасчетовОстаток <= 0) Тогда ЭлементОформления.ЦветФона = WebЦвета.НейтральноЗеленый; ИначеЕсли (Выборка.СуммаВзаиморасчетовОстаток <> ТекущийЗаказ.СуммаДокумента) ИЛИ (Выборка.СуммаПоЗаказуОстаток <> ТекущийЗаказ.СуммаДокумента) Тогда ЭлементОформления.ЦветФона = WebЦвета.БледноЗолотистый; КонецЕсли; КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
3
DmitrO
07.07.15
✎
16:55
|
(2)Отбор, Карл, как поставить отбор в форме списка по вычисляемому полю в обычной форме.
(0)надо просто написать управляемую форму списка, там такой отбор запросто. |
|||
4
bolobol
07.07.15
✎
16:56
|
(2) А что здесь вообще?
|
|||
5
Strogg
07.07.15
✎
16:57
|
(0) кнопкой. Флажком.
|
|||
6
bolobol
07.07.15
✎
16:58
|
(0) Короче, отбор можно делать только по реквизитам объекта. Ссылка - один из реквизитов.
|
|||
7
Shur1cIT
07.07.15
✎
17:01
|
(6) чтобы иметь ссылку состояния надо её туда помещать, а как её туда помещать непонятно...например как я туда её помещу есть форма открыта свернута? (3) в управляемом понятно "произвольный запрос и настройка списка" это понятно, мне обычные нужны
|
|||
8
bolobol
07.07.15
✎
17:03
|
(7) Вообще не понял, чего ты понаписал... Особо доставило "есть форма открыта свернута" со знаком вопроса...
|
|||
9
DmitrO
07.07.15
✎
17:04
|
(7)почему тебе нужна именно обычная форма?
|
|||
10
bolobol
07.07.15
✎
17:05
|
(9) Патамушта других там нет
|
|||
11
Shur1cIT
07.07.15
✎
17:05
|
(8) как реквизит в документе менять програмно не из самого документа (по которому отбор нужен) если он открыт
|
|||
12
DmitrO
07.07.15
✎
17:06
|
(10)и что? а вот эта форма будет управляемая, и что в этом плохого?
|
|||
13
Shur1cIT
07.07.15
✎
17:06
|
(9) это УПП можно конечно запилить под эту задачу управляемые, но не хотелось бы
|
|||
14
Lexey_
07.07.15
✎
17:07
|
(13) тогда делай отбор по ссылке с видом сравнения ВСписке, список получай запросом
|
|||
15
DmitrO
07.07.15
✎
17:08
|
(13)блиать.. я где-то говорил что надо все УПП 1.3. переписать под управляемые формы?
ТОЛЬКО ЭТА ФОРМА БУДЕТ УПРАВЛЯЕМАЯ, это же так просто! :) |
|||
16
bolobol
07.07.15
✎
17:09
|
(12) И ни один пользователь её открыть не сможет. Да и вообще - тут не вы вопросы задаёте.
(11) - А это зачем? Кагбэ, даже, невозможно. Либо у открывшего этот документ при начале изменения или записи вылезет сообщение о неактуальности версии объекта. |
|||
17
bolobol
07.07.15
✎
17:10
|
(15) И только с этой формой будут пользователи работать, да, отличный вариант! ))))
|
|||
18
DmitrO
07.07.15
✎
17:10
|
(10)по какой причине он не сможет ее открыть? Во всех типовых уже давно разрешили использовать управляемые формы в обычном приложении.
|
|||
19
Timon1405
07.07.15
✎
17:10
|
(16) оО, почему не сможет открыть? на нее что нужны специальные права?
|
|||
20
DmitrO
07.07.15
✎
17:11
|
(18)->(16)
|
|||
21
bolobol
07.07.15
✎
17:18
|
(18) Скриншот сей возможности предъявить сможете?
|
|||
22
DmitrO
07.07.15
✎
17:19
|
(21)Какой скриншот? Что управляемые формы работают в обычном приложении? :)
|
|||
23
bolobol
07.07.15
✎
17:20
|
Да, открытую управляемую форму в обычном приложении
|
|||
24
palpetrovich
07.07.15
✎
17:24
|
(3) да, про Отбор я как-то не дочитал :
|
|||
25
DmitrO
07.07.15
✎
17:32
|
||||
26
Mirnin
07.07.15
✎
17:34
|
Тот же УПД попробуй распечатать и, сюрприз, откроется ФормаПечатиУправляемая.
|
|||
27
Maniac
07.07.15
✎
17:36
|
Хахаха.. Балбесы. не могут решить элементарные задачи.
|
|||
28
Maniac
07.07.15
✎
17:37
|
Смотрим скришот и удивляемся.
Любые отборы, сортировки - вообще все что угодно по заявкам на расходование денежных средств. Монитор управления. http://subsystems.ru/upload/iblock/cba/subsys_uprplat_ut10_6.png |
|||
29
palpetrovich
07.07.15
✎
17:40
|
(28) ты просто нереально крут ;)
|
|||
30
bootini
07.07.15
✎
17:41
|
Тоже обработку делал типа (28), как в списке отбирать хз.
|
|||
31
Serg_1960
07.07.15
✎
17:43
|
Хмм... наверное кто-то (небуду пальцем показывать) забыл про свойство конфигурации "Использовать управляемые формы в обычном приложении"(использовать управляемые формы в толстом клиенте в обычном режиме)?
|
|||
32
DmitrO
07.07.15
✎
17:45
|
(31)кто-то просто про него и не знал.
|
|||
33
bolobol
07.07.15
✎
17:48
|
(25) Не пойму, как такое совершили, но у меня на последнем ЗУП 2.5 с "разрешением" упр форм, на последней 8.2 платформе - внешняя обработка не открывается!!
|
|||
34
Timon1405
07.07.15
✎
17:48
|
(33) ключевое слово "внешняя"
|
|||
35
bolobol
07.07.15
✎
18:24
|
(34) Шляпа какая-то...
|
|||
36
bolobol
07.07.15
✎
18:27
|
(25) О, да! Оно работает!! Буду иметь в виду, спасибо!!!
|
|||
37
bolobol
07.07.15
✎
18:31
|
(28) Что-то в это, похоже, нечто нетиповое. Поделка чья-та наколенная. ТС, в принципе, это и хочет повторить.
|
|||
38
ILM
гуру
07.07.15
✎
18:44
|
У объекта документ есть "ссылка". У формы списка документов есть свойство отбор. Значит задача в (0) состоит из нескольких этапов:
1. Получить список ссылок документов у которых нужный статус. 2. Выгрузить полученный список в массив. 3. Настроить отбор используя полученный массив. P.S. Лучший способ использовать событие поля списка "ПриПолученииДанных". |
|||
39
DmitrO
07.07.15
✎
18:49
|
(38)у вас в интересах в профиле написано "логика и здравый смысл", а вы пишете такие посты.
Нонсенс! |
|||
40
ILM
гуру
07.07.15
✎
18:55
|
(39) "Вы хотите об этом поговорить?"
Некоторым, нужно просто разжевать подробнее. А у вас вообще в профиле пусто)) |
|||
41
DmitrO
07.07.15
✎
19:01
|
(40) да, не о чем тут говорить. А по теме я уже все сказал.
|
|||
42
Одинесю
07.07.15
✎
19:40
|
(10) Есть в УПП управляемые формы, дело в другом - пользователи или инфаркт получат или будут просить во всех объектах управляемые.
|
|||
43
Maniac
08.07.15
✎
00:03
|
Итак, по подобию (28)
1) Создаем форму - можно во внешней обработке. 2) Создаем реквизит обработки ПостроительОтчета 3) На форме размещаем ТаблицуЗначений с любым количеством колонок, которые хотим выводить. Это может быть что угодно что мы потом наполним данными. 4) Пишем запрос под построитель отчета. Почему именно построитель - дополнительно на форме мы сможем разместить от построителя любые натсройки - например отборы по запросу. Заложить любые переменные и так далее. Запрос можем писать по чему хотим - чему угодно - регистры, документы - все что в душе влезет с люыбыми вычисляемыми полями. 5) Все красиво оформлляем - можем какие то отрисовки сделать, красивый интерфейс. Большую кнопку что угодно. 6) мождем сделать чтобы данные наполнялись автоматически или по кнопке. Я не думаю что база огромная и в ней миллон заявок на расходы - монитор будет наполнятся со скоростью звука. ИТОГ: имеем очень удобную таблицу-отчет, которая может содержать все что душе угодно. Встроенные плюсы однозначны - в ТЗ на морде автоматически без всякого программирования можно совершать любые сортировки, отборы и так далее - итоги иметь в подвале и прочее. Заказчик обалдееет от счастья. Программисту 90 лвл обеспечен. |
|||
44
Maniac
08.07.15
✎
00:05
|
С автора магарыч за готовое тех задание и решение вопроса безо всяких демонических списков.
|
|||
45
Shur1cIT
08.07.15
✎
09:19
|
если ничего не менять кардинально выход один, создать реквизит у объекта (документа), вынести его в форму списка и будет отбор, Проблема остаётся в следующим, как в этот реквизит состояние писать? во всех местах где пишется состояние в регистр. а универсальный механизм есть так как как я писал выше, у кого то может быть открыт документ, возможно у этого же самого пользователя тогда реквизит не измениться? в рег. задачи совать тоже не хотелось бы грузить систему из за какого-то реквизита.
|
|||
46
bootini
08.07.15
✎
10:06
|
(45) Если реквизит у документа создавать, тогда регистр сведений не имеет смысла. Рег.сведений со статусами и делают, чтобы менять статус документа без перезаписи дока.
Делай обработку вместо формы списка, например как в (43), и пусть пользователи в обработке с этими доками работают. Многие так делают, там не только отбор, но и несколько ТП можно сделать, где доки с разными статусами отображаются или содержимое документа при активации показывать в отдельном поле или в виде надписей, пакетную обработку по отбору замутить и т.д. Попробуй, пусть юзеры сами выберут со списком или с обработкой работать. Обычно про список и журналы документов юзеры сразу забывают, если им грамотное решение предоставить. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |