Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) Как записать в справочник прямым запросом (число прочтений - 4098 )
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Как записать в справочник прямым запросом
16. Сентября 2010 :: 05:42
Печать  
Как записать в справочник прямым запросом?

Вопрос связан с следующей ситуацией. Я реализовал документ с табличной частью, которая хранится в дополнительной (не 1С-кой) таблице. На форме документа эта таблица отображается при помощи табличного поля. (тема: Ускорение работы документа с большой ТЗ при помощи 1С++).

Теперь хочу попробовать реализовать тоже самое, но хранить табличную часть документа в справочнике. Этот вариант вкратце обсуждался в той же теме.

Только вот непонятно как писать в справочник новые записи. Какие значения полей ROW_ID, ID, VERSTAMP подставлять в запрос?

  
Наверх
ICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как записать в справочник прямым запросом
Ответ #1 - 16. Сентября 2010 :: 06:03
Печать  
При добавлении новой записи:
ROW_ID - посчитается сам
VERSTAMP - 0
ID - смотри в сторону объекта SQLLock
  

1&&2&&3
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Как записать в справочник прямым запросом
Ответ #2 - 16. Сентября 2010 :: 06:03
Печать  
  
Наверх
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Как записать в справочник прямым запросом
Ответ #3 - 16. Сентября 2010 :: 06:04
Печать  
И вот еще ... а вообще в поиск.
http://www.1cpp.ru/forum/YaBB.pl?num=1217317353
  
Наверх
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как записать в справочник прямым запросом
Ответ #4 - 16. Сентября 2010 :: 06:08
Печать  
спасибо Улыбка
помню, что вроде когда-то спрашивал, а поиском искал другими словами
  
Наверх
ICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как записать в справочник прямым запросом
Ответ #5 - 16. Сентября 2010 :: 06:10
Печать  
leshik писал(а) 16. Сентября 2010 :: 06:03:

повторенье- мать перемать Улыбка
  

1&&2&&3
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как записать в справочник прямым запросом
Ответ #6 - 16. Сентября 2010 :: 06:42
Печать  
Неужели и один элемент справочника так долго записывается, чтобы снова начать извращаться?
  
Наверх
 
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как записать в справочник прямым запросом
Ответ #7 - 16. Сентября 2010 :: 08:39
Печать  
JohnyDeath писал(а) 16. Сентября 2010 :: 06:42:
Неужели и один элемент справочника так долго записывается, чтобы снова начать извращаться?


Какой один элемент?
Смысл в том что в табличной части документа не одна, а 30тыс. строк.
Такой документ работает ооооочень медленно.

  
Наверх
ICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как записать в справочник прямым запросом
Ответ #8 - 16. Сентября 2010 :: 09:04
Печать  
Так если у тебя будет на справочниках всё крутиться, то одна строка Таб Части документа будет соответствовать одному элементу справочника. Т.е. после редактирования каждой строчки, она будет записываться отдельно (независимо от других), в отличии от Таб Части документа, где тебе приходилось писать все строки скопом, откуда и получали тормоза.
  
Наверх
 
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как записать в справочник прямым запросом
Ответ #9 - 16. Сентября 2010 :: 10:45
Печать  
JohnyDeath писал(а) 16. Сентября 2010 :: 09:04:
Так если у тебя будет на справочниках всё крутиться, то одна строка Таб Части документа будет соответствовать одному элементу справочника. Т.е. после редактирования каждой строчки, она будет записываться отдельно (независимо от других), в отличии от Таб Части документа, где тебе приходилось писать все строки скопом, откуда и получали тормоза.


Ну и что, что каждой строке соответствует элемент справочника...
Что мне мешает все строки ТабЧасти также записать скопом?
  
Наверх
ICQ  
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как записать в справочник прямым запросом
Ответ #10 - 16. Сентября 2010 :: 10:47
Печать  
А где можно найти соответствие между типами 1С и типами SQL, которые надо указывать в методе "ДобПараметр"?

Интересует тип, который надо указывать для справочника, для даты и для строки неопределенной длины
  
Наверх
ICQ  
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как записать в справочник прямым запросом
Ответ #11 - 16. Сентября 2010 :: 11:16
Печать  
при выполнении insert выдается ошибка: "усечение строки справа"
  
Наверх
ICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как записать в справочник прямым запросом
Ответ #12 - 16. Сентября 2010 :: 12:24
Печать  
es3000 писал(а) 16. Сентября 2010 :: 10:45:
JohnyDeath писал(а) 16. Сентября 2010 :: 09:04:
Так если у тебя будет на справочниках всё крутиться, то одна строка Таб Части документа будет соответствовать одному элементу справочника. Т.е. после редактирования каждой строчки, она будет записываться отдельно (независимо от других), в отличии от Таб Части документа, где тебе приходилось писать все строки скопом, откуда и получали тормоза.


Ну и что, что каждой строке соответствует элемент справочника...
Что мне мешает все строки ТабЧасти также записать скопом?

Похоже, что мы на разных языках разговариваем..  Нерешительный
  
Наверх
 
IP записан
 
es3000
God Member
*****
Отсутствует



Сообщений: 536
Зарегистрирован: 10. Июля 2006
Re: Как записать в справочник прямым запросом
Ответ #13 - 16. Сентября 2010 :: 13:48
Печать  
JohnyDeath писал(а) 16. Сентября 2010 :: 12:24:
es3000 писал(а) 16. Сентября 2010 :: 10:45:
JohnyDeath писал(а) 16. Сентября 2010 :: 09:04:
Так если у тебя будет на справочниках всё крутиться, то одна строка Таб Части документа будет соответствовать одному элементу справочника. Т.е. после редактирования каждой строчки, она будет записываться отдельно (независимо от других), в отличии от Таб Части документа, где тебе приходилось писать все строки скопом, откуда и получали тормоза.


Ну и что, что каждой строке соответствует элемент справочника...
Что мне мешает все строки ТабЧасти также записать скопом?

Похоже, что мы на разных языках разговариваем..  Нерешительный


Я не исключаю, что я что-то не правильно понял...
Давай попробуем еще раз...
Объясни поподробнее что ты имеешь ввиду, когда говоришь, что каждая строчка будет записываться отдельно
  
Наверх
ICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как записать в справочник прямым запросом
Ответ #14 - 17. Сентября 2010 :: 05:42
Печать  
У тебя будет 30000 элементов справочника, а не 30000 строк табличной части дока. Поэтому, когда пользователь будет редактировать, например, 4-ю строку, то по окончанию её редактирования именно она и запишется (пользователь будет думать, что это ТЧ, а на самом деле это список элементов справочника), т.о. после окончания редактирования всех строк мы вообще ничего не заметим. А в случае с ТЧ нам необходимо было бы записывать все 30000 строк в таблицу 1С.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать