|   |   | 
| 
 | 8.3. Зачем серверные переменные реинициализируются при каждом обращении? | ☑ | ||
|---|---|---|---|---|
| 0
    
        pro3ri 21.01.16✎ 11:33 | 
        Добрый день!
 https://s.mail.ru/41csjyn9s9jD/img-2016-01-21-13-31-19.png Зачем есть такая особенность платформы что серверные переменные реанициализируются при каждом обращении? Ведь проще было сделать чтобы они жили пока живет форма как клиентские переменные? | |||
| 1
    
        ДенисЧ 21.01.16✎ 11:35 | 
        А если у тебя процесс на другой сервер кластера перекинется?     | |||
| 2
    
        asady 21.01.16✎ 11:36 | 
        (0) и это правильно!
 то что для тебя проще совсем не означает проще для платформы. | |||
| 3
    
        mikecool 21.01.16✎ 11:37 | 
        (0) я бы вообще этим не занимался, а передавал нужное параметром, имхо - надежнее     | |||
| 4
    
        pro3ri 21.01.16✎ 11:37 | 
        а если требуется сохранить значение серверной переменной его надо в реквизит формы положить?     | |||
| 5
    
        Остап Сулейманович 21.01.16✎ 11:39 | 
        (4) Во временное хранилище на сервере. Смотря, где хранить нужно.     | |||
| 6
    
        Остап Сулейманович 21.01.16✎ 11:40 | 
        + (5) Или в параметрах сеанса.     | |||
| 7
    
        Fragster гуру 21.01.16✎ 11:40 | 
        сервер 1с типа stateless     | |||
| 8
    
        Господин ПЖ 21.01.16✎ 11:41 | 
        (0) патамучта так работают львиная доля сервисов - ответил и забыл     | |||
| 9
    
        Lama12 21.01.16✎ 11:43 | 
        (0)Напиши в 1С. Вопросы платформы они, последнее время, очень адекватно рассматривают.
 Кстати, обнаружить с клиента что серверный процесс упал и клиентское соединение перешло на другой процесс нет возможности. При этом все переменные на сервере обнуляются. Я им этот "глюк" несколько месяцев назад переслал. Сказали - подумают. | |||
| 10
    
        pro3ri 21.01.16✎ 12:00 | 
        благодарю     | |||
| 11
    
        pro3ri 21.01.16✎ 13:07 | 
        (5) на всякий попробовал:
 &НаСервере Перем тест123; &НаКлиенте Процедура Команда1(Команда) тестСервер(); тестСервер1(); КонецПроцедуры &НаСервере Процедура тестСервер() тест123 = 100; //тест123 = Новый Массив; //тест123.Вставить(1); //тест123.Вставить(2); //тест123 =Новый ФиксированныйМассив(тест123); //ПараметрыСеанса.ПараметрСеанса3=тест123; ПоместитьВоВременноеХранилище(тест123,УникальныйИдентификатор); КонецПроцедуры // тестСервер() &НаСервере Процедура тестСервер1() А = ПолучитьИзВременногоХранилища("тест123"); //А = ПараметрыСеанса.ПараметрСеанса3; КонецПроцедуры // тестСервер() так ругается у меня: {Форма.Форма.Форма(27)}: Ошибка при вызове метода контекста (ПолучитьИзВременногоХранилища) А = ПолучитьИзВременногоХранилища("тест123"); по причине: Ошибка получения значения из временного хранилища по причине: Неправильный путь к файлу 'тест123' | |||
| 12
    
        pro3ri 21.01.16✎ 13:10 | 
        тупанул:
 &НаСервере Перем тест123; &НаКлиенте Процедура Команда1(Команда) тестСервер(); тестСервер1(); КонецПроцедуры &НаСервере Процедура тестСервер() тест123 = 100; //тест123 = Новый Массив; //тест123.Вставить(1); //тест123.Вставить(2); //тест123 =Новый ФиксированныйМассив(тест123); //ПараметрыСеанса.ПараметрСеанса3=тест123; Строка = ПоместитьВоВременноеХранилище(тест123,УникальныйИдентификатор); КонецПроцедуры // тестСервер() &НаСервере Процедура тестСервер1() А = ПолучитьИзВременногоХранилища(Строка); //А = ПараметрыСеанса.ПараметрСеанса3; КонецПроцедуры // тестСервер() правда пришлось реквизит формы создать Строка | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |