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

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

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

Оффлайн neek666

  • *
  • Сообщений: 19
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-22
  • Сайт: 
  • Профессия: Программист 8.1
Всем привет! У меня небольшая проблемка. Я тут сейчас привёл вам код программы (Ниже). Код достаточно простой. Создаю новую "Переменную" типа ТалицаЗначений. Не могу создать колонки в этой таблице.

   ТЗ_Массив_Временный = новый ТаблицаЗначений;
   ТипЧисла = Новый КвалификаторыЧисла(10, 2);
   КС = Новый КвалификаторыСтроки(20);
   Массив = новый Массив;
   Массив.Добавить(Тип("Строка"));
   ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС);
   Массив.Очистить();
   Массив.Добавить(Тип("Число"));
   ОписаниеТипаЧисло = Новый ОписаниеТипов(Массив, , ,ТипЧисла);
   
   ВыборкаОтрабДней = РегистрыНакопления.inform_СведенияОбОтработанныхДнях.Выбрать(НачалоМесяца(ПериодРегистрации), КонецМесяца(ПериодРегистрации));
   Пока ВыборкаОтрабДней.Следующий() цикл
      Отработано = 0;
      Выборка_1 = РегистрыНакопления.inform_СведенияОбОтработанныхДнях.Выбрать(НачалоМесяца(ПериодРегистрации), КонецМесяца(ПериодРегистрации));
      Пока Выборка_1.Следующий() цикл
         Если Выборка_1.Наименование = ВыборкаОтрабДней.Наименование тогда
            Отработано = Отработано + Выборка_1.Отработано;
         КонецЕсли;
      КонецЦикла;
      
      ТЗ_Массив_Временный.Колонки.Добавить("Сотрудник", ОписаниеТиповС, "Сотрудник");
      ТЗ_Массив_Временный.Колонки.Добавить("Отработано", ОписаниеТипаЧисло, "Отработано");
      
      НоваяСтрока = ТЗ_Массив_Временный.Добавить();
      НоваяСтрока.Сотрудник  = ВыборкаОтрабДней.Наименование;
      НоваяСтрока.Отработано = Отработано;
   КонецЦикла;



Методом "тыка" я определил, что колонка "Отработано" создается нормально, без проблем. А вот колонка "Сотрудник" ни как не хочет создаваться, капризничает. Подскажите пожалуйста, в чем дело?


Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
Методом "тыка" я определил, что колонка "Отработано" создается нормально, без проблем.
Что за метод тыка такой?
Цитировать
капризничает
И мы должны телепатировать и сказать что же это она "капризничает"?

Текст ошибки или что именно не получается?
У меня данный код который относится к таблице значений корректно отрабатывает.

Оффлайн evialen

  • *
  • Сообщений: 35
  • РЕПУТАЦИЯ: 7
  • КПД: 20%
  • Регистрация: 2011-10-21
  • Сайт: 
  • Профессия: Программист 1С
эээээм, а не лучше здесь через запрос обойти всё енто дело?

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2857
  • РЕПУТАЦИЯ: 546
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Ну как ты в цикле то в одну и ту же ТаблицуЗначений добавляешь колонки???
Вынеси это из цикла:
     ТЗ_Массив_Временный.Колонки.Добавить("Сотрудник", ОписаниеТиповС, "Сотрудник");
     ТЗ_Массив_Временный.Колонки.Добавить("Отработано", ОписаниеТипаЧисло, "Отработано");
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2857
  • РЕПУТАЦИЯ: 546
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
И радуйся))))
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2857
  • РЕПУТАЦИЯ: 546
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Вот пример:
ТЗ_Массив_Временный = новый ТаблицаЗначений;
   ТипЧисла = Новый КвалификаторыЧисла(10, 2);
   КС = Новый КвалификаторыСтроки(20);
   Массив = новый Массив;
   Массив.Добавить(Тип("Строка"));
   ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС);
   Массив.Очистить();
   Массив.Добавить(Тип("Число"));
   ОписаниеТипаЧисло = Новый ОписаниеТипов(Массив, , ,ТипЧисла);

    ТЗ_Массив_Временный.Колонки.Добавить("Сотрудник", ОписаниеТиповС, "Сотрудник");
    ТЗ_Массив_Временный.Колонки.Добавить("Отработано", ОписаниеТипаЧисло, "Отработано");
     
   ВыборкаОтрабДней = РегистрыНакопления.inform_СведенияОбОтработанныхДнях.Выбрать(НачалоМесяца(ПериодРегистрации), КонецМесяца(ПериодРегистрации));
   Пока ВыборкаОтрабДней.Следующий() цикл
      Отработано = 0;
      Выборка_1 = РегистрыНакопления.inform_СведенияОбОтработанныхДнях.Выбрать(НачалоМесяца(ПериодРегистрации), КонецМесяца(ПериодРегистрации));
      Пока Выборка_1.Следующий() цикл
         Если Выборка_1.Наименование = ВыборкаОтрабДней.Наименование тогда
            Отработано = Отработано + Выборка_1.Отработано;
         КонецЕсли;
      КонецЦикла;
     
      НоваяСтрока = ТЗ_Массив_Временный.Добавить();
      НоваяСтрока.Сотрудник  = ВыборкаОтрабДней.Наименование;
      НоваяСтрока.Отработано = Отработано;
   КонецЦикла;
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!


Теги:
 


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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
154 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
46 Сообщений
andron81_81
44 Сообщений
oleg-x
44 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
BuhRust
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 138
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal