powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / 1С 8.Х Индексировать по нескольким реквизитам
23 сообщений из 48, страница 2 из 2
1С 8.Х Индексировать по нескольким реквизитам
    #38765321
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmovПрошу прощения. Не увидел смайлики про быстрый поиск в файловой базе. Беру свои слова обратно.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38765533
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmovВаш ответ был информативным, поэтому вдруг Вы сможете и на следующие ответить:
1. Получается каждый раз, когда 1С накатывает метаданные на СУБД - таблицы будут перестроены и индексы(созданные в обход платформы) уйдут в небытие?
2. Где увидеть удобоваримой форме размещение объектов и их реквизитов в СУБД. А то в СУБД данные из 1С хранятся в виде, типа Reference12.Field9, и поди догадайся что это Контрагент.Телефон ))).... ?
3. Вы сами используете "рукотворные индексы" ? Помогает?

1. Когда накатываются изменения, то могут слететь у того объекта, которому применяются изменения.
2. Есть обработки, которые переводят бизнес логику в объекты СУБД. Они бесплатные, можно найти тут даже на форуме.
А вот та платная штука , которая позволит залезть внутрь индекса.
Не реклама, сама я этой штукой не пользуюсь.

3. В плане 1c и MS SQL - нет. Анализ кода под MS SQL того что генерирует 1с - это просто мрак.
От платформы к платформе все хуже и хуже. Например срез последних - если сделать самостоятельно кодом 1с через временные объекты или воспользоваться тем что дает 1с как готовое - разница до 4 раз в производительности, не в пользу готового 1с.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38765557
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VolochkovaАнализ кода под MS SQL того что генерирует 1с - это просто мрак.
От платформы к платформе все хуже и хуже. Например срез последнихв платформе 8.3 срез последних на текущий момент реализован одной физической таблицей
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38765559
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vi0VolochkovaАнализ кода под MS SQL того что генерирует 1с - это просто мрак.
От платформы к платформе все хуже и хуже. Например срез последнихв платформе 8.3 срез последних на текущий момент реализован одной физической таблицей

Я знаю что это одна таблица в логике 1C, а что это за код T-SQL смотрели?
Мрак... кромешный....
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38765567
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Volochkovavi0пропущено...
в платформе 8.3 срез последних на текущий момент реализован одной физической таблицей

Я знаю что это одна таблица в логике 1C, а что это за код T-SQL смотрели?
Мрак... кромешный.... в логике СУБД
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38765591
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vi0VolochkovaЯ знаю что это одна таблица в логике 1C, а что это за код T-SQL смотрели?
Мрак... кромешный.... в логике СУБД

Сравните то что генерирует 1С (одной таблицей) и такой же запрос через промежуточный объект в 1с.
В итоге разница ощутима в скорости, при прочих равных результатах.
Такая цена "универсальности", при одинаковых индексах.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38766668
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Volochkova,
Не совсем конкретно написал, перефразирую. Отвечаю к вашим словам: VolochkovaАнализ кода под MS SQL того что генерирует 1с - это просто мрак.
От платформы к платформе все хуже и хуже. Например срез последних
СрезПоследних в 1с версия 8.3 с заданием периода и в 8.2
для следующего запроса ВЫБРАТЬ Измерение1 ИЗ РегистрСведений.Рег1.СрезПоследних(&Дата1)
формирует такой код
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
exec sp_executesql N'SELECT
T1.Fld30_
FROM (SELECT
T4._Fld30 AS Fld30_
FROM (SELECT
T3._Fld30 AS Fld30_,
MAX(T3._Period) AS MAXPERIOD_
FROM dbo._InfoRg29 T3
WHERE T3._Period <= @P1
GROUP BY T3._Fld30) T2
INNER JOIN dbo._InfoRg29 T4
ON T2.Fld30_ = T4._Fld30 AND T2.MAXPERIOD_ = T4._Period) T1',N'@P1 datetime',''4014-10-02 00:00:00:000''


СрезПоследних в 1с версия 8.3 позволяет самые последние и самые первые значения хранить в отдельных таблицах
и для запроса ВЫБРАТЬ Измерение1 ИЗ РегистрСведений.Рег1.СрезПоследних()
формирует такой код
Код: sql
1.
2.
3.
4.
5.
SELECT
T1.Fld30_
FROM (SELECT
T2._Fld30 AS Fld30_
FROM dbo._InfoRgSL33 T2) T1
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38766764
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В 8.2, в зависимости от релиза платформы

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
exec sp_executesql N'SELECT
T1.Fld30_
FROM (SELECT
T4._Fld30 AS Fld30_
FROM (SELECT
T3._Fld30 AS Fld30_,
MAX(T3._Period) AS MAXPERIOD_
FROM dbo._InfoRg29 T3
WHERE T3._Period <= @P1
GROUP BY T3._Fld30) T2
INNER JOIN dbo._InfoRg29 T4
ON T2.Fld30_ = T4._Fld30 AND T2.MAXPERIOD_ = T4._Period) T1',N'@P1 datetime',''4014-10-02 00:00:00:000''


Может заворачиваться в еще один вложенный запрос с группировками.
И при 20 000 номенклатуры это уже становится не смешно.
После того как нарвались на такое, перебирать 8.3 редакции при распределенке в 10 точек уже не так интересно.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38766782
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Volochkova,
авторОт платформы к платформе все хуже и хуже
я вам привел пример, что с последующими версиями, в целом, качество улучшается
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38766815
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Volochkova, а что за странное время 4014 -10-02?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38766882
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 1сVolochkova, а что за странное время 4014 -10-02?
Это репост. Время не мое :-)
vi0Volochkova,
авторОт платформы к платформе все хуже и хуже
я вам привел пример, что с последующими версиями, в целом, качество улучшается
Ставили последнюю 8.2 - качество такое же.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38766894
vi0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 1сVolochkova, а что за странное время 4014 -10-02? Mssql позволяет хранить время только от 1753года, а у 1с больше нижний диапазон - от 0001. Чтобы из 1с сохранять в mssql дату меньше 1753г можно задаеть смещение 2000. Например год 1600 можно сохранить так, 1600+2000 = 3600 - это будет хранится mssql, а при считывании наоборот отнимаем 2000.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38767155
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vi0, спасибо.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38778111
Александр Пузаков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmov, никак. В 1С, за некоторым исключением, нет возможности создавать составные индексы. А создание индексов средствами СУБД является нарушением лицензионного соглашения.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38778135
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр Пузаковsigmov, никак. В 1С, за некоторым исключением, нет возможности создавать составные индексы. А создание индексов средствами СУБД является нарушением лицензионного соглашения.

В какой части нарушение лицензионного соглашения?
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38778138
Александр Пузаков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VolochkovaАлександр Пузаковsigmov, никак. В 1С, за некоторым исключением, нет возможности создавать составные индексы. А создание индексов средствами СУБД является нарушением лицензионного соглашения.

В какой части нарушение лицензионного соглашения?

Вопрос65. Для реализации своих задач Организация предполагает изменить структуру некоторых таблиц базы данных. Также предполагается использовать хранимые процедуры и триггеры для реализации обработки данных, реализовать экспорт данных путем прямого чтения таблиц, добавить новые индексы и изменить структуру некоторых индексов. Имеет ли Организация право вносить в систему перечисленные изменения?
ОтветЛицензионное соглашение не позволяет использовать недокументированные фирмой "1С" средства для построения решений на платформе 1С:Предприятие. Это означает, что средства СУБД (или любые другие внесистемные средства) можно использовать только в том случае, если документация по продуктам линейки "1С:Предприятие" (включая ИТС) содержит явную рекомендацию использовать данное средство для решения данной задачи.

Во всех остальных случаях лицензионное соглашение позволяет использовать для построения решений только штатные средства платформы. В частности, можно обращаться к данным информационной базы только при помощи объектов "1С:Предприятия", специально предназначенных для работы с данными (запросы, справочники, документы и т.д.). Нельзя обращаться к данным информационной базы напрямую, минуя уровень объектов работы с данными "1С:Предприятия" - например при помощи средств СУБД или при помощи внешних компонент, которые реализуют прямой доступ к СУБД. Это ограничение распространяется на любые действия с данными, в том числе на изменение их структуры, а так же на чтение или изменение самих данных информационной базы или служебных данных "1С:Предприятия".

Данное ограничение необходимо для обеспечения стабильности работы механизмов системы, осуществления поддержки и возможности перехода на новые версии "1С:Предприятия".

http://v8.1c.ru/predpriyatie/questions_licence.htm
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38778176
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр Пузаков,

1c ограничивает только работу с данными.
На индексы, триеры, резервное копирование, зеркалирование СУБД - ограничение не распространяется.
Это и написано в ответе из 1с.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38778260
Александр Пузаков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Volochkova, Вы не правы.
Рупасов Константин, фирма 1СОфициально от имени фирмы 1С сообщаю вам, что создание или изменение индексов базы данных средствами СУБД является нарушением лицензионного соглашения.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38778350
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр ПузаковVolochkova, Вы не правы.
Рупасов Константин, фирма 1СОфициально от имени фирмы 1С сообщаю вам, что создание или изменение индексов базы данных средствами СУБД является нарушением лицензионного соглашения.

Изменение - да.
Создание - нет.
Хотя создание уникального индекса и может привести к сбою, но это уже проблемы того кто не понимая что делает, кнопки жмет.
Тригеры - так же могут повлечь нарушение целостности.

Если не нарушают работу 1с платформы - то можно.
Покажите пункт лицензионного соглашение где именно так и написано? иначе, не более чем вольная трактовка.
Трактовка - запрещается лезть в двигатель = не лазить под капот машины - очень правильно с точки зрения безопасности, но если кто то и залез, то это не нарушение лицензии.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38778466
Александр Пузаков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VolochkovaИзменение - да.
Создание - нет.
Хотя создание уникального индекса и может привести к сбою, но это уже проблемы того кто не понимая что делает, кнопки жмет.
Тригеры - так же могут повлечь нарушение целостности.

Если не нарушают работу 1с платформы - то можно.
Покажите пункт лицензионного соглашение где именно так и написано? иначе, не более чем вольная трактовка.
Трактовка - запрещается лезть в двигатель = не лазить под капот машины - очень правильно с точки зрения безопасности, но если кто то и залез, то это не нарушение лицензии.
Какая вольная трактовка? Это слова представителя фирмы 1С, как раз отвечающего за данное направление (не лицензирование, а работа платформы с СУБД).
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38778528
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр ПузаковVolochkovaИзменение - да.
Создание - нет.
Хотя создание уникального индекса и может привести к сбою, но это уже проблемы того кто не понимая что делает, кнопки жмет.
Тригеры - так же могут повлечь нарушение целостности.

Если не нарушают работу 1с платформы - то можно.
Покажите пункт лицензионного соглашение где именно так и написано? иначе, не более чем вольная трактовка.
Трактовка - запрещается лезть в двигатель = не лазить под капот машины - очень правильно с точки зрения безопасности, но если кто то и залез, то это не нарушение лицензии.
Какая вольная трактовка? Это слова представителя фирмы 1С, как раз отвечающего за данное направление (не лицензирование, а работа платформы с СУБД).

Лицензионное соглашение к словам представителя фирмы - относятся так же как закон и мнение чиновника на этот счет.
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38779281
Александр Пузаков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VolochkovaАлександр ПузаковКакая вольная трактовка? Это слова представителя фирмы 1С, как раз отвечающего за данное направление (не лицензирование, а работа платформы с СУБД).
Лицензионное соглашение к словам представителя фирмы - относятся так же как закон и мнение чиновника на этот счет.
Делайте как считаете нужно, дело ваше. Но только если возникнут траблы с базой, потом не пеняйте на "кривизну 1С".
...
Рейтинг: 0 / 0
1С 8.Х Индексировать по нескольким реквизитам
    #38779330
Volochkova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр ПузаковVolochkovaпропущено...

Лицензионное соглашение к словам представителя фирмы - относятся так же как закон и мнение чиновника на этот счет.
Делайте как считаете нужно, дело ваше. Но только если возникнут траблы с базой, потом не пеняйте на "кривизну 1С".

Кривизны 1с и без "моих делайте как знаете" хватает :-)
Но если сравнивать с другими, то 1с - ровнее :-)
...
Рейтинг: 0 / 0
23 сообщений из 48, страница 2 из 2
Форумы / [игнор отключен] [закрыт для гостей] / 1С 8.Х Индексировать по нескольким реквизитам
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]