Формы. Трудности программной работы

Публикация № 1128802

Разработка - Работа с интерфейсом

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

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

Перед предисловием

Привет из прошлого! Статья перед Вами была создана в далеком 2013 году, уже целых 6 лет прошло. Несмотря на это, тема программного изменения форм остается актуальной. Кто-то использует эти возможности для уменьшения трудозатрат на сопровождение типовых конфигураций, ведь сравнивать код проще, чем элементы формы (особенно обычные формы!). Другие просто создают универсальные механизмы для построения интерфейса. В любом случае, программное изменение форм - гибкий, эффективный способ разработки со своими достоинствами и недостатками.

 
 Это информация из старого блога DevelPlatform.ru

И раз тема до сих пор актуальна, то поднимем ее еще раз. Немного добавив новой информации.

Предисловие

При разработке интерфейса решений на платформе 1С:Предприятие 8.x часто возникает необходимость изменения форм программным образом. В типовых конфигурациях программная модификация форм осуществляется, например, для механизма контактной информации, который в открываемой форме создает закладку "Контактная информация" и добавляет на нее соответствующие реквизиты, связанные с открываемым объектом.

Еще одной из самых распространенных задач, где используется программное изменение форм - модификация типовых решений. Поскольку платформа не может сравнивать две формы на различие состава элементов и значений их свойств (больше относится к обычным формам, управляемые имеют больше возможностей для сравнения / объединения), то для упрощения последующего процесса обновления конфигурации рекомендуется модифицировать форму именно программным образом. Ведь модули форм сравнить возможно, в отличии от свойств их элементов.

Сегодня в статье будет идти речь о трудностях, с которыми можно столкнуться при программной модификации как управляемых, так и обычных форм. Также будет сделано небольшое сравнение среды разработки "Конфигуратор" с развитой, на мой взгляд", IDE "Visual Studio 2010" в части разработки интерфейсов.

Скучное дело

Именно так! Программное изменение формы это монотонное, скучное дело. Описывать в коде создаваемые элементы, их свойства и поведение. Практически всегда последовательность действий разработчика одинаковая: создал элемент, назначил свойства, по необходимости привязки (для обычных форм) и свойства отображения. После запустил режим 1С:Предприятие чтобы посмотреть на результат. Если в интерфейсе что-то не так, то возвращаемся обратно к коду и так далее.

Для примера сделаем в тестовой конфигурации документ "ПриходнаяНакладная", для которого добавим табличную часть "Товары" с реквизитами "Товар" и "Количество" с типами "СправочникСсылка.Товары" и "Число" соответственно.

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

В данный момент формы созданы с помощью конструктора в конфигураторе. Чтобы показать насколько усложняется разработка при программном изменении формы, напишем необходимый код. Будем обрабатывать создание следующих элементов:

  1. Поле "Номер".
  2. Поле "Дата".
  3. Табличную часть "Товары".
  4. Командную панель табличной части "Товары".

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

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

Так мы получили программный код, который создает элементы формы, оговоренные ранее. Весь код занял 31 строчку, причем созданный интерфейс очень простой.

Ниже представлен алгоритм для программного создания элементов на управляемой форме с привязкой к колонке "Количество" процедуры обработчика события "ПриИзменении".

 
 Пример создания элементов для обычной формы

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

Для демонстрации того, что программная работа с обычной формой сложнее, приведем алгоритм создания элементов формы, который выполнит действия аналогичные коду, написанному выше для управляемого приложения (см. следующий листинг).

 
 Пример создания элементов для управляемой формы

Факт на лицо. Объем программного кода увеличился практически в пять раз! Время на его написание нужно существенно больше, чем в первом примере.

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

Сложности дальнейшей модификации

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

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

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

Ну и что, что платформа не умеет сравнивать формы поэлементно с учетом их свойств при сравнении конфигураций? Не каждый же день обновляются формы, если что - вручную все поменяем...

Немного критики

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

Предлагаю посмотреть на работу с интерфейсами в "Visual Studio 2010". Создадим простое приложение WindowsForm, и добавим на форму кнопку "button1". Заголовок изменен на "Devel 1C" (см. следующий скриншот).

При этом Visual Studio автоматически (!!!) создает программный код для элементов на форме. То есть если мы пользуемся конструктором форм, IDE все равно создает программный код для каждого элемента формы, заполняет его свойства и прочее.

Код хранится в файле "<ИмяФормы>.Designer.cs", связанный с файлом самой формы. На следующем скриншоте представил часть модуля файла "Designer.cs", в которой среда разработки создает код создания элементов формы.

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

Помощник 

Сказки сказками, но маловероятно, что фирма "1С" имеет приоритетную задачу по улучшению работы среды разработки платформы в части пользовательского интерфейса. Даже не смотря на появление EDT особого прогресса в этой части пока так и нет.

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

В древней публикации "Помощник программного изменения формы" была попытка создать инструмент, который бы помогал формировать код для создания / изменения форм. Узнать подробную информацию и загрузить его Вы можете по ссылке. Если кратко, то обработка позволяет автоматически формировать программный код для создания элементов формы (обычной или управляемой) и устанавливать ее свойства.

Инструмент не дошел до финальной версии и до сих пор находится в глубокой альфе в виде эксперимента. Сил и времени на него так и не нашлось. Да и со временем изменил свое отношение к программной работе с формами и не пытаюсь применять его везде. Только там, где без этого никуда.

Вместо заключения

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

Платформа 1С:Предприятие 8.x не имеет собственных инструментов в помощь разработчику для программной работы с формой и ее элементами. Все, что есть - это синтаксис помощник с описанием доступных свойств элементов и описание методов программной работы. Весь рутинный труд по описанию каждого свойства элементов в программном коде ложится на плечи программиста.

Остается надеяться, что среда разработки платформы 1С:Предприятие 8.x будет развиваться и вбирать в себя все лучшее современных IDE. А пока на помощь Вам могут придти инструменты из списка ниже.

 
 А что можете сказать Вы?

Другие ссылки

Интересные инструменты для работы с формами:

71

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. ids79 4115 06.10.19 15:40 Сейчас в теме
Интересный материал, спасибо.
Насчет приоритетов фирмы 1С, у меня часто складывается такое впечатление, что они стремятся не то что упростить, а усложнить разработку и доработку своих продуктов.
Вот взять конфигурации для сравнения: УТ 10.3 и УТ 11, ЗУП 2.5 и ЗУП 3.1.
Да, возможностей больше, но сложность доработки возросла в кубе как минимум. Объем кода увеличился чуть ли не в 10 раз.
Не знаю уж с чем это связано, но факты на лицо.
А взять какую-нибудь конфигурацию 7.7, там вообще не так много было документов, в модуле которых было больше 1000 строк кода.
А сейчас что...
davdykin; MCV; babys; Yakud3a; zqzq; morin; rpgshnik; YPermitin; +8 Ответить
3. acanta 67 06.10.19 16:03 Сейчас в теме
(1) в 7ке был меньше словарный запас. При желании весь синтакс помощник 7ки можно было перевести. Проблема в локализации метаданных и кода для поддержки и разработки местными специалистами.
YPermitin; +1 Ответить
7. YPermitin 5184 06.10.19 18:23 Сейчас в теме
(1) спасибо на добром слове!
2. MVK80 06.10.19 15:52 Сейчас в теме
(0), Юрий, этот инструмент должен быть однозначно, на мой взгляд, в интересных инструментах в статье: Генерация кода управляемой формы (декомпиляция элементов)
zqzq; fancy; rpgshnik; YPermitin; acanta; +5 Ответить
5. YPermitin 5184 06.10.19 18:22 Сейчас в теме
(2) Точно!

Я совсем забыл про эту публикацию. "Лайк, репост" и добавил ссылку на нее в свою статью.

Благодарю!
4. ids79 4115 06.10.19 17:55 Сейчас в теме
Еще вот хорошая статья на тему программного создания элементов форм.
fancy; rpgshnik; YPermitin; +3 Ответить
6. YPermitin 5184 06.10.19 18:22 Сейчас в теме
(4) Да, тоже читал. Ссылку также добавил.
Лайк и репост уже давно там оставил :)
8. ZloyProger 6 07.10.19 09:22 Сейчас в теме
Очередная благодарность автору) Когда только начал работать с управляемыми формами наивно полагал - что вот оно счастье, но оказалось что форма управляется кем угодно, но не программистом :-) (может и слишком громко сказано и возможно я не всё ещё научился готовить, бесспорно за один уход от привязок (брр.. вспомню вздрогну этот ад обычных форм и малопонятные, труднодиагностириуемые глюки с ними) можно неистово плюсовать, но маловато! маловато! © Падал прошлогодний снег), но вот здеся описал прямо в статье суть проблемы с управлением шириной колонок при программном создании, красивого и универсального решения которой пока так и не нашел( Буду признателен за идеи)
YPermitin; +1 Ответить
9. YPermitin 5184 07.10.19 10:06 Сейчас в теме
(8) спасибо)

Но то что мало это да. Тема очень большая.
10. Rustig 1197 07.10.19 10:51 Сейчас в теме
(0) не на том форуме поднимаете проблемы :( ... сейчас 2019 год - а проблемы 2013 года еще не решены.... не в то ведомство пишите, значит.... одна статья - слишком маленькая никому не известная песочница.... вот если бы каждый лайк за статью уходил сразу письмом в отдел развития платформы 1С.... смогёте такое автоматизировать? :)
YPermitin; +1 Ответить
11. YPermitin 5184 07.10.19 10:52 Сейчас в теме
(10) проще из разработки на платформе 1С уйти, чем эту проблему решить :)
12. Rustig 1197 07.10.19 10:54 Сейчас в теме
(11) если решать одному, то "да", проще уйти... а если сообща?!....
YPermitin; +1 Ответить
13. YPermitin 5184 07.10.19 10:54 Сейчас в теме
14. Rustig 1197 07.10.19 11:03 Сейчас в теме
(13) есть
идея ;№1. создайте тему (ветку) на форуме разработчиков 1с - можете несколько тем - у вас вроде несколько тем актуальных...
ссылку на тему оставьте здесь - с подписью "поддержите решение вопроса".
я бы перешел и уже там поставил лайк...
при этом описывая проблему на форуме разработчиков , можете оставить ссылку на статью...

идея №2. Разработать внешнюю обработку для отправки писем-вопросов в техподдержку 1С.
Создать пару полей в ней: ссылка на статью ИС + идентиф. собственные данные. Письмо генерируется шаблонно.
YPermitin; +1 Ответить
15. YPermitin 5184 07.10.19 11:52 Сейчас в теме
(14) идеи хорошие. Надо подумать.

Но про ответы со стороны фирмы "1С" я отношусь с пессимизмом. Причина в бюрократиии, маленького веса таких сообщений в общем потоке. Все таки в приоритете, думаю, вопросы от больших клиентов и стратегии развития платформы.
16. Rustig 1197 07.10.19 12:40 Сейчас в теме
(15) по сути вы только что снизили приоритет своих вопросов...
больше уверенности, коллеги 1с-ники!
к примеру, сравнение объектов - элементов и свойств - было бы актуально для любых платформ - на обычных и управляемых форм...
...мы сами не знаем куда нас приведут наши идеи... (я о черных лебедях)
17. YPermitin 5184 07.10.19 12:43 Сейчас в теме
(16) мои слова - это результат опыта. Если у вас другой, то жто отлично :)
18. Rustig 1197 07.10.19 12:45 Сейчас в теме
(17) я понял, но вы про опыт одного человека.
я предлагаю объединять умы - вместе пробовать изменить ситуацию.
19. Rustig 1197 11.10.19 05:48 Сейчас в теме
(15) в тему https://m.habr.com/ru/post/470561/
можно расшатать их только совместными усилиями....
21. davdykin 18 21.10.19 08:10 Сейчас в теме
Спасибо за статью, да, декомпеляция форм - мега инструмент, большое спасибо автору, выручал уже не раз, учитывая возросшую необходимость актуализации, в том числе и 10.3, иногда приходится переписывать на программную доработку элементов, дабы сэкономить на обновлениях.
Оставьте свое сообщение

См. также

Создание асинхронных виджетов 75

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом

Описание нескольких способов создания асинхронных виджетов для 1С:Предприятия. Рассматриваются способы с использованием HTTP-сервисов и фоновых заданий.

16.10.2019    1910    YPermitin    15       

Лайфхаки 1С (часть 1). Настройки отчетов и печатных форм 1С 34

Статья Программист Пользователь Стажер Нет файла v8 1cv8.cf Россия Бесплатно (free) Работа с интерфейсом

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

02.10.2019    4100    VachKirp    8       

Добавляем виджет "Задачи от меня" в Документооборот 2.1 22

Статья Программист Нет файла v8 v8::Бизнес-процессы ДО Россия Бесплатно (free) Практика программирования Работа с интерфейсом

Небольшая доработка Документооборота 2.1 для возможности добавления виджета "Задачи от меня" в обработку Текущие дела.

25.09.2019    1578    Sergey_Borisovi4    2       

[Механизм интерфейса] Часы 54

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом Практика программирования Разработка

Добавляем цифровые часы на форму, как бонус рассмотрим вариант и с аналоговыми.

26.08.2019    3127    rpgshnik    33       

Произвольная начальная страница через расширение (программно) 41

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом

Установка своей формы произвольному пользователю на начальную страницу.

14.08.2019    2571    nagaitseff    11       

Подходы, методы и инструменты UX/UI для разработки эффективных интерфейсов на 1С 31

Статья Программист Нет файла v8 Бесплатно (free) Работа с интерфейсом

Интерфейсам в 1С обычно уделяют мало внимания. Это в итоге снижает востребованность платформы, делает ее неконкурентной, лишает большой доли рынка. Как не потерять старых клиентов и привлекать новых с помощью интерфейсов, а главное – как сделать «правильный» интерфейс, рассказал участникам конференции Infostart Event 2018 Education управляющий партнер и основатель консалтинговой группы WiseAdvice Иван Тягунов.

07.08.2019    4541    IvanAT1981    14       

Пользовательские настройки системы компоновки данных 87

Статья Программист Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования Работа с интерфейсом

Работа с отчетами в пользовательском режиме, формы отчетов. Понятие пользовательских настроек в отчетах на СКД. Определение состава пользовательских настроек для разделов в целом и для отдельных элементов, для всего отчета и для отдельных группировок. Видимость функциональных опций в отчетах на СКД.

09.07.2019    6389    ids79    0       

Подсистема "Варианты отчетов". Используете ли Вы ее правильно? 212

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом БСП (Библиотека стандартных подсистем)

Небольшая история про использование подсистемы "Варианты отчетов" из БСП. Используете ли Вы ее правильно?

04.06.2019    14447    YPermitin    49       

Расшифровка отчета на СКД с детализацией по выбранному полю на основе БСП 91

Статья Программист Нет файла v8 v8::УФ v8::СКД 1cv8.cf Россия Бесплатно (free) Практика программирования Работа с интерфейсом Разработка

В данной статье рассмотрим механизм работы с расшифровкой отчета, созданного при помощи системы компоновки данных, в управляемом приложении. Показывать буду на примере реальной задачи. Условие: использовать имеющиеся в конфигурации механизмы БСП, с минимальными и "правильными" изменениями. Расшифровка должны быть двух видов на каждом поле: 1. Открывать ссылочный объект 2. Открывать новую форму с детализацией табличной части документа. Собственно ради второго пункта и писалась статья, в основном для себя, чтобы не забыть.

14.05.2019    7444    Viktor_Ermakov    6       

Свой макет оформления отчета 33

Статья Программист Нет файла v8 v8::СКД Россия Windows Бесплатно (free) Работа с интерфейсом

Пример создания и оформления и применения своего (пользовательского ) макета оформления для СКД.

24.04.2019    4547    olegpkc    5       

Программное изменение управляемых форм 29

Статья Программист Нет файла v8::УФ Бесплатно (free) Практика программирования Разработка

При адаптации типовых конфигураций 1С часто приходится изменять в 1С 8 управляемые формы. Такие адаптации сложно потом поддерживать при обновлении. Такие изменения приходится вносить вручную заново, перепроверять корректность изменений в каждом обновлении. И если таких изменений множество, то каждое обновление может представлять серьезные трудозатраты. Есть несколько решений, которые позволяют упростить поддержку и обновление измененных систем 1С. Одно из них – это программное изменение форм. Вести разработку в таком режиме получается немного дольше, чем прямое изменение формы. Но это хорошо компенсируется в дальнейшем при поддержке и обновлении системы 1С. На самом деле ничего сложного в этом нет, просто нужно привыкнуть. Рассмотрим на примерах, как делать доработку управляемых форм кодом в 1С.

05.03.2019    5269    user759624    10       

Раздельный вывод частей даты на форму без программирования 71

Статья Программист Нет файла v8::УФ 1cv8.cf Бесплатно (free) Работа с интерфейсом

Небольшой лайфхак для повышения удобства редактирования пользователем полей с типом "Дата".

12.01.2019    5721    drmaxart    20       

Динамический вывод таблицы значений на форму 35

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом

Вывести на форму таблицу значений, а потом на её место другую, третью, четвёртую? Не вопрос.

11.01.2019    5700    Vlad1917    26       

Тот самый Рабочий стол. Возрождение легенды 77

Статья Программист Нет файла v8::УФ v8::СКД 1cv8.cf Бесплатно (free) Работа с интерфейсом

Невероятный инструмент построения адаптивных интерфейсов.

30.11.2018    9988    1c-intelligence    23       

Подсчёт и отображение количества строк в динамическом списке 20

Статья Программист Нет файла v8::УФ Бесплатно (free) Работа с интерфейсом

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

28.11.2018    5690    sano    22       

Прикладной пример переработки стандартной формы РМК - Розница 74

Статья Программист Нет файла v8 Розница УУ Кассовые операции Розничная торговля Бесплатно (free) Работа с интерфейсом

Простой пример, как с помощью программного изменения шрифтов элементов формы достичь наилучшего результата отображения на примере формы РМК.

04.10.2018    10864    asdfgcom    56       

Cправочная информация. Картинки. 16

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом

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

06.06.2018    6421    aspirator23    2       

Бодаемся с отображением отборов на управляемых формах 82

Статья Программист Нет файла v8::УФ 1cv8.cf Россия Бесплатно (free) Работа с интерфейсом

Рассмотрим в статье, как настроить отображение пользовательских отборов на форме по своему желанию.

30.05.2018    14552    lemz    14       

Итоги в динамическом списке 47

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом

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

28.05.2018    9010    CXY    16       

Программное управление обычными формами документов и справочников в УПП/КА 32

Статья Программист Нет файла v8 v8::УФ КА1 УПП1 Россия Бесплатно (free) Работа с интерфейсом

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

09.05.2018    8435    dima_home    7       

Решение проблемы отображения интерфейса Такси на экранах с маленьким разрешением 26

Статья Программист Нет файла v8 v8::УФ Беларусь Windows Бесплатно (free) Работа с интерфейсом

Решение возникшей проблемы при переходе с интерфейса 8.2 на интерфейс Такси на экранах с маленьким разрешением.

06.04.2018    9795    Drak87    18       

Красивые графики. Пошаговая инструкция (Highstock) 122

Статья Программист Нет файла v8 Бесплатно (free) Работа с интерфейсом

Данный подход опробован на библиотеках: Нighcharts и Highstock. Для работы будет необходима 1С и браузер Google Chrome. Чукча не писатель (первая публикация).

22.11.2017    14227    Degrement    20       

Меняем стандартную форму выбора для реквизита формы на свою форму с запросом 51

Статья Программист Нет файла v8 Россия Бесплатно (free) Практика программирования Работа с интерфейсом

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

30.09.2017    15812    ah7777777    24       

Подбор в управляемой форме - что может быть проще? 119

Статья Программист Нет файла v8::УФ 1cv8.cf Бесплатно (free) Работа с интерфейсом

Технологии модальности сейчас меняются на технологии асинхронности, многопоточности и прочие дивные вещи, что, в свою очередь, заставляет людей еще чаще спрашивать о том, что да как в этой новой нелегкой жизни. Разбираемся!

19.09.2017    27997    starik-2005    51       

"Мигаем" интерфейсом, или цепочки асинхронных вызовов 71

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Работа с интерфейсом

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

06.09.2017    12649    Chrizt    13       

Создание динамически подгружаемых печатных форм на 8.2, как это было реализовано в 1С:7.7 13

Статья Программист Нет файла v8::УФ Россия Windows Бесплатно (free) Работа с интерфейсом Практика программирования

При создании собственной, легкой, автономной конфигурации для филиалов на управляемых формах необходимо было решить одну задачу: «БЕЗ обновления конфигураций необходимо легко и быстро обновлять/добавлять печатные формы для любого документа в 1С». Очень понравилось ранее существовавшее решение по динамической подгрузке внешних печатных форм в 1С 7.7. Его и реализуем.

28.07.2017    12500    dima_home    8       

"Восстановить положение окна" - не помогает. Как я решил проблему. 28

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом

Как получилось решить проблему глюков отображения формы документа.

28.05.2017    46747    niko11s    44       

Как добавить/убрать кота в отчет? 78

Статья Программист Нет файла v8 БП3.0 Бесплатно (free) Работа с интерфейсом

Кот в отчете: кому-то нравится, кого-то жутко бесит. Как избавиться, заменить, оставить (нужное подчеркнуть)?

12.05.2017    23137    starik-2005    16       

Итоги в динамическом списке 46

Статья Программист Нет файла v8 1cv8.cf Россия Бесплатно (free) Работа с интерфейсом

Как быстро посчитать итоги в динамическом списке

03.04.2017    21005    Восьмой    34       

Кнопки управления группировками табличного документа для управляемых форм (через подменю командной панели) 30

Статья Программист Нет файла v8::УФ v8::СКД Бесплатно (free) Работа с интерфейсом

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

02.03.2017    13076    dj_serega    0       

Таблицы на управляемых формах: создание, расширение, управление. 93

Статья Программист Нет файла v8::УФ Бесплатно (free) Работа с интерфейсом

Как вывести результат запроса в таблицу на управляемую форму, ведь здесь нет метода "СоздатьКолонки()"? Как добавить поле ввода в табличную часть документа, если нет желания менять документ? Разбираемся...

10.01.2017    45963    starik-2005    24       

Возвращение старого поиска в новых релизах Бухгалтерии предприятия 3.0 35

Статья Программист Нет файла v8::БУ v8::УФ БП3.0 Бесплатно (free) Работа с интерфейсом

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

13.12.2016    17887    ardn    34       

Как "перемотать" динамический список в начало при открытии? (или некоторые нюансы получения данных динамического списка) 57

Статья Программист Нет файла v8 Бесплатно (free) Работа с интерфейсом

В современных интерфейсах (новостях, социальных сетях и прочим) принято размещать новые данные сверху, более старые - внизу. К сожалению, в 1C сделано несколько по-другому - по умолчанию списки документов отсортированы по возрастанию даты и далее возможно два варианта: либо список при открытии проматывается в конец, либо список может запоминать "последнюю" текущую строку.

03.11.2016    19094    Fragster    25       

Программное создание графических схем (v.2): API для ГрафическойСхемы 73

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Работа с интерфейсом Универсальные функции

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

27.09.2016    16922    serg_infostart    15       

Автоматическое добавление новых реквизитов на форму (УФ) 38

Статья Программист Нет файла v8 v8::УФ Бесплатно (free) Работа с интерфейсом Универсальные функции

Идея такая: Программист добавил реквизит в объект. В комментарии этого реквизита прописал некое спец. слово (можно не матерное). На форму объекта новый реквизит далее попадает автоматом в спец. группу "Дополнительно".

03.08.2016    16263    Патриот    23       

Управляемые формы: Поле HTML Документа и веб-клиент 57

Статья Программист Нет файла v8 Россия Бесплатно (free) Практика программирования Работа с интерфейсом

Взаимодействие javascript и интерфейса 1С дает огромные возможности для реализации нестандартных функций. Раньше можно было напрямую вызывать функции JavaScript через DOM объект document Поля HTML документа. В современных браузерах эта возможность ушла. Более того, в веб-клиенте появляется тип ВнешнийОбъект, который вообще нигде не описан. На Инфостарте были предложения вызывать JavaScript через fireEvent, но это очень неудобно. Предлагаю свой вариант решения.

18.07.2016    24237    compguru    10       

Как вывести динамическое представление для пустого значения (в таблице)? 23

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Работа с интерфейсом

Есть таблица. Часть полей в ней заполняется автоматически, а часть - должен заполнить пользователь. Нужно подсказать пользователю, что именно в какую ячейку вводить - для этого выведем серым текст подсказки внутри каждой незаполненной ячейки. На поиски решения этой задачки я потратил половину субботы. Надеюсь, моя небольшая заметка поможет кому то провести выходные более продуктивно)

29.03.2016    9749    weissfeuer    9       

Выделение документов в динамическом списке 20

Статья Программист Нет файла v8 Бесплатно (free) Работа с интерфейсом

Допустим, пользователю конфигурации на управляемых формах захотелось выделять документы в списке привычным образом и производить какие-то манипуляции с выделенными документами. Например, делать на их основании какие-то документы.

01.02.2016    15819    Sardukar    7       

Три приёма, позволяющие сделать интерфейс конфигураций 1С на управляемых формах удобнее при большом шрифте 52

Статья Программист Нет файла v8 УНФ ERP2 БП3.0 Windows Бесплатно (free) Работа с интерфейсом Универсальные функции

С появлением управляемых форм вообще и БП 3.0 в частности пользователи, которые не хотят портить своё зрение рассматриванием мелкого шрифта, оказались в невыгодном положении. Многих элементов на экране в "тяжёлых" документах вообще оказалось не видно. Все попытки решить вопрос штатными средствами настройки предприятия оказались неэффективны. Вот несколько приёмов, которые буквально в два щелчка мышкой и парой строк кода помогут решить проблему.

05.11.2015    15039    H-Labs    11       

Как скрыть "пустые группы" в списке выбора справочника при отборе 46

Статья Программист Нет файла v8 Бесплатно (free) Работа с интерфейсом

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

29.10.2015    25654    shevelyov    25       

Открытие форм нескольких новых документов в тонком и толстом клиенте, УФ 23

Статья Программист Нет файла v8 v8::УФ 1cv8.cf Windows Бесплатно (free) Работа с интерфейсом

Если Вам необходимо создать несколько документов, а затем открыть их формы для пользователя.

1 стартмани

29.09.2015    18073    Wezoowy    13       

Параметры сеанса. 47

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Практика программирования Работа с интерфейсом

Параметры сеанса - это объекты метаданных конфигурации. Поговорим об их назначении и принципах работы с ними.

06.09.2015    55535    niko11s    8       

Шкала в строке состояния 51

Статья Программист Нет файла v8 Windows Бесплатно (free) Работа с интерфейсом

Простая шкала, не требующая дополнительных форм и элементов управления

31.08.2015    13490    Ivon    26       

Назначение сочетания клавиш для кнопок командной панели (Обычные формы) 13

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Практика программирования Работа с интерфейсом

Назначение сочетания клавиш кнопкам командной панели Формы списка/выбора для любой конфигурации (Обычные формы)

07.08.2015    15174    bld    7       

Развитие управляемого интерфейса в 1С 8.2 - 1С 8.3 55

Статья Программист Нет файла v8 Windows Бесплатно (free) Практика программирования Математика и алгоритмы Работа с интерфейсом

К управляемым формам, которые появились в 8.2, я до сих пор относился презрительно. Считал это неудачной попыткой 1С следовать модным тенденциям в разработке интерфейсов и прогибом для возможности работать через браузер. Я считал, что 1С пожертвовала простотой разработки в угоду веб-доступу. Но после курсов Арутюнова Сергея по управляемому интерфейсу в июле 2015 года в УЦ1 я поменял ненависть на любовь. Звучит парадоксально, но это так. А теперь подробнее…

27.07.2015    35077    fixin    103