powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Параметры на форме
25 сообщений из 36, страница 1 из 2
Параметры на форме
    #38072258
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Передаю на др. форму ПараметрыНаФорму = Новый Структура;
Управляемые формы 8.2. В ПриСозданииНаСервере в новой форме вижу эти переданные параметры, а вот потом ПриОткрытии эти параметры не видно ?! А мне нужно потом ещё их и изменить
...
Рейтинг: 0 / 0
Параметры на форме
    #38072326
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В форме размещаете реквизит ТАкойто

присозданиинасервере
Такойто=Параметры.что-то
...
Рейтинг: 0 / 0
Параметры на форме
    #38072470
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема вообщем-то в другом. Как потом обратно вернуть на форму исходную новые значения ? Из Формы1 открывается модально Форма2. Внутри Формы2 делаю Форма1.Реквизит1 = Форма2.Реквизит....Теперь надо, чтобы Форма1 имела обновлённое значение. Пока после закрытия Формы2, данные не сохраняются :(.
...
Рейтинг: 0 / 0
Параметры на форме
    #38072486
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2,Внутри Формы2 делаю Форма1.Реквизит1 = Форма2.Реквизит Возвращайте реквизит при закрытии модальной формы (форма2). И его в Форме1 обрабатывайте как хотите. А то разведете паутину и сами в ней запутаетесь.
...
Рейтинг: 0 / 0
Параметры на форме
    #38072560
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Оповестить()
...
Рейтинг: 0 / 0
Параметры на форме
    #38072893
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никак не получается ни одним способом.
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
&НаКлиенте
Процедура ПриЗакрытии()
	// Вставить содержимое обработчика.
	ФормаВладелец = ДокументыДок1.ПолучитьФорму("Форма1" );
	ФормаВладелец.Рекв1 = Рекв2  ;
	Оповестить("ЗакрытьФорму",ФормаВладелец.Рекв1 , ЭтаФорма);	
	
КонецПроцедуры



Рекв1 - Это на главной форме, а Рекв2 на вызванной модально.
...
Рейтинг: 0 / 0
Параметры на форме
    #38073849
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ФормаВладелец=ЭтаФорма.Владелец. Если конечно при открытии этой формы указали владельца.

Оповестить работает только в связке с обработкойоповещения. Где она?
...
Рейтинг: 0 / 0
Параметры на форме
    #38074145
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем cпасибо получилось !
...
Рейтинг: 0 / 0
Параметры на форме
    #38104560
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новая проблема возникла , поможите ! Если кратко : Как передать параметр в запрос динамического списка другой открываемой формы ?
...
Рейтинг: 0 / 0
Параметры на форме
    #38104570
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Их на ФормеДокумента есть реквизитаОбъекта открывается ФормаВыбора (управляемая) Справочника. На ФормеВыбора Справочника есть реквизит ДинамическийСписок (используется ПроизвольныйЗапрос с Параметром). Вот этот Параметр в Запрос надо передать из данных ФормыДокумента. Явно ОткрытьФорму справочника с Параметрами не могу, т.к. формаВыбора открывается сама по умолчанию, через Оповестить не получается :(
...
Рейтинг: 0 / 0
Параметры на форме
    #38104637
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Их на ФормеДокумента есть реквизитаОбъекта открывается ФормаВыбора (управляемая) Справочника" скриншот приложите, или пишите по русски.
...
Рейтинг: 0 / 0
Параметры на форме
    #38104678
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZ, ну описАлся человек.... :) Короче через ПараметрыНаФорму + Открыть получилось вызвать Форму выбора однократно (надо было отключить СтандартнаяОбработка) с нужной фильтрацией....НО вот выбор элемента из ФормыВыбора Справочника не могу сделать (не подставляется значение в формуДокумента) :(
...
Рейтинг: 0 / 0
Параметры на форме
    #38104685
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2DmitriyZ, ну описАлся человек.... :) Короче через ПараметрыНаФорму + Открыть получилось вызвать Форму выбора однократно (надо было отключить СтандартнаяОбработка) с нужной фильтрацией....НО вот выбор элемента из ФормыВыбора Справочника не могу сделать (не подставляется значение в формуДокумента) :( опять ничего не понятно. Откуда идет выбор элемента (открывается форма выбора)? Почему возникли трудности переопределить стандартное поведение?
...
Рейтинг: 0 / 0
Параметры на форме
    #38104726
Last1Cmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ничего не понял

есть возможность открыть форму из другой формы... при открытии указать форму владельца
в форме выбора после выбора надо оповестить о выборе форму владельца и там отработает процедура которая отвечает за обработку этого выбора

если надо обновить динамический список с параметрами то их можно просто после обработки выбора "переприсвоить" и данные обновятся в нем
...
Рейтинг: 0 / 0
Параметры на форме
    #38105238
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В модуле Формы Документа есть код :
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
&НаКлиенте
Процедура Реквиз1НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	////// Вставить содержимое обработчика.
		 ОтборРекв1 = "Наим1"; 		
		 СтандартнаяОбработка = Ложь;	    
		 ПараметрыНаФорму = Новый Структура;
		 ПараметрыНаФорму.Вставить("Параметр1",ОтборРекв1);		 
		 ФормаВыборРекв = ПолучитьФорму("Справочник.Справ1.Форма.ФормаВыбораРекв1Управляемая",ПараметрыНаФорму);
		 ФормаВыборРекв1.Открыть();
		 //
КонецПроцедуры



P.S. СтандартнаяОбработка =Ложь, т.к. если не Ложь, то окноФормы открывается по умолчанию и без отбора, а мне надо открыть с Отбором и один раз.

В модуле ФормыВыбораСправочника
Код: html
1.
2.
3.
4.
5.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	// Вставить содержимое обработчика.
	ЭтаФорма.Список.Параметры.УстановитьЗначениеПараметра("Параметр1",ЭтаФорма.Параметры.Параметр1);	
КонецПроцедуры



На ФормеСправочника есть Реквизит-ДинамическийСписок, использующий ПроизвольныйЗапрос
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
ВЫБРАТЬ
	
	СправочникСправ1.Колонка1,
	СправочникСправ1.Колонка2.Наименование
ИЗ
	Справочник.Справ1 КАК СправочникСправ1
ГДЕ
	СправочникСправ1.Колонка1 = &Параметр1


Колонка1 и Колонка2.Наименование данные типа Строка.

Так вот , если в запросе
Код: html
1.
2.
ГДЕ
	СправочникСправ1.Колонка1 = "Наим1"

, т.е явно подставлять значение и не использовать код для передачи данных через параметр, то всё работает прекрасно, если же передавать строковое значение "Наим" через параметр, то в открытой Форме выбора Справочника при щелчке мыши на нужной строке, значение не выбирается в Форму документа (просто висит форма , никаких действий не происходит), подозреваю, что это из-за того отключена СтандартнаяОбработка, если не писать
Код: html
1.
СтандартнаяОбработка =Ложь

, то окрываются сразу 2 окна ( одно пустое, а др. отфильтрованное), но также не могу выбрать ничего.
Вроде подробно всё теперь.

Параметр вроде правильно передаю ?! Как мне добиться выбора элемента справочника из Формы или же может по другому можно (через Отбор вместо запроса не предлагать, интересует именно вариант с запросом)
...
Рейтинг: 0 / 0
Параметры на форме
    #38105908
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2, очень рекомендую скачать демо базу с с сайта 1С там есть пример, как это делать.
Вкратце:
1) У реквизита формы "Реквиз1" свойство "ФормаВыбора" (здесь выбрать форму справочника).
2) У реквизита метаданных объекта "Реквиз1" установить "Связи параметров выбора" - здесь выбрать то, что будет передаваться в открывающуюся форму как параметр отбора.
3) В модуле формы выбора поместь примерно следующий код:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

		// Установка параметра Склад динамического списка.
		Если Параметры.Свойство("ОстаткиПоСкладу") Тогда

			СправочникСписок.Параметры.УстановитьЗначениеПараметра("ПоВсемСкладам", Ложь);
			СправочникСписок.Параметры.УстановитьЗначениеПараметра("Склад", Параметры.ОстаткиПоСкладу); 

		Иначе

			Отказ = Истина; 

		КонецЕсли

КонецПроцедуры
...
Рейтинг: 0 / 0
Параметры на форме
    #38106024
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZ, по п.1) Да, это сделано было, форма указана была, по п.2. Через ПараметрыВыбора отбор не происходит, п.3 сделан так же и у меня см.код .

Непонятно отчего не выбирается в отфильтрованном спискеФормыВыбораСправочника значение.
...
Рейтинг: 0 / 0
Параметры на форме
    #38106043
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2DmitriyZ, по п.1) Да, это сделано было, форма указана была, по п.2. Через ПараметрыВыбора отбор не происходит, п.3 сделан так же и у меня см.код .

Непонятно отчего не выбирается в отфильтрованном спискеФормыВыбораСправочника значение. А дин. списку справочника установлена основная таблица?
...
Рейтинг: 0 / 0
Параметры на форме
    #38106100
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZ, да установлена
...
Рейтинг: 0 / 0
Параметры на форме
    #38106106
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По ощущениям что-то с формой моей собственной, т.к. при открытии 2-х окон (если не отключать СтандартнуюОбработку), то из того окна при стандартном вызове выбирается элемент (но там неправильно отбор работает).
...
Рейтинг: 0 / 0
Параметры на форме
    #38106223
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точнее не с самой формой, а видимо, что-то с вызовом или ??? Вот на эту процедуру
Код: html
1.
2.
3.
4.
5.
&НаКлиенте
Процедура Реквиз1тОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
	// Вставить содержимое обработчика.
	
КонецПроцедуры



вообще не выходит после открытия Формы

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
&НаКлиенте
Процедура Реквиз1НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	////// Вставить содержимое обработчика.
		 ОтборРекв1 = "Наим1"; 		
		 СтандартнаяОбработка = Ложь;	    
		 ПараметрыНаФорму = Новый Структура;
		 ПараметрыНаФорму.Вставить("Параметр1",ОтборРекв1);		 
		 ФормаВыборРекв = ПолучитьФорму("Справочник.Справ1.Форма.ФормаВыбораРекв1Управляемая",ПараметрыНаФорму);
		 ФормаВыборРекв1.Открыть();
		 //
КонецПроцедуры



, а должна выходить при нормальном выборе. Что не так ?
...
Рейтинг: 0 / 0
Параметры на форме
    #38106332
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Last1Cmen, вот здесь
Код: html
1.
2.
3.
4.
5.
 &НаКлиенте
Процедура Реквиз1НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	     Оповестить (??? ,Параметр1, ???  );
		 //
КонецПроцедуры


мне надо оповестить др.форму: ФормуВыбора Справочника , чтобы передать в неё параметр1, который будет использоваться в этой ФормеВЫбораСправочника при СозданииФормы
Код: html
1.
2.
3.
4.
5.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	// Вставить содержимое обработчика.
	ЭтаФорма.Список.Параметры.УстановитьЗначениеПараметра("Параметр1",ЭтаФорма.Параметры.Параметр1);	
КонецПроцедуры



Что мне надо написать в последнем параметре, и где указать в какую Форму?
...
Рейтинг: 0 / 0
Параметры на форме
    #38106386
Last1Cmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2Last1Cmen, вот здесь
Код: html
1.
2.
3.
4.
5.
 &НаКлиенте
Процедура Реквиз1НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	     Оповестить (??? ,Параметр1, ???  );
		 //
КонецПроцедуры


мне надо оповестить др.форму: ФормуВыбора Справочника , чтобы передать в неё параметр1, который будет использоваться в этой ФормеВЫбораСправочника при СозданииФормы
Код: html
1.
2.
3.
4.
5.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	// Вставить содержимое обработчика.
	ЭтаФорма.Список.Параметры.УстановитьЗначениеПараметра("Параметр1",ЭтаФорма.Параметры.Параметр1);	
КонецПроцедуры



Что мне надо написать в последнем параметре, и где указать в какую Форму?

я опять не вьехал зачем так и почему
но если хочется через оповещение то добавить в форму где список слушателя этого оповещения (стандартная процедура) а в начало выбора (почему начало ????) вызов сделать оповещения... параметры передавать как по описанию процедуры
Оповестить(<ИмяСобытия>, < Параметр >, <Источник>), принимать ОбработкаОповещения(<ИмяСобытия>, <Параметр>, <Источник>)

а вообще мне кажется что не мешало бы пересмотреть задачу так сказать архитектурно... как то через одно место имхо выходит (скажем кто в здравом уме будет вызывать оповещение при начале выбора значения) :)

извините если резко
...
Рейтинг: 0 / 0
Параметры на форме
    #38106399
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Перем А1 Экспорт;

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	// Вставить содержимое обработчика.
	ЭтаФорма.Параметры.Парам1 = А1;
	ЭтаФорма.Список.Параметры.УстановитьЗначениеПараметра("Парам1",Парам1);	
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	// Вставить содержимое обработчика.
КонецПроцедуры

&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
	// Вставить содержимое обработчика.
	А1 = Параметр;
	Парам1 = Параметр;
КонецПроцедуры



Оповещение проходит, НО как мне сохранить переданное сюда Значение, что б передать в
Код: html
1.
ЭтаФорма.Список.Параметры.УстановитьЗначениеПараметра("Парам1",Парам1);	



На форме заведён реквизит Парам1 и здесь перемен А1. В процедуре ОбработкаОповещения А1 и Парам1 имеют нужные значения, а потом всё сбрасывается :( ....
???
...
Рейтинг: 0 / 0
Параметры на форме
    #38106445
Last1Cmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"при создании на сервере" один раз отработает это раз
убери переменную и работай через передачу значения в вызове процедуры/функции чтобы избежать одинаковых имен и не ошибаться
...
Рейтинг: 0 / 0
25 сообщений из 36, страница 1 из 2
Форумы / [игнор отключен] [закрыт для гостей] / Параметры на форме
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]