Имя: Пароль:
1C
1С v8
установка номера документа в зависимости от префикса
,
0 Валидатор
 
10.02.14
18:29
конфа КА 8.2. Такой вопрос. Есть документ ПКО, у него есть реквизит касса, кассе я добавил реквизит подразделение, у которого есть свой префикс кассовых документов, то есть
Основная касса - имеет подразделение1 с реквизитом Префикс, значение в котором А, то есть Основная касса - подразделение1-префикс А
При проведении документа, номер документа будет таким: А00000001
Есть Касса номер 2, у которой подразделение2 у которого префикс Б, и не трудно понять, что при проведении документа с такой кассой и таким подразделением номер документа будет : Б00000001
Теперь сам вопрос: Если я создал документ с 1 кассой, номер документа стал А0000001, а потом я поменял кассу, на номер 2, соответственно у которой подразделение тоже другое, и префикс у нее Б, то при перепроведении документа номер должен очищаться, и потом вписываться новый Б000001, вот как так сделать проверку? не могу условие понять какое нужно
1 Валидатор
 
10.02.14
18:30
то есть до изменения как то засовывать в переменную данные подразделения до изменения, а потом их сравнивать с тем, что стало после выбора кассы?
2 Валидатор
 
10.02.14
18:30
как вот программно это сообразить?)
3 Валидатор
 
10.02.14
18:31
И еще, если у нововыбранной кассы такое же подразделение, как было у той, что до нее, то номер не нужно изменять, потому что префикс такой же будет
4 kosts
 
10.02.14
18:35
Есть событие что то типа "установка нового номера", там можно задать префикс. Поможет при новом документе. При изменении подразделения, наверное придется что-то самому ваять...
5 Валидатор
 
10.02.14
18:36
(4) при изменении кассы, подразделение у кассы тоже собственно изменится, но вот как прошлое значение кассы сохранить и сравнить с новым при первыборе?
6 МихаилМ
 
10.02.14
18:37
проверка соответствия префикса должна быть перед записью ,до проведения , тогда доступно сравнение с оригиналом.
7 ale-sarin
 
10.02.14
18:38
(0) Че тут думать.
Смотри как очищается номер при изменении организации, а потом при записи присваивается.
8 kosts
 
10.02.14
18:38
(5) Прошлое значение всегда можно сравнить у ссылки.
Если номер <> ссылка.Номер ...
9 Валидатор
 
11.02.14
10:51
(6) то что в процедуре перед проведением это понятно, ме не ясно как сравнить старое значение с новым?
10 Валидатор
 
11.02.14
10:59
Если Не ПустаяСтрока(Номер) Тогда
        Если  НЕ Касса.Ссылка.ттПодразделение.ттПрефиксКассовыхДокументов = Касса.ттПодразделение.ттПрефиксКассовыхДокументов  Тогда
        МеханизмНумерацииОбъектов.СброситьУстановленныйКодНомерОбъекта(ЭтотОбъект, "Номер", ЭлементыФормы.ДействияФормы.Кнопки.Подменю1, ЭлементыФормы.Номер);    
        КонецЕсли;    
    КонецЕсли;
так не получается
11 Валидатор
 
11.02.14
11:13
ап
12 Валидатор
 
11.02.14
11:21
номер просто не очищается даже вот этой функцией механизм нумерации объектов
13 Валидатор
 
11.02.14
11:23
добавил функцию: ЭтотОбъект.УстановитьНовыйНомер();
теперь при перевыборы кассы формируется новый номер, но при каждой записи у номера идет +1, а он должен оставаться таким же