1с автомаксимальнаяширина что это
Перейти к содержимому

1с автомаксимальнаяширина что это

  • автор:

1с автомаксимальнаяширина что это

Доброго времени суток!
Обновлял доработанную бухгалтерию конфигурацией поставщика, через «Сравнить и объединить». Платформа 8.3.9.2170.
Возникли проблемы!
При объединении формы элемента справочника (например справочник подразделения организации) в режиме «взять из файла», форма обновилась и тут я обнаружил, что все поля на форме стали ограниченной длины. Интуитивно предполагаю — это костыль платформы, т.к. при проверке той же формы в чистой конфигурации поставщика — все поля растянуты, и при проверке той же формы в рабочей конфигурации до обновления формы также в порядке.

В общем ХЗ как исправлять, учитывая что теперь формы всей конфигурации кривые. Благо не успел посадить изменения в рабочую конфу, но есть предчувствие, что придётся опять лопатить сравнение и объединение, а разница в конфигурациях весомая(.

Кто-нибудь сталкивался с подобной ерундой? Может имеется совет, как можно обойти кривизну форм, при сравнении и объединении конфигураций. Может есть версия платформы, которая работает правильно, но слышал, что подобное поведение началось ещё с 8.3.7, однако раньше при подобных сравнениях не замечал, что что-то сыпалось. В первую очередь хотелось бы понять природу подобных багов, чтобы предотвратить в дальнейшем напрасную потерю времени.

P.S.: по умолчанию при добавлении формы и выводе на ней полей на той же версии платформы, они (поля) также ограничиваются по ширине, и приходится устанавливать параметр поля формы «АвтоМаксимальнаяШирина» в значение «Ложь».
НО! в чистой типовой конфигурации и рабочей конфигурации (до обновления) значение «АвтоМаксимальнаяШирина» установлено в «Истина» и тем не менее поля растянуты! А если я добавляю поля на форму, например в чистой типовой конфигурации, где форма отображается без кривизны, то поле растянуто. Получается что платформа при создании формы ломает стандартное поведение вида её элементов.

А кэш пробовал почистить?

(0) В свойствах полей:
Ширина 0
Галка Авто максимальная ширина
ЗЫ Я бы вторую назвал кривой, первая сделана правильно

(1) да, пробовал.
Разобрался вроде. Оказывается сравнивал со старой версией чистой конфигурации поставщика. В новой версии та же история с шириной (ограничена).

(2), ага, я по тексту писал про авто максимальную ширину.

Проанализировав всё тщательней понял, что вид ширины поля, в моём случае, зависел от режима совместимости.
В старой версии стоял 8.3.6, а в новой 8.3.8.
Так что кому будет интересно, начиная с режима совместимости 8.3.7 ширина поля в формах становится ограниченной и растянуть такое поле возможно параметром элемента «АвтоМаксимальнаяШирина» в значение ЛОЖЬ.

Не поленился и установил версию платформы 8.3.10.2252, и при установке конфигурации в режим совместимости 8.3.9 получил ту же историю с ограниченностью ширины полей, следовательно это нормальное поведение платформы!

ФормаЗадачиПриСозданииНаСервере (БСП)

  • Форма задачи при создании на сервере. Инициализирует общие параметры формы выполнения задачи.

    // Инициализирует общие параметры формы выполнения задачи. // // Параметры: // ФормаЗадачи - ФормаКлиентскогоПриложения - форма выполнения задачи. // ЗадачаОбъект - ЗадачаОбъект - объект задачи. // ЭлементГруппаСостояние - ГруппаФормы - группа с информации о состоянии задачи. // ЭлементДатаИсполнения - ПолеФормы - поле с датой исполнения задачи. // Процедура ФормаЗадачиПриСозданииНаСервере(ФормаЗадачи, ЗадачаОбъект, ЭлементГруппаСостояние, ЭлементДатаИсполнения) Экспорт ФормаЗадачи.ТолькоПросмотр = ЗадачаОбъект.Выполнена; Если ЗадачаОбъект.Выполнена Тогда Если ЭлементГруппаСостояние <> Неопределено Тогда ЭлементГруппаСостояние.Видимость = Истина; КонецЕсли; Родитель = ?(ЭлементГруппаСостояние <> Неопределено, ЭлементГруппаСостояние, ФормаЗадачи); Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачиКартинка"); Если Элемент = Неопределено Тогда Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачиКартинка", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Картинка; Элемент.Картинка = БиблиотекаКартинок.Информация; КонецЕсли; Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачи"); Если Элемент = Неопределено Тогда Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачи", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Надпись; Элемент.Высота = 0; // автовысота Элемент.АвтоМаксимальнаяШирина = Ложь; КонецЕсли; ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач"); ДатаИсполненияСтрокой = ?(ИспользоватьДатуИВремяВСрокахЗадач, Формат(ЗадачаОбъект.ДатаИсполнения, "ДЛФ=DT"), Формат(ЗадачаОбъект.ДатаИсполнения, "ДЛФ=D")); Элемент.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru ='Задача выполнена %1 пользователем %2.'"), ДатаИсполненияСтрокой, ИсполнительСтрокой(ЗадачаОбъект.Исполнитель, ЗадачаОбъект.РольИсполнителя, ЗадачаОбъект.ОсновнойОбъектАдресации, ЗадачаОбъект.ДополнительныйОбъектАдресации)); КонецЕсли; Если БизнесПроцессыИЗадачиВызовСервера.ЭтоВедущаяЗадача(ЗадачаОбъект.Ссылка) Тогда Если ЭлементГруппаСостояние <> Неопределено Тогда ЭлементГруппаСостояние.Видимость = Истина; КонецЕсли; Родитель = ?(ЭлементГруппаСостояние <> Неопределено, ЭлементГруппаСостояние, ФормаЗадачи); Элемент = ФормаЗадачи.Элементы.Найти("__ВедущаяЗадачаКартинка"); Если Элемент = Неопределено Тогда Элемент = ФормаЗадачи.Элементы.Добавить("__ВедущаяЗадачаКартинка", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Картинка; Элемент.Картинка = БиблиотекаКартинок.Информация; КонецЕсли; Элемент = ФормаЗадачи.Элементы.Найти("__ВедущаяЗадача"); Если Элемент = Неопределено Тогда Элемент = ФормаЗадачи.Элементы.Добавить("__ВедущаяЗадача", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Надпись; Элемент.Заголовок = НСтр("ru ='Это ведущая задача для вложенных бизнес-процессов. Она будет выполнена автоматически при их завершении.'"); Элемент.Высота = 0; // автовысота Элемент.АвтоМаксимальнаяШирина = Ложь; КонецЕсли; КонецЕсли; КонецПроцедуры /////////////////////////////////////////////////////////////////////////////////////////////////////// // Copyright (c) 2019, ООО 1С-Софт // Все права защищены. Эта программа и сопроводительные материалы предоставляются // в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0) // Текст лицензии доступен по ссылке: // https://creativecommons.org/licenses/by/4.0/legalcode ///////////////////////////////////////////////////////////////////////////////////////////////////////
    // Инициализирует общие параметры формы выполнения задачи. // // Параметры: // ФормаЗадачи - ФормаКлиентскогоПриложения - форма выполнения задачи. // ЗадачаОбъект - ЗадачаОбъект - объект задачи. // ЭлементГруппаСостояние - ГруппаФормы - группа с информации о состоянии задачи. // ЭлементДатаИсполнения - ПолеФормы - поле с датой исполнения задачи. // Процедура ФормаЗадачиПриСозданииНаСервере(ФормаЗадачи, ЗадачаОбъект, ЭлементГруппаСостояние, ЭлементДатаИсполнения) Экспорт ФормаЗадачи.ТолькоПросмотр = ЗадачаОбъект.Выполнена; Если ЗадачаОбъект.Выполнена Тогда Если ЭлементГруппаСостояние <> Неопределено Тогда ЭлементГруппаСостояние.Видимость = Истина; КонецЕсли; Родитель = ?(ЭлементГруппаСостояние <> Неопределено, ЭлементГруппаСостояние, ФормаЗадачи); Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачиКартинка"); Если Элемент = Неопределено Тогда Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачиКартинка", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Картинка; Элемент.Картинка = БиблиотекаКартинок.Информация; КонецЕсли; Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачи"); Если Элемент = Неопределено Тогда Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачи", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Надпись; Элемент.Высота = 0; // автовысота Элемент.АвтоМаксимальнаяШирина = Ложь; КонецЕсли; ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач"); ДатаИсполненияСтрокой = ?(ИспользоватьДатуИВремяВСрокахЗадач, Формат(ЗадачаОбъект.ДатаИсполнения, "ДЛФ=DT"), Формат(ЗадачаОбъект.ДатаИсполнения, "ДЛФ=D")); Элемент.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru ='Задача выполнена %1 пользователем %2.'"), ДатаИсполненияСтрокой, ИсполнительСтрокой(ЗадачаОбъект.Исполнитель, ЗадачаОбъект.РольИсполнителя, ЗадачаОбъект.ОсновнойОбъектАдресации, ЗадачаОбъект.ДополнительныйОбъектАдресации)); КонецЕсли; Если БизнесПроцессыИЗадачиВызовСервера.ЭтоВедущаяЗадача(ЗадачаОбъект.Ссылка) Тогда Если ЭлементГруппаСостояние <> Неопределено Тогда ЭлементГруппаСостояние.Видимость = Истина; КонецЕсли; Родитель = ?(ЭлементГруппаСостояние <> Неопределено, ЭлементГруппаСостояние, ФормаЗадачи); Элемент = ФормаЗадачи.Элементы.Найти("__ВедущаяЗадачаКартинка"); Если Элемент = Неопределено Тогда Элемент = ФормаЗадачи.Элементы.Добавить("__ВедущаяЗадачаКартинка", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Картинка; Элемент.Картинка = БиблиотекаКартинок.Информация; КонецЕсли; Элемент = ФормаЗадачи.Элементы.Найти("__ВедущаяЗадача"); Если Элемент = Неопределено Тогда Элемент = ФормаЗадачи.Элементы.Добавить("__ВедущаяЗадача", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Надпись; Элемент.Заголовок = НСтр("ru ='Это ведущая задача для вложенных бизнес-процессов. Она будет выполнена автоматически при их завершении.'"); Элемент.Высота = 0; // автовысота Элемент.АвтоМаксимальнаяШирина = Ложь; КонецЕсли; КонецЕсли; КонецПроцедуры /////////////////////////////////////////////////////////////////////////////////////////////////////// // Copyright (c) 2019, ООО 1С-Софт // Все права защищены. Эта программа и сопроводительные материалы предоставляются // в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0) // Текст лицензии доступен по ссылке: // https://creativecommons.org/licenses/by/4.0/legalcode ///////////////////////////////////////////////////////////////////////////////////////////////////////

    [Из песочницы] Amazon S3 + 1С. Часть 1. Интерфейс 20.03.2018 17:33

    image

    Всем привет, с вами Низамов Илья и сегодня я начинаю цикл статей по написанию обработки взаимодействия с облаком Amazon s3 из 1С.

    Обработка Amazon s3 позволяет получат список файлов по фильтру, скачать необходимые файлы с Amazon s3 используя amazon s3 api, отправлять файлы напрямую из 1С используя multipart/form-data.

    Основная сложность работы с облаком Amazon s3 связана с тем, что 1С в http запросах умеет использовать только basic аутентификацию, в Amazon же используется AWS Signature
    Version 4. Вот такую аутентификацию я и буду создавать используя средства 1С.

    В статье очень подробно расписаны способы аутентификации. 1С умеет работать только с basic аутентификацией, что накладывает определенные ограничения на использование ее с современными web приложениями. Как вы можете видеть в статье, безопасных способов аутентификации гораздо больше.

    Теперь откроем документацию по Amazon S3 REST API. Для работы с файлами в облаке нам необходимо будет использовать запросы с аутентификацией AWS Signature Version 4. Процесс получения сигнатуры для отправки в запросе описан на схеме.

    StringToSign зависит от типа запроса, как эта строка формируется я покажу в следующих статьях.

    Чтобы получить SigningKey нам необходимо последовательно выполнить 4 хеш функции HMAC-SHA256 передавая в качестве ключа значение предыдущей функции.

    Итоговую сигнатуру вычисляем с помощью хеш функции передавай в качестве ключа SigningKey и StringToSign в качестве параметра вычисления хеша.

    Вконце сигнатуру приводим к шеснадцатиричной строке.

    В этой части я буду разрабатывать интерфейсную часть обработки.

    Добавим новую обработку в дереве конфигурации, назовем ее AmazonS3. Создадим новую управляемую форму и на ней разместим группу — страницы для размещения трех вкладок. Потом добавим три группы с видом — страница. В корень формы добавим стандартную группу без отображения, имя — ГруппаЛоги.

    image

    Добавим необходимые реквизиты, в основном все строкового типа с длинной 0 и одну таблицу значений.

    image

    Разместим часть реквизитов на странице Настройки.

    0-qj2ysinthhrqkp9smvbl2q-9u.png

    Вниз формы перенесем реквизит Logs, отключим вывод заголовка и выберем много строчный режим.

    adqofh0cghgz40hfz-gvvkpyox8.png

    У элемента СтраницаНастройки поменяем заголовок на «Настройки», тоже самое сделаем с элементами СтраницаЗагрузка и СтраницаВыгрузка, установим заголовки «Загрузка» и «Выгрузка».

    Добавим две команды «ВыгрузитьФайлы» и «ЗагрузитьФайлыXML». На страницу «Выгрузка» перенесем таблицу значений «СписокВыгрузки», в ее командную панель перенесем команду «ВыгрузитьФайлы».

    riohjevdebtdr7dvizw7xv8wuhi.png

    На странице «Загрука» разместим реквизит «ПапкаНаКомпьютере» и команду «ЗагрузитьФайлыXML».

    wvw5kssvtujxc1adnzxpbq9qfim.png

    У обоих команд изменим цвет фона и шрифт.

    8m0ickvqrta4hi7njoe8zx0627u.png

    Откроем модуль формы и создадим область «Интерфейс».

    У элемента «ПапкаНаКомпьютере» изменим свойство КнопкаВыбора — Да и создадим, на клиенте, обработчик события «НачалоВыбора». В обработчике разместим код под вызову диалога выбора файла, и для отказа от модальности, результат выбора будем обрабатывать через Оповещение. В обработке оповещения, если папка выбрана, полученный результат поместим в реквизит «ПапкаНаКомпьютере».

    yv-hsepdzsat-smv3vyyfsmxkdq.png

    Для того чтобы значения в реквизитах автоматически сохранялись нам необходимо изменить свойство формы «АвтоматическоеСохранение» в Использовать, и указать какие реквизиты будут автоматически сохранять свои значения при закрытии формы и восстанавливать их при открытии.

    cnvzs_tqnonpwjm3ffwra5zu2ly.png

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

    lr4gicyghxdyv0zsot1unm_362s.png

    Если сейчас запустить обработку в пользовательском режиме, то мы увидим, что элемент Logs не растягивается до конца формы. Чтобы это исправить надо отключить свойство «АвтоМаксимальнаяШирина».

    Вернемся в модуль формы и создадим область «ОбработчикиСобытийФормы». В ней разместим стандартный обработчик формы «ПриСозданииНаСервере». Здесь я размещу на время отладки код по заполнению таблицы значений тестовыми данными.

    Вот так в итоге выглядит наша обработка.

    abiee75tpgpkcgfgkdf_8rvtgug.png

    На этом все, спасибо за внимание. В следующих частях будет интереснее.

    Рекомендации по адаптации интерфейсов «1С:Предприятия» версии 8.3.7

    В платформе «1С:Предприятие», начиная с версии 8.3.7, реализован новый механизм расстановки элементов управляемой формы. В результате реализации улучшено размещение элементов на форме, реализованы новые возможности размещения элементов на форме, изменение некоторых свойств элементов формы на клиенте больше не требует обращения к серверу (видимость, изменение состояния группы — свернута/не свернута, отображение или скрытие дополнения элемента формы состояние просмотра), изменены правила автоматического формирования разделителей на форме и т.д. Подробное описание работы механизма приведено в документации. В редакторе управляемой формы реализована возможность быстрого просмотра разрабатываемой формы в нужном разрешении и ориентации экрана.

    Для системного перечисления «ГруппировкаПодчиненныхЭлементовФормы» реализовано значение «ГоризонтальнаяЕслиВозможно».

    У расширений поля управляемой формы для поля надписи, поля ввода, поля картинки, поля табличного документа, поля текстового документа, поля форматированного документа, поля календаря, поля индикатора, поля полосы регулирования, поля диаграммы, поля диаграммы Ганта, поля дендрограммы, поля географической схемы, поля HTML-документа, поля графической схемы, поля периода и поля планировщика, элемента управляемой формы типа таблица, декорация и кнопка реализованы свойства:
    – АвтоМаксимальнаяШирина;
    – МаксимальнаяШирина;
    – АвтоМаксимальнаяВысота;
    – МаксимальнаяВысота.

    Для элементов управляемой формы типа «Форма», «Группа» и «Страница» реализованы свойства:
    – ГоризонтальныйИнтервал;
    – ВертикальныйИнтервал;
    – ВыравниваниеЭлементовИЗаголовков;
    – ГоризонтальноеПоложениеПодчиненных;
    – ВертикальноеПоложениеПодчиненных.

    Для полей управляемой формы типа Поле, Таблица, Декорация, Группа, Кнопка и Дополнение реализованы свойства:
    – ГоризонтальноеПоложениеВГруппе;
    – ВертикальноеПоложениеВГруппе.

    Для расширения управляемой формы для дополнения элемента формы «Отображение строки поиска», «Отображение управления поиском» и «Отображение состояния просмотра» реализованы свойства:
    – АвтоМаксимальнаяШирина;
    – МаксимальнаяШирина.

    Для элемента управляемой формы типа группа реализовано свойство «СквозноеВыравнивание».
    Для системного перечисления ВертикальнаяПрокруткаФормы реализовано значение «ИспользоватьБезРастягивания».
    Для расширения управляемой формы для группы реализовано свойство «Объединенная».
    Для расширения управляемой формы для страницы реализовано свойство «ВертикальнаяПрокруткаПриСжатии».

    В режиме совместимости с «1С:Предприятие 8.3.6» поведение не изменилось.

    Свойства «РастягиватьПоГоризонтали» и «РастягиватьПоВертикали» реализованы для следующих объектов: расширения управляемой формы для полей графической схемы и HTML-документа, элемент управляемой формы типа кнопка. Для расширения управляемой формы для дополнения элемента формы «Отображение управления поиском» реализовано свойство «РастягиватьПоГоризонтали».

    Общие рекомендации по переводу на новый интерфейс

    • Удалить все «лишние» параметры выравнивания:
      • Декорации для растягивания,
      • Фиксированную ширину (высоту),
      • Другие элементы для подгонки.

      • Проверить, как выглядит форма без «лишних» параметров.
        • В ходе проверки необходимо использовать два разрешения экрана: 1024×768 px и бОльшее (например, 1680х1050 px).

        • Если требуется адаптация формы, рекомендуется выполнить ее, по возможности, используя настроки по умолчанию «1С:Предприятия» версии 8.3.7.

        Формы администрирования

        ПРОБЛЕМА.
        Разъезжаются столбцы в группе. Результатом становится нарушение выравнивания и появление горизонтального прокручивания при разрешении экрана 1024×768:

        РЕШЕНИЕ.
        Для подсказок во всех группах необходимо установить значение «АвтоМаксимальнаяШирина». Рекомендуется также установить значение Высота = «0» в тех случаях, когда высота равна другому значению. (Иногда высота по количеству строк использовалась для корректного отображения подсказок в Такси и Управляемом приложении. Сейчас в этом нет необходимости):

        ПРОБЛЕМА.
        Даже после установки корректного значения «АвтоМаксимальнаяШирина», колонки в объединенных группах не выровнены между собой:

        РЕШЕНИЕ.
        Для подсказок во всех группах необходимо установить значение «РастягиватьПоГоризонтали» = «Да»:

        Формы документов

        Часть проблем и решений по корректному переходу на новую версию интерфейсов будет показана на примере документа «Реализация товаров и услуг». Формы этого документа содержат большинство несоответствий, выявленных при оптимизации интерфейсов.

        ПРОБЛЕМА.
        Разъезжаются реквизиты подвала — итоговая строка отступает от правого края:

        РЕШЕНИЕ.
        Для корректного расположения группы «Итого» необходимо отключить свойство «АвтоМаксимальнаяШирина»:

        ПРОБЛЕМА.
        1. Большинство реквизитов во вкладке «Дополнительно» после применения обработки выровнены по опорной линии. Необходимо выровнять два последних поля («Вариант оформления продажи» и «Экспедитор»).
        2. Если нет строгой необходимости, предлагается устанавливать ширину полей без использования цифровых значений.

        РЕШЕНИЕ.
        – Ширина: «0»,
        – «АвтоМаксимальнаяШирина»: Установлен,
        – «РастягиватьПоГоризонтали»: «Авто».

        При таких настройках в «Такси» ширина полей по умолчанию равна «40» единицам. В зависимости от разрешения экрана, взаимодействие полей в колонках горизонтальной группы будет происходить автоматически, но не превышать ширину поля равную «40».

        Общие проблемы и решения

        Комплексное решение

        При переводе форм документов на «1С:Предприятие» версии 8.3.7 и выше, часто встречаются ситуации, не описывающие конкретного решения проблем. Данные проблемы могут возникать при взаимодействии реквизитов в зависимости от их расположения. Для гарантированного положительного результата при переводе форм рекомендуется воспользоваться комплексным решением на примере формы документа «Реализация товаров и услуг».

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

        Все поля вкладки «Дополнительно» имеют настройки, рекомендованные платформой версии 8.3.7 по умолчанию.
        Во вкладке же «Основное» настройки полей имеют характеристики, которые не изменились после применения обработки:
        – Ширина = «28»,
        – «РастягиватьПоВертикали»: «Нет».
        В конфигураторе при этом они отображаются некорректно.

        В результате, при открытии формы в пользовательском режиме поля в обеих вкладках выровнены корректно. Но при переходе из вкладки «Основное» в «Дополнительно» и обратно поля в «Основном» съезжают относительно своих заголовков:

        Назначение заголовкам свойства выравнивания «Слева» не дает корректного результата, поскольку при аналогичных действиях перехода между вкладками, поля вкладки «Основное» так же съезжают:

        РЕШЕНИЕ 1.
        Рекомендуется полям вкладки установить настройки, рекомендованные «1С:Предприятие 8.3.7» по умолчанию.
        При этом, однако, в Конфигураторе (а в определенных случаях и в пользовательском режиме) между колонками реквизитов горизонтальной группы будут появляться вертикальные разделители.

        Для их устранения необходимо всем подгруппам горизонтальной группы назначить свойство:
        «Объединенная»: снято

        РЕКОМЕНДАЦИЯ.
        Вне зависимости от свойства полей «ПоложениеЗаголовка» (Авто, Лево), рекомендуется при разработке формы использовать разные разрешения экрана в Конфигураторе:

        РЕШЕНИЕ 2.
        Если по каким-то причинам нет возможности установки реквизитам свойств, рекомендованных по умолчанию, предлагается полям в обеих вкладках назначать свойства ширины в числовых значениях.
        Однако, использование настройки стандартной ширины в интерфейсе «Такси» часто стало работать некорректно и плохо влиять на выравнивание полей.

        Для устранения этого недостатка рекомендуется использовать новые параметры настройки ширины:

        РЕКОМЕНДАЦИЯ.
        При использовании параметров выравнивания полей, рекомендованных «1С:Предприятием» версии 8.3.7 по умолчанию, примененных к полю Комментарий, данное поле будет иметь недостаточную ширину:

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

        ПРОБЛЕМА.
        После снятия режима совместимости, на некоторых сложных формах может возникать свободное пространство между страницами и отсутствовать разделитель между ними:

        РЕШЕНИЕ.
        Необходимо сбросить фиксированную высоту. В соответствии с рекомендациями «1С:Предприятия» версии 8.3.7, высота по умолчанию должна быть равна «0»:

        ПРОБЛЕМА.
        После снятия режима совместимости, пиктограммы, относящиеся к полям, по умолчанию стали отображаться по верхнему краю, несмотря на настройку «Авто»:

        РЕШЕНИЕ.
        Рекомендуется группе, в которой находятся эти пиктограммы, устанавливать свойство «ВертикальноеПоложениеВГруппе» в значение «Центр»:

        ПРОБЛЕМА.
        (Рассмотрено на примере формы «План продаж по номенклатуре».) Особенно хорошо проблема видна при использовании реквизитов шапки, разделенных на левый и правый блоки. При детальном обзоре видно несоответствие полей левого и правого блоков:

        РЕШЕНИЕ.
        В этих и похожих случаях необходимо снять с групп флажок «Объединенная». Вложенные в таких группах подгруппы могут растягивать разъединенную группу по вертикали. Поэтому необходимо снять флажок «Объединенная» и с вложенных групп. (Это не касается вложенных групп горизонтальных реквизитов):

        ПРОБЛЕМА.
        В «1С:Предприятии» версии 8.3.6 для выравнивания часто использовались декорации-«пустышки». Например, для того чтобы флажок «Иностранный контрагент» находился под кнопкой, между полем «КПП» и флажком «Иностранный контрагент» вставлена декорация для выравнивания флажка под кнопку:

        РЕШЕНИЕ.
        В «1С:Предприятии» версии 8.3.7 эта же задача решается без декорации, при помощи снятия флажка «Объединенная» у групп «ГруппаИНН» и «ГруппаКПП» и добавления внешней группы «ГруппаИННКПП»:

        РЕЗУЛЬТАТ
        Прежний вид без использования декораций:

        ПРОБЛЕМА.
        Как и ранее, горизонтальный отступ для подчиненных флажков необходимо делать при помощи декорации. Однако теперь (в интерфейсе «Такси») данная декорация имеет малую ширину:

        РЕШЕНИЕ.
        Рекомендуется назначать декорации свойство «Ширина» = «2»:

        РЕКОМЕНДАЦИЯ ПО ИСПОЛЬЗОВАНИЮ ДЕКОРАЦИЙ.
        Для выравнивания реквизитов рекомендуется не использовать декорации, а использовать новые возможности «1С:Предприятие» версии 8.3.7: «АвтоМаксимальнаяШирина» (для реквизитов) и свойства «Объединенная» и «Сквозное выравнивание» (для групп реквизитов).
        Ранее, для того чтобы часть реквизитов (например, в командной панели) прижимались влево, а часть вправо использовалась декорация со свойством «РастягиватьПоГоризонтали» = «Да».
        «1С:Предприятие» версии 8.3.7 и выше корректно располагает такие реквизиты.

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

        ПРОБЛЕМА.
        В «1С:Предприятие» версии 8.3.6 оформление заголовков в виде декораций применялось для корректного выравнивания полей в тех случаях, когда такого выравнивания нельзя было добиться стандартными средствами «1С:Предприятия» версии 8.3.7. После снятия режима совместимости, заголовки реквизитов, выполненные в виде декораций, перестали выравниваться относительно друг друга:

        Необходимости в заголовках реквизитов, выполненные в виде декораций, больше нет. Новые средства «1С:Предприятия» версии 8.3.7 позволяют выравнивать реквизиты и группы реквизитов автоматически.

        РЕШЕНИЕ.
        Для устранения проблем выравнивания заголовков, необходимо удалить заголовки в виде декораций и назначить всем реквизитам стандартные заголовки.

        ПРОБЛЕМА.
        В «1С:Предприятии» версии 8.3.6 группа могла быть или горизонтальной или вертикальной.
        В «1С:Предприятии» версии 8.3.7 добавлен новый вариант группировки элементов в группе «Горизонтальная, если возможно». Все новые группы по умолчанию создаются с такой группировкой.

        Данная настройка влияет на разное отображение форм при различных разрешениях:

        РЕШЕНИЕ.
        Если нет необходимости разрабатывать формы под несколько разрешений и для сохранения однозначности во внешнем виде рекомендуется не использовать свойство «Горизонтальная, если возможно» для групп.

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

        ПРОБЛЕМА.
        В «1С:Предприятии» версии 8.3.6 для изменения горизонтального положения полей ввода рядом с полями переключателя использовались декорации. Высота поля ввода совпадала с высотой элемента переключателя:

        В «1С:Предприятие 8.3.7» высота полей ввода и полей переключателя стала различной, а использование декораций для изменения горизонтального положения стало неэффективным.

        РЕШЕНИЕ.
        Для корректного выравнивания необходимо разделить поле переключателя на отдельные элементы управления и объединить их в горизонтальные группы с полями ввода:

        ПРОБЛЕМА.
        Существует масса форм, в которых поля взаимодействуют рядом с флажками и/или переключателями. Однако, алгоритм выравнивания всех этих элементов (в версии 8.3.7) не позволяет ровно расположить их напротив друг друга. В примере ниже, опорной точкой для оптимального расположения заголовков выбрана высота расположения заголовка полей:

        РЕШЕНИЕ.
        В этих случаях необходимо снять с групп реквизитов флажок «Объединенная»:

        Взаимодействие полей ввода и ссылок

        ПРОБЛЕМА.
        Аналогичная проблема выравнивания может наблюдаться со ссылками на единицы измерений, которые съезжают относительно полей ввода числовых значений:

        РЕШЕНИЕ.
        Предлагается создать отдельные группы с горизонтальной группировкой для каждой характеристики размера ячейки:

        Пошаговые помощники

        ПРОБЛЕМА.
        После снятия режима совместимости могут возникать проблемы с нарушением компоновки форм пошаговых помощников.
        Причина некорректного отображения формы — новые свойства «АвтомаксимальнаяШирина» и «АвтомаксимальнаяВысота». Из-за этих свойств, форма, которая была вытянута в ширину стала более узкой и нарушилась компоновка формы.

        РЕШЕНИЕ.
        Для восстановления прежнего вида необходимо отключить свойство «АвтоМаксимальнаяШирина» для надписей.

        РЕКОМЕНДАЦИЯ.
        Компоновка форм пошаговых помощников не регламентируется юзабилити-стандартами.
        Рекомендуется менять внешний вид помощников, снимая для надписей свойство по умолчанию «АвтоМаксимальнаяШирина» только в тех случаях, когда форма явно отображается некорректно.

        Вкладка «Комментарий»

        ПРОБЛЕМА.
        После снятия режима совместимости, ширина поля комментария в одноименной вкладке приобретает стандартную ширину «40». На это влияет установленное по умолчанию свойство «АвтоМаксимальнаяШирина»:

        РЕШЕНИЕ.
        Для восстановления прежнего вида необходимо отключить свойство «АвтоМаксимальнаяШирина» для поля комментария:

        Внешние изменения «1С:Предприятие» версии 8.3.7

        Ниже описаны визуальные отличия форм после снятия режима совместимости.

        Формы контактной информации

        Существенно изменился внешний вид форм контактной информации. Удалось избавиться от большинства лишних параметров выравнивания, уменьшилось количество генерируемых элементов, по-умолчанию заголовки полей ввода теперь размещаются слева (не связано с «1С:Предприятием» версии 8.3.7).
        Однако, новой стандартной ширины поля адреса оказалось недостаточно. Используется бОльшая ширина (50–60).

        Панели администрирования

        Особенностью панелей администрирования является расположение элементов в две одинаковых колонки. В «1С:Предприятии» версии 8.3.6 для выравнивания использовалась фиксированная ширина.
        Из-за отключения свойства «Объединенная» уменьшились отступы между группами. Форма стала выглядеть более компактно.

        Флажки

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

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

    Ваш адрес email не будет опубликован. Обязательные поля помечены *