Переключение на Главную Страницу Страницы: 1 ... 10 11 [12] 13 14 15 ОтправитьПечать
Очень популярная тема (более 25 ответов) Сумасшедшие идеи для 1С. Кто больше? (число прочтений - 72068 )
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #165 - 19. Октября 2007 :: 15:42
Печать  
kiruha писал(а) 19. Октября 2007 :: 15:24:
Насчет монопольного режима не понял.
Файл же закрыт на уровне ОС.

Что то на уровне внедрения в процесс 1С ?
Может можно сделать спец. компоненту ?

Дык у Орефкова и есть "спец. компонента" Подмигивание Он же задействует dbeng32.dll. Т.е. здесь для ДБФ получается аналог того, что есть для СКЛ - берем "родное" подключение 1С и пользуемся.
  
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #166 - 19. Октября 2007 :: 15:43
Печать  
kms писал(а) 19. Октября 2007 :: 15:28:
Какая работа с индексами?
ВыполнитьЗапрос("create index ... on ...") что ли?

Здесь, как я понял, имеется в виду задействование родных индексов 1С - для, например, поиска элемента справочника по его ID и т.п.
  
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #167 - 19. Октября 2007 :: 15:44
Печать  
kms писал(а) 19. Октября 2007 :: 15:35:
double? я не ослышался?

Улыбка Это ты на непредставимость денежных величин намекаешь? Улыбка
  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #168 - 19. Октября 2007 :: 15:46
Печать  
kms писал(а) 19. Октября 2007 :: 15:28:
orefkov писал(а) 19. Октября 2007 :: 11:01:
Ну, так как сейчас работа с индексами пока не сделана, то SQLite заставит мой модуль сканировать всю таблицу, и отберет записи, удовлетворяющие условию.

Какая работа с индексами?
ВыполнитьЗапрос("create index ... on ...") что ли?


Не...
Просто он не читает CDX, а Fox читает только часть файла CDX нужную для нахождения записи и часть файла ДБФ. Т.е. без индекса запрос по условию WHERE должен работать на несколько порядков медленнее в SQLLite+DBEng
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #169 - 19. Октября 2007 :: 15:49
Печать  
Z1 писал(а) 19. Октября 2007 :: 15:38:
А можно тест на сравнение ИТ и sqlite

Сделаю, конечно, только сейчас немножко некогда.
А что, виртуальные таблицы уже работают? У меня что-то "using dbeng" пока не взлетает.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #170 - 19. Октября 2007 :: 15:49
Печать  
Uzhast писал(а) 19. Октября 2007 :: 15:42:
kiruha писал(а) 19. Октября 2007 :: 15:24:
Насчет монопольного режима не понял.
Файл же закрыт на уровне ОС.

Что то на уровне внедрения в процесс 1С ?
Может можно сделать спец. компоненту ?

Дык у Орефкова и есть "спец. компонента" Подмигивание Он же задействует dbeng32.dll. Т.е. здесь для ДБФ получается аналог того, что есть для СКЛ - берем "родное" подключение 1С и пользуемся.


А для OLEDB? Просто задолбался запросы писать - отдельно для сетевого режима и отдельно
для монопольного
  
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #171 - 19. Октября 2007 :: 15:52
Печать  
kiruha писал(а) 19. Октября 2007 :: 15:49:
А для OLEDB? Просто задолбался запросы писать - отдельно для сетевого режима и отдельно
для монопольного

Для ОЛЕ ДБ был когда-то разговор. Достаточно изменить режим открытия файлов 1С в монопольном режиме: сделать, чтобы файлы можно было открывать на чтение другими процессами. "Монопольность" это не нарушит - никто не сможет войти в 1С, если 1С запущена в монополе. Но из самого монопольного сеанса будет возможность выполнять запросы на чтение через ОЛЕ ДБ.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #172 - 19. Октября 2007 :: 16:01
Печать  
kiruha писал(а) 19. Октября 2007 :: 15:49:
Uzhast писал(а) 19. Октября 2007 :: 15:42:
kiruha писал(а) 19. Октября 2007 :: 15:24:
Насчет монопольного режима не понял.
Файл же закрыт на уровне ОС.

Что то на уровне внедрения в процесс 1С ?
Может можно сделать спец. компоненту ?

Дык у Орефкова и есть "спец. компонента" Подмигивание Он же задействует dbeng32.dll. Т.е. здесь для ДБФ получается аналог того, что есть для СКЛ - берем "родное" подключение 1С и пользуемся.


А для OLEDB? Просто задолбался запросы писать - отдельно для сетевого режима и отдельно
для монопольного

Не знаю sqlite Орефкова работает и в монопольном режиме для 1с dbf как для
локального так и для сетевого диска.
Обработка же прикреплена к 163. измени справочник Клиенты на свой справочник и попробуй.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #173 - 19. Октября 2007 :: 16:02
Печать  
Uzhast, kiruha

А, ясно.
Не догнал сразу, что Саша уже дал интерфейс к виртуальным таблицам.

Для меня в первую очередь SQLITE - это альтернатива (или скорее, дополнение) к ИТ в плане локальной обработки данных.
Но, конечно, если через интерфейс SQLITE можно будет обращаться к множеству разнородных источников (к примеру, ТЗ, DBF, SQL таблиц), это правда интересно.

Пожалуй, вполне на праздник потянет. Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #174 - 19. Октября 2007 :: 16:03
Печать  
Uzhast писал(а) 19. Октября 2007 :: 15:44:
kms писал(а) 19. Октября 2007 :: 15:35:
double? я не ослышался?

Улыбка Это ты на непредставимость денежных величин намекаешь? Улыбка

Гы, типа да, приколы дядюшки мокуса Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #175 - 19. Октября 2007 :: 16:07
Печать  
Код
Выбрать все
	база.Открыть(имя);
	запрос = база.НовыйЗапрос();
	запрос.ВыполнитьЗапрос("create virtual table Номенклатура using dbeng(Справочник.Номенклатура)");
	тз = запрос.ВыполнитьЗапрос("select * from Номенклатура");
 


А что я делаю не так?
тз в итоге равно нулю (обработки ошибок, наверное, пока нет)
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #176 - 19. Октября 2007 :: 16:14
Печать  
kms писал(а) 19. Октября 2007 :: 16:07:
А что я делаю не так?
тз в итоге равно нулю (обработки ошибок, наверное, пока нет)

Ну, или ВК старую берешь, или у тебя нет справочника "Номенклатура" Улыбка или у тебя база СКЛ.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #177 - 19. Октября 2007 :: 16:36
Печать  
Uzhast писал(а) 19. Октября 2007 :: 16:14:
kms писал(а) 19. Октября 2007 :: 16:07:
А что я делаю не так?
тз в итоге равно нулю (обработки ошибок, наверное, пока нет)

Ну, или ВК старую берешь, или у тебя нет справочника "Номенклатура" Улыбка или у тебя база СКЛ.

Улыбка
Точно, отстал от жизни - на версии от 19.10 работают ВТ

Z1 писал(а) 19. Октября 2007 :: 15:38:
kms писал(а) 19. Октября 2007 :: 15:35:
Кстати, твой вариант по всем трем показателям (заполнение, индексация, получение), как ни странно, отстает от ИТ, и прилично - уж не знаю, неужели это SQLITE настолько плохо оптимизирован.

А можно тест на сравнение ИТ и sqlite

Готово.
Очень интересный оказался результат, особенно, если поднять число строк хотя бы до миллиона.
  

SLvsIT.ert ( 7 KB | Загрузки )

De quelle planète es-tu?
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #178 - 19. Октября 2007 :: 16:43
Печать  
kms писал(а) 19. Октября 2007 :: 16:36:
Очень интересный оказался результат, особенно, если поднять число строк хотя бы до миллиона.


Тест SQLITE
Вставка = 1350 Индексация = 634 Выборка = 66
Строк = 100000

Тест ИТ
Вставка = 740 Индексация = 428 Выборка = 123
Строк = 100000

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


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Сумасшедшие идеи для 1С. Кто больше?
Ответ #179 - 19. Октября 2007 :: 16:56
Печать  
Z1

Тут интересно, что
1. Зависимость времени вставки и выборки от размера набора данных для SQLITE линейна - это превосходный результат для SQLITE engine.
Для построения индекса - тут логарифм двойки, по-моему тоже вполне соблюдается.

2. int в памяти - это действительно int (в отличие от ИТ).

А вот для ИТ время выборки нелинейно.
Так что движок SQLITE, как мы и думали, весьма перспективен для проведения операций над множествами.

P.S.
Сама компонента пока падает время от времени, на этом простом тесте.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 10 11 [12] 13 14 15
ОтправитьПечать