Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
14 Дек 2017, 20:14
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Автонумерация в документе  (Прочитано 13887 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Sonik

  • **
  • Сообщений: 76
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-03-03
  • Сайт: 
  • Профессия: Программист 8.1
Для установки в текущем месяце номеров в документе написал код:
Б=Дата("01."+Формат(Документ.Дата,"ДФ=ММ")+".2011 0:00:00");Е=""+День(КонецМесяца(Документ.Дата))+".";Б2=Дата(Е+Формат(Документ.Дата,"ДФ=ММ")+".2011 23:59:59");Запрос = Новый Запрос;Запрос.Текст ="
|ВЫБРАТЬ
|МАКСИМУМ(РеализацияМатериальныхАктивовСуммы.Ссылка.Дата) КАК ДатаС,
|МАКСИМУМ(РеализацияМатериальныхАктивовСуммы.Ссылка.ПостфиксНомераСчетаФактуры) КАК НомерСФ
|ИЗ
|Документ.РеализацияМатериальныхАктивов.Суммы  КАК РеализацияМатериальныхАктивовСуммы
|Где
|(РеализацияМатериальныхАктивовСуммы.Ссылка.Дата<&A)И
|(РеализацияМатериальныхАктивовСуммы.Ссылка.Дата>=&Б)";Запрос.УстановитьПараметр("A",Б2);Запрос.УстановитьПараметр("Б",Б);Выборка=Запрос.Выполнить().Выбрать();Выборка.Следующий();
Если НЕ ЗначениеЗаполнено(Выборка.НомерСФ)ИЛИ(Формат(Документ.Дата,"ДФ=ММ")>Формат(Выборка.ДатаС,"ДФ=ММ"))ИЛИ(Формат(Документ.Дата,"ДФ=ММ")="01")И(Формат(Выборка.ДатаС,"ДФ=ММ")="12")Тогда
Результат=1;Иначе Результат=Число(Выборка.НомерСФ)+1;КонецЕсли;

нумерация останавливается на цифре "10". Подскажите из-за чего?
 


Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Чет не читабельно. Форматированный код и место ошибки покажите.

Оффлайн Sonik

  • **
  • Сообщений: 76
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-03-03
  • Сайт: 
  • Профессия: Программист 8.1
Б=Дата("01."+Формат(Документ.Дата,"ДФ=ММ")+".2011 0:00:00"); Е=""+День(КонецМесяца(Документ.Дата))+".";
Б2=Дата(Е+Формат(Документ.Дата,"ДФ=ММ")+".2011 23:59:59");
          Запрос = Новый Запрос;Запрос.Текст ="
|ВЫБРАТЬ
|МАКСИМУМ(РеализацияМатериальныхАктивовСуммы.Ссылка.Дата) КАК ДатаС,
|МАКСИМУМ(РеализацияМатериальныхАктивовСуммы.Ссылка.ПостфиксНомераСчетаФактуры) КАК НомерСФ
|ИЗ
|Документ.РеализацияМатериальныхАктивов.Суммы  КАК РеализацияМатериальныхАктивовСуммы
|Где
|(РеализацияМатериальныхАктивовСуммы.Ссылка.Дата<&A)И
|(РеализацияМатериальныхАктивовСуммы.Ссылка.Дата>=&Б)";
   Запрос.УстановитьПараметр("A",Б2);
   Запрос.УстановитьПараметр("Б",Б);
   Выборка=Запрос.Выполнить().Выбрать();   Выборка.Следующий();
Если НЕ ЗначениеЗаполнено(Выборка.НомерСФ) ИЛИ                     
                  (Формат(Документ.Дата,"ДФ=ММ")>Формат(Выборка.ДатаС,"ДФ=ММ"))  Тогда
                  Результат=1;
Иначе      Результат=Число(Выборка.НомерСФ)+1;
КонецЕсли;

Так лучше? ошибка не выскакивает, просто на десяти нумерация заканчивается и ставит каждый раз 10

Оффлайн Sonik

  • **
  • Сообщений: 76
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-03-03
  • Сайт: 
  • Профессия: Программист 8.1
Наверное проблема в использовании Число(Выборка.НомерСФ), так как [+|-]{0|1|2|3|4|5|6|7|8|9}[.{0|1|2|3|4|5|6|7|8|9}] , как обойтись без Числа или правильно задать???

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Да лучше. У вас так и будет 10, потому что у вас каждый раз показывает один и тот же документ. Скажите лучше что выхотите сделать этим.

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Для начала заменить это
Б=Дата("01."+Формат(Документ.Дата,"ДФ=ММ")+".2011 0:00:00"); Е=""+День(КонецМесяца(Документ.Дата))+".";
Б2=Дата(Е+Формат(Документ.Дата,"ДФ=ММ")+".2011 23:59:59");
на
Б = НачалоМесяца(Документ.Дата);
Б2 = КонецМесяца(Документ.Дата);

Оффлайн Sonik

  • **
  • Сообщений: 76
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-03-03
  • Сайт: 
  • Профессия: Программист 8.1
заменил а дальше? вывод значений и увеличение на 1 обеспечить?

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
заменил а дальше? вывод значений и увеличение на 1 обеспечить?
Условие задачи озвучьте.

Оффлайн Sonik

  • **
  • Сообщений: 76
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-03-03
  • Сайт: 
  • Профессия: Программист 8.1
номер состоит из 2 полей (частей), префикс и постфикс, префикс отвечает за вывод номера текущего месяца а поле постфикс за нумерацию в данном месяце, идет выборка максимального номера из всех в данном месяце и постфиксу присваивается на 1 больше. Но проблема как мне кажется при выводе результата

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Не проще периодичность номера документа поставить Месяц?
И заняться формированием правильного префикса.
(в событии ПриУстановкеНовогоНомера())
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.


Теги:
 

заполнение закладки "Материалы" в документе "Поступление из переработки"

Автор Sasa1CРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 3594
Последний ответ 10 Июн 2013, 22:34
от Sasa1C
Заполнение табличной части при выборе реквизита другой табличной части в документе.

Автор Vlad-93Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 314
Последний ответ 25 Окт 2017, 14:15
от Vlad-93
УТ 11.В документе "Заявка на расходование денежных средств" нет кнопки "Печать"!

Автор Valery3103Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 3759
Последний ответ 29 Июн 2012, 18:37
от LexaK
Как сделать, чтобы поле в документе имело тип "ссылка на поле справочника"?

Автор друганРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 2034
Последний ответ 05 Мар 2017, 14:36
от Igor100500
Не активно поле ПОЛУЧАТЕЛЬ в документе "выдача наличных" и в "кассовых документах"

Автор Masik777Раздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 918
Последний ответ 31 Авг 2016, 16:02
от Masik777

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
184 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
50 Сообщений
andron81_81
40 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
29 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 337
  • Точка Скрытых: 0
  • Точка Пользователей: 6
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal