Автоматическое преобразование схемы СКД в программный код

12.02.13

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

Программное заполнение СКД - это просто )

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
(только для физ. лиц)
Конвертер схемы СКД
.erf 51,66Kb
873 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

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


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

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

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

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

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    202344    1116    410    

1021

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    35553    206    104    

195

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    23945    62    26    

92

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

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

16000 руб.

10.11.2023    16438    69    39    

88

Инструментарий разработчика Программист 1С v8.3 Платные (руб)

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

9360 руб.

17.05.2024    34639    123    53    

165

SALE! 30%

Инструментарий разработчика WEB-интеграция 1С v8.3 1C v8.2 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Инструмент для генерации OpenApi (Swagger) спецификаций на основании файлов конфигураций 1С. Это консольное и десктопное приложение на языке Rust с полноценным редактором кода, содержащим автозамену и подсвечивание ошибок для быстрого и безошибочного написания документирующего комментария.

18000 12600 руб.

22.11.2024    1698    1    0    

8

Инструментарий разработчика Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

6000 руб.

07.02.2018    107137    249    100    

313
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. maxis33 45 12.02.13 10:13 Сейчас в теме
Интересная разработка, попробую на досуге!
2. mxm2 1277 12.02.13 14:58 Сейчас в теме
плюс за идею.
belas; lmm; semario; +3 Ответить
3. Yashazz 4861 12.02.13 21:25 Сейчас в теме
Мощно. Идея лежала на поверхности, но её надо было воплотить.
Единственно, интерфейс бы дорихтовать - "Группа отбор" это так и задумано, или не поменян заголовок?
4. kiruha 389 12.02.13 21:26 Сейчас в теме
Да ляп,спасибо - поправлю.
5. semario 11 13.02.13 06:17 Сейчас в теме
+1 за идею и реализацию... а то в "кишках" копаться иногда ой как неохота)
6. sanches 255 13.02.13 06:58 Сейчас в теме
Спасибо, интересно. Обработка только для управляемых форм?
8. kiruha 389 13.02.13 11:20 Сейчас в теме
(6) sanches,

Да, для управляемых - но добавить обычную не проблема - если кому тонужно
33. AlexO 136 15.03.13 10:57 Сейчас в теме
(8)
Да, для управляемых

(20) wowik,
На 8.2.13 не работает.

(21)
на предыудищих релизах может не работать, если в платформе были изменения в компоновке

- хоть стой, хоть падай. Привет от 1с.
7. 0vrcr 57 13.02.13 09:45 Сейчас в теме
На скринах не увидел (портянку с кодом не изучал) формирует ли она сам процессор компоновки. Формирует? :) Определение внешних источников данных?
9. kiruha 389 13.02.13 11:24 Сейчас в теме
(7) 0vrcr,

Нет, она формирует программно только схему компоновки
Дальше я же не знаю что захочет сделать с ней программист
В режиме отбора надо самостоятельно вставить кусок кода куда нужно - т.е. получить схему, очистить например группировки,
потом скопировать и отредактировать код, далее отправить по назначению.
32. AlexO 136 15.03.13 10:00 Сейчас в теме
(9)
Нет, она формирует программно только схему компоновки

Т.е. "иммитирует" программное создание Отбора, Настроек, Добавление полей, Параметры, Запрос и все?
Т.е. основного кода принципа создания и "контроля" за СКД - не формирует?
(13) SeiOkami,
Чтобы обработка создала файл отчета на основе готового на СКД

Какого "готового" СКД? Здесь нет создания самого отчета, его обработки и вывода. Только - схема.
(3) Yashazz,
Мощно. Идея лежала на поверхности, но её надо было воплотить.

Если мощно - то надо написать, что не сам СКД делает программно, а схему настроек.
(22) integragirl,
хоть увидеть все кишки скд-шки можно

нет, не можно. Это не тот конвертер.
(24) revril,
станет более понятнее механизм СКД!

более понятным не станет.
Применение обработки - поменять/добавить параметры и подобное (при том, что еще нужно знать, в какое место этот код добавлять, и где). Но не "сделать отчет на СКД".
10. Arvend 23 13.02.13 11:40 Сейчас в теме
Спасибо, сильная вещь.
kuzyara; alekseineputin; +2 Ответить
11. Pechenuych_ka 13.02.13 17:55 Сейчас в теме
12. DoctorRoza 13.02.13 19:12 Сейчас в теме
Поддерживаю, нужная вещица! :)
13. SeiOkami 3590 13.02.13 21:37 Сейчас в теме
Плюс!
Автор, можно реализовать своего рода "конвертёр" отчетов. Чтобы обработка создала файл отчета на основе готового на СКД (ну или просто на основе СКД) и туда прописала этот код. Это так, идея такая в голову пришла)
15. kiruha 389 13.02.13 22:21 Сейчас в теме
(13) SeiOkami,
да, интересно, надо обмозговать как это сделать получше...
Все таки отчет не только схема
23. Yran 20.02.13 19:11 Сейчас в теме
(15)
Плюс однозначно, а если еще реализует "конвертёр" (13)SeiOkami тогда 5 плюсов.
14. Rebel2007 13.02.13 21:49 Сейчас в теме
Попробую протестить на досуге.
За идею плюс (+)!
16. Матрос 14.02.13 04:39 Сейчас в теме
"Плюс".
Спасибо все кто не поленился дочитать этот текст )

Не поленился.
17. masik85 21 14.02.13 09:29 Сейчас в теме
офигеть +, одно дело мысль, другое дело -реализовать, просто преклоняюсь...
18. psih12 131 14.02.13 10:11 Сейчас в теме
А для обычных форм можете выложить?
19. amadeus2011 18.02.13 10:21 Сейчас в теме
спасибо автору за интересную разработку, очень помогает при разработке отчетов
20. wowik 894 18.02.13 16:42 Сейчас в теме
21. kiruha 389 19.02.13 22:57 Сейчас в теме
(20)
8.2.17
на предыудищих релизах может не работать, если в платформе были изменения в компоновке
22. integragirl 20.02.13 15:23 Сейчас в теме
Респект автору! Очень полезная вещь, хоть увидеть все кишки скд-шки можно.
24. revril 21.02.13 15:26 Сейчас в теме
Начала изучать СКД. Долго получилась с программной установкой отбора! Думаю с помощью вашей разработки станет более понятнее механизм СКД! Спасибо!
25. Al-X 22.02.13 15:33 Сейчас в теме
+ !!! Мне эта обработка точно пригодиться !!! ;)
34. AlexO 136 15.03.13 10:58 Сейчас в теме
(25) Al-X,
Мне эта обработка точно пригодиться !

судя по аватаре - нет, не пригодится.
Уже ничего не поможет.
26. zba 48 24.02.13 17:06 Сейчас в теме
27. Alister 10 24.02.13 17:10 Сейчас в теме
для обычных форм можете выложить?

Присоединяюсь к просьбе.
28. amiralnar 9 09.03.13 17:33 Сейчас в теме
Крута! Спасибо, пригодилась!
29. sheff161 2 10.03.13 19:02 Сейчас в теме
выложите для обычных форм
35. AlexO 136 15.03.13 10:59 Сейчас в теме
(29) mi4asib,
выложите для обычных форм

на самом деле, kiruha, доделайте уж страждущим. Пусть радуются :)
30. oberonm 9 11.03.13 11:33 Сейчас в теме
31. ivanov660 4750 12.03.13 11:48 Сейчас в теме
Интересная идея. Будет время попробую поискать с практической точки зрения, вроде и задачка похожая есть.
36. kiruha 389 16.03.13 12:25 Сейчас в теме
Так она же для разработчиков - запустил режим управляемого приложения - переконвертировал и все.
Минимум усилий
37. lamelioss 143 25.06.13 18:01 Сейчас в теме
Мощная штуковина =)) автору большое спасибо! )))
38. lamelioss 143 25.06.13 18:02 Сейчас в теме
если будут обновления под нее - вообще шоколад, а то галки по скд искать всесто привычного кода - это сатанизм =))
39. vasiliy_b 284 26.06.13 08:30 Сейчас в теме
Не работает, в клиент серверном варианте.
Файл(отчет), нужно передавать на сервер через временное хранилище.
40. kiruha 389 02.07.13 18:00 Сейчас в теме
(39)
Ок, спасибо - поправлю как только с работой разгребусь
41. kruglay 112 19.07.13 13:56 Сейчас в теме
ТОже плюсану!!!Много работы проделано
42. chmv 24.07.13 15:14 Сейчас в теме
43. ixijixi 2034 07.08.13 16:34 Сейчас в теме
(0) Обычные формы, плизззз! Заранее плюс и спасибо!
44. alex_sear 08.08.13 05:36 Сейчас в теме
За работу жирный плюс, думаю некоторые вещи можно допилить =)
Вопрос автору, разработка данной обработки будет продолжаться?
45. Sabfir 14.08.13 13:27 Сейчас в теме
Классная штука.
Попробовал - очень полезно, не надо вспоминать что да как делается.
Еще бы код вставить который формирует программно отчет.
46. пользователь 14.08.13 17:48
Сообщение было скрыто модератором.
...
47. GreenFox 16.08.13 13:48 Сейчас в теме
Да обычных форм не хватает, а код который формирует программно отчет можно и самому написать и в себе в шаблонах сохранить. Автор - молодец.
48. dyak84 19.08.13 15:54 Сейчас в теме
Автор ваша работа вещь знатная слов нет. Только есть к вам небольшая прозьба все ето дело виложить для обычных форм. Буду очень и очень признательным. Зарание спасибо
49. mixa_gr 54 05.09.13 11:07 Сейчас в теме
Заметил, что при использовании нескольких групп полей в исходном отчете получается не несколько групп на одном уровне, а группы вложенные одна в другую. Хотя вряд ли кто будет так программно выводить. Как правило достаточно получить результирующую табличку. Отличная разработка. Неплохо бы добавить НЕ управляемую форму.
50. andpyxa 07.09.13 14:59 Сейчас в теме
Хорошая обработка, но ... хотел добавить обычную форму, открываю управляемую и вижу, что ВыполнитьПреобразованиеСервер() для преобразование вызывает вот такой вот хлам:

Функция bf8ca7868f0b46ca8e0aff9842ca2f2e
(a4bc2cc3040f4a127185588664e56,b3c8d32b68439b8ceb9de3cc700a94,af5874c967904edb82d0ebdf07778a4a,e7f008e4c48e6a042534817346cbc,da9c9c8b78411f9975155bdaac975c,aac765476383f42f6f21678844,d5e02ed4aa386614f3035c50060,bda8d53b5c464b38ade2958a60674b0e,ea312c14e25a862559cbcd8af79,b892134c74215a0dbae7dd491ebd8,df79010b;
...
... и так далее.
Просьба заменить на адекватный текст, нам тут шифроваться не от кого !
51. Светлый ум 455 20.09.13 10:00 Сейчас в теме
Ковертирует только основной макет, а если у меня составной отчет из 8 схем - то не видит.
52. Светлый ум 455 20.09.13 10:03 Сейчас в теме
dyak84, Если управляемую обработку (отчет) поместить в дерево конфигурации - то её можно будет открыть в обычном режиме (псевдоуправляемый).
53. andpyxa 10.10.13 13:43 Сейчас в теме
Вместо обычных форм можно использовать толстый клиент, или сделать обычную форму самому примерно за час.
54. ЧИА 170 13.04.14 21:05 Сейчас в теме
Скачал, хотел посмотреть, как генерятся программно пользовательские поля.
ПользовательскоеПолеВыражениеКомпоновкиДанных
К сожалению, заголовки выбрало, а формулы - нет
55. васисубатор 68 14.05.14 22:01 Сейчас в теме
По описанию вещь полезная, жаль посмотреть нет денег
56. kiruha 389 15.05.14 10:12 Сейчас в теме
Новые публикации невозможно сделать "без смартмани" - это к админам сайта
Также сейчас нет времени на поддержку - на днях выложу с открытым кодом , чтобы править могли все кто пожелает
57. pumbaE 13.06.14 13:09 Сейчас в теме
(56) а можно по просить "на днях" поскорей, хоть сырой вариант?
58. stas1kbob 60 10.07.14 12:44 Сейчас в теме
выглядит круто, не пробовал
59. andpyxa 25.10.14 22:33 Сейчас в теме
ест уже вариант для загрузки без обсфукации, или пока ещё ждём ?
60. Voffffka 29 14.07.15 15:15 Сейчас в теме
Нужная вещь, то что искал! Только вот ошибочки бы поправить или код открыть,)
61. vpaoli 26 06.11.19 17:06 Сейчас в теме
Хотел посмотреть, что там ...
но получаю ошибку

Каталог не обнаружен 'C:\Users\Иванов\Documents\_БухКОРП\Отчеты\ОтчетОДвиженииТМЦ_БП­Корп.erf'
{ВнешнийОтчет.КонверторСхемыСКД.Форма.ФормаОтчета.Форма(128)}: ОбъектОтчет=ВнешниеОтчеты.Создать(ПутьКФайлуКомпоновки);
{ВнешнийОтчет.КонверторСхемыСКД.Форма.ФормаОтчета.Форма(150)}: ЗаполнитьМакеты();

по причине:
Ошибка подключения внешних метаданных
по причине:
Каталог не обнаружен 'C:\Users\Иванов\Documents\_БухКОРП\Отчеты\ОтчетОДвиженииТМЦ_БП­Корп.erf'
63. SeiOkami 3590 06.11.19 18:01 Сейчас в теме
(61) скорее всего открываете с каталога, который недоступен на сервере. На серверных базах лучше всегда открывать инструменты с общедоступного каталога.
65. vpaoli 26 07.11.19 15:23 Сейчас в теме
(63) Спасибо. Вы оказались правы. В БД на моем компьютере все открылось без проблем. Автору респект!
62. vpaoli 26 06.11.19 17:11 Сейчас в теме
Я так тоже хочу стартмани зарабатывать , "чтобы править могли все кто пожелает" ... )))
64. kiruha 389 06.11.19 19:04 Сейчас в теме
(62)
Это уже устаревшая разработка - уже не поддерживается.

Скачал у вас также обработку за 1см
Оставьте свое сообщение