УФ. Как сделать переменную доступной на клиенте и на сервере. Что бы не терялась #606635


#0 by Max1986
Прошу форумчан помочь в таком вопросе. Есть ТЗ, в которую в процедуре &НаСервере вводятся некие параметры. Однако при следующем вызове другой процедуры &НаСервере эти параметры теряются и переменная становится опять Неопределено. Подскажите, где мне определить эту переменную, что бы в ней хранились данные при вызове между разными процедурами.
#1 by ДенисЧ
В параметрах сеанса
#2 by zak555
ТЗ доступно только на сервере
#3 by zak555
+1
#4 by Нуф-Нуф
ЦПХ. Центральное Переменное Хранилище
#5 by Ненавижу 1С
хранить ее в объекте, а не локальной в методе
#6 by vmv
если не городить параметры в форме, то создать рексизит "список значений" например "рекСПараметры" ПриСозданииНаСервере иницализировать его значениями и получать их потом где хочеть и на клиенте и на сервере через индекскс списка
#7 by Max1986
Ну пускай храниться только на сервере, главное что бы не терялось. все равно реквизит?
#8 by vmv
если речь о методах глобальных модулей, то коль идея с параметрами сеанса не прельщает, то создать свой РС
#9 by Нуф-Нуф
долбанные извращенцы
#10 by Ненавижу 1С
откуда ты обращаешься к ней? опиши
#11 by zak555
что в ТЗ ?
#12 by Defender aka LINN
Временное хранилище
#13 by Vladal
Скажи, как правильно?
#14 by vmv
временное хранилище не заслуживает доверия в контексте рабочего дня, просто хранилище слищком тормозное в циклицеских методах - я за извращения)
#15 by Stepa86
а чо бы реквизитом формы не хранить?
#16 by Vladal
он доступен на сервере?
#17 by Defender aka LINN
И таскать его туда-сюда между клиентом и сервером, да? Какого "дня", тут же ж явно в пределах работы с формой все происходит
#18 by vmv
пока автор не озвучил область видимости, область использования и контексты переменной - будем смотреть в хрусталь
#19 by Max1986
обращаюсь к ней в Модуле объекта и в модуле формы в процедурах &НаСервере Кстати, через РС и ЦПС - оценил идею!!!
#20 by vmv
если в пределах работы с формы, то я за список значений, ведь таких значений может быть вагон и плотить тучу параметров формы или реквизитов плоха. временное хранилище или просто хранилище не люблю - это костыль изобретенный 1С для расширения областей видимости и как всякий костыль - часто хромает
#21 by Defender aka LINN
Хосспади... А в модуле объекта-то тебе это зачем? Короче. Описывай задачу давай, у меня уже хрустальный шар раскалился, сейчас стол прожжет.
#22 by vmv
значит контекст формы для хранения этой сущнисти использовать не стоит. тогда параметры сеанса или РС
#23 by Ranger_83
#24 by MadHead
Я за параметр сеанса, можно еще как-то через общий модуль с повторным использованием возвращаемых значений, но я так не пробовал
#25 by Max1986
Хорошо, пусть будет область действия только Модуль объекта. Я объявил в нем Перем ТЗ_врем. Выгрузил в процедуре Проц1 туда данные. Дальше вернулись в клиент....работаем. Вызываем Проц2, а переменная ТЗ_врем = Неопределено
#26 by Stepa86
и скока это минут занимает? наверно десятки на форме - да если тз нужна в рамках одного вызова, то ее можно и через параметры потаскать, если нужно хранить данные между вызовами - то я за реквизит формы, его можно еси чо на форму кинуть для отладки/возможности изменения. Если эти данные еще и при записи/проведении нужны, то или через допсвойства прокидывать или хранить на объекте модуль с галочкой "Повторное использование возвращаемых значений" отдельно хранит вызовы с клиента и с сервера (причем для клиента вроде б не сохраняет, но не уверен). В обычном режиме упр. форма с сервера обращается к серверным сохраненным значениям, а модуль объекта может и к клиентским
#27 by Defender aka LINN
За-да-чу.
#28 by vmv
если мы говорим модуль объекта, то сразу понимаем, что его методы могут испольняться без учета всяких форм, т.е. формы могут не открыаться и не использоваться никогда. а доп. свойства откуда прочитаешь с потолка? все равно нужна сущость существущая уже после запуска приложения или в базе по которой эти доп. своства можно инициализировать
#29 by Max1986
Обработка выводит в свою ТЧ таблицу. Пользователь правит данные-например "корректировка заказов". Мы должны вернуть назад откорректированные данные и обработать их
#30 by Stepa86
от задачи зависит, доп свойства можно заполнять/читать в обработчиках формы с постфиксом "НаСервере"
#31 by Stepa86
эээмм.. может ТЧ и вернуть?
#32 by Max1986
нельзя - она свернута по ряду параметров + наложен отбор. Я могу вернуь только Отбор, которыый наложен
#33 by Stepa86
мой телепатический модуль подвергся когнитивному диссонансу и взорвался =(
#34 by Max1986
Поясните, почему Перем ТЗ_врем определенная в модуле объекта терятся после того как покинули его. При повторном входе - опять она неопределена.
#35 by Ranger_83
Оптимально будет через временное хранилище передавать ТЧ для корректировки данных
#36 by Ненавижу 1С
опиши ее в модуле объекта
#37 by Defender aka LINN
Блеать, ты опишешь задачу или нет?
#38 by vmv
обойти данные формы коллекция - если нужно вернуть отфильтрованные строки (клиент и сервер) выгрузить тз - если нужно вернуть всю откорректированную тз если нужна передача на клиент с сервера транформировать строки в дмерную структуру это решение в лою - не слишком оптимально, но взлетит и часто юзается в типовых для небольших таблиц. Если же размеры таблиц тысячи строк то можно извращаться дальше
#39 by badboychik
раз пошла такая пьянка - сериализуй и сохрани в текстовом файле
#40 by Ranger_83
&НаКлиенте Перем ТЗ_врем
#41 by Max1986
>> Оптимально будет через временное хранилище передавать ТЧ для корректировки данных Это как? Киньте пожалуста пример кода - никогда не делал. ТЗ долго заполняется
#42 by Max1986
>> опиши ее в модуле объекта Описана - не помогает.
#43 by Ranger_83
Можешь посмотреть подробный пример в книге "Разработка управляемого интерфейса" из серии проф.разработки на с.701
#44 by vmv
ТЗ клиент не поймет все равно, ему нужна более простая сущность, как правило структура
#45 by Ненавижу 1С
не верю
#46 by Ranger_83
+у меня только бумажная версия. Что не поймет?
#47 by Max1986
Короче. многие запутались. Мне надо хранить только на сервере - ИСХОДНУЮ ТЗ. в некой процедуре модуля объекта я ее заполнил, а потом вернулся через какое то время - она Неопределена.
#48 by Defender aka LINN
Тонкий клиент, он ломает неокрепшие умы. В общем, я с этим дуриком закончил на сегодня. Сидит, тупит, 2-х слов не в состоянии написать. Нахрен такому помогать?
#49 by vmv
истеричка, черешни зацвели - может запах на тебя так влияет)
#50 by Defender aka LINN
На меня идиоты так влияют :)
#51 by Max1986
пардон - а кроме флуда вы что то сказали?
#52 by Defender aka LINN
Я тебе, придурок, уже в четвертый раз говорю: опиши ЗАДАЧУ. Не кривой костыль, который ты придумал в качестве решения, а ЗА-ДА-ЧУ. Задачу. Это какбе сам процесс, который должен произойти. Намек уловил?
#53 by vmv
Наводящие вопросы 1. В каком обработчике модуля объекта произодиться ИНИЦИАЛИЗАЦИЯ Тз для дальнейшей корректировки этой Тз в форме на клиенте 2. В каких обработчиках модуля объекта происходит обработка откоректированной на клиенте и якобы "возвращенной" Тз. 3. Какой формат "возврата" Тз в модуль объекта: фильтрованная, все строки, правило обработки в коде
#54 by Max1986
уйди из темы - ты неадеватный. нервы полечи, флудераст
#55 by Defender aka LINN
Ч.Т.Д. Идиёт, не умеет читать.
#56 by Ненавижу 1С
будь мужиком, опиши задачу
#57 by Ranger_83
Если только на сервере,тогда временное хранилище самое то,поскольку оно на сервере и хранится.Не надо гонять траффик на клиента
#58 by Trucker
Мммм.. как я понял, чел хочет сохранить ТЗ в переменой модуля обьекта, как в хранилище. То есть, опосля возврата в модуль объекта, взять из переменой ранее сохраненную ТЗ. Так?
#59 by Max1986
иничиализация в некой процедуре - ЗаполнитьТЗ. Эта ТЗ далее свертывается и загружается в ТЧ обработки. Возращаться - ничего не возращается - у меня есть ТЧ обработки, откорректированная пользователем + Отбор. Я должен сравнить Эту ТЧ с Исходной ТЗ, которую выгрузил
#60 by Max1986
ДА!
#61 by Ranger_83
aka LINN :)))
#62 by Ненавижу 1С
ТЗ сделай переменной обработки - не метода! не формы! модуля обработки!
#63 by Max1986
сделано - не помогает
#64 by Max1986
это как на 701 странице?
#65 by Ranger_83
Сцу ко прочитай книжку на 701 старнице блеать:)
#66 by Ненавижу 1С
процедура ЗаполнитьТЗ - это метод обработки? объект обработки один и тот же?
#67 by Max1986
Прочитал - там 2 строки. Типа использовать Временное хранилище. И все!!!
#68 by Ranger_83
Читай от "Второй вариант решения" и далее по тексту
#69 by Max1986
Там написано Записать данные во Временное хранилище. А как?
#70 by vmv
надо Радченко позвать в ветку, чтобы указал абзац и объяснил чо он там накалякал)
#71 by Max1986
процедура ЗаполнитьТЗ - это просто Процедура случайно вызываемая.
#72 by Ненавижу 1С
пистец, как ей тогда передается ТЗ?
#73 by Max1986
Перем ТЗ_врем объявлена в начале. Мы в нее загружаем ТЗ. ТЗ_врем = РезультатЗапроса.Выгрузить;
#74 by Max1986
-->
#75 by Max1986
Прочитал. ПоместитьВоВременноеХранилище(<Данные>, <Адрес>) А Адрес - что передавать? Если уникальный идентификатор формы - то мне же не в форме хранить!
#76 by vmv
есть некая обработка в которой есть некий интерфейс выбора объектов, допустим это справочник "Рогатый скот" мы там выбрали "Дойная корова "Глафира"" жмякаем копопку на форме показать "надои за месяц" в модуле обработки присходить вызов экспортной серверной процедуры выбранного объекта в таюлицу формы обработки загружается полученная таблица доярка правит цам литры и кроит себе в карман жмякаям кнопку на форме обработки "записать надои за месяц" в модуле обработки присходить вызов экспортной серверной процедуры выбранного объекта ВыбранныОбъект.ЗаписатьНадои; И вот тут автор не может получить ту Тз которая была в первом вызове, а ТЧ обратки он видит. вот так на примере всяких скотов можно просто описать задачу без истерик, просто нужно быть телепатом и все
#77 by vmv
адрес хранилища это строка, передается через параметры методов как првавило
#78 by Max1986
один в один задача - верно описана
#79 by Max1986
осталось узнать как сохранить ТЗ. Мучаю ВременноеХранилище - не понял как Адрес задать.
#80 by Max1986
Конечно будите бить - но внятно поясните - почему я не могу увидеть ТЗ заполненную при первом вызове - описано в , когда вторично в обработку проваливаюсь?
#81 by Ranger_83
у меня в книге написано как,целиком и полностью приведен листинг процедур.А ты что читаешь,скан чб чтоль?:)
#82 by Max1986
У меня - нет - примеры разные до этого. Но там нет примера
#83 by vmv
в модуле объекта фенита
#84 by vmv
АдресВХ можно сделать и реквизитом формы обработки(тип строка) для простоты, чтобы он был доступен в любом контексте
#85 by vmv
если автор еще начнет ныть, что не понятно, то только разлененка его на части будет верным решением проблемы
#86 by Max1986
спасибо! Четко и понятно! Я уже сам сделал. Правда через реквизит объекта - где строку храню. У вас красивее.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С