Переключение на Главную Страницу Страницы: 1 ... 66 67 [68] 69 70 ... 79 ОтправитьПечать
Очень популярная тема (более 25 ответов) 1sqlite (число прочтений - 458874 )
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1005 - 28. Февраля 2019 :: 10:18
Печать  
Есть 2 документа с полем Клиент. В одном оно типизировано до Справочник.Клиенты, а во втором типизировано до Справочник.

Можно ли как-то объединить эти поля в одно в запросе?

Если я делаю типизацию в запросе, например:
Код
Выбрать все
as [Клиент :Справочник] 



для одного типа документа клиент выводится, в другом нет.
И получается наоборот, если сделать
Код
Выбрать все
as [Клиент :Справочник.Клиент] 


  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1006 - 28. Февраля 2019 :: 10:26
Печать  
Разве что сделать так:

Код
Выбрать все
case journ.iddocdef
		when '  UM' then ДокПриходнаяНакладная.Клиент
		when '  W5' then :ВидСправочника.Клиенты||ДокРасходнаяНакладная.Клиент
	end as [Клиент :Справочник]
 

  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 633
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: 1sqlite
Ответ #1007 - 28. Февраля 2019 :: 11:46
Печать  
alyuev писал(а) 28. Февраля 2019 :: 10:26:
Разве что сделать так:

Код
Выбрать все
case journ.iddocdef
		when '  UM' then ДокПриходнаяНакладная.Клиент
		when '  W5' then :ВидСправочника.Клиенты||ДокРасходнаяНакладная.Клиент
	end as [Клиент :Справочник]
 



Да так, или наоборот - резануть лишнее.
Код
Выбрать все
case journ.iddocdef
		when :ВидДокумента.ПриходнаяНакладная then substr(ДокПриходнаяНакладная.Клиент,5)
		when :ВидДокумента.РасходнаяНакладная then ДокРасходнаяНакладная.Клиент
	end as [Клиент :Справочник.Клиенты]
 

[/quote]

Есть же :ВидДокумента, '  UM' и '  W5' не стоит использовать.
  
Наверх
www  
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1008 - 12. Сентября 2019 :: 10:46
Печать  
Странно... Куда-то подевалась эта ветка. В репозитории не видна... Нашел гуглом... Написал этот коммент, чтобы всплыла наверх.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1009 - 12. Сентября 2019 :: 12:15
Печать  
А вопрос появился такой:

ПоставщикДанных SQLiteDataProvider портит запрос с GROUP BY после вставки запроса в УстановитьТекстЗапроса().

Был запрос такой:
Код (SQL)
Выбрать все
where
(
	((journ.date between '20190902'
	and '20190911Я'
))
and (journ.iddocdef = '  W5')
)

GROUP BY
	journ.iddoc 



А возвращается запрос методом ПолучитьТекстЗапроса(1) такой:

Код (SQL)
Выбрать все
  where
((
	((journ.date between '20190902'
	and '20190911Я'))
and (journ.iddocdef = '  W5')
)

GROUP BY
	journ.iddoc) 



Выделил новые скобки. Которые оказались неправильными.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 633
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: 1sqlite
Ответ #1010 - 12. Сентября 2019 :: 12:20
Печать  
alyuev писал(а) 12. Сентября 2019 :: 12:15:
А вопрос появился такой:

ПоставщикДанных SQLiteDataProvider портит запрос с GROUP BY после вставки запроса в УстановитьТекстЗапроса().


Синтаксис: УстановитьТекстЗапроса(ТекстЗапроса, КлючевыеПоля, [ИдПоле])

Всвязи с таким принципом работы поставщика, возникают следующие требования к тексту запроса:

Запрос должен быть запросом на выборку (select'ом), без указания упорядочивания запроса (без order by).
Все поля в списке полей запроса должны быть указаны явно, указывать поля как * нельзя.
Если для какого-то поля задается алиас, то алиас должен быть заключен в []
В запросе можно применять только именованные SQL-параметры (вида @ИмяПараметра), указывать SQL-параметры как '?' нельзя.

Крутись как хочешь  Нерешительный
Вьюшкой обмануть можно.
  
Наверх
www  
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1011 - 12. Сентября 2019 :: 15:39
Печать  
Обрати внимание: У меня GROUP BY, а в описании идет речь про ORDER BY (а про него я читал)!
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 633
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: 1sqlite
Ответ #1012 - 12. Сентября 2019 :: 15:54
Печать  
alyuev писал(а) 12. Сентября 2019 :: 15:39:
Обрати внимание: У меня GROUP BY, а в описании идет речь про ORDER BY (а про него я читал)!


А, да. Это я что-то недоглядел Подмигивание

Но GROUP BY тоже не должно быть.

Дело в том что табличное поле работает через offset и limit по ключевому полю, если сделать GROUP BY то offset и limit будут бесполезны, запрос будет выполняться полностью каждый раз когда проводится пролистывание списка. А это уже не быстрая операция - тормозить будет адски.


  
Наверх
www  
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1013 - 12. Сентября 2019 :: 16:38
Печать  
Жаль... А то я допиливаю класс ПоставщикДанных для журналов, чтобы можно было добавлять к нему ГрафыОтборов. Графу добавил, но док разворачивается по графе, хотя задумка была такая, что пока не выбрал значение графы отбора - журнал должен был бы свернуться до документа...
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 633
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: 1sqlite
Ответ #1014 - 12. Сентября 2019 :: 17:16
Печать  
alyuev писал(а) 12. Сентября 2019 :: 16:38:
Жаль... А то я допиливаю класс ПоставщикДанных для журналов, чтобы можно было добавлять к нему ГрафыОтборов. Графу добавил, но док разворачивается по графе, хотя задумка была такая, что пока не выбрал значение графы отбора - журнал должен был бы свернуться до документа...


Жалко/НеЖалко, а тормозить будет. Смысла делать наверное нет.
Сам страдаю периодически от этого, но скорость в приоритете задач.
Можно сделать, но я так думаю, лучше выкручиваться вьюшками.

Для Журнала документов группировка не требуется, если ты не пересчитываешь суммы в табличной части документов и т.п.
Это же не 1С, где без группировки вообще ничего не выведется...
Просто убери группировку, а если потребуется что-то выводить группируемое в строках - выводи в ПриВыводеСтроки.

И кстати, я писал выше:
> Есть же :ВидДокумента, '  UM' и '  W5' не стоит использовать.
Ежели что, хрен потом вспомнишь (по быстрому)  Подмигивание

P.S. Графы отбора... Ну я с ними не работал.
*Покури* условия левого джойна, решение должно быть.
  
Наверх
www  
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1015 - 13. Сентября 2019 :: 07:55
Печать  
journ.iddocdef = '  W5'

Это Класс ПоставщикДанных уже обработал запрос....

А так я, конечно, использую :ВидДокумента...
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1016 - 13. Сентября 2019 :: 19:56
Печать  
Кстати, Djelf, когда будешь делать следующую сборку, поправь плиз первое слово в фразе "Поставщие данных SQLite: Формирование запроса ..."
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 633
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: 1sqlite
Ответ #1017 - 06. Октября 2019 :: 06:49
Печать  
alyuev писал(а) 13. Сентября 2019 :: 19:56:
Кстати, Djelf, когда будешь делать следующую сборку, поправь плиз первое слово в фразе "Поставщие данных SQLite: Формирование запроса ..."


Хм, посмотрел. Это было в версии sqlite1c_3.25.1.23 и поправлено еще в sqlite1c_3.27.1.23 от 27.02.2019, ну а сейчас уже 1sqlite_3.30.0.23.
Все версии там же: https://cloud.mail.ru/public/9znr/ZJ6ULE9aR
  
Наверх
www  
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 850
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: 1sqlite
Ответ #1018 - 07. Октября 2019 :: 08:22
Печать  
Таки да у нас sqlite1c_3.25.1.23. Извини, не упомянул об версии. И спасибо за новые.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
leov-001
Full Member
***
Отсутствует


1C++ rocks!

Сообщений: 150
Зарегистрирован: 05. Марта 2009
Re: 1sqlite
Ответ #1019 - 07. Октября 2019 :: 12:28
Печать  
Описание файла 1sqlite.dll (3.30.0.23)+JSON1 - вот про json чуточку поподробней.
Как его в 1с готовить.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 66 67 [68] 69 70 ... 79
ОтправитьПечать