8.х Заполнение табличной части

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

  1. TopicStarter Overlay
    Dem0lisher
    Offline

    Dem0lisher Профессионал в 1С

    Регистрация:
    4 авг 2009
    Сообщения:
    1.026
    Симпатии:
    51
    Баллы:
    54
    Здравствуйте!
    Есть Документ в Табличной части "ТЧ" реквизиты: номенклатура, ед.Измерения, кол-во.
    Надо после ввода в ТЧ номенклатурной позиции автоматически заполнить поле "ЕдИзм". ЕдИзм есть как в справочнике Единицы измерения, так и в справочнике Номенклатура..
    Просветите пожалуйста
  2. gosn1ck
    Offline

    gosn1ck Опытный в 1С

    Регистрация:
    13 авг 2009
    Сообщения:
    1.329
    Симпатии:
    1
    Баллы:
    26
    Радченко М.Г. 1С Предприятие 8.1. Практическое пособие разработчика. Примеры и типовые приемы
  3. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.647
    Симпатии:
    948
    Баллы:
    204
    Ну вообще в типовых конфах. Есть справочник Ед измерения, есть справочник Номенклатура. У номенклатуры есть реквизит ед измерения ссылающаяся на этот справочник.

    И при изменении номенклатуры делается что то вроде

    Код:
    ТекДанные=ЭлементыФормы.ТЧНоменклатура.ТекущиеДанные;
    ТекДанные.ЕдИзмерения=ТекДанные.Номенклатура.ЕдИзмерения;
    
  4. lazy
    Offline

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

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Обрабатывайте событие табличной части "ПриОкончанииРедактирования". В самом примитивном случае достаточно конструкции вида:
    Код:
    Процедура ТабличнаяЧастьПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
    Если НЕ Элемент.ТекущаяСтрока.Номенклатура.Пустая() Тогда
    Элемент.ТекущаяСтрока.ЕдИзм = Элемент.ТекущаяСтрока.Номенклатура.ЕдИзм;
    КонецЕсли;
    КонецПроцедуры
    
    
    Разумеется, пример очень грубый, более корректно тут было бы подумать, какие еще данные из базы потребуются для заполнения табличной части и составить соответствующий запрос...
  5. TopicStarter Overlay
    Dem0lisher
    Offline

    Dem0lisher Профессионал в 1С

    Регистрация:
    4 авг 2009
    Сообщения:
    1.026
    Симпатии:
    51
    Баллы:
    54
    Спасибо, все понял! Сделал, как советует Draco, хотя вариант с проверкой на пустое значение тоже интересен!
  6. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Не "тоже интересен", а сделайте так как написал lazy. Draco привел лишь основную часть кода без проверок, у lazy пример более полный. Напишите только то что привел вам Draco - получите в определенных случаях сообщение об ошибке.
  7. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.647
    Симпатии:
    948
    Баллы:
    204
    Правильно ребята говорят. Я написал с поправкой "что то вроде"
  8. x_under
    Offline

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

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    А ничего не произойдет и без проверок + во всех типовых просто при изменении номенклатуры запихивается значение из справочника без проверок и остального.
    Ну подставится пустая ссылка номенклатуры, ну и соответственно пустая единица измерения, а смысл нагромождать проверки?

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