|
Разработка подбора у документа по регистру | ☑ | ||
---|---|---|---|---|
0
Tolstiy Beremenniy
06.09.18
✎
14:47
|
Интерфейс такси. Имеется документ. Задача в разработке подбора для табличной части этого документа.
Нужно разработать форму подбора с определенными полями, заданными. С фильтром. Что бы там отображались только нужные данные. На форме документа нужно разместить кнопку, что бы по ней открывался подбор, с необходимыми полями. С нужными данными для подбора. При выборе значения должны перемещаться в табличную часть документа. Подскажите пожалуйста где можно посмотреть пример, подобной разработки для интерфейса такси. Или же подскажите по алгоритму разработки. Пока мало представляю как это делать. Делать нужно будет в конфигурации ERP. |
|||
1
Tolstiy Beremenniy
06.09.18
✎
14:59
|
К примеру открыл документ Инвентаризация ОС. Там есть кнопка подбор. При её нажатии открывается подбор, как раз нужного мне справочника. Можно по двойному нажатию переносить, объекты эксплуатации в табличную часть документа.
Сам пока не смотрел. Сильно тягомотный день. Может кто сталкивался с подобной задачей. Можно ли использовать типовой подбор как пример? Или там сильно сложно? Данные для подбора мне нужны из регистра сведений. Как там реализуются все эти манипуляции? |
|||
2
Пуля
06.09.18
✎
15:09
|
(1) Да! Это как раз что тебе нужно
|
|||
3
Tolstiy Beremenniy
06.09.18
✎
15:11
|
(2) То есть, есть вероятность использовать его как пример?
А если мне нужно брать данные из регистра сведений? А там может другой источник? |
|||
4
hhhh
06.09.18
✎
15:54
|
(3) там запрос источник. а запрос ты кожешь составить свой вдумчиво и включить в него квадриллион регистров сведений и 159 справочников.
|
|||
5
Tolstiy Beremenniy
07.09.18
✎
05:26
|
(4) Создал кнопку подбор. Перенес код из документа
ИнвентаризацияОС, переделав под свою табличную часть. &НаКлиенте Процедура Подбор(Команда) ПараметрыПодбора = ВнеоборотныеАктивыКлиент.ПараметрыПодбора(Элементы.ЗемельныеУчасткиЗемельныйУчасток, ЭтаФорма); ОткрытьФорму("Справочник.ОбъектыЭксплуатации.ФормаВыбора", ПараметрыПодбора, Элементы.ЗемельныеУчастки,,,,, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); ПодборНаСервере(); КонецПроцедуры Форма подбора открывается, но при двойном щелчке, в тч ничего не помещается как в документе инвентаризация ос. Вижу там в форме документа, это делается сложными процедурами ... &НаСервере Процедура ЗаполнитьСлужебныеРеквизитыТабличнойЧасти(Знач Строки=Неопределено) УстановитьПривилегированныйРежим(Истина); МассивСтрок = Неопределено; Если Строки <> Неопределено Тогда МассивСтрок = Новый Массив; Если ТипЗнч(Строки) = Тип("Массив") Тогда Для Каждого ИдентификаторСтроки Из Строки Цикл МассивСтрок.Добавить(Объект.ОС.НайтиПоИдентификатору(ИдентификаторСтроки)); КонецЦикла; Иначе МассивСтрок.Добавить(Строки); КонецЕсли; КонецЕсли; МВТ = Новый МенеджерВременныхТаблиц; Документы.ИнвентаризацияОС.ДобавитьВременнуюТаблицуСозданныхДокументовНаОсновании(МВТ, Объект.Ссылка); Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = МВТ; Запрос.УстановитьПараметр("ДанныеДокумента", Объект.ОС.Выгрузить(МассивСтрок)); Запрос.УстановитьПараметр("Дата", Объект.Дата); Запрос.УстановитьПараметр("Организация", Объект.Организация); Запрос.УстановитьПараметр("Подразделение", Объект.ПодразделениеОрганизации); Запрос.УстановитьПараметр("Ссылка", Объект.Ссылка); #Область ТекстЗапроса Запрос.Текст = "ВЫБРАТЬ | (ВЫРАЗИТЬ(ДанныеДокумента.НомерСтроки КАК ЧИСЛО)) - 1 КАК ИндексСтроки, | ВЫРАЗИТЬ(ДанныеДокумента.ОсновноеСредство КАК Справочник.ОбъектыЭксплуатации) КАК ОсновноеСредство, | ВЫРАЗИТЬ(ДанныеДокумента.СчетУчета КАК ПланСчетов.Хозрасчетный) КАК СчетУчета, |
|||
6
Tolstiy Beremenniy
07.09.18
✎
05:27
|
То есть как мне использовать этот пример?
Форма открывается, а как помещать по двойному щелчку выбранный элемент в табличную часть? |
|||
7
Tolstiy Beremenniy
07.09.18
✎
05:29
|
Хотелось бы сделать свою форму подбора у регистра сведений
и выбирать из неё. Не подскажете, как это делать правильно? |
|||
8
Tolstiy Beremenniy
07.09.18
✎
05:31
|
Что вообще происходит когда в форме подбора нажали
двойным кликом на нужный элемент? |
|||
9
Tolstiy Beremenniy
07.09.18
✎
06:18
|
Нормально ли будет сделать форму подбора у регистра сведений?
|
|||
10
ПегийЛунь
07.09.18
✎
06:23
|
(Я бы поучаствовал в проекте ERP)
Процедура Подбор(Команда) //здесь делаются параметры подбора //из вероятно общего модуля ВнеоборонвцАктивы вызывается функция ПараметрыПодбора //в эту функцию передаются в качестве параметров знчения //из таблицы ЗемельныеУчастки значение УчасткиЗемельныйУчасток //вторым параметром ЭтаФорма, вероятно чтобы было куда возвращать значение функции ПараметрыПодбора = ВнеоборотныеАктивыКлиент.ПараметрыПодбора(Элементы.ЗемельныеУчасткиЗемельныйУчасток, ЭтаФорма); //Этой командой открывается форма подбора справочника //куда передаются полученные ранее параметры подбора //и "ссылка" на таблицу ЗемельныеУчастки // при открытии формы подбора окно самого объекта будет заблокировано // ОткрытьФорму("Справочник.ОбъектыЭксплуатации.ФормаВыбора", ПараметрыПодбора, Элементы.ЗемельныеУчастки,,,,, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); ПодборНаСервере(); КонецПроцедуры Далее в где-то рядом должна быть или процедура или что-то содержащие название ОбработкаВыбора |
|||
11
Мимохожий Однако
07.09.18
✎
06:23
|
||||
12
Tolstiy Beremenniy
07.09.18
✎
07:40
|
Сделал произвольную форму регистра сведений, а как её открыть?
ОткрытьФорму("РегистрСведений.ФормаПодбораПараметровЗемельногоУчастка.??????", , Элементы.ЗемельныеУчастки); |
|||
13
Tolstiy Beremenniy
07.09.18
✎
07:46
|
(12+) Или из регистра сведений нельзя делать форму подбора? Только у справочника форма выбора?
|
|||
14
Остап Сулейманович
07.09.18
✎
08:09
|
(13) Формы подбора можно сделать из любой формы.
|
|||
15
Остап Сулейманович
07.09.18
✎
08:11
|
+ (14) И даже из произвольной. Содержащей вообще любые данные, на которые можно ткнуть мышкой или нажать кнопкой Enter.
|
|||
16
Остап Сулейманович
07.09.18
✎
08:18
|
+(15) Правил очень мало.
1. При открытии формы обязательно нужно указать "владельца формы" (3-й параметр метода ОткрытьФорму()). 2. Если открывается произвольная форма (не форма выбора) - в ней должен быть вызван метод ОповеститьОВыборе. С обязательными все. Не обязательные 1. Выставить флаг ЗакрыватьПриВыборе. Если оно = Ложь тогда из формы можно будет выбрать последовательно несколько значений. 2. -//- ЗакрыватьПриЗакрытииВладельца |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |