Имя: Пароль:
1C
1С v8
Оптимизация хранения данных в регистрах
0 prtx
 
01.06.15
11:42
Всем привет.

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

Например:

У меня есть регистр накоплений НаличныеДеньгиВКассе, в этот регистр заносятся данные следующими документами: Чеки, СлужебнаяВыдача, СлужебноеВнесение. Появилась необходимость, в кассе могут находиться деньги в разных валютах(гривны и рубли). И как лучше хранить данные в регистр накоплений НаличныеДеньгиВКассе добавить ресурс Валюта, или создать отдельный регистр и в нем хранить валюту и документ (Чеки, СлужебнаяВыдача, СлужебноеВнесение)?

Вопрос может и глупый но для новичков думаю актуальный, так что огромная просьба высказать свое мнение знатоков.

Суть такова: делать огромный регистр с множеством ресурсов и измерений, или разбивать хранение данных на несколько регистров? Может есть какая-то оптимальная(стандартизированная) величина количество ресурсов или измерений в регистрах. Вообщем посоветуйте, подскажите обязательные и необязательные пункты оптимизации...

Зараннее всем Спасибо.
1 18_plus
 
01.06.15
11:46
добавь валюту в измерения и усё.
2 18_plus
 
01.06.15
11:47
по сути - надо смотреть в каждый случай отдельно.
3 Fragster
 
гуру
01.06.15
11:47
если у тебя в одной комбинации значений измерений будут разные валюты - то смысл этого регистра потеряется. либо делить через существующие измерения (у кассы добавить реквизит "валюта", чтобы одна касса всегда была по одной валюте), либо добавить измерение "валюта", тогда в одной кассе смогут быть разные валюты.
4 ЧеловекДуши
 
01.06.15
11:58
(0) Какие данные вы планируете хранить?
5 ЧеловекДуши
 
01.06.15
11:59
+(4) Для каких целей?
И т.д.... начни с малого
6 prtx
 
01.06.15
12:00
(3) (1) В документах движения добавить валюту это понятно, сделать каждую кассу на одной валюте тоже хороший и наверное самый правильный вариант, но такой возможности нет нет. Да и обслуживание будет не удобным, люди и так сейчас расчитываются часть чека в одной валюте часть в другой, но это мы пресечем...

конфигурация самописная(камни не бросайте).

добавить измерение и все это сделать пять минут дилов и все будет работать.

Но вопрос ка логичнее и как правильно хранить данные.

Есть много и других ситуаций когда у меня возникает подобное глупые вопросы))) Например создать регистр с 10 измерениями и 5 ресурсами или разбить эти данные на несколько регистров...
7 чувак
 
01.06.15
12:03
(6) интересно. У тебя регистр остатков или оборотов?
8 prtx
 
01.06.15
12:05
(4) В регистре НаличныеДеньгиВКассе. измерения: организация, магазин, касса, фискально или нет.  ресурсы: сумма(сколько пришло сколько ушло). Ну и вопрос добавить сюда измерение валюта или сделать отдельный регистр сведений с ресурсом валюта. и потом доставать данные из обоих регистров и получать из регистра НаличныеДеньгиВКассе измерения и сумму, а из второго получать валюту в какой был проведен документ(Чеки, СлужебнаяВыдача, СлужебноеВнесение).
9 prtx
 
01.06.15
12:05
(7) остатки
10 18_plus
 
01.06.15
12:07
(8) мрак.
11 чувак
 
01.06.15
12:07
(9) Сказать могу только одно. Чем больше измерений и если каждое измерение идексируется, тогда эт будет влият на скорость записи и чтения данных.
Если регистр отсатков, тогда надо позабоится о том чтоб по всем иззмерениям должны быть и приход и расход
12 Я сказал
 
01.06.15
12:07
Я считаю, что дробить на два регистра нужно в том случае, когда нужно отслеживать разные состояния одних и тех же объектов. Например, есть регистр "Товары на складах". Если появилась необходимость резервировать товары, то лучше создать новый регистр "Товары в резерве на складах", чем добавить ресурс "Зарезервировано". А если нужно просто смотреть остатки в разных валютах, я бы делал добавлением измерения в существующий регистр.
13 prtx
 
01.06.15
12:08
(0) Как сделать и тот и тот вариант я знаю, И работать и так и так оно вроде должно(пока не увидел подводных камней). Но как будет правильнее и логичнее я не знаю(((
14 Fragster
 
гуру
01.06.15
12:08
(8) вопрос в том, как ты узнаешь, сколько у тебя рублей/гривен/долларов/евро/кунов в кассе, если ты не будешь заводить измерение валюты?
15 prtx
 
01.06.15
12:09
(11) приход и расход по всем измерения.
16 Fragster
 
гуру
01.06.15
12:09
(13)->(14)
17 18_plus
 
01.06.15
12:12
(16) ну как, джойн со вторым регистром по регистратору, получить валюту, сгруппировать, сумму получить. :)))))))
18 чувак
 
01.06.15
12:14
(17) думаешь это оптимально? вед он хочет оптимизировать вдол и поперек
19 18_plus
 
01.06.15
12:14
(0) рекомендую почитать для чего нужны измерения и ресурсы. ну и про нормализацию тоже не помешает.
20 prtx
 
01.06.15
12:14
(14) ну я дамал типа того

"ВЫБРАТЬ
|    НаличныеДеньгиВКассеОстатки.Организация,
|    НаличныеДеньгиВКассеОстатки.Магазин,
|    НаличныеДеньгиВКассеОстатки.Касса,
|    НаличныеДеньгиВКассеОстатки.НеФискально,
|    НаличныеДеньгиВКассеОстатки.СуммаОстаток,
|    РегистрСведений1.Валюта
|ИЗ
|    РегистрНакопления.НаличныеДеньгиВКассе.Остатки КАК НаличныеДеньгиВКассеОстатки
|        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.РегистрСведений1 КАК РегистрСведений1
|        ПО НаличныеДеньгиВКассеОстатки.Документ = РегистрСведений1.Документ"

документ - это документ движения.
21 18_plus
 
01.06.15
12:16
(18) а то! можно ещё измерения "организация, магазин, касса, фискально" распихать по отдельным регистрам
(19) пля! я ванга.
22 Fragster
 
гуру
01.06.15
12:17
(20) в остатках нет регистратора
23 18_plus
 
01.06.15
12:17
(20) отвечу сдержано: это гамнокод.
24 Зеленый пень
 
01.06.15
12:18
Можно вообще без переделок:
в справочнике касс завести группы и элементы таким образом:
- Касса магазина 1
--- Касса магазина 1 (рубли)
--- Касса магазина 1 (валюта 1)
--- Касса магазина 1 (валюта 2)
- Касса магазина 2
--- Касса магазина 2 (рубли)
--- Касса магазина 2 (валюта 1)
--- Касса магазина 2 (валюта 2)
25 18_plus
 
01.06.15
12:19
(24) предлагалось в (3)
26 prtx
 
01.06.15
12:22
(23) лучше бы ответили умно!
27 18_plus
 
01.06.15
12:26
(26) можно на ты.
умно я уже писал в (19).
т.е. таких вопросов и таких предложений по реализации вообще не должно возникать.
28 Я сказал
 
01.06.15
12:27
(26) Делайте измерением, когда хотите описать какое-либо свойство объекта (касса, валюта, склад и т.д.). Делайте новый регистр, когда хотите описать состояние объекта (в наличии / в резерве, в кассе / к выдаче и т.д.).
Аминь
29 prtx
 
01.06.15
12:29
(27) за (19) спасибо! нашел статью начинаю читать...
30 prtx
 
01.06.15
12:30
(28) четко и понятно. вот такую аксиому и хотел получить. спасибо!
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан