8.х Конфигурация "с нуля"

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

  1. TopicStarter Overlay
    Lex09
    Offline

    Lex09

    Регистрация:
    2 фев 2009
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте!
    Уповаю на помощь гуру!
    Была поставлена задача – организовать архив документов. Решил воспользоваться платформой 1С:Предприятие 8.1 и сделать "простенькую" конфигурацию "с нуля".
    Создал иерархический справочник "Изделия". Вид иерархии – иерархия элементов. Начинаю строить дерево.
    В упрощенном виде структура данных следующая. Изделия состоят из блоков, блоки – из наборов, наборы - из элементов, элементы – из деталей и т.д.
    Пусть есть Изделие1 (Блок1, Блок2), Изделие2 (Блок3, Блок4), Изделие3(Блок5, Блок2). Видно, что Блок2 входит в Изделие1 и Изделие3. А элемент, скажем, Элемент4 входит в Блок2 и Блок3 и т.д.
    Налицо неоднозначное соответствие. С помощью подчиненных справочников не справиться по двум причинам. Во-первых, у каждого элемента подчиненного справочника может быть только один владелец. Во-вторых, заранее неизвестно количество блоков, наборов, элементов,... Скажем, Изделие4 состоит из одного блока, а Изделие5 – из 5 блоков.
    Добавление табличной части в справочник "Изделия" тоже проблему не решает. Ну, перечислил я блоки, входящие в изделие. А как дальше делать ветвление блоков на составляющие?
    Не думаю, что я впервые столкнулся с такой проблемой, наверняка придуман механизм организации данных для подобных случаев. Пожалуйста, подскажите, хотя бы, в каком направлении "копать", какие объекты конфигурации использовать. Заранее благодарен.
  2. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.840
    Симпатии:
    5
    Баллы:
    29
    Ничего сложного нет - все украдено до нас :)
    Используйте нечто подобное, как в УПП спецификации и будет вам счастье.

    Кстати, это совершенно рядовая задача, которая есть на каждом производстве.
  3. KiberMath
    Offline

    KiberMath Студент в 1С

    Регистрация:
    22 сен 2008
    Сообщения:
    61
    Симпатии:
    0
    Баллы:
    26
    хм... а вот у меня в данный момент нет возможности залезть в упп... (((
    может нужно что-нибудь типа плана видов характеристик использовать?
  4. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.840
    Симпатии:
    5
    Баллы:
    29
    Зачем? Все делается на основе справочников.

    Идея в том, что каждый элемент может состоять из произвольного количества других элементов. Т.е. это спецификация элемента.
    Рекомендую найти методичку по УПП и почитать - там неплохо описано.
  5. TopicStarter Overlay
    Lex09
    Offline

    Lex09

    Регистрация:
    2 фев 2009
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Большое спасибо за ответы.
    Правда, должен признаться, до полной ясности далеко.
    Я – программист на "классических" языках. Взялся изучать 1С:Предприятие в инициативном порядке. Разобрался (в какой-то степени) с объектами конфигурации, их свойствами, взаимодействиями. В принципе, у меня задачка не сложная, если бы не этот "затык". Задачку можно реализовать другими способами (тот же Excel, Vbasic и т.д.). Но мне понравился 1С своими возможностями (хотя и довольно "заморочен"), и я решил попробовать.
    Задача – гуляя по дереву элементов справочника (или в результате какого-то поиска – неважно) выбрать какой-то элемент и как-то (двойным щелчком, спец. кнопкой,...) открыть соответствующий этому элементу документ в соответствующем приложении (ACAD, Компас, Excel, Word,...). Операции поиска, открытия уже отладил, а со структурой данных – никак.
    У нас нет конфигурации УПП и покупать ее не собираются, тем более ТОЛЬКО для этой задачи (действительно, "из пушки по воробьям"). Поэтому и делаю конфигурацию "с нуля".
    По Вашей "наводке" ознакомился (правда, поверхностно) с конфигурацией УПП. Там – чистая иерархия. Скажем, Stinol может иметь родителя "Холодильники" и хоть "Мебель". Но придется его туда и туда вписать.
    "Идея в том, что каждый элемент может состоять из произвольного количества других элементов. Т.е. это спецификация элемента."
    Я так понял, что опять речь идет об иерархии. И, следуя моему первоначальному примеру, Блок2 следует "ручками забить" в Изделие1 и Изделие3. Но Блок2 состоит из большого количества наборов, которые, в свою очередь, из большого количества элементов, деталей. И это все придется ДУБЛИРОВАТЬ в каждом Блок2. А хотелось бы "расписать" структуру Блок2 один раз, а потом только ССЫЛАТЬСЯ на него. Кроме того, скажем, корпус Блок2 и корпус Блок4 – это одна и та же деталь, и чтобы она в справочнике была описана ОДИН РАЗ.
    В идеале было бы, чтобы элемент справочника имел тип ссылки на элементы этого же справочника. Но это невозможно.
    Пытался применить регистры сведений – безуспешно.

    Спасибо за уделенное внимание.
    Все в мире устроено целесообразно: мое невежество влечет за собой ваши толковые разъяснения.
  6. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.840
    Симпатии:
    5
    Баллы:
    29
    Нет :) Никакой иерархии!
    В каждом элементе описывается, из чего он состоит.
    Каждый вторичный элемент может, в свою очередь, также состоять из множества других. Главное - проверять зацикленность, т.е. что бы не было круговых ссылок.

    Пример:

    Есть
    1 - дверь, дверь состоит из
    - 1.1 - полотна
    -- 1.1.1 - фанера
    -- 1.1.2 - пленка
    - 1.2 - коробки
    -- 1.2.1 Верхняя часть
    -- 1.2.2 Левая часть
    -- 1.2.3 Правая часть

    Тем самым мы в ДВЕРИ пишем только два элемента: полотно и коробку, в коробке пишем только то, из чего она состоит, в полотне - то, из чего полотно состоит...

    Если нам нужно получить, из чего в итоге получается дверь (из каких элементарных элементов) - нам нужно проделать операцию "разузловывания", т.е. рабор всех элементов, которые входят в дверь до самого низа. Этот процесс и описан в методичке (как работает и идея)

    Это классический способ.
  7. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    0
    Баллы:
    26
    Можно и упрощенный вариант - в Управлении Торговлей есть такое понятие - как комплекты ;) Сами комплектующие хранятся в регистре сведений (почему лучше регистр, а не ТЧ - проще удалять элементы из системы).

    Насчет зацикленности - совершенно верно - нужно проверять, чтобы у вас разузлование шло не по кругу (это уже из разряда спецификаций в УПП).

    Во всяком случае есть такая математическая задача: О поиске контура в графе и задача о размыкании контура в графе - погуглите - там не сверхсложный алгоритмы поиска зацикленности.
  8. TopicStarter Overlay
    Lex09
    Offline

    Lex09

    Регистрация:
    2 фев 2009
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Спасибо за ответы!

    Право, мне уже неловко за свое непонимание. Печенкой чувствую – решение где-то рядом, но никак не уловлю. Если вам надоело возиться со мной – не обижусь. Но все же.

    "Тем самым мы в ДВЕРИ пишем только два элемента: полотно и коробку, в коробке пишем только то, из чего она состоит, в полотне - то, из чего полотно состоит..."

    1. Пусть есть справочник "Изделия". Он состоит из элементов (с какими-то атрибутами). Запишем элемент справочника "Дверь". И еще два элемента "Полотно" и "Коробка", подчиненные элементу "Дверь" (или "Дверь" – группа, тогда "Полотно" и "Коробка" – элементы в этой группе). "…в полотне (пишем) то, из чего полотно состоит" – т.е. "Фанеру" и "Пленку" заносим в табличную часть?

    2. В Вашем примере пусть "Пленка" тоже состоит из каких-то составляющих – это ради Бога. Но "Пленка" входит еще и в "Левую часть" (которая входит в "Коробку"). Получается, что "Пленку" я опять должен заносить со всеми составляющими. Или как-то можно сослаться на "Пленку", которую я уже занес в "Полотно"?

    Спасибо за уделенное внимание.
    Все в мире устроено целесообразно: мое невежество влечет за собой ваши толковые разъяснения.
  9. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    0
    Баллы:
    26
    Нет, сделайте один справочник, например, "Номенклатура".

    1. В справочнике сделайте элементы Полотно, Дверь, Пленка, Фанера и т.д.
    2. В конфигурации задайте для справочника каким-то образом хранение списка комплектующих (составляющих), с типом значений тот же справочник Номенклатура.
    3. Вы можете сами комплектующие вынести в отдельную группу в справочнике "Номенклатура", а можете не выносить.

    Таким образом - задали например составляющие для пленки.
    Теперь указали Пленку как составляющую для Полотна (а уже в самой пленке указано из чего она состоит). И все это ОДИН справочник! ;)
  10. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.840
    Симпатии:
    5
    Баллы:
    29
    Добавлю:

    Окрашенная планка состоит из краски и планки

    А дверь может состоять из:

    Окрашенная планка + полотно + краска

    Но эта краска относиться именно к двери, а не к окрашенной планке
  11. KiberMath
    Offline

    KiberMath Студент в 1С

    Регистрация:
    22 сен 2008
    Сообщения:
    61
    Симпатии:
    0
    Баллы:
    26
    Аха! Я понимаю, что выглядеть это будет так:

    1 справочник - в нем все возможные элементы: дверь, полотна, фанера, пленка,коробки,Верхняя часть и теде

    2 регистр сведений - в нем:
    измерение - изделие (тип - ссылка на справочник 1)
    измерение - состовляющее(тип - ссылка на справочник 1)

    похоже? или я что-то недопонял?

    и где можно найти методички??? дайте ссылку пожалуйста... а то я все на мертвые ссылки нарываюсь
  12. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.840
    Симпатии:
    5
    Баллы:
    29
    Нафига РС?

    Посмотрите в УПП, в крайнем случае - купите методичку!
    Все давно реализовано.
  13. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    0
    Баллы:
    26
    Потому что проще сделать через РС, аналогично "Комплектующим" в УТ. Тут ситуация именно такая. Делать полноценные спецификации в данной ситуации - это изврат. Делать ТЧ - проще, но хуже в части удаления объектов.
  14. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.840
    Симпатии:
    5
    Баллы:
    29
    Несогласен.

    Удаление объектов в любом случае вызовет гемор!

    Только в случае справочника - это будет наглядно, к чему приведет, а в случае РС - что хотим, то и удаляем и не видим, что к чему.

    Да и разбор удобнее делать, и проектировать, и просто пользоваться...
  15. TopicStarter Overlay
    Lex09
    Offline

    Lex09

    Регистрация:
    2 фев 2009
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Спасибо, что откликнулись на мою проблему.

    Но вот, например, BabySG от 10.2.2009, 19:14: "Но эта краска относиться именно к двери, а не к окрашенной планке"

    А еще эта краска относится к окну, а завтра еще будет относится и к крыше (которая относится к дому).

    В любом случае, все ваши ответы для меня полезны в том смысле, что натолкнули меня на целый ряд идей, которые еще нужно проверять. А когда сделаю конфигурацию (а я ее сделаю), предоставлю на ваш суд. Если еще эта тема останется, поскольку до результата далеко, а эта работа для меня не является основной.


    Все в мире устроено целесообразно: мое невежество влечет за собой ваши толковые разъяснения.
  16. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    0
    Баллы:
    26
    Делаем измерение ведущим. Удалили - значит так и надо.
  17. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.840
    Симпатии:
    5
    Баллы:
    29
    Гемор в том плане, что пользователи ручками могут подправить, е видя результатов свои действий :)
  18. KiberMath
    Offline

    KiberMath Студент в 1С

    Регистрация:
    22 сен 2008
    Сообщения:
    61
    Симпатии:
    0
    Баллы:
    26
    РАсскажите где можно купить/скачать методички с 1с-овских курсов??? или они даются только после проходения курсов???
    :unsure:
  19. BabySG
    Offline

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

    Регистрация:
    10 июн 2007
    Сообщения:
    11.840
    Симпатии:
    5
    Баллы:
    29
    Купить можно в любом франче

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