Регистрация

Присвоение регистрационного номера {DV 5.4}{Решено}

Вопросы, связанные с разработкой дополнительных справочников, карточек и т.п. на базе DocsVision

Модератор: Модераторы форума

Гуру
Сообщения: 275
Зарегистрирован: 04 дек 2008, 13:40
Откуда: Москва

Присвоение регистрационного номера {DV 5.4}{Решено}

Сообщение Яков » 17 май 2018, 09:43

Коллеги, доброго дня.
Бьюсь не первый день с задачей.
Есть карточка УД документа. Необходимо присваивать регистрационный номер после нажатия кнопки "зарегистрировать".
Пытался сделать по примеру в руководстве разработчика (INUMERATIONRULESSERVICE.CREATENUMBER), но ничего не выходит. То ругается на сборки, то еще какая то ересь.
Может кто поделиться примерным решением данного вопроса?
Последний раз редактировалось Яков 18 май 2018, 15:24, всего редактировалось 1 раз.
DV 5.4 (НО9), а когда-то было 4.5)

Опытный
Сообщения: 144
Зарегистрирован: 27 авг 2009, 08:43
Откуда: Ангарск

Re: Присвоение регистрационного номера по кнопке {DV 5.4}

Сообщение Finist » 18 май 2018, 05:18

Все верно, через сервис и надо выделять номер:
Код: Выделить всё
        /// <summary>
        /// Метод выделения нового номера
        /// </summary>
        public BaseCardNumber GetNewNumber(string ruleName)
        {
            var numerationService = CardControl.ObjectContext.GetService<INumerationRulesService>();
            var rule = CardControl.ObjectContext.FindObject<NumerationRulesRule>(new QueryObject("RuleName", ruleName));
            if (rule == null)
                return null;
            return numerationService.CreateNumber(this.CardData, this.BaseObject, rule);
        }


Далее в скрипт кнопки можно вставить:
Код: Выделить всё
                BaseCardNumber number = base.GetNewNumber("Проект договора");
                if (number != null)
                {
                    ILayoutPropertyItem numberControl = Customizable.FindPropertyItem<ILayoutPropertyItem>("Номер");
                    numberControl.ControlValue = CardControl.ObjectContext.GetObjectRef(number).Id;
                }


У меня данным способом номер выделяется при создании карточки.

Гуру
Сообщения: 275
Зарегистрирован: 04 дек 2008, 13:40
Откуда: Москва

Re: Присвоение регистрационного номера по кнопке {DV 5.4}

Сообщение Яков » 18 май 2018, 08:51

Спасибо!!
То есть скрипт висит на событие открытия карточки (CardActivated), правильно пониманию?
DV 5.4 (НО9), а когда-то было 4.5)

Опытный
Сообщения: 144
Зарегистрирован: 27 авг 2009, 08:43
Откуда: Ангарск

Re: Присвоение регистрационного номера по кнопке {DV 5.4}

Сообщение Finist » 18 май 2018, 12:07

Да, на событие CardActivated. Можно на любое повешать, зависит от того в какой момент хочется номер выделять.

Гуру
Сообщения: 275
Зарегистрирован: 04 дек 2008, 13:40
Откуда: Москва

Re: Присвоение регистрационного номера по кнопке {DV 5.4}

Сообщение Яков » 18 май 2018, 12:42

Finist писал(а):Да, на событие CardActivated. Можно на любое повешать, зависит от того в какой момент хочется номер выделять.

Код: Выделить всё
        /// <summary>
        /// Метод выделения нового номера
        /// </summary>
        public BaseCardNumber GetNewNumber(string ruleName)
        {
            var numerationService = CardControl.ObjectContext.GetService<INumerationRulesService>();
            var rule = CardControl.ObjectContext.FindObject<NumerationRulesRule>(new QueryObject("RuleName", ruleName));
            if (rule == null)
                return null;
            return numerationService.CreateNumber(this.CardData, this.BaseObject, rule);
        }

Данный метод прописывать в тип карточки "ДокументУД" или в сам "Документ"?
DV 5.4 (НО9), а когда-то было 4.5)

Опытный
Сообщения: 144
Зарегистрирован: 27 авг 2009, 08:43
Откуда: Ангарск

Re: Присвоение регистрационного номера по кнопке {DV 5.4}

Сообщение Finist » 18 май 2018, 12:45

Можно в сам Документ, в будущем это позволит его дёргать из других подвидов.

Гуру
Сообщения: 275
Зарегистрирован: 04 дек 2008, 13:40
Откуда: Москва

Re: Присвоение регистрационного номера по кнопке {DV 5.4}

Сообщение Яков » 18 май 2018, 12:54

Ага, уже разобрался мальца. Finist - спасибо тебе огромное!!! Пытаюсь самостоятельно научиться скрипты писать, начальство на обучение на курс 005 не отправляет - денег, говорит, нет(((
DV 5.4 (НО9), а когда-то было 4.5)

Гуру
Сообщения: 275
Зарегистрирован: 04 дек 2008, 13:40
Откуда: Москва

Re: Присвоение регистрационного номера по кнопке {DV 5.4}

Сообщение Яков » 18 май 2018, 15:23

Все, получилооооось!!!
Finist спасибейшее спасибо!
DV 5.4 (НО9), а когда-то было 4.5)

Вернуться в Разработка на платформе Docsvision

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5