Новости экономики и финансов. Курсы валют, ситуация на биржах, акции, котировки, аналитика: 💫 💫 💫 💫 💫 читайте на сайте

1C При Изменении Элемента Табличной Части Изменить Другой Элемент Управляемые Формы • Вместо выводов

Соответственно настройки этих элементов находятся не в свойствах полей, а в свойствах этих элементов настройки меню по правой кнопке мыши, пункт Свойства.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
На закладке Текущие ограничения пользователь имеет возможность просмотреть правила, действующие в системе на текущий момент времени. 1С доступ к реквизитам формы Обращайтесь в форму связи

Работаем с таблицей значений программно

ТаблицаЗначений — это программный объект встроенного языка, позволяющий строить произвольные наборы данных в памяти компьютера, отображать их в табличном виде, а также программно и интерактивно манипулировать ими (добавлять, редактировать, удалять и сортировать).

Таблицы состоят из строк и колонок. Строки располагаются вниз по вертикали, а колонки — вправо по горизонтали. Строки и колонки имеют индексы, по которым к ним можно обращаться напрямую (начинаются с 0). Кроме этого, к колонкам можно обращаться по идентификатору.

Пересечения строк и колонок образуют ячейки, в которых содержатся значения. Тип значения определяется типом значения колонки.

Таблица значений является полностью динамическим объектом, т.е. Вы можете манипулировать не только строками таблицы, добавляя и удаляя их, но и колонками.

Таблица значений может использоваться явно при создании в коде необходимого количества переменных типа ТаблицаЗначений , либо неявно: при добавлении элемента управления ТабличноеПоле на обычную форму, и ТаблицаФормы — на управляемую. Здесь мы рассмотрим только программную работу с таблицей значений.

Поле объекта недоступно для записи в 1С 8.3

Создание таблицы значений

Как и большинство объектов встроенного языка, новая таблица значений может быть создана с помощью оператора Новый :

Прежде чем начать работу с таблицей значений, необходимо создать структуру колонок. Каждая колонка характеризуется следующими свойствами:

  1. Имя — идентификатор колонки (может содержать только алфавитные символы, цифры и знаки подчеркивания. Причем, начинаться имя колонки может только с буквы или символа подчеркивания);
  2. Заголовок — представление колонки в диалогах (может содержать произвольные символы);
  3. ТипЗначения — тип значения содержимого ячеек в этой колонке. Если тип не задан, в ячейке можно хранить значения произвольного типа;
  4. Ширина — ширина колонки в диалогах;

Доступ к колонкам производится через свойство Колонки объекта ТаблицаЗначений . Для добавления новой колонки используется метод Добавить():

Какую часть дохода тратите на еду?
До 50%Больше 50%

Для того, чтобы определить наличие колонки с нужным именем используется метод Найти():

Свойства колонки таблицы значений

Имя Тип Описание
Имя Строка символьный идентификатор колонки, по которому к ней можно обращаться из кода
Заголовок Строка строковое представление колонки на форме
ТипЗначения ОписаниеТипов свойство органичивает пространство доступных значений, которые можно указать в данной колонке
Ширина Число ширина колонки на форме (выражается в количестве символов)

Методы коллекции колонок таблицы значений

Вставить() Вставляет новую колонку в указанную позицию коллекции
Добавить() Добавляет новую колонку в конец коллекции
Количество() Возвращает количество колонок в коллекции
Найти() Ищет колонку в коллекции по имени
Очистить() Удаляет все колонки из коллекции
Сдвинуть() Сдвигает колонку влево или вправо
Удалить() Удаляет колонку из коллекции

Еще один пример кода, приводящий к ошибке Поле объекта недоступно для записи , неверное обращение к полям формы при попытке присвоить им новое значение.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
На рисунке 1 изображена форма элемента, на которой есть элементы на форме в отображении списка — это синий прямоугольник, а на самой форме их нет — это жёлтый прямоугольник. Передача данных между управляемыми формами: Статьи и материалы. Обращайтесь в форму связи

С обращением к серверу

Отличия в реализации подбора будут в этом случае только в передаче данных в документ и, затем, обработки подобранных товаров в документе. Вот таким образом будет выглядеть команда передачи данных в документ из подбора:

Теперь алгоритм обработки выбора элемента формы документа «Товары» изменится следующим образом:

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

Вместо выводов

По ссылке Вы можете скачать тестовую конфигурацию с примером из статьи.

Работаем с таблицей значений в 1с 8 программно - 1С 8.3 для разработчиков
Форма параметров обработки, с тремя страницами «Параметры подключения», «Логирование» и «Дополнительно».

Условное оформление в управляемых формах

  1. Большие объемы данных могут передаваться некорректно. По опыту работы с управляемыми формами скажу, что очень часто возникали ошибки типа «Ошибка передачи данных», если размер таблицы был больше мегабайта.
  2. Если передаваемые данные требуют обработки (получение остатков товара, цен и т.д.), то все эти действия необходимо выполнять на серверной стороне. Поэтому было бы правильней в форме подбора поместить их на серверную сторону, а уже на стороне документа обработать и и поместить в объект документа.

Отсутствие необходимости прибегать к услугам программистов для расширения прав доступа к элементам форм документов и справочников;.

Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
По умолчанию обычные формы 1С используются в конфигурациях для толстого обычного клиента 1С, а управляемые в конфигурациях для тонкого и веб клиента 1С. Урок 42. Видимость элементов на форме: ручная настройка и программная настройка | 1С: Программирование | Яндекс Дзен Обращайтесь в форму связи

Урок 42. Видимость элементов на форме: ручная настройка и программная настройка

Сегодня мы поработаем с формой и научимся на ней прятать элементы — устанавливать видимость их (Рисунок 1).

На рисунке 1 изображена форма элемента, на которой есть элементы на форме в отображении списка — это синий прямоугольник, а на самой форме их нет — это жёлтый прямоугольник. То есть они есть, но они там не отображаются.

Делается она следующим образом: выделяется элемент на форме, открывается палитра свойств этого элемента и на свойстве «Видимость» снять галочку (Рисунок 2).

Горящие товары с бесплатной доставкой
 «AliExpress Россия» работает отдельно от глобального «AliExpress» принадлежащего Alibaba. Он не зависит от мировых банковских систем и не попал под санкционный список со стороны США и Великобритании. Из Китая соответственно тоже можно заказывать ничего не опасаясь.

Снять/поставить галочку — это значит, что будет виден элемент или не будет виден. А если сказать иначе, то это Истина — галочка стоит и элемент виден, Ложь — галочка снята и элемент не виден.

Как же так получается, что поля на форме нет, но платформа предупреждает нас, что это поле не заполнено?

Все дело в том, что поле есть на форме, но он просто невидимый для пользователя, но платформа его воспринимает полноценно. Это необходимо учитывать. Поэтому и называется — пользовательская видимость.

А теперь мы попробуем сделать так, чтобы поле появлялось и исчезало в зависимости от какого-либо условия.

Проще всего это сделать с полем, у которого отображение будет в виде галочки. То есть если галочка будет стоять, то поле будет видно, а иначе поле будет спрятано. Давайте попробуем сделать это. Для этого необходимо добавить на форму еще один реквизит с типом «Булево» (Рисунок 3).

После этого необходимо перейти на форму и переместить его на форму (Рисунок 4).

Обратите внимание на рисунок 4, у поля «Видимость» галочка не стоит, а значит по умолчанию стоит значение Ложь!

Теперь необходимо прописать процедуру. Чтобы прописать, необходимо понять как это будет работать!

А работать это будет следующим образом: как только мы меняем значение поля «Показать/Скрыть», так сразу исчезает/появляется поле «Число». Все происходит именно в таком порядке. Чтобы это работало у платформы есть специальные события, а в данном случае нужно событие «ПриИзменении».

ПриИзменении — это событие означает то, что как только вы начинаете менять значение поля, то есть ставить галочку или убирать ее, так сразу начинает меняться и значение поля. А если не трогать, то ничего и не будет происходить, именно поэтому событие и называется, при изменении чего-то в этом поле.

Создадим на форме группу (папку) и поместим в нее элемент, который будем прятать (убирать видимость) — поле «Число» (Рисунок 5).

Выделим поле «Показать/Скрыть» и найдем свойство и оно же событие «ПриИзменении» (Рисунок 5).

Нажмем на значок увеличительного стекла и создадим процедуру на клиенте (Рисунок 6).

В создавшейся процедуре убираем закомментированную строку и вместо нее прописываем нашу (Рисунок 7).

2. Объект.ПоказатьСкрыть — обращение к элементу формы;

6. Элементы.Группа1.Видимость = Истина — папка с находящимися в ней элементами будет видна;

1С обработка табличной части 8.3 с возможностью отладки, скачать | Я
В результате таблица товаров документа будет заполнена. При использвовании этого варианта передачи данных между формами не было произведено вызовов к серверу. Однако у подобного подхода есть несколько больших минусов:

Разбор тестирования 1С: Профессионал и PMP: Элементы управления форм

💥Принимайте участие в опросе и получайте бесплатную консультацию

Related posts

Добавить комментарий

*