Длина индекса #764716


#0 by Симпатяга
Добрый день! Есть регистр "даты отгрузок". В нем есть измерения "Наименование заказчика". Длина 1000 символов. Не индексируется. Двигается заказом покупателя. При проведении заказа с длинным наимнованием заказчика выдает ошибку "Длина ключа индекса превышает максимально допустимую". Удаляю поле - все Ок. Добавляю - ошибка. Поле не участвует в индексе, но ругается на него. Сейчас запустил ТИИ - но по ощущениям не поможет. Что я упустил?
#1 by Симпатяга
+ регистр накопления
#2 by Провинциальный 1сник
Основной вопрос - зачем?
#3 by Симпатяга
вопрос был другой.
#4 by Cyberhawk
Ты забываешь про остальные индексы, куда твое поле входит...
#5 by Провинциальный 1сник
В 1с не принято использовать измерения-строки, это дурной тон. Используй справочник "Заказчики" в качестве измерения. PS Любое измерения в регистре индекируется, так устроены регистры.
#6 by Cyberhawk
А если отвечать конкретно на вопрос, то упустил ты документацию
#7 by los_hooliganos
А зачем такое измерение???? Засунь его в реквизит
#8 by Симпатяга
так если стоит "не индексировать"- поле входит в индексы? Причем есть еще один регистр, в нем точно такое же поле - но всё работает.
#9 by los_hooliganos
А если все таки нужны итоги по наименованию заказчика, сделай его справочником. И ставь ссылку на справочник в измерение
#10 by Cyberhawk
1С при создании регистра накопления по умолчанию создает индекс (один) из периода и всех измерений для итоговых таблиц этого регистра
#11 by Симпатяга
не получится. наименования заказчика всегда уникальны. в каждом заказе. Заказ нужно закрывать по наименованию заказчика
#12 by Симпатяга
Тогда почему все работает на ргистре накопления "ЗакзаыПокупателей" с точно таким же полем.
#13 by фобка
1 заказ = 1 наименование?
#14 by Cyberhawk
Покажи на картинке структуру этого регистра в дереве метаданных и тип твоего строкового измерения
#15 by anatoly
база файловая? я работал в одной дочке Уралмаша - тамошние суровые проги по 5 измерений "строка 200" создавали и не парились. не знали куда еще денег потратить... а вообще за измерение "строка 1000" надо убивать изощренным методом. и потом приводить в пример на вопрос про длину индекса.
#16 by Симпатяга
База скульная
#17 by Cyberhawk
Так у тебя длина переменная - повезло, не встретилось там в таблице остатков пока наименования, которое вкупе с остальными измерениями превысит длину 1024
#18 by Симпатяга
встретилось. один и тот же заказ провожу. По этому регистру проводится, по другому нет. Причем в этом гораздо больше измерений. "Плохой регистр" не  могу показать.идет ТИИ
#19 by los_hooliganos
ограничение на индекс для файловой базы 1920 байт.
#20 by los_hooliganos
Видимо сам скуль офигел от такого индекса :)))
#21 by Симпатяга
Файловый вариант информационной базы Единственным ограничением на использование индекса при использовании СУБД, встроенной в 1С:Предприятие, является максимально допустимая суммарная длина ключа в индексе, равная 1920 байт. При попытке создания индекса с длиной ключа, превышающей 1920 байт, будет выдано сообщение об ошибке. Клиент-серверный вариант информационной базы Клиент-серверный вариант информационной базы подразумевает использование Microsoft SQL Server в качестве СУБД. В Microsoft SQL Server определены следующие ограничения на использование индексов: максимальное количество полей, участвующих в индексе, равно 16. максимально допустимая суммарная длина ключа в индексе равна 900 байт. Важно иметь в виду, что в процессе определения объектов метаданных 1С:Предприятие при попытке создания индекса, включающего более 16 полей, в клиент-серверном варианте ИБ индекс усекается справа до 16. Это повышает надежность работы системы, но может привести к некоторому снижению производительности операций над соответствующими таблицами из-за ухудшения качества усеченных индексов.
#22 by los_hooliganos
Сделай строку 449 или даже 400
#23 by Симпатяга
не уместится(
#24 by los_hooliganos
Тогда реализуй отдельным справочником и ссылку на него в измерение
#25 by Провинциальный 1сник
Учтите, что измерения в регистре всегда участвуют в составном индексе. То есть, если у вас несколько измерений - их длины надо складывать. Именно поэтому и не надо хранить там строки.
#26 by Симпатяга
я всё понимаю. Почему в регистре, на которуй я давал картинку, все работает?
#27 by Симпатяга
В левом не работает, в правом работает!
#28 by los_hooliganos
Блин что это за имя заказчика с длиной 1000 символов?? :))
#29 by Симпатяга
9086010 'Задвижка шиберная DN 700 РN 1,6 МПа. Перепад рабочего давления на затворе 1,6 МПа. Под сварное соединение с трубопроводом. Вид климатического исполнения У1. Герметичность затвора по классу "А" по ГОСТ Р 54808-2011. Под электропривод "ЭПЦМ-4000" Г.18. C заводским антикоррозионным покрытием, подземная часть по ОТТ-25.220.01-КТН-215-10. Надземная часть - по РД-23.040.01-КТН-149-10. Категория коррозионной активности атмосферы С3. В несейсмостойком исполнении С0. Присоединяемая труба 720х8 с классом прочности К56 первого уровня качества по ОТТ-23.040.00-КТН-051-11. Установка - надземно. Рабочая среда - нефть по ГОСТ Р 51858-2002. Тип присоединения к электроприводу  "Г"
#30 by los_hooliganos
Что мешает засунуть это в реквизит???
#31 by Провинциальный 1сник
Вы работаете за пределами "зоны безопасной эксплуатации" системы. Чего же вы хотите? Вам ясно говорят - так делать не надо. Хотите хранить в регистрах полное досье заказчика - используйте реквизиты, а не измерения. Измерения для другого предназначены.
#32 by Симпатяга
в одном и том же заказе куча строк с одинаковой номенклатурой, но разными наименованиями заказчика. Нужно видеть, какие позиции грузятся, какие нет.
#33 by los_hooliganos
Я так понимаю это набор характеристик, вот ссылки на этот набор и нужно хранить как я понимаю.
#34 by Cyberhawk
Ты на комбинацию измерений обращай внимание, а не на одно свое
#35 by vde69
покажи того человека который делал такой регистр!!!! и какая это конфигурация (вижу поддержку, кубики) нафига цену включили в измерение??? я понимаю, что это некая табличная часть документа, но логично было оставить ключь "номер строки" а все эту мутотень вынести в реквизиты и ресурсы а автору советую это поле вынести из регистра в реквизит заказа
#36 by rs_trade
А почему нельзя измерение строку делать? Расскажите. Очень интересно.
#37 by vde69
по тому, что места в индексе занимают больше чем ссылка
#38 by Провинциальный 1сник
Потому что все измерения включаются в один индекс, а у СУБД есть ограничения на длину индекса. В случае ссылок это по 16 байт, в случае строк - по факту.
#39 by rs_trade
ну понятно что не надо строки 1000 в индексы фигачить. а по факту если сильно надо, то все можно. никто не умрет от индекса по строке 20.
#40 by ЧеловекДуши
1000 символов, вы загнули. Ты бы хоть раз прошелся бы запросиком. И выяснил бы максимальную длину ;)
#41 by БледноЗолотистый
УППшное что-то. Там и цена в измерении этого регистра типовое.
#42 by ЧеловекДуши
+ ...Что я упустил? ПятницО :)
#43 by Симпатяга
ахахахахах. с ценой - это в москву звони, в 1с.
#44 by ЧеловекДуши
Да, поле входит в индекс :)
#45 by ЧеловекДуши
Реально. Цена в Измерении? :) ...Все же Пятничная ветка :)...
#46 by БледноЗолотистый
Весельчак, колись кто додумался в измерение строку(1000) запихать? Сам?
#47 by ЧеловекДуши
Если строка не превысит 36 символов, то почему бы и нет ;)
#48 by Lama12
Измерение - значит индексируется. Галка индексировать - это другие индексы. Сделай справочник в него пиши строки хоть по 5000 символов. Этот справочник используй для измерения.
#49 by George Wheels
Так в измерениях же есть и Договор и Номенклатура и Характеристика и Заказ. Этого недостаточно?
#50 by Симпатяга
учет по характеристикам не ведется. наследие 5 летней давности осталось. оттуда же и строка(1000)
#51 by Симпатяга
а насчет цены - типовое измерение УПП. наплевался уже с ним.
#52 by George Wheels
Ну тогда сделать справочник НаименованияЗаказчиков и использовать его в измерении.
#53 by itlikbez
682 символа.
#54 by Симпатяга
+100500 Первое попавшееся взял
#55 by itlikbez
В одном регистре больше измерений в другом меньше. В этом ответ на твой вопрос почему в другом регистре проблем пока еще нет.
#56 by Симпатяга
так все наоборот получается. В том,где больше измерений - все работает.
#57 by Симпатяга
по первому регистру работает все потому, что в индексе он занимает место ниже 16-го. не используется для индекса. всем спасибо.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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