|
Добавление префикса документу | ☑ | ||
---|---|---|---|---|
0
almaz102
04.06.18
✎
15:12
|
Здравствуйте! Подскажите пож-та, в счет фактуре в нумерации мне нужно добавить префикс "/401" в конце номера. Например "00999/401", если я создам след документ у меня получается 0001000/4, а нужно чтобы было "01000/401", код ниже! Подскажите пож-та как это реализовать? Спасибо!
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | СчетФактураВыданный.Номер КАК Номер |ИЗ | Документ.СчетФактураВыданный КАК СчетФактураВыданный |ГДЕ | СчетФактураВыданный.Дата МЕЖДУ &ДатаНач И &ДатаКон | |УПОРЯДОЧИТЬ ПО | Номер УБЫВ |АВТОУПОРЯДОЧИВАНИЕ"; Запрос.УстановитьПараметр("ДатаНач", НачалоГода(Дата)); Запрос.УстановитьПараметр("ДатаКон", КонецГода(Дата)); Рез = Запрос.Выполнить(); Префикс = "/401"; Если Рез.Пустой() Тогда Номер = "00001" + Префикс; Иначе Выборка = Рез.Выбрать(); Выборка.Следующий(); ПоследнийНомер = Число(Лев(Выборка.Номер,5)); ТекНомер = Формат((ПоследнийНомер + 1),"ЧЦ=7; ЧВН=; ЧГ=0"); Номер = ТекНомер + Префикс; КонецЕсли; |
|||
1
spiller26
04.06.18
✎
15:13
|
(0) Свою нумерацию писать
|
|||
2
Митяйский
04.06.18
✎
15:35
|
(0) ТекНомер = Формат((ПоследнийНомер + 1),"ЧЦ=7; ЧВН=; ЧГ=0");
меня чц=7 смущает |
|||
3
spiller26
04.06.18
✎
15:45
|
(2) Да вообще не верно с самого начала всё.
Во первых Номер - строка, нужно преобразовывать так. Дан формат = "ххххххх/401" 1. Откидываем "/401", получаем некую строку "ххххххх" 2. эту строку "ххххххх" преобразуем в число 3. откидываем лидирующие нули и получаем числа 4. ищем последнее число и прибавляем к нему + 1, получаем нужноечисло 5. это нужное число в строку, прибавляем в конец "/401", и прибавляем лидирующие нули. Получаем итоговую строку номера |
|||
4
spiller26
04.06.18
✎
15:46
|
(4) Забыл!!! И желательно в запросе найти последнее число
|
|||
5
spiller26
04.06.18
✎
15:48
|
вот запрос
//Ищем #Region ЗапросМаксимальногоРегистрационногоНомера Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ДанныеИсходящихДокументов.РегистрационныйНомер КАК РегистрационныйНомер |ПОМЕСТИТЬ ВтНомера |ИЗ | РегистрСведений.ДанныеИсходящихДокументов КАК ДанныеИсходящихДокументов |ГДЕ | ДанныеИсходящихДокументов.ВидДокумента В (&ВидыДокументов) | //пПериодичность | //пОрганизация | //пПодразделение |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 1, 1) КАК Симв1, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 2, 1) КАК Симв2, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 3, 1) КАК Симв3, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 4, 1) КАК Симв4, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 5, 1) КАК Симв5, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 6, 1) КАК Симв6, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 7, 1) КАК Симв7, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 8, 1) КАК Симв8, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 9, 1) КАК Симв9, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 10, 1) КАК Симв10, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 11, 1) КАК Симв11, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 12, 1) КАК Симв12, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 13, 1) КАК Симв13, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 14, 1) КАК Симв14, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 15, 1) КАК Симв15, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 16, 1) КАК Симв16, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 17, 1) КАК Симв17, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 18, 1) КАК Симв18, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 19, 1) КАК Симв19, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 20, 1) КАК Симв20, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 21, 1) КАК Симв21, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 22, 1) КАК Симв22, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 23, 1) КАК Симв23, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 24, 1) КАК Симв24, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 25, 1) КАК Симв25, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 26, 1) КАК Симв26, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 27, 1) КАК Симв27, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 28, 1) КАК Симв28, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 29, 1) КАК Симв29, | ПОДСТРОКА(ВтНомера.РегистрационныйНомер, 30, 1) КАК Симв30 |ПОМЕСТИТЬ ВтСимволы |ИЗ | ВтНомера КАК ВтНомера |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВтСимволы.Симв1 КАК Симв1, | ВтСимволы.Симв2 КАК Симв2, | ВтСимволы.Симв3 КАК Симв3, | ВтСимволы.Симв4 КАК Симв4, | ВтСимволы.Симв5 КАК Симв5, | ВтСимволы.Симв6 КАК Симв6, | ВтСимволы.Симв7 КАК Симв7, | ВтСимволы.Симв8 КАК Симв8, | ВтСимволы.Симв9 КАК Симв9, | ВтСимволы.Симв10 КАК Симв10, | ВтСимволы.Симв11 КАК Симв11, | ВтСимволы.Симв12 КАК Симв12, | ВтСимволы.Симв13 КАК Симв13, | ВтСимволы.Симв14 КАК Симв14, | ВтСимволы.Симв15 КАК Симв15, | ВтСимволы.Симв16 КАК Симв16, | ВтСимволы.Симв17 КАК Симв17, | ВтСимволы.Симв18 КАК Симв18, | ВтСимволы.Симв19 КАК Симв19, | ВтСимволы.Симв20 КАК Симв20, | ВЫБОР | КОГДА ВтСимволы.Симв20 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв19 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв18 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв17 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв16 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв15 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв14 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв13 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв12 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв11 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв10 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв9 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв8 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв7 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв6 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв5 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв4 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв3 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв2 = """" | ТОГДА ВЫБОР | КОГДА ВтСимволы.Симв1 = """" | ТОГДА "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 + ВтСимволы.Симв13 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 + ВтСимволы.Симв13 + ВтСимволы.Симв14 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 + ВтСимволы.Симв13 + ВтСимволы.Симв14 + ВтСимволы.Симв15 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 + ВтСимволы.Симв13 + ВтСимволы.Симв14 + ВтСимволы.Симв15 + ВтСимволы.Симв16 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 + ВтСимволы.Симв13 + ВтСимволы.Симв14 + ВтСимволы.Симв15 + ВтСимволы.Симв16 + ВтСимволы.Симв17 | КОНЕЦ | ИНАЧЕ "" "" + "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 + ВтСимволы.Симв13 + ВтСимволы.Симв14 + ВтСимволы.Симв15 + ВтСимволы.Симв16 + ВтСимволы.Симв17 + ВтСимволы.Симв18 | КОНЕЦ | ИНАЧЕ "" "" + ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 + ВтСимволы.Симв13 + ВтСимволы.Симв14 + ВтСимволы.Симв15 + ВтСимволы.Симв16 + ВтСимволы.Симв17 + ВтСимволы.Симв18 + ВтСимволы.Симв19 | КОНЕЦ | ИНАЧЕ ВтСимволы.Симв1 + ВтСимволы.Симв2 + ВтСимволы.Симв3 + ВтСимволы.Симв4 + ВтСимволы.Симв5 + ВтСимволы.Симв6 + ВтСимволы.Симв7 + ВтСимволы.Симв8 + ВтСимволы.Симв9 + ВтСимволы.Симв10 + ВтСимволы.Симв11 + ВтСимволы.Симв12 + ВтСимволы.Симв13 + ВтСимволы.Симв14 + ВтСимволы.Симв15 + ВтСимволы.Симв16 + ВтСимволы.Симв17 + ВтСимволы.Симв18 + ВтСимволы.Симв19 + ВтСимволы.Симв20 | КОНЕЦ КАК Вых |ПОМЕСТИТЬ ВтВых |ИЗ | ВтСимволы КАК ВтСимволы |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | МАКСИМУМ(ВтВых.Вых) КАК МаксНомер |ИЗ | ВтВых КАК ВтВых | |УПОРЯДОЧИТЬ ПО | МаксНомер"; #EndRegion |
|||
6
Малыш Джон
04.06.18
✎
15:51
|
Ох, ё
|
|||
7
spiller26
04.06.18
✎
16:02
|
Всё зависит от длины номера.
|
|||
8
bolobol
04.06.18
✎
16:05
|
(7) Судя по (5) - длина номера очень длинна)
Не проще ли при известном окончании найти максимум? |
|||
9
spiller26
04.06.18
✎
16:05
|
Долго будет формировать, ну тут поделать ничего не могу, ограничить еще одним годом, в запросе + выборка номеров только Подобно = "%/401" + По Организациям (вдруг несколько)
|
|||
10
bolobol
04.06.18
✎
16:06
|
(5) Или у вас построчная оплата?
|
|||
11
spiller26
04.06.18
✎
16:08
|
(8) А если 109999, потом проще +1 и он тебе арифметически сложить
(10) напиши лучше |
|||
12
bolobol
04.06.18
✎
16:12
|
(11) см (8)
|
|||
13
bolobol
04.06.18
✎
16:12
|
Максимум - функция языка запросов.
|
|||
14
1Снеговик
гуру
04.06.18
✎
16:14
|
Поэтому в конце номера всегда должно быть порядковое число, а ве свои задачи решайте префиксами.
Вот кому-то захотелось необычную нумерацию, и давай программист нумерацию ломать. Допиши ты эти 409 в другой реквизит, а в форму списка выводи как хочешь эти номера. И цифры будут по порядку, и вид как надо. |
|||
15
almaz102
04.06.18
✎
16:15
|
ТекНомер = Формат((ПоследнийНомер + 1),"ЧЦ=7; ЧВН=; ЧГ=0");
не обратил внимание сразу, вместо "ЧЦ=7" поставил"ЧЦ=5" 4 символа у меня занимает префикс /401, 5 остается. Все работает. Спасибо за помощь! |
|||
16
Митяйский
04.06.18
✎
16:22
|
вот и ладно
|
|||
17
spiller26
04.06.18
✎
16:29
|
(14) Меня тоже всегда "радует" такая нумерация.
|
|||
18
bolobol
04.06.18
✎
16:32
|
(14) Присоединяюсь. На заметку возьму, что теперь кадровые можно
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |