Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Регистры и строки

v7: Регистры и строки
Я
   SiMBa_R38
 
19.08.20 - 09:50
Здравствуйте.
Создал регистр ОстаткиКИЗ, и измерение к нему КИЗ Строка 100; и Ресурс Количество Число целое 2
Выполнил приход двух КИЗ 0104660077310172210z00NnY 10 и 0104660077310172210z00Nny 10

Столкнулся с такой проблемой: поиск по итогам дает только ту позицию которая была первой в данном случае итог всегда даст 0104660077310172210z00NnY, и никогда не вернет 0104660077310172210z00Nny
т.е.
РегКИЗ = СоздатьОбъект("Регистр.КИЗ");
РегКИЗ.УстановитьФильтр("0104660077310172210z00Nny");
РегКИЗ.ВыбратьИтоги();
РегКИЗ.ПолучитьИтог(); // всегда = 0

если сделать
РегКИЗ.УстановитьФильтр("0104660077310172210Z00NNY"); // тоже даст 0

mssql 2000sp4
Через entManager сделал запрос к итоговой таблице, в ней числится два раза
select * from RG723 where sp7504 = '0104660077310172210z00NnY                                                                           '
0104660077310172210z00NnY
0104660077310172210z00NnY

При этом select * from RА723 where sp7504 = '0104660077310172210Z00NNY                                                                           ' возвращает обе строки, из чего я делаю вывод что у меня как-то не правильно sql всё это время настроен.

Как включить регистрозависимость на регистрах? И через ТиИ пересчёт итогов в случае включения регистрозависимости исправит ситуацию?
   FIXXXL
 
1 - 19.08.20 - 09:52
(0) сделай свои кизяки справочником и не насилуй платформу
   SiMBa_R38
 
2 - 19.08.20 - 09:59
(1) кизяков много, показалось что через регистры будет более гармонично существовать: + строка - строка, на остатке 0, и забыли про киз.
А справочником им всем существовать хочется. Они же сущности. Копию сделал, пробую поменять Collate на столбце.
   Ёпрст
 
3 - 19.08.20 - 10:32
(0) никак
   Ёпрст
 
4 - 19.08.20 - 10:32
не исправит
   Ёпрст
 
5 - 19.08.20 - 10:34
Поможет только если ты сам будешь прямым запросом инсёртить в ra и сам же толкать итоги в rg
   vcv
 
6 - 19.08.20 - 11:01
(2) Более гармонично затолкать КИЗ в справочник. А в регистре измерение типа справочника.
Можно будет в этот справочник заталкивать доп.информацию. Поставщик, приходный документ, дату прихода, дату КИЗ, итд. Сегодня может и не надо, а что будет через пять лет, загадывать не будем.
Удобней исправлять ошибки если пользователь опечатался в КИЗ.
Проще с реструктуризацией, если вдруг родное государство решит, что текущий КИЗ коротковат, или новые требования к формату выдвинет.
Полезно для быстродействия не раздувать размер регистра немаленькими строковыми полями.
   vladko
 
7 - 19.08.20 - 11:08
Я тоже за справочник. Строки в измерения регистра пихать не комильфо
   Ёпрст
 
8 - 19.08.20 - 11:10
(7) да пусть пихает, еще и индекс повесить на такое измерение.
Зато период потом очень весело будет открываться и таблички припухнут..здорово же, не ?
   Salimbek
 
9 - 19.08.20 - 11:19
(0) Храни КИЗ-ы сконвертированные, например, в base64, или еще как-то.
   SiMBa_R38
 
10 - 19.08.20 - 11:37
(3) (4) (5) Поставил Collate на колонку и сделал ТиИ. Помогло. Итоги разделились.
(8) RG и так индекс висит на измерении.
(9) мысль... но думаю перекидываться буду в справочник.

В общем, критику принял.
Действительно храниться в справочнике все же экономнее, не смотря на то что элемент продолжит существовать в базе, в регистре будет записано два раза по 9 символов (приход, расход), а не два раза по 100.
   victuan1
 
11 - 20.08.20 - 05:13
Вообще строка длиной 100 даже мало, т.к. есть КИЗы длиной 226 символов (это если хранить полный КИЗ с криптохвостом).
   victuan1
 
12 - 20.08.20 - 05:17
м 240 симв. есть.
(0) и как ты хранишь в строке спецсимволы, например симв(29)?
Первое же ТИИ для проверки физ.целостности порушит такие строки.
   SiMBa_R38
 
13 - 20.08.20 - 06:48
(11) Не встречались: 25 символов блок, 30-40 короб.
(12) "#29 " обрезаются к ЧЗ без них запрос идет, поэтому хранить их смысла нет. А вот коробку иногда приходится переворачивать порядок из ЭДО приходит (01)#14(21)#N(240)#N, а в DM зашит (01)#14(240)#N(21)#N, благо #29 разделены, и на сверке их подгоняю.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.