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

Автор Тема: (ТаблицаЗначений)  (Прочитано 627 раз)

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

Оффлайн GanG031

  • ***
  • Сообщений: 137
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-28
  • Сайт: 
  • Профессия: Ученик 1С
Доброго времени суток! Столкнулся вот с чем: в синтакс помошнике по таблице значений написано, что элементами тз являются ее строки, и обход тз доступен с помощью цикла для каждого из. Вот мой код:

Таблица = Новый ТаблицаЗначений;
   Таблица.Колонки.Добавить("ДеньНедели", Новый ОписаниеТипов("Строка"));
   Таблица.Колонки.Добавить("Погода");
   
   Строка = Таблица.Добавить();
   Строка.ДеньНедели = "Вторник";
   Строка.Погода = "Плохая";
   
   Строка = Таблица.Добавить();
   Строка.ДеньНедели = "Среда";
   Строка.Погода = "Нормально";
   
   Для каждого Строка Из Таблица Цикл
   
      Сообщить(Строка.ДеньНедели);
   
   КонецЦикла;



Все выводит верно, но если написать вот так: Для кадого стр Из Таблица....
То выводит два раза "Среда". Не понятен алгоритм действий в этом случае, вроде как должны должны обходиться строки ТЗ, а по факту два раза выводится последняя строчка. Подскажите какая тут взаимосвязь между стр и Строка. Заранее спасибо!


Оффлайн Hedinnk

  • **
  • Сообщений: 84
  • РЕПУТАЦИЯ: 14
  • КПД: 17%
  • Регистрация: 2016-03-04
  • Сайт: 
  • Профессия: Программист 1С
Вы поменяли имя переменной в которую помещается строка из таблицы, но имя переменной из которой выводятся данные в сообщение не изменили. В этом случае у вас сообщает данные последнего значения переменной Строка.
На форуме есть волшебная кнопка "Сказать СПАСИБО"

Оффлайн GanG031

  • ***
  • Сообщений: 137
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-28
  • Сайт: 
  • Профессия: Ученик 1С
Спасибо большое! Подскажите по поводу такого вопроса: вот мой код:

&НаКлиенте
Процедура ТаблицаЗначений(Команда)

   ТаблицаЗначенийНаСервере();
   
КонецПроцедуры


&НаСервере
Процедура ТаблицаЗначенийНаСервере()

   ТаблицаЗначений = Новый ТаблицаЗначений;
   ТаблицаЗначений.Колонки.Добавить("ДеньНедели", Новый ОписаниеТипов("Строка"));
   ТаблицаЗначений.Колонки.Добавить("Погода");
   ТаблицаЗначений.Колонки.Добавить("Сумма");
   ТаблицаЗначений.Колонки.Добавить("Месяц");
   
   Строка = ТаблицаЗначений.Добавить();
   Строка.ДеньНедели = "Вторник";
   Строка.Погода = "Плохая";
   Строка.Сумма = 1000;
   Строка.Месяц = "Январь";
   
   Строка = ТаблицаЗначений.Добавить();
   Строка.ДеньНедели = "Среда";
   Строка.Погода = "Нормально";
   СТрока.Сумма = 2000;
   Строка.Месяц = "Декабрь";
   
   
   Строка = ТаблицаЗначений.Добавить();
   Строка.ДеньНедели = "Среда";
   Строка.Погода = "Пойдет";
   СТрока.Сумма = 5500;
   Строка.Месяц = "Декабрь";


   //Для каждого Строка Из Таблица Цикл
   //
   //   Сообщить(Строка.ДеньНедели);
   //
   //КонецЦикла;
ТаблицаЗначений.Свернуть("Месяц", "Сумма");

ЗначениеВДанныеФормы(ТаблицаЗначений, ТаблицаЗн);
   
КонецПроцедуры


На форме создал таблицу значений:

Но выдает вот такую ошибку:
{Обработка.Эксперименты.Форма.Форма.Форма(78)}: Ошибка при вызове метода контекста (ЗначениеВДанныеФормы)
ЗначениеВДанныеФормы(ТаблицаЗначений, ТаблицаЗн);
по причине:
Недопустимое значение параметра (параметр номер '2')
Недопустимое значение параметра (параметр номер '2')

Не могу понять, а чем тут ошибка? Ведь ТаблицаЗн это и есть наш реквизит на форме

Оффлайн Hedinnk

  • **
  • Сообщений: 84
  • РЕПУТАЦИЯ: 14
  • КПД: 17%
  • Регистрация: 2016-03-04
  • Сайт: 
  • Профессия: Программист 1С

&НаСервере
Процедура ТаблицаЗначенийНаСервере()

...

ЗначениеВДанныеФормы(ТаблицаЗначений, ТаблицаЗн);
   
КонецПроцедуры
[/b]
Попробуйте вот так:
ЗначениеВДанныеФормы(ТаблицаЗначений, "ТаблицаЗн");
На форуме есть волшебная кнопка "Сказать СПАСИБО"


Теги:
 


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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
143 Сообщений
alex0402
112 Сообщений
Norfolk
51 Сообщений
LexaK
45 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
друган
21 Сообщений
AsadRoman
20 Сообщений
alexandr_ll
19 Сообщений
Константин5825
18 Сообщений
MrLvovsky MrLvovsky
16 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal