Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 05:36

Не вводится текст в поля формы

Автор lucceffer, 04 июн 2015, 21:04

0 Пользователей и 1 гость просматривают эту тему.

lucceffer

Всем привет. Создаю форму элемента, нажимаю Сtrl + R, запускается моя форма, в которой я не могу изменить ни единого поля. При при отладке, все вводится. Начал только изучать 1с по книжке и наконец-то дошел до задачи на программирование, но ничего не выходит потому что ничего не вводится. Задача такая "Есть Поле1 - булево, есть Поле2 - текст, если Поле1 true,то доступность Поле2 True, иначе Поле2 не доступно для изменения"

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


КОД:

&НаКлиенте
Процедура НаличиеКузоваПриИзменении(Элемент)
Если Элементы.НаличиеКузова = Истина Тогда
Элементы.ГосНомерКузова.Доступность = Истина;
Иначе
Элементы.ГосНомерКузова = "";
Элементы.ГосНомерКузова.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры



По сути вопроса два
1. Почему не вводится текст, возможно я что-то пропустил, но делал всё по книжке.
2. Какой код будет правильный на поставленную задачу, я ввел код с книжки и даже вариации делал, все время одно и тоже выбивает при смене флага "Поле объекта недоступно для записи (ГосНомерКузова)"

Дмитрий@

&НаКлиенте
Процедура НаличиеКузоваПриИзменении(Элемент)
    Если НаличиеКузова = Истина Тогда
        Элементы.ГосНомерКузова.Доступность = Истина;
    Иначе
        ГосНомерКузова = "";
        Элементы.ГосНомерКузова.Доступность = Ложь;
    КонецЕсли;
КонецПроцедуры

lucceffer

Цитата: Дмитрий@ от 04 июн 2015, 23:01
&НаКлиенте
Процедура НаличиеКузоваПриИзменении(Элемент)
    Если НаличиеКузова = Истина Тогда
        Элементы.ГосНомерКузова.Доступность = Истина;
    Иначе
        ГосНомерКузова = "";
        Элементы.ГосНомерКузова.Доступность = Ложь;
    КонецЕсли;
КонецПроцедуры

Выдало:
Переменная не определена (НаличиеКузова)
Переменную не видно в пространстве

Дмитрий@

А вот так

&НаКлиенте
Процедура НаличиеКузоваПриИзменении(Элемент)
    Если Элементы.НаличиеКузова = Истина Тогда
        Элементы.ГосНомерКузова.Доступность = Истина;
    Иначе
        Элементы.ГосНомерКузова.ТекстРедактирования = "";
        Элементы.ГосНомерКузова.Доступность = Ложь;
    КонецЕсли;
КонецПроцедуры

Добавлено: 05 июн 2015, 01:18


Что написано у элемента на форме "Элементы.НаличиеКузова" в свойстве "ПутьКДанным"?

lucceffer

Цитата: Дмитрий@ от 05 июн 2015, 01:08
А вот так

&НаКлиенте
Процедура НаличиеКузоваПриИзменении(Элемент)
    Если Элементы.НаличиеКузова = Истина Тогда
        Элементы.ГосНомерКузова.Доступность = Истина;
    Иначе
        Элементы.ГосНомерКузова.ТекстРедактирования = "";
        Элементы.ГосНомерКузова.Доступность = Ложь;
    КонецЕсли;
КонецПроцедуры

Добавлено: 05 июн 2015, 01:18


Что написано у элемента на форме "Элементы.НаличиеКузова" в свойстве "ПутьКДанным"?

Написано "Объект.НаличиеКузова"

Я в шоке не работает, ладно с этим "Элементы.ГосНомерКузова.ТекстРедактирования = "";"
Но галочка которая открывает доступ и закрывает, просто не работает, я её ставлю убираю и ничего не происходит, поле не реагирует
Такое впечатление что атрибуты меняются для каких-то других данных

cska-fanat-kz

по контр+Р открывается окно для проверки расположения элементов И ТОЛЬКО.
никакие данные в режиме Конфигуратора не вводятся.
отладку обработчиков событий производят только через режим Предприятие с помощью точек останова.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

cska-fanat-kz

&НаКлиенте
Процедура НаличиеКузоваПриИзменении(Элемент)
    Если Объект.НаличиеКузова = Истина Тогда
        Элементы.ГосНомерКузова.Доступность = Истина;
    Иначе
        Объект.ГосНомерКузова = "";
        Элементы.ГосНомерКузова.Доступность = Ложь;
    КонецЕсли;
КонецПроцедуры
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

lucceffer

Цитата: cska-fanat-kz от 05 июн 2015, 09:10
&НаКлиенте
Процедура НаличиеКузоваПриИзменении(Элемент)
    Если Объект.НаличиеКузова = Истина Тогда
        Элементы.ГосНомерКузова.Доступность = Истина;
    Иначе
        Объект.ГосНомерКузова = "";
        Элементы.ГосНомерКузова.Доступность = Ложь;
    КонецЕсли;
КонецПроцедуры

Все работает!) Спасибо огромное, не мог дальше продолжить учиться из-за того что не знал почему этот пример не работает. Еще раз спасибо.

Теги: форма поля 

Похожие темы (5)

Рейтинг@Mail.ru

Поиск