# Функция *parseSnippets* ## Назначение функции Функция для загрузки шаблонов кода (сниппетов) в формате 1С:Предприятия ## Параметры функции * **stData** - *string*, текстовое содержимое файла шаблона .st * **unionSnippets** - *boolean*, признак объединения ранее загруженных или стандартных шаблонов кода с шаблонами, переданными для загрузки. Значение по умолчанию: `false` ## Пример вызова ```javascript // Загрузка шаблонов с полной заменой parseSnippets('{0,{"Пока",0,0,"Пока","Пока Цикл......'); // Загрузка шаблонов с объединением parseSnippets('{0,{"Пока",0,0,"Пока","Пока Цикл......', true); ``` ## Особенности реализации 1. В списке подсказок появляются только те шаблоны кода, у которых в 1С заполнено поле `Автоматически заменять строку`. 2. В стандартных шаблонах 1С для списка выбора есть возможность указывать представление значение и само вставляемое значение, например, так: ```bsl ", "СрезПервых", ".СрезПервых()", "СрезПоследних", ".СрезПоследних()"> ``` При выборе значения `Основная таблица` в код фактически не вставляется ничего, а просто происходит перемещение курсора в текущую позицию. К сожалению, редактор не позволяет реализовать такую схему, поэтому указанный выше шаблон преобразуется в выбор из двух значений, а именно `СрезПервых` и `СрезПоследних`. 3. Шаблон `ДатаВремя` всегда преобразуется в текущую дату в формате `dd.MM.yyyy HH:mm:ss` 4. Шаблоны, предназначенные для выбора объекта метаданных, такие как `Справочник`, `Документ`, `РегистрСведений` и подобные преобразуются в список выбора соответствующих объектов. Если метаданные ранее не были загружены через функцию [`updateMetadata`](update_metadata.md), тогда при активизации сниппета в списке подсказок происходит генерация события [`EVENT_GET_METADATA`](get_metadata_event.md) после обработки которого в 1С следует дополнительно вызвать метод [`updateSnippetByGUID`](update_snippet_guid.md) 5. Синтаксис шаблона `ОбъектМетаданных` поддерживается частично, а именно поддерживается выбор только "корневых" объектов метаданных, предназначенных для хранения какой-либо информации, а именно `Справочник`, `Документ`, `РегистрСведений` и т.п. Ниже приведены шаблоны с выбором объекта метаданных в формате 1С, а также конечный результат, получаемый при загрузке в редактор: ```bsl // Преобразуется к выбору регистра сведений // Преобразуется к выбору всех справочников и документов // Табличные части, формы, измерения/ресурсы регистров и прочие объекты не обрабатываются // Преобразуется к выбору всех справочников // В указанных ниже шаблонах будет подставлено слово "ОбъектМетаданных" ``` 6. При выборе шаблона `ТекстЗапроса` происходит генерация события `EVENT_QUERY_CONSTRUCT`. 7. При выборе шаблона `ФорматнаяСтрока` происходит генерация события `EVENT_FORMAT_CONSTRUCT`. 8. При выборе шаблона `ВыборТипа` происходит генерация события `EVENT_TYPE_CONSTRUCT`. 9. При выборе шаблона `КонструкторОписанияТипов` происходит генерация события `EVENT_TYPEDESCRIPTION_CONSTRUCT`. 10. Перечисленные ниже шаблоны никак не обрабатываются, а просто вставляются в код с аналогичным именем переменной: * ВыборТипа * ЖурналДокументов * ЗначениеПеречисления * ИмяПользователя * ПолноеИмяПользователя * ИмяПользователяХранилищаКонфигурации * КонструкторОписанияТипов * КритерийОтбора * Перерасчет * ПланВидовРасчетаПредопределенныеДанные * ПланВидовХарактеристикПредопределенныеДанные * ПланСчетовПредопределенныеДанные * Последовательность * СправочникПредопределенныеДанные