Проблема с кодом

Тема в разделе "1C и всё что с ней связано", создана пользователем MasterSG, 26 авг 2010.

  1. MasterSG

    MasterSG Гость

    Доброго времени суток.

    1с 7.7

    Проблема такова:

    |Свойство = Справочник.Контрагенты.ТекущийЭлемент.ОсновноеСвойство.ЗначениеСвойства;

    Взятие переменной значения свойства из справочника Контрагенты.

    |Договор = Справочник.Контрагенты.ТекущийЭлемент.ОсновнойДоговор."значение";

    Не могу найти как обратиться к справочнику. пишет:

    Договор = Справочник.Контрагенты.ТекущийЭлемент.ОсновнойДоговор. <<?>> "значение";
    Запрос[5] : Неверно заданный путь ' "значение" '

    Подскажите,пожалуйста, какой должен быть правельный индификатор? :)
     
  2. Hryv

    Hryv Гость

    а
    |Договор = Справочник.Контрагенты.ОсновнойДоговор;
    не пробовал?
     
  3. MasterSG

    MasterSG Гость

    Используются переменные: Запрос, ТекстЗапроса, Таб.

    Столбцы таблицы заполняются так: <Запрос.Свойство>.

    И столбец с договором должен заполняться <Запрос."значение">

    Если нужно - приведу текст процедуры.
     
  4. Hryv

    Hryv Гость

    Интересно где люди такую траву берут :)

    Ты хоть сам понял что написал?
    Тем более что логической связи между двумя сообщениями не наблюдается
     
  5. MasterSG

    MasterSG Гость

    Сори :)

    Смысл в том:
    Есть разработка которая формирует весь справочник контрагентов в xls файл,

    Процедура такова:

    Код ( (Unknown Language)):
    Процедура Сформировать()
    Перем Запрос, ТекстЗапроса, Таб;
    //Создание объекта типа Запрос

    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "//{{ЗАПРОС(Сформировать)

    |Контрагенты = Справочник.Контрагенты.ТекущийЭлемент;
    |Код = Справочник.Контрагенты.ТекущийЭлемент.Код;
    |Свойство = Справочник.Контрагенты.ТекущийЭлемент.ОсновноеСвойство.ЗначениеСвойства;
    |Договор = Справочник.Контрагенты.ТекущийЭлемент.ОсновнойДоговор."значение";
    //|Группировка Контрагенты без групп;
    |Группировка Контрагенты все;
    |"//}}ЗАПРОС

    ;
    // Если ошибка в запросе, то выход из процедуры

    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
    Возврат;
    КонецЕсли;

    // Подготовка к заполнению выходных форм данными запроса

    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("Сформировать");
    // Заполнение полей "Заголовок"

    Таб.ВывестиСекцию("Заголовок");
    Состояние("Заполнение выходной таблицы...");
    Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
    н=0;
    Пока Запрос.Группировка(1) = 1 Цикл
    // Заполнение полей Контрагенты
    н=н+1;
    //Таб.ВывестиСекцию("Контрагенты");

    Если Запрос.Контрагенты.ЭтоГруппа()=1 Тогда
    Таб.ВывестиСекцию("Контрагенты1");
    Иначе
    Таб.ВывестиСекцию("Контрагенты");
    КонецЕсли;
    КонецЦикла;
    // Вывод заполненной формы

    Таб.ТолькоПросмотр(1);
    Таб.Показать("Сформировать", "");
    КонецПроцедуры
    Эта процедура формировала таблицу с тремя столбцами:
    код,контрагент,свойство.

    Мне нужно добавить четвертый столбец с договором, а я не могу найти переменную "значение" для строки:
    |Договор = Справочник.Контрагенты.ТекущийЭлемент.ОсновнойДоговор."значение";
     
  6. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    ОсновнойДоговор - это и есть значение, ТекущийЭлеент используется исключительно при обращении к элементу справочника напрямую, в случае обращения к ревизиту достаточно Справочник.ИмяСправочника.названиеРеквизита;

    р.с. - если не очень силен в запросах - погоняй конструктор запросов, посмотри примеры синтаксиса.
     
  7. Hryv

    Hryv Гость

    а кто сказал, что она есть?

    если уж тебе надо Запрос."значение", то тогда
    |"значение" = Справочник.Контрагенты.ОсновнойДоговор;
    или
    |"значение" = Справочник.Контрагенты.ОсновнойДоговор.Какойтоещереквизит;
    только имя переменной с кавычками быть не может

    А если просто надо вывести в таблицу основной договор, то зачем вообще запрос менять?
    Используй Запрос.Контрагенты.ОсновнойДоговор

    Короче, учите матчасть
    :)
     
Загрузка...
Похожие Темы - Проблема кодом
  1. programmer8329
    Ответов:
    12
    Просмотров:
    3.500
  2. programmer8329
    Ответов:
    0
    Просмотров:
    1.735
  3. Renat11111
    Ответов:
    5
    Просмотров:
    3.141
  4. AgniXRudra
    Ответов:
    1
    Просмотров:
    39
  5. Zloikaktus
    Ответов:
    0
    Просмотров:
    18

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