|
v7: Автонумератор не начинает новый счет при смене периода! | ☑ | ||
---|---|---|---|---|
0
Yakov21
16.08.11
✎
21:50
|
Добрый день!
Возникла такая проблема. У документа Периодичность выставлена в пределах месяца, но при вводе документа следующего месяца нумерация продолжается! Тип - текстовый. Автоматическая нумирация включена. |
|||
1
Темный Эльф
16.08.11
✎
21:59
|
Значит в прошлом месяце набивают документы и ставят дату этого месяца. А процедурка по переприсваиванию номера при смене месяца даты не сделана.
|
|||
2
Mashinist
16.08.11
✎
22:04
|
(1) прав
Создали документ прошлым месяцем и поменяли дату на это А при смене даты код для изменения номера не стоит Нужно в код смотреть |
|||
3
Yakov21
17.08.11
✎
17:04
|
При Вводе нового документа!
ГенНомДок(Контекст,0); КодДок = Число(Прав(СокрЛП(НомерДок),6)); В глобальнике: Процедура ГенНомДок(Конт,мсг=1,пДлина=6) Экспорт Перем НомерДоИзменения,ДатаЗаписанного,НомерЗаписанного; Если (Конт.ТекущийДокумент().Вид() = "зпБольничныйЛист") ИЛИ (Конт.ТекущийДокумент().Вид() = "зпРасчетСредней") Тогда дд=СоздатьОбъект("Документ."+Конт.ТекущийДокумент().Вид()); Если (дд.НайтиПоНомеру(Конт.НомерДок,Конт.ДатаДок)=1) И(дд.ТекущийДокумент()<>Конт.ТекущийДокумент()) Тогда Если мсг=1 Тогда Предупреждение("ВНИМАНИЕ! Изменен номер документа!"); КонецЕсли; Конт.УстановитьНовыйНомер(); Попытка Конт.КодДок = Число(Прав(СокрЛП(Конт.НомерДок),пДлина)); Исключение КонецПопытки; КонецЕсли; Иначе НомерДоИзменения = Конт.НомерДок; НомерЗаписанного = ПолучитьПустоеЗначение(); ДатаЗаписанного = ПолучитьПустоеЗначение(); Док=СоздатьОбъект("Документ."+Конт.ТекущийДокумент().Вид()); Попытка Если Док.НайтиДокумент(Конт.ТекущийДокумент()) = 1 Тогда НомерЗаписанного = Док.ТекущийДокумент().НомерДок; ДатаЗаписанного = Док.ТекущийДокумент().ДатаДок; КонецЕсли; Исключение КонецПопытки; Если ПустоеЗначение(НомерЗаписанного) = 0 Тогда Если ДатаГод(ДатаЗаписанного) = ДатаГод(Конт.ДатаДок) Тогда Конт.НомерДок = НомерЗаписанного; Иначе Конт.УстановитьНовыйНомер(); КонецЕсли; Иначе Конт.УстановитьНовыйНомер(); КонецЕсли; Если НомерДоИзменения <> Конт.НомерДок Тогда Предупреждение("ВНИМАНИЕ! Изменен номер документа."); КонецЕсли; Попытка Конт.КодДок = Число(Прав(СокрЛП(Конт.НомерДок),пДлина)); Исключение КонецПопытки; КонецЕсли; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |