Вход | Регистрация


1С:Предприятие ::

Метки:

Вопрос по работе с Таблицей Значений

Я
   LAV
26.08.04 - 19:22
Почему после сортировки Таблицы Значений, все значения становятся пустыми, кто нибудь подскажет?

ТЗ = СоздатьОбъект("ТаблицаЗначений");
ТЗ.НоваяКолонка("Дата",,,,,,,);
ТЗ.НОваяКолонка("Документ",,,,,,,);
ТЗ.НОваяКолонка("Количество",,,,,,,);
ТЗ.НОваяКолонка("Цена",,,,,,,);
//Тут цикл 

{ ТЗ.НоваяСтрока(сч_);
  ТЗ.УстановитьЗначение(сч_,"Дата",Спр.Документ.ДатаДок);
  ТЗ.УстановитьЗначение(сч_,"Документ",Спр.Документ);
  ТЗ.УстановитьЗначение(сч_,"Цена",Спр.Цена);
  ТЗ.УстановитьЗначение(сч_,"Количество",Спр.Количество);
}
ТЗ_.Сортировать("+Документ",1);
// После этого таблица пустая, хотя до этого нет!
Подскажите что не так ...
 
  Рекламное место пустует
   Fеникс
 
1 - 26.08.04 - 19:32
То есть заполняется таблица "ТЗ", а сортируется таблица "ТЗ_" ?
Оригинально...
   LAV
2 - 26.08.04 - 19:35
Нет, не оригинально ... просто очепатка, сортируется тоже ТЗ
   Fеникс
 
3 - 26.08.04 - 19:37
Может быть, там ещё опечатки, и вместо "Сортировать" в модуле написано "Свернуть"?
   LAV
4 - 26.08.04 - 19:39
Не смешно ...
   Fеникс
 
5 - 26.08.04 - 19:40
Ну тогда хоть полный текст приведи что-ли...
И ещё вопрос: откуда известно, что до сортировки таблица не была пустой?
   LAV
6 - 26.08.04 - 19:43
Из отладчика видно было, да и иметод ТЗ.ПолучитьЗначение(строка,"столбец") показывала правльно заполненные строки ТЗ.
   lemon
 
7 - 26.08.04 - 19:46
(0) попробуй:
ТЗ.НОваяКолонка("Документ","Документ",,,,,,);
   LAV
8 - 26.08.04 - 19:46
...
Пока спр.получитьэлемент() = 1 Цикл
 Если Спр.Документ.ДатаДок<=ТекущийДокумент().ДатаДок Тогда
  сч_ = сч_+1;
  ТЗ.НоваяСтрока(сч_);
  ТЗ.УстановитьЗначение(сч_,"Дата",Спр.Документ.ДатаДок);
  ТЗ.УстановитьЗначение(сч_,"Документ",Спр.Документ);
  ТЗ.УстановитьЗначение(сч_,"Цена",Спр.Цена);
  ТЗ.УстановитьЗначение(сч_,"Количество",Спр.Количество);
 КонецЕсли;
КонецЦикла; 
ТЗ.Сортировать("+Документ",1); 

Вот вообщем то и весь текст относящийся к ТЗ.
   LAV
9 - 26.08.04 - 19:47
(7) пробовал уже одна и таже хрень получается, я вот сижу и понять не могу где меня глючит.
   lemon
 
10 - 26.08.04 - 19:57
(7) может:
ТЗ.УстановитьЗначение(сч_,"Документ",Спр.Документ.ТекущийДокумент());
 
 
   Fеникс
 
11 - 26.08.04 - 19:58
(9) Н-да.. В (0) и то больше было. А сч_ = сч_+1 - нафига?
   LAV
12 - 26.08.04 - 20:03
(11) Нравиться мне так :)
   Guk
 
13 - 26.08.04 - 20:10
Опять РА "шутит"...
   lemon
 
14 - 26.08.04 - 20:10
(10+)
ТЗ.Сортировать("Документ",1);
или
ТЗ.Сортировать("+Документ");
   Fеникс
 
15 - 26.08.04 - 20:18
(12) Короче, вывод один - сам где-то её чистишь, либо не пустая она, либо пустая изначально. Возможно, где-то у тебя референция переменных, но по приведённым кускам никак не сказать, где именно.
   val
 
16 - 26.08.04 - 21:20
Такие глюки бывают.
Лечение одно: не обьявлять в ТЗ неопределенных реквизитов.
Конкретно: ТЗ.НоваяКолонка("Дата",,,,,,,); - не катит,
ТЗ.НоваяКолонка("Дата","Дата"); - катит.
И так по всем колонкам.
Понять это невозможно. Это нужно запомнить.
   ЧеТоКакТо
 
17 - 26.08.04 - 21:43
Ты не устанавливай значения а присваивай, см. ниже код

ТЗ = СоздатьОбъект("ТаблицаЗначений"); 
ТЗ.НоваяКолонка("Дата",,,,,,,); 
ТЗ.НОваяКолонка("Документ",,,,,,,); 
ТЗ.НОваяКолонка("Количество",,,,,,,); 
ТЗ.НОваяКолонка("Цена",,,,,,,); 
//Тут цикл 

{ ТЗ.НоваяСтрока(); 
 ТЗ.Дата=Спр.Документ.ДатаДок; 
 ТЗ.Документ=Спр.Документ; 
 ТЗ.Цена=Спр.Цена; 
 ТЗ.Количество=Спр.Количество; 
} 
ТЗ_.Сортировать("+Документ",1);
   ЧеТоКакТо
 
18 - 26.08.04 - 21:44
(16) не гони...
   ЧеТоКакТо
 
19 - 26.08.04 - 21:45
+17 небольшая поправка

ТЗ = СоздатьОбъект("ТаблицаЗначений"); 
ТЗ.НоваяКолонка("Дата"); 
ТЗ.НОваяКолонка("Документ"); 
ТЗ.НОваяКолонка("Количество"); 
ТЗ.НОваяКолонка("Цена");
   Эмблема форума
 
20 - 26.08.04 - 21:46
(13) В этой ветке шутит Guk ...
   LAV
21 - 26.08.04 - 23:04
Отлично! Вариантов накидали один другого прикольнее :)), спасибо! Кстати (17) с ТЗ, действительно можно так обращаться? Имеется ввиду просто присваивая значение?
   SKrin
 
22 - 26.08.04 - 23:12
(21) ну конечно-же
   SKrin
 
23 - 26.08.04 - 23:14
   SnarkHunter
 
24 - 26.08.04 - 23:14
Колумб Америку открыл...
   LAV
25 - 26.08.04 - 23:18
Ладно, не надо ерничать ...
   SnarkHunter
 
26 - 26.08.04 - 23:24
Симметрично...



Список тем форума
Рекламное место пустует   Рекламное место пустует
Основная теорема систематики: Новые системы плодят новые проблемы.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует