8.х Хранение ссылки на объект

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

  1. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Как вы можете сделать ссылку на несуществующий объект?
    Вы можете только выдернуть метаданные и дать пользователю возможность выбрать, что именно он хочет.
    Посмотрите, как работает групповая обработка справочников и документов.

    К тому же - на момент выбора пользователем БП - он должен быть в базе уже. Соответственно, просто добавляете его в основной БП и всё.
  2. TopicStarter Overlay
    aimax
    Offline

    aimax Опытный в 1С

    Регистрация:
    11 авг 2008
    Сообщения:
    63
    Симпатии:
    0
    Баллы:
    26
    Да нет вообще то... У меня сейчас через реквезит справочника БП создаются, только как я писал через менеджер БП по имени... А хочется ссылкой на БП объект сразу.

    Вот как бы Вы сделали если в основном БП появляется необходимость разветвления БП и пользователю надо предоставить возможность завуалированно определить какие БП будут созданы и параллельно запущены на выполнение?

    Грубо говоря дать пользователю возможность определить сколькими алгоритмами обработать информацию (пользователь естественно видит только названия алгоритмов а не БП)?
  3. TopicStarter Overlay
    aimax
    Offline

    aimax Опытный в 1С

    Регистрация:
    11 авг 2008
    Сообщения:
    63
    Симпатии:
    0
    Баллы:
    26
    Согласен... Только вот и получается, что мне надо:
    а) или создать заранее каждый БП, записать его, дать пользователю его выбрать, а потом желательно удалить ненужные.
    б) заранее включить в основную струтуру все вложенные БП и далее через обработку определять по каким из них будет выполняться основной БП.

    А это совсем некрасивый выход... на мой взгляд. Загромаждение какое-то...
  4. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Не очень понял:
    Если у вас нет зашитого БП - как вы его дадите создать пользователю?
  5. TopicStarter Overlay
    aimax
    Offline

    aimax Опытный в 1С

    Регистрация:
    11 авг 2008
    Сообщения:
    63
    Симпатии:
    0
    Баллы:
    26
    БП зашит в конфигурацию и привязан к элементу справочника через реквезит. Пользователь выбирая элементы справочника (заносит их в таблицу), сам того не видя выбирает и БП которые создадутся при проведении документа...
  6. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Расскажите мне - в чём плюс такого способа в отличии от множественного ИначеЕсли? В данном случае я не вижу никаких преимуществ, если БП один.
  7. TopicStarter Overlay
    aimax
    Offline

    aimax Опытный в 1С

    Регистрация:
    11 авг 2008
    Сообщения:
    63
    Симпатии:
    0
    Баллы:
    26
    1. Нет лишнего кода и блоков. Все делается в одной процедуре в цикле
    2. Не обязательно лезть в конфигуратор, чтоб увидеть какой БП будет запущен

    В общем, эстетическое отличие, а так конечно большой разницы нет.
  8. coder1cv8
    Offline

    coder1cv8 Опытный в 1С

    Регистрация:
    30 авг 2007
    Сообщения:
    101
    Симпатии:
    0
    Баллы:
    26
    Э-э-э... Чё-то я не понял, о чем такая длинная ветка?...
    Нужен реквизит с именем БП, который будем создавать? Т.е. просто строка. Тогда обработка нажатия кнопки (или чего там?) будет примерно такая:
    БизнесПроцессы[Реквизит].СоздатьБизнесПроцесс()
  9. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    С точки зрения кодирования: это "быдлокодинг" :) Ибо нельзя завязываться на текстовые объекты в системе.
  10. coder1cv8
    Offline

    coder1cv8 Опытный в 1С

    Регистрация:
    30 авг 2007
    Сообщения:
    101
    Симпатии:
    0
    Баллы:
    26
    Ну тогда предлагаю класть в реквизит пустую ссылку нужного типа и через Метаданные() уже получять требуемое имя БП.
  11. TopicStarter Overlay
    aimax
    Offline

    aimax Опытный в 1С

    Регистрация:
    11 авг 2008
    Сообщения:
    63
    Симпатии:
    0
    Баллы:
    26
    Пробывал - не смог... В Радченке (Проф. разработка), не нашел...
    Пришлось "БЫДЛОКОДИНГОМ" заняться... Проблем нет пока.
  12. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Так что не получилось? Получаем тип ссылки и в метаданных ищем её.
  13. TopicStarter Overlay
    aimax
    Offline

    aimax Опытный в 1С

    Регистрация:
    11 авг 2008
    Сообщения:
    63
    Симпатии:
    0
    Баллы:
    26
    Синтаксис? Как строка выглядеть будет... По разному пробывал не получается.
  14. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Метод ТипВсеСсылки() у менеджера БП и метод НайтиПоТипу() у свойства Метаданные
  15. TopicStarter Overlay
    aimax
    Offline

    aimax Опытный в 1С

    Регистрация:
    11 авг 2008
    Сообщения:
    63
    Симпатии:
    0
    Баллы:
    26
    Спасибо. На самом деле если бы сразу это увидел, не пришлось бы так размазывать топик.
    Может его в важные темы переместить и все вопросы по ссылочному обмену, хранению и представлению там обсуждать :unsure:

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