Имя: Пароль:
1C
1С v8
Скорость работы Хранилища Значения?
,
0 Garry1010
 
22.11.13
15:08
А где-то есть данные по сравнению скорости работы объектов типа ХранилищеЗначения по сравнению с обычной экспортной переменной? Я запихиваю ДеревоЗначений в Хранилище (привязанное к Параметру сеанса) и потом вынимаю оттуда это дерево и ищу в нём данные. Что-то мне кажется, что хранилище - штука тормозная... У кого-то есть сведения по такому вопросу?
1 zladenuw
 
22.11.13
15:10
ты посмотри в типовых работу с кешом. там все хранилище.
2 manti
 
22.11.13
15:13
(0) имел опыт работы с хранилищем еще с 8.1. НА хранилище построены также и регламентированная отчетность.
Так вот, когда объем декларации по объему алк продукции - 8 или 6 формы, превышал 20 тысяц записей, то обработка по формированию отваливалась, оператива не выносила хранилища. Так что если у вас там менее 5000 записей, то можно и хранилище. Свыше - думаю не стоит, просто потом проблемы с быстродействием. ВОт...
3 Garry1010
 
22.11.13
15:31
Ну, у меня там курсы валют для трансляции в МСФО. Просто профайлер сказал, что безумно много времени тратится на многократное получение курса из регистра сведений - вот пытаюсь извратиться...
4 manti
 
22.11.13
15:34
(3) А чего бы промежуточно регситр сведений тогда не использовать?
5 H A D G E H O G s
 
22.11.13
15:39
(2) Проблема не в хранилище
6 Defender aka LINN
 
22.11.13
15:46
Курсы валют? В хранилище значения? О_о
7 Garry1010
 
22.11.13
15:52
(4) Что значит "промежуточно" использовать регистр сведений? Зачем он нужен - второй[ужас], если он издревле один из самых тормозных объектов 1С (читал где-то когда-то)?
(6) А что смущает? Собираю курсы в дерево значений (я же написал выше), а потом ищу там нужный курс. Просто дерево нужно бывает в разных местах программы - особенно, в общем модуле при автоматизации. Где мне держать это дерево значений? Варианты: глобальная переменная, параметр сеанса в виде хранилища (ибо деревом он быть не может) - больше простых вариантов не вижу.
8 manti
 
22.11.13
15:57
юзай тогда хранилище. Ты про рег свед. говоришь, что тормозит?
9 Defender aka LINN
 
22.11.13
15:57
(7) Типовые видел когда-нибудь?
10 Garry1010
 
22.11.13
16:01
(9) Типовые - что?
(8) Именно про него, родимого.
11 Garry1010
 
22.11.13
16:02
(8) Так вот и есть подозрение, что хранилище медленно получается...:( Посему и спрашиваю, тестил ли кто-то или, может, видел тесты такие?
12 kiruha
 
22.11.13
16:06
(3)
Создай функцию в общем модуле повторное возвращение значений -
параметры дата валюта идентификатор расчета(из константы, по умолчанию 0 )
13 kiruha
 
22.11.13
16:06
и просто дата, идентификатор расчета для всех валют
14 Defender aka LINN
 
22.11.13
16:09
(10) Не, ничего. Все понятно.
15 Garry1010
 
22.11.13
16:11
(12)(13) Не понял ничего...-_о
16 kiruha
 
22.11.13
16:14
Есть общие модули.Найти там с галочкой "повторное возвращение значений"
Там разместить свою функцию. Результат будет в кэше по параметрам
Возвращает мгновенно
17 Infsams654
 
22.11.13
16:15
(15) аналогично, не понял ничего.
Зачем курсы валют хранить еще и в ХЗ, если они уже есть в РС?
"Просто профайлер сказал, что безумно много времени тратится на многократное получение курса из регистра сведений "
Так сделай так, чтоб профайлер заткнулся
18 kiruha
 
22.11.13
16:44
(17)
Они и хранятся в регистре сведений. Просто используется кэш 1С.
Чего непонятного то ?
19 Конфигуратор1с
 
22.11.13
16:48
простите. но что у вас за курсы валют и сколько валют что их тяжело получать из регистра сведений?
20 dmpl
 
22.11.13
16:50
(3) Вообще-то, стиль восьмерки - делаешь запрос, на выходе результат. Никаких многократных получений курса...
21 Infsams654
 
22.11.13
16:54
(18) я не про это не понял, а про то что ТС ничего не понял.
22 kiruha
 
22.11.13
16:57
А ...
ТС видимо и не знает - иначе бы тему не создавал
23 dmpl
 
22.11.13
16:58
(18) Кеш у 1С глючный. Я бы не стал использовать...
24 kiruha
 
22.11.13
16:59
(23)
В типовых используют
25 Конфигуратор1с
 
22.11.13
17:02
(24) и вам оно нравится?)
26 kiruha
 
22.11.13
17:07
Я тоже использую. Не замечал пока глюков .

На всякий случай для ТС

Сохраненные значения удаляются:

если свойство установлено в значение На время вызова:
на стороне сервера – при возврате управления с сервера;
на стороне клиента – при завершении работы процедуры или функции встроенного языка  верхнего уровня (вызванной системой из интерфейса, а не из другой процедуры или функции встроенного языка).
если свойство общего модуля установлено в значение На время сеанса:
на стороне сервера – при окончании сеанса;
на стороне клиента – при закрытии клиентского приложения.
Сохраненные значения могут быть удалены:

после долгого неиспользования (более 5 минут);
при нехватке оперативной памяти в рабочем процессе сервера;
при перезапуске рабочего процесса;
при переключении клиента на другой рабочий процесс.
После удаления значений, вызов экспортной функции выполняется как при первом вызове.


И +
ОбновитьПовторноИспользуемыеЗначения()
Описание:

Очищает все сохраненные значения функций с повторным использованием возвращаемых значений. После выполнения метода функции с повторным использованием возвращаемых значений выполняется так же, как при первом вызове.
27 Garry1010
 
22.11.13
17:13
(15) Я же по-русски написал, вроде, что обращение в РС безумно длительно!!![злость] И с какого это мне профайлер затыкать? - Меня время интересует, а не молчание профайлера!
28 kiruha
 
22.11.13
17:16
Ну это пп-ц
Объясните кто нибудь ему.
Я не могу
29 Garry1010
 
22.11.13
17:19
(16) А вот за это спасибо!!!
(19) Их - как всегда, но их много-много-много-много раз получается. Вы знаете, как работает перенос в МСФО? Тем более, что типовой - тупой. Он всё пересчитывает на дату документа переноса (конец месяца) - это 1С'ники облегчили себе жизнь просто. А надо вести долларовые суммы по историческому курсу - вот и приходится каждый раз пересчитывать на разные даты.
(20) См. только что почему так "многократно".
...
В предыдущем посте - ссылка на (17).
30 dmpl
 
23.11.13
18:49
(27) Запрос выполняется несколько секунд, на выходе готовые данные. Нафига профайлер?

(29) Цепляй левым соединением таблицу РС курсов в запросе. Получишь сразу сумму в валюте и курс.
31 mistеr
 
23.11.13
19:34
(29) Да, почему бы не сделать это в запросе?
32 GANR
 
24.11.13
14:41
(0) Естественно тормозная - ведь там данные архивируются перед помещением.
33 Garry1010
 
11.12.13
16:12
(30) При Переносе проводок поиск курсов валют выполняется много [b]тысяч раз[/b] - много тысяч помножить на несколько секунд это будет... это будет...
Да не получу я "в валюте" - так как найти дату авансов в запросе не представляется реальным. Это, видимо, возможно, но какой ценой! Я даже не хочу задумываться на тему такого запроса. :))
(31) Чего "сделать в запросе"? Связать все проводки с курсами валют? Они там и так связываются - просто их потом часто приходится вручную пересчитывать
(32) Вообще-то, архивирование не указано при создании Хранилища. А какое оно там по умолчанию?
34 dmpl
 
11.12.13
16:16
(33) 1. Так сделай, чтобы это выполнялось ОДИН раз.
2. И в чем проблема? Есть движение - есть дата. Осталось только связать данные.
35 dmpl
 
11.12.13
16:18
+(34) Не можешь даты авансов связать в запросе - свяжи в коде обработки, а потом эту ТЗ передай в запрос и свяжи с курсами. И это тоже только 1 раз будет.
36 Garry1010
 
11.12.13
16:52
(34) "И в чем проблема? Есть движение - есть дата."
В том и проблема, что движение не определяет дату курса - чего ещё? Я уже раз сто написал про это...
37 dmpl
 
11.12.13
16:57
(36) У тебя дата берется из мозга бухгалтера? Нет? Ну тогда все просто: выбираешь даты, выбираешь суммы, связываешь, цепляешь таблицу курсов.
38 Infsams654
 
11.12.13
17:04
... ничего не понимаю. (36) в движениях уже все посчитано и записано, что еще надо то ?
В РС курсов тоже все есть, что еще надо то ?
39 Garry1010
 
11.12.13
17:14
(37) Так попробуй сначала выбери эти даты авансов! Они же абы как лежат: где-то частично аванс, частично нет его; где-то сумма покрывается кучей авансов разных дат; а потом ещё и НДС пересчитать с датой аванса, а их там (НДСов) туева хуча строк в Акте работ. Просто, думаешь?
(38) Чего посчитано? Я же написал, что надо переносить проводки (такой документ есть;) в МСФО. В проводках РСБУ нет долларовых сумм (обычно)! Так ничего там не записано и не посчитано, кроме исходных данных.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан