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

14.04.21

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

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

Скачать файл

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

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

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

  • СКД
  • Управляемые и обычные формы
  • Тестировалось в 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    180482    1001    403    

954

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

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

8400 руб.

20.08.2024    21796    146    82    

144

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

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

22200 руб.

06.10.2023    19483    50    19    

84

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

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

15000 руб.

10.11.2023    13214    54    33    

74

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

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

9360 руб.

17.05.2024    29635    101    48    

147

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

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 руб.

07.10.2021    18836    7    32    

43

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

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    1967    2    0    

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


Всё так, но вот выполнить - если код высоконагруженный, то будет выполняться в разы медленнее.
Обычный код подсле первого вызова - скомпилирован, а этот будет каждый раз компилироваться.
5. Darklight 34 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
Оставьте свое сообщение