8.х Автонумерация по условию для двух разных префиксов

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

  1. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    1с 8,1 (УПП)
    Добрый день!
    Подскажите пож. как реализовать следующее:

    Есть документ "ЗаказНаПроивзодство". На его форме планирую поставить два переключателя.
    ===============

    Если переключатель в 1 первом положении то при записи должна срабатывать автонумерация с префиксом - V (Например V000000000001, V000000000002, V000000000003 и тд)

    Если переключатель в 1 первом положении то при записи должна срабатывать автонумерация с префиксом - P (Например P000000000001, P000000000002, P000000000003 и тд)

    Подскажите как это реализовать, желательно поподробнее, я просто начинающий.Заранее спасибо !!!
  2. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    В чем проблема-то? Почитайте про "УстановитьНовыйНомер(<Префикс номера>) "
  3. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Код:
    Если МоеУсловие=1 Тогда
    УстановитьНовыйНомер("МойПреф");   
    Иначе
    УстановитьНовыйНомер("");
    КонецЕсли;
    
    
  4. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    а это все добавлять в главном модуле формы??
  5. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    В предопределенную процедуру ПередЗаписью() модуля формы документа
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Вызывай при изменении переключателя
  7. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    Скажите а как лучше реализовать:
    1. На изменение переключателя?? (какое событие ПриИзменение выбрать ? )
    2. ПередЗаписью смотреть состояние переключателя (кстати как обратится к этому состоянию...?)
  8. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Решайте сами - в первом случае номер изменится сразу - второй только при записи
  9. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    ОК! Спасибо огромное за ответы - буду пробовать. Обязательно отпишусь ! :) всеъ с Наступающим !!!!
  10. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    Ребят - не работает ! :( Помогите разобраться.

    Итак имеем:
    1. Группу переключателей (всего две шт).
    - Параметры первого:
    Первый в группе - стоит галочка
    ТипЗначения - булево
    -При изменении: Переключатель1ПриИзменении

    Код:
    Процедура Переключатель2ПриИзменении(Элемент)
    // Вставить содержимое обработчика.
    УстановитьНовыйНомер("P"); 
    КонецПроцедуры
    
    

    - Параметры второго:
    Первый в группе - стоит галочка
    ТипЗначения - булево

    -При изменении: Переключатель2ПриИзменении

    Код:
    Процедура Переключатель2ПриИзменении(Элемент)
    // Вставить содержимое обработчика.
    УстановитьНовыйНомер("P"); 
    КонецПроцедуры
    
    
    Скажите может я напутал с настройками переключателей? или неправельно обратился к значению номера??? в чем ошибка?
  11. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    У переключателя есть свойство "Выбираемое значение". Для одного переключателя установите его в "Истина", для другого в "Ложь". Так же, все таки, советую менять номер в "ПередЗаписью", т.к. если его менять при изменении переключателя, то автономер будет увеличивать счетчик номера (т.е. номер будет расти) при кажой смене переключателя.
    P.S. В порядке обхода переключатели должны идти друг за другом.
  12. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    Может я не там смотрю но у меня не свойства "выбираемое значение"

    Прикрепляю скрин

    Вложения:

  13. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    Вверху окна свойств отожмите кнопочку "Показывать только важные"
  14. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    Спасибо большое за ответы!
    Переключатель заработал, только не подтягивается указанный мною префикс в
    Код:
    Процедура Переключатель2ПриИзменении(Элемент)
    УстановитьНовыйНомер("P");
    КонецПроцедуры
    
    
    а тянется префикс указанный в самой организации. Скажите можно ли как-то это обойти?
  15. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    В УПП есть подписка на событие "ПриУстановкеНовогоНомераДокумента", которая, соответственно, вызывает на выполнение процедуру "ПриУстановкеНовогоНомераДляДокументов" из общего модуля "ОбщегоНазначения". В этой процедуре вызываются еще 2 процедуры, одна префикс для организации добавляет, другая для узла. Короче, нужно их отключать будет в Вашем случае. Как вариант, можно исключить Ваш документ из источника подписки на событие.
  16. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    а как мне исключить документ из подписки?
  17. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    В дереве конфигурации найдите эту подписку, в свойствах у нее поле "Источник". Нажмите там кнопку "..." и уберите галочку с Вашего документа.
  18. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    еще такой вопрос - как обнулить счетчик нумерации ?
  19. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    Собственно, обнулять нечего. Новый номер рассчитывается системой в зависимости от префикса, периодичности и т.д.
  20. TopicStarter Overlay
    wary
    Offline

    wary Опытный в 1С

    Регистрация:
    5 авг 2009
    Сообщения:
    139
    Симпатии:
    1
    Баллы:
    26
    Убрать у документа подписку - получилось.
    Но не как не могу разобраться с переключателями.
    Вот что получилось на данный момент:
    1. Два переключателя

    -Переключатель1
    ТипЗначения - булево
    Первый в группе
    ВыбираемоеЗначение - Истина
    ПриИзменении
    Код:
    Процедура Переключатель1ПриИзменении(Элемент)
    УстановитьНовыйНомер("V");
    КонецПроцедуры
    
    
    

    -Переключатель2
    ТипЗначения - булево
    ВыбираемоеЗначение - Ложь
    ПриИзменении
    Код:
    Процедура Переключатель2ПриИзменении(Элемент)
    УстановитьНовыйНомер("P");
    КонецПроцедуры
    
    
    

    2. В реквизитах документа:

    - После того как установил для Переключатель1 первый в группе - появился реквизит Переключатель1
    - Добавил так же реквизит Переключатель2

    =============
    Результат
    =============
    При перещелкивании переключателя счетчик нумерации накручивается а вот префикс все время "V" (V00001)....хотя при выборе переключателя P префикс должен менять на P00001
    Подскажите пожалуйста где ошибка ???

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