Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Макс. длина недлинной строки (число прочтений - 8155 )
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Макс. длина недлинной строки
14. Апреля 2010 :: 14:00
Печать  
Насколько я понял, макс. длина недлинной строки (ограниченной длины) составляет 999 символов.

Как можно задать реквизит справочника типа "Строка" длины, допустим, 9999 символов, чтобы он хранился в таблице справочника, а не в 1SBLOB.DBF?

Желательно без использования 1sqlite.

Возможно ли?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #1 - 15. Апреля 2010 :: 04:43
Печать  
9999 запросто!
а вот больше, например в дбф 99999 уже не слепишь..
  

9999.rar ( 13 KB | Загрузки )
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #2 - 15. Апреля 2010 :: 06:27
Печать  
Круто!
И как сию штуку просто сделать?
Напрямую .dd редактировать?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #3 - 15. Апреля 2010 :: 06:54
Печать  
ну, поправить компаунд мд-ника и всё, ну и либо руками словарик поправить, либо конфу сохранить, чтоб словарик пересоздался.
ЗЫ: ну и не советую такое поле иметь, прикинь какой индекс будет ?
Улыбка
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #4 - 15. Апреля 2010 :: 06:54
Печать  
Я в этом полный ноль. Нужно скачать gcomp?
И еще: у меня уже есть справочник с текстовым реквизитом неогр. длины. Как мне изменить параметры реквизита, чтобы рекструктуризация правильно прошла?
Или все ручками - создать новый реквизит и обработкой скопировать данные?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #5 - 15. Апреля 2010 :: 06:55
Печать  
да хоть чем, можешь и gcomp-ом - разобрать, исправить - собрать

ЗЫ: 23 субконто никому не нужно на счете ?
Улыбка
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #6 - 15. Апреля 2010 :: 06:58
Печать  
а ты чем делал? чем быстрее и проще?
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #7 - 15. Апреля 2010 :: 07:00
Печать  
Eprst писал(а) 15. Апреля 2010 :: 06:54:
ЗЫ: ну и не советую такое поле иметь, прикинь какой индекс будет ?
Улыбка

Мне кажется, лучше большие индексы, чем хранение таких данных в 1sblob
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #8 - 15. Апреля 2010 :: 07:03
Печать  
При дальнейших реструктризациях, объединениях кофигураций, реквизит не будет обрезан до 999 или 10?
Также, можно как либо сделать, чтобы в свойствах реквизита длина была реальная, а не 10, как сейчас?
  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Макс. длина недлинной строки
Ответ #9 - 15. Апреля 2010 :: 07:30
Печать  
Создай справочник соответствующий длинному реквизиту и подчиненный ему.
В подчиненном реквизит типа строка 999(лучше макс длина строки) и цифровой со значениями 1, 2, 3, ....
Во время записи разбиваешь на строки, а во время чтения "склеиваешь"

Тогда такая конструкция не будет портить 1SBLOB.DBF и относительно компактно
будет укладывать данные - это важно так как предел ДБФ 2 Гб

P.S> 1С очень плохо работает с длинными строками
так что склейка должна быть в многострочный текст
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #10 - 15. Апреля 2010 :: 07:39
Печать  
blindvic писал(а) 15. Апреля 2010 :: 06:58:
а ты чем делал? чем быстрее и проще?

быстрее плаггином к фару\тоталу
проще - gcomp-ом



kiruha писал(а) 15. Апреля 2010 :: 07:30:
ак предел ДБФ 2 Гб



Ну, предел то можно поднять до 4-х..пропатчив 1с-инку.. Улыбка

  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #11 - 15. Апреля 2010 :: 08:13
Печать  
Создал в нужном справочнике рекизит типа Строка, длина 10. Сохраняю конфу.
Разбираю мд-шник gcomp-ом. Захожу в нужный справочник, меняю в Структура.mdp длину реквизита до 9999. Собираю мд-шник обратно. Открываю в конфигураторе конфу. Захожу с свойства конфы, добавляю в конце идентификатора и удаляю пробел. Сохраняю конфу - происходит реструктуризация. При загрузке в режиме прдприятия пишет "Нарушена структура данных таблицы ...".

Как правильно сделать?

ЗЫ. При тестировании и исправлении инф. базы пишет:
Цитата:
Таблица - SC13039. Длина записи не соотвествует ожидаемой
Проверка физической целостности таблиц ИБ.  Неисправимая ошибка.
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #12 - 15. Апреля 2010 :: 08:18
Печать  
Плагин для тотала нашел, только он имена справочников не показывает... гкомп удобнее.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #13 - 15. Апреля 2010 :: 08:25
Печать  
Вот гадство Улыбка
Тупая 1с-ина не может реструктуризировать сам файлик, если он уже был... Тут только руками видать увеличить размерность поля.
Хотя новый она создает легко.
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #14 - 15. Апреля 2010 :: 08:28
Печать  
Не понял.

Так че мне делать?

Та сам-то как сделал? На твоей конфе проверка инф. базы нормально проходит.

ЗЫ .dd не менял. При реструктуризации 1С сама его поменяла, изменив длину ревизита.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #15 - 15. Апреля 2010 :: 08:42
Печать  
Я делал на пустой конфе, 1с-ина сама создала файлик, в котором длина поля реквизита стала 9999.

У тебя, уже есть табличка, 1с-ый движок не может её реструктуризировать, чтоб длина поля стала 9999. Выход простой, открой её дбф редактором и руками выстави нужную длину поля.
Затем прибей индексный файл и зайди монопольно.
На демке торговли, у меня всё работает.
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #16 - 15. Апреля 2010 :: 08:44
Печать  
Если удаляю .dd файл, не хочет создавать словарь данных заново вру, создает:
Цитата:
Не выполнено открытие информационной базы!

Цитата:
Анализ изменений в структуре информации.
New DD generate...
Old DD open process...
New DD open process...
Old DB open access...
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #17 - 15. Апреля 2010 :: 08:49
Печать  
Да оставь ты dd в покое - он правильным создается, согласно тому, что есть в мд.
Тут просто 1с-ый движок не может реструктуризировать табличку и всё. Руками длину поля увиличиваешь и всё работает Улыбка

  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #18 - 15. Апреля 2010 :: 09:02
Печать  
ОК. Ищу дбф редактор. пока не нахожу нормальный.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #19 - 15. Апреля 2010 :: 09:11
Печать  
блин..
http://www.wosoft.ru/load/47
ну или вот этот возьми

ЗЫ: дбфнавигатор, чего-то отказался такую длину ставить, только 255 символов всего Улыбка
  

dbfedit.zip ( 774 KB | Загрузки )
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #20 - 15. Апреля 2010 :: 09:22
Печать  
Нда, история...

В справочнике 12,000 записей. После изменения длины поля до 9999 файл дбф распух до 115 МБ.

По-видимому, лучше всего остаться на лимите 999 символов. Пускай пользователи ограничиваются короткими комментариями или разбивают их на несколько частей.

Eprst, спасибо за помощь и терпение.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #21 - 15. Апреля 2010 :: 09:27
Печать  
Э... а индексный файлик, какого размерчика стал ?
Улыбка
Так, к сведению..
ЗЫ: Да и .. а чем сейчас блоб не устраивает ? смысл в такой длине реквизита в самой табличке есть?..
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #22 - 15. Апреля 2010 :: 09:28
Печать  
Еще идет реиндексация.

А насчет подчиненного справочника - идея хорошая, но много возиться. Приедтся теперь во всех местах вытаскивать значение реквизита через особую процедуру.
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #23 - 15. Апреля 2010 :: 09:31
Печать  
Eprst писал(а) 15. Апреля 2010 :: 09:27:
ЗЫ: Да и .. а чем сейчас блоб не устраивает ? смысл в такой длине реквизита в самой табличке есть?..

Такие длинные реквизиты есть в нескольких справочниках - разного рода комментарии.
Когда комментов много - медленно работает. Да и риск увеличивается - если 1sblob глюкнет - несколько справочников будет затронуто. Думал. что можно ситуацию улучшить. Вот только, по-видимому, в остальных местах придется кучу костылей ставить. Шаг вперед, два назад...
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #24 - 15. Апреля 2010 :: 09:33
Печать  
Eprst писал(а) 15. Апреля 2010 :: 09:27:
Э... а индексный файлик, какого размерчика стал ?
Улыбка
Так, к сведению..

После реиндексации - 290 кБ.

Правда сами комменты в новое поле я еще не копировал - не знаю если это имеет значение.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #25 - 15. Апреля 2010 :: 09:36
Печать  
blindvic писал(а) 15. Апреля 2010 :: 09:33:
После реиндексации - 290 кБ.
Правда сами комменты в новое поле я еще не копировал - не знаю если это имеет значение.


скопиряй, удивишься размерчиком Улыбка

  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #26 - 15. Апреля 2010 :: 09:44
Печать  
Скопровал. Размер тот же 290 кб
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #27 - 15. Апреля 2010 :: 10:06
Печать  
странно, у меня индексный файлик вырос до космических размеров
ЗЫ: мот на нем сортировка стояла ? Улыбка ща посмотрю..
  
Наверх
 
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #28 - 15. Апреля 2010 :: 10:42
Печать  
Поднять сервер MySQL и читать/писать туда прямыми запросами не предлагать?
  
Наверх
ICQ  
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Макс. длина недлинной строки
Ответ #29 - 15. Апреля 2010 :: 11:12
Печать  
Salimbek писал(а) 15. Апреля 2010 :: 10:42:
Поднять сервер MySQL и читать/писать туда прямыми запросами не предлагать?

это ради маленькой дбф базы то ?
Слишком жирно будет Улыбка
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #30 - 15. Апреля 2010 :: 11:33
Печать  
Salimbek писал(а) 15. Апреля 2010 :: 10:42:
Поднять сервер MySQL и читать/писать туда прямыми запросами не предлагать?

Так лучше уж через 1sqlite
  
Наверх
 
IP записан
 
CaBaT
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 718
Местоположение: Санкт-Петербург
Зарегистрирован: 26. Октября 2007
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #31 - 15. Апреля 2010 :: 11:52
Печать  
Тоже хотел предложить, но потом подумал, что могут быть проблемы при многопользовательском доступе..
Все-таки sqlite не совсем для этого..
  
Наверх
 
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Макс. длина недлинной строки
Ответ #32 - 16. Апреля 2010 :: 05:18
Печать  
CaBaT писал(а) 15. Апреля 2010 :: 11:52:
Тоже хотел предложить, но потом подумал, что могут быть проблемы при многопользовательском доступе..
Все-таки sqlite не совсем для этого..

Ага, именно из-за ограничений многопользовательского режима и предложил мускул
  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать