- Добавление кнопки на управляемую форму
- Предисловие
- Конструктор
- Программное добавление
- 1С. Программное добавление кнопки с обработчиком
- Задача
- Реализация
- Как создать кнопку в табличной части в управляемой форме в 1С 8.3, 8.2
- Кнопка в поле табличной части управляемой формы в 1С 8.3, 8.2
- Реквизит табличной части, предназначенный для кнопки, должен иметь Тип – «Число» . А поле иметь Вид – «Поле картинки» . В свойствах поля, в свойстве – «КартинкаЗначений» , установите любую картинку .
- Поиск по сайту
- Заметки из Зазеркалья
- Бесплатные программы русские. Программирование 1С
- Скачать программы, софт бесплатно. Программирование 1С
- №1 Шпаргалка 1С. Добавление кнопок на форму.
- №1 Шпаргалка 1С. Добавление кнопок на форму.
- 1. Создание тестовой обработки
- 2. Создание основной формы обработки
- 3. Теперь рассмотрим процесс создания кнопок в форме обработки
Добавление кнопки на управляемую форму
Предисловие
Изменение форм объектов конфигурации является очень распостраненной задачей при доработке типовый конфигураций, создании отчетов и обработок и т.д. Да в абсолютном большинстве случаев разработчику приходится иметь дело с формами.
Сегодня в статье рассмтрим сквозной пример добавления на управляемую форму кнопки.
Конструктор
Самый простой способ — это конечно же воспользоваться конструктором форм в конфигураторе. Тогда не нужно будет писать ни одной строчки кода. Все что нужно — это пара кликов:
И кнопка уже добавлена!
Но не всегда такой вариант приемлем. Для некоторых задач нужно изменять форму программным образом, например, для формирования кнопок команд печати документов, где для каждой печатной формы создается собственная кнопка. Заранее знать состав всех печатных форм (включая внешние) мы не можем, поэтому добавление кнопок выполняется автоматичкески.
Программное добавление
И так, то что мы сделали в 2 клика сделаем с помощью нескольких строк кода. Перед тем как добавлять команду формы, нам нужно определить процедуру-обработчик этой команды. Добавим в модуль формы следующую процедуру:
Теперь нам нужно добавить команду формы и присвоить в качестве обработчика процедуру выше. Добавлять команду нужно на стороне сервера, поэтому используем событие формы «ПриСозданиинаСервере»:
Отлично, осталось добавить элемент формы типа «Кнопка формы» для команды формы «Предупредить». Дополним обработчик события «ПриСозданииНаСервере»:
На этом все. Если мы откроем эту форму в режиме 1С:Предприятия, то увидим следующее:
Пример небольшой и врятли даст ответы нв все вопросы по программной модификации форм. Он лишь может подсказать общий принцип.
Источник
1С. Программное добавление кнопки с обработчиком
При доработке типовых решений для облегчения дальнейших обновлений использую программное добавление кнопки с обработчиком
Задача
Программно добавить на командную панель кнопку с выполнением произвольного кода по ее нажатию.
Реализация
Для наглядности создадим новую обработку с «Пустой» формой. Её внешний вид будет следующим
В обработчике события формы ПриСозданииНаСервере() добавим код генерации команды и кнопки
И создадим обработчик нашей команды
В итоге на форме появится кнопка выполняющая наш обработчик. Выглядеть все это будет как добавленная кнопка в конфигураторе
Так же кнопки формы имеют свойство КнопкаПоУмолчанию, если присвоить значение Истина
тогда кнопка будет выделена цветом и шрифтом
а как код то добавить чтобы выполнялся?
или код нужно заранее на форму поместить, тогда нет смысла добавлять программно команду, если код всеравно нужно помещать заранее на конкретную форму.
Алексей, доброго времени суток! Хороший вопрос!
Все верно, код обработчика придется добавить в модуль формы.
А теперь давайте посмотрим не только на разработку, но и на сопровождение и дальнейшее обновление доработанной конфигурации.
Если добавить команду «руками», то при обновлении дважды измененной формы команда будет потеряна. Ведь, модули формы мы можем сравнить, а формы нет.
Если команду добавить программно в модуле формы или соответствующем модуле БСП, а обработчик в модуле формы. При этом выделив все свои процедуры префиксом и поместив их в отдельную область, то мы получим ситуацию, когда все наши изменения можно легко увидеть в сравнении модулей. Не придется держать чек-лист со списком команд/реквизитов/элементов для ручного добавления и перепроверки после обновления.
И тут мы приходим к правилу — формы «руками» не правятся вообще. Все «ручные» изменения выявляются на этапе ревью, вносивший такие изменения бурно порицается.
Обдумав данный механизм, просится к добавлению:
1. Автотест с открытием форм и исполнением программного изменения;
2. Корректная обработка ситуаций, когда программное изменение не получилось. С соответствующим выводом на этапе тестирования.
Не долго думая пишем придуманное выше и наслаждаемся результатом.
Источник
Как создать кнопку в табличной части в управляемой форме в 1С 8.3, 8.2
Кнопка в поле табличной части управляемой формы в 1С 8.3, 8.2
Код осуществляет обработку события «Выбор» табличной части (двойной щелчок или Enter) и проверяет по какому полю был сделан двойной щелчок (в примере «ТабличнаяЧасть1» название табличной части, «TablKnop» наименование поля колонки, отведенной под кнопку).
Реквизит табличной части, предназначенный для кнопки, должен иметь Тип – «Число» . А поле иметь Вид – «Поле картинки» . В свойствах поля, в свойстве – «КартинкаЗначений» , установите любую картинку .
Поиск по сайту
Okolokompa в Яндекс Дзен
Все материалы и продукты на этом сайте выложены в целях ознакомления для зарегистрированных пользователей фирм производителей материала или продукта, или его авторов. Помните, что скачанные материалы или продукты, Вы используете на свой страх и риск. Автор и администрация этого сайта не несет никакой ответственности за использование этих материалов или продуктов третьими лицами.
В случае, если вы используете один из перечисленных здесь материалов или продуктов, Вы обязаны официально приобрести его у фирмы производителя или автора.
Источник
Заметки из Зазеркалья
Реализовано в версии 8.3.3.641.
Мы значительно упростили создание новых элементов данных. Часто необходимость создать новый элемент возникает при работе с полем ввода. Поэтому в список, раскрывающийся под полем ввода, мы добавили кнопку создания нового элемента.
Теперь, если пользователь открыл, например, список быстрого выбора и обнаружил, что среди показанных элементов нет нужного, он может, не покидая эту форму, сразу же нажать на кнопку создания нового элемента. Будет открыта форма нового элемента, в которой он может заполнить нужные поля. А когда он запишет и закроет форму нового элемента, ссылка на этот элемент автоматически подставится в поле ввода.
Такой же приём можно использовать теперь и в тех случаях, когда заранее известно, что нужного элемента в базе нет. Например, когда пришёл товар от нового поставщика. Или когда выполняется начальное заполнение базы данными.
А в ситуации, когда пользователь не уверен в том, есть ли нужный элемент в базе или нет, всё становится теперь ещё удобнее.
Например, пользователь начинает вводить наименование и система сообщает ему, что нужного элемента в базе нет.
Тогда он нажимает кнопку создания нового элемента и обнаруживает, что наименование, которое он искал, система уже подставила в поле Наименование нового элемента!
По большому счёту остаётся только нажать кнопку Записать и закрыть, — и всё!
Таким образом от того чтобы в базе данных появился новый элемент с искомым наименованием, а в поле ввода ссылка на него, пользователя отделяет теперь всего лишь нажатие двух кнопок!
Эта замечательная возможность доступна не только в новом интерфейсе Такси, но и в старом интерфейсе тоже.
И, естественно, мы предоставили разработчикам возможность управлять работой этого механизма из конфигуратора и из встроенного языка. Чтобы при необходимости его можно было настроить на особенности конкретного прикладного решения. Например, этот механизм можно отключить совсем для тех типов данных, для которых создание при вводе не актуально.
Источник
Бесплатные программы русские. Программирование 1С
Скачать программы, софт бесплатно. Программирование 1С
№1 Шпаргалка 1С. Добавление кнопок на форму.
№1 Шпаргалка 1С. Добавление кнопок на форму.
Элементы управления представляют собой отдельную группу объектов, предназначенных для ввода и представления информации в диалогах. Они могут располагаться на форме, использоваться для редактирования ячеек табличного поля, табличного документа.
Кнопка является одним из наиболее часто используемых элементов управления в формах прикладных решений программы 1С:Предприятие. В этом видео-уроке мы вместе с вами создадим простейший прикладной объект 1С — так называемую «обработку», далее мы создадим основную форму обработки и научимся добавлять в эту форму такой важный элемент управления, называемый «Кнопка»
1. Создание тестовой обработки
Здравствуйте дорогие друзья! С вами Дегтярев Роман. Тренинг — Центр “Старт в 1С”.
Прочтите текст, и одновременно посмотрите короткую видео-шпаргалку, в которой речь пойдет о вставке интерфейсных элементов в форму какого-либо прикладного объекта 1С, ( в том числе и обработки 1С, на примере которой мы рассмотрим этот процесс)
Видео, на котором показан весь процесс, расположено ниже.
Вы можете просматривать это видео в высоком качестве и в полноэкранном режиме, используя кнопки управления проигрыванием видеоролика
Это пригодится нам вообще, как базовый навык конструирования форм, так и для выполнения других практических упражнений.
Мы поговорим о вставке одного из видов интерфейсных элементов, использующихся в любом прикладном решении 1С:Предприятии, о вставке кнопок в форму.
Давайте с вами запустим наше учебное прикладное решение в режиме конфигурирования (разработки) Эта инструкция, об учебном прикладном решении, касается тех, кто обучается на наших курсах программирования 1С.
Те, кто не обучается на курсах, могут запустить в режиме конфигурирование любое имеющееся прикладное решений, в том числе и полностью пустое. Этого будет достаточно изучения для рассматриваемого примера.
Для того, что бы нам было куда вставлять кнопки — предварительно создадим какую то отдельную обработку в дереве объектов конфигурации.
Итак , мы вошли в режим конфигурирования прикладного решения. Давайте с вами создадим обработку. Правдой кнопкой мыши нажимаем на узле “Обработки” и выпадает меню.
Выбираем в выпавшем меню пункт с именем “добавить”. Откроется окно визуального конструктора обработки.
Обработку можем называть каким-то определенным именем, а можем не называть — и оставить имя, которое присвоено по умолчанию.
Например, давайте дадим нашей обработке имя “Тестовая обработка”. Вы сами называйте так как вам требуется , если вы создаете обработку.
После присвоения имени нашей обработке можем внизу окна конструктора сразу же нажать кнопку “Закрыть” — поскольку иных действий выполнять не требуется.
Тестовая обработка создана, мы видим ее имя в дереве конфигурации, в узле “Обработки”. Давайте, щелкнем мышью на имени нашей обработки, развернем этот пункт и увидим под-элементы, которые могут входить в состав нашей обработки: “Реквизиты”, “Формы”, “Макеты” и так далее.
2. Создание основной формы обработки
Теперь пришла очередь создать форму для нашей обработки. Форма обработки — это визуальное представление, основное диалоговое окно, которое увидит пользователь и с которым он будет взаимодействовать, если запустит на выполнение нашу обработку.
Она является аналогом окна, формы любой другой программы под Windows — и может иметь в своем составе элементы меню, командные панели, поля ввода, надписи, кнопки, выпадающие списки и иные элементы управления — все те элементы, к которым мы привыкли при работе с большинством обычных программ.
Давайте нажмем правой кнопкой мыши на узле “Формы”, далее, выбираем в появившемся контекстном меню пункт с именем “Добавить”
Перед нами появляется окно конструктора формы обработки. С его помощью, на начальном этапе, мы можем указать некоторые особенности вновь создаваемой формы (ее программное имя, тип, является ли она основной, и так далее)
Но нам сейчас никаких особых настроек делать не нужно, поэтому мы просто нажимаем кнопку “Готово”, в нижней части окна конструктора формы обработки.
После этого перед нами открывается вновь созданная форма обработки 1С.
3. Теперь рассмотрим процесс создания кнопок в форме обработки
Итак, как же происходит вставка кнопок?
Обратим внимание, что по умолчанию, во вновь созданной форме, некоторые кнопки уже вставлены во время конструирования обработки. Эти кнопки вставлены автоматически.
Это стандартные кнопки “действий” двух, так называемых, командных панелей, что имеются в верхней части окна формы, и в нижней части окна.
Нас же сейчас интересуют те кнопки, которые мы вставим сами, “вручную”.
Для того, чтобы вставить какой то интерфейсный элемент, в том числе и кнопки, в конструируемую форму, мы должны нажать специальную кнопку с “иконкой” (на иконке виден желтый значок “плюс” ), открывающую окно выбора интерфейсного элемента для вставки.
Эта специальная кнопка с “иконкой” находится, как правило, на панели инструментов, под главным меню основного окна конфигуратора.
При наведении мыши над нужной кнопкой возникает подсказка “Вставить элемент управления”.
Если кнопка на панели инструментов отсутствует (это зависит от настроек панелей инструментов), у нас имеет альтернативный путь: Когда перед нами на экране имеется окно конструктора формы, мы можем выбрать из главного меню конфигуратора пункт: “Форма”/ “Вставить элемент управления”.
Независимо от того, нажали ли мы кнопку в панели инструментов, или выбрали действие из главного меню — перед нами открывается специальное окно выбора элемента управления, для вставки. Окно имеет заголовок “Вставка элемента управления”
В окне мы видим много различных элементов управления. (Вы можете потренироваться на досуге и попробовать вставить в форму эти элементы, посмотреть, как они выглядят).
Сейчас же нас интересует элемент “Кнопка”. По умолчанию, после открытия окна “Вставка элемента управления”, для вставки как раз выбран именно первый элемент из списка возможных и этот элемент управления — “Кнопка”.
Выбор вида элемента управления для вставки осуществляется в левой части окна, а в правой части окна дана возможность установить некоторые свойства элемента перед тем, как он будет вставлен в форму.
То есть, перед вставкой какого-то элемента управления в форму, его можно предварительно “подготовить”, установив основные его свойства: имя, заголовок, текст подсказки при наведении мыши, и некоторые другие свойства.
Например, любому элементу, в том числе и “кнопке”, мы можем присвоить какое то имя перед вставкой. Это имя будет являться именем объекта на встроенном языке 1С:Предприятие, именем программного объекта.
Это то имя, к которому потом можно будет обращаться из встроенного языка программирования .
Аналогично, мы можем присвоить какой то заголовок кнопке, надпись на ней. В нашем примере присвоим кнопке заголовок “Наша кнопка”.
Если мы желаем, чтобы по нажатию этой кнопки выполнялось какое-то действие на встроенном языке программирования, тогда мы не должны снимать галочку-флажок “создать процедуру”. По-умолчанию этот флажок включен.
Если этот флажок будет включен, то одновременно со вставкой кнопки, в программном модуле формы будет создана пустая процедура-обработчик, в которой мы сможем написать любой нужный алгоритм, выполняемый при нажатии этой кнопки в режиме пользователя.
Там же, в окне “Вставка элемента управления” мы можем вести текст подсказки, если желаем. Давайте в поле ввода “Подсказка” напишем — ”Это наша кнопка”. Эта подсказка будет появляться при наведение курсора мыши на вставленную кнопку.
Все, подготовка перед вставкой завершена, теперь нажимаем кнопку “Ок”.
После этого окно “Вставка элемента управления” закрывается и теперь мы можем вставить нашу кнопку в произвольное место нашей формы. Значок курсора мыши временно изменен на крупный “плюс” — таким образом система подсказывает, что мышью нужно указать конкретное место на форме, куда мы собираемся вставить элемент управления.
Выбираем место под кнопку в любой части нашей формы и нажимаем левую кнопку мыши. Наша новая кнопка вставилась в форму, и одновременно конструктор формы моментально переключает нас в окно редактора программного модуля формы.
Он показывает нам тело обработчика события нажатия вновь вставленной кнопки . То есть, мы сразу же можем написать код, который будет у нас вызываться при нажатии кнопки .
Давайте, все-таки, вернемся на закладку “Диалог” (закладки конструктора формы находятся снизу окна) и убедимся, что кнопка в форме появилась. Да, наша кнопка здесь!
Мы можем поменять ее размер, “потянув мышью” за угол кнопки, или куда-то сдвинуть нашу кнопку в пределах окна формы.
А перейдя снова в программный модуль (закладка “Модуль”) -мы можем писать код на языке программирования, для выполнения действий по нажатию нашей кнопки.
Впишем некоторый код, пусть он, для простоты, состоит всего из одной строчки “Сообщить(“Нажата наша кнопка!”);”
Это код приведет к тому, что по нажатию кнопки, на экране пользователя, в служебном окне сообщений появится следующий текст: “Нажата наша кнопка”.
Давайте проверим, запустим наша прикладное решение в режиме пользователя.
Далее, выберем в главном меню пункт “Операции”/”Обработки”. Вспоминаем, что мы создали обработку и назвали ее “Тестовая обработка”, поэтому обработку с таким именем мы и выбираем из открывшегося списка.
Тмк, мы видим перед собой форму нашей обработки. В форме мы видим нашу кнопку с заголовком “Наша кнопка”. Обратите внимание, подсказка “Это наша кнопка” появляется при наведение курсора мыши над кнопкой.
Теперь давайте нажмем кнопку. Убеждаемся, что в окно служебных сообщений выдано сообщение, которое мы с вами запрограммировали: “Нажата наша кнопка”.
Подобным образом мы можем вставлять любые другие элементы управления, о которых мы поговорим с вами на наших курсах и видео-шпаргалках.
Резюме: Мы успешно вставили кнопку на форму обработки, и теперь вы должны уметь это делать. До встречи в видеоуроках .
С вами был Дегтярев Роман.
Тренинг-центр “Старт в 1С”
Как научиться программировать в 1С с нуля?
Как работать программистом 1С и получать до 150 000 рублей в месяц?
ЗАПИШИСЬ НА БЕСПЛАТНЫЙ
«ПРОГРАММИРОВАНИЕ в 1С ДЛЯ НОВИЧКОВ»
Курс придет на электронную почту. Стань программистом, выполняя пошаговые задания.
Для участия нужен только компьютер и интернет
Источник