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

14.04.21

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

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

Файлы

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

Наименование Скачано Купить файл
ОтчетСвойстваОбщихМодулей.erf
.erf 9,92Kb
4 1 850 руб. Купить

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

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

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

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

  • СКД
  • Управляемые и обычные формы
  • Тестировалось в 8.3.12.1790

 

 

upd (специально для Rustig): Правила создания общих модулей

 

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

Тип общего модуля Пример наименования Вызов сервера Сервер Внешнее соединение Клиент(обычное приложение) Клиент(управляемое приложение)
Серверный ОбщегоНазначения (или ОбщегоНазначенияСервер)   + + +  
Серверный для вызова с клиента ОбщегоНазначенияВызовСервера + +      
Клиентский ОбщегоНазначенияКлиент (или ОбщегоНазначенияГлобальный)       + +
Клиент-серверный ОбщегоНазначенияКлиентСервер   + + + +

Источники
Диагностика bls ls: Общий модуль недопустимого типа https://1c-syntax.github.io/bsl-language-server/diagnostics/CommonModuleInvalidType/
Стандарт: Правила создания общих модулей https://its.1c.ru/db/v8std#content:469:hdoc:1.2


Скачать с github

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

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

См. также

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

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

15500 руб.

02.09.2020    219138    1200    413    

1059

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

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

14400 руб.

20.08.2024    44372    246    123    

227

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

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

22200 руб.

06.10.2023    27864    73    30    

101

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

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

9500 руб.

17.05.2024    39688    145    57    

182

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

9900 руб.

25.08.2025    11620    19    7    

28

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

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

16000 руб.

10.11.2023    19691    76    39    

92

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

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

18000 руб.

22.11.2024    2662    2    0    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. RustIG 1921 14.04.21 13:55 Сейчас в теме
что с этим делать? и где вы это используете?
3. user1455510 16.04.21 06:04 Сейчас в теме
(1) можете запустить у себя и посмотреть сколько общих модулей у вас не по стандарту ИТС)
2. Darklight 35 14.04.21 14:02 Сейчас в теме
Даже не представляю как это может помочь.
1С создала полный хаос.
При проектировании своих модулей старюсь придерживаться иной идеологии - одна крупная "коллекция функционала" - один модуль (все флаги контекстов выставлены) - разделение на контексты внутри модуля для каждой процедуры индивидуально директивами компиляции (ну и в подсказка в заголовке-комментарии).
Когда нужны клиент-серверные переходы - проверка внутри единой функции - и далее да - нужен отдельный модуль "Вызов сервера" - чисто, чтобы перейти на сервер и снова вызвать ту же функцию из основного модуля (в последнее время практикую единую точку выхода на сервер - общую функцию вызова (с упаковкой параметров в массив), которая уже на сервере вызывает исходную функцию через "Выполнить"/"Вычислить" и передаёт развёрнутые параметры через массив).
Для повторно используемого кода - использую тот же подход - только ещё и доп аргумент "Кешировать" передаваемый последним - когда нужно закодировать - при вызове из модуля повторного использования основной функции он сбрасывается.
Хаос снижается многократно. Но, увы, в типовых общих модулях он продолжается!
Глобальные модули нынче не в фаворе - стараюсь не использовать - там мало функций (чаще просто глобальные обработчики событий, не из метаданных-источников) да и самих модулей тоже не много - обычно они не имеют парных контекстных модулей.
Вот бы ещё иметь иерархию модулей (не только общих) и атрибуты контекста как в управляемых формах - и хаоса стало бы ещё меньше!
kote; abasovit; Yashazz; +3 Ответить
4. kote 537 20.05.21 14:38 Сейчас в теме
(2)
"Выполнить"/"Вычислить"


Всё так, но вот выполнить - если код высоконагруженный, то будет выполняться в разы медленнее.
Обычный код подсле первого вызова - скомпилирован, а этот будет каждый раз компилироваться.
5. Darklight 35 20.05.21 15:23 Сейчас в теме
Я через "Выполнить"/"Вычислить" - предлагаю выполнять только одну инструкцию - а именно - вызов нужной функции, те. строка будет примерно такой (не вдаваясь в детали развёртывания аргументов)
возврат Вычислить("НекийМодуль.НекаяФункция(НекиеАргументы)")

Компиляция такого кода происходит почти мгновенно. Учитывая область применение - смена контекста выполнения - т.е. переход на серверный вызов; или при кешировании (когда чаще результат берётся из кеша, чем идёт выполнение такого вычисления и вызова функции) - то накладные расходы Вы не заметите даже при высокой нагрузке (ибо они будут ничтожны по сравнению с иными накладными расходами или будут отсутствовать вовсе).
Но... для отдельных исключений (подчёркиваю ОТДЕЛЬНЫХ) - когда важна производительность "каждой миллисекунды" вызова функции всегда можно написать отельную функцию классическим путём. Но это - просто исключение - в 98% случаев в этом просто не будет необходимости.
Так что накладные расходы тут не являются проблемой.
Могут быть проблемы с целевой платформой и с отладкой - но это всё тоже - оченб не частые случаи для большинства решений - и имеют свои обходные пути.

Кстати, для особо изощрённых случаев, когда нужна динамика вызова (и классический подход не годится) при высокой нагрузке - можно автогенерировать внешние обработки - с нужным кодом, который необходимо выполнить - и собирать их из XML/BSL в EPF, подключать, создавать объект и выполнять - есть затраты на первое создание - зато потом - "вызовы почти как родные" - но там своих проблем целый ворох - так что это только для извращённого программирования подходит!
6. SpecRam2 21.10.22 10:27 Сейчас в теме
С функцией Выполнить(), следует придерживаться правил безопасности, т.к. злоумышленник может воспользоваться данной функцией и выполнить произвольный код.
Рекомендации от фирмы 1С: https://its.1c.ru/db/v8std/content/770/hdoc
Для отправки сообщения требуется регистрация/авторизация