|
v7: Бухгалтерша залезла в нумерацию, что теперь делать? | ☑ | ||
---|---|---|---|---|
0
Double_Medved
17.03.15
✎
14:36
|
Добрый день! Бухгалтерия проф 7.7, последняя, чистая. Бухгалтерша в начале года сделала номера счет фактур с 00000001-00000009 , потом сделала 00000001А, 00000003А... 00000009А. Сегодня делает новую - у нее номер 00000009А, не уникальный, видимо кончилось количество знаков, а ей надо 000000010, не изменяя уже созданные и не правя номера руками. Как теперь все исправить, подскажите пожалуйста?
|
|||
1
Скользящий
17.03.15
✎
14:37
|
>>не изменяя уже созданные и не правя номера руками.
Никак |
|||
2
Fedor-1971
17.03.15
✎
14:39
|
00000001Б - ещё 9 номеров
|
|||
3
Double_Medved
17.03.15
✎
14:40
|
(1) А как? Я говорю измени номера, а она значил - все белое, трогать нельзя. Более того, уже есть конкретно 18 счет фактур, 9 с А и 9 без А. Нужна следующая десятая, а их как бы не 9 а 18. Как переименовать 18 штук так чтобы следующая была 10, а не 19? Математическая загадка
|
|||
4
Масянька
17.03.15
✎
14:42
|
(3) "А" - это случайно не аванс?
|
|||
5
palpetrovich
17.03.15
✎
14:45
|
(3) эт не "Математическая загадка", это "Горе от ума" ...нельзя менять номера - сделай уникальность номера - ВПределахДня
|
|||
6
aka AMIGO
17.03.15
✎
14:47
|
кто-то тут советовал ввести префикс..
Либо назначать номер в модуле, при открытии |
|||
7
Dmitrith
17.03.15
✎
14:47
|
Сделать нумерацию с префиксом.
А-0000001 для ашных и например Б-000001 для нормальных |
|||
8
Fedor-1971
17.03.15
✎
14:47
|
(3) так поставь 100000010, правда, до следующей буквы в конце номера
|
|||
9
Double_Medved
17.03.15
✎
14:48
|
(4)Аванс, да
|
|||
10
Fedor-1971
17.03.15
✎
14:50
|
(9) Сделай на документе галку "Аванс", которая будет лепить букву А к номеру при печати и запрети изменять номер намертво.
|
|||
11
vde69
17.03.15
✎
14:52
|
Функция ПолучитьНовыйНомерДокумента (ИмяТаблицы, Ответственный, ИнкрементНовогоДня = 1) Экспорт
Запрос = Новый Запрос ( "ВЫБРАТЬ ПЕРВЫЕ 1 | СчетНаОплату.Номер |ПОМЕСТИТЬ ПоследнийНомер |ИЗ | Документ."+ИмяТаблицы+" КАК СчетНаОплату |ГДЕ | ГОД(СчетНаОплату.Дата) = &Год | |УПОРЯДОЧИТЬ ПО | СчетНаОплату.Номер УБЫВ |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ ПЕРВЫЕ 1 | СчетНаОплату.Ссылка |ПОМЕСТИТЬ ТекущиеСчета |ИЗ | Документ."+ИмяТаблицы+" КАК СчетНаОплату |ГДЕ | СчетНаОплату.Дата >= &Дата |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ПоследнийНомер.Номер, | ВЫБОР | КОГДА ТекущиеСчета.Ссылка ЕСТЬ NULL | ТОГДА "+ИнкрементНовогоДня+" | ИНАЧЕ 1 | КОНЕЦ КАК Инкремент, | ТекущиеСчета.Ссылка |ИЗ | ПоследнийНомер КАК ПоследнийНомер | ПОЛНОЕ СОЕДИНЕНИЕ ТекущиеСчета КАК ТекущиеСчета | ПО (ИСТИНА)"); Запрос.УстановитьПараметр("Дата", НачалоДня(ТекущаяДата())); Запрос.УстановитьПараметр("Год", Год(ТекущаяДата())); мНомер = "00000000000"; мИнкр = 1; Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл мНомер = Выборка.Номер; мИнкр = Выборка.Инкремент; КонецЦикла; НовыйНомер = ""; д = СтрДлина(мНомер); Для е = 1 по д Цикл мКод = КодСимвола(мНомер, е); Если (мКод >= 48) и (мКод <= 57) Тогда НовыйНомер = НовыйНомер + Символ(мКод); Иначе Прервать; КонецЕсли; КонецЦикла; НовыйНомер = Число(НовыйНомер) + мИнкр; НовыйНомер = Формат(НовыйНомер, "ЧГ=0"); НовыйНомер = Прав("00000000000000" + НовыйНомер + СокрЛП(УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(Ответственный, "Нумератор")), 12); Возврат НовыйНомер; КонецФункции |
|||
12
Double_Medved
17.03.15
✎
14:52
|
Она еще обещала так больше не делать, то есть далее обещает 000000010, 000000011, 000000012 и т.д., то есть с А уже не надо, надо только как-то это исправить. Но уникальность номера в течении дня только - начнется такое небось, что риск не стоит свеч
|
|||
13
Масянька
17.03.15
✎
14:53
|
(9) Понятно... Передай главбухше - сначала нужно было спросить у специалиста.
|
|||
14
aka AMIGO
17.03.15
✎
14:54
|
(11) у автора 7.7
|
|||
15
aka AMIGO
17.03.15
✎
14:56
|
(12) да, и скажи, что мы ей всем форумом верим :)
|
|||
16
Double_Medved
17.03.15
✎
14:56
|
(13)причем за ней в прошлом году уже водились изменения номеров, например перебивания номера из чека какого-нибудь на бензин и т.д., я ее уже просил туда больше не лезть, но сказала что надо было поставить А, они же на аванс
|
|||
17
vde69
17.03.15
✎
14:56
|
(14) тогла классика жанра
во всех счетах с буквой добавить тильду первым знаком вместо 00000001А будет ~0000001А |
|||
18
Double_Medved
17.03.15
✎
14:56
|
Теперь ей приходится бить номер вручную, в общем, хочет чтобы снова все стало автоматически
|
|||
19
Масянька
17.03.15
✎
14:57
|
(16) Я для авансовых делала префикс. По желанию буха.
(18) Вот теперь пусть до следующего года сидит и ручками вбивает номера. Научится. |
|||
20
vde69
17.03.15
✎
14:58
|
(17) после этого будет все работать нормально, только один документ надо будет правильно пронумеровать
|
|||
21
aka AMIGO
17.03.15
✎
14:58
|
(18) В БД пример с префиксом есть? поищи.. если нет - выложу какой-нть..
|
|||
22
varelchik
17.03.15
✎
15:00
|
(0)Сделать номер вообще недоступным.
|
|||
23
floody
17.03.15
✎
15:02
|
Коленку прострелить.
|
|||
24
Double_Medved
17.03.15
✎
15:14
|
(21) а можно пример что за префикс?
|
|||
25
aka AMIGO
17.03.15
✎
15:27
|
(24) Ну, во-первых, в Глоб.модуле:
//----------------------------- //Создание префиксов автонумерации ПБ=Константа.ПрефиксБазы; ПрефиксАвтоНумерации("РасходнаяНал","Рн"+ПБ+"-"); ПрефиксАвтоНумерации("ПриходнаяНал","Пн"+ПБ+"-"); ПрефиксАвтоНумерации("РасходнаяКредит","Рк"+ПБ+"-"); ПрефиксАвтоНумерации("ПриходнаяКредит","Пк"+ПБ+"-"); ПрефиксАвтоНумерации("Заказ","Зк"+ПБ+"-"); ПрефиксАвтоНумерации("Счет","Сч"+ПБ+"-"); ПрефиксАвтоНумерации("КоммерческоеПредложение","Кп"+ПБ+"-"); ПрефиксАвтоНумерации("Счет_фактура","Сф-"); ПрефиксАвтоНумерации("ЗаписьКнигиПродаж","Зкпр-"); ПрефиксАвтоНумерации("РегистрацияСчета_фактуры","Рсф-"); где ПБ - константа - префикс базы, у нас 5 филиалов, каждый имеет свой префикс, в частности - чтобы можно было распознать место образования документа. во-вторых, в одном из документов: //** Процедура УстНомера() Если СокрЛП(Константа.ПрефиксБазы)="" Тогда Если Фирма.Выбран() = 1 Тогда Преф="Рк" + ?(ПустаяСтрока(Фирма.Префикс) = 1, "-0", СокрЛП(Фирма.Префикс) + "-"); Иначе Преф="Рк-"; КонецЕсли; Иначе Преф="Рк"+Константа.ПрефиксБазы+"-"; КонецЕсли; УстановитьНовыйНомер(Преф); КонецПроцедуры |
|||
26
Double_Medved
17.03.15
✎
15:28
|
(25) Спасибо
|
|||
27
Сияющий Асинхраль
17.03.15
✎
15:28
|
Если конфа типовая в бухе 7.7 лучше вообще номера не менять, раньше можно было в типовой без проблем назначать свой префикс не меняя кода и вводить руками другие префиксы, а теперь только конфу менять...
|
|||
28
fishb1
17.03.15
✎
15:32
|
(18) Попробуй тупо сделать:
ВЫБРАТЬ МАКСИМУМ(Документ.Номер) КАК Номер ИЗ Документ.Документ КАК Документ Мне однажды помогло восстановить нумерацию в справочнике, чем черт не шутит. :) |
|||
29
aka AMIGO
17.03.15
✎
15:35
|
+25 забыл сказать, УстНомера() выполняется из формы, при нажатии кнопки "Выбор фирмы", а у нас их 5 штук.
Вот так примерно: |
|||
30
aka AMIGO
17.03.15
✎
15:36
|
(28) у него 7-ка :)
|
|||
31
fishb1
17.03.15
✎
15:58
|
(30) Точно, извиняюсь. :(
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |