|
Получить Форму списка регистра сведений в УФ | ☑ | ||
---|---|---|---|---|
0
svchernova
11.11.11
✎
14:01
|
Пятница, люди добрые в приличных ветках картинки рассматривают красивые, а я некстати..
Мне нужно получить форму списка регистра сведений в управляемой форме. На клиенте к регистрам сведений обратиться не могу, поэтому процедуру пишу на серверной стороне. &НаСервере Процедура ПолучитьФормуСписка(Контрагент, ДоговорКонтрагента); ФормаСписка = Элементы.РегистрыСведений.ГрафикОплатыСтраховойПремии.ПолучитьФормуСписка("ФормаСпискаУпр"); ------- Ругается! {Документ.Страхование.Форма.ФормаДокументаУпр.Форма(254)}: Поле объекта не обнаружено (РегистрыСведений) ФормаСписка = Элементы.РегистрыСведений.ГрафикОплатыСтраховойПремии.ПолучитьФормуСписка("ФормаСпискаУпр"); Как обратиться к регистру сведений? |
|||
1
svchernova
11.11.11
✎
14:31
|
И другой вариант ( без Элементы.)
&НаСервере Процедура ПолучитьФормуСписка(Контрагент, ДоговорКонтрагента); ФормаСписка = РегистрыСведений.ГрафикОплатыСтраховойПремии.ПолучитьФормуСписка("ФормаСпискаУпр"); {Документ.Страхование.Форма.ФормаДокументаУпр.Форма(254)}: Ошибка при вызове метода контекста (ПолучитьФормуСписка) ФормаСписка = РегистрыСведений.ГрафикОплатыСтраховойПремии.ПолучитьФормуСписка("ФормаСпискаУпр"); по причине: Интерактивные операции недоступны |
|||
2
svchernova
11.11.11
✎
14:48
|
То ли померли все..
|
|||
3
svchernova
11.11.11
✎
15:20
|
И так не взлетает:
&НаСервере Процедура ПолучитьФормуСписка(Контрагент, ДоговорКонтрагента, Организация); ФормаСписка = РеквизитФормыВЗначение(РегистрыСведений.ГрафикОплатыСтраховойПремии.ПолучитьФормуСписка("ФормаСписка")); |
|||
4
YF
11.11.11
✎
15:23
|
ПолучитьФормуСписка(<Форма>, <Владелец>, <КлючУникальности>)
.... Доступность: Толстый клиент. |
|||
5
YF
11.11.11
✎
15:24
|
Глобальный контекст.ПолучитьФорму (Global context.GetForm)
Глобальный контекст (Global context) ПолучитьФорму (GetForm) Синтаксис: ПолучитьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>) Параметры: <ИмяФормы> (обязательный) Тип: Строка. Имя формы. Образуется как полный путь к объекту метаданных Форма (например, "Справочник.Контрагенты.Форма.ФормаОбъекта", "ОбщаяФорма.ФормаСохраненияФайла") или как полный путь к прикладному объекту, дополненный именем формы по умолчанию (например, "Справочник.Товары.ФормаВыбора"). Имена форм по умолчанию: ФормаОбъекта (ObjectForm) - форма объекта по умолчанию; ФормаГруппы (FolderForm) - форма группы по умолчанию; ФормаЗаписи (RecordForm) - форма записи регистра по умолчанию; ФормаСписка (ListForm) - форма списка по умолчанию; ФормаВыбора (ChoiceForm) - форма выбора по умолчанию; ФормаВыбораГруппы (FolderChoiceForm) - форма выбора группы по умолчанию; ФормаКонстант (ConstantsForm) - форма констант по умолчанию для обычного режима, установленная как форма констант для конфигурации; Форма (Form) - форма константы, отчета и обработки по умолчанию; ОбщаяФорма (CommonForm) - общая форма; ФормаНастроек (SettingsForm) - форма настроек отчета по умолчанию; ФормаЗагрузки (LoadForm) - форма загрузки настроек; ФормаСохранения (SaveForm) - форма сохранения настроек; ФормаВарианта (VariantForm) - форма редактирования варианта отчета; ФормаЗагрузкиПользовательскихНастроекОтчетов (ReportUserSettingsLoadForm) - форма загрузки настроек отчета; ФормаСохраненияПользовательскихНастроекОтчетов (ReportUserSettingsSaveForm) - форма сохранения настроек отчета; ФормаЗагрузкиВариантовОтчетов (ReportVariantsLoadForm) - форма загрузки варианта отчета; ФормаСохраненияВариантовОтчетов (ReportVariantsSaveForm) - форма сохранения варианта отчета; ФормаЗагрузкиНастроекДанныхФорм (FormDataSettingsLoadForm) - форма загрузки настроек данных форм; ФормаСохраненияНастроекДанныхФорм (FormDataSettingsSaveForm) - форма сохранения настроек данных форм. Например, для получения общей формы "ОбщиеНастройки" следует в модуле написать код: Форма = ПолучитьФорму("ОбщаяФорма.ОбщиеНастройки"); Имена ФормаЗагрузкиПользовательскихНастроекОтчетов, ФормаСохраненияПользовательскихНастроекОтчетов, ФормаЗагрузкиВариантовОтчетов, ФормаСохраненияВариантовОтчетов, ФормаЗагрузкиНастроекДанныхФорм и ФормаСохраненияНастроекДанныхФорм нужно использовать без имени объектов метаданных. Для внешних отчетов и обработок имя формы задается следующим образом: ВнешнийОтчет.<имя отчета>.Форма.<имя формы>; ВнешнийОтчет.<имя отчета>.<имя стандартной формы>; ВнешняяОбработка.<имя обработки>.Форма.<имя формы>; ВнешняяОбработка.<имя обработки>.<имя стандартной формы>. При этом внешний отчет или обработка должны быть предварительно зарегистрированы в системе. <Параметры> (необязательный) Тип: Структура. Параметры формы. Ключ структуры - имя параметра, а значение - значение параметра формы. Имя элемента должно совпадать с именем параметра структуры. П = Новый Структура("Ключ", Поставщик); Форма = ПолучитьФорму("Справочник.Контрагенты.ФормаОбъекта", П); Форма.Открыть(); <Владелец> (необязательный) Владелец формы - форма или элемент управления другой формы. <Уникальность> (необязательный) Тип: Произвольный. В данном параметре может быть задан некоторый ключ, значение которого будет использоваться для поиска уже открытых форм. Если будет найдена форма с таким же ключом уникальности, вместо открытия новой формы будет активизирована найденная форма. Ложь - искать форму с ключом уникальности по умолчанию, Истина - не искать форму вообще, любое другое значение устанавливает ключ уникальности, по которому будет произведен поиск. Значение по умолчанию: Ложь <Окно> (необязательный) Тип: ОкноКлиентскогоПриложения; ВариантОткрытияОкна. Окно приложения, в котором будет открыта форма. Применимо только для управляемой формы. Окном может быть только основное окно приложения или вспомогательное окно формы. Если указан тип ВариантОткрытияОкна, окно формы будет создано согласно выбранному варианту. Возвращаемое значение: Тип: Форма; УправляемаяФорма. Описание: Получает форму или управляемую форму. Перед получением осуществляется поиск уже открытой такой же формы. Поиск осуществляется по типу формы, значениям ключевых параметров формы, владельцу формы, пользовательскому ключу уникальности. Если в параметре <Уникальность> передано значение Истина, то поиск уже открытых форм не осуществляется. Доступность: Тонкий клиент, веб-клиент, толстый клиент. Вызов метода выполняет обращение к серверу. Примечание: В тонком и веб-клиенте получает только управляемую форму. Обычные формы внешних обработок не поддерживаются. Если при получении обычной формы в параметре <ИмяФормы> указано не стандартное имя формы, передаваемые параметры не обрабатываются. В процессе выполнения может быть несколько обращений к серверу. Часть из них кэшируются. Как минимум одно обращение к серверу есть всегда и оно не кэшируется. Кэширование зависит от версии платформы и версии конфигурации в целом. Если установлена низкая скорость соединения и не указывается текущая строка, то кэшируется форма выбора. Очистка кэша осуществляется с периодичностью в 20 мин. Удаляются формы, которые не использовались в этот период времени. См. также: Глобальный контекст, метод ОткрытьФорму Глобальный контекст, метод ОткрытьФормуМодально Глобальный контекст, метод ПолучитьОбщуюФорму |
|||
6
svchernova
11.11.11
✎
15:32
|
(5) О божечки ж мои.. Я ведь СП почитала.. только в толк не возьму, как реализовать на самом деле. Мне, по большому счету, форма &НаКлиенте нужна, но я не могу на клиенте к регистрам сведений обратиться. и не дорубаю, как правильно это надо сделать в управляемой форме
|
|||
7
Лефмихалыч
11.11.11
✎
15:34
|
(6) а теперь почитай с открытыми глазами, включив голову в розетку. Тебе не надо обращаться к регистрам
|
|||
8
and2
11.11.11
✎
15:35
|
ОткрытьФорму("РегистрСведений.ГрафикОплатыСтраховойПремии.ФормаСписка");
|
|||
9
svchernova
11.11.11
✎
15:35
|
(7) Читаю. но мне же форму регистра надо получить. сейчас попробую
|
|||
10
svchernova
11.11.11
✎
15:36
|
(8) Мне нужно ПОЛУЧИТЬ форму, потом установить в ней отбор, потом открыть модально
|
|||
11
Лефмихалыч
11.11.11
✎
15:39
|
(10) читай первые пять строк (5) и думай. Много думай. Головой.
|
|||
12
svchernova
11.11.11
✎
15:42
|
(5) и (11) Я вроде бы головой.. :(
|
|||
13
svchernova
11.11.11
✎
15:42
|
(5) b (11) Но не взлетает
{Документ.Страхование.Форма.ФормаДокументаУпр.Форма(259,17)}: Процедура или функция с указанным именем не определена (ПолучитьФорму) ФормаСписка = <<?>>ПолучитьФорму("РегистрСведений.ГрафикОплатыСтраховойПремии.ФормаСписка", П); (Проверка: Сервер) |
|||
14
and2
11.11.11
✎
15:42
|
(10) вторым параметром можно и отбор установить
ПараметрыФормы = новый Структура; ПараметрыФормы.Вставить("Отбор", новый Структура("ЧтоТо",Объект.Ссылка)); ОткрытьФорму("РегистрСведений.ГрафикОплатыСтраховойПремии.ФормаСписка",ПараметрыФормы,); |
|||
15
Лефмихалыч
11.11.11
✎
15:43
|
(13) такую голову в штанах носить надо. В СП же написано, что функция эта на сервере не доступна. Юзай ее на клиенте
|
|||
16
svchernova
11.11.11
✎
15:44
|
(15) Да клиент Регистры сведений не видит!!!!!!!!!!
|
|||
17
and2
11.11.11
✎
15:44
|
(10) хочешь модально -
Глобальный контекст (Global context) ОткрытьФормуМодально (OpenFormModal) Вариант синтаксиса: По названию Синтаксис: ОткрытьФормуМодально(<ИмяФормы>, <Параметры>, <Владелец>) Параметры: <ИмяФормы> (обязательный) |
|||
18
Лефмихалыч
11.11.11
✎
15:51
|
(16) даипохер!!!!!1111одинодин
|
|||
19
svchernova
11.11.11
✎
15:52
|
(18) Взлетело!!!!!!!!!!!!!!!!!!!!
|
|||
20
svchernova
11.11.11
✎
15:53
|
(18) Теперь отбор надо выполнить по организации и контрагенту
|
|||
21
svchernova
11.11.11
✎
15:54
|
(18) щастье :)
|
|||
22
svchernova
11.11.11
✎
15:56
|
спасибо всем. управляемые формы управляют мной по полной. снится скоро будут
|
|||
23
Yorokonde
11.11.11
✎
16:01
|
(18) Не совсем корректно. Для такой цели есть методы ОткрытьФорму и ОткрытьФормуМодально. зачем получать форму, крутить её в памяти и т.п. если можно открыть напрямую?
з.ы.: &НаКлиенте Процедура Команда1(Команда) ОткрытьФормуМодально("РегистрСведений.АдресныеСокращения.ФормаСписка", , , ) ; КонецПроцедуры |
|||
24
Yorokonde
11.11.11
✎
16:03
|
(20)С отбором будет так:
&НаКлиенте Процедура Команда1(Команда) Отбор = Новый Структура("Организация, Контрагент", ОрганизацияЗначениеОтбора, КонтрагентЗначениеОтбора); ПараметрыФормы = Новый Структура("Отбор", Отбор); ОткрытьФормуМодально("РегистрСведений.АдресныеСокращения.ФормаСписка", ПараметрыФормы, , ) ; КонецПроцедуры |
|||
25
svchernova
11.11.11
✎
16:04
|
(23) и (24) Спасибо, сейчас попробую
|
|||
26
Yorokonde
11.11.11
✎
16:04
|
Кстати об этом в теме уже писали ))
|
|||
27
svchernova
11.11.11
✎
16:05
|
(13) Чего шумишь на меня?? Я же стараюсь!!
|
|||
28
Yorokonde
11.11.11
✎
16:06
|
В 8.2 оооооооочень редко приходится использовать именно ПОЛУЧЕНИЕ формы. Обычно за глаза хватает методов открытия формы, с передачей параметров формы - там где не хватает стандартных параметров формы, можно завести свои и обрабатывать их в методе ПриСозданииНаСервере в модуле формы
|
|||
29
Yorokonde
11.11.11
✎
16:07
|
читать "В 8.2" как "в работе с управляемыми формами" :) Совсем привык обзывать управляемый режим восемьдвашкой ))
|
|||
30
svchernova
11.11.11
✎
16:07
|
(28) я ещё новичок в 8.2
|
|||
31
svchernova
11.11.11
✎
16:07
|
(29) я так и понимаю.. в этом контексте
|
|||
32
Yorokonde
11.11.11
✎
16:08
|
(30) Да и нормально ) У всех бывают вопросы)) Вот пойду ка я и свой задам в новой темке... собственно с вопросом сюда и притопал :))
|
|||
33
svchernova
11.11.11
✎
16:11
|
(30) Спасибо тебе :))
|
|||
34
svchernova
11.11.11
✎
16:13
|
ПОЛУЧИЛОСЬ!!!!!!!!!!!!!!!!!
|
|||
35
Yorokonde
11.11.11
✎
16:29
|
(34) Поздравляю )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |