7.7 задачка с периодическим реквизитом

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

  1. TopicStarter Overlay
    dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    Условие: Есть справочник автовозов. Номер автовоза - это код. У автовозов иногда меняется номер.
    Вопрос: Как хранить историю номеров и получать номер на нужную дату?
    Трудности: Код нельзя сделать периодическим. По периодическим реквизитам нельзя делать отбор. Без отбора невозможно проверить уникальность.
  2. TopicStarter Overlay
    dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    Два способа которые пришли в голову.
    1. Добавить новый реквизит Номер с отбором. Добавить еще реквизит номер периодический.
    Способ кажется не подходит, потому что непонятно как автоматом обновлять Реквизит номер если меняются номера не документами или обработкой. (Хотя тут нужно подумать еще, утро вечера мудренее)
    2. Добавить новый реквизит с отбором номер. к нему подчиненый справочник, с периодическим реквизитом.
    Способ кажется не подходит, потому что не понятно как отображать собственно сам периодический номер, потому что отображается или код или наименование. Ну и тут не доконца дотумкал на тему получения значения на указанную дату..

    Вот такие пирожки..(
  3. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    А если так: Код это номер, Доп реквизит История(периодический). В него записываем код при его изменении... Волки целы и овцы целы (и отбор имеем и историю храним)
    Ростислав нравится это.
  4. TopicStarter Overlay
    dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    подходит) спасибо) видимо, глаз замылилися уже)

    Код:
    Procedure OnWrite()
    If Code<>NumbHistory Then
    oRef = CreateObject("Reference.Trucks");
    oRef.FindItem(CurrentItem());
    oRef.NumbHistory.SetValue(CurDate(),Code);
    EndIf;
    EndProcedure
    
    

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