8.х Отбор справочника по реквизиту документа 1Сv8?

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Дед Мастдай, 23 фев 2014.

  1. TopicStarter Overlay
    Дед Мастдай
    Offline

    Дед Мастдай

    Регистрация:
    22 фев 2014
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    День добрый
    пытаюсь программировать на 1С. пару недель

    как получить отбор или выборка (пока затрудняюсь в терминологии нужен фильтр) справочника по реквизиту документа

    Детали:

    имеется 2 справочника

    1 Поставщики – реквизиты только стандартные
    2 Номенклатура - реквизиты стандартные + Поставщик (тип Справочник.Поставщики) т.е получается каждая номенклатура привязана к конкретному поставщику

    Пример:
    Наименование | Поставщик
    ------------------------------------------
    Хлеб | Народный Хлеб
    Мыло | Унилевер
    Булочка | Народный Хлеб

    Итд.

    Документ
    Док1 –
    - реквизиты стандартные + Поставщик (тип Справочник.Поставщики)
    - Табличная часть
    Реквизиты
    Номенклатура : тип Справочник.Номенклатура
    Количество : тип число

    А теперь вопрос
    Как можно сделать так чтоб при выборе или при изменении поставщика на Форме Документа, в табличной Части в поле списка Номенклатура появлялись Наименование только данного поставщика.

    Пример:
    Док1. Поставщики = Народный Хлеб
    Табличная часть
    Наименование | Поставщик
    ------------------------------------------
    Хлеб | Народный Хлеб
    Булочка | Народный Хлеб


    пробовал варианты с
    ПриИзменении()
    НачалоВыбора()

    Но так как &НаКлиенте я не смог получить к объекту Справочник а при &НаСервере не смог передать Обьект.Поставшик и я не уверен что копаю в ту сторону

    Выбран Поставщик, Золотой Хлеб // обведен зеленным
    //В справочнике номенклатура только 3 записи

    Должен остаться только
    Хлеб Белый
    Хлеб Ржаной
    Супер мыло лишнее //обведен красным

    [​IMG]

    Вложения:

    • pix.JPG
      pix.JPG
      Размер файла:
      32,3 КБ
      Просмотров:
      10
    Последнее редактирование: 23 фев 2014
  2. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    как вариант - сделать справочник номеналатуры подчиненным справочнику поставщиков и на форме сделать связь по владельцу.

    если так не хочется - то в чем проблема передать поставщика на сервер?
  3. TopicStarter Overlay
    Дед Мастдай
    Offline

    Дед Мастдай

    Регистрация:
    22 фев 2014
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    я порыл эти варианты
    подчиненный справочник + связь по владельцу.
    но смог добиться желаемого

    в чем проблема передать поставщика на сервер?
    я так и не понял как из модуля формы обращаться к объектам справочник итд



    [​IMG]
    [​IMG] [​IMG]
    я пытаюсь
    при выборе поставщика в форме документа //обведен синим
    в табличной части [убрать|отфильтровать|скрыть|на худой конец убрать в конец списка] товары не связанные с данным поставщиком //обведен красным.

    Вложения:

    • Sup.JPG
      Sup.JPG
      Размер файла:
      26,1 КБ
      Просмотров:
      6
    • Doc.JPG
      Doc.JPG
      Размер файла:
      38,2 КБ
      Просмотров:
      7
    • Items.JPG
      Items.JPG
      Размер файла:
      34,2 КБ
      Просмотров:
      6
  4. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    думаю лучший вариант, это сделать через подчиненный справочник. Во-первых, вам не придется вбивать поставщика в элементы справочника Номенклатура. Во-вторых, настроить отбор (фильтр, как угодно обзовите), куда проще, как вам уже подсказали. Что у вас там не получилось в таком варианте?
  5. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    из клиентской процедуры - никак не обратиться к справочникам и т.д., но получить список со ссылками - не проблема - нужно просто сделать в том же модуле серверную функцию. в случае, если при этом все данные формы не нужны (конкретно в вашем случае это так) - функцию делать без контекста. типа такого:
    Код:
    &НаСервереБезКонтекста
    Функция ПолучитьНоменклатуруПоставщика(Поставщик)
      СписокНоменклатуры = Новый СписокЗначений;
      // тут заполняем список как нужно
      // ..
      // ..
      Возврат СписокНоменклатуры;
    КонецФункции
    внутри нее уже можно обращаться к любым менеджерам конфигурации
  6. TopicStarter Overlay
    Дед Мастдай
    Offline

    Дед Мастдай

    Регистрация:
    22 фев 2014
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    В общем разобрался и вроде получилось.

    Оказалось банально просто. Даже писать ничего не пришлось. Если кому вдруг понадобится Просто в ТЧ документа в моем случае поле Наименование в свойствах

    «СвязиПараметровВыбора» прописал вернее выбрал «Отбор.Поставщик(Объект.Поставщик)»

    Конечно проверялся только на 8.3 не знаю как на других если что Сообщите

    [​IMG]

    Вложения:

    • Finita.JPG
      Finita.JPG
      Размер файла:
      23,5 КБ
      Просмотров:
      3

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