Имя: Пароль:
1C
1С v8
Можно ли из ПриНачалеРаботыСистемы узнать, является ли база распределенной?
0 DJ Anthon
 
14.07.21
04:38
Прикол в том, что у меня доступны только расширения, а в них глобальные модули запрещены.
Ни одна функция из общих модулей в ПриНачалеРаботыСистемы не вызывается.
Серверные вызовы в ПриНачалеРаботыСистемы тоже запрещены, поэтому ПланыОбмена.ГлавныйУзел() тоже не работает.
Пока что сделал определение по наличию каталога в каталоге базы, так как они все файловые, но хочется сделать по-человечески.
1 Обработка
 
14.07.21
06:00
(0) Пробегись по планам обмена где РИБ. Если в них есть элементы больше одной записи есть значит РИБ.
2 vis_tmp
 
14.07.21
06:56
(1)Зачем "пробегись"?
Один запрос.
3 DJ Anthon
 
14.07.21
06:57
(1) как пробежаться по планам, если к серверу нельзя обратиться?
4 rphosts
 
14.07.21
07:11
а разве у расширений нет серверного контекста?
5 DJ Anthon
 
14.07.21
07:24
(4) есть, но его нет в ПриНачалеРаботыСистемы. в интернетах пишут, что надо использовать свои глобальные модули, а в расширениях они запрещены
6 Вафель
 
14.07.21
07:27
А в бсп разве нет?
7 Мультук
 
гуру
14.07.21
08:30
(0)

&После("ПередНачаломРаботыСистемы")
Процедура Расш1_ПередНачаломРаботыСистемы()
    если Расш1_ОбщийМодульВызовСервера.ЭтоГлавныйУзел() Тогда
        Сообщить("hello world -- Это главный узел");
    Иначе
        Сообщить("hello world -- Это НЕ главный узел");
    КонецЕсли;    
КонецПроцедуры
8 TormozIT
 
гуру
14.07.21
08:32
> Серверные вызовы в ПриНачалеРаботыСистемы тоже запрещены
Кто запретил?
9 DJ Anthon
 
14.07.21
09:28
ОбщийМодуль.А_ВызовСервера: Использование глобальных серверных общих модулей в расширении недопустимо
При проверке метаданных обнаружены ошибки!
Операция не может быть выполнена.


Вот почему у меня не получалось. Оказывается, модулю и не надо было глобальным. А в интернете советы были, что модуль должен быть глобальным.
Все заработало, спасибо.
10 Гений 1С
 
гуру
14.07.21
10:17
(0) а почему именно в Приначале, при старте есть и серверные модули.
но если че, запихни в константу, является это риб или нет и при следующем запуске уже будешь знать.
11 acht
 
14.07.21
10:19
(10) Вау, Геня, ты умеешь читать константы с клиента?
12 Вафель
 
14.07.21
10:21
(9) зачем глобальных то?
13 DJ Anthon
 
14.07.21
14:57
(12) да разобрался я. один там на киберфоруме 6 лет назад написал, что надо галку глобальный модуль, а я и повелся. да и надо внимательнее гуглить, глобальный модуль нужен в 7.7
(10) потому что надо клиента перезагрузить, когда приходит обновление. встроенный механизм немного ебобо. да и с расширениями работает криво. обновление расширения через риб может базу закирпичить.
лечится быстро, но надо чтобы админ был рядом. а я все автоматизирую.
14 Мультук
 
гуру
14.07.21
15:02
(13)

1) В 7.7 модуль был всего один. Он же глобальный. Других просто не было, как и галок
2) Писать расширения и читать советы 6-летний давности? Гм-хм.
15 DJ Anthon
 
15.07.21
04:43
(14) да в голове все перепуталось и все. читаю код для 8.3, и тут же вставочка для 7.7, написано глобальный модуль. а я циферки 7.7 уже не заметил. (сайт helpf.pro, например).
там вполне рабочие коды, потому что простые примеры. просто надо быть внимательнее...
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн