#0
by stateg
Суть такова: необходима переменная, которая будет хранить порядковый номер месяца и, если месяц текущей даты не совпадает с этой переменной, то произвести_действия, переменная=текущий месяц. Сначала мой взгляд пал на общие реквизиты, но значение реквизита привязано к конкретному документу, необходимо чтобы было одно значение для всех документов. Потом подумал об использовании констант, но 1с ругается на недопустимость программной записи констант.
#1
by Ненавижу 1С
>> но 1с ругается на недопустимость программной записи констант руки надо выпрямлять
#2
by НикДляЗапросов
то произвести_действия, переменная=текущий месяц - если такое действие то просто делай его всегда
#3
by МойКодУныл
Чую, что хотят сделать сто-то уже реализованное. Границу последовательности, например.
#6
by stateg
направление мыслей понял, полез гуглить про константы номенклатурной единице присваивается номер который составляется из месяц+год+порядковый_номер, порядковый номер надо ежемесячно обнулять
#8
by unregistered
>> номенклатурной единице присваивается номер который составляется из месяц+год+порядковый_номер " месяц+год" - это называется "Префикс"... В типовых есть подписка на событие ПриУстановкеНомера (ПриУстановкеКода для справочников), которая этот префикс устанавливает. В обработчике этой подписки рисуй префикс какой хочешь.
#11
by stateg
храню месяц и при добавлении номера сравниваю хранимый месяц с текущим, если отличаются, то порядковый номер начинается с 1 я только учусь, с удовольствием выслушаю идеи как реализовать сей процесс рациональнее
#15
by Rie
Я вот так и не понял... Этот порядковый номер месяца - он для всех пользователей? Или у каждого - свой? Или вообще - в пределах сеанса? И зачем производить действие Не проще ли вместо этой "переменная" везде использовать Месяц(ТекущаяДата)?
#16
by Полька
А я не поняла. Если это для того, чтобы формировать номер у номенклатурной единицы, то зачем общий реквизит для ВСЕХ документов? И если каждый месяц вновь прибывшую номенклатуру заводить по новой- для чего? Уж не методы ФИФО ЛИФО реализовать?
#17
by stateg
В общем при создании документа, табличная часть заполняется данными из другой ТЧ при этом добавляется номер в формате месяц+год+порядковый_номер (1113/5, 1113/6, 1113/7 и т.д.). Так вот в моем ТЗ есть требование чтобы каждый новый месяц нумерация (та что после слеша / ) должна начинаться заново (1213/1, 1213/2 и т.д.), вот у меня и возникла мысль хранить в константе месяц, который я буду сравнивать с Формат(ТекущаяДата, "ДФ=ММ"). Я не знаю как объяснить доступнее)
#18
by Полька
А что, по дате документа не понятно- какой месяц на дворе? :) Тогда логичнее хранить не месяц, а последний порядковый номер.
#25
by stateg
По дате документа не понятно надо ли обнулять нумерацию нумерация номенклатурных позиций в табличной части документа, вот зачем
#29
by Wobland
внезапно одному элементу справочника может соответствовать несколько номеров. пока это смахивает на что-то неприятно пахнущее
#31
by stateg
Справочники тут вообще не при чем. В общем если есть ещё у кого-то желание поделиться опытом реализации единого счетчика для всех документов буду рад выслушать, на вопросы зачем ответ - "надо"
#32
by zakidonoff
К 3 вопроса: 1) Заполняется ли треба ТЧ неоперативно (задним числом)? И если да, то нужно ли отслеживать нумерацию с учётом этого? 2) Каким образом, имея в константе текущий месяц, можно понять, требуется ли заводить новый номер или нет? И как узнать последний используемый номер, если в константе только дата? 3) Хранится ли этот номер где-нибудь ещё, кроме ТЧ?
#33
by stateg
1) Да, нумерацию отслеживаю запросом (выбор последнего номера) с параметром дата 2) Если Формат(Объект.Дата, "ДФ=ММ") <> Формат(Константы.Месяц.Получить, "ДФ=ММ") Тогда вот таким, последний номер узнаю с помощью запроса с параметром дата 3) нет
#36
by hhhh
ну например, вот 1 ноября, а нужно сделать пару документов за октябрь: эта твоя константа идет в задницу?
#37
by KAO111
для озвученных условий константа все равно не нужна максимальный номер (или в случае пустого результата - первый) даст запрос выбрать максимум(Таблица.Номер) из Таблица где Таблица.Номер Подобно &Параметр Параметр тут "1213%", получается из даты документа
#38
by Обработка
Из-за таких кодеров "заказчики" наши становится капризными и вскую чушь требуют. Представь себе архитектору-строителю хозяин дома скажет хочу чтоб вместо фундамента был песок а вместо кирпичей глина....
#39
by Обработка
Я бы задал вопрос постановщикам зачем нумеровать ТЧ? Для каких целей. И быть может доказал бы абсурдность их хотелки.
#40
by zakidonoff
Хорошо. Автора я понял. Как бы сделал это Я. Во-первых, никаких констант. Во-вторых, создал бы подчинённый регистр сведений, который заносил бы префикс (тот самый месяц+год) в одну строку с каждой строкой номенклатуры ТЧ. В третьих, никакой порядковый номер не хранил бы в принципе. Вообще нигде. Даже в самой ТЧ - он формировался бы при выводе строки по принципу: Запрос = Новый запрос выбрать количество из регистра сведений, где НачалоМесяца(ДатаДокумента) < период <= ДатаДокумента и регистратор <> искомый объект. При выводе строки: Номер = Год(ДатаДокумента) + Месяц(ДатаДокумента) + КоличествоСтрокИзЗАпроса + НомерСтроки. ?? Профит
#41
by zakidonoff
Скорее всего, для печатной формы. Бывает, реально нужна потоковая нумерация. Не зарекайся.
#42
by stateg
Благодарю, завтра со свежими силами буду исходить от регистра сведений. Правда есть один момент, помимо самой ТЧ порядковый номер должен отображаться в отчете, поэтому видимо его всё-таки хранить надо, но с этим я разберусь, главная проблема была реализовать счетчик.
#43
by stateg
кстати на звание гуру 1с не петендую, как я сказал пока учусь, поэтому да, я "такой" кодер)
#44
by zakidonoff
В печатной форме легко и просто нумерация генерируется по тому же принципу. + при удалении изменении документов задним числом, не нужно будет перепроводить все последующие документы - номера будут сдвигаться сами в пределах текущего месяца.
#45
by stateg
не совсем понял про "регистратор <> искомый объект", что за искомый объект и как это определить в запрсое? А нельзя ли обойтись без этого и просто выбирать количество всех строк в регистре и делать инкремент на 1 для новых строк?
#46
by zakidonoff
Регистратор <> документ, в для которого производится формирование списка ТЧ. Иначе получится, что запрос будет считать количество строк включая и те, что уже есть в документе. В коде будет выражено так: Кстати, если уже есть регистр сведений или регистр накопления, фиксирующий каждую строку в ТЧ, то нового можно и не создавать
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Вопрос с 1СТерритории Общая файловая ошибк при доступ к С:......~md68.t
- Глобальная переменная для всех пользователей
- Глобальная переменная
- V7PLUS: общая ошибка MAPI
- Запрос, Строковая переменная запроса.
- Конвертация данных - ПКО - ПослеЗагрузки - переменная ПараметрыОбъекта
- БП 1.6 Общая система Почему не формируются проводки по 68.04 счету?
- Запрос всех строк номенклатуры из всех табличных частей всех документов
- v8: 1С 8.2 УФ. Переменная доступная из всех сеансов
- v7: общая файловая ошибка при доступе к PrnForms
- SOS! Пробили чек на ФР Атол 30Ф с СНО = Общая в чеке вместо УСН
В этой группе 1С
- Форма обработки, доступ к модулю обработки
- Корректировка поступление денежных документов в Бухгалтерии 8 (ред 2.0)
- Инвентаризация по МЦ.04 для Общепита
- Не устанавливается MS SQL Server 2008 R2 на Windows 8.1
- Как обратиться к дате начала стандартного периода??
- Очередная проблема с установкой Привилигерованного режима
- Проблемы с SQL сервером. Загрузка ЦП 100%
- Обновление не типовой БП 2.0
- 8.2 БГУ. Можно ли перенести отчет из универсального отчета в другую базу?
- КА: не закрывается 26 счет
- v7: Стал медленно работать метод ВыгрузитьИтоги()
- Перенести задолженность с одного договора на другой
- Ошибка исключительной блокировки информационной базы
- 1С Розница 2.5 Как поменять чек покупателя?
- КА 8.2. Как закрывается регистр "НДС предъявленный" при ставке БезНДС?
- Процедура OnClick поля HTML Управляемой формы
- Не работает ЗначениеВРеквизитФормы
- Упр.приложение 1С 8.2: как получить ТЧ документа в общем модуле?
- Тип не определен (запрос)
- Объекты ИБ снятые с поддержки