Переключение на Главную Страницу Страницы: 1 ... 4 5 [6]  ОтправитьПечать
Очень популярная тема (более 25 ответов) часть 7 отрицательные остатки в модуле проведения (число прочтений - 17819 )
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #75 - 11. Декабря 2008 :: 07:28
Печать  
spock писал(а) 11. Декабря 2008 :: 07:24:
Nick писал(а) 11. Декабря 2008 :: 07:00:
Так как раз фиксируется явная транзакция, а под неявными обычно подразумевают транзакции в которые оборачиваются любые операторы SQL типа insert, update

Так фиксируется любая транзакция.

1с открывает транзакции не явно/explicit (т.е. не BEGIN TRAN), а неявно/implicit (т.е. SET IMPLICIT_TRANSACTIONS).

понятно т.е. неявно открывается транзакция при первой записи
и явной фиксации транзакции.
тогда осталось посмотреть сколько commit один или два для случая
ПриЗаписиПерепроводить(1);
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #76 - 11. Декабря 2008 :: 07:29
Печать  
spock писал(а) 11. Декабря 2008 :: 07:24:
Так фиксируется любая транзакция.
1с открывает транзакции не явно/explicit (т.е. не BEGIN TRAN), а неявно/implicit (т.е. SET IMPLICIT_TRANSACTIONS).


Уболтал Улыбка.
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #77 - 11. Декабря 2008 :: 07:30
Печать  
Z1 писал(а) 11. Декабря 2008 :: 07:28:
spock писал(а) 11. Декабря 2008 :: 07:24:
Nick писал(а) 11. Декабря 2008 :: 07:00:
Так как раз фиксируется явная транзакция, а под неявными обычно подразумевают транзакции в которые оборачиваются любые операторы SQL типа insert, update

Так фиксируется любая транзакция.

1с открывает транзакции не явно/explicit (т.е. не BEGIN TRAN), а неявно/implicit (т.е. SET IMPLICIT_TRANSACTIONS).

понятно т.е. неявно открывается транзакция при первой записи
и явной фиксации транзакции.
тогда осталось посмотреть сколько commit один или два для случая
ПриЗаписиПерепроводить(1);


Не при первой записи, а даже при первом Select, собственно поэтому _1sjourn и блокируется.
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #78 - 11. Декабря 2008 :: 07:33
Печать  
Nick писал(а) 11. Декабря 2008 :: 07:30:
Z1 писал(а) 11. Декабря 2008 :: 07:28:
spock писал(а) 11. Декабря 2008 :: 07:24:
Nick писал(а) 11. Декабря 2008 :: 07:00:
Так как раз фиксируется явная транзакция, а под неявными обычно подразумевают транзакции в которые оборачиваются любые операторы SQL типа insert, update

Так фиксируется любая транзакция.

1с открывает транзакции не явно/explicit (т.е. не BEGIN TRAN), а неявно/implicit (т.е. SET IMPLICIT_TRANSACTIONS).

понятно т.е. неявно открывается транзакция при первой записи
и явной фиксации транзакции.
тогда осталось посмотреть сколько commit один или два для случая
ПриЗаписиПерепроводить(1);


Не при первой записи, а даже при первом Select, собственно поэтому _1sjourn и блокируется.

ну тогда я не понимаю зачем 1с сделала такую неявную транзакцию но это и не важно, потому что не можем на это повлиять.
  
Наверх
 
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #79 - 11. Декабря 2008 :: 07:38
Печать  
Z1 писал(а) 11. Декабря 2008 :: 07:08:
Как на эту ситуацию влияет оператор в форме документа
ПриЗаписиПерепроводить(1);
и на кнопке Ок стоит всегда
#Записать провести
тогда логично делать фиксацию транзакции только после проведения.

Если документ уже проведен и в модуле формы выставлен ПриЗаписиПерепроводить(1), то запись и проведение выполняются в одной транзакции.
« Последняя редакция: 11. Декабря 2008 :: 15:10 - spock »  
Наверх
ICQ  
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #80 - 11. Декабря 2008 :: 07:40
Печать  
эта, я за вами не успеваю Улыбка
  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #81 - 11. Декабря 2008 :: 07:42
Печать  
spock писал(а) 11. Декабря 2008 :: 07:38:
Z1 писал(а) 11. Декабря 2008 :: 07:08:
Как на эту ситуацию влияет оператор в форме документа
ПриЗаписиПерепроводить(1);
и на кнопке Ок стоит всегда
#Записать провести
тогда логично делать фиксацию транзакции только после проведения.

Если документ уже проведен и в модуле формы выставлен ПриЗаписиПерепроводить(1), то запись и проведение выполняется в одной транзакции.

YES. Это очень хорошо.
(теперь кстати понятно почему очень давно мы нарывались на ситуацию из поста #66.тогда был еще плохой сервер и сеть не очень и не было ПриЗаписиПерепроводить(1) имели таких несогласованностей много. Даже писал
специальный отчет чтобы находить логическое рассогласование регистров и документов).
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #82 - 11. Декабря 2008 :: 07:47
Печать  
Nick писал(а) 11. Декабря 2008 :: 07:01:
Z1 писал(а) 11. Декабря 2008 :: 06:59:
Цитата:
Для твоей концепции узким местом будет огромный промежуток времени между 1.6 и 2.1:

Да согласен промежуток огромный но чтобы в него попали две реальные отгрузки для проверки почти "фантастический шанс"
хотя согласен попасть может т.к. одна расх накладная висит на блокировке вот после освобождения мы и попали на эту ситуацию.
получается в этом случае что и теоретически можно и без своей блокировки проверять считая почти невозможными реальные одновременные отгрузки.


Нельзя так делать не в коем случае.

Nick может обоснуешь этот пост.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #83 - 11. Декабря 2008 :: 07:49
Печать  
Я кажеться понял еще прежде чем отвечать на  вопрос
где проверять отрицательные остатки
сначала надо ответить на вопрос

Зачем мы ( каждый в зависимости от учета ) проверяем отрицательные остатки ?
  
Наверх
 
IP записан
 
ev-kov
God Member
*****
Отсутствует



Сообщений: 694
Зарегистрирован: 27. Декабря 2006
Пол: Мужской
Re: часть 7 отрицательные остатки в модуле проведения
Ответ #84 - 11. Декабря 2008 :: 15:18
Печать  
Z1 писал(а) 11. Декабря 2008 :: 07:49:
Я кажеться понял еще прежде чем отвечать на  вопрос
где проверять отрицательные остатки
сначала надо ответить на вопрос

Зачем мы ( каждый в зависимости от учета ) проверяем отрицательные остатки ?

Имхо, это настолько важный вопрос, что он включен в учётную политику организации
  

Информация - то, что снижает неопределенность в какой-либо области и очень важно не ошибиться областью в наш информационный век!
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 4 5 [6] 
ОтправитьПечать