|
Как для созданного документа открыть управляемую форму на клиенте? | ☑ | ||
---|---|---|---|---|
0
siggoron
13.08.12
✎
12:24
|
Как для созданного документа (пока ещё не записанного в БД) открыть управляемую форму на клиенте?
|
|||
1
siggoron
13.08.12
✎
12:26
|
Ниже приведенный код не работает, как его подпилить?
&НаСервере Функция СоздатьНарядНаРаботыСервер() ДокументОбъект = Документы.НарядНаРаботы.СоздатьДокумент(); ДокументОбъект.Заполнить(Объект.Ссылка); Возврат ДокументОбъект; КонецФункции &НаКлиенте Процедура СоздатьНарядНаРаботы(Команда) Форма = СоздатьНарядНаРаботыСервер().ПолучитьФорму("ФормаДокумента"); Форма.Открыть(); КонецПроцедуры |
|||
2
Рэйв
13.08.12
✎
12:33
|
СП как всегда во всесоюзном розыске:-)
//----------- Глобальный контекст (Global context) ОткрытьФорму (OpenForm) Вариант синтаксиса: По названию Синтаксис: ОткрытьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>) Параметры: <ИмяФормы> (обязательный) Тип: Строка. Имя формы. Образуется как полный путь к объекту метаданных Форма (например, "Справочник.Контрагенты.Форма.ФормаОбъекта", "ОбщаяФорма.ФормаСохраненияФайла") или как полный путь к прикладному объекту, дополненный именем формы по умолчанию (например, "Справочник.Товары.ФормаВыбора"). Имена форм по умолчанию ФормаОбъекта (ObjectForm) - форма объекта по умолчанию; ФормаГруппы (FolderForm) - форма группы по умолчанию; ФормаЗаписи (RecordForm) - форма записи регистра по умолчанию; ФормаСписка (ListForm) - форма списка по умолчанию; ФормаВыбора (ChoiceForm) - форма выбора по умолчанию; ФормаВыбораГруппы (FolderChoiceForm) - форма выбора группы по умолчанию; ФормаКонстант (ConstantsForm) - форма констант по умолчанию; Форма (Form) - форма отчета и обработки по умолчанию; ФормаНастроек (SettingsForm) - форма настроек отчета по умолчанию; ФормаЗагрузки (LoadForm) - форма загрузки настроек; ФормаСохранения (SaveForm) - форма сохранения настроек; ФормаВарианта (VariantForm) - форма редактирования варианта отчета; ФормаЗагрузкиПользовательскихНастроекОтчетов (ReportUserSettingsLoadForm) - форма загрузки настроек отчета; ФормаСохраненияПользовательскихНастроекОтчетов (ReportUserSettingsSaveForm) - форма сохранения настроек отчета; ФормаЗагрузкиВариантовОтчетов (ReportVariantsLoadForm) - форма загрузки варианта отчета; ФормаСохраненияВариантовОтчетов (ReportVariantsSaveForm) - форма сохранения варианта отчета; ФормаЗагрузкиНастроекДанныхФорм (FormDataSettingsLoadForm) - форма загрузки настроек данных форм; ФормаСохраненияНастроекДанныхФорм (FormDataSettingsSaveForm) - форма сохранения настроек данных форм. Имена ФормаЗагрузкиПользовательскихНастроекОтчетов, ФормаСохраненияПользовательскихНастроекОтчетов, ФормаЗагрузкиВариантовОтчетов, ФормаСохраненияВариантовОтчетов, ФормаЗагрузкиНастроекДанныхФорм и ФормаСохраненияНастроекДанныхФорм нужно использовать без имени объектов метаданных. Для внешних отчетов и обработок имя формы задается следующим образом: ВнешнийОтчет.<имя отчета>.Форма.<имя формы>; ВнешнийОтчет.<имя отчета>.<имя стандартной формы>; ВнешняяОбработка.<имя обработки>.Форма.<имя формы>; ВнешняяОбработка.<имя обработки>.<имя стандартной формы>. При этом внешний отчет или обработка должны быть предварительно зарегистрированы в системе с помощью метода Подключить или Подключить соответственно. <Имя отчета> и <имя обработки> - это имена, под которыми зарегистрированы внешний отчет или обработка. <Параметры> (необязательный) Тип: Структура. Параметры формы. Ключ структуры - имя параметра, а значение - значение параметра формы. Имя элемента должно совпадать с именем параметра структуры. П = Новый Структура("Ключ", Поставщик); Форма = ПолучитьФорму("Справочник.Контрагенты.ФормаОбъекта", П); Форма.Открыть(); <Владелец> (необязательный) Владелец формы - форма или элемент управления другой формы. <Уникальность> (необязательный) Тип: Произвольный. В данном параметре может быть задан некоторый ключ, значение которого будет использоваться для поиска уже открытых форм. Если будет найдена форма с таким же ключом уникальности, вместо открытия новой формы будет активизирована найденная форма. Ложь - искать форму с ключом уникальности по умолчанию, Истина - не искать форму вообще, любое другое значение устанавливает ключ уникальности, по которому будет произведен поиск. Значение по умолчанию: Ложь <Окно> (необязательный) Тип: ОкноКлиентскогоПриложения;ВариантОткрытияОкна. Окно приложения, в котором будет открыта форма. Применимо только для управляемой формы. Окном может быть только основное окно приложения или вспомогательное окно формы. Если указан тип ВариантОткрытияОкна, окно формы будет создано согласно выбранному варианту. Вариант синтаксиса: По форме Синтаксис: ОткрытьФорму(<Форма>, <Окно>) Параметры: <Форма> (обязательный) Тип: Форма; УправляемаяФорма. Форма или управляемая форма. В режиме тонкого и веб-клиентов только управляемая форма. <Окно> (необязательный) Тип: ОкноКлиентскогоПриложения; ВариантОткрытияОкна. Окно приложения, в котором будет открыта форма. Применимо только для управляемой формы. Окном может быть только основное окно приложения или вспомогательное окно формы. В случае использования ВариантОткрытияОкна, окно формы будет создано согласно выбранному варианту. Возвращаемое значение: Тип: Форма; УправляемаяФорма. Описание: Открывает и возвращает форму или управляемую форму. В тонком и веб-клиенте только управляемую форму. Перед открытием осуществляется поиск уже открытой такой же формы. Поиск осуществляется по типу формы, значениям ключевых параметров формы, владельцу формы, пользовательскому ключу уникальности. Можно открывать уже полученную форму. В этом случае в параметрах передается уже полученная форма и окно, в котором открыть форму. Можно открыть по имени формы. В этом случае в параметры передаются имя формы, параметры формы, владелец, ключ уникальности и окно, в котором должна быть открыта форма. Доступность: Тонкий клиент, веб-клиент, толстый клиент. Вызов метода выполняет обращение к серверу. Примечание: Для варианта "По названию" параметры вызова аналогичны параметрам метода ПолучитьФорму. Обычные формы внешних обработок не поддерживаются. В управляемом приложении не следует выполнять программное открытие и закрытие одной и той же формы в одном вызове встроенного языка. Если при открытии обычной формы в параметре <ИмяФормы> указано не стандартное имя формы, передаваемые параметры не обрабатываются. В процессе выполнения может быть несколько обращений к серверу. Часть из них кэшируются. Как минимум одно обращение к серверу есть всегда и оно не кэшируется. Кэширование зависит от версии платформы и версии конфигурации в целом. Если установлена низкая скорость соединения и не указывается текущая строка, то кэшируется форма выбора. Очистка кэша осуществляется с периодичностью в 20 мин. Удаляются формы, которые не использовались в этот период времени. См. также: Глобальный контекст, метод ПолучитьФорму Глобальный контекст, метод ПолучитьОбщуюФорму Глобальный контекст, метод ОткрытьФормуМодально |
|||
3
siggoron
13.08.12
✎
12:40
|
(2) и как мне передать объект для открытия с сервера на клиент?
|
|||
4
siggoron
13.08.12
✎
12:46
|
ну помогите, плиз!!!
|
|||
5
bar0n0
13.08.12
✎
12:48
|
Никак. Только Сериализовать в какой то другой вид и поместить во временное хранилище. На клиенте открыть это временное хранилище.Ну а вообще быстрее записать и не лохматить бабушку.
|
|||
6
Мимохожий Однако
13.08.12
✎
12:49
|
Что показывает Отладчик в процедуре СоздатьНарядНаРаботы?
|
|||
7
siggoron
13.08.12
✎
12:53
|
(6) {Задача.CRM_Задача.Форма.ФормаЗадачи.Форма(388)}: Ошибка при вызове метода контекста (СоздатьНарядНаРаботыСервер)
СоздатьНарядНаРаботыСервер().ПолучитьФорму("ФормаДокумента").Открыть(); по причине: Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа. по причине: Ошибка преобразования данных XDTO: НачалоСвойства: ret Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType по причине: Ошибка преобразования данных XDTO: НачалоСвойства: {http://v8.1c.ru/8.1/data/enterprise/current-config}Ref Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType |
|||
8
Hostess_
of_Love 13.08.12
✎
12:57
|
ОткрытьЗначение не пробовал?
|
|||
9
Asmody
13.08.12
✎
13:01
|
создаёшь структуру, заполняешь данными, структуру передаешь в ОткрытьФорму вторым параметром вот так:
ДанныеСчета = Новый Структура(); // .... заполняем структуру данными ОткрытьФорму("Документ.Счет.ФормаОбъекта", Новый Структура("ЗначенияЗаполнения",ДанныеСчета)); в модуле документа в обработке заполнения заполняешь данные документа из структуры: Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка) Если ТипЗнч(ДанныеЗаполнения)=Тип("Структура") Тогда // заполняешь данные дока из структуры ЭтотОбъект.Контрагент = ДанныеЗаполнения.Контрагент; // ... КонецЕсли; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |