Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Отследить какую клавишу нажал пользователь на форме (1с 8.2.19.106)          
andrew76 Подменю пользователя
сообщение 30.08.17, 7:27
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 437
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Доброе всем утро !

Имеется табличная часть справочника с названием Состав_Семьи.Так как реквизитов в в этой ТЧ много и они большие по длине,
решил сделать следующее - редактировать форму записей этой ТЧ в диалоге.При редактировании записи запускается форма элемента ТЧ,
(предварительно заполняю реквизиты этой формы из текущей строки ТЧ).Всё работает ,правда в одном варианте-в независимости от того,
нажал ли пользователь кнопку "Сохранить" или "Отмена" на форме элемента ТЧ,данные реквизитов из формы приходится заливать
в текущую строку ТЧ-т.к. не могу отследить что нажал пользователь на форме элемента ТЧ.

Процедура Состав_СемьиПередНачаломИзменения(Элемент, Отказ)
        
СтандартнаяОбработка = Ложь;    
Форма = Справочники.ФизическоеЛицо.ПолучитьФорму("ФормаСоставСемьи");
Строка = ЭтаФорма.ЭлементыФормы.Состав_Семьи.ТекущиеДанные;
ЗаполнитьЗначенияСвойств(Форма, Строка);            //заполняю элементы формы значениями из текущей строки ТЧ
РЗ=Форма.ОткрытьМодально();
ЗаполнитьЗначенияСвойств(Строка,Форма);       //заполняю текущую строку ТЧ значениями из формы
Отказ = Истина;    

КонецПроцедуры

Vofka Подменю пользователя
сообщение 30.08.17, 7:31
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13948
Из: Киев
Спасибо сказали: 4514 раз
Рейтинг: 3635.6

Если я правильно понял, то в форме редактирования при нажатии на Сохранить сделайте

Закрыть(Истина);


А при Отмена просто

Закрыть();


И тогда как-то так:

Процедура Состав_СемьиПередНачаломИзменения(Элемент, Отказ)
        
   СтандартнаяОбработка = Ложь;    
   Форма = Справочники.ФизическоеЛицо.ПолучитьФорму("ФормаСоставСемьи");
   Строка = ЭтаФорма.ЭлементыФормы.Состав_Семьи.ТекущиеДанные;
   ЗаполнитьЗначенияСвойств(Форма, Строка);            //заполняю элементы формы значениями из текущей строки ТЧ
   РЗ=ФормаСТР.ОткрытьМодально();
   Если РЗ = Истина Тогда
      ЗаполнитьЗначенияСвойств(Строка,Форма);       //заполняю текущую строку ТЧ значениями из формы
   Иначе
      Отказ = Истина;    
   КонецЕсли;
КонецПроцедуры


Сообщение отредактировал Vofka - 30.08.17, 7:31

Спасибо сказали: andrew76,

andrew76 Подменю пользователя
сообщение 30.08.17, 9:20
Сообщение #3

Оратор
*****
Группа: Пользователи
Сообщений: 437
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Спасибо,всё работает.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 29.03.24, 10:21
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!