Имя: Пароль:
1C
1С v8
УстановитьНомерДокумента через один
,
0 Velber
 
28.05.12
10:45
Бухгалтерия предприятия, редакция 2.0 (2.0.36.4)

В одной ИБ ведется несколько организаций и есть странная особенность.
Есть самописный документ "ЗаявкаНаСклад", так в одной организации присваивается номер нормально (по порядку), а в другой через один.

Присваивание номера происходит в МодулеОбъекта.

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
   
   Если ЭтоНовый() Тогда        
       ОбщегоНазначения.УстановитьНомерДокумента(ЭтотОбъект);
   КонецЕсли;    

КонецПроцедуры

Почему может быть так?
1 х86
 
28.05.12
10:56
смотри отладчиком, скорее всего два раза присваивается
+ освобождать номера
2 Shurjk
 
28.05.12
10:58
(0) Первый раз в вашей процедуре присваивается номер, а второй на уровне платформы.
3 Velber
 
28.05.12
11:36
Так почему для одной организации все нормально происходит, а для другой нет.
4 Velber
 
28.05.12
11:37
Попробовал использовать:

Процедура ПриУстановкеНовогоНомера(СтандартнаяОбработка, Префикс)
 
  СтандартнаяОбработка = Ложь;
  Префикс = Организация.Префикс;
     
КонецПроцедуры

Так вообще номер пустой получается.
5 Velber
 
28.05.12
11:37
Попробовал по-другому, добавил этот документ в подписку ПриУстановкеНовогоНомераДокумента и убрал все другие дописки, и все равно номер через один.
6 Vovan1975
 
28.05.12
12:01
возможно что одна из организаций использует какую-либо обработку для создания документов?
7 Velber
 
28.05.12
12:07
Посмотрел ближе код и увидел, что при копировании такая получается вещь. Посмотрел код и увидел, что в процедуре "ПриОткрытии" номеру присваивается значение пустой строки, но хотя на этом этапе уже присваивается новый номер, поэтому и увеличивается он на единицу.
8 Velber
 
28.05.12
12:07
Но как теперь побороть данную проблему?
9 Maxus43
 
28.05.12
12:08
(8) уброать присвоение кода ПриОткрытии, это ж бред)
10 DrShad
 
28.05.12
12:10
а при копировании не присваивать номер
11 Vovan1975
 
28.05.12
12:12
перед тем как устанавливать номер новому документу - проверять номер на заполненность
12 DrShad
 
28.05.12
12:13
(11) по-хорошему у нового не должно быть номера
13 Velber
 
28.05.12
12:17
Так там нету явного присвоения.
14 hhhh
 
28.05.12
12:18
(13) может в форме флажок, автозаполнение номера.
15 Velber
 
28.05.12
12:20
Сейчас гляну
16 Vovan1975
 
28.05.12
12:24
(12) эт да. Но тут перекрываются так же и ситуации когда пользователь новому доку номер ручками забъет и (14)
к томуж док то самописный - сюрпризы возможны разные...
17 Velber
 
28.05.12
12:25
Да самописный это я уже то понял, и разбираться в чужом коде хуже чем в своем)
18 DrShad
 
28.05.12
12:26
(16) закрой юзверям поле Номер на доступ
19 Velber
 
28.05.12
12:26
(14)Посмотрел, никакой флажок не стоит.
20 Velber
 
28.05.12
12:27
(18) А что толку то. У меня в процедуре приоткрытии уже номер откуда-то присваивается...
21 DrShad
 
28.05.12
12:31
(20) а при копировании? очищается?
22 Velber
 
28.05.12
12:31
(21) да
23 Velber
 
28.05.12
12:32
(22) точнее не при копировании а в процедуре ПриОткрытии с проверкой ЭтоНовый
24 hhhh
 
28.05.12
12:47
(19) там не флажок. Должно быть слово "не использовать".
25 Velber
 
28.05.12
13:12
(24) Уже понял. Убрал. Теперь ничего не присваивается.
26 Velber
 
28.05.12
13:22
Спасибо всем!
Программист всегда исправляет последнюю ошибку.