Описание формата контейнера 1С (CF, EPF, ERF, CFE) с помощью БНФ. Предлагается внешняя компонента на С

27.11.24

Разработка - Разработка внешних компонент

На чем только не писали работу с контейнером: C++, C#, Python, Delphi (Lazarus), и даже на такой экзотике, как Lua и 1С! Хотите экзотик, их есть у меня! И это… язык C!

Скачать файл

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

Наименование По подписке [?] Купить один файл
Обработка с внешней компонентой на C для работы с контейнером 1С
.epf 3,59Mb ver:2.0.0.2
14
14 Скачать (5 SM) Купить за 3 050 руб.

Зачем?! На C и вправду ничего в экосистеме 1С нет. Или мне не попадалось. И, кроме пополнения списка в статье VKislitsin, хотелось сравнить скорость с платформой 1С. Здесь, правда, возникает проблема: если получить скорость разбора контейнера в компоненте просто, как получить эту скорость в 1С? Приходится прибегать к замеру «по часам», что даёт очень не точный результат.

В Windows в режиме тонкого клиента среднее значение времени получения метаданных из ERP 2.5.12.48 компонентой составляет 640 мс. Открытие того же файла в 1С Конфигураторе 8.3.23.1739 (х64) – около 5 000 мс. Таким образом, прирост скорости в ≈ 8 раз. Но из внешней компоненты возвращается текст в JSON, его разбор и отображение в 1С занимает, вместе с запросом в ВК, ≈ 3000 мс. При таком расчете прирост скорости падает с 8 до ≈ 1,7 раза.

Для тестирования скорости желательно временно отключить Защиту в реальном времени Microsoft Defender (если он у вас включен). Служба Antimalware service executable очень сильно тормозить выполнение ВК. 

 

В Linux, запущенной в Oracle VM VirtualBox, в режиме тонкого клиента среднее значение времени получения метаданных из ERP 2.5.12.48 компонентой составляет 1030 мс. Открытие того же файла в 1С Конфигураторе 8.3.23.1739 (х64) – около 20 000 мс. Таким образом, прирост скорости в ≈ 20 раз. Как неожиданно и... странно!

Для реализации работы в веб-клиенте использовалась обработка из статьи Решение для работы внешней компоненты в веб-браузере под Windows и Linux: 1С + Installer.

Эта статья, в некотором смысле, опирается на работу Андрея Овсянкина Описание формата файлов конфигурации (CF, EPF, ERF) и использует её терминологию.

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

Контейнер – файл с конфигурацией (cf),  внешняя обработка (epf), внешний отчет (erf) или расширение (cfe). Если проводить аналогию с файловой системой, то контейнер - это логический диск. Файл внутри контейнера – это поименованная совокупность данных. Файл всегда состоит из двух документов: документа заголовка и документа с содержимым файла. Документ, в свою очередь, состоит из блоков. Блок – это структура из заголовка и следующего строго за ним тела блока. Начиная с версии платформы 8.3.16, появилась новая версия контейнера. Эта версия есть только для конфигурации (cf), и представляет собой адаптацию для работы с 64-х разрядными (UINT64) адресами (старая версия работает с 32-х разрядными (INT32) адресами).

Метаданное – это связанная совокупность файлов. Метаданные – вся структура метаданных в контейнере. В контейнере для работы с метаданными находятся несколько вспомогательных файлов: root, version, versions, copyinfo, configinfo. Root/configinfo – это файл, с которого начинается работа с метаданными контейнера. 

Root используется для конфигурации (cf),  внешней обработке (epf), внешнего отчета (erf), для расширения (cfe) – configinfo. Внутри root файла находится id файла с описанием структуры метаданных.

В файле version находится информация о версии контейнера, например: {{216,0,{80323,0}}}, где 80323 – номер версии. Если номер версии меньше 80316 – версия с 32-х разрядной адресацией, иначе – с 64-х разрядной. Имеет смысл только для конфигурации, в обработке, отчете, расширении всегда 32-х разрядная версия, вне зависимости от того, что написано в файле version.

В файле versions находятся пары «id метаданного», id версии метаданного. Используется для кэширования метаданных. 

В файле copyinfo в формате внутренних данных 1С хранится информация об изменениях. Есть, судя по всему, только во внешних отчётах и обработках.

Configinfo используется в расширении вместо root, version, versions.

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

Например, в ERP 2.5.12.48.cf, у справочника Файлы с id e7b0ae70-0192-456c-9dc5-e66049fa9df2, постфикса модуля объекта (см. ниже таблицу) - 0, то есть, id файла с модулем объекта - id.0, e7b0ae70-0192-456c-9dc5-e66049fa9df2.0. Аналогично, модуль менеджера - e7b0ae70-0192-456c-9dc5-e66049fa9df2.3, справочная информация, e7b0ae70-0192-456c-9dc5-e66049fa9df2.1, предопределенные данные, внезапно!, e7b0ae70-0192-456c-9dc5-e66049fa9df2.1c. Не все постфиксы однозначные и цифровые.

С частями произвольного количества несколько сложнее: нужно в файле атрибутов найти id части, для справочников id форм - fdf816d2-1ead-11d5-b975-0050bae0a95d. Получаем имена файлов формы, например, ФормаВыбора: Атрибуты формы - 5a398637-a06c-4442-9093-a864fa7f049f, Форма и модуль - 5a398637-a06c-4442-9093-a864fa7f049f.0, Справочная информация - 5a398637-a06c-4442-9093-a864fa7f049f.1. Аналогично с макетами, командами, перерасчетами.

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

Виды метаданных    ID вида метаданного    Модуль объекта/ набора записей    Модуль менеджера    Справочная информация    Предопределенные значения    Формы    Команды    Макеты
Неизвестный вид метаданных    39bddf6a-0c3c-452b-921c-d99cfa1c2f1b                            
Подсистемы    37f2fa9a-b276-11d4-9435-004095e12fc7                            
Общие модули    0fe48980-252d-11d6-a3c7-0050bae0a776                            
Параметры сеанса    24c43748-c938-45d0-8d14-01424a72b11e                            
Роли    09736b02-9cac-4e3f-b4f7-d3e9576ab948                            
Общие реквизиты    15794563-ccec-41f6-a83c-ec5f7b9a5bc1                            
Планы обмена    857c4a91-e5f4-4fac-86ec-787626f1c108    2    3    0        87c509ab-3d38-4d67-b379-aca796298578    d5207c64-11d5-4d46-bba2-55b7b07ff4e    3daea016-69b7-4ed4-9453-127911372fe6
Критерии отбора    3e7bfcc0-067d-11d6-a3c7-0050bae0a776        0            00867c40-06b1-11d6-a3c7-0050bae0a776    23fa3b84-220a-40e9-8331-e588bed87f7d    
Подписки на события    4e828da6-0f44-4b5b-b1c0-a2b3cfe7bdcc                            
Регламентные задания    11bdaf85-d5ad-4d91-bb24-aa0eee139052                            
Боты    6e6dc072-b7ac-41e7-8f88-278d25b6da2a    1                        
Функциональные опции    af547940-3268-434f-a3e7-e47d6d2638c3                            
Параметры функциональных опций    30d554db-541e-4f62-8970-a1c6dcfeb2bc                            
Определяемые типы    c045099e-13b9-4fb6-9d50-fca00202971e                            
Хранилища настроек    46b4cd97-fd13-4eaa-aba2-3bddd7699218        8            b8533c0c-2342-4db3-91a2-c2b08cbf6b23        3daea016-69b7-4ed4-9453-127911372fe6
Общие команды    2f1a5187-fb0e-4b05-9489-dc5dd6412348    2        1                
Группы команд    1c57eabe-7349-44b3-b1de-ebfeab67b47d                            
Общие формы    07ee8426-87f1-11d5-b99c-0050bae0a95d            1                
Общие макеты    0c89c792-16c3-11d5-b96b-0050bae0a95d                            
Общие картинки    7dcd43d9-aca5-4926-b549-1842e6a4e8cf                            
XDTO-пакеты    cc9df798-7c94-4616-97d2-7aa0b7bc515e                            
Web-сервисы    8657032e-7740-4e1d-a3ba-5dd6e8afb78f    0                        
HTTP-сервисы    0fffc09c-8f4c-47cc-b41c-8d5c5a221d79    0                        
WS-ссылки    d26096fb-7a5d-4df9-af63-47d04771fa9b                            
Сервисы интеграции    bf3420b0-f6f9-41a0-b83a-fe9d4ab0b65d    0                        
Элементы стиля    58848766-36ea-4076-8800-e91eb49590d7                            
Стили    3e5404af-6ef8-4c73-ad11-91bd2dfac4c8                            
Языки    9cd510ce-abfc-11d4-9434-004095e12fc7                            
Константы    0195e80c-b157-11d4-9435-004095e12fc7    0    1                    
Справочники    cf4abea6-37b2-11d4-940f-008048da11f9    0    3    1    1c    fdf816d2-1ead-11d5-b975-0050bae0a95d    4fe87c89-9ad4-43f6-9fdb-9dc83b3879c6    3daea016-69b7-4ed4-9453-127911372fe6
Документы    061d872a-5787-460e-95ac-ed74ea3a3e84    0    2    1        fb880e93-47d7-4127-9357-a20e69c17545    b544fc6a-2ba3-4885-8fb2-cb289fb6d65e    3daea016-69b7-4ed4-9453-127911372fe6
Нумераторы    36a8e346-9aaa-4af9-bdbd-83be3c177977                            
Последовательности    bc587f20-35d9-11d6-a3c7-0050bae0a776                            
Журналы документов    4612bd75-71b7-4a5c-8cc5-2b0b65f9fa0d        1    0        ec81ad10-ca07-11d5-b9a5-0050bae0a95d    a49a35ce-120a-4c80-8eea-b0618479cd70    3daea016-69b7-4ed4-9453-127911372fe6
Перечисления    f6a80749-5ad7-400b-8519-39dc5dff2542        0            33f2e54b-37ce-4a7a-a569-b648d7aa4634    6d8d73a7-ba29-401d-9032-3872ec2d6433    3daea016-69b7-4ed4-9453-127911372fe6
Отчеты    631b75a0-29e2-11d6-a3c7-0050bae0a776    0    2    1        a3b368c0-29e2-11d6-a3c7-0050bae0a776    e7ff38c0-ec3c-47a0-ae90-20c73ca72246    3daea016-69b7-4ed4-9453-127911372fe6
Обработки    bf845118-327b-4682-b5c6-285d2a0eb296    0    2    1        d5b0e5ed-256d-401c-9c36-f630cafd8a62    45556acb-826a-4f73-898a-6025fc9536e1    3daea016-69b7-4ed4-9453-127911372fe6
Планы видов характеристик    82a1b659-b220-4d94-a9bd-14d757b95a48    15    16    5    7    eb2b78a8-40a6-4b7e-b1b3-6ca9966cbc94    95b5e1d4-abfa-4a16-818d-a5b07b7d3f73    3daea016-69b7-4ed4-9453-127911372fe6
Планы счетов    238e7e88-3c5f-48b2-8a3b-81ebbecb20ed    14    15    5    9    5372e285-03db-4f8c-8565-fe56f1aea40e    0df30176-6865-4787-9fc8-609eb144174f    3daea016-69b7-4ed4-9453-127911372fe6
Планы видов расчета    30b100d6-b29f-47ac-aec7-cb8ca8a54767    1    3    0    2    a7f8f92a-7a4b-484b-937e-42d242e64144    2e90c75b-2f0c-4899-a7d4-5426eaefc96e    3daea016-69b7-4ed4-9453-127911372fe6
Регистры сведений    13134201-f60b-11d5-a3c7-0050bae0a776    1    2    0        13134204-f60b-11d5-a3c7-0050bae0a776    b44ba719-945c-445c-8aab-1088fa4df16e    3daea016-69b7-4ed4-9453-127911372fe6
Регистры накопления    b64d9a40-1642-11d6-a3c7-0050bae0a776    1    2    0        b64d9a44-1642-11d6-a3c7-0050bae0a776    99f328af-a77f-4572-a2d8-80ed20c81890    3daea016-69b7-4ed4-9453-127911372fe6
Регистры бухгалтерии    2deed9b8-0056-4ffe-a473-c20a6c32a0bc    6    7    5        d3b5d6eb-4ea2-4610-a3e2-624d4e815934    7162da60-f7fe-4d78-ad5d-e31700f9af18    3daea016-69b7-4ed4-9453-127911372fe6
Регистры расчета    f2de87a8-64e5-45eb-a22d-b3aedab050e7    1    2    0        a2cb086c-db98-43e4-a1a9-0760ab048f8d    acdf0f11-2d59-4e37-9945-c6721871a8fe    3daea016-69b7-4ed4-9453-127911372fe6
Перерасчеты    274bf899-db0e-4df6-8ab5-67bf6371ec0b    0                        
Бизнес-процессы    fcd3404e-1523-48ce-9bc0-ecdb822684a1    6    8    5        3f7a8120-b71a-4265-98bf-4d9bc09b7719    7a3e533c-f232-40d5-a932-6a311d2480bf    3daea016-69b7-4ed4-9453-127911372fe6
Задачи    3e63355c-1378-4953-be9b-1deb5fb6bec5    6    7    5        3f58cbfb-4172-4e54-be49-561a579bb38b    f27c2152-a2c9-4c30-adb1-130f5eb2590f    3daea016-69b7-4ed4-9453-127911372fe6
Внешние источники данных    5274d9fc-9c3a-4a71-8f5e-a0db8ab23de5                            
Внешние обработки    c3831ec8-d8d5-4f93-8a22-f9bfae07327f    0        1        d5b0e5ed-256d-401c-9c36-f630cafd8a62        3daea016-69b7-4ed4-9453-127911372fe6
Внешние отчеты    e41aff26-25cf-4bb6-b6c1-3f478a75f374    0        1        a3b368c0-29e2-11d6-a3c7-0050bae0a776        3daea016-69b7-4ed4-9453-127911372fe6

Постфиксы частей метаданных переменного количества
 
Описание формата схемы компоновки данных
 
Описание формата табличного документа
 
БНФ - форма Бэкуса - Наура.

<Контейнер 1С> ::= < Контейнер 1С , 32-х адресация>|<Заполнитель, 32-х адресация><Контейнер 1С, 64-х адресация>

БНФ версии с 32-х разрядной адресацией
 
БНФ версии с 64-х разрядной адресацией
 
Описание обработки

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

В обработке 5 закладок: Метаданные, Закрытые модули, Файлы, Выгрузить в директорию, Загрузить из директории.

На закладке Метаданные отображается дерево метаданных контейнера, аналогично конфигуратору 1С:

 

При выводе содержимого файла можно задать объём данных: 100Кб, 1Мб, не ограничено. Это сделано из-за того, что отображение больших файлов (versions, например) занимает очень много времени (минут 20).

На закладке Закрытые модули выводятся только те модули, которые закрыты паролями:

 

На закладке Файлы можно просмотреть файловую структуру контейнера. Кроме этого, для каждого файла есть возможность узнать его принадлежность к метаданным.

 

На этой же закладке реализована работа с CRUD: создание, обновление, удаление файла. Для создания и обновления файлов служит форма:

 

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

Но есть 3 исключения: файл Текст (text) закрытого паролем модуля (ДвоичныеДанные), табличный документ (ТабличныйДокумент), схема компоновки данных (СхемаКомпоновкиДанных). Для работы с этими исключениями в типе данных нужно выбрать соответствующее значение. В этом случае обработка преобразует из текстового формата в формат для записи в контейнер. Например, для создания файла с типом макета "Табличным документ", нужно выбрать тип содержимого ТабличныйДокумент и набрать текст самого документа в текстовом формате. При сохранении в контейнер содержимому файла будет добавлен двоичный заголовок. Аналогично с макетом типа "Схема компоновки данных". Что интересно, все остальные типы макетов сохраняются в текстовом формате.

Тот же алгоритм действий при необходимости загрузки/выгрузке содержимого файла на диск. Открываем файл для обновления, сохраняем содержимое на диск. Необходимые двоичные заголовки будут добавлены обработкой. Двоичные данные архива закрытого модуля (файл text) будут извлечены/помещены в base64.

Для создания файла внутри папки следует использовать знак "\" после id. Например, 0004654c-f91f-463d-a529-e23bb363ed21.1\text.

Чтобы удалить папку, необходимо удалить все её файлы.

Описание внешней компоненты
 
Заключение

Данная статья - ещё один маленький шаг к пониманию инфраструктуры 1С. Естественно, в ней возможны ошибки и недоработки. За конструктивную критику буду благодарен.

Update 2023.07.13. Добавлен новый тип метаданных - Интерфейсы. В обработке добавлена новая закладка для отображения закрытых модулей - Список. В ВК добавлен новый метод ЗапароленныеМодулиСписок. В запароленных модулях добавлен вид метаданных Константы. Изменена версия ВК на 1.1.0.1.

Update 2023.07.17. Добавлена поддержка формата метаданных 6 (8.0). Улучшено кэширование данных. Изменена версия ВК на 1.2.0.0. На C всё таки пишут, и это здорово: Статический анализатор кода 1С на Си.

Update 2023.08.11. Добавлена поддержка работы с кэшем 1С (versions), в том числе и для расширений (cfe).  В ВК добавлены методы АктуализироватьVersions и ОбновитьФайлВVersions. В метод НачатьЗагрузкуФайлов добавлен параметр Актуализировать версии кэшей. Добавлена новая форма для работы с файлом versions. Изменена версия ВК на 1.3.0.0. Оптимизирована скорость получения метаданных из ERP 2.5.12.48 с ≈ 3000 мс до ≈ 1350 мс.

Update 2024.04.15. Добавлена возможность работы в Linux 32/64 и в веб-браузерах Chrome и Firefox. На закладке Файлы используется режим пагинации, поскольку в режиме веб-клиента больше 10 000 элементов вызывают зависание на 20-30 минут. Поскольку ПрочитатьJSON в веб-клиенте не поддерживается, используется функция ПрочитатьЗначениеJSON, к тому же, она работает значительно быстрее. Из-за использования этой функции минимальная версия платформы ограничена версией 8.3.23, вместо 8.3.18. Чтобы запустить обработку  на версиях платформы младше 8.3.23, нужно раскомментировать код в конце модуля формы Основная.

Update 2024.11.27. Добавлена поддержка символов с кодами 1-31, кроме 9 (табуляция), 10 (перенос), 13 (возврат коретки). Для отображения символов используется шаблон '#0<код символа с ведущим нулем>;', например, #001; или #031;. Использование кода #000; запрещено и вызывает ошибку.

Исправлены выявленные ошибки.

Проверено на следующих конфигурациях и релизах:

  • 1С:ERP Управление предприятием 2, релизы 2.5.17.157

Контейнер 1С C Внешняя компонента Формат файлов конфигурации

См. также

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

Медиадисплей покупателя может отображать текущую покупку на кассовом месте, показывать видеорекламу, баннеры, во время простоя разворачивать рекламу на весь экран. Экран можно использовать в качестве графического меню-борда в кафе и видеовывески. В качестве устройства отображения можно использовать Android-планшеты, смарт-телевизоры с Android, мониторы или проекторы под управлением Windows или Linux-компьютера. Linux-версия успешно запускается на одноплатных компьютерах Raspberri Pi и Orange Pi. Настраивается ЛЮБОЙ ДИЗАЙН экрана при помощи встроенного графического редактора! Решение можно масштабировать от одного экрана до тысяч экранов с централизованным управлением.

18000 руб.

30.05.2017    54042    9    69    

46

Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

Внешняя компонента для конвертации PDF файлов в картинки без использования дополнительных программ. Работает на сервере и в тонком клиенте.

2400 руб.

25.06.2024    1127    3    4    

3

Разработка внешних компонент Телефония, SIP Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

2400 руб.

04.05.2018    47298    124    66    

67

Разработка внешних компонент Программист Платформа 1С v8.3 Платформа 1C v8.2 Платные (руб)

Внешняя компонента, позволяющая посылать команды и получать ответы по GraphQL протоколу из 1С.Может быть использована при интеграции. В 1С работает на стороне "клиента".

4600 руб.

27.06.2023    3598    3    0    

5

Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Позволяет автоматизировать работу с картинками. С помощью компоненты можно измерять размер изображений, поворачивать их, наносить водяные знаки, конвертировать из одного формата в другой. Будет очень полезна для интернет-магазинов и всех, кому постоянно требуется работать с различными графическими форматами. Выполнена по технологии NativeAPI. Работает с форматами: jpg (jpeg), png, bmp, gif, tif

3600 руб.

02.09.2010    77516    72    257    

191

Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 Платные (руб)

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer).

3000 руб.

12.05.2020    28655    138    100    

91

Разработка внешних компонент Системный администратор Программист Стажер Бесплатно (free)

Библиотека для работы с базами SQLite из 1С на основе внешней компоненты. Для Linux и Windows, бесплатно и с открытым исходным кодом!

14.01.2025    1839    bayselonarrend    10    

44

Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

В статье описывается приложение-конструктор внешних компонент (native API). Конструктор упрощает процесс разработки за счет удобного добавления всех нужных функций и процедур в графическом режиме, с указанием их параметров и типов параметров. На выходе приложение генерирует готовый код на С++ и Rust и позволяет сразу приступить к реализации, без настройки API компоненты вручную.

04.12.2024    4723    kovalevdmv    26    

75
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. SerVer1C 839 11.07.23 12:42 Сейчас в теме
4. bakmistoff1977 36 11.07.23 14:55 Сейчас в теме
(1) Пока не планирую. Здесь, несколько, академический интерес.
2. ZhokhovM 760 11.07.23 12:59 Сейчас в теме
Не все модули выводятся в обработке + повторяются ветки "Модули конфигурации" в закладке "Закрытые модули".
6. bakmistoff1977 36 11.07.23 15:01 Сейчас в теме
(2) Спасибо. А можно как-то поподробнее, в какой конфигурации это происходит?
7. ZhokhovM 760 11.07.23 15:34 Сейчас в теме
(6)Создайте пустую конфигурацию и добавьте в нее все объекты метаданных. Затем найдите любые модули в этих объектах и попробуйте установить пароль на них. Распакуйте конфигурацию в исходные файлы и обнаружьте, какие модули отсутствуют.
3. ZhokhovM 760 11.07.23 13:13 Сейчас в теме
В таблице видов метаданных с постфиксами единичных частей:
Неизвестный 39bddf6a-0c3c-452b-921c-d99cfa1c2f1b
Это вид метаданных "Интерфейс".
5. bakmistoff1977 36 11.07.23 14:56 Сейчас в теме
(3) Спасибо. Я такие старые версии конфигураций не рассматривал.
8. so-quest 140 16.07.23 07:38 Сейчас в теме
Подписка
prohorp; bakmistoff1977; +2 Ответить
9. Serjik78 1290 22.11.23 17:33 Сейчас в теме
Добрый день, а есть декомпиляция для расширений? (CFE).
10. bakmistoff1977 36 27.11.23 14:16 Сейчас в теме
(9) Добрый день! Извиняюсь, что поздно отвечаю, что-то Инфостарт не показывает сообщения. Эта обработка не про декомпиляцию. Она про работу с контейнером. И расширения *.cfe этой обработкой поддерживаются.
11. Serg2000mr 760 23.11.24 06:35 Сейчас в теме
При начале анализа cf от ERP 2.5.17 выскочила ошибка

Ошибка при вызове метода контекста (ПрочитатьЗначениеJSON)
{ВнешняяОбработка.РаботаСКонтейнером1С.Форма.Основная.Форма(192)}: СтруктураJSON = ПрочитатьЗначениеJSON(СтрокаJSON);
{ВнешняяОбработка.РаботаСКонтейнером1С.Форма.Основная.Форма(2442)}: ВыполнитьОбработкуОповещения(ОписаниеОповещения, Обещание);
по причине:
Строка не является допустимой строкой JSON.
Строка не является допустимой строкой JSON.
12. bakmistoff1977 36 23.11.24 18:11 Сейчас в теме
(11) Спасибо за комментарий.
С конфой Enterprise20_2_5_17_157.cf мне ошибку получить не удалось. Версия платформы: 8.3.23.1739, ОС: win 10, режимы запуска: тонкий и веб клиенты. Напишите, какая у вас версия платформы 1С, ОС, режим запуска. Если возможно, приложите файл с текстом JSON, который возвращается в СтрокаJSON.
13. Serg2000mr 760 23.11.24 20:01 Сейчас в теме
(12) Я проверил типовые cf, на них ошибки нет. В публичный доступ выложить JSON не могу, но при попытке сохранения файла, он обрезается в конце. Размер обрезанного файла 2 980 386 байт
Прикрепленные файлы:
14. Serg2000mr 760 23.11.24 20:37 Сейчас в теме
(13) Я убрал несколько элементов из обрезанного файла и добавил этот хвост. Потом загрузил JSON из файла. После этого структура прочиталась нормально.
15. bakmistoff1977 36 24.11.24 14:29 Сейчас в теме
(14) Кажется, поправил ошибку. На днях выпущу новое обновление. Если вам нужна обработка срочно, попробуйте подключить библиотеку из прикрепленного к этому комментарию архива. В процедуре ПриСозданииНаСервере в обработке нужно будет добавить строчку АдресАрхиваКомпонента = "место расположения dll из архива".
Прикрепленные файлы:
WebExContainer1CWin64_2002.zip
16. Serg2000mr 760 24.11.24 14:43 Сейчас в теме
(15) Да, теперь ошибки нет, спасибо. Работает очень быстро, просто здорово!
bakmistoff1977; +1 Ответить
17. Serg2000mr 760 28.12.24 13:34 Сейчас в теме
На конфигурации размера ERP дерево метаданных подтормаживает при интерактивном взаимодействии. Если очистить свойства КартинкаСтрок и ПутьКДаннымСтроки, а квадратные картинки хранить в каждой строке (колонка Картинка), то торможение прекращается.
Оставьте свое сообщение