Особенности разделения кода форм на клиентскую и серверную части (1Cv82) — различия между версиями

Материал из КинтВики
Перейти к: навигация, поиск
(Новая страница: «Категория:Программирование в 1Cv82 ===Передача управления=== * Любые передачи управления к...»)
 
м
 
(не показаны 2 промежуточные версии 2 участников)
Строка 1: Строка 1:
[[Категория:Программирование в 1Cv82]]
+
[[Категория: Формы 1Cv8]]
 
 
  
 
===Передача управления===
 
===Передача управления===
Строка 8: Строка 7:
 
* Немодальное открытие формы нового (и не только) документа '''''своим обработчиком''''' переводит новое окно на задний план. Как бороться непонятно.. Может быть там есть какие-то секретные флаги... Вызов Активизировать() не помогает.
 
* Немодальное открытие формы нового (и не только) документа '''''своим обработчиком''''' переводит новое окно на задний план. Как бороться непонятно.. Может быть там есть какие-то секретные флаги... Вызов Активизировать() не помогает.
 
** Вроде бы такое поведение платформы начинается после некоторых ошибок (исключений). Достаточно перегрузить 1С и все исчезает.
 
** Вроде бы такое поведение платформы начинается после некоторых ошибок (исключений). Достаточно перегрузить 1С и все исчезает.
 
  
 
===Установка доступности===
 
===Установка доступности===
* <strike>При записи нового документа "Процесс" (запись без закрытия) съезжает отображение формы</strike>
+
* При записи нового документа (запись без закрытия) съезжает отображение формы
 
** Оказалось, что в этом случае вызов любого присваивания свойств визуальных элементов в серверной процедуре (например, ЭтаФорма.Заголовок = "Процесс "..) вызывает сбой отображения. Перенос в клиентскую процедуру решает проблему. Исключение составляет ПриСозданииНаСервере - там все проходит нормально.
 
** Оказалось, что в этом случае вызов любого присваивания свойств визуальных элементов в серверной процедуре (например, ЭтаФорма.Заголовок = "Процесс "..) вызывает сбой отображения. Перенос в клиентскую процедуру решает проблему. Исключение составляет ПриСозданииНаСервере - там все проходит нормально.

Текущая версия на 16:36, 7 июля 2016


Передача управления

  • Любые передачи управления клиент-сервер вызывают задержки! Надо минимизировать кросс-вызовы.
  • Инициализацию формы надо делать в обработчике события ПриСозданииНаСервере. Это делается быстро и форма не моргает при установке доступности реквзитов.
  • Обработчик ПриОткрытии лучше использовать по-минимуму
  • Немодальное открытие формы нового (и не только) документа своим обработчиком переводит новое окно на задний план. Как бороться непонятно.. Может быть там есть какие-то секретные флаги... Вызов Активизировать() не помогает.
    • Вроде бы такое поведение платформы начинается после некоторых ошибок (исключений). Достаточно перегрузить 1С и все исчезает.

Установка доступности

  • При записи нового документа (запись без закрытия) съезжает отображение формы
    • Оказалось, что в этом случае вызов любого присваивания свойств визуальных элементов в серверной процедуре (например, ЭтаФорма.Заголовок = "Процесс "..) вызывает сбой отображения. Перенос в клиентскую процедуру решает проблему. Исключение составляет ПриСозданииНаСервере - там все проходит нормально.