Как найти номер строки в модуле 1с

Обновлено: 30.06.2024

Мне частенько приходится взаимодействовать с 1С-разработчиками, и во время совместной работы над проектами замечаю, что далеко не все из них хорошо знают свой главный инструмент – «Конфигуратор». Причем это не относится к степени крутости девелопера. Как оказалось, даже синьоры пользуются далеко не всеми возможностями «Конфигуратора», а ведь они могут сэкономить кучу времени, а тем самым повысить продуктивность разработчика.

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

Закладки

Хорошо, если новые функции добавлены в самый конец модуля, а если потребовалось расположить в разных частях? Вот тут начинается самое интересное. Одни программисты начинают скролить текст (как правило, этим страдают новички). Более продвинутые применяют поиск по тексту (Ctrl + F).

Оба способа рабочие, но пользоваться ими долго. Куда правильней использовать функцию «закладки». Например, переходим к какой-нибудь строке. Нажимаем ALT + F2 и получаем закладку (слева от строки отобразиться квадратик).


Убирается закладка тем же сочетанием клавиш. Так вот, закладок может быть в модуле расставлено много. По ним легко передвигаться нажатием клавиши F2. Фича крутая, но она была изначально не доделана и не позволяла, например, передвигаться по закладкам в разных модулях. Это досадное ограничение создавало лишние тормоза для программистов, привыкших к хорошим IDE (например, Visual Studio, PHP Storm).

В версии 8.3 недочет исправили и сделали классную вещь – «Список закладок». Нажимаем клавиши «Ctrl + Shift + F2», и перед нами откроется окно с полным списком установленных закладок:


В нем перечислены все закладки в разрезе модулей. Для каждой закладки указан номер строк и доступен перечень действий: перейти к коду, удалить закладку, удалить все закладки.

Таким образом, работать с закладками стало на порядок проще. Еще бы добавили возможность установки горячих клавиш на закладки, и стало бы совсем хорошо. Помню еще со времен «Delphi 6» привык к установке закладок по горячим клавишам Alt + <Цифра>. Наставил закладок и быстро перемещайся по ним.

Группировка строк

В «1С:Предприятие» с самого начала была одна большая проблема – отсутствие возможности создавать дополнительные модули для определенных объектов. Например, есть у меня справочник «Контрагенты» и мне хочется разделить его функционал на модули. Допустим, функционала очеееень много. Так вот, в моем распоряжении все равно стандартный набор: Модуль объекта, Модуль менеджера и модуль формы. Понятное дело, что у каждого модуля своя роль, но что делать мне с моими 100500 функциями, которые относятся непосредственно к справочнику «Контрагенты»?

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

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

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

Например, есть у нас общий модуль «РаботаСКонтрагентами». В нем часть функций отвечают за поиск контрагента, другая часть за загрузку контрагентов из внешних источников и т.д. Чтобы не потеряться во всем этом многообразии возможностей, можно логически сгруппировать все функции/процедуру. Для этого в платформе 8.3 появилась функция под названием «Области». Рассмотрим пример:

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


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

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

Форматирование кода

Собственно говоря, тут и рассказывать особо нечего – выделяем код, нажимаем «Alt + Shift + F» и редактор попытается привести его в божеский вид в соответствии с вшитым code-style. Функция работает вполне сносно и ей обязательно надо пользоваться. Пишу это потому, что неоднократно видел, как разработчики пытаются отбивать отступы самостоятельно. Это конечно круто, но зачем тратить время, если большую часть работы можно выполнить одной горячей клавишей?

Комментирование

Опять же, никаких секретных действий – выделили код, нажали “Ctrl + num /” (слеш на дополнительной области клавиатуры) и получили закомментированный участок. Захотели вернуть обратно? Не беда! Выделяем закомментированный участок кода, нажимаем «Ctrl + Shift + num /» и мгновенно приводим его в боевой режим. Фишка попсовая, но опять же, новички про нее не знают, и тратят кучу времени на расстановку слешей. Да еще и матерят компанию «1С», за отсутствие возможности многострочного комментирования, как в продвинутых язык программирования.

Быстрая вставка специальных символов

Иногда возникает необходимость быстро вставить в редактор специальный символ (которого нет на клавиатуре). В большинстве случаев разработчики используют для этого функции встроенного языка (например, символ). А ведь есть способ проще. Если удерживать клавишу Alt и набрать на доп. клавиатуре код нужного символа (из таблицы ASKII), то он тут же будет вставлен. Например, держим ALT и набираем 65. На выходе получаем букву «А». Или вводим 4 и получаем бубновую масть.


Вставка специальных символов

Хорошо, с этим понятно, но какой от этого еще можно получить профит? Лично я, таким образом вставляю символ амперсанда (&). Все знают, что этот символ используется для определения параметров в языке запросов. Неудобство состоит в том, что текст запроса мы пишем на русском языке, а для добавления этого символа перед параметром приходится переключить на английский, затем нажать Shift + 7, а потом вернуться обратно на русский.

Чтобы избавить себя от этой рутиной последовательности действий, я использую выше озвученную функцию. С ее помощью для установки амперсанда требуется лишь набрать с удержанной клавишей «alt» последовательность цифр 38. При этом надобность в двойном переключении языка отпадает.

Многие могут подумать, что я искусственно раздул проблему из ничего, но тут просто дело привычки. Кода приходится писать много и вот такие мелочи немного повышают производительность и избавляют от лишних нажатий клавиши backspace (для удаления случайно набранных символов). Не убедил? Тогда просто выделите время и попробуйте себя переучить



skype: live:di-sem

@programmist_1C

Советы программистам 1с при работе с конфигуратором

conf

Подсветка текущего идентификатора

1tekId

Позволяет подсвечивать текущий идентификатор выбранным цветом.

Выделяются все идентикаторы у которых такое же имя.

Очень удобно для поиска идентификатора по тексту кода.

Отладка под определенным пользователем

2otladkaPodPolz

Позволяет запускать отладку под определенным пользователем.

Незаменимо когда ошибка появляетося только у определенного пользователя или когда пользователю не хватает прав, но неизвестно каких.

Работа с открытыми окнами в конфигураторе

3okna

Позволяет расположить окна в удобном виде.

Выделить их все и закрыть.

Форматирование текста кода

Выделить нужный фрагмент кода и нажать Alt+Shift+F

либо через меню:

4format p2

4format do

4format p

Предположим, вы дорабатываете незнакомую конфигурацию и в каком-то модуле вам попался неотформатированный текст. Вам трудно в нем разобраться и вы хотите улучшить его читаемость, да и вообще сделать более «приличным».
В этом случае вам не нужно вручную двигать строки текста с помощью клавиши Tab, так как это гораздо удобнее и быстрее сделать с помощью форматирования блока текста.
Для этого выделите этот фрагмент текста (или сразу весь модуль – Ctrl + A) и нажмите кнопку Форматировать (Alt + Shift + F) в командной панели Текст.

Вывод списка всех процедур модуля + заготовки предопределенных процедур

5proc

Вернуться в исходное место после команды "Перейти к определению".

Во время анализа кода мы хотим посмотреть что за процедура или функция вызывается. Жмем ПКМ и выбираем перейти к определению и переходим к нужной процедуре/функции.

6perehod1 1

Но после просмотра функции мы хотим вернуться обратно. Для этого жмем "CTRL" + "-":

6perehod2 2

Посмотреть где используется выделенная процедура/функция

6perehod3

Откуда была вызвана процедура/функция? Стек вызовов.

Допустим что в этой процедуре у нас ошибка мы ставим точку останова, но видим что в процедуру уже поступают неверные параметры.

7steck1

Нужно узнать откуда была вызвана данная процедура. Вызываем стек вызовов:

7steck2

Видим все процедуры из которорых мы перешли к текущей:

7steck3

Вырезать часть кода в отдельную процедуру/функцию

Мы хотим часть кода вывести в отдельную процедуру чтобы использовать ее в других процедурах.

Для этого выделим нужную часть, вызовем контекстное меню и сделаем так:

Закладки и перейти к строке.

Бывает что код достаточно большой и нужно "прыгать" от одного места к другому.

Искать место глазами совсем неудобно.

Лучше воспользоваться следующими инструментами.

1 Переход к строке.

Запоминаем номер строки, он написан в правой нижней части экрана

9 0

Жмем в любом месте этого модуля кнопку или сочетание клавиш

9

В нужной строке жмем Alt+F2 либо через меню

9 1

Переход по закладкам горячие клавиши:

F2 - Следующая закладка

Shift+F2 - Предыдущая закладка

Остановить отладчик до наступления ошибки.

Отладчик будет остановлен на строке на которой будет ошибка.

10 1

10 2

10

Проверим что скажет отладчик.

10 3

и остановит процедуру на нужной строке

10 4

Вычислять выражение не меняя код.

В контекстном меню при остановке отладчика есть команда "Вычислить выражение". Shift+F9

11 1

11 2

В поле "Выражение" мы можем написать любой код и тут же получить ответ. Например:

11 3

Контекстная подсказка по параметрам

podskParam

Принудительно вызвать обычную контекстную подсказку: CTRL+Пробел

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

Инструмент безусловно полезный, но нужен он не всегда.

refact 1

Отключается в Сервис-Параметры. Убрать галочки в группе "Рефакторинг при изменениях в метаданных и формах":

Здравствуйте! Заранее извиняюсь, только учусь, прошу строго не судить. Возникла мысльзадался вопросом, формировать себе задачу при срабатывании определенного условия, чтобы отследить исключения при выполнении кода, и не только. Задачу формирую, с этим проблем нет, но как мне получить номер строки и название модуля? Что то типа ОписаниеОшибки, в которой есть эта информация. Спасибо что дочитали хотя бы)

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

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

ИнформацияОбОщибке - показывает только при наличии ошибки

не понял а где тут ошибка ? может ВызватьИсключение поможет ?

Я иногда пишу код ошибки, потом поиском можно найти Скажем так: Сообщить("Произошла ошибка. Код 0х0000001");

не гуд. Если Результат.Количество > 1 Тогда ВызватьИсключение("Ошибка логики: результат запроса пустой");

к этому я и пришел, передавать название модуля и номер строки вручную, явно.

а в процедуре этой, формирую задачу и отправляю себе.

дак твой гуд - прервёт выполнение программы, если исключение не в Попытке. А оно надо? я вот вангую что нет

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

1С - это не Бейсик. Так что - пользуйтесь тем, что есть.

заявки они не формируют. Она автоматически прилетает ко мне когда выполняется условие.

Я к тому, что в случае активного изменения кода, ты строку по номеру не идентифицируешь!

ну отсылай какой-нибудь код, по нему глобальным поиском можно найти.

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

тот же модуль могут переименовать, а потом не найдешь. задумка тает(

глобальный поиск по "0х00110011" найдёт тебе даже переименованном модуле.

а если у меня не одна такая вставка будет? вести учет? 0х00110011 использовал для такого то, 0х00110101 использовал для такого то.

Здравствуйте, подскажите присутствует ли вообще такая фича в 1С, не могу найти?

Здравствуйте, подскажите присутствует ли вообще такая фича в 1С, не могу найти?

А вы никогда не задумывались, почему эта фича присутствует даже в самых кастрированных редакторах кода?

Я иногда задумываюсь, нафига она там нужна. А в некоторых даже не отключается.

ВНУТРИстрочные. Внутри, Карл!! типа /*коммент*/ для сч = 1 по 10 Цикл

Открою вам маленький секрет. Это для того, чтобы глазами сразу дык, в нужную строку. А не перемещать курсор ради этого и не выёживаться со всякими CTRL-G, ради того чтобы перескочить на несколько строк выше или ниже.

У тебя "нужная строка" находится только по номеру? Содержимое не осилил?

Областями удобно можно даже внутри процедур/функций сворачивать блоки вместо комментов типа делаем

это про строки модуля, объединение в локи которые можно свернуть/развернуть

Комментарий в 2 строки это тоже самое что комментарий в 1 строку но поделенный на 2 строки.

Спасибо. Я умею читать. Я только не нашла про внутристрочные комменты. И описанное - у меня в 7.7 реализовано.

Представляешь не осилил, за 10 лет в кодинге на PHPPyhonJavaC++, никак не могу переубедить себя, что ориентироваться по содержимому строк гораздо удобнее, чем обычным циферкам. И коллеги мои бывшие и настоящие, то же не могут себя в этом переубедить. Видать куда нам олухам до 1С-программистов. Хорошо, что у вас хоть нужда в подсветке синтаксиса и авто-отступах осталась.

В 1С при "runtime error" не нуна строку на которой падает по номеру ее искать.

Очень жаль. Тебя. И коллег твоих. Ни разу в жизни (начиная с Бейсика (не путать с Visuail)) не имела надобности в нумерации строк кода.

настоящий 1сник долго и мучительно программирует силой мысли.. а затем быстро вылил её в редактор - "..и в продакшн"

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

Так для чего нужен номер строки, чтобы "ориентироваться в коде", может пояснишь? Или у вас принято не разбивать код на процедуры и функции?

"Это для того, чтобы глазами сразу дык, в нужную строку." В нужную строку откуда?

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

Та судя по вакансиями не сказал бы, что у вас зарплаты выше.

При чем тут единодушие? Ты встречал программистов, которым для понимания кода не хватает нумерации (кода)?

Единственное место, где используется номер строки это описание ошибки. Больше мест в 1С я не знаю

иногда, для "тыкнуть носом", при групповой разработке помогает

Для тыкнуть носом вполне достаточно строки состояния

В ветке полно народу, а практика обычна только для вас.

А если ты находишься за пару десятков тысяч строк от ошибки? Тоже резона нет?

В описании ошибки, кстати, еще и текст строки, на которой ошибка, тоже есть. Какие проблемы найти глазами этот текст?

Ты мышефоб? Что быстрее? нажать мышкой или вводить с клавиатуры 10 символов?

Ты не пояснил, как ты определяешь "нужную строчку". Или ты весь код помнишь по номерам строк, а не по именам процедур и функций?

Совет: начинай с азов. И меньше огрызайся и груби - больше помогать будут.

Вспомнила стишок: Безрукий выхватил кинжал И за безногим побежал. Слепой увидел это дело И все глухому рассказал. (С) Очень был в ходу на первой сессии :)))))

Пару десятков строк и по тексту можно глазами прошерстить, необязательно иметь номер строки. А если при этом на паре десяток строк пара десятков ошибок. Ну печально, чо)

вот чего мне не хватает в 1С, так это CTRL+D. Что реализовано почти во всех редакторах кода

Управление окнами
Закрыть активное окно, модальный диалог или приложение - Alt + F4
Закрыть активное обычное окно - Ctrl + F4
Закрыть активное окно (кроме обычных) - Shift + Esc
Активизировать следующее обычное окно - Ctrl + Tab - Ctrl + F6
Активизировать предыдущее обычное окно - Ctrl + Shift + Tab - Ctrl + Shift + F6
Активизировать следующую секцию окна - F6
Активизировать предыдущую секцию окна - Shift + F6
Вызвать системное меню приложения или модального диалога - Alt + Space
Вызвать системное меню окна (кроме модальных диалогов) - Alt + Hyphen(-) - Alt + Num-
Вызвать главное меню - Alt - F10
Вызвать контекстное меню - Shift + F10

Переход по истории активности окон
Переместиться назад - Ctrl + "-"
Переместиться вперед - Ctrl + Shift + "-"
Вернуть активность обычному окну - Esc

Форма
Перейти к следующему элементу формы/выполнить действие кнопки по умолчанию - Enter
Выполнить действие кнопки по умолчанию - Ctrl + Enter
Перейти к следующему элементу формы - Tab
Вернуться к предыдущему элементу формы - Shift + Tab
Активизировать командную панель, связанную с активным элементом управления/формой - Alt + F10
Открыть "Список элементов управления формы" - Ctrl + Shift + L
Перемещение по элементам управления, объединенным в одну группу - Up, Down, Left, Right

Работа со списком и деревом
Открыть - F2
Обновить - Ctrl + Shift + R
Скопировать - F9
Новая группа - Ctrl + F9
Удалить строку - Shift + Del
Перемещение строки вверх - Ctrl + Shift + Up
Перемещение строки вниз - Ctrl + Shift + Down
Перенести элемент в другую группу - Ctrl + Shift + M
Перейти на уровень вниз с одновременным раскрытием группы - Ctrl + Down
Перейти на уровень вверх (к "родителю") - Ctrl + Up
Закончить редактирование - Shift + F2
Развернуть узел дерева - Num+ - Ctrl + Num+
Свернуть узел дерева - Num- - Ctrl + Num-
Развернуть узел дерева и все подчиненные - Num* - Ctrl + Alt + Num+
Свернуть узел дерева и все подчиненные - Ctrl + Alt + Num-
Развернуть все узлы дерева (выполняется в любом месте дерева) - Ctrl + Shift + Num+
Свернуть все узлы дерева (выполняется в любом месте дерева) - Ctrl + Shift + Num-
Изменение флажка - Пробел

Поле ввода
Переключить режим вставки/замены - Ins
Кнопка выбора - F4
Кнопка открытия - Ctrl + Shift + F4
Очистить поле - Shift + F4
Удалить символ слева от курсора - BackSpace
Удалить символ справа от курсора - Del
Удалить слово слева от курсора - Ctrl + BackSpace
Удалить слово справа от курсора - Ctrl + Del
Перейти в начало строки - Home
Перейти в конец строки - End

Поле картинки
Увеличить масштаб - Num+
Уменьшить масштаб - Num-
Прокрутить - Up, Down, Left, Right
Прокрутить на размер окна вверх - Page Up
Прокрутить на размер окна вниз - Page Down
Прокрутить на размер окна влево - Alt + PgUp
Прокрутить на размер окна вправо - Alt + PgDn

Редактор управляемых форм
Переключиться на закладку "Форма" - Alt + 1
Переключиться на закладку "Модуль" - Alt + 2
Переключиться на закладку "Форма" и активизировать закладку "Элементы" - Alt + 3
Переключиться на закладку "Форма" и активизировать закладку "Реквизиты" - Alt + 4
Переключиться на закладку "Форма" и активизировать закладку "Команды" - Alt + 5
Переключиться на закладку "Форма" и активизировать закладку "Командный интерфейс" - Alt + 6
Переключиться на закладку "Форма" и активизировать закладку "Параметры" - Alt + 7
Переключиться на закладку "Форма" и активизировать окно предварительного просмотра формы - Alt + 8

Редактор форм
Протестировать форму - Ctrl + R
Переместить элемент управления - Up, Down, Left, Right
Копировать элемент управления - Ctrl + (Up, Down, Left, Right)
Копировать элемент управления с инверсией выравнивания по сетке - Ctrl + Alt + (Up, Down, Left, Right)
Изменить размер элемента управления - Shift + (Up, Down, Left, Right)
Изменить размер элемента управления с инверсией выравнивания по сетке - Shift + Alt + (Up, Down, Left, Right)
Инверсия использования сетки - Alt + (Up, Down, Left, Right)
Открыть окно "Привязка границ для элемента…" - Ctrl + Shift + S
Начало редактирования - F2

Редактор табличных документов
Перейти к ячейке - Ctrl + G
Перемещение по ячейкам - Up, Down, Left, Right
Перемещение по ячейкам к следующей заполненной или пустой - Ctrl + (Up, Down, Left, Right)
Перемещение по ячейкам к следующей заполненной или пустой с выделением ячеек - Ctrl + Shift + (Up, Down, Left, Right)
Выделение ячеек - Shift + (Up, Down, Left, Right)
Выделение ячеек от текущей до начала строки - Shift + Home
Выделение ячеек от текущей до конца строки - Shift + End
Выделение строк - Alt + Shift + (Up, Down)
Выделение строк до следующей заполненной или пустой ячейки - Ctrl + Alt + Shift + (Up, Down)
Выделение колонок - Alt + Shift + (Left, Right)
Выделение колонок до следующей заполненной или пустой ячейки - Ctrl + Alt + Shift + (Left, Right)
Выделение ячеек от текущей до начала документа - Ctrl + Shift + Home
Выделение ячеек от текущей до конца документа - Ctrl + Shift + End
Прокрутить на страницу вверх - PgUp
Прокрутить на страницу вниз - PgDn
Прокрутить на страницу влево - Alt + PgUp
Прокрутить на страницу вправо - Alt + PgDn
Перейти к редактированию содержимого ячейки - Enter
Переключение режима редактирования/ввода в ячейке - F2
Перейти в начало строки - Home
Перейти в конец строки - End
Перейти в начало текста - Ctrl + Home
Перейти в конец текста - Ctrl + End
Установка имени текущей области - Ctrl + Shift + N

Редактор текстовых документов и модулей
Переключить режим вставки/замены - Ins
Перейти в начало строки - Home
Перейти в конец строки - End
Выделить до начала строки - Shift + Home
Выделить до конца строки - Shift + End
Перейти в начало текста - Ctrl + Home
Перейти в конец текста - Ctrl + End
Выделить до начала текста - Ctrl + Shift + Home
Выделить до конца текста - Ctrl + Shift + End
Прокрутить на одну строку вверх - Ctrl + Up
Прокрутить на одну строку вниз - Ctrl + Down
Перейти к началу предшествующего слова - Ctrl + Left
Перейти к началу следующего слова - Ctrl + Right
Выделить слово - Ctrl + W
Выделить предшествующее слово - Ctrl + Shift + Left
Выделить следующее слово - Ctrl + Shift + Right
Прокрутить на страницу вверх - PgUp
Прокрутить на страницу вниз - PgDn
Выделить предыдущую страницу текста - Shift + PgUp
Выделить следующую страницу текста - Shift + PgDn
Снять выделение - Esc
Перейти к строке - Ctrl + G
Удалить символ слева от курсора - BackSpace
Удалить символ справа от курсора - Del
Удалить слово слева от курсора - Ctrl + BackSpace
Удалить слово справа от курсора - Ctrl + Del
Установить/снять закладку - Alt + F2
Следующая закладка - F2
Предыдущая закладка - Shift + F2
Удалить текущую строку - Ctrl + L
Форматировать блок - Shift + Alt + F
Добавить комментарий - Ctrl + Num/
Удалить комментарий - Ctrl + Shift + Num/
Cдвинуть блок вправо - Tab
Сдвинуть блок влево - Shift + Tab
Синтаксический контроль - Ctrl + F7
Процедуры и функции модуля - Ctrl + Alt + P
Перейти к объявлению процедуры или переменной - F12
Контекстная подсказка - Ctrl + Пробел
Свернуть группу (курсор может быть в любом месте группы) - Ctrl + Num -
Развернуть группу (курсор может быть в любом месте группы) - Ctrl + Num +
Cвернуть все группы - Ctrl + Shift + Num -
Развернуть все группы - Ctrl + Shift + Num +
Обновить группировки - Ctrl+ Shift + R
Активизация шаблона - Ctrl + Q
Перейти по операторным скобкам назад - Ctrl + [
Перейти по операторным скобкам вперед - Ctrl + ]
Перейти по операторным скобкам назад с выделением текста - Ctrl + Shift + [
Перейти по операторным скобкам вперед с выделением текста - Ctrl + Shift + ]

Отладчик
Начать/продолжить отладку - F5
Перезапуск приложения для отладки - Ctrl + Shift + F5
Прекратить отладку - Shift + F5
Шагнуть в - F11
Шагнуть через - F10
Шагнуть из - Shift + F11
Идти до курсора - Shift + F10
Установить/снять точку останова - F9
Отключить/включить точку останова - Ctrl + Shift + F9
Список точек останова - Alt + F9
Вычислить выражение - Shift + F9
Открыть табло - Ctrl + Alt + W
Открыть стек вызовов - Ctrl + Alt + C

Редактор картинок
Переключение картинка/коллекция - Ctrl + K
Параметры картинки/коллекции - Shift + Alt + P
Отразить слева направо - Ctrl + H
Отразить сверху вниз - Ctrl + Shift + H
Выделение прямоугольником - Shift + Alt + S
Масштаб - Ctrl + M
Ластик - Ctrl + Shift + E
Заливка - Ctrl + Shift + F
Карандаш - Ctrl + Shift + I
Кисть - Ctrl + Shift + B
Линия - Ctrl + Shift + L
Кривая - Shift + Alt + С
Аэрограф - Ctrl + Shift + A
Текст - Shift + Alt + T
Увеличение масштаба - Ctrl + Num+
Уменьшение масштаба - Ctrl + Num-

Палитра свойств
Сохранить свойства - Enter
Восстановить значения свойства - Esc
Раскрыть категорию свойств - Num+
Закрыть категорию свойств - Num-
Перейти в начало палитры - Home
Перейти в конец палитры - End
Перейти к предыдущему свойству - Up
Перейти к следующему свойству - Down
Прокрутить на страницу вверх - PgUp
Прокрутить на страницу вниз - PgDn
Перейти к предыдущей категории - Ctrl + PgUp
Перейти к следующей категории - Ctrl + PgDn

Редактор карты маршрута
Перейти на следующий элемент карты - Tab
Перейти на предыдущий элемент карты - Shift + Tab
Уменьшить ширину элемента карты - Shift + (Left)
Увеличить ширину элемента карты - Shift + (Right)
Уменьшить высоту элемента карты - Shift + (Up)
Увеличить высоту элемента карты - Shift + (Down)
Перемещение выделенного варианта вверх (только при выделенном варианте в - Ctrl + (Up)
элементе "Выбор варианта")
Перемещение выделенного варианта вниз (только при выделенном варианте в - Ctrl + (Down)
элементе "Выбор варианта")
Поиск - Ctrl + F
Найти следующий - F3
Найти предыдущий - Shift + F3
Замена - Ctrl + H

Конфигурация
Открыть конфигурацию - Alt + К + Enter
Поиск во всех текстах - Alt + К + Т
Объединение конфигураций - Alt + К + О
Загрузить измененную конфигурацию - Alt + K + З
Конвертирование данных - Alt + К + Е

Администрирование
Пользователи - Alt + А + П
Сохранить данные - Alt + А + Х
Восстановить данные - Alt + А + В
Выгрузить данные - Alt + А + Ы
Загрузить данные - Alt + А + Г
Настройка журнала регистрации - Alt + А + Н
Распределенная ИБ - Alt + А + Р
Управление - Alt + А + Р + У
Автообмен - Alt + А + Р + А

Действия
Открыть в отладчике - Alt + Д + Т
Синтаксический контроль запросов - Alt + Д + К
Синтаксический контроль - Alt + Д + И
Процедуры и функции модуля - Alt + Д + Р

Файл
Новый - Ctrl + N
Открыть - Ctrl + O
Сохранить - Ctrl + S
Печать - Ctrl + P
Сравнить файлы - Alt + Ф + Р
Закрыть - Alt + Ф + З
Просмотр - Alt + Ф + Р + Р + Enter
Параметры страницы - Alt + Ф + М

Работа с закладками
Предыдущая закладка - Shift + F2
Закладка - Alt + F2
Следующая закладка - F2

Работа с блоком
Форматировать - Ctrl + Shift +F
Сдвинуть вправо - Tab
Сдвинуть влево - Shift + Tab
Добавить комментарий - Ctrl + Num /
Удалить комментарий - Ctrl + Shift + Num /

Поиск и замена
Заменить - Ctrl + Shift + F3
Искать - Ctrl + F3
Повторить поиск - F3
Искать назад - Alt + F3
Искать вперед - Shift + F3
Переход к строке - Ctrl + Shift + L

Сервис
Калькулятор - Ctrl + F2
Синтаксис помощник - Alt + С + С
Настройка шаблонов - Alt + С + Н
Временная блокировка - Alt + С + В
Запуск предприятия - F11
Запуск отладчика - F12

Помощь
Помощь - F1
Содержание - Shift + F1
Поиск в Синтакс-Помощнике - Ctrl + F1
О программе - Alt + П + О

Общие
Свойства - Alt + Enter
Выход - Alt + F4

Читайте также: