powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Как пнуть обработчик Табличного Поля?
25 сообщений из 25, страница 1 из 1
Как пнуть обработчик Табличного Поля?
    #35853038
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На поле ввода табличного поля висит обработчик.
Я программно создаю документ, добавляю стоку в табличное поле и присваиваю значения полям строки, но обработчик при изменении не срабатывает.
При аналогичных действиях с интерфейсом в ручную - все работает.
Как пнуть обработчик программно?
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35853041
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1С 8.1
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35854930
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос не достоин ответа?
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35854967
Moriarti
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackboxНа поле ввода табличного поля висит обработчик.
Я программно создаю документ, добавляю стоку в табличное поле и присваиваю значения полям строки, но обработчик при изменении не срабатывает.
При аналогичных действиях с интерфейсом в ручную - все работает.
Как пнуть обработчик программно?

Ключевая фраза "программно создаю документ".
Как связаны интерфейсные события компонент на форме с програмным созданием объекта?
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855000
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну я специально заполняю табличную часть документа, обращаясь к интерфейсным объектам на форме документа.... Хоть и программно, но воздействую именно на интерфейсные объекты. А что при таком подходе нельзя вызвать обработчик интерфейсного объекта меня сильно удивляет..... Йа фшоке :)
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855014
Moriarti
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackboxНу я специально заполняю табличную часть документа, обращаясь к интерфейсным объектам на форме документа.... Хоть и программно, но воздействую именно на интерфейсные объекты. А что при таком подходе нельзя вызвать обработчик интерфейсного объекта меня сильно удивляет..... Йа фшоке :)

Вызывать можно, но только не так как это ты делаешь.
Даже если притянуть 1С к ООП,
есть класс Документ, у него есть свойства Поле1, Форма1.
На форме положен Компонент1 прикрученный к данным Поле1.
У компоненты определено событие Компонент1.ПриИзменении()

Почему тебя удивляет что при

Документ1 := Документ.Созать();
Документ1.Поле1 = "Значение";
Документ1.Сохранить();

Компонент1.ПриИзменении() не вызывается?

Вполне логичное поведение.

Для событий уровня документа изменяй события в модуле документа.
К примеру, "ПередЗаписью".
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855072
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Moriarti,

Я меняю свойство компонента а не значение реквизита документа!
Т. е. имитируется воздействие пользователя на компонент и логично ожидать обработки события!
Менять в модуле документа НИЧЕГО нельзя, вот так.
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855079
Moriarti
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackboxMoriarti,

Я меняю свойство компонента а не значение реквизита документа!
Т. е. имитируется воздействие пользователя на компонент и логично ожидать обработки события!
Менять в модуле документа НИЧЕГО нельзя, вот так.

Код в студию
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855176
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мухи отдельно, котлеты отдельно...

>>Я программно создаю документ, добавляю стоку в табличное поле и присваиваю значения полям строки, но обработчик при изменении не срабатывает.

строку вы добавляете не в табличное поле, а в табличную часть. Табличное поле - элемент управление формы забинденный на эту самую табличную часть документа. И это две большие разницы.

>>меня сильно удивляет..... Йа фшоке :)

учите матчасть - не будет шокоф
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855179
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну как раз учу.
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855181
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Moriarti,

Документ = Документы.Документ1.СоздатьДокумент();
Форма = Документ.ПолучитьФорму("ФормаДокумента");
Форма.Открыть();
Форма.Реквизит1 = "Значение1";
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855194
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господин ПЖмухи отдельно, котлеты отдельно...

>>Я программно создаю документ, добавляю стоку в табличное поле и присваиваю значения полям строки, но обработчик при изменении не срабатывает.

строку вы добавляете не в табличное поле, а в табличную часть. Табличное поле - элемент управление формы забинденный на эту самую табличную часть документа. И это две большие разницы.

>>меня сильно удивляет..... Йа фшоке :)

учите матчасть - не будет шокоф
Ну да, в табчасть, только не на прямую, а используя табполе...
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855205
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackboxГосподин ПЖмухи отдельно, котлеты отдельно...

>>Я программно создаю документ, добавляю стоку в табличное поле и присваиваю значения полям строки, но обработчик при изменении не срабатывает.

строку вы добавляете не в табличное поле, а в табличную часть. Табличное поле - элемент управление формы забинденный на эту самую табличную часть документа. И это две большие разницы.

>>меня сильно удивляет..... Йа фшоке :)

учите матчасть - не будет шокоф
Ну да, в табчасть, только не на прямую, а используя табполе...

не путайте автора, он же пишет - "программно".
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855206
Паля
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
blackboxНу я специально заполняю табличную часть документа, обращаясь к интерфейсным объектам на форме документа.... Хоть и программно, но воздействую именно на интерфейсные объекты. А что при таком подходе нельзя вызвать обработчик интерфейсного объекта меня сильно удивляет..... Йа фшоке :)
Гениально.. а текст тогда заполняеть генерируя движения мышки и события клавиатуры ))
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855209
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А тяжело подсказать?
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855220
Moriarti
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackboxMoriarti,

Документ = Документы.Документ1.СоздатьДокумент();
Форма = Документ.ПолучитьФорму("ФормаДокумента");
Форма.Открыть();
Форма.Реквизит1 = "Значение1";

Уф, прикольно!
Т.е. вы создаете документ, открываете на экране форму с ним и заполняете Реквизит1.
Зачем?
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855221
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне пока изредка приходится использовать 1С и я мягко говоря еще не проникся ей.
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855232
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MoriartiblackboxMoriarti,

Документ = Документы.Документ1.СоздатьДокумент();
Форма = Документ.ПолучитьФорму("ФормаДокумента");
Форма.Открыть();
Форма.Реквизит1 = "Значение1";

Уф, прикольно!
Т.е. вы создаете документ, открываете на экране форму с ним и заполняете Реквизит1.
Зачем?
Требуется обработка в стандартной конфигурации, которая будет заливать внешние данные в документы. При заполнении табчасти документа многие поля "подтягиваются" обработчиком на поле Номенклатура. Просто нет смысла повторять весь этот код в обработке - он ведь и так работает при вводе данных оператором - этого я и хочу добиться таксказать "программно".
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855241
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackboxMoriarti[quot blackbox]Moriarti,

Документ = Документы.Документ1.СоздатьДокумент();
Форма = Документ.ПолучитьФорму("ФормаДокумента");
Форма.Открыть();
Форма.Реквизит1 = "Значение1";

Уф, прикольно!
Т.е. вы создаете документ, открываете на экране форму с ним и заполняете Реквизит1.
Зачем?

Я рассчитываю тем самым вызвать обработчик поля ввода Реквизит1. Как это правильно сделать я не знаю, поэтому обратился на форум. Наивино?
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855282
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Документ = Документы.Документ1.СоздатьДокумент();
Форма = Документ.ПолучитьФорму("ФормаДокумента");
ПолеРеквизит1 = Форма.ЭлементыФормы.Найти("Реквизит1");
ПолеРеквизит1.Значение = "12345";

Так я вроде 100% воздействую именно на объект интерфейса, но событие не создается.
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855350
blackbox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну х*** умничать проще чем подсказать
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855380
Сисой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и вызови напрямую обработчик с передачей ему всех необходимых параметров (элемент управления и т.п.). Кто мешает?
Код: plaintext
1.
Форма.ПриИзмененииРеквизита1(бла-бла-бла);
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855382
Moriarti
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackboxТребуется обработка в стандартной конфигурации, которая будет заливать внешние данные в документы. При заполнении табчасти документа многие поля "подтягиваются" обработчиком на поле Номенклатура. Просто нет смысла повторять весь этот код в обработке - он ведь и так работает при вводе данных оператором - этого я и хочу добиться таксказать "программно".

И что, для каждого документа будете открывать форму?
Не получится как вы хотите. Это не Дельфи.

Если не хотите повторять код, напишите процедуры.
А в обработке придется самому все заполнять.
Без форм и событий конечно, "программно".
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855421
Moriarti
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blackboxПолеРеквизит1.Значение = "12345";
Так я вроде 100% воздействую именно на объект интерфейса, но событие не создается.

Я с этим тоже сталкивался:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Процедура ФИОПриИзменении(Элемент)
    Сообщить("ФИОПриИзменении(Элемент)");
КонецПроцедуры


Процедура Кнопка2Нажатие(Элемент)
    ФИО = "Иванов";
КонецПроцедуры

При нажатии Кнопка2, ФИО присваивается "Иванов", но событие ФИОПриИзменении() не вызывается.
1С все таки не ООП :-)
...
Рейтинг: 0 / 0
Как пнуть обработчик Табличного Поля?
    #35855485
1chainik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
СисойНу и вызови напрямую обработчик с передачей ему всех необходимых параметров (элемент управления и т.п.). Кто мешает?
Код: plaintext
1.
Форма.ПриИзмененииРеквизита1(бла-бла-бла);
Т.е. он может быть вызван снаружи , если даже обработчик не опубликован ?
(т.е. не промакирован как "Экспорт")?



А внутри формы - там таки да - есть свобода. вот альтернативные вызовы:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Процедура КнопкаВыполнитьНажатие(Кнопка)
	ЭлементыФормы.ПолеВвода1.Значение = "test";
//можно всяко:	
	//Выполнить("ПолеВвода1ПриИзменении(""ЭлементыФормы.ПолеВвода1"")");	
//можно всяко:
	//ПолеВвода1ПриИзменении("ЭлементыФормы.ПолеВвода1");
//можно всяко:
	ПолеВвода1ПриИзменении(ЭлементыФормы.ПолеВвода1);
КонецПроцедуры


Процедура ПолеВвода1ПриИзменении(Элемент)
	ЭлементыФормы.НадписьПолеВвода1.Значение = ЭлементыФормы.ПолеВвода1.Значение;
КонецПроцедуры
можно ли снаружи - не проверял.
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Как пнуть обработчик Табличного Поля?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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