Использование методов глобального контекста в системе компоновки данных или недокументированные возможности СКД

Публикация № 540945

Разработка - Практика программирования

Недокументированные возможности СКД Система компоновки данных СтрРазделить()

Прочитал на форуме, что СтрРазделить() и ТекущаяДата() работают в языке выражений системы компоновки данных. Почитал справку, там ничего не нашёл, поэтому не поверил. Посмотрел на практике – и правда работает… В данной статье попытался привести весь перечень методов, работающих в СКД, но не описанных в документации.

На ИТС нашёл упоминание, что ТекущаяДата() работает в СКД (в справке про это ни слова),  про другие методы описанные в статье ничего не нашёл.

Как собиралась информация: открыл в СП раздел «Глобальный контекст» и все методы проверял в СКД. Функции, которые помнил, что есть в СКД пропускал как заведомо рабочие. Также пропускал методы заведомо не рабочие, например ПоказатьВопрос. Прошёлся методом перебора по порядку по разделам «Функции работы со значениями типа Строка», «Функции работы со значениями типа Число», «Функции работы со значениями типа Дата» и т.д. до «Процедуры и функции сохранения значений».

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

 

Проверял в СКД на данных полученные запросом:

ВЫБРАТЬ
	"111,ааа" КАК Строка,
	ДАТАВРЕМЯ(2016, 1, 20, 12, 24, 59) КАК Дата,
	1.5 КАК Число

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	"ааа2фыава,пролджэ",
	ДАТАВРЕМЯ(2012, 2, 22, 2, 22, 52),
	2.49

 

Перечень методов глобального контекста работающих в СКД на платформе «8.3.8.1652» «8.3.7.1845», «8.3.6.2390» и «8.2.19.130» в управляемом приложении клиенте:

  1. СтрНайти (не работает на 8.3.7.1845, 8.3.6.2390 и 8.2.19.130). Найти на 8.2.19.130 тоже не работает.
  2. СтрСравнить (не работает на 8.3.7.1845, 8.3.6.2390 и 8.2.19.130)
  3. СтрНачинаетсяС (не работает на 8.3.7.1845, 8.3.6.2390 и 8.2.19.130)
  4. СтрЗаканчиваетсяНа (не работает на 8.3.7.1845, 8.3.6.2390 и 8.2.19.130)
  5. СтрРазделить (не работает на 8.3.7.1845, 8.3.6.2390 и 8.2.19.130)
  6. СтрСоединить (не работает на 8.3.7.1845, 8.3.6.2390 и 8.2.19.130)
  7. ТекущаяДата()
  8. СтрШаблон (не работает на 8.3.7.1845, 8.3.6.2390 и 8.2.19.130)
  9. ЧислоПрописью
  10. НСтр
  11. ПредставлениеПериода
  12. ПолучитьОбщийМакет
  13. ПредопределенноеЗначение
  14. ПолучитьПолноеИмяПредопределенногоЗначения
  15. ПолучитьСкоростьКлиентскогоСоединения()
  16. ИмяКомпьютера()
  17. ИмяПользователя()
  18. ПолноеИмяПользователя()
  19. КаталогПрограммы()
  20. КаталогВременныхФайлов()
  21. ПравоДоступа – тут надо разбираться как передать ОбъектМетаданных в параметр
  22. РольДоступна
  23. ТекущийЯзык()
  24. ТекущийКодЛокализации()
  25. СтрокаСоединенияИнформационнойБазы()
  26. ПараметрыДоступа – тут надо разбираться как передать ОбъектМетаданных в параметр
  27. ПредставлениеПриложения
  28. ТекущийЯзыкСистемы()
  29. ТекущийРежимЗапуска()
  30. ЧасовойПоясСеанса()
  31. ТекущаяДатаСеанса()
  32. ПредставлениеПрава
  33. ПолучитьИнформациюЭкрановКлиента() (не работает на 8.2.19.130)
  34. ТекущийВариантОсновногоШрифтаКлиентскогоПриложения() (не работает на 8.2.19.130)
  35. ТекущийВариантИнтерфейсаКлиентскогоПриложения() (не работает на 8.2.19.130)
  36. ЗначениеВСтрокуВнутр
  37. ЗначениеИзСтрокиВнутр
  38. ПолучитьИмяВременногоФайла()
  39. ЗначениеЗаполнено (зачеркнул, т.к. есть в справке)
  40. ТекущаяУниверсальнаяДатаВМиллисекундах()

 

Среди этих методов есть абсолютно бесполезные, например «ПолучитьИнформациюЭкрановКлиента()» (даже представить не могу где это можно применить в чистом СКД), но есть и очень даже полезные, например «ЧислоПрописью». К сожалению, СокрЛП до сих пор не работает…

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

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

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

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

Наименование Файл Версия Размер
Проверка недокументированных возможностей в СКД

.erf 9,93Kb
04.08.16
28
.erf 9,93Kb 28 Скачать

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

Вознаграждение за ответ
Показать полностью
Лучшие комментарии
28. Aphanas 143 02.09.16 23:16 Сейчас в теме
Также работает метод глобального контекста "XMLСтрока". С помощью него можно быстро получить представление уникального идентификатора любой ссылки: XMLСтрока(Ссылка). Возвращает что-то типа "6a09f20a-8de6-11e1-b3e1-001617ec3f2a". Многие ищут и не находят как получить уникальный идентификатор в запросе. Это способ получения уникального идентификатора в СКД.
Drivingblind; Luisor; Kinestetik; user666919_budulau; temsan; kulak1974; Lena272; Pigzilla; ekomova; igormiro; IrinaKostroma; hame1e00n; Gang031; DrAku1a; ifilll; Somebody1; &rew; Saint13; user747571; le0nid; acsent; trumanl; kotenko.viktor; mi1man; ISP; kolya_tlt; Goleff74; Anchoret; chanzer; purgin; Lebowski; tarassov; LexSeIch; JohnyDeath; raystlin; philya; stsasha87; awk; ll13; karpik666; echo77; klinval; zarucheisky; olbu; Synoecium; +45 Ответить
Остальные комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. aka Любитель XML 05.08.16 11:53 Сейчас в теме
Спасибо, хорошая статья
2. tindir 05.08.16 17:56 Сейчас в теме
ага. опять какой-то разраб написать написал, а документацию не догнали. кстати, как там в спавке по поводу ВычислитьВыражение(Выражение, Группировка, ТипРасчета, Начало, Конец, Сортировка, ИерархическаяСортировка, ОбработкаОдинаковыхЗначенийПорядка)? в последнем релизе нет. Мне 1с по качеству и обьемному наполнению справки все чаще начинает напоминать оупень-сорсь, но платный. и если у тебя в node нет мануала к модулю, то всегда можно почитать исходник, а как быть с http в 1с, если тебе нужно что-то сложнее халовордия....
24. tiniji 155 11.08.16 15:12 Сейчас в теме
(2) tindir, Эта информация есть в режиме 1С Предприятие. В конфигураторе такого нет про СКД.
3. Yashazz 3448 07.08.16 12:59 Сейчас в теме
Автор, на каком релизе проверял? Сдаётся мне, это фича из новых, или нестабильно работающих, как всё недокументированное.
4. klinval 296 07.08.16 18:24 Сейчас в теме
(3) Yashazz,
Автор, на каком релизе проверял? Сдаётся мне, это фича из новых, или нестабильно работающих, как всё недокументированное.

В статье специально написал:
на платформе «8.3.8.1652» в тонком клиенте

На форуме люди писали, что на 8.3.8.1784 работает. Будет 1С-ка под рукой - опробую ещё на каком-нибудь релизе, статью дополню по результатам. Если уже кто-то уже опробовал: просьба отписываться в комментах!

Ещё отправил в ТП письмо, они уже переслали разработчикам. Пока ответа нет... Будет ответ - дополню статью, чтобы понимать что это: недоработка документации или функции работающие в тестовом режиме.
5. karpik666 2911 07.08.16 19:14 Сейчас в теме
хм, может конечно я что-то путаю, но данный функционал был доступен всегда, еще по бесплатным курсам Гилева говорилось, что в скд в параметр или вычисляемых полях можно использовать функции 1с, а также функции общих модулей, исполняемых на сервере, однако делать это не рекомендуется так как по сути выполняется код в цикле, и если это будет обращение к базе данных, то это сильно замедляет работу.
Lena272; Gang031; antoha.o; ayuplotnikov; Сурикат; +5 Ответить
6. klinval 296 08.08.16 09:48 Сейчас в теме
(5) karpik666,
еще по бесплатным курсам Гилева говорилось, что в скд в параметр или вычисляемых полях можно использовать функции 1с

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

Если эти методы уже давно работали то тогда есть ряд вопросов:
1. Какого года курсы Гилева, и какая тогда платформа была? Если тогда ещё всё работало, то почему сейчас не работает "СокрЛП"?
2. Если ещё тогда всё работало, почему в справке ни слова за эти годы не появилось?
3. Опять таки почему такие ненужные в СКД вещи как ПолучитьИнформациюЭкрановКлиента() работают, а нужные, типа СокрЛП не работают?

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

Чтобы не гадать подождём что разработчики скажут...
8. karpik666 2911 08.08.16 13:03 Сейчас в теме
(6) вот про эти курсы говорил http://www.spec8.ru/kurs-po-skd-besplatno
там в 21 кажется уроке описывает про "выражение представления" поля и описывается, что в них можно использовать данный функционал. Курс уже очень старый.
А вот, что нашел про использование функций "ТекущаяДата()" и "значениеЗаполнено()", они вообще доступны с релиза 8.2.14 http://1cskd.ru/2011/07/novye-funkcii-skd-8-2-14/
9. klinval 296 08.08.16 13:57 Сейчас в теме
(8) karpik666,
вот про эти курсы говорил http://www.spec8.ru/kurs-po-skd-besplatno
там в 21 кажется уроке описывает про "выражение представления" поля и описывается, что в них можно использовать данный функционал.

Потом качну/посмотрю. А точно 21 урок? Я вроде по порядку подсчитал: 21 это "Возможности упорядочивания в отчетах". Вы наверное имели ввиду "Вычисляемые поля"?
А вот, что нашел про использование функций "ТекущаяДата()" и "значениеЗаполнено()", они вообще доступны с релиза 8.2.14 http://1cskd.ru/2011/07/novye-funkcii-skd-8-2-14/

Про текущую дату уже писал в статье, что про неё есть упоминания в ИТС, но нет в справке. Посмотрел про "ЗначениеЗаполнено" - оказывается есть в справке. Статью поправил, ЗначениеЗаполнено зачеркнул. Так что не удивительно, что они уже давно работают: один я не заметил в справке, другой есть в доках на ИТСе.

Я не спорю: вполне возможно всё это работает уже давно, просто когда-то кто-то забыл внести это в справку. Т.е. методы уже годами работают, только никто об этом не знает... Может они не внесены в справку, т.к. официально находятся в тестовом режиме. Мы можем только гадать. Будет ответ от ТП - отпишусь.
10. karpik666 2911 08.08.16 17:51 Сейчас в теме
(9) точно 21, но там описывается именно про "Выражение упорядочивания" в параметрах, и как в них использовать общие модули.
13. klinval 296 10.08.16 09:29 Сейчас в теме
(10) karpik666, посмотрел 21/22 "Возможности упорядочивания в отчетах" , 20/21 Представление полей компоновки в отчете"и 24/25 "Вычисляемые поля" - там этого нет... Зато есть в 15/16 "Функции выражений компоновки данных" про текущую дату и значение заполнено.
Но оба этих метода объяснимы: ЗначениеЗаполнено - я не заметил, что оно уже есть в справке, а то что ТекущаяДата() работает на СКД - есть упоминание на ИТСе.

Попробую проверить на 8.2 что ещё работает. Отпишусь как проверю

//10.08.16 9:38
Проверил: естественно не заработали методы которых физически не было в на той платформы типа "СтрНайти" (и даже "найти" не заработало), "ТекущийВариантИнтерфейсаКлиентскогоПриложения" и т.д. А остальные заработали.
//9:43
По результатам проверки обновил статью.
7. klinval 296 08.08.16 10:03 Сейчас в теме
Проверил на «8.3.7.1845» и «8.3.6.2390» в файловом режиме. Статью обновил.
11. Synoecium 700 10.08.16 07:42 Сейчас в теме
Сделал в глобальном модуле такую функцию:
Функция глВыполнитьПроизвольныйКод(Арг, ТекстКода,Результат=0) Экспорт
Выполнить(ТекстКода);Возврат Результат;
КонецФункции

и теперь можно вызывать любую функцию или кусок кода на языке 1с из СКД. В том числе СокрЛП()
12. karpik666 2911 10.08.16 07:49 Сейчас в теме
(11) Synoecium, Например такой?
	Для Каждого лРегистр Из Метаданные.РегистрыНакопления Цикл	
		Запрос = Новый Запрос;
		Запрос.Текст = 
		"ВЫБРАТЬ Различные
		|	Регистр.Регистратор
		|ИЗ
		|	РегистрНакопления." + лРегистр.Имя + " КАК Регистр";
		лВыборка = Запрос.Выполнить().Выбрать();
		лНаборЗаписей = РегистрыНакопления[лРегистр.Имя].СоздатьНаборЗаписей();
		Пока лВыборка.Следующий() Цикл
			лНаборЗаписей.Отбор.Регистратор.Установить(лВыборка.Регистратор);
			лНаборЗаписей.Записать(); 
		КонецЦикла; 
	КонецЦикла; 
Показать
15. Synoecium 700 10.08.16 10:44 Сейчас в теме
(12) karpik666, практически любой, но если получать метаданные и вертеть запросы для каждой записи СКД, то будет очень тормозить (если их много конечно)
18. karpik666 2911 10.08.16 11:18 Сейчас в теме
(15) Synoecium, это был сарказм, оставлять метод "ВыполнитьПроизвольныйКод", да и еще и экспортный это огромная уязвимость. такой простенький код как мой может просто уничтожить данные в базе, наверное вишенкой такого метода можно еще выполнять передаваемый код в привилегированном режиме. Если уж хотите выполнять какой-то код из модуля, то лучше передавать наименование метода, и параметры к нему, и обрабатывать его уже в коде. А от вашего способа лучше воздержаться.
21. klinval 296 10.08.16 12:26 Сейчас в теме
(18) karpik666, согласен, что
"ВыполнитьПроизвольныйКод", да и еще и экспортный это огромная уязвимость

Единственное, что хотел добавить: СКД на некоторый код пишет ошибку <Установлен безопасный режим. Выполнение операции запрещено> даже если встроить отчет в БД или добавить во внешние обработки с БезопаснымРежимом=Ложь. Соответственно код в привилегированном режиме из СКД работать не будет, т.к. видимо любой код в вычисляемых выражениях принудительно работает в безопасном режиме и это не отменить.

Естественно ВыполнитьПроизвольныйКод с вызовом из СКД и удалением в привилегированном режиме из ограниченного пользователя я на практике не проверял, т.к. сам таким методом не пользуюсь. Но глобальный экспортный метод ведь не только из СКД можно вызвать...
22. Synoecium 700 10.08.16 12:30 Сейчас в теме
(18) karpik666, в 1с столько дыр в безопасности, что глобальный экспортный метод это такая малость, что даже смешно обсуждать.
19. vec435 15 10.08.16 11:22 Сейчас в теме
(12) karpik666, а можно передать в эту функцию значение поля конкретной записи как какой-нить параметр?
14. klinval 296 10.08.16 09:53 Сейчас в теме
(11) Synoecium, да это понятно. Функции общих модулей уже давно можно было использовать! Вот только что делать если нужно, например "ЧислоПрописью", а база на поддержке? Или пишешь что-нибудь универсальное для публикации на ИС (или для продажи): в инструкции писать, что базу обязательно надо снять с поддержки и внедрить такой-то модуль с таким-то текстом?
А если база своя то можно где-то обойтись и функциями общих модулей - тут согласен. Правда не всегда это будет оптимально в плане производительности.
23. Synoecium 700 10.08.16 12:47 Сейчас в теме
(14) вообще да, согласен. Глобальные методы из коробки - хорошее подспорье для внешних отчетов например. Так что плюс)
16. starik-2005 2202 10.08.16 10:47 Сейчас в теме
Даже экспортные функции и даже на 8.2 работают. Так что не понимаю, в чем новизна статьи.
17. klinval 296 10.08.16 11:03 Сейчас в теме
(16) starik-2005,
Даже экспортные функции и даже на 8.2 работают

Уже который раз пишу: да уже давно работают функции общих модулей. Я это нигде не отрицал и не представлял как своё открытие.
Так что не понимаю, в чем новизна статьи.

Покажите мне место в документации или на ИТС, где написано, что, например, ЧислоПрописью работает в СКД? Нигде этого нет, хотя метод работает ещё с 8.2.

В этом и суть статьи: показать программисту 1С, что некоторые методы, не описанные в документации, вполне себе работают на чистом СКД. Да, эти же методы можно было бы применять через функции общих модулей, но есть минусы, описанные выше в (14).
20. progr-2008 118 10.08.16 11:23 Сейчас в теме
Интересно как дополнение к курсам.
25. klinval 296 29.08.16 09:12 Сейчас в теме
Пришёл ответ от разработчиков (далее цитирую):
Ответ от разработчиков:
В выражениях компоновки данных можно использовать функции общих модулей и функции глобального контекста.
26. herfis 372 29.08.16 09:42 Сейчас в теме
В выражениях компоновки данных можно использовать функции общих модулей и функции глобального контекста.

Может, они имеют в виду - при включенном режиме использования функций общих модулей? Потому что иначе это противоречит твоим исследованиям. Глобальный контекст доступен очень ограниченно.
Результаты сабжевого исследования очень похожи на непреднамеренное "просачивание" контекста в связи с какими-то доработками СКД. Поэтому я почти уверен, что разработчики сами достоверно не знают чего там нового доступно стало в конексте выражений СКД, так как это побочный эффект а не целенаправленный.
27. klinval 296 29.08.16 10:04 Сейчас в теме
(26) herfis, ну да, тот же СокрЛП не работает, хотя тоже функция глобального контекста. Т.е. их ответ явно не полный.
Результаты сабжевого исследования очень похожи на непреднамеренное "просачивание" контекста в связи с какими-то доработками СКД. Поэтому я почти уверен, что разработчики сами достоверно не знают чего там нового доступно стало в конексте выражений СКД, так как это побочный эффект а не целенаправленный.

У меня это тоже основная версия, но никто кроме разработчиков платформы её подтвердить или опровергнуть не может...
28. Aphanas 143 02.09.16 23:16 Сейчас в теме
Также работает метод глобального контекста "XMLСтрока". С помощью него можно быстро получить представление уникального идентификатора любой ссылки: XMLСтрока(Ссылка). Возвращает что-то типа "6a09f20a-8de6-11e1-b3e1-001617ec3f2a". Многие ищут и не находят как получить уникальный идентификатор в запросе. Это способ получения уникального идентификатора в СКД.
Drivingblind; Luisor; Kinestetik; user666919_budulau; temsan; kulak1974; Lena272; Pigzilla; ekomova; igormiro; IrinaKostroma; hame1e00n; Gang031; DrAku1a; ifilll; Somebody1; &rew; Saint13; user747571; le0nid; acsent; trumanl; kotenko.viktor; mi1man; ISP; kolya_tlt; Goleff74; Anchoret; chanzer; purgin; Lebowski; tarassov; LexSeIch; JohnyDeath; raystlin; philya; stsasha87; awk; ll13; karpik666; echo77; klinval; zarucheisky; olbu; Synoecium; +45 Ответить
32. kasper076 73 25.08.17 14:16 Сейчас в теме
(28) 1С:Предприятие 8.3 (8.3.10.2466) Синтаксическая ошибка "XMLСтрока". Что я делаю не так?
33. kasper076 73 25.08.17 15:22 Сейчас в теме
(32) (28) В консоли СКД не работает. А если встроить в базу, то работает. Мож конечно консоль кривая.
34. Aphanas 143 30.08.17 12:16 Сейчас в теме
(33) У меня здесь работает во внешнем отчете
https://infostart.ru/public/548198/
35. kasper076 73 31.08.17 09:20 Сейчас в теме
(34)Вот схема:
<?xml version="1.0" encoding="UTF-8"?>
<DataCompositionSchema xmlns="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcscom="http://v8.1c.ru/8.1/data-composition-system/common" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<dataSource>
		<name>ИсточникДанных1</name>
		<dataSourceType>Local</dataSourceType>
	</dataSource>
	<dataSet xsi:type="DataSetQuery">
		<name>НаборДанных1</name>
		<field xsi:type="DataSetFieldField">
			<dataPath>Ссылка</dataPath>
			<field>Ссылка</field>
			<appearance/>
			<inputParameters/>
		</field>
		<dataSource>ИсточникДанных1</dataSource>
		<query>ВЫБРАТЬ
	Организации.Ссылка
ИЗ
	Справочник.Организации КАК Организации</query>
	</dataSet>
	<calculatedField>
		<dataPath>Поле1</dataPath>
		<expression>XMLСтрока(Ссылка)</expression>
		<title xsi:type="v8:LocalStringType">
			<v8:item>
				<v8:lang>ru</v8:lang>
				<v8:content>Поле1</v8:content>
			</v8:item>
		</title>
		<appearance/>
		<inputParameters/>
	</calculatedField>
	<settingsVariant>
		<dcsset:name>Основной</dcsset:name>
		<dcsset:presentation xsi:type="xs:string">Основной</dcsset:presentation>
		<dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows">
			<dcsset:selection>
				<dcsset:item xsi:type="dcsset:SelectedItemField">
					<dcsset:field>Поле1</dcsset:field>
				</dcsset:item>
			</dcsset:selection>
			<dcsset:outputParameters/>
			<dcsset:item xsi:type="dcsset:StructureItemGroup">
				<dcsset:order>
					<dcsset:item xsi:type="dcsset:OrderItemAuto"/>
				</dcsset:order>
				<dcsset:selection>
					<dcsset:item xsi:type="dcsset:SelectedItemAuto"/>
				</dcsset:selection>
				<dcsset:outputParameters/>
			</dcsset:item>
		</dcsset:settings>
	</settingsVariant>
</DataCompositionSchema>
Показать

Вот код:
&НаСервере
Процедура Команда1НаСервере()
	Перем ДанныеРасшифровкиОбъект;
	
	ЧтениеXML = Новый ЧтениеXML;
	ЧтениеXML.УстановитьСтроку(ТекстСхемы);
	СхемаКомпоновкиДанных = СериализаторXDTO.ПрочитатьXML(ЧтениеXML, Тип("СхемаКомпоновкиДанных"));
	КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
	МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, СхемаКомпоновкиДанных.НастройкиПоУмолчанию, ДанныеРасшифровкиОбъект);
	ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных, , ДанныеРасшифровкиОбъект, Ложь);
	ПроцессорВыводаРезультатаОтчета = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
	ПроцессорВыводаРезультатаОтчета.УстановитьДокумент(РезультатТабличныйДокумент);
	ПроцессорВыводаРезультатаОтчета.НачатьВывод();
	ПроцессорВыводаРезультатаОтчета.Вывести(ПроцессорКомпоновкиДанных);
	ПроцессорВыводаРезультатаОтчета.ЗакончитьВывод();
КонецПроцедуры

&НаКлиенте
Процедура Команда1(Команда)
	Команда1НаСервере();
КонецПроцедуры
Показать

На строке
ПроцессорВыводаРезультатаОтчета.Вывести(ПроцессорКомпоновкиДанных);
выдает ошибку
{ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(15)}: Ошибка при вызове метода контекста (Вывести)
ПроцессорВыводаРезультатаОтчета.Вывести(ПроцессорКомпоновкиДанных);
по причине:
Ошибка вывода результата
Синтаксическая ошибка "XMLСтрока"

Если же эту схему вставить в макет отчета (даже внешнего) с типом "Схема компоновки данных", то отчет будет формироваться нормально.
36. Aphanas 143 31.08.17 09:52 Сейчас в теме
(35) В строке
"ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных, , ДанныеРасшифровкиОбъект, Ложь);"
процедуры "Команда1НаСервере", вместо "Ложь" нужно поставить "Истина".

ПроцессорКомпоновкиДанных (DataCompositionProcessor)
Инициализировать (Initialize)
Синтаксис:

Инициализировать(<Макет>, <ВнешниеНаборыДанных>, <ДанныеРасшифровки>, <ВозможностьИспользованияВнешнихФункций>)
Параметры:

<Макет> (обязательный)
Тип: МакетКомпоновкиДанных.
Макет, для которого будет выполняться компоновка.

<ВнешниеНаборыДанных> (необязательный)
Тип: Структура.
Ключ структуры соответствует имени внешнего набора данных. Значение структуры - внешнему набору данных.

<ДанныеРасшифровки> (необязательный)
Тип: ДанныеРасшифровкиКомпоновкиДанных.
Объект, в котором нужно заполнить данные расшифровки. Если не указан, то расшифровка заполняться не будет.

<ВозможностьИспользованияВнешнихФункций> (необязательный)
Тип: Булево.
УКАЗЫВАЕТ ВОЗМОЖНОСТЬ ИСПОЛЬЗОВАНИЯ ФУНКЦИИ ОБЩИХ МОДУЛЕЙ КОНФИГУРАЦИИ В ВЫРАЖЕНИЯХ КОМПОНОВКИ ДАННЫХ.
Значение по умолчанию: Ложь.
CratosX; triviumfan; karachev_og; Kinestetik; user625969_Skreg2016; IrinaKostroma; +6 Ответить
37. kasper076 73 31.08.17 11:03 Сейчас в теме
(36) огромное спасибо. Все оказывается документировано, просто нужно не лениться читать. Еще раз спасибо.
38. Aphanas 143 31.08.17 11:14 Сейчас в теме
40. triviumfan 22 11.06.20 12:45 Сейчас в теме
(36)
УКАЗЫВАЕТ ВОЗМОЖНОСТЬ ИСПОЛЬЗОВАНИЯ ФУНКЦИИ ОБЩИХ МОДУЛЕЙ КОНФИГУРАЦИИ В ВЫРАЖЕНИЯХ КОМПОНОВКИ ДАННЫХ

Спасибо тебе, добрый человек)
39. KAV2 15.11.17 12:12 Сейчас в теме
(28)Но только этот способ получения уникального идентификатора не явуляется способом получения в запросе :-)
29. German_Tagil 21 06.12.16 20:49 Сейчас в теме
30. kasper076 73 31.01.17 08:04 Сейчас в теме
Мин(), Макс() тож не робят.
31. echo77 1168 11.03.17 13:28 Сейчас в теме
(30) Оно и не надо, вместо них есть агрегатные функции Минимум() и Максимум()
Оставьте свое сообщение

См. также

Вам нравятся запросы в 1С? Промо

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

Речь не только о том, что простейший запрос с "легальным" оформлением растянется на пол-экрана, речь еще обо всем, что нужно написать "в нагрузку" к тексту запроса. Все эти "Новый Запрос", "УстановитьПараметр" и последующие пляски с обработкой результата... Пора с этим заканчивать!

1 стартмани

03.07.2019    19872    4    m-rv    86    

Предварительный просмотр PDF с помощью PDF.js на WebKit

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

Один из вариантов отображение pdf файла в поле формы вида "ПолеHTMLДокумента".

1 стартмани

25.09.2020    627    2    samvani    4    

Генерация кода для автоматизированного тестирования

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

Генератор кода - дополнение к оригиналу. Генерация данных на основе существующих экземпляров объектов системы. Генерация данных на основе метаданных конфигурации.

1 стартмани

28.07.2020    1457    4    rsamt    0    

Быстрое формирование наборов данных Объект схемы СКД

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

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

1 стартмани

05.07.2020    3672    4    Алексей Воробьев    16    

ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ ("001", "Новый товар") Промо

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

Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.

1 стартмани

01.06.2018    29941    86    m-rv    57    

Пример программирования методом Конечных автоматов на базе написания парсера CSV

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

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

1 стартмани

17.06.2020    1257    0    Salimbek    3    

Построение графика в диапазоне изменений без точек

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

График изменений каких-либо величин во всем диапазоне и в области изменения, без точек.

1 стартмани

30.05.2020    1297    1    yc_2011    4    

Метод восстановления битых ссылок в настройках СКД при консольно-конфигураторной разработке отчетов

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

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

1 стартмани

30.04.2020    3692    0    zaxarovsky    4    

Нечеткое сравнение строк. Метод Джаро-Винклера на 1С Промо

Математика и алгоритмы v8::УФ 1cv8.cf Абонемент ($m)

Схожесть строк. Метод Джаро-Винклера. В обработке реализован алгоритм нечеткого сравнения строк.

3 стартмани

20.04.2018    19663    77    Serg1701    19    

Жизнь в стиле RPG

Практика программирования v8::УФ Абонемент ($m)

Работа выполнялась на платформе 8.3.16.1148. Пока мой город на карантине, появилось чуть больше свободного времени (процентов на 15) - решил попробовать сделать для себя в 1С то, что давно хотел. У меня на телефоне есть приложение "RPG in real life", оно мне помогает в мотивации важных дел, но кажется немного неудобным. Решил сделать что-то похожее в 1С, с моими основными "хотелками". Данная разработка позволяет получать миссии, за выполнение которых начисляются баллы, влияющие на повышение уровней своих навыков.

1 стартмани

08.04.2020    2301    0    ErrorEd88    5    

Получение курса валюты за период с помощью СКД

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

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

1 стартмани

04.02.2020    2596    0    KawaNoNeko    2    

Маршрутизация Яндекс-карт в 1С (обычные и управляемые формы)

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

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

3 стартмани

03.02.2020    2708    4    Denr83    0    

Заполняем по шаблону (по умолчанию) Промо

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

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

1 стартмани

08.02.2018    27680    19    mvxyz    17    

Программное создание письма EML с вложениями

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

Внешняя обработка, которая создает письмо EML с вложениями и сохраняет на диск.

1 стартмани

10.01.2020    2495    2    info1i    0    

Обмен данными с Android через USB

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

Обработка с примером обмена данными конфигурации 1С через USB. Без установки Web сервера и настройки WiFi.

1 стартмани

23.12.2019    3733    4    asdfgcom    2    

Преобразование объекта Отбор компоновки данных в Запрос

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

Преобразует объект Отбор компоновки данных в объект Запрос (с заполнением текста и параметров).

1 стартмани

20.12.2019    3579    4    okon-teh    2    

Нечеткий поиск одним запросом Промо

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

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

1 стартмани

28.12.2015    27129    69    vasvl123    9    

Многоуровневые списки выбора с оформлением элементов

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

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

1 стартмани

17.12.2019    8015    2    azhilichev    5    

Пример сохранения печатной формы в WORD (обычные и управляемые формы)

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

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

1 стартмани

03.12.2019    3249    6    Denr83    0    

Обновление данных в ячейках таблицы формы на управляемых формах

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

На очередном проекте решал задачу по расчету значений колонок в табличных полях формы. Задача казалась достаточно простой. Однако возникла необходимость работать не только с реквизитами формы типа «ТаблицаЗначений», но и с типом «ДеревоЗначений». Релиз платформы 8.3.13.1644

1 стартмани

15.08.2019    4585    0    BraunAlex    2    

Работа с публикациями "Инфостарт" Промо

Практика программирования О сообществе WEB v8 УУ Абонемент ($m)

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    21255    13    RocKeR_13    16    

Удобный выбор из таблицы/дерева в УФ

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

Выбор из таблицы значений или дерева значений в выпадающем списке рядом с полем ввода - УФ, быстро и просто!

1 стартмани

12.08.2019    12920    7    Yashazz    18    

Отбор на управляемой форме из списка значений

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

Пример простого удобного отбора любых данных ссылочного типа на управляемой форме. Работа обработки проверена на релизе: 1С:Предприятие 8.3.13.1513.

1 стартмани

09.08.2019    17020    20    nagaitseff    6    

Запрет запуска более одного сеанса на рабочем месте (Розница 2.2)

Практика программирования Разработка v8 v8::УФ Розница Россия Абонемент ($m)

Доброго времени! Столкнулся с проблемой - при запуске более одного сеанса конфигурации "Розница 2.2" на одном рабочем месте возникают конфликты с подключенным оборудованием. Пришлось в быстром темпе это исправить - запретом повторных запусков. Также, кому интересно, можно посмотреть, как обращаюсь из модуля управляемого приложения к серверным процедурам (описание примера).

2 стартмани

04.08.2019    5042    2    aximo    5    

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции Промо

Инструментарий разработчика Практика программирования v8 Абонемент ($m)

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    27491    26    informa1555    26    

Универсальная печать штрихкодов Windows, Linux, x86, x64. Управляемые формы. Веб-клиент. Пример

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

Универсальная печать штрихкодов Windows, Linux, x86, x64. Управляемые формы. Веб-клиент. Сделана на основе компонент печати штрихкодов фирмы 1с под платформу 1с windows32, windowsx64, linux32, linux64. Типы штрихкодов для генерации - EAN8, EAN13, EAN128, Code39, Code128, Code16k, PDF417, Standart (Industrial) 2 of 5, Interleaved 2 of 5, Расширение Code39, Code93, ITF14, RSS14, CodaBar, EAN13 AddOn 2, EAN13 AddOn 5. Сделана как пример для внедрения. Наиболее оптимальный вариант для веб-клиента. Пример сделан в виде cf файла. Работоспособность проверялась на ERP 2.4.8.84, ЗУП 3.1.9.187, Розница 2.2.11.30, УНФ 1.6.17.128, БГУ 2.0.61.28, ЗКГУ 3.1.9.187, КА 2.4.7.127, УТ 11.4.7.128, БП 3.0.69.35, Документооборот КОРП ПРОФ 2.1.13.28.

2 стартмани

17.07.2019    5384    24    ivanchai    7    

Генерация QR кодов через API Google (обычные и управляемые формы)

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

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

1 стартмани

22.06.2019    5469    6    lisrws    5    

Проверка несуществующих полей в настройках СКД

Практика программирования Работа с интерфейсом Разработка v8 v8::СКД ERP2 УТ11 КА2 Абонемент ($m)

Обработка находит все поля настроек СКД, которые утратили свою актуальность Подходит для УТ 11, ERP, КА 2.

1 стартмани

20.06.2019    4572    3    MuI_I_Ika    2    

1С: Предприятие + корпоративный чат, как наладить оперативные уведомления за 10 минут Промо

Практика программирования v8 Абонемент ($m)

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

1 стартмани

14.08.2016    47543    36    Demanoidos    60    

Несколько документов на основании одного

Практика программирования Обработка документов v8::УФ Абонемент ($m)

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

1 стартмани

10.06.2019    6599    3    mvxyz    8    

Индикатор выполнения длительных операций на сервере 1С 8.3 (управляемые формы)

Работа с интерфейсом Практика программирования Разработка v8::УФ Россия Абонемент ($m)

Индикатор выполнения (отображение прогресса) длительных операций в тонком клиенте 1С:Предприятия 8.3, когда полностью весь код исполняется на сервере, а клиент просто ждёт завершения. Используются внешние средства (либо командное окно Windows, либо приложение Java).

1 стартмани

03.06.2019    14023    1    D.B.Sokolov    20    

Спутник программиста - каркасная конфигурация начинающим программистам 1С

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

Спутник программиста - каркасная конфигурация с примерами для разработки начинающим программистам 1С.

1 стартмани

23.05.2019    13508    99    bulas    27    

Работа с данными выбора Промо

Практика программирования Работа с интерфейсом v8 Россия Абонемент ($m)

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

1 стартмани

17.07.2018    45548    17    kalyaka    16    

Автоматическая генерация технологических карт на основе графической схемы

Управление бизнес-процессами (BPM) Практика программирования Разработка v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

27.03.2019    4958    1    all_net    0    

Пример внешней обработки с вызовом типового отчета на СКД и передачей ему настроек и вывода результата в таблицу значений (в частности, для новичков)

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

Разрабатывалась на 1С:Зарплата и управление персоналом в кредитных организациях, редакция 3.1 (3.1.5.407), поэтому использует типовой отчет Состояние штатного расписания, но технология работает для любой конфигурации. Пример внешней обработки с вызовом типового отчета на СКД "Состояние штатного расписания" и передачей ему настроек, изменения имен колонок после выполнения на имена указанные в "Пользовательских полях" или "заголовках" и вывода результата в таблицу значений.

1 стартмани

21.03.2019    5933    11    pavel_pss    0    

Печать отчета с предварительным вопросом пользователю

Практика программирования Разработка v8 v8::УФ 1cv8.cf БП3.0 УТ11 ЗУП3.x Абонемент ($m)

Возможность указать параметры, перед тем как распечатать отчет. (управляемые формы).

2 стартмани

16.03.2019    3356    0    user-z99999    0    

Определение кратчайших путей, критических путей одним запросом Промо

Математика и алгоритмы v8 1cv8.cf Абонемент ($m)

Еще два примера применения алгоритма каскадного матричного умножения, впервые описанного в статье «Транзитивное замыкание запросом» http://infostart.ru/public/158512/

1 стартмани

07.04.2014    37429    22    ildarovich    31    

Создание и редактирование таблиц в поле HTML документа

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

Создание и редактирование таблиц в поле HTML документа. Тестировалось на 1С:Предприятие 8.3.12.1616

1 стартмани

16.03.2019    6782    14    lastpioneer    2    

Робот на Клиенте (управляемое приложение), многократный запуск

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

Робот на Клиенте (управляемое приложение), многократный запуск. Шаблон-пример использования Обработчика Ожидания.

1 стартмани

06.03.2019    3438    0    Timur.V    0    

Алгоритм заполнения шапки табличного документа по дереву значений

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

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

1 стартмани

03.03.2019    3139    2    Алексей777    0    

Быстрое определение интервалов в запросе Промо

Практика программирования v8 Абонемент ($m)

В статье описывается новый метод определения интервалов между данными различных записей в запросе. В отличие от общеизвестного метода, время работы предлагаемого метода зависит от объема данных ЛИНЕЙНО. Это обеспечивает ему значительный выигрыш по быстродействию на больших объемах данных. В качестве иллюстрации возможностей метода приведен отчет, показывающий гистограмму распределения времени между продажами.

1 стартмани

01.10.2015    50741    35    ildarovich    41    

Вывод характеристик и их значений в динамический список

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

Если в запросе динамического списка используется конструкция {ХАРАКТЕРИСТИКИ ...}, то как вывести на форму колонки с характеристиками?

1 стартмани

22.02.2019    5821    2    kasper076    3    

Преобразование дерева значений в таблицу значений и наоборот (Управляемые формы 8.3)

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

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

1 стартмани

29.01.2019    4238    4    aagubarev    0    

Работа с деревом значений для новичков (Управляемые формы 8.3)

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

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

1 стартмани

29.01.2019    32701    31    aagubarev    0    

Хранение файлов в томах на диске (для УПП 1.3) Промо

Практика программирования v8 УПП1 Абонемент ($m)

Доработка типовой УПП 1.3 в плане хранения присоединенных файлов вне базы данных

2 стартмани

05.06.2016    56348    8    wowik    32    

Использование макетов вместо дополнительных реквизитов или регистров сведений

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

Использование макетов вместо дополнительных реквизитов или регистров сведений на конфигурациях с БСП.

1 стартмани

27.01.2019    9344    2    Comandante    22    

Связанные табличные части (управляемые формы)

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ Абонемент ($m)

У нас есть 2 связанные табличные части, и нам надо, чтобы по текущей строке в одной из них мы видели только определенные строки во второй. Были бы у нас динамические списки, мы бы взяли событие "При активизации строки" и стандартный механизм отборов СКД, которая лежит в основе списка. Но вот с табличными частями так не получится. Тут нам надо будет написать несколько строк кода и использовать "ОтборСтрок", доступный для таблицы формы. Тестировалось на платформе 8.3.13.1644, будет работать и на более ранних версиях платформы.

1 стартмани

25.01.2019    10128    11    Kim1C    7    

Построение градиента

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

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

1 стартмани

13.01.2019    4748    1    Serge R    1    

СКД. Использование встроенного макета, разделителя страниц Промо

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

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

1 стартмани

31.03.2017    14921    18    Vin_Tik    0    

Модуль, реализующий хранение настроек отчетов СКД в типовом регистре "Сохраненные настройки"

Практика программирования v8 v8::СКД КА1 БП2.0 ЗУП2.5 УТ10 БП1.6 Абонемент ($m)

Модуль, обеспечивающий хранение настроек отчетов на СКД в типовом регистре "Сохраненные настройки", присутствующем в конфигурациях УПП 1.2, 1.3, УТ 10.3, БП 2.0 и т.д.

1 стартмани

12.01.2019    6106    0    lunjio    0    

История реквизитов организаций (печати, факсимиле, КПП, телефон)

Практика программирования v8::ОУ v8::УФ УТ11 Абонемент ($m)

Решение задачи по хранению истории изменений КПП организации, дополнительных печатей, бланков и факсимиле ответственных лиц организаций, контактной информации организаций типа телефон.

1 стартмани

11.01.2019    4472    3    da_1c    0    

СМС2 - эрзац-мессенджер в вашей конфигурации 1С

Практика программирования Работа с интерфейсом Рабочее место v8 v8::УФ Абонемент ($m)

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

1 стартмани

17.12.2018    7607    5    semagin@gmail.com    15