Как найти дерево метаданных

Конфигурация представляется в виде древовидной структуры, каждая ветвь которой описывает определенную составляющую
конфигурации. Объекты конфигурации в дереве конфигурации представлены своими именами. Например, в ветви Документы
располагаются объекты всех документов, используемых в конфигурации, а ветвь РасходнаяНакладная описывает объект документа
Расходная накладная, ветвь Общие – Роли – все роли (права доступа к информации), используемые для различных видов
пользователей, а ветвь Менеджер – права доступа менеджера отдела продаж и т. д.
Корневые ветви дерева объединяют объекты конфигурации, логически связанные между собой и имеющие общее назначение.
Например, ветвь Документы объединяет объекты типа Последовательности, Нумераторы и, собственно, объекты конфигурации типа Документ.  Все эти объекты предназначены для организации ввода документов в системе «1С:Предприятие».
Для работы в конфигураторе удобно использовать клавиатуру. Перечень сочетаний клавиш, которые могут использоваться в конфигураторе, можно получить во встроенной справке (раздел называется Сочетания клавиш (Конфигуратор)).
Объекты конфигурации в пределах «своей» группы объектов конфигурации можно расставить в требуемом порядке. В таком же порядке объекты конфигурации будут выдаваться в различных списках.
Для перестановки объекта конфигурации необходимо выделить его в окне Конфигурация и использовать пункты меню Действия –
Переместить вверх или Действия – Переместить вниз, а также Действия – Упорядочить список.
Для удобства поиска в дереве конфигурации объекта, редактируемого в данный момент (окно редактирования объекта, формы, макеты,
модули), следует использовать пункт меню Правка – Найти в дереве. Предварительно нужно сделать активным окно редактирования
объекта. После выполнения команды в дереве конфигурации будет выбран объект, данные которого в данный момент редактируются.
Поиск в дереве метаданных можно осуществить несколькими способами:
● Начать набирать на клавиатуре наименования объекта (при этом поиск будет выполняться только в открытых ветках дерева).
● Использовать стандартный механизм поиска (для вызова окна поиска необходимо нажать Ctrl + F). В этом случае будет открыто
окно Результаты поиска, из которого можно перейти к требуемому объекту метаданных.
● С помощью специального поля поиска, расположенного между списком объектов и командной панелью окна конфигурации.
Переход в это поле и любого места конфигуратора выполняется с помощью сочетания клавиш Ctrl+Alt+M. Поиск начинается после
того, как в поле введено более двух непробельных символов. Поиск осуществляется по свойствам объектов конфигурации Имя,
Синоним и Комментарий. Поиск выполняется по вхождению строки (см. рис.1). В дереве конфигурации остаются только те объекты
конфигурации, которые соответствуют набранной подстроке.
При включенном отборе, нажатие клавиши ESC очищает поле ввода и отменяет поиск в том случае, если фокус ввода находится в
дереве конфигурации или поле поиска. Клавиша TAB предназначена для перехода между деревом объектов конфигурации и полем
поиска.
Если при установленном отборе пользователь добавляет объект, который не соответствует наложенному отбору – система отменяет
наложенный отбор и отображает все дерево конфигурации.

Рис1 Поиск в дереве конфигурации

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

Настройка сортировки дерева метаданных

Рис 2 Сортировка метаданных

Например, формы конкретного справочника.
● Сортировать по – выбор свойства, по которому будет выполняться сортировка:
● Имени. Сортировка будет выполнена по именам объектов конфигурации.
● Синониму. Сортировка будет выполнена по синонимам объектов конфигурации.
● Комментарию. Сортировка будет выполнена по комментариям объектов конфигурации.
● Направление сортировки – выбор направления сортировки:
● По возрастанию. Будет выполняться сортировка в порядке возрастания.
● По убыванию. Будет выполняться сортировка по убыванию.

В этой статье разберем метаданные 1С. Метаданные или объекты метаданных в 1С – это «кирпичики», из которых строится конфигурация 1С. Узнаем, что такое метаданные (объекты метаданных) и научимся получать значения свойств объектов метаданных.

В учебной конфигурации, справочник Номенклатура – это объект метаданных. Документ Закупка товаров – тоже объект метаданных.

Все объекты метаданных 1С перечислены в дереве конфигурации.

Метаданные 1С

У объектов метаданных имеются прототипы. Визуально в дереве конфигурации прототипы представлены в виде веток дерева.

Например, у справочника Номенклатура прототип Справочники.

Прототип объекта метаданных 1С

А у документа Закупка товаров – прототип Документы.

Прототип объекта метаданных 1С

У объектов одного прототипа похожие свойств и методы. Кроме принадлежности к прототипу свойства и методы объектов метаданных определяются дополнительными характеристиками. Например, включена у справочников иерархия или нет.

В процессе конфигурирования разработчик настраивает свойства объектов метаданных. Например, длина кода справочника 1С это свойство. В учебной конфигурации у справочника Номенклатура длина кода 9.

Свойство объекта метаданных 1С

А у справочника Валюта – 3.

Свойство объекта метаданных 1С

На свойства объекта метаданных можно посмотреть, как в редакторе объекта. Редактор открывается при двойном клике мышкой по объекту. Так и в палитре свойств объекта. Для того, чтобы открыть палитру свойств, следует выделить объект, вызвать контекстное меню и выполнить команду «Свойства».

Свойство объекта метаданных 1С

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

Свойство объекта метаданных 1С

К свойствам объектов метаданных можно обратиться при помощи программного кода. Сделать это можно воспользовавшись свойством глобального контекста, которое так и называется Метаданные.

Это свойство является коллекцией объектов метаданных и включает в себя все метаданные конфигурации 1С, которые даже не созданы.

Метаданные 1С

У свойства Метаданные имеются свойства, которые отображают прототипы объектов. Это тоже коллекции. Например, для справочников имеется свое свойство.

Метаданные 1С

Которое, также является коллекцией.

Метаданные 1С

В этой коллекции содержатся все объекты метаданных, которые входят в ветку Справочники дерева конфигурации 1С.

Мы можем прочитать свойство того или иного объекта метаданных. Например, длину кода у справочника Валюта.

Метаданные 1С

Поскольку свойство Метаданные и его свойства, которые соответствуют прототипам, являются коллекциями, то их можно обойти циклом.

Например, обойдем циклом справочники и выведем имя справочника, синоним и длину кода.

Для Каждого стрСправочника из Метаданные.Справочники Цикл 
		
	Сообщить("Имя " + стрСправочника.Имя + 
			 ", синоним: " + стрСправочника.Синоним + 
			 " (длина кода: " + стрСправочника.ДлинаКода + ")");
		
КонецЦикла;	

В учебной конфигурации, у этого кода будет следующий результат.

Метаданные 1С

Обратите внимание, что этот код должен выполняться в серверном контексте (или в клиентском на толстом клиенте), поскольку у свойства Метаданные доступность Сервер, Толстый клиент и т.д.

Метаданные 1С

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

Например, к реквизитам конкурентного справочника можно обратиться так:

РеквизитыСправочника = Метаданные.Справочники.Контрагенты.Реквизиты;

А к реквизитам конкурентного документа – так:

РеквизитыДокумента = Метаданные.Документы.ЗакупкаТоваров.Реквизиты;

Получаемые реквизиты являются коллекцией, которая содержит все реквизиты объекта. Её также можно обойти циклом и прочитать тот или иной реквизит.

РеквизитыДокумента = Метаданные.Документы.ЗакупкаТоваров.Реквизиты;
	
Сообщить("Выводим реквизиты документа " + Метаданные.Документы.ЗакупкаТоваров.Синоним); 
	
Для Каждого стрРеквизит из РеквизитыДокумента Цикл 
		
	Сообщить("	Имя: " + стрРеквизит.Имя + ", синоним " + стрРеквизит.Синоним);
		
КонецЦикла;	

Результат работы этого кода в учебной конфигурации будет следующим.

Метаданные 1С

Некоторые свойства объектов имеют перечисленный тип, т.е. перечисление определенных значений.  Например, у документов имеется свойство Проведение. У этого свойства есть несколько значений: Разрешить и Запретить. Свойство Проведение и является перечисленным типом.

Перечисленный тип 1С

При помощи свойства глобального контекста Метаданные  мы можем проверить какое значение перечисленного типа установлено у того или иного объекта. Для этого нужно воспользоваться свойством СвойстваОбъектов. Оно содержит в себе все перечисленные типы и их значения.

Перечисленный тип 1С

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

Для Каждого стрДокумент Из Метаданные.Документы Цикл 
		
	Сообщить("Выводим " + стрДокумент.Представление() + "(" + стрДокумент.ПолноеИмя() + ")");
		
	Если СтрДокумент.Проведение = Метаданные.СвойстваОбъектов.Проведение.Разрешить Тогда 
		Сообщить(Символы.Таб + "Документ можно проводить");
	ИначеЕсли СтрДокумент.Проведение = Метаданные.СвойстваОбъектов.Проведение.Запретить Тогда  
		Сообщить(Символы.Таб + "Документ нельзя проводить");
	КонецЕсли;	
		
КонецЦикла;

Перечисленный тип 1С

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

Читайте также по теме:

Объект в 1С

Ссылка в 1С

Более подробно и основательно начальные вопросы программирования в 1С есть вы можете изучить в
Книга «Программировать в 1С за 11 шагов»

Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»

Программировать в 1С за 11 шагов

Книга написана понятным и простым языком — для новичка.

  1. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  2. Научитесь понимать архитектуру 1С;
  3. Станете писать код на языке 1С;
  4. Освоите основные приемы программирования;
  5. Закрепите полученные знания при помощи задачника

О том как разрабатывать под управляемым приложением 1С, читайте в книге Книга «Основы разработки в 1С: Такси»

Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

Основы разработки в 1С такси
  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Промо-код на скидку в 15% — 48PVXHeYu

Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog


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

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Вступайте в мои группы:

Вконтакте: https://vk.com/1c_prosto
Фейсбуке: https://www.facebook.com/groups/922972144448119/
ОК: http://ok.ru/group/52970839015518
Твиттер: https://twitter.com/signum2009

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

Для вызова этого режима следует выбрать пункт «Поиск во всех текстах» в меню «Конфигурация» главного меню Конфигуратора. На экран будет выдан диалог для задания параметров поиска.

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

Чтобы различать при поиске прописные и строчные буквы, установите флажок «Учитывать регистры». При установленном флажке «Искать целые слова» будут найдены только целые слова, а не части слов.

Группа «Искать в» позволяет указать, где следует искать указанный образец. Если все флажки отключены, поиск производиться не будет.

Нажатие кнопки «Дополн.>>» открывает управляющие элементы для включения в поиск внешних отчетов и обработок.

Флажки «Искать в конфигурации» и «Искать во внешних отчетах и обработках» позволяют выбрать область поиска. Если оба флажка сняты, поиск выполняться не будет.

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

Для начала поиска следует нажать кнопку «Искать». В процессе поиска в окно «Список найденных вхождений» будут выдаваться строки, содержащие указанную последовательность символов.

В любого момента можно процесс поиска прервать, нажав клавишу Esc. На экран будет выдан запрос «Прервать выполнение обработки?», в котором можно подтвердить прекращение поиска, ответив «Да», или продолжить его.

По окончании поиска в окне «Список найденных вхождений» будет выдан список найденных вхождений искомой строки.

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

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

На экран будет выдан диалог «Замена во всех текстах».

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

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

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

Назначение кнопок этого диалога достаточно простое:

·        кнопка «Закрыть» закрывает диалог;

·        кнопка «Заменить» выполняет замену в текущей строке и переходит к следующей строке списка найденных вхождений;

·        кнопка «Пропустить» выполняет переход к следующей строке списка найденных вхождений без выполнения замены в текущей строке;

·        кнопка «Для всех» выполняет замену сразу для всех строк списка найденных вхождений.

   Gorr

16.05.21 — 13:46

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

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

Всем спасибо заранее!!!

   acanta

1 — 16.05.21 — 13:48

Правой кнопкой мыши — перейти.. не работает?

   Gorr

2 — 16.05.21 — 13:52

(1) просьба не спаммить

   ildary

3 — 16.05.21 — 13:53

(0) речь идёт о переходе из редактора по строке типа «РегистрСведений.АдресныеОбъекты.Форма.ЗагрузкаАдресногоКлассификатора»? Это умеют Снегопат и TurboConf (и возможно EDT), а конфигуратор — нет.

   Gorr

4 — 16.05.21 — 13:55

(3) Возможно то, что надо. Что из предложенного проще?

   Gorr

5 — 16.05.21 — 13:56

строка в данном случае «Справочник.ШтатноеРасписание.ФормаОбъекта»

   ildary

6 — 16.05.21 — 13:57

(4) И Снегопат и TurboConf — платные. Снегопат сейчас в глубокой бете (переход на x64 версию). На мой взгляд — проще TurboConf (плюс его автор оперативно отвечает и решает проблемы. Про EDT промолчу.

   ildary

7 — 16.05.21 — 13:58

На всякий случай про наличие этой функции (открытие по строке) — лучше уточнить у автора TurboConf (или скачать демку — месяц бесплатно). Я давно не использовал TurboConf, могу ошибаться.

   Gorr

8 — 16.05.21 — 14:01

(7) спасибо огромное за информацию!

   ildary

9 — 16.05.21 — 14:02

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

   Gorr

10 — 16.05.21 — 15:20

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

   pechkin

11 — 16.05.21 — 16:14

Ctrl + t

   Gorr

12 — 16.05.21 — 16:52

(11) это для модуля

   vde69

13 — 16.05.21 — 17:18

F12 часом не работает?

   ДедМорроз

14 — 16.05.21 — 17:30

F12 работает для модулей и для описания объектов,для форм не всегда.

   Gorr

15 — 16.05.21 — 17:42

Для тех, кто не понял вопроса.

Вопрос был про переход к объекту конфигурации в дереве методанных из модуля с текстом 1С:

ОткрытьФорму(«Справочник.ШтатноеРасписание.ФормаОбъекта», ПараметрыОткрытия, ЭтотОбъект, УникальныйИдентификатор);

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

Проверил Снегопат — работает, но сначала открывается навигатор методанных, а потом по нему еще над кликнуть (лишнее действие) и вместо перехода в дереве метаданных открывается сама форма. Конечно это не совсем то, но работает.

   Гений 1С

16 — 16.05.21 — 17:50

вот как из расширения перейти к оригинальному модулю/форме по хоткею, знает кто?

   Gorr

17 — 16.05.21 — 17:52

(16) тоже интересный вопрос. Походу удобством работы разработчика мало кто занимается…

   ildary

18 — 16.05.21 — 18:21

(17) На Селезнёвке считают, что программисты денег не приносят, поэтому зачем для них стараться?

   RomanYS

19 — 16.05.21 — 19:06

(16) В модуле встать на заголовок процедуры и F12

   Гений 1С

20 — 16.05.21 — 19:23

(18) 1С движется к NOCODE, попомните мои слова. гыгыгы

   Гений 1С

21 — 16.05.21 — 19:23

(19) спасибо, попробую

   ildary

22 — 16.05.21 — 19:51

(18) топикстартеру нужен не переход с заголовка процедуры, а переход с текста «Справочник.ИмяСправочника.ФормаСписка» — на форму в дереве метаданных.

   pechkin

23 — 16.05.21 — 21:51

(20) движутся конечно, только кода все больше и больше

   DJ Anthon

24 — 17.05.21 — 02:30

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

   Cthulhu

25 — 17.05.21 — 03:00

(24): конфигуратор — edt:script — конфигуратор

  

SiAl-chel

26 — 17.05.21 — 07:49

(0) Ctrl+T.

Собрали 20 лайфхаков, которые используют наши программисты при работе с 1С. Формы, контрагенты, СКД, процедуры, глюки платформы и многое другое в одном месте. Пользуйтесь и делитесь с друзьями.

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

Рассмотрим решение задачи на примере формы документа, у которого имеется табличная часть «Заказ-наряды».

1. На форме документа на командную панель табличной части «Заказ-наряды» добавляем кнопку подбора и прописываем её код:

Процедура ПодборНарядов(Кнопка)
    Форма = Документы.ЗаказНаряд.ПолучитьФормуВыбора(, ЭлементыФормы.ЗаказНаряды, ЭтотОбъект);
    Форма.ЗакрыватьПриВыборе = Ложь;
    Форма.Открыть();
КонецПроцедуры

2. Далее у табличной части находим событие «ОбработкаВыбора» и прописываем для него код:

Процедура ЗаказНарядыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;
    
    Если ТипЗнч(ВыбранноеЗначение) = Тип("ДокументСсылка.ЗаказНаряд") Тогда
        Если ЗаказНаряды.НайтиСтроки(Новый Структура("ЗаказНаряд", ВыбранноеЗначение)).Количество() = 0 Тогда
            НоваяСтрока = ЗаказНаряды.Добавить();
            НоваяСтрока.ЗаказНаряд = ВыбранноеЗначение;

            // также здесь можно выполнить дополнительные обработки
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры

Есть список контрагентов, нужно быстро узнать их коды в базе

Делаем такой запрос где в кавычках прописываем список наименований контрагентов (должен 100% совпадать с названиями контрагентов в базе):

20 лайфхаков 1С для разработчиков

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

СКД. Параметр с указанным именем не найден

В СКД если при открытии отчета выходит ошибка «Параметр с указанным именем не найден», то это может быть глюк платформы. Чтобы его исправить, заходим в схему компоновки данных и на вкладке «Параметры» изменяем для нужного параметра поле «Значение» — очищаем его если заполнено или заполняем если оно пустое. Сохраняем отчет, запускаем его, затем возвращаем всё восвояси и заново запускаем отчёт.

20 лайфхаков 1С для разработчиков

СКД. Как вывести документ в виде: Г00001 от 01.01.2019, чтобы по двойному клику его можно было открыть

По умолчанию документы в СКД выводятся в следующем виде:

20 лайфхаков 1С для разработчиков

Мы сделаем его красивым и сокращенным:

20 лайфхаков 1С для разработчиков

Для этого нужно прописать следующее выражение в колонку «Выражение представления» по этому полю:

20 лайфхаков 1С для разработчиков

Быстрый поиск по фразе в коде (CTRL+F3)

Если в коде нужно быстро найти какую-то фразу, можно выделить её и нажать CTRL + F3, тогда она автоматически подставится в поле поиска сверху и нажатием F3 можно будет переходить по всем местам этой фразы в коде.

20 лайфхаков 1С для разработчиков

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

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

Бывает так что имя процедуры слишком длинное или оно устарело. А чтобы его поменять – нужно изменить и название процедуры в коде и исправить её название в обработчике события.

Для быстрого изменения же следует делать это в поле с именем процедуры в событии. При изменении 1С предложит поменять имя процедуры:

20 лайфхаков 1С для разработчиков

И при нажатии «Да» имя процедуры изменится и в коде. Таким образом можно быстро выполнять рефакторинг.

Как разрешить выбирать в поле на форме номенклатуру только типа «Комплект» (или другое условие)

Рассмотрим на примере документа «Изменение состава комплекта» из сертификационного экзамена 1С: Специалист по платформе. У него есть реквизит «Комплект» с типом «Номенклатура». Нужно сделать так чтобы в этом поле пользователь мог выбирать номенклатуру только с видом номенклатуры «Комплект».

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

20 лайфхаков 1С для разработчиков

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

Отладка COM соединения

Отлаживать COM соединение можно ставя в ключевые места в коде во внешней базе примерно такие блоки:

ТекстовыйФайл = Новый ТекстовыйДокумент;
ТекстовыйФайл.ДобавитьСтроку("Тип параметра распознан верно, это наряд на отгрузку");
ТекстовыйФайл.Записать("UserPCshared_folderЗадачиLog_1.txt");

И затем после вызова этой процедуры через COM соединение проверять наличие файла в каталоге. Если его нет, значит до этой точки код даже не дошёл. В текстовый файл при этом можно добавлять любые фразы и по несколько строк. Также можно сделать единый log файл в который прописывать весь алгоритм работы COM соединения в ключевых его местах.

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

Чтобы запускать 1С в режиме отладки из конфигуратора от имени другого пользователя, можно задать нужного пользователя в параметрах конфигуратора (меню Сервис – Параметры) на вкладке «Запуск 1С: Предприятия»:

20 лайфхаков 1С для разработчиков

Как вернуть реквизит в тоже состояние, в котором оно было до его изменения?

Очень просто, получаем его запросом. Для этого удобно воспользоваться типовой функцией БСП «ЗначениеРеквизитаОбъекта»:

20 лайфхаков 1С для разработчиков

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

Как ускорить запрос заменив оператор ИЛИ объединением

Запрос будет работать значительно быстрее, если в выборке из большой таблицы не использовать оператор ИЛИ в условие ГДЕ или в условии соединения, а заменить это на объединение результатов двух запросов:

20 лайфхаков 1С для разработчиков

Как можно писать структуру короче

Закоментированный вариант длиннее:

20 лайфхаков 1С для разработчиков

Как быстро посмотреть параметры вызываемой процедуры

Находясь курсором на параметре процедуры хорошо было бы понять, какой параметр в процедуре заполняет данная переменная:

20 лайфхаков 1С для разработчиков

Сделать это просто. Нажимаем в этот момент CTRL + Shift + Пробел и вот что видим:

20 лайфхаков 1С для разработчиков

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

Подсветка выделенных переменных в коде

Можно сделать так чтобы, поставив курсор на какую-нибудь переменную видеть все места её использования в коде:

20 лайфхаков 1С для разработчиков

Для этого в конфигураторе через меню сервис-параметры во вкладке «Модули» настраиваем цвет для текущего идентификатора:

20 лайфхаков 1С для разработчиков

Как находить быстро нужные объекты в дереве метаданных

В дереве метаданных сверху есть поле для ввода. В него можно вводить искомые объекты. Главный лайфхак в том, что слова можно вводить частями и с пробелами:

20 лайфхаков 1С для разработчиков

Более короткий вариант условия ИЛИ

Можно писать так:

20 лайфхаков 1С для разработчиков

А можно писать так (это идентично, но более читаемо):

20 лайфхаков 1С для разработчиков

Быстрый просмотр временных таблиц запроса

На управляемых формах есть консоль запросов, которая позволяет смотреть данные всех временных таблиц:

20 лайфхаков 1С для разработчиков

Её без проблем можно найти в свободном доступе в интернете. И не нужно тратить время на комментирование и выполнение запроса по частям.

Как найти элемент на обычной форме если на ней куча элементов?

Заходим в меню «Форма» — «Список элементов управления формы…» в результате появится окно со списком всех элементов формы. Здесь можно выполнить поиск по CTRL+F (и продолжить поиск нажимая F3), а щелкнув на элемент он отобразится на самой форме.

20 лайфхаков 1С для разработчиков

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

Нажав CTRL+Shift+T можно открыть окно шаблонов текста. На просторах интернета есть замечательный набор шаблонов от Павла Чистова, я использую его уже более 5 лет и всем рекомендую его поставить, а от стандартных шаблонов отказаться.

Фишка в том, что файл шаблонов можно изменять. Рассмотрим добавление шаблона:

20 лайфхаков 1С для разработчиков

С помощью текст <?> задается куда будет установлен курсор после замены.

Таким образом фраза ПарОтб автоматом будет заменяться на этот кусок кода. Кстати, в справке хорошо написано какие возможности по созданию шаблонов предоставляются разработчику.

А чтобы шаблоны работали (автоматически заменяя введенный текст ПарОтб на всю конструкцию, описанную в шаблоне), необходимо в настройках конфигуратора включить автозамену (сервис – параметры – модули – автозамена — включить с подсказкой).

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

Понравилась статья? Поделить с друзьями:
  • Как найти вещество по атомной массе
  • Как найти площадь пола юрты
  • Как составить личный баланс
  • Как в outlook найти письмо по тексту
  • Как найти размер браслета