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

Хранилище

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

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



> Реализация работы формы          
Vofka Подменю пользователя
сообщение 20.09.10, 12:52
Сообщение #1

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

Программное управление видимостью страниц

--------------------------------------------------------------------------------

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

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

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

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

Программное управление формой

--------------------------------------------------------------------------------

Обращение к процедурам, функциям, реквизитам, свойствам и методам, доступных для формы, из модуля этой формы происходит напрямую, без использования объекта "ЭтаФорма", кроме случаев, когда такое обращение не может быть выполнено иначе.

В разделе инициализации модуля формы запрещается открывать другие формы или диалоги (например операторами Вопрос(), Предупреждение() и т. д.).

Программное управление формой из других модулей производится через присвоение её реквизитам (свойствам) значений и через вызов её методов или экспортных процедур (функций).
Не допускается делать предположений о свойствах реквизитов формы.
Не допускается обращение к элементам формы не из модуля этой формы: ни непосредственно, ни при помощи перебора коллекции "ЭлементыФормы", ни каким-либо другим способом.

Например, вполне корректно предполагать, что у формы элемента справочника есть свойство "ПараметрОснование", однако, предположение о наличии у "ПараметрОснование" свойства "Дата", уже недопустимо.

Vofka Подменю пользователя
сообщение 20.09.10, 12:52
Сообщение #3

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

Ограничение выполнения действий, доступных только при определенных условиях

--------------------------------------------------------------------------------

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

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

Например, если нельзя записывать элемент номенклатуры без заполненной базовой единицы измерения, то кнопка "Записать" остается доступной всегда, а при нажатии на неё, если не заполнена базовая единица измерения, может быть выдано сообщение:
Перед записью в элементе справочника "Номенклатура" необходимо заполнить реквизит "базовая единица"!

Vofka Подменю пользователя
сообщение 20.09.10, 12:53
Сообщение #4

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

Поведение специализированных форм

--------------------------------------------------------------------------------

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

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

Vofka Подменю пользователя
сообщение 20.09.10, 12:53
Сообщение #5

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

Обращение к данным информационной базы в обработчиках часто вызываемых событий

--------------------------------------------------------------------------------

Следует минимизировать обращение к данным информационной базы в обработчиках событий, приведенных ниже, поскольку это может существенно замедлить интерактивную работу.

События формы:
• ОбновлениеОтображения().

События табличного поля:
• ПриВыводеСтроки(),
• ПриАктивацииСтроки().

В качестве средств минимизации в зависимости от ситуации могут быть:
• использование переменных модуля формы для кэширования данных;
• перенос обработки данных в обработчики других событий;
• для таблиц значений - получение необходимых данных на этапе заполнения;
• любые другие методы.

Vofka Подменю пользователя
сообщение 20.09.10, 12:53
Сообщение #6

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

Обращение к свойству "ТекущаяСтрока" табличного поля

--------------------------------------------------------------------------------

Запрещается использовать свойство "ТекущаяСтрока" для получения значений полей строки табличного поля.
Обращение к данным значениям должно выполняться через "ТекущиеДанные" или "ДанныеСтроки".

Правильно:

ИнформационнаяНадписьАдрес = "Адрес: " + Элемент.ТекущиеДанные.Адрес;



Неправильно:

ИнформационнаяНадписьАдрес = "Адрес: " + Элемент.ТекущаяСтрока.Адрес;




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

СправочникСписок.Колонки.Добавить("Адрес");



Данное правило не относится к полям, необходимым для функционирования динамических списков и расширений табличного поля (т.н. системные поля, например: "ПометкаУдаления", "ЭтоГруппа", "Дата" и т.д.). Такие поля являются всегда доступными и не удаляются табличным полем из коллекции колонок динамического списка при изменении видимости или удалении колонок табличного поля.

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


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

 

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