Почему при установке нового номера не учитывается переодичность установленная в настройках?
Проблема в следующем. Необходимо реализовать без снятия с поддержки конфы БП 3.0 средствами расширения нумерацию документа СчетНаОплатуПокупателю
По умолчанию в конфигурации следующие настройки у объекта СчетНаОплатуПокупателю:
В свойствах установлено:
1. автонумерация ИСТИНА
2. контроль уникальности ИСТИНА
3. переодичность в пределах года.
В функции ПриУстановкеНовогоНомера () переопределяю номер документа, но при попытке установить новый номер срабатывает контроль уникальности
Такой номер уже существует. Да такой номер действительно есть но данный номер был в прошлом году.
Поэтому вопрос как быть?
Почему при переопределении функции ПриУстановкеНовогоНомера переодичность документа как бы становится непереодичной
Можно ли вообще программно как то влиять на контроль уникальности и переодичность , можно ли их изменить программно?
В расширении нет возможности переопределить эти настройки.
Номер переопределяю так
По умолчанию в конфигурации следующие настройки у объекта СчетНаОплатуПокупателю:
В свойствах установлено:
1. автонумерация ИСТИНА
2. контроль уникальности ИСТИНА
3. переодичность в пределах года.
В функции ПриУстановкеНовогоНомера () переопределяю номер документа, но при попытке установить новый номер срабатывает контроль уникальности
Такой номер уже существует. Да такой номер действительно есть но данный номер был в прошлом году.
Поэтому вопрос как быть?
Почему при переопределении функции ПриУстановкеНовогоНомера переодичность документа как бы становится непереодичной
Можно ли вообще программно как то влиять на контроль уникальности и переодичность , можно ли их изменить программно?
В расширении нет возможности переопределить эти настройки.
Номер переопределяю так
&Вместо("ПриУстановкеНовогоНомера")
Процедура прл_ПриУстановкеНовогоНомера(СтандартнаяОбработка, Префикс)
СтандартнаяОбработка = ЛОЖЬ;
Если не Организация.Пустая() Тогда
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| СчетНаОплатуПокупателю.Номер КАК Номер
|ИЗ
| Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю
|ГДЕ
| СчетНаОплатуПокупателю.Организация = &Организация
| И СчетНаОплатуПокупателю.Проведен = ИСТИНА
| И СчетНаОплатуПокупателю.ПометкаУдаления = ЛОЖЬ
|
|УПОРЯДОЧИТЬ ПО
| СчетНаОплатуПокупателю.Дата УБЫВ";
Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("Дата", НачалоГода(Дата));
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
ВыборкаДетальныеЗаписи.Следующий();
ПрефиксНомера = Организация.Префикс+"БП-";
НомерНовый = Число(ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(ВыборкаДетальныеЗаписи.Номер, Истина, Ложь));
НомерНовый = НомерНовый+1;
НомерНовый = Формат(НомерНовый, "ЧЦ=6; ЧВН=; ЧГ=0");
Номер = ПрефиксНомера+Строка(НомерНовый);
КонецЕсли;
ПродолжитьВызов(СтандартнаяОбработка, Префикс);
КонецПроцедуры
ПоказатьОтветы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
иногда сбивается нумерация, необходимо восстанавливать
Прикрепленные файлы:
ИсправлениеНумерации.epf
(4)Нумерацию не могу оставить платформе так как решили в этом году продолжить нумерацию от последнего номера в этом году
С задним число вы правы.
Наверное самым простым это будет сменить префиксы и начать с нуля и создавать номер не по дате последней как сейчас у меня а по номеру
С задним число вы правы.
Наверное самым простым это будет сменить префиксы и начать с нуля и создавать номер не по дате последней как сейчас у меня а по номеру
Проблема стара, как мир. Хочется бухгалтеру свою нумерацию, а вы там пляшите как хотите... Всегда надо настаивать на том, чтобы нумерацией управляла сама программа. Не мешайте ей. В конце концов начните с нового префикса, тогда и отсчёт начнётся с первого номера правильно.
(6)
и зачем огород городить?
Это же элементарно Ватсон!
просто создайте в новом году ПЕРВЫЙ документ и присвойте ему максимальный номер
все остальные документы в следующем году автоматом пойдут от номера первого!!!
ни чего программировать не надо, платформа рулит!!!
так как решили в этом году продолжить нумерацию от последнего номера
и зачем огород городить?
Это же элементарно Ватсон!
просто создайте в новом году ПЕРВЫЙ документ и присвойте ему максимальный номер
все остальные документы в следующем году автоматом пойдут от номера первого!!!
ни чего программировать не надо, платформа рулит!!!
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот