Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Выборка документов SQLite (число прочтений - 2974 )
chelentano
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 25
Зарегистрирован: 28. Ноября 2007
Выборка документов SQLite
06. Мая 2009 :: 05:37
Печать  
всем здравствуйте. может подскажет кто. хочу выбрать все документы из журнала, пишу:
select Журнал.iddoc [ДокументСсылка] - список выдает, но как ссылки не воспринимает,
если пишу
select Журнал.iddoc [ДокументСсылка $Документ] - то список пустой получается


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


I Love YaBB 2!

Сообщений: 25
Зарегистрирован: 28. Ноября 2007
Re: Выборка документов SQLite
Ответ #1 - 06. Мая 2009 :: 06:00
Печать  
все, спасибо, разобрался Улыбка надо было вид добавлять
  
Наверх
 
IP записан
 
orefkov
1c++ developer
1c++ moderator
Отсутствует


I Love YaBB 2!

Сообщений: 896
Зарегистрирован: 20. Мая 2006
Re: Выборка документов SQLite
Ответ #2 - 07. Мая 2009 :: 05:35
Печать  
Можно либо так:
Код
Выбрать все
select Журнал.iddocdef || Журнал.iddoc [ДокументСсылка $Документ]  


либо так:
Код
Выбрать все
select
Журнал.iddoc [ДокументСсылка $Документ],
Журнал.iddocdef [ДокументСсылка_вид]
 


Операция || в sqlite - это объединение строк
  
Наверх
 
IP записан
 
chelentano
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 25
Зарегистрирован: 28. Ноября 2007
Re: Выборка документов SQLite
Ответ #3 - 07. Мая 2009 :: 10:31
Печать  
так и сделал, весьма благодарен... если можно, еще один вопросик... хотелось бы сделать в запросе что то типа "журн.iddocdef in (select val from СписокВидовДок)", а вот как этот список видов докуметов сформировать можно?
  
Наверх
 
IP записан
 
chelentano
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 25
Зарегистрирован: 28. Ноября 2007
Re: Выборка документов SQLite
Ответ #4 - 07. Мая 2009 :: 10:34
Печать  
попытался сделать так:
Мета=СоздатьОбъект("MetaDataWork");
Для Сч=1 По Метаданные.Документ() Цикл
Если ПроверкаПравДоступа("Чтение","Документ."+ВидДок,0)=1 Тогда
СписокДокументовЧтение.ДобавитьЗначение(_IdToStr(Мета.ИДДокумента(ВидДок)));
КонецЕсли

базаДанных.УложитьОбъекты(СписокДокументовЧтение,"выбСписокВидовДокументов");

но на выходе пустой список выдает Печаль
  
Наверх
 
IP записан
 
orefkov
1c++ developer
1c++ moderator
Отсутствует


I Love YaBB 2!

Сообщений: 896
Зарегистрирован: 20. Мая 2006
Re: Выборка документов SQLite
Ответ #5 - 07. Мая 2009 :: 12:49
Печать  
Что-то я не вижу внутри цикла

ВидДок = Метаданные.Документ(Сч).Идентификатор;

Далее - получаемый так список будет содержать неверные строки - из-за лидирующих пробелов.

Лучше сделать так:
Код
Выбрать все
запрос.ВыполнитьЗапрос("create temp table ВидыДоков(val char(4) primary key not nul)");
Для Сч = 1 По Метаданные.Документ() Цикл
    Если Тогда
	  запрос.ВыполнитьЗапрос("insert into ВидыДоков values(:ВидДокумента." + Метаданные.Документ(Сч).Идентификатор + ")");
    КонецЕсли;
КонецЦикла;
 

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


I Love YaBB 2!

Сообщений: 25
Зарегистрирован: 28. Ноября 2007
Re: Выборка документов SQLite
Ответ #6 - 07. Мая 2009 :: 15:32
Печать  
ВидДок = Метаданные.Документ(Сч).Идентификатор; - это есть, просто второпях не дописал...  Улыбка
спасибо, завтра попробую, значит дело все в пробелах?
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Выборка документов SQLite
Ответ #7 - 07. Мая 2009 :: 17:06
Печать  
orefkov писал(а) 07. Мая 2009 :: 12:49:
...
Лучше сделать так:

а ещё быстрее получиться вот так:
Код
Выбрать все
запрос.ВыполнитьЗапрос("create temp table ВидыДоков(val char(4) primary key not nul)");
запрос.ВыполнитьЗапрос("BEGIN TRANSACTION");
Для Сч = 1 По Метаданные.Документ() Цикл
    Если Тогда
	  запрос.ВыполнитьЗапрос("insert into ВидыДоков values(:ВидДокумента." + Метаданные.Документ(Сч).Идентификатор + ")");
    КонецЕсли;
КонецЦикла;
запрос.ВыполнитьЗапрос("END TRANSACTION");
 

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


I Love YaBB 2!

Сообщений: 25
Зарегистрирован: 28. Ноября 2007
Re: Выборка документов SQLite
Ответ #8 - 08. Мая 2009 :: 04:22
Печать  
спасибо всем, получилось Улыбка
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать