Переключение на Главную Страницу Страницы: 1 2 [3] 4  ОтправитьПечать
Очень популярная тема (более 25 ответов) Справочник плюс. Прямая запись и чтение в справочники 1С 7.7 (число прочтений - 27994 )
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #30 - 01. Июня 2012 :: 13:56
Печать  
Улыбка

Если че, всё что перечислил - будет заблокировано, все таблички целиком.
  
Наверх
 
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #31 - 01. Июня 2012 :: 13:58
Печать  
Z1 писал(а) 01. Июня 2012 :: 13:48:
(an2) даже если ты снимешь все блокировки какие 1с выставляет
есть еще блокировки которые sql сервер выставляет сам на
тех же самых таблицах.

Озвучь что ты хочешь получить - конечная цель какая ?
снять просто блокировки  как бы плохая цель(скорее грабли).


sql блокирует только измененные записи.

Хочу получить параллельную перезпись (update) и проведение документов.

Прекрасно понимаю, получить параллельный ВВОД НОВЫХ документов невозможно.
  
Наверх
 
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #32 - 01. Июня 2012 :: 14:00
Печать  
Eprst писал(а) 01. Июня 2012 :: 13:56:
Улыбка

Если че, всё что перечислил - будет заблокировано, все таблички целиком.


О чем идет речь? О том, что будут заблокированы все перечисленные тобой таблички?
Нет не будут.
  
Наверх
 
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #33 - 01. Июня 2012 :: 14:04
Печать  
1с при проведении обычного документа, без периодики и записи в справочники
лочит только _1SJOURN и _1SSYSTEM.
И все.
Все остальные таблицы абсолютно свободны и лочатся только измененные или новые записи - эту блокировку делает скуль самостоятельно.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #34 - 01. Июня 2012 :: 14:06
Печать  
an2 писал(а) 01. Июня 2012 :: 13:58:
Z1 писал(а) 01. Июня 2012 :: 13:48:
(an2) даже если ты снимешь все блокировки какие 1с выставляет
есть еще блокировки которые sql сервер выставляет сам на
тех же самых таблицах.

Озвучь что ты хочешь получить - конечная цель какая ?
снять просто блокировки  как бы плохая цель(скорее грабли).


sql блокирует только измененные записи.

Хочу получить параллельную перезпись (update) и проведение документов.

Прекрасно понимаю, получить параллельный ВВОД НОВЫХ документов невозможно.

как раз все наоборот
паралельный ввод новых документов получить гораздо проще
поставь три последние байта в iddoc своим префиксом которого больше нет - и легко сможешь создавать свои документы со своей непересекающийся нумерацией.
ну только нужно учесть графы отбора.
А вот паралельное проведение документов ну это как бы надо вместо той СИСТЕМЫ блокировок что есть
сейчас надо придумать и написать свою СИСТЕМУ блокировок
- в рамках конкретной конфигурации это вполне возможно
да и то не тривиально.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #35 - 01. Июня 2012 :: 14:08
Печать  
an2 писал(а) 01. Июня 2012 :: 14:04:
1с при проведении обычного документа, без периодики и записи в справочники
лочит только _1SJOURN и _1SSYSTEM.
И все.
Все остальные таблицы абсолютно свободны и лочатся только измененные или новые записи - эту блокировку делает скуль самостоятельно.

а как же rg...
  
Наверх
 
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #36 - 01. Июня 2012 :: 14:09
Печать  
Под тем, что написал Z1 могу подписаться.
  
Наверх
 
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #37 - 01. Июня 2012 :: 14:14
Печать  
Z1 писал(а) 01. Июня 2012 :: 14:08:
an2 писал(а) 01. Июня 2012 :: 14:04:
1с при проведении обычного документа, без периодики и записи в справочники
лочит только _1SJOURN и _1SSYSTEM.
И все.
Все остальные таблицы абсолютно свободны и лочатся только измененные или новые записи - эту блокировку делает скуль самостоятельно.

а как же rg...


Открой профайлер и посмотри сам, если мне не вериш.

Управляемая Блокировка - это:
Select ... from ... with (updock) Where ...
В стиле 1с это выглядит так:
Select ... from ... with (TABLOCKX HOLDLOCK) Where 1=0

блокировки которые накладывает SQL несущественны. Сам SQL лочит до окончания транзакции только записи, которые менялись, добавлялись или удалялись.
  
Наверх
 
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #38 - 01. Июня 2012 :: 14:17
Печать  
Цитата:
поставь три последние байта в iddoc своим префиксом которого больше нет - и легко сможешь создавать свои документы со своей непересекающийся нумерацией.


По-моему это не хорошо. Мне не нравится.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #39 - 01. Июня 2012 :: 14:21
Печать  
an2 писал(а) 01. Июня 2012 :: 14:14:
Сам SQL лочит до окончания транзакции только записи, которые менялись, добавлялись или удалялись.

Ога. А эскалацию блокировок придумал Билл Гейтс, чтобы не работать. Инфа 100%.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #40 - 01. Июня 2012 :: 14:23
Печать  
Z1 писал(а) 01. Июня 2012 :: 14:06:
an2 писал(а) 01. Июня 2012 :: 13:58:
Z1 писал(а) 01. Июня 2012 :: 13:48:
(an2) даже если ты снимешь все блокировки какие 1с выставляет
есть еще блокировки которые sql сервер выставляет сам на
тех же самых таблицах.

Озвучь что ты хочешь получить - конечная цель какая ?
снять просто блокировки  как бы плохая цель(скорее грабли).


sql блокирует только измененные записи.

Хочу получить параллельную перезпись (update) и проведение документов.

Прекрасно понимаю, получить параллельный ВВОД НОВЫХ документов невозможно.

как раз все наоборот
паралельный ввод новых документов получить гораздо проще
поставь три последние байта в iddoc своим префиксом которого больше нет - и легко сможешь создавать свои документы со своей непересекающийся нумерацией.
ну только нужно учесть графы отбора.
А вот паралельное проведение документов ну это как бы надо вместо той СИСТЕМЫ блокировок что есть
сейчас надо придумать и написать свою СИСТЕМУ блокировок
- в рамках конкретной конфигурации это вполне возможно
да и то не тривиально.


Основное время уходит на проведение, а не на запись. По крайней мере мне будет достаточно убрать блокировку жкрнала при проведении. Поэтому мне не нужны ID с постфиском.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #41 - 01. Июня 2012 :: 14:25
Печать  
an2 писал(а) 01. Июня 2012 :: 14:17:
Цитата:
поставь три последние байта в iddoc своим префиксом которого больше нет - и легко сможешь создавать свои документы со своей непересекающийся нумерацией.


По-моему это не хорошо. Мне не нравится.

так это самое простое из всего что написано в этой ветке.
твои идеи на порядок грандиознее.
  
Наверх
 
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #42 - 01. Июня 2012 :: 14:26
Печать  
berezdetsky писал(а) 01. Июня 2012 :: 14:21:
an2 писал(а) 01. Июня 2012 :: 14:14:
Сам SQL лочит до окончания транзакции только записи, которые менялись, добавлялись или удалялись.

Ога. А эскалацию блокировок придумал Билл Гейтс, чтобы не работать. Инфа 100%.

Согласен, но на это замечание намного приятней отвечать "да я не прав" чем на то, что вы тут писали поначалу.
  
Наверх
 
IP записан
 
an2
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 43
Зарегистрирован: 23. Марта 2012
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #43 - 01. Июня 2012 :: 14:29
Печать  
Z1 писал(а) 01. Июня 2012 :: 14:25:
an2 писал(а) 01. Июня 2012 :: 14:17:
Цитата:
поставь три последние байта в iddoc своим префиксом которого больше нет - и легко сможешь создавать свои документы со своей непересекающийся нумерацией.


По-моему это не хорошо. Мне не нравится.

так это самое простое из всего что написано в этой ветке.
твои идеи на порядок грандиознее.


Не уверен, что это САМОЕ ПРОСТОЕ.
Чтоб сделать то что ты говоришь, каждому сеансу нужно выдать свой уникальный постфикс.
Но вот вопрос: чем это поможет?
Ведь не даш же каждому свою уникальную нумерацию документов.
В итоге на что мы выходим? - бесполезная идея.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Справочник плюс. Прямая запись и чтение в справочники 1С 7.7
Ответ #44 - 01. Июня 2012 :: 14:30
Печать  
an2 писал(а) 01. Июня 2012 :: 14:23:
Z1 писал(а) 01. Июня 2012 :: 14:06:
an2 писал(а) 01. Июня 2012 :: 13:58:
Z1 писал(а) 01. Июня 2012 :: 13:48:
(an2) даже если ты снимешь все блокировки какие 1с выставляет
есть еще блокировки которые sql сервер выставляет сам на
тех же самых таблицах.

Озвучь что ты хочешь получить - конечная цель какая ?
снять просто блокировки  как бы плохая цель(скорее грабли).


sql блокирует только измененные записи.

Хочу получить параллельную перезпись (update) и проведение документов.

Прекрасно понимаю, получить параллельный ВВОД НОВЫХ документов невозможно.

как раз все наоборот
паралельный ввод новых документов получить гораздо проще
поставь три последние байта в iddoc своим префиксом которого больше нет - и легко сможешь создавать свои документы со своей непересекающийся нумерацией.
ну только нужно учесть графы отбора.
А вот паралельное проведение документов ну это как бы надо вместо той СИСТЕМЫ блокировок что есть
сейчас надо придумать и написать свою СИСТЕМУ блокировок
- в рамках конкретной конфигурации это вполне возможно
да и то не тривиально.


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

сам же почти ответил на свой вопрос.
основное время может уходить в модуле проведения на проверку отрицательных остатков
и улучшив это время уже и не надо придумывать что-то еще.
( ну это так в качестве примера и я тебя ни от чего не отговариваю).

Еще улучшение по тем же справочникам найди в интернете статью
Муму где он показывает неправильное построение индексов на справочниках самой 1с.
Только он не говорит как этого избежать. Вот тебе тоже суперулучшение работы справочников если разберешься как этого избежать и заметь улучшение это будет при любой системе блокировок.

  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 2 [3] 4 
ОтправитьПечать