В подчиненной таблице формы скрываются строки уже введенные
Добрый день!
У меня в документе созданы две табличные части "Входной контроль" и "Измерения". Установлен отборСтрок по элементам входного контроля.
При вводе данных в подчиненную табличную часть если нажать Enter или кликнуть курсор в пустое место строки пропадают. Файл ПустаяСтрока.png
Если добавить новую строку то виден номер новой строки, а прошлые номера не видны, то есть они есть но скрыты(файл Строка2ЕстьСтрока1Нет).
Если нажать записать на форме, то тогда все строки становятся видны.
Можно прописать код, чтобы строки не исчезали или только принудительное записывание?
У меня в документе созданы две табличные части "Входной контроль" и "Измерения". Установлен отборСтрок по элементам входного контроля.
&НаКлиенте
Процедура ВходнойКонтрольПриАктивизацииСтроки(Элемент)
// Вставить содержимое обработчика.
ТД = Элементы.ВходнойКонтроль.ТекущиеДанные;
Если ТД <> Неопределено Тогда
Элементы.Измерения.ОтборСтрок = Новый ФиксированнаяСтруктура("Номенклатура", ТД.Номенклатура);
КонецЕсли;
КонецПроцедуры
ПоказатьПри вводе данных в подчиненную табличную часть если нажать Enter или кликнуть курсор в пустое место строки пропадают. Файл ПустаяСтрока.png
Если добавить новую строку то виден номер новой строки, а прошлые номера не видны, то есть они есть но скрыты(файл Строка2ЕстьСтрока1Нет).
Если нажать записать на форме, то тогда все строки становятся видны.
Можно прописать код, чтобы строки не исчезали или только принудительное записывание?
Прикрепленные файлы:


По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(11)Номенклатура да заполняется из родительской таблицы в новой строке
&НаКлиенте
Процедура ИзмеренияПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
Данные = Элементы.ВходнойКонтроль.ТекущиеДанные;
ТекДанные = Элементы.Измерения.ТекущиеДанные;
Если НоваяСтрока Тогда
ТекДанные.Номенклатура = Данные.Номенклатура;
КонецЕсли;
КонецПроцедуры
Показать
(15)
Вот сделал обработку с таким же функционалом. Проблемы нет
Данные = Элементы.ВходнойКонтроль.ТекущиеДанные;
ТекДанные = Элементы.Измерения.ТекущиеДанные;
Если НоваяСтрока Тогда
ТекДанные.Номенклатура = Данные.Номенклатура;
КонецЕсли;
ТекДанные = Элементы.Измерения.ТекущиеДанные;
Если НоваяСтрока Тогда
ТекДанные.Номенклатура = Данные.Номенклатура;
КонецЕсли;
Вот сделал обработку с таким же функционалом. Проблемы нет
Прикрепленные файлы:
ВнешняяОбработка1.epf
(12) тип одинаковый СправочникССылка.Номенклатура, Я подключил Обработчик ожидания, все равно строка исчезает.
&НаКлиенте
Процедура ВходнойКонтрольПриАктивизацииСтроки(Элемент)
// Вставить содержимое обработчика.
ПодключитьОбработчикОжидания("ИзмеренияПриАктивизацииСтрокиВхКонтроля", 0.1, Истина);
КонецПроцедуры
&НаКлиенте
Процедура ИзмеренияПриАктивизацииСтрокиВхКонтроля()
ТД = Элементы.ВходнойКонтроль.ТекущиеДанные;
Если ТД <> Неопределено Тогда
Элементы.Измерения.ОтборСтрок = Новый ФиксированнаяСтруктура("Номенклатура", ТД.Номенклатура);
Элементы.Измерения.Обновить();
КонецЕсли;
КонецПроцедуры // ()
Показать
(7)Строки могут исчезать, если накладывается новый отбор на табличную часть с другими параметрами или изменяется поле номенклатура и строка больше не попадает в отбор. Но это в коде где то должно быть прописано. Больше предположить чего то не могу.
Почему-то был пуст отбор строк по Элементу, таблице формы, подставляю обработчик ожидания срабатывает. Большое спасибо за помощь!
И
Может кому-то пригодится.
&НаКлиенте
Процедура ИзмеренияПриАктивизацииСтроки(Элемент)
// Вставить содержимое обработчика.
ПодключитьОбработчикОжидания("ИзмеренияПриАктивизацииСтрокиВхКонтроля", 0.1, Истина);
КонецПроцедуры
ПоказатьИ
&НаКлиенте
Процедура ИзмеренияПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
// Вставить содержимое обработчика.
ПодключитьОбработчикОжидания("ИзмеренияПриАктивизацииСтрокиВхКонтроля", 0.1, Истина);
Данные = Элементы.ВходнойКонтроль.ТекущиеДанные;
Если Данные = Неопределено Тогда
Сообщить("для добавления параметров входного контроля необходимо выделить курсором нужный вид входного контроля!",СтатусСообщения.Важное);
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
ПоказатьМожет кому-то пригодится.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот