|   |   | 
| 
 | Передача значений в любой модуль | ☑ | ||
|---|---|---|---|---|
| 0
    
        grasshoper 08.10.24✎ 17:47 | 
        Добрый вечер. Какие есть варианты передачи значения между разными модулями? Необходимо в одном модуле сохранить в некий буфер значение и прочитать его в другом модуле в рамках текущего сеанса. Передать значение нужно из процедуры тонкого клиента в процедуру сервера.
 P.S. Добавление параметра в процедуру, новую константу, параметр сеанса не предлагать. Процедура очень глубоко вложенная. | |||
| 1
    
        grasshoper 08.10.24✎ 17:49 | 
        Глобальные переменные тоже не предлагать     | |||
| 2
    
        asady 08.10.24✎ 17:50 | 
        (0) честный знак расковырял видимо...     | |||
| 3
    
        grasshoper 08.10.24✎ 17:50 | 
        (2) ЭДО     | |||
| 4
    
        grasshoper 08.10.24✎ 17:51 | 
        Пробовал ХранилищеОбщихНастроек, в тонком не завелось.     | |||
| 5
    
        asady 08.10.24✎ 18:01 | 
        (0) вариантов много
 навскидку 1) значения в двоичные данные - адрес временного хранилища передаем. 2) значения в двоичные данные в хранилище значения регистра сведений - ключ записи передаем. 3) данные в запрос - передаем менеджер временных таблиц 4) запись во внешний источник данных - да хоть файл на сервере или покруче брокер сообщений заюзать наверное еще можно придумать ... если еще подумать | |||
| 6
    
        PR 08.10.24✎ 18:03 | 
        Почему не параметр сеанса?     | |||
| 7
    
        PR 08.10.24✎ 18:04 | 
        (5) Куда ты что собрался передавать?     | |||
| 8
    
        ass1c 08.10.24✎ 18:08 | 
        При наличии БСП
 ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища ОбщегоНазначения.УдалитьДанныеИзБезопасногоХранилища | |||
| 9
    
        Волшебник 08.10.24✎ 18:10 | 
        Регистр сведений     | |||
| 10
    
        PR 08.10.24✎ 18:10 | 
        (8) Причем здесь вообще безопасное хранилище?
 Это всего-лишь регистр сведений, где хранятся всякие пароли в хранилище данных | |||
| 11
    
        ass1c 08.10.24✎ 18:14 | 
        (10) - разве этим функционалом нельзя решить проблему описанную в (0)? Как один из неуказанных вариантов, для расширения кругозора автора. Ясен хер это не лучшее решение. Но имеет место быть.
 "где хранятся всякие пароли в хранилище данных" - насколько я вижу там хранят не только пароли, а что угодно. | |||
| 12
    
        ejikbeznojek 08.10.24✎ 18:16 | 
        Общий  модуль повторного использования? 
 По идее при вызове что-то записать, оно вызовет что-то прочитать с установкой значения переменной А при следующих вызовах что-то прочитать возьмется из Кеша. Перем ВремЗначение Процедура Чтотозаписать(какое-то значение) ВремЗначение = какое-то значение Чтотопрочитать() Функция чтотопрочитать() Возврат ВремЗначение | |||
| 13
    
        PR 08.10.24✎ 18:18 | 
        (11) Можно
 Через курсы валют тоже можно, например При этом еще момент, что сохранять что-то в хранилище значения, если это, например, ссылка на документ или число или дата и т. п. — избыточно и медленно | |||
| 14
    
        ass1c 08.10.24✎ 18:29 | 
        (13). Да, я знаю. Недавно реализовывал один сложный алгоритм и через фейковую валюту в регистре сведений "КурсыВалют" хранил дату в периоде. Удобно было её потом получать в любом месте где захочу.
 (12) да не плохо. "3.1. Для кеширования долго-вычисляемых и часто-используемых значений в процедурах и функциях рекомендуется применять модули с повторным использованием возвращаемых значений." | |||
| 15
    
        Волшебник 08.10.24✎ 22:46 | 
        Вот вам идеи:
 1. ХранилищеОбщихНастроек: Можно попробовать использовать общий механизм настройки, хотя иногда он может не работать должным образом в тонком клиенте. 2. Временные файлы: Сохранение данных во временные файлы на сервере. Этот способ может потребовать дополнительных проверок безопасности и синхронизации. 3. Регистр сведений: Использовать регистр сведений для временного хранения данных. Это позволит вам легко сохранить и затем извлечь данные. 4. Двоичные данные: Преобразование данных в двоичный формат и их временное хранение, например, в адресе временного хранилища. 5. Общий модуль: Импорт данных в общий модуль повторного использования, который будет вызывать другие модули для работы с данными. 6. Общее безопасное хранилище: Используйте ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище, если у вас внедрена библиотека стандартных подсистем (БСП). | |||
| 16
    
        grasshoper 09.10.24✎ 16:15 | 
        По итогу сделал с использованием ХранилищеОбщихНастроек завернутый в процедуру общего серверного модуля с вызовом сервера. Всем спасибо за идеи.     | |||
| 17
    
        H A D G E H O G s 09.10.24✎ 20:09 | 
        (14) Классный ник!     | |||
| 18
    
        Ненавижу 1С 09.10.24✎ 20:12 | 
        Это вам к гению. Он выкладывал передачу параметров через справочник     | |||
| 19
    
        DrZombi 10.10.24✎ 06:16 | 
        (0) Писать лень.
 Но вот вам ваш механизм передачи данных. Просто и примитивен. (Чистить его только не забывайте) https://infostart.ru/1c/tools/1718882/ Смотри на раздел: 2) - "Общие настройки формы (ГГЕ)" - Представляет из себя регистр сведений "Общие настройки формы (ГГЕ)", записи которого содержит список настроек от различных форм. Позволяет только посмотреть общий список и удалить лишние записи настройки. Добавление новых записей организуется "Разработчиком своих обработок" (программистом) и вручную не добавляются. | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |