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

Публикация № 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 140 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 154 11.08.16 15:12 Сейчас в теме
(2) tindir, Эта информация есть в режиме 1С Предприятие. В конфигураторе такого нет про СКД.
3. Yashazz 3260 07.08.16 12:59 Сейчас в теме
Автор, на каком релизе проверял? Сдаётся мне, это фича из новых, или нестабильно работающих, как всё недокументированное.
4. klinval 293 07.08.16 18:24 Сейчас в теме
(3) Yashazz,
Автор, на каком релизе проверял? Сдаётся мне, это фича из новых, или нестабильно работающих, как всё недокументированное.

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

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

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

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

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

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

Чтобы не гадать подождём что разработчики скажут...
8. karpik666 2867 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 293 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 2867 08.08.16 17:51 Сейчас в теме
(9) точно 21, но там описывается именно про "Выражение упорядочивания" в параметрах, и как в них использовать общие модули.
13. klinval 293 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 293 08.08.16 10:03 Сейчас в теме
Проверил на «8.3.7.1845» и «8.3.6.2390» в файловом режиме. Статью обновил.
11. Synoecium 695 10.08.16 07:42 Сейчас в теме
Сделал в глобальном модуле такую функцию:
Функция глВыполнитьПроизвольныйКод(Арг, ТекстКода,Результат=0) Экспорт
Выполнить(ТекстКода);Возврат Результат;
КонецФункции

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

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

Естественно ВыполнитьПроизвольныйКод с вызовом из СКД и удалением в привилегированном режиме из ограниченного пользователя я на практике не проверял, т.к. сам таким методом не пользуюсь. Но глобальный экспортный метод ведь не только из СКД можно вызвать...
22. Synoecium 695 10.08.16 12:30 Сейчас в теме
(18) karpik666, в 1с столько дыр в безопасности, что глобальный экспортный метод это такая малость, что даже смешно обсуждать.
19. vec435 15 10.08.16 11:22 Сейчас в теме
(12) karpik666, а можно передать в эту функцию значение поля конкретной записи как какой-нить параметр?
14. klinval 293 10.08.16 09:53 Сейчас в теме
(11) Synoecium, да это понятно. Функции общих модулей уже давно можно было использовать! Вот только что делать если нужно, например "ЧислоПрописью", а база на поддержке? Или пишешь что-нибудь универсальное для публикации на ИС (или для продажи): в инструкции писать, что базу обязательно надо снять с поддержки и внедрить такой-то модуль с таким-то текстом?
А если база своя то можно где-то обойтись и функциями общих модулей - тут согласен. Правда не всегда это будет оптимально в плане производительности.
23. Synoecium 695 10.08.16 12:47 Сейчас в теме
(14) вообще да, согласен. Глобальные методы из коробки - хорошее подспорье для внешних отчетов например. Так что плюс)
16. starik-2005 2176 10.08.16 10:47 Сейчас в теме
Даже экспортные функции и даже на 8.2 работают. Так что не понимаю, в чем новизна статьи.
17. klinval 293 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 293 29.08.16 09:12 Сейчас в теме
Пришёл ответ от разработчиков (далее цитирую):
Ответ от разработчиков:
В выражениях компоновки данных можно использовать функции общих модулей и функции глобального контекста.
26. herfis 365 29.08.16 09:42 Сейчас в теме
В выражениях компоновки данных можно использовать функции общих модулей и функции глобального контекста.

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

У меня это тоже основная версия, но никто кроме разработчиков платформы её подтвердить или опровергнуть не может...
28. Aphanas 140 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 71 25.08.17 14:16 Сейчас в теме
(28) 1С:Предприятие 8.3 (8.3.10.2466) Синтаксическая ошибка "XMLСтрока". Что я делаю не так?
33. kasper076 71 25.08.17 15:22 Сейчас в теме
(32) (28) В консоли СКД не работает. А если встроить в базу, то работает. Мож конечно консоль кривая.
34. Aphanas 140 30.08.17 12:16 Сейчас в теме
(33) У меня здесь работает во внешнем отчете
https://infostart.ru/public/548198/
35. kasper076 71 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 140 31.08.17 09:52 Сейчас в теме
(35) В строке
"ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных, , ДанныеРасшифровкиОбъект, Ложь);"
процедуры "Команда1НаСервере", вместо "Ложь" нужно поставить "Истина".

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

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

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

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

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

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

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

См. также

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

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

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

3 стартмани

20.04.2018    18365    76    Serg1701    19    

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

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

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

1 стартмани

05.07.2020    1545    3    Алексей Воробьев    16    

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

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

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

1 стартмани

17.06.2020    664    0    Salimbek    3    

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

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

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

1 стартмани

30.04.2020    2120    0    zaxarovsky    4    

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

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

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

1 стартмани

08.02.2018    25479    19    mvxyz    17    

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

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

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

1 стартмани

08.04.2020    1704    0    ErrorEd88    5    

Задачка: Список всех документов за заданный период, используя СКД

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

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

1 стартмани

11.03.2020    1419    0    MaxxiMiliSan    7    

Программное создание динамического списка на управляемой форме. (Динамическое создание динамического списка). Готовая процедура + обработка - демонстрационный пример Промо

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

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

1 стартмани

19.01.2018    53581    60    rpgshnik    27    

Запуск фонового задания во внешней обработке без регистрации в справочнике "Дополнительные отчеты и обработки"

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

Описал, как показать прогресс выполнения длительной операции во внешней обработке, и при этом не регистрировать обработку в справочнике "ДополнительныеОтчетыИОбработки". Проверял на БСП версии "3.1.2.264".

1 стартмани

09.03.2020    3216    8    VinnieThePOOH    5    

Методика обновления формы объекта данных при изменении объекта

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

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

1 стартмани

09.03.2020    6044    0    tormozit    13    

СКД: штрихкоды в несколько колонок

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

СКД. Ресурсы в несколько колонок, на примере РС Штрихкоды номенклатуры.

1 стартмани

02.03.2020    1625    1    shetill    0    

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

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

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

1 стартмани

31.03.2017    13908    16    Vin_Tik    0    

СКД: красивые надписи в заголовках колонок

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

Необходимо немного исправить вывод надписей в заголовках колонок, сделать более читаемый вариант. Как это сделать?

2 стартмани

27.02.2020    8594    7    wowik    36    

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

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

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

3 стартмани

03.02.2020    2054    3    Denr83    0    

Вывод сообщений в HTML поле средствами 1С

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

Пример использования вывода большого количества сообщений в поле HTML. С возможностью открывать ссылочные объекты и создавать новые объекты передавая параметры прямо из HTML поля. Протестировано на релизах 8.3.12 и 8.3.15+

2 стартмани

31.01.2020    4770    6    burni4    16    

Редактирование данных прямо в отчете СКД (как в Excel). Теперь с пересчетом итогов! Промо

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

Вам не подходит обычная форма ввода данных Клиент хочет прямо в отчете изменять цифры Тогда этот шаблон поможет вам быстро добавить в ваш отчет СКД механизм редактирования данных

2 стартмани

21.11.2012    38888    265    Visitizer    51    

Как в 1С создать паутинку "как на Инфостарте"

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

Добрый день, уважаемы коллеги! В этой статье я расскажу, как в 1С создать отчет - "паутинку" на примере отчета по компетенциям сотрудника (разрабатывала на платформе 1С:Предприятие 8.3 (8.3.13.1865).

1 стартмани

15.01.2020    8623    4    user660153_aleks.pisanets    17    

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

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

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

1 стартмани

10.01.2020    1925    2    info1i    0    

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

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

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

1 стартмани

23.12.2019    2798    4    asdfgcom    2    

Расширения конфигураций 1С: учимся перехватывать методы Промо

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

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

1 стартмани

30.05.2017    116527    13    signum2009    46    

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

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

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

1 стартмани

20.12.2019    2747    3    okon-teh    2    

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

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

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

1 стартмани

17.12.2019    6472    2    azhilichev    5    

Решение задач по мотивам статьи "30 задач. Странных и не очень"

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

Обработка по мотивам статьи: https://infostart.ru/public/1161686/

1 стартмани

04.12.2019    2458    2    batsy66    9    

Неоплаченные долги при распределении оплаты по правилу ФИФО одним запросом и намного быстрее, чем Вы думали Промо

Практика программирования Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 v8::СКД КА1 УТ10 УПП1 УУ Абонемент ($m)

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

1 стартмани

28.02.2014    67078    398    ildarovich    123    

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

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

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

1 стартмани

03.12.2019    2571    6    Denr83    0    

Программное добавление параметров редактирования СКД

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

В данной публикации приводится пример программного добавления параметров редактирования для поля выборки в СКД.

1 стартмани

25.11.2019    4638    1    Isonic    7    

html + css + js в поле HTML документа 1С на примере решения задачи ханойских башен

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

Рассматривается пример использования html + css + js в полеHTMLдокумента 1с. Вызов функций javascript со стороны 1С с передачей параметров. Решение головоломки "Ханойская башня" с визуализацией в среде 1С.

1 стартмани

11.11.2019    5005    7    mangushov    0    

Учим 1С разговаривать с клиентами или работаем с API Бродкастер Промо

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

Пример использования API Бродкастера в 1С. Совершаем автоматические обзвоны путем синтезирования речи из текста.

29.09.2014    32452    33    Zircool    30    

Описание формата внутреннего представления данных 1С в контексте обмена данными

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

Фирма 1С не рекомендует использовать внутреннее представление данных для любых целей, которые отличны от обмена с 1С:Предприятием 7.7. Но сама возможность заглянуть на "внутреннюю кухню" платформы с помощью функций ЗначениеВСтрокуВнутр(), ЗначениеВФайл(), ЗначениеИзСтрокиВнутр() и ЗначениеИзФайла(), дала возможность сообществу программистов 1С разработать новые приемы разработки и анализа. Так, именно на использовании внутреннего представления был построен алгоритм "быстрого массива", который позволяет практически мгновенно создать массив в памяти на основании строки с разделителями. С помощью разбора внутреннего представления можно "на лету" программным кодом выполнить анализ обычной формы и даже сделать редактор графической схемы. Во внутреннем формате сохраняют свои данные между сеансами различные популярные внешние обработки. А еще это возможность сделать быстрый обмен с внешними системами.

1 стартмани

06.09.2019    17039    11    Dementor    30    

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

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

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

1 стартмани

15.08.2019    3883    0    BraunAlex    2    

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

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

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

1 стартмани

12.08.2019    11123    7    Yashazz    18    

Мастер рассылки e-mail 2.2 для управляемых форм Промо

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

Для пользователей: переделанный из старый разработки под 8.2 с использованием библиотеки Мастер рассылки e-mail 2.2 (ERP, УТ, БП) (Только управляемые формы), который теперь может запускаться под любой версией платформы с разрешенными или запрещенными модальными/синхронными вызовами в конфигурации. Также удобный выбор e-mail и их владельцев с помощью отбора динамического списка по любым критериям и галочки исключения.

1 стартмани

29.12.2015    35420    19    milkers    4    

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

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

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

1 стартмани

09.08.2019    13953    17    nagaitseff    6    

Организация функционала наценок по позициям либо сегментам номенклатуры в УТ 11.4

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

В статье описан один из методов реализации задачи установки скидок/наценок в соответствии с заданным процентом по позициям/сегментам номенклатуры. Так-же продемонстрирован принцип создания произвольного запроса к ИБ в виде цен. Протестировано на релизе Управление торговлей, редакция 11.4.8.92.

1 стартмани

07.08.2019    3776    1    cheiser1982    2    

Изменяющееся контекстное меню в 1С 8.3

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

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

1 стартмани

06.08.2019    13779    2    signum2009    15    

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

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

Данная статья появилась благодаря периодически появляющимся вопросам на сайте http://1cskd.ru/. Задачи, которые задают авторы вопросов совсем не тривиальные, но их можно решить с помощью СКД.

5 стартмани

09.04.2014    150491    68    SITR-utyos    49    

Расчет сложных итогов СКД

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

Малоизвестный прием для расчета итогов в отчетах на СКД.

1 стартмани

05.08.2019    14886    12    masterkio    9    

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

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

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

2 стартмани

04.08.2019    4510    1    aximo    5    

Универсальная печать штрихкодов 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    4533    24    ivanchai    7    

Генератор кода 8.x (Управляемые и обычные формы) Промо

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

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

1 стартмани

30.09.2011    26693    15    milkers    54    

Многоуровневая нумерация в отчете СКД (программный вывод)

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

Реализация многоуровневой нумерации при программном выводе отчета СКД основываясь на его структуре.

1 стартмани

01.07.2019    6382    6    lmnlmn    7    

Иерархическая нумерация в отчете СКД с помощью макета поля

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

Представляю Вашему вниманию вариант решения задачи нумерации строк иерархического отчета на СКД.

1 стартмани

28.06.2019    6484    5    Isonic    14    

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

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

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

1 стартмани

22.06.2019    4769    6    lisrws    5    

Методика упрощения поддержки конфигураций. Переопределение и вызов обработчиков событий для УФ 1С 8.2-8.3 Промо

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

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

1 стартмани

10.02.2013    52982    27    pbazeliuk    40    

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

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

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

1 стартмани

20.06.2019    3826    3    MuI_I_Ika    2    

Простые примеры сложных отчетов на СКД

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

Подписи в отчете. Особенности соединения наборов: как соединить несоединяемое. Остатки на дату и обороты по месяцам в одном отчете. Курс валюты на каждую дату без группировок и соединений в запросе. Отчет с произвольными колонками и с произвольной последовательностью. "Неадекватный отчет".

1 стартмани

12.06.2019    26804    19    Hatson    22    

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

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

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

1 стартмани

10.06.2019    5127    3    mvxyz    8    

Авторегистрация обработок заполнения табличных частей и внешних печатных форм в информационной базе + Видео-пример использования шаблона - создание внешней печатной формы самостоятельно + Универсальный отчет СКД (набор отчетов в одном с группировками уров Промо

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

Если Вы станете использовать в Ваших разработках нижеприведенную методику, тогда Вам больше никогда не придется тратить свое время на объяснение пользователю, КАК ему зарегистрировать Вашу разработку в базе (пользователю достаточно только открыть её или перетащить драг-энд-дропом в 1С:Предприятие). И вообще, на мой взгляд данная методика является примером хорошего тона отношений разработчик-клиент

1 стартмани

03.03.2010    31659    34    Borisych    25    

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

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

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

1 стартмани

03.06.2019    12095    0    D.B.Sokolov    20    

Картинки во внешней печатной форме (Шапка и табличная часть)

Печатные формы документов Практика программирования Разработка v8::ОУ v8::УФ УТ11 Россия Абонемент ($m)

Способы вывести на печать картинку в шапке и в табличной части внешней печатной формы. Управление торговлей, редакция 11 (11.4.7.150).

1 стартмани

27.05.2019    8931    7    Povinger    1    

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

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

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

1 стартмани

23.05.2019    12719    98    bulas    27    

Поле "Отбор" в управляемой форме используя СКД

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

Пример, который осуществляет отбор ссылок при помощи СКД, макет компоновки создается программно.

1 стартмани

17.05.2019    7262    8    artms    0