Форум программистов, компьютерный форум, киберфорум
1С: Типовые и стандартные решения
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/33: Рейтинг темы: голосов - 33, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 11.11.2013
Сообщений: 8
1

Нумерация документов

09.02.2014, 23:41. Показов 5940. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер, уважаемые форумчане!
Мучаюсь битый час, не могу сделать свою ежедневную нумерацию вида Префикс_ГГГГММДД_Номер для конкретного документа (например счет-фактура)
Должно получиться что-то типа в пределах дня БП2014020901, следующий номер БП2014020902
следующий день: БП2014021001, БП2014021002, БП2014021003 и т.д.
Подскажите пожалуйста кто знает в какую сторону копать? В какой процедуре искать и какого модуля?

 Комментарий модератора 
Создавайте тему в соответствующем разделе.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.02.2014, 23:41
Ответы с готовыми решениями:

Нумерация документов
Добрый день всем:) Возникла проблема с нумерацией документов. В 1с 8.2 УПП несколько...

Нумерация реализации
Добрый день! После того как бухгалтера вручную сбили автонумерацию документа реализации услуг, у...

ЗУП 3.1 нумерация 2 ндфл
Звонит мне такой бухгалтер, грит заполняю 2 ндфл для передачи в ифнс, у меня по каждому следующему...

Нумерация счет-фактур
Всем привет! В начале года 1с предложила начать нумерацию сначала, все приняли, все...

5
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
10.02.2014, 21:28 2
где мы?
0
Заблокирован
10.02.2014, 21:30 3
копай наверное при создании нового номера или кода, как-то так называется.
в модуле документа выбери список всех возможных процедур.
там вот точно есть префикс и пр.
0
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
10.02.2014, 21:51 4
Подписка на событие.
Но если УстановитьНовыйНомер(префикс) в форме, то останется именно этот.
0
0 / 0 / 0
Регистрация: 25.04.2013
Сообщений: 27
10.02.2014, 21:58 5
Что за конфигурация, какая редакция? Если это БП то нужно смотреть в общем модуле, я такое уже делал, это не сложно...
0
Модератор
Эксперт 1С
3786 / 2965 / 590
Регистрация: 10.03.2011
Сообщений: 11,670
Записей в блоге: 1
11.02.2014, 01:19 6
Код для ОМ (Подписка на событие) можно использовать для любого документа (добавляешь в источник)

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
Процедура УстановимСвойНомерПриУстановкеНовогоНомера(Источник, СтандартнаяОбработка, Префикс="БП") Экспорт
    
    //По умолчанию установим префикс "БП"
    НовыйПрефикс = Префикс;
    Если ПустаяСтрока(НовыйПрефикс) Тогда
        НовыйПрефикс = "БП";
    КонецЕсли; 
    
    //Подготовливаем переменные
    Таблица = Источник.Метаданные().Имя;
    Шаблон = НовыйПрефикс+Формат(Источник.Дата,"ДФ=yyyyMMdd");
    
    ДлиннаНомера = Источник.Метаданные().СтандартныеРеквизиты.Номер.Тип.КвалификаторыСтроки.Длина;
    ДлиннаНомера = ДлиннаНомера - СтрДлина(Шаблон);
    
    //Косяк - длина номера не может быть короче шаблона
    //останавливаемся
    Если ДлиннаНомера < 1 Тогда //Пусть отрабатывает типовой механизм...
        Возврат;
    КонецЕсли;
    
    //отменяем стандартную обработку
    СтандартнаяОбработка = Ложь;
    
    //Ищем последний номер
    
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1
                   |    Номер КАК Номер
                   |ИЗ
                   |    Документ."+Таблица+"
                   |ГДЕ
                   |    Номер ПОДОБНО &Шаблон
                   |
                   |УПОРЯДОЧИТЬ ПО
                   |    Номер УБЫВ";
                   
    Запрос.УстановитьПараметр("Шаблон", Шаблон+"%");
    Выборка = Запрос.Выполнить().Выбрать();
    
    //Нашли номер берем его числовую часть и добавляем еденицу
    Если Выборка.Следующий() Тогда
        
        Номер = СтрЗаменить(Выборка.номер, Шаблон,"");
        //обезопасимся что тут точно число
        Номер = ПолучитьЧислоИзНомера(Номер);
        
        //Тут 100% число можно увеличивать
        Если Не ПустаяСтрока(Номер) Тогда
            НомерЧислом = Число(Номер)+1;
        КонецЕсли;
 
        //Если числовую часть убили полностью, то отработай это исключение самостоятельно... Домашнее задание
        //Т.е. Если ПустаяСтрока(Номер) Тогда - возможно номер 1 уже занят и получить последнее число ты не моженшь...
        
        //И снова в строку
        НомерСтрока = Формат(НомерЧислом,"ЧЦ="+ДлиннаНомера+"; ЧВН=; ЧГ=");       
        
    Иначе
        //Такого шаблона не нашли, значит нумерация только началась...
        НомерСтрока = Формат(1,"ЧЦ="+ДлиннаНомера+"; ЧВН=; ЧГ=");
        
    КонецЕсли; 
    
    Источник.Номер = Шаблон+НомерСтрока;
    
КонецПроцедуры
 
Функция ПолучитьЧислоИзНомера(Знач Номер)
    
    НовыйНомер = "";
    числа = "0123456789";
    ДлиннаЧисла = СтрДлина(Номер);
    
    Для сч=0 По ДлиннаЧисла-1 Цикл
        
        Символ = Сред(Номер,ДлиннаЧисла-сч,1);
        
        Если Найти(числа, Символ) > 0 Тогда
            
            НовыйНомер = Символ+НовыйНомер;
            
        КонецЕсли; 
        
    КонецЦикла;
    
    Возврат НовыйНомер;
    
КонецФункции
0
11.02.2014, 01:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.02.2014, 01:19
Помогаю со студенческими работами здесь

Нумерация документов
В журнале операций создаются операции с префиксами П, С и К. Т.е. существует разделенная база где П...

нумерация документов и справочников
очень бы хотелось услышать ответ на мой вопрос. работаю с 1С всего месяц, и столкнулась со след...

Собственная нумерация документов
Кто может мне подсказать, мне необходимо в документе о приёме на работу сделать дополнительную...

Нумерация документов (Торговля и склад 8 ред.)
у меня Торговля и Склад 8 редакции. стоит в документах автоматическая нумерация а мне сейчас...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru