7.7 Выбрать значение справочников из документа

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

  1. TopicStarter Overlay
    Shavminator
    Offline

    Shavminator

    Регистрация:
    26 дек 2007
    Сообщения:
    25
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте
    Создал новую базу, в ней пока всего один документ «ПлатежноеПоручение».
    там при выборе Контрагента, нужно выбрать значение в следующих реквизитах.
    ИмяКонтрагента, ИННКонтрагента, СчетКонтрагента, его Банк, АдресБанка, БИК и КоррСчет.
    Реквизит СчетКонтрагента находится в Справочник. РасчетныеСчета, а путь к Банк, АдресБанка, БИК и КоррСчет лежит через Справочник. РасчетныеСчета в Справочник.Банки.

    Вопрос. Имя и ИНН я смог взять, а вот дальше по структуре уже не знаю как.
    При работе процедуры появляется ошибка
    «Поле агрегатного объекта не обнаружено (БанкКонтрагента)»
    Как вообще, такие проблемы решаются?

    А структура выбора такая:
    Справочник.Контрагент
    Наименование
    ИНН
    РасчетныйСчет – это уже элемент выбора Справочник.РасчетныеСчета
    НомерСчета
    Банк – это тоже элемент выбора Справочник.Банки
    Наименование
    БИК
    КоррСчет
    Адрес

    Код такой.
    Код:
    Процедура ПриВыбореПолучателя()
    Конт=СоздатьОбъект("Справочник.Контрагенты");
    Конт.ИспользоватьВладельца();
    Конт.НайтиЭлемент(Получатель);
    Если Конт.Выбран()=1 Тогда 
    ИмяКонт=Конт.Наименование; 
    ИННКонт=Конт.ИНН;
    БанкКонт=Конт.БанкКонтрагента.Наименование;
    СчетКонт=Конт.РасчетныеСчета.Номер;
    БикКонт=Конт.БИК;
    КоррСчетКонт=Конт.КоррСчет;
    Форма.РеквизитыКонтрагента.Заголовок("Получатель: "+ИмяКонт+РазделительСтрок+"ИНН: "+ИННКонт);
    КонецЕсли;
    КонецПроцедуры
    
    

    Вложения:

  2. Stado_adama
    Offline

    Stado_adama Модераторы Модератор

    Регистрация:
    27 ноя 2007
    Сообщения:
    1.086
    Симпатии:
    0
    Баллы:
    26
    у тебя в справочники контрагентов нет рекизита БанкКонтрагента...
    Конт.Банк.Наименование пиши...
  3. TopicStarter Overlay
    Shavminator
    Offline

    Shavminator

    Регистрация:
    26 дек 2007
    Сообщения:
    25
    Симпатии:
    0
    Баллы:
    1
    Извините меня ребята, по ошибки совсем другую базу выложил. :unsure:
    Вот это, нужная.

    Вложения:

    • Buh.rar
      Размер файла:
      55,1 КБ
      Просмотров:
      43
  4. Stado_adama
    Offline

    Stado_adama Модераторы Модератор

    Регистрация:
    27 ноя 2007
    Сообщения:
    1.086
    Симпатии:
    0
    Баллы:
    26
    а код-то ты по ошибке какой выложил? я тебе глядя на твой код отвечал...
  5. TopicStarter Overlay
    Shavminator
    Offline

    Shavminator

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

    Реквизит БанкКонтрагента находится в Справочник.Банки а выбирается он из Справочник.РасчетныеСчета, а РасчетныйСчет выбирается из справочника контрагенты.

    помоиму я структуру не понятно написал, шас исправлю.

    Код:
    Получатель - это реквизит выбора контрагента из Документ.ПлатежноеПоручение
    Справочник.Контрагент
    Наименование
    ИНН
    РасчетныйСчет – а это элемент выбора Справочник.РасчетныеСчета из Справочник.Контрагенты
    НомерСчета
    Банк – это элемент выбора Справочник.Банки из Справочник.РасчетныеСчета
    Наименование
    БИК
    КоррСчет
    Адрес
    
    
    
    наверное так будет понятнее
  6. TopicStarter Overlay
    Shavminator
    Offline

    Shavminator

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

    Код:
    Процедура ПриВыбореПолучателя()
    Конт=СоздатьОбъект("Справочник.Контрагенты");
    Конт.НайтиЭлемент(Получатель);
    Если Конт.Выбран()=1 Тогда 
    ИмяКонт=Конт.Наименование; 
    ИННКонт=Конт.ИНН;
    СчетКонт=Конт.РасчетныйСчет.Номер;
    БанкКонт=Конт.РасчетныйСчет.БанкКонтрагента.Наименование;
    БикКонт=Конт.РасчетныйСчет.БанкКонтрагента.БИК;
    КоррСчетКонт=Конт.РасчетныйСчет.БанкКонтрагента.КоррСчет;
    ТекстовоеПредставленияСчета="Получатель: "+ИмяКонт+РазделительСтрок+"ИНН: " +
    ИННКонт+РазделительСтрок+"Р/с: "+СчетКонт+РазделительСтрок +
    "Банк: "+БанкКонт+РазделительСтрок+"К/с: "+КоррСчетКонт;
    Форма.РеквизитыКонтрагента.Заголовок(ТекстовоеПредставленияСчета);
    
    КонецЕсли;
    КонецПроцедуры
    
    
    

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