Консоль кода для управляемых форм

Публикация № 1266087 17.07.20

Разработка - Инструментарий разработчика - Прочие инструменты разработчика

Консоль редактор кода подсветка синтаксиса автокомплит.

Консоль кода для управляемых форма с подсказками и подсветкой синтаксиса.

Очередная попытка заменить родной конфигуратор, EDT, снегопат и консоль кода из инструментов разработчика. Шутка, конечно!
Попалось мне на глаза недавно вот это видео и что-то мне так понравилось, что захотелось сделать что-то подобное, но для встроенного языка.
В итоге получилось плохо, но работает! :-)

Для работы требуется версия платформы не ниже 8.3.14.1565

Основные возможности:

1. Подсветка синтаксиса языка 1С

Подсветка синтаксиса

2. Автокомплит для глобальных перечислений и функций, метаданных и объектов метаданных

Автокомплит

И еще много другое (осторожно, картинки):
 

Нужна ли вообще консоль кода в управляемом приложении? Тут пусть каждый решает для себя. Кстати, есть статья на эту тему.

Благодарности:

Выражаю благодарность команде 1c-syntax и их проекту для VSCode за подробное описание внутренних конструкций языка в JSON. Без этого проект вряд ли бы ушел дальше простой подсветки синтаксиса. Еще хочу поблагодарить Александра Кунташова за ссылочку на видео в его Telegram-канале и саму идею, а также проект vanessa-automation за само видео.

Уверен, что всё можно реализовать гораздо лучше. Критика и предложения горячо приветствуются!

Тестировалось в следующих условиях:

ОС Windows 10 x64, релизы платформы 8.3.15.1830, 8.3.16.1148, 8.3.17.1386, 8.3.18.891

Исходники:

Исходники можно взять тут https://github.com/salexdv/bsl_console

Известные проблемы:
  • На платформах до 8.3.16 могут не работать горячие клавиши CTRL+C, CTRL+V и CTRL+Z и т.п.
  • На платформах до 8.3.18 команды копировать/вставить работают только в пределах окна редактора
  • В веб-клиенте недоступно любое взаимодействие редактора и 1С. Можно попробовать только набор кода. Иногда для этого в браузере надо предварительно открыть данную ссылку
  • Работа в linux на данный момент не поддерживается.
  • Из-за особенностей реализации подсказка через точку для реквизитов ссылочного типа работает только тогда, когда подсказываемый реквизит выбран через Enter
История изменений:
 

Скачать файлы

Наименование Файл Версия Размер
console.epf

.epf 1,22Mb
342
.epf 20210722 1,22Mb 342 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. tormozit 6348 17.07.20 10:11 Сейчас в теме
Круто. Не увидел возможности простой обработки событий автодополнения (подсказки) в коде 1С. Поэтому писать сложный вычислитель свойств/методов через точку в таком виде будет очень накладно.
10. salexdv 2002 17.07.20 10:42 Сейчас в теме
(1) Что имеется в виду? Есть подсказка полей и методов для объектов полученных вот так
АвансовыйОтчет = Документы.АвансовыйОтчет.НайтиПоНомеру("XXX");

Но там довольно примитивное определение. Ищем чтобы в выражении присваивания были сами метаданные, например "Документы", объект метаданных и метод этого объекта. Для простоты считается, что все методы возвращают ссылку/объект.
Полноценные подсказки сделать, конечно, очень сложно.
14. kuntashov 418 17.07.20 11:11 Сейчас в теме
Круто! Исходников самой обработки почему-то на гитхабе нет в репозитории, логично было бы все вместе положить.
Evg-Lylyk; artbear; +2 Ответить
19. salexdv 2002 17.07.20 11:13 Сейчас в теме
(14) Точно. Выложу чуть позже в релизах
195. DrAku1a 1446 30.08.20 17:24 Сейчас в теме
(10) Полагаю, имеется в виду подсказка по процедурам и функциям модулей, как реализовано в "Инструментах разработчика" (на обычных формах). Для управлялок - это сложный момент.
2. pm74 196 17.07.20 10:13 Сейчас в теме
Отлично сделано,
А с консолью запросов почему проблемы?
9. salexdv 2002 17.07.20 10:38 Сейчас в теме
(2) С консолью нет никаких проблем, просто это отдельная тема. Можно взять любую для управляемых форм и добавить сюда, лишь бы она возвращала текст запроса.
15. pm74 196 17.07.20 11:11 Сейчас в теме
(9)
можно использовать стандартный
    Конструктор = Новый КонструкторЗапроса;
    ВыделенныйТекст = Элементы.ТекстАлгоритма.ВыделенныйТекст;
    ВесьТекст = Элементы.ТекстАлгоритма.ТекстРедактирования;
    НайтиВесьТекстВКавычках (ВыделенныйТекст,ВесьТекст);
    Конструктор.Текст = СтрЗаменить(ВыделенныйТекст ,"|",""); 
    ДополнительныеПараметры = Новый Структура("ПервыйВызовКонструктора,ВесьТекст,ВыделенныйТекст",СтрНайти(ВыделенныйТекст,"ВЫБРАТЬ")=0,ВесьТекст,ВыделенныйТекст);
    Оповещение = Новый ОписаниеОповещения("ПолучитьТекстЗапроса",ЭтотОбъект,ДополнительныеПараметры);
    Конструктор.Показать(Оповещение);

Показать
adhocprog; tsmult; salexdv; +3 Ответить
22. salexdv 2002 17.07.20 11:18 Сейчас в теме
(15)
можно использовать стандартный

Век живи - век учись! Не знал про такое, постараюсь попозже попробовать. Спасибо!
3. login1020 94 17.07.20 10:17 Сейчас в теме
Добрый день, клиент windows, сервер Linux. Заведется?
8. salexdv 2002 17.07.20 10:36 Сейчас в теме
(3) Добрый день! Да должно работать. Вся основная часть работает на клиенте. На сервере только при старте извлекается информация по объектам метаданных, чтобы использовать в подсказках.
4. Поручик 4518 17.07.20 10:18 Сейчас в теме
Ужос, сколько времени потрачено. И всё ради того, чтобы накидать несколько строк и выполнить. Лучше бы сделали нормальный перенумератор.
tindir; DrAku1a; Gureev; sasha777666; Evg-Lylyk; +5 14 Ответить
35. salexdv 2002 17.07.20 12:53 Сейчас в теме
(4) Иногда время действительно тратится впустую. Будет ли нужна данная разработка, время покажет. Лично я в процессе получил удовольствие, что уже неплохо.
Sanario; rpgshnik; adhocprog; Dosperanso; Gorus; eden_gmail; _7445_; gigapevt; CyberCerber; JohnyDeath; Rustig; +11 Ответить
65. Rustig 1836 19.07.20 17:49 Сейчас в теме
(35) а) я немного о другом хотел бы спросить: есть ли возможность программировать для 1с на коленке с планшета - в каком-нибудь текстовом редакторе, не используя 1 Гб платформы и 5 Гб конфигурации?

б) можно ли ваш редактор вынести в интернет, работая в нем в тонком клиенте или веб-клиенте (последний предпочтительнее, чтобы попробовать программировать на коленке с планшета)?
66. salexdv 2002 19.07.20 20:27 Сейчас в теме
(65) в теории можно сделать сайт, заходя на который из любого современного браузера возможно будет набирать код с подсветкой и подсказками, а еще делиться своим кодом с другими, аля https://pastebin.com/. Точно был сервис, сейчас не вспомню названия, где можно было 1С-ный код расшарить, но там была чисто раскраска кода. Было бы отлично всё это сделать на базе Инфостарта, чтобы долго не вспоминать адрес сайта. Какой-нибудь https://code.infostart.ru. Сам я такой сайт сделать могу, но нужно время, которого практически нет.
Cherkashin_V; json; CyberCerber; cleaner_it; +4 Ответить
79. hamsar 14 22.07.20 19:14 Сейчас в теме
194. salexdv 2002 21.08.20 16:09 Сейчас в теме
(65) Вот что-то подобное. Программированием в полном смысле я бы это не назвал, но на коленке с планшета записать можно.
5. CyberCerber 852 17.07.20 10:30 Сейчас в теме
Круто, спасибо! Когда увидел ту новость по Ванессе, тоже сразу об этом подумал, но руки не дошли...
DmitrySinichnikov; +1 Ответить
6. CyberCerber 852 17.07.20 10:32 Сейчас в теме
А на гитхабе выложили только веб- составляющую обработки?
7. salexdv 2002 17.07.20 10:35 Сейчас в теме
(6) Да. Это собственно лежит в макете обработки, извлекается на клиенте и запускается в поле HTML-документа
11. awk 728 17.07.20 10:43 Сейчас в теме
А можно использовать в своих проектах? Какая лицензия?
12. salexdv 2002 17.07.20 10:54 Сейчас в теме
(11) Конечно, можно. MIT
gigapevt; DmitrySinichnikov; JohnyDeath; PowerBoy; awk; pm74; +6 Ответить
20. pm74 196 17.07.20 11:15 Сейчас в теме
(12) вот спасибо , хотел уже сам что то монстрить , а тут такая годнота
DmitrySinichnikov; +1 Ответить
23. salexdv 2002 17.07.20 11:20 Сейчас в теме
(20) Можно и своё сделать. Даешь больше редакторов красивых и умных! :-) Возможно ваш будет круче и это хорошо.
DmitrySinichnikov; +1 Ответить
26. pm74 196 17.07.20 11:37 Сейчас в теме
(23)
Возможно ваш будет круче

вряд ли , да и зачем велосипед изобретать , просто закрою одну из задач
13. frkbvfnjh 609 17.07.20 10:58 Сейчас в теме
А кто знает как достать просто список всех встроенных процедур и функций 1С на русском и английском? А еще лучше все типы и методы всех объектных типов
16. salexdv 2002 17.07.20 11:11 Сейчас в теме
36. frkbvfnjh 609 17.07.20 13:09 Сейчас в теме
17. tormozit 6348 17.07.20 11:12 Сейчас в теме
(13) В ИР есть общая форма "ирОбновлениеОписанияПлатформы". Там все есть, кроме пока английских имен (для экономии размера не стал их доставать). Она извлекает описание платформы из той версии платформы, на которой запущено клиентское приложение.
JohnyDeath; artbear; pm74; salexdv; Evg-Lylyk; +5 Ответить
37. frkbvfnjh 609 17.07.20 13:10 Сейчас в теме
18. informa1555 2057 17.07.20 11:13 Сейчас в теме
70. GarickRus 20.07.20 09:49 Сейчас в теме
(18) Хорошо бы прикрутить к Simpl-у
72. informa1555 2057 20.07.20 11:00 Сейчас в теме
(70) Да, было бы не плохо если автор не против
73. salexdv 2002 20.07.20 11:16 Сейчас в теме
21. zarankony 17.07.20 11:17 Сейчас в теме
Круто, но работает не везде: на файловой пашет, на терминале нет, дело скорее всего в правах доступа. прикручу к своей Консоли запросов с исполнением кода, если Вы не против. В Вашей обработке бы не помешала таблица с параметрами, которые можно выбирать из данных.
24. salexdv 2002 17.07.20 11:32 Сейчас в теме
(21) Надо смотреть что происходит при открытии обработке. Вообще во всех основных современных браузерах по умолчанию блокируется загрузка локальных файлов, а именно в таких файлах лежит описание синтаксиса языка. Поэтому, чтобы работало в том же Chome, его надо запустить с ключом --allow-file-access-from-files. Я ожидал, что в 1С-ке по умолчанию не заработает и тогда файлы с синтаксисом надо будет выносить на внешний сервер, но нет, всё запустилось. А вот в Linux уже работать не хочет, видимо по этой самой причине.
Я не против использования.
25. Pr-Mex 131 17.07.20 11:35 Сейчас в теме
27. leosoft 152 17.07.20 11:41 Сейчас в теме
1. А как свои сниппеты создавать?

2, создал Сотрудники = Справочники.Сотрудники.НайтиПоКолу("000001"):

а далее ввожу Справочники. и почему-то ничего не выскакивает?
28. salexdv 2002 17.07.20 11:50 Сейчас в теме
(27) 1. Макет обработки это архив. Снипетты лежат в файле snippets.json. Можно добавить туда, перепаковать и вложить обновленный файл в макет. На лету создание сниппетов не предусмотрено.
2. Какого поведения вы ждете? Для выражения "Справочники." подсказка показывается я проверил. для "Сотрудники." тоже должна. Возможно, у вас опечатка НайтиПоКолу
29. leosoft 152 17.07.20 11:57 Сейчас в теме
(28) НайтиПоКоду - это у меня правильно сгенерировалось...
Сейчас по новой запустил - заработало! Чудеса!
30. salexdv 2002 17.07.20 12:00 Сейчас в теме
(29) Ну на самом деле может и не чудеса, а обычные глюки и недоработки. Версия пока еще достаточно сырая.
31. the1 894 17.07.20 12:26 Сейчас в теме
Очень круто! Спасибо!

Заметил, что в подсказку не попадают табличные части. Так задумано или это баг?
Прикрепленные файлы:
32. salexdv 2002 17.07.20 12:28 Сейчас в теме
(31) Не баг, просто не реализовано. В задумках есть, чтобы попадали
33. Evg-Lylyk 3511 17.07.20 12:33 Сейчас в теме
Здорово, спасибо за работу
Мне кажется заголовок публикации нужно уточнить указав VSCode, подсветку синтаксиса, контекстную подсказку
Сейчас из заголовка кажется очередная консоль кода ничего примечательного
JohnyDeath; ilya.rudziak; +2 Ответить
34. salexdv 2002 17.07.20 12:46 Сейчас в теме
(33) Спасибо за отзыв! Подсказка и подсветка и так указаны в описании, которое видно и в поиске и в обычном списке разработок, да и мне самому не кажется, что консоль чем-то необычна. Думаю, что в ней еще полно глюков и недоработок. Та же консоль из инструментов разработчика умеет гораздо больше, хоть по ощущениям немного медленнее, правда там обычные формы, насколько я помню.
38. artbear 1365 17.07.20 14:05 Сейчас в теме
39. salexdv 2002 17.07.20 14:09 Сейчас в теме
40. orefkov 2117 17.07.20 14:14 Сейчас в теме
Что использовали для редактора? Ace, Codemirror, Monaco?
Хотя, судя по внешнему виду, это Monaco от VCS?
42. salexdv 2002 17.07.20 14:40 Сейчас в теме
46. salexdv 2002 17.07.20 14:57 Сейчас в теме
(40) Александр, у вас опыт в этой области просто огромный. Может сделаете свою "тонкую" версию снегопата?
56. orefkov 2117 17.07.20 19:02 Сейчас в теме
(46) Не-не-не, мне теперь и со снегопатом забот хватает :)
Я бы лучше наоборот сделал - в Конфигураторе прикрутил Monaco, благо ПолеHTMLДокумента и там доступно, но понятно, что релизы до 8.3.14 пролетают, то есть такое себе EDT наоборот :)
Il; Cmapnep; artbear; +3 Ответить
57. artbear 1365 17.07.20 19:10 Сейчас в теме
(56) Думаю, что релизы до 8.3.14 достаточно быстро устареют и разработчикам будет доп.стимул заюзать новые версии платформы )
41. Yashazz 3882 17.07.20 14:15 Сейчас в теме
Тоже собирался монстрить подобно, на основе форматированного документа, но руки не доходили. И всё время казалось, что ну вот ещё чуть-чуть, и в очередной платформе это появится как штатная возможность...
44. salexdv 2002 17.07.20 14:42 Сейчас в теме
(41) Не думаю, что будет штатная возможность в режиме клиента, хотя кто знает, кто знает.
49. Yashazz 3882 17.07.20 15:42 Сейчас в теме
(44) А вот как им всерьёз надоест, например, с кодом в КД 3.0 мучиться, так и сделают)
43. cprit 602 17.07.20 14:41 Сейчас в теме
Начал делать такое в универсальных инструментах на базе ace редактора. Но до подсказок метаданных руки не дошли. Теперь перейду на этот механизм
Спасибо, очень крутое решение
45. salexdv 2002 17.07.20 14:50 Сейчас в теме
(43) Monaco editor просто используется в VSCode и у него очень крутой API. Попробуйте, может даже что-то своё придумаете еще круче и еще функциональнее.
47. artbear 1365 17.07.20 15:11 Сейчас в теме
(45) Поздравляю, насколько я понимаю, Вы первый в мире 1С, который сделал и выложил в открытый доступ технологию подключения Монако к инструментарию 1С.

Все остальные уже будут вторыми )

Повторюсь - очень круто!
sikuda; PowerBoy; zeegin; Evg-Lylyk; +4 Ответить
48. salexdv 2002 17.07.20 15:30 Сейчас в теме
(47) Думаю, что первым всё таки был Леонид и проект vanessa-automation. Я просто подсмотрел :-)
50. artbear 1365 17.07.20 15:48 Сейчас в теме
(48) Он был первым в видео, а Вы первый дали готовый код в опенсорс. Это важное достижение.
51. artbear 1365 17.07.20 15:49 Сейчас в теме
(0) я правильно понимаю, что будет работать только на 8.3.14 и выше?
52. salexdv 2002 17.07.20 16:17 Сейчас в теме
53. Mortum 17.07.20 16:57 Сейчас в теме
Но зачем? У кого-то конфигуратор отобрали?)
54. salexdv 2002 17.07.20 17:04 Сейчас в теме
(53) Сценарии использования каждый может придумать свои. Если оно вам не надо, никто не настаивает.
55. zeegin 97 17.07.20 18:01 Сейчас в теме
Мне кажется очень круто, молодец!

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

Из очевидных минусов:
- Копировать на клиент исполняемые файлы перед загрузкой в вебкит - это плохо и небезопасно.
- Практически нет взаимодействия с 1С:Предприятием.
58. salexdv 2002 17.07.20 20:32 Сейчас в теме
(55) Спасибо за отзыв! Когда JS часть была готова, если это можно назвать готовность, я размышлял по поводу того, как это прикрутить к 1С. Был вариант не тащить всё на клиент, а загружать с сервера. Пока выбрал то, что выбрал. У меня и сейчас нет мнения как лучше. Думаю, что оба варианта жизнеспособны. Код в макете, возможно, хорош для законченных, поставляемых решений. А по поводу взаимодействия не очень понял, что имеется в виду? Думаю, что чуть позже прикручу конструктор запросов и сохранение/загрузку кода в файлы. Или вы про то, что нет подсказки по общим модулям и экспортируемым функциям?
59. zeegin 97 17.07.20 20:47 Сейчас в теме
(58) Хорошо когда файлы не нужно тащить на клиент и когда не нужно использовать веб-сервер :)

Может быть я ошибаюсь, но я не увидел возможности из редактора вызвать 1С.
60. salexdv 2002 17.07.20 21:08 Сейчас в теме
(59) На первой картинке "Выполнить на клиента" и "Выполнить на сервере"
61. zeegin 97 17.07.20 21:18 Сейчас в теме
(60) Я не про это: это кнопки на стороне 1С.
Я про то, когда редакор говорит 1С что надо что-либо выполнить.

Например когда в редакторе устанавливается брейкпоинт и он говорит 1С куда именно.
62. salexdv 2002 17.07.20 22:12 Сейчас в теме
(61) Тут я бессилен без поддержки таких штук на уровне платформы.
Tahallus; +1 Ответить
63. Pr-Mex 131 18.07.20 10:02 Сейчас в теме
(62) zeegin решил эту задачу.
На днях будет всё будет опубликовано, там можно будет посмотреть.
64. Tailor_Made 19.07.20 10:48 Сейчас в теме
67. iiceberg 90 19.07.20 20:32 Сейчас в теме
Красота и восторг.
После первого использования, что бы хотелось...
1. Таб.части в подсказках (видел. в работе).
2. Подсказки в запросах. (Значение(Перечисление.ХХХХХ.УУУУ) и поля объекта)
3. Автозаполнение и подсказка переменных.
4. После выбора конструкций КонецЕсли и КонецЦикла автоматически закрывать ";"
5. На Платформе "1С:Предприятие 8.3 (8.3.17.1386)" ОС = Win7 не работает сочетание [ctrl]+[A] и понкт меню "выделить все".

В качестве бреда: Похватывать в подсказки "шаблоны текстов" из настроек. (или выбирать в настройках обработки конкретный файл)

Спасибо!
68. salexdv 2002 19.07.20 20:33 Сейчас в теме
(67) Спасибо за отзыв!
Постараюсь реализовать.
69. Totoro 561 19.07.20 22:56 Сейчас в теме
71. user701505_oavperm 20.07.20 10:10 Сейчас в теме
74. Totoro 561 20.07.20 11:30 Сейчас в теме
(0) Сделал вариант для Конвертации данных 3. Толку пока мало, но пользоваться удобнее. TipsInCD3
aayukhanov_corp; Evg-Lylyk; cprit; salexdv; +4 Ответить
75. salexdv 2002 20.07.20 11:50 Сейчас в теме
76. Gorus 47 22.07.20 10:20 Сейчас в теме
Из критичного - не хватает клавиатурных сокращений: Ctr+C, Ctr+V, Ctr+Z, Ctr+Y
А так - весьма круто!
77. 1С_Мастер 64 22.07.20 12:53 Сейчас в теме
(76) Не только клавиатурный сокращений. Копипаст при помощи мышки тоже не работает.
80. salexdv 2002 22.07.20 21:02 Сейчас в теме
(76) (77) Сделал, но только клавиатурные
78. Evg-Lylyk 3511 22.07.20 17:27 Сейчас в теме
(0) Изменения лучше писать в комментариях т.к. на них есть уведомления
81. salexdv 2002 22.07.20 21:03 Сейчас в теме
1. Добавлены подсказки для табличных частей и предопределенных элементов
2. Сворачивание циклов, условий и текстов запросов
3. Всплывающие подсказки для глобальных функций, перечислений и классов
4. Добавление ; после ключевых слов КонецЦикла, КонецЕсли
5. Исправления для нормальной работы сочетаний клавиш CTRL+C, CTRL+V и CTRL+Z
6. Кнопка (CTRL+F2) для замены всех вхождений
Evg-Lylyk; +1 Ответить
84. Gorus 47 23.07.20 08:58 Сейчас в теме
(81)

5. Исправления для нормальной работы сочетаний клавиш CTRL+C, CTRL+V и CTRL+Z

Клавиатурные сочетания все-равно не работают (иногда работает CTRL+Z, но как то странно - больше на автокомплит похоже а не на отмену). Платформа 8.3.15.1656.
Кроме этого для команды "ВыполнитьНаКлиенте" нужно привязать действие "ВыполнитьНаКлиенте"
85. salexdv 2002 23.07.20 09:37 Сейчас в теме
86. Gorus 47 23.07.20 10:05 Сейчас в теме
87. salexdv 2002 23.07.20 10:49 Сейчас в теме
(86) Видимо проблема в раскладке. На En все работает, а на Ru копировать/вставить не хотят. Спасибо, буду разбираться.
88. Gorus 47 23.07.20 11:05 Сейчас в теме
(87) У меня и на ENG не работают. Всего настроено три раскладки и основной язык системы - украинский.
89. salexdv 2002 23.07.20 11:14 Сейчас в теме
(88) Можете открыть обработку в 1С, затем открыть файл %TEMP%\bsl_console\test.html в браузере и попробовать копирование/вставку в разных вариантах, и потом отписаться?
101. Gorus 47 23.07.20 14:09 Сейчас в теме
(89)В test.html копирование/вставка работают во всех раскладках. И CTRL+Z тоже работает нормально.
102. salexdv 2002 23.07.20 14:44 Сейчас в теме
(101) Понял. Попробую потестировать на других конфигурациях.
130. salexdv 2002 27.07.20 09:46 Сейчас в теме
(101) Тут видимо проблема в самой платформе 8.3.15.хххх. У вас есть возможность проверить на 8.3.16 и выше, а затем сообщить о результатах?
131. Gorus 47 27.07.20 11:00 Сейчас в теме
(130) Да, на 8.3.16 копирование / вставка работают. Так что проблема в платформе.
82. German 874 23.07.20 06:53 Сейчас в теме
А типы Локальных переменных будет определять?

Запр = Новый Запрос();
Запр.
83. salexdv 2002 23.07.20 08:47 Сейчас в теме
(82) Для объектов, созданных через
Новый
будет чуть позже.
Для более сложных конструкций, например

ТаблицаТоваров = РезультатЗапроса.Выгрузить();
СписокТоваров = ТаблицаТоваров.ВыгрузитьКолонку("ххх");
СписокТоваров.


скорее всего нет.
128. salexdv 2002 24.07.20 23:33 Сейчас в теме
(82) Добавил подсказку свойств и методов для объектов, созданных через Новый
Evg-Lylyk; +1 Ответить
90. salexdv 2002 23.07.20 11:42 Сейчас в теме
Добавил контекстное меню для команд "Копировать/Вставить", "Конструктор запроса", "Конструктор форматной строки"
Evg-Lylyk; +1 Ответить
91. Evg-Lylyk 3511 23.07.20 12:45 Сейчас в теме
(0) Спасибо что продолжаете развитие
Еще бы неплохо функции
Форматировать
Отступ +
Отступ -
Добавить/убрать комментарии
Добавить/убрать перенос строки

Подсказка после Метаданные. не работает (это не критично) наверное еще много подобного
Смущает долгая инициализация, когда будет ERP сколько она будет идти
Прикрепленные файлы:
99. salexdv 2002 23.07.20 14:06 Сейчас в теме
(91) Насчет функций форматирования подумаю. Подсказки по метаданным, как и по многим другим объектам действительно пока нет. Тут нужно просто сесть и дописать все это в уже существующее описание языка в формате JSON. Как только буду чуть свободнее, обязательно сделаю.
Оставьте свое сообщение

См. также

Внешний регламент для 1С Промо

Прочие инструменты разработчика v8 Россия Абонемент ($m)

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

1 стартмани

05.03.2020    6682    8    moolex    11    

HTTP-клиент

Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Подсистема 1С для работы с HTTP.

1 стартмани

28.07.2021    2367    3    SpaceOfMyHead    23    

Выгрузка / загрузка правил Конвертации данных 2.1 в файлы / из файлов (для Git, SonarQube, VS Code и т.д.)

Перенос данных из 1C8 в 1C8 v8 Платформа 1C v8.2 КД Бесплатно (free)

Реализация инструмента для выгрузки в файлы / загрузки из файлов правил для Конвертации Данных 2.1 (еще одна). На этот раз в виде внешней обработки, не требует установки и изучения дополнительных утилит, кроме тех, что вы хотите использовать. Подходит для версионирования правил в Git, совместной разработки, анализа кода и написанию обработчиков в более удобной среде.

26.07.2021    1476    34    CyberCerber    6    

Проверка кода расширения (Все аннотации) на наличие изменений в основной конфигурации V 2.0

Прочие инструменты разработчика Расширения v8 Россия Абонемент ($m)

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

1 стартмани

28.06.2021    2440    17    con-men    6    

Подсистема "Показатели объектов" Промо

Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

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

2 стартмани

06.03.2021    5015    5    pila86    16    

Проверка кода расширения (#Вместо, #ИзменениеИКонтроль) на наличие изменений в основной конфигурации

Расширения Прочие инструменты разработчика v8 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

09.06.2021    1360    3    con-men    7    

Infostart Toolkit – инструмент, в котором сделано то, что давно просят от 1С

Прочие инструменты разработчика v8 Бесплатно (free)

Лауреат Infostart Awards-2019, ведущий разработчик инструментов Infostart Toolkit Евгений Люлюк рассказывает о том, как развивается, какие задачи закрывает и какие проблемы решает представляемый им набор инструментов разработчика.

09.06.2021    5044    Evg-Lylyk    5    

Шаблоны кода (управляемые формы)

Практика программирования Прочие инструменты разработчика v8 v8::УФ 1cv8.cf Абонемент ($m)

Шаблоны кода на управляемых формах.

2 стартмани

22.05.2021    2352    3    Rustig    16    

Markdown-editor в 1С (с сохранением в HTML) Промо

Универсальные обработки Прочие инструменты разработчика v8::УФ 1cv8.cf Абонемент ($m)

В этой обработке вы пишете свой текст, используя синтаксис Markdown, а на выходе получаете чистый HTML-код, избавленный от JS-библиотеки, которая его сформировала. Совместим с Webkit и IE.

1 стартмани

04.07.2019    10773    18    riposte    6    

Консоль кода и дескриптор объектов

Прочие инструменты разработчика v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

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

5 стартмани

23.04.2021    1521    2    pimenushka    2    

Конструктор процедур для создания дополнительных реквизитов и сведений для Бухгалтерии 3.0

Прочие инструменты разработчика v8 БП3.0 Россия Абонемент ($m)

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

2 стартмани

22.04.2021    3822    4    roma_semenov79    0    

Вспомогательный инструмент для быстрого просмотра объектов метаданных и ролей

Прочие инструменты разработчика Структура метаданных Роли и права v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Просмотр содержимого объектов, движений, регистров, констант и прочего. Анализ роли по объектам доступа и наоборот объекта по ролям доступа. Интуитивно понятный интерфейс, универсальный (под любую, даже самописную базу), под обычные и управляемые приложения.

1 стартмани

22.04.2021    2102    9    user802597    1    

FormCodeGenerator Программная доработка форм. Часть 2 (Режим работы "Режим сравнения форм") на примере ERP 2.5 Промо

Практика программирования Адаптация типовых решений Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Данная публикация является продолжением описания функционирования обработки "FormCodeGenerator " в режиме сравнения форм и генерирования кода на основании сравнения. Подходит для перевода уже доработанных форм с интерактивной доработки на программную. Данный режим работы обработки снизит издержки при дальнейших обновлениях конфигураций.

5 стартмани

21.12.2020    6938    21    huxuxuya    11    

Отладка внешних печатных форм, когда не открывается даже временный файл

Универсальные печатные формы Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

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

2 стартмани

20.04.2021    1310    4    Miracle180882    0    

Однопальцевое преобразование "одинэсного" запроса в запрос на SQL

Производительность и оптимизация (HighLoad) Прочие инструменты разработчика v8 v8::Запросы 1cv8.cf Абонемент ($m)

Обработка предназначена для преобразования "одинэсных" запросов в запросы на SQL средствами встроенного языка. Разработка не претендует на то, чтобы на 100% повторить то, что разработчики видят при трассировке запросов в инструментах вроде Profiler. Но во многих случаях результат преобразования можно будет без дополнительной ручной обработки выполнить, например, в Managment studio. Актуальные ограничения и проблемы преобразователя описаны в статье. Работает с версией платформы не ниже 8.3.10.

2 стартмани

17.04.2021    1951    4    kser87    9    

Свойства общих модулей

Практика программирования Прочие инструменты разработчика v8 v8::УФ v8::СКД 1cv8.cf Абонемент ($m)

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

1 стартмани

14.04.2021    1604    4    kuzyara    5    

Подсистема "Инструменты разработчика" v5.99.2 Промо

Инструментарий разработчика v8 1cv8.cf Бесплатно (free)

Интегрированный набор инструментов разработчика: - консоль кода - консоль запросов - консоль построителя отчетов - консоль компоновки данных - консоль заданий - конструктор запроса - справочник алгоритмов - исследователь объектов - интерфейсная панель - настройка журнала регистрации - анализ журнала регистрации - настройка техножурнала - анализ техножурнала - подбор и обработка объектов - редактор объекта БД - редактор констант - редактор параметров сеанса - редактор изменений по плану обмена - редактор пользователей - редактор предопределенных - редактор хранилищ настроек - динамический список - поиск дублей и замена ссылок - контекстная подсказка - синтакс-помощник - поиск битых ссылок - поиск ссылок на объект - структура хранения БД - удаление объектов с контролем ссылок - и прочее

23.09.2007    593644    35395    tormozit    2791    

Отладка обработок с плюшками

Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Расширение для отладки внешних отчетов и обработок. Плюшки - отключение “отвлекающего” функционала, мешающего процессу разработки.

1 стартмани

14.04.2021    2537    7    pparshin    1    

Мгновенное отображение HTML-страницы исходя из введённого HTML-кода

Прочие инструменты разработчика v8 Платформа 1C v8.2 1cv8.cf Абонемент ($m)

Обработка поможет найти ошибки в коде HTML и правильно отобразить создаваемый документ. Просто правьте код в нижнем поле и сразу получайте результат в верхнем.

1 стартмани

09.03.2021    1562    1    ilyam23    5    

Работа с My SQL через ODBC

Прочие инструменты разработчика v8 1cv8.cf Россия Абонемент ($m)

Работа с My SQL через ODBC. Разбираем базовые принципы соединения с MySQL и получения данных. Тестировалось на платформе 8.3.18.1208

1 стартмани

05.03.2021    1537    3    vov4ik1212    0    

Консоль Программиста 8.3. Управляемые формы, тонкий/толстый клиент Промо

Прочие инструменты разработчика v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка в помощь программисту - тестировщику. Консоль позволяет выполнять код 1С на встроенном языка, по сути является универсальной внешней обработкой

2 стартмани

22.08.2013    48560    643    hmanubis    67    

Универсальный "сравниватель" объектов

Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

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

1 стартмани

03.03.2021    2448    12    pyrkin_vanya    13    

Вспомогательные таблицы - универсальный инструмент хранения таблиц любой структуры (константы, параметры обработок и т.д.)

Прочие инструменты разработчика v8 Россия Абонемент ($m)

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

1 стартмани

24.02.2021    3277    6    xl_yaz    12    

Создание и поддержка разных редакций (Demo, Lite, Pro и пр.) модулей, отчетов и обработок

Прочие инструменты разработчика v8 Абонемент ($m)

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

1 стартмани

16.02.2021    1538    1    bme    2    

Генератор кода схемы компоновки данных (СКД)

Прочие инструменты разработчика v8 v8::СКД 1cv8.cf Абонемент ($m)

Формирование кода для программного создания схемы компоновки данных (СКД)

1 стартмани

04.02.2021    6605    51    Sergspectr    36    

Автоматизированная очистка нетиповой конфигурации от //{{MRG

Прочие инструменты разработчика v8 v8::УФ 1cv8.cf Абонемент ($m)

Удаление //{{MRG из конфигурации автоматизированным способом.

1 стартмани

02.02.2021    1914    1    nemec    0    

Консоль текстов модулей для управляемых форм

Прочие инструменты разработчика v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка предназначена для выполнения произвольного кода в режиме 1С:Предприятие для управляемых форм. Поддерживаются: конструктор запросов, расцветка кода, синтаксические подсказки, параметры, дерево текстов и запись в файл. Минимальная версия платформы - 8.3.14.1565.

1 стартмани

26.01.2021    2862    20    Reaper_1C    2    

Сравнение функций/процедур из расширения с функциями/процедурами из конфигурации

Прочие инструменты разработчика v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

18.01.2021    1997    4    Wilka    1    

DT2CF - Экстрактор конфигурации из дампа информационной базы

Сервисные утилиты Прочие инструменты разработчика v8 Абонемент ($m)

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

10 стартмани

21.12.2020    3127    6    SerVer1C    5    

FormCodeGenerator Программная доработка форм. Часть 1 (Режим работы "Палитра")

Практика программирования Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Данная публикация является описанием функционирования обработки "FormCodeGenerator " в режиме генерирования кода "на лету", без особых заморочек, данный режим идеально подходит для того что бы запустить, потыкать и забыть :)

1 стартмани

14.12.2020    5195    76    huxuxuya    9    

Работа с сериализатором XDTO

Прочие инструменты разработчика Обмен через XML v8 v8::УФ 1cv8.cf Абонемент ($m)

Отладочное расширение для просмотра объектов, преобразованных в XML, с помощью сериализатора XDTO, а также для выгрузки в xml.

1 стартмани

06.12.2020    2343    1    simon_sidoruk    5    

Обновление предопределенных данных

Прочие инструменты разработчика v8 1cv8.cf Россия Абонемент ($m)

Обновляет предопределенные элементы, созданные в конфигураторе. Тестировалось на платформе 8.3.15.1869

1 стартмани

01.12.2020    2200    7    user618575_VladimirGluhov.1c    2    

Отчет по Глобальным командам и Подпискам на события в конфигурации с возможностью отбора по Документам и Справочникам

Прочие инструменты разработчика v8 1cv8.cf Украина Россия Абонемент ($m)

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

1 стартмани

23.11.2020    2395    3    AnryMc    5    

Шаблон расширения с функцией сохранения настроек

Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Удобный механизм для быстрого создания сохраняемых настроек в расширении.

1 стартмани

20.11.2020    1765    0    pm74    1    

Расширение для создания собственных подсистем БСП

БСП (Библиотека стандартных подсистем) Прочие инструменты разработчика v8 1cv8.cf Россия Абонемент ($m)

В этой статье поделюсь некоторыми изысканиями о внутреннем устройстве стандартной подсистемы "Обновление версии ИБ" и расскажу, как разработать свою подсистему, в которой будет работать отчёт с описанием изменений.

1 стартмани

20.11.2020    6030    11    stas_ganiev    4    

Подготовка к 1С:Совместимо. Инструментарий в помощь программисту

Прочие инструменты разработчика v8 1cv8.cf Россия Абонемент ($m)

Инструментарий в помощь программисту для подготовки конфигурации к сертификации 1С:Совместимо.

1 стартмани

16.11.2020    2418    3    BrainAttack    0    

БСП - рабочие примеры асинхронного запуска функций и процедур

Практика программирования БСП (Библиотека стандартных подсистем) Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

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

2 стартмани

02.11.2020    6587    19    quazare    2    

Работа с формулой-шаблоном

Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

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

3 стартмани

02.11.2020    2400    4    kn    0    

Просмотр структуры базы в СУБД, в том числе расширений

Структура метаданных Расширения Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Структура таблиц базы данных с учётом расширений.

1 стартмани

29.09.2020    6974    65    Yashazz    10    

Отладчик запроса 1С 8.3 (управляемые формы), бета-версия

Консоль запросов v8 v8::УФ 1cv8.cf Абонемент ($m)

По просьбам некоторых своих коллег и пользователей Инфостарта, выкладываю первую версию обработки "Отладчик запросов by Акулов А.С.", переделанной под управляемые формы. Реализованы почти все возможности из отладчика запросов, которые присутствовали в версии под обычные формы, а также добавлено немного нового.

1 стартмани

28.09.2020    11113    122    DrAku1a    29    

Генератор внешних печатных форм

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Консоль запросов Прочие инструменты разработчика Универсальные печатные формы v8 1cv8.cf Абонемент ($m)

Генератор печатных форм - инструмент для создания внешних печатных форм в режиме предприятия с минимальным написанием кода

3 стартмани

18.09.2020    4623    17    andy_zhav    7    

Отладка расчета себестоимости в ERP - просмотр изменений временных таблиц

Практика программирования Прочие инструменты разработчика Закрытие периода v8::БУ ERP2 БУ Абонемент ($m)

Как уследить за изменениями в сотне временных таблиц на различных этапах выполнения расчета себестоимости. Тестировалось на 1С:ERP Агропромышленный комплекс 2 (2.4.12.75)

1 стартмани

09.09.2020    5638    13    doom2good    0    

Конвертация данных 3 расширение: Редактор кода.

Инструментарий разработчика Адаптация типовых решений v8 КД Россия Абонемент ($m)

Расширение для конфигурации “Конвертация данных 3.0” добавляет на все формы, где используется код языка 1С, консоль кода для управляемых форм. В результате работать с кодом в пользовательском режиме становится намного удобнее - появляется привычная расцветка кода, а также контекстная подсказка.

1 стартмани

08.09.2020    9667    27    Viktor_Ermakov    29    

Разбор областей и параметров печатной формы MXL и генерация кода заполнения. Обработка

Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

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

1 стартмани

05.09.2020    4228    7    Ivon    0