8.х Смена номера документа по кнопке на форме

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем jonsony, 16 апр 2009.

  1. TopicStarter Overlay
    jonsony
    Offline

    jonsony Опытный в 1С Заблокирован

    Регистрация:
    16 апр 2009
    Сообщения:
    224
    Симпатии:
    25
    Баллы:
    29
    Суть такова, есть несколько префиксов для однотипных документов.
    в 7.7 по кнопке такая конструкция отрабатывалась без заминки
    "УстановитьНовыйНомер("Рнп-" )"
    В 8.1 не хотит добавлять менять номер, меняет только цифровую часть номера увеличивая её согласно нажатиям (хотя в 7.7 такого не было пока не занят номер).

    Подскажите пожалуйста вариант решения ситуации.

    ЗЫ
    Конфигурация типовая (и торговля и бухгалтерию пробывал), релизы (и платформы) последние.
  2. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    1. Создать свой нумератор
    2. Задать префикс для организация
    Это как варианты

    Вы бы задачу описали, как вы определяете свой префикс.
    И посмотрите, как в типовых номер присваивается.
  3. TopicStarter Overlay
    jonsony
    Offline

    jonsony Опытный в 1С Заблокирован

    Регистрация:
    16 апр 2009
    Сообщения:
    224
    Симпатии:
    25
    Баллы:
    29
    да указал вообще-то, может не так подробно расписал разве что.

    суть такова, в 7.7 на форме расходной накладной были добавлены несколько кнопок, при нажатии на любую отрабатывалась конструкция "УстановитьНовыйНомер("Рнп-" )" занесённая в поле Формула на закладке дополнительно в свойствах кнопки, Имя кнопки = нужному префиксу (в приводимом примере он = "Рнп-") независио от заданного префикса для документа в конфиге (по умолчанию там присваивался "Рхх-", чтоб накладные не терять).

    Попытка провернуть подобное в типовой 8.1 Торговле ( равно как и в Бухгалтерии) не увенчалось успехом.
    Номер документа там задан текстовой строкой в 11 символов (в 7.7 у нас так же), кнопка на форме создаётся, выше приведённая конструкция в ней присутствует (УстановитьНовыйНомер("Рнп-" )) . НО!! Вместо того чтобы подставить в номер документа префикс и цифровую часть согласно нумерации предыдущей оно просто увеличивает 11-ти значный цифровой номер на 1 на каждое нажатие кнопки без изменения префикса (чего кстати в 7.7 не было, количество нажатий не приводило к арифметической прогрессии при нажатии, номер оставался тем же (за тем же префиксом) если только в это время другой менеждер не создавал новый документ с таким же префиксом)
    Как победить подобное? или на текущий момент это не излечимо?
  4. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    В 8-ке (в типовых) номер присваивается ПРИ ЗАПИСИ документа в базу, что бы исключить пересечение нумерации и пропадание номеров.

    Смотрите подписки на события -> номер присваивается там.

    Вариантов два:
    1. Использовать нумератор
    2. (Ваш вариант) - в неки й реквизит документа указываете желаемый номер (аккуратно это делая -> что бы не сбить нумерацию) и присваиваете его в этой подписке. Только не забывайте проверять на наличие такого реквизита в документе, иначе придеться во все документы добавлять... Для проверки существования реквизита в общих модулях есть процедура.

    Так что все нужно для выполнения я вам рассказал.
  5. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.781
    Симпатии:
    509
    Баллы:
    204
    А если выставлять префикс в процедуре ПриУстановкеНовогоНомера?
  6. TopicStarter Overlay
    jonsony
    Offline

    jonsony Опытный в 1С Заблокирован

    Регистрация:
    16 апр 2009
    Сообщения:
    224
    Симпатии:
    25
    Баллы:
    29
    не всё, на 7.7 всё уже отработано было, и работало, для того чтоб не сбивалась нумерация документу по умолчанию присваивается неиспользуемый префикс номера, писал же выше.

    Ваши предложеные варианты не подходят.
    Мне нужно присваивать разные префиксы (выбор из 4), ещё раз повторю, на 7.7 всё это работало, и здесь , но криво

    Но ведь цифровая часть номера увеличивается по нажатию при этой конструкции УстановитьНовыйНомер("Рнп-" ) (без процедур, как и было в 7.7), а префикс не заноситься в номер. Почему?
  7. tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    да гляньте вы процедуру присвоения номера и перепишите как вам нужно. Например поставили галку и стандартный префикс не расчитывается, а ставится свой на выбор по разным кнопкам, в чем проблема то? Вам описали как работают стандартные функции, если не устраивыает, то пишите свои :) Зачем искать функционал там, где его нет... Хотите как в семерке - реализуйте, благо займет не более часа-двух. Разработчики типовой видимо посчитали, правильнее не менять префиксы как попало. Но это их мнение и они могут ошибаться. :)
  8. TopicStarter Overlay
    jonsony
    Offline

    jonsony Опытный в 1С Заблокирован

    Регистрация:
    16 апр 2009
    Сообщения:
    224
    Симпатии:
    25
    Баллы:
    29
    да в том то всё и дело что не ставит он их по кнопкам :-(
    и в сёмёрке ничего кроме заданной формулы в свойствах кнопки не было и всё работало, почему в 8-ке тоже самое не работает?
    стандартный номер изначально - 11 символов из цифр представленных текстовой строкой без всяких префиксов. (как заложено в типовой)
  9. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Забудьте про 77 - пока этого не сделает - вы не поймете, как работает 8-ка!

    Еще раз - в самой платформе номер присваивается по разному и в типовых механизм работает не так, как в 77!

    Учите матчасть, где смотреть-> уже написал.

Поделиться этой страницей