Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
18 Дек 2017, 00:43
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: ЭлементыФормы.ПолеТабличногоДокумента  (Прочитано 32070 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн nenoob

  • *
  • Сообщений: 36
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-02-20
  • Сайт: 
  • Профессия: Ученик 1С
Я только-только принялся за 1С, так что не судите строго :)

Процедура КнопкаВыполнитьНажатие(Кнопка)
   
   ТабДок = Новый ТабличныйДокумент;
     
   Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |   ЛицевыеСчета.Квартиросъемщик
   |ИЗ
   |   Справочник.ЛицевыеСчета КАК ЛицевыеСчета";
   
   Результат = Запрос.Выполнить();
   
   ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
   ТабДок.Очистить();


   Макет = ПолучитьМакет("Макет");
   ОбластьЛицевыеСчета = Макет.ПолучитьОбласть("ЛицевыеСчета");
   
   ВыборкаЛицевыеСчета = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
   Выборкалицевыесчета.Следующий();
   ОбластьлицевыеСчета.Параметры.Заполнить(ВыборкаЛицевыесчета);
     
КонецПроцедуры




Вот такой вот запрос, делаю по примеру, так синтаксических ошибок нет, но при выполнении

Код

{Форма.Форма(17)}: Поле объекта не обнаружено (ПолеТабличногоДокумента)
   ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;



Хотя в Примере просто написано
ТабДок = ЭлентыФормы.ПолеТабличногоДокумент;

Получаю вот такую ерунду.
Код

{Форма.Форма(28,11)}: Переменная не определена (ЭлентыФормы)
   ТабДок = <<?>>ЭлентыФормы.ПолеТабличногоДокумент;


Подскажите в чем ошибка?


Оффлайн sergejK74

  • *****
  • Сообщений: 1093
  • РЕПУТАЦИЯ: 458
  • КПД: 42%
  • Всегда готов помочь!
  • Регистрация: 2011-07-08
  • Сайт: 
  • Профессия: Ученик 1С
ЭлементыФормы в 8.1 (обычные формы), в 8.2 (управляемые формы) просто Элементы
Кнопочка Спасибо - слева!

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
У Вас опечатка в слове ЭлементыФормы:
Цитировать
ТабДок = <<?>>ЭлентыФормы
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн nenoob

  • *
  • Сообщений: 36
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-02-20
  • Сайт: 
  • Профессия: Ученик 1С
Опечатку устранил, результат тот же, версия 8.1, посоветовали почитать ЕСИС, нашел читаю, но что-то все равно ни чего не выходит.

Можете привести простой небольшой запрос с выводом в таблицу, чтобы можно было у себя попробовать и понять механизм. Такое ощущение что ответ на поверхности, но вот что-то ни как до него не дойду.

Суть такая мне нужно составить Запрос, чтобы в конечном счете я мог просмотреть результат, скопировать, в общем любой способ привести результат к читаемому виду.

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
ПолеТабличногоДокумента - это на форме должен быть элемент управления ПолеТабличногоДокумента, с таким же именем.

Только Вы либо создаете новый ТабДок
 ТабДок = Новый ТабличныйДокумент;
либо привязываете к существующему:
ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
во втором случае как раз и должен быть на форме элемент управления.

Приводите примеры, что именно не выходит, будем разбираться.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн nenoob

  • *
  • Сообщений: 36
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-02-20
  • Сайт: 
  • Профессия: Ученик 1С
ТабДок = Новый ТабличныйДокумент;
    // ТабДок у меня Создан

ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
     // после установки "точки" в вариантах выбора нет "ПолеТабличногоДокумента".

Вы меня конечно извините, но я что-то вообще не пойму что нужно сделать чтобы вывести результат.

Запрос есть, далее, РезультатЗапроса, есть, далее нужно вывести его в таблицу, как это сделать не понимаю.

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
1. Хотим вывести результат в табдок, открывающийся новым окном
ТабДок = Новый ТабличныйДокумент;
// Далее запрос, получение макета, вывод данных в макет, вывод ТабДока.
Запрос=...;
Результат=Запрос.Выполнить();

Макет = ПолучитьМакет("Макет");
   ОбластьЛицевыеСчета = Макет.ПолучитьОбласть("ЛицевыеСчета");
  
   ВыборкаЛицевыеСчета = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
   Пока Выборкалицевыесчета.Следующий() цикл
        ОбластьлицевыеСчета.Параметры.Заполнить(ВыборкаЛицевыесчета);
        ТабДок.Вывести(ОбластьлицевыеСчета);
   КонецЦикла;

ТабДок.Показать();

2. Хотим вывести результат в табдок, УЖЕ размещенный на нашей форме.
 // НЕ НАДО ЗДЕСЬ СТРОКУ ТабДок = Новый ТабличныйДокумент; 
// Запрос, получение макета, привязка ТабДок к СУЩЕСТВУЮЩЕМУ НА ФОРМЕ табдоку, вывод данных в макет.
Запрос=...;
Результат=Запрос.Выполнить();
ТабДок=ЭлементыФормы.ПолеТабличногоДокумента; // КОТОРЫЙ УЖЕ РАЗМЕЩЕН НА ФОРМЕ
Макет = ПолучитьМакет("Макет");
   ОбластьЛицевыеСчета = Макет.ПолучитьОбласть("ЛицевыеСчета");
  
   ВыборкаЛицевыеСчета = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
   Пока Выборкалицевыесчета.Следующий() цикл
        ОбластьлицевыеСчета.Параметры.Заполнить(ВыборкаЛицевыесчета);
        ТабДок.Вывести(ОбластьлицевыеСчета);
   КонецЦикла;
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
Кстати, а зачем Вам ОбходРезультатаЗапроса.ПоГруппировкам? В Вашем запросе оно не надо. Используйте просто Выбрать(), без параметров внутри.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн nenoob

  • *
  • Сообщений: 36
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-02-20
  • Сайт: 
  • Профессия: Ученик 1С
При выполнении Первого варианта
{Форма.Форма(35)}: Ошибка при вызове метода контекста (ПолучитьМакет): Недопустимое значение параметра (параметр номер '1')
Макет = ПолучитьМакет("Макет");
по причине:
Недопустимое значение параметра (параметр номер '1')

При выполнении Второго
{Форма.Форма(14)}: Поле объекта не обнаружено (ПолеТабличногоДокумента)
ТабДок=ЭлементыФормы.ПолеТабличногоДокумента; // КОТОРЫЙ УЖЕ РАЗМЕЩЕН НА ФОРМЕ

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
1. у Вашего объекта (обработки, документа, справочника... не знаю, где вы там все это пишете) должен быть Макет, который и получается по имени "Макет". Если его нет, то и получать нечего.
2. Вы меня совсем не "читаете"? я уже капс-локом Вам комментарии выделила. НУ НЕ ОБНАРУЖЕНО ПолеТабличногоДокумента на форме. Для второго способа НА ФОРМЕ ДОЛЖЕН БЫТЬ РАСПОЛОЖЕН ЭЛЕМЕНТ УПРАВЛЕНИЯ ПОЛЕ ТАБЛИЧНОГО ДОКУМЕНТА (с таким же именем)
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
133 Сообщений
ilyay ilyay
63 Сообщений
AIFrame
61 Сообщений
alex0402
50 Сообщений
andron81_81
44 Сообщений
oleg-x
41 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
27 Сообщений
alexandr_ll
23 Сообщений

* Кто онлайн

  • Точка Гостей: 195
  • Точка Скрытых: 0
  • Точка Пользователей: 5
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal