|
Заполнение колонки | ☑ | ||
---|---|---|---|---|
0
Учусь еще
14.04.12
✎
12:05
|
скажите пож-та как заполнить колонку(Значение) ТП полученными значениями???
СтрокаТаблицы=ЭлементыФормы.ТабличноеПоле1.ТекущаяКолонка; Для Каждого СтрокаТаблицы Из ТабличноеПоле1 Цикл СтрокаТаблицы.Значение=ЗначКрит; КонецЦикла; вот последний из вариантов моих извращений, все равно не получается.. |
|||
1
GoldenCalf
14.04.12
✎
12:10
|
Жесть
|
|||
2
pumbaEO
14.04.12
✎
12:13
|
ТекущиеДанные = ЭлементыФормы.ТабличноеПоле1.ТекущиеДанные;
Для каждого ЭлементСтроки из ТекущиеДанные Цикл ЭлементСтроки.ПолеБлаБла = Значение; КонецЕсли |
|||
3
GoldenCalf
14.04.12
✎
12:15
|
Для Каждого СтрокаТаблицы Из ТабличноеПоле1 Цикл
СтрокаТаблицы[ИмяКолонки] = ЗначКрит; КонецЦикла; Или так ТабличноеПоле1.ЗаполнитьЗначения(ЗначКрит, "ИмяКолонки") |
|||
4
Учусь еще
14.04.12
✎
12:28
|
да делала я уже так пишет поле объекта не обнаружено (Значение)
|
|||
5
GoldenCalf
14.04.12
✎
12:31
|
Так это как?
|
|||
6
Учусь еще
14.04.12
✎
12:34
|
все три варианта
|
|||
7
GoldenCalf
14.04.12
✎
12:38
|
Не может быть (с)
И на все три варианта одна и та же ошибка? |
|||
8
Учусь еще
14.04.12
✎
12:46
|
нет последнее Ошибка при вызове метода контекста (ЗаполнитьЗначения)
|
|||
9
experimentator76
14.04.12
✎
12:46
|
фото где?
|
|||
10
GoldenCalf
14.04.12
✎
12:49
|
(8) так может быть нет переменной ЗначКрит?
|
|||
11
Учусь еще
14.04.12
✎
12:50
|
есть я ее вычисляю
|
|||
12
Terve-R-
14.04.12
✎
12:51
|
без фото не взлетит :)
|
|||
13
Учусь еще
14.04.12
✎
12:51
|
если через сообщиь(ЗначКрит)то она выводится
|
|||
14
Учусь еще
14.04.12
✎
12:52
|
ну не грузиться она, я пытаюсь загрузить ее, но почему старая появляется вместо новой
|
|||
15
Terve-R-
14.04.12
✎
12:52
|
у меня тоже были проблемы с заполнением колонки табличного поля, но я поставил фотку и все стало ok :0)
|
|||
16
Terve-R-
14.04.12
✎
12:53
|
(14) старая фотка вместо новой? Что-то и старой не видно :(
|
|||
17
Учусь еще
14.04.12
✎
12:57
|
вот опять загрузилась старая
|
|||
18
GoldenCalf
14.04.12
✎
12:58
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
Для Сч = 1 По 10 Цикл ТабличноеПоле1.Добавить(); КонецЦикла; ТабличноеПоле1.ЗаполнитьЗначения("111", "Колонка1"); КонецПроцедуры |
|||
19
GoldenCalf
14.04.12
✎
12:59
|
Всё работает. Ты нас обманываешь ;)
|
|||
20
hhhh
14.04.12
✎
12:59
|
может не "ИмяКолонки", а без кавычек ИмяКолонки?
|
|||
21
GoldenCalf
14.04.12
✎
13:01
|
(20) смотри (18)
|
|||
22
experimentator76
14.04.12
✎
13:02
|
(12) не удается сосредоточиться на задаче :)
|
|||
23
experimentator76
14.04.12
✎
13:03
|
(0) кто из вас двоих задает вопрос ?
ну кто лапкаме по клавам нажимал ? |
|||
24
Terve-R-
14.04.12
✎
13:09
|
ну вот, что бы вы без меня делали :))
|
|||
25
Учусь еще
14.04.12
✎
13:09
|
если брать другую колонку в этом поле то в нее заполняется, а в эту нет
|
|||
26
GoldenCalf
14.04.12
✎
13:10
|
Тип значения в колонке какой? И у переменной какой?
|
|||
27
Учусь еще
14.04.12
✎
13:14
|
переменная число, а колонку я просто вот так создала ТабПоле = ЭлементыФормы.ТабличноеПоле1;
ТабПоле.СоздатьКолонки(); ТабПоле.Колонки.Добавить("Значение"); |
|||
28
GoldenCalf
14.04.12
✎
13:17
|
А почему тип не указала? И зачем программно создаешь колонки? Почему их сразу нельзя создать на форме?
|
|||
29
GoldenCalf
14.04.12
✎
13:18
|
И кстати ТабличноеПоле1 - реквизит формы
|
|||
30
Учусь еще
14.04.12
✎
13:21
|
(28)Ну потому что это табличное поле!
и я в него выгружаю результат запроса, а потом программно добавиляю еще одну колонку что бы туда заносить уже расчитываеомое значение (29)да реквизит - тип таблица значений |
|||
31
Terve-R-
14.04.12
✎
13:21
|
(27) ОМГ... Условие задачи-то какое? Если сразу начать делать неправильно, то подсказки не помогут
|
|||
32
GoldenCalf
14.04.12
✎
13:24
|
(30) При создании колонки укажи её тип
|
|||
33
Учусь еще
14.04.12
✎
13:25
|
сделала так
Массив = Новый Массив; Массив.Добавить(Тип("Число")); ОписаниеТиповЧ = Новый ОписаниеТипов(Массив); ТабПоле = ЭлементыФормы.ТабличноеПоле1; ТабПоле.СоздатьКолонки(); ТабПоле.Колонки.Добавить("Значение",ОписаниеТиповЧ); ошибок не вылетает |
|||
34
Учусь еще
14.04.12
✎
13:26
|
или тоже не так??
|
|||
35
GoldenCalf
14.04.12
✎
13:31
|
:) Теперь заполняется?
|
|||
36
Учусь еще
14.04.12
✎
13:31
|
а колонка так и значениями не запоняется..
|
|||
37
Учусь еще
14.04.12
✎
13:31
|
Для Каждого СтрокаТаблицы Из ТабличноеПоле1 Цикл
СтрокаТаблицы["Значение"] = ЗначКрит; КонецЦикла; Преобразование значения к типу Число не может быть выполнено |
|||
38
Terve-R-
14.04.12
✎
13:32
|
беда... а ты заполняй таблицу значений, и колонку в нее добавь, а табличное поле все покажет :)
|
|||
39
GoldenCalf
14.04.12
✎
13:33
|
А что в ЗначКрит?
|
|||
40
Terve-R-
14.04.12
✎
13:33
|
(37) значит "ЗначКрит" у тебя или Null или Неопределено
|
|||
41
Учусь еще
14.04.12
✎
13:34
|
ЗначКрит - этой переменной хранятся вычисляемые значения, они точно есть
|
|||
42
GoldenCalf
14.04.12
✎
13:35
|
Тип этих значений какой?
|
|||
43
Учусь еще
14.04.12
✎
13:36
|
число
|
|||
44
Учусь еще
14.04.12
✎
13:36
|
с утра же 769,1..... относилось к числу???
|
|||
45
Terve-R-
14.04.12
✎
13:36
|
(41) точно есть? Точно - это когда ты напишешь ЗначКрит = 1, а если там вычисление по формуле, тем более из запросе берутся цифры, то это бабка надвое сказала что там на самом деле получается
|
|||
46
GoldenCalf
14.04.12
✎
13:37
|
(45) +1
|
|||
47
GoldenCalf
14.04.12
✎
13:37
|
(44) В каждую строку записываешь это значение?
|
|||
48
Terve-R-
14.04.12
✎
13:37
|
Да емае... Не надо там типизировать колонки! Просто у нее колонку заполнять нечем вот и не показывается ничего
|
|||
49
Учусь еще
14.04.12
✎
13:38
|
если я эти значения выгружаю в другую колонку то они выгружаются, цифры там появляются, правда почему то одинаковые
|
|||
50
Terve-R-
14.04.12
✎
13:38
|
А приведение этого "Ничего" к любому типу и будет выдавать ошибки
|
|||
51
Terve-R-
14.04.12
✎
13:39
|
*WALL*
|
|||
52
Terve-R-
14.04.12
✎
13:40
|
(49) конечно одинаковые... ЗначКрит -то у тебя одна)
|
|||
53
Учусь еще
14.04.12
✎
13:41
|
ну вообще их несколько
вот весь мой код по этому поводу Процедура Кнопка2Нажатие(Элемент) УдВремОб=ВходныеПараметры[0].УдельныйВес; УдКолОб=ВходныеПараметры[1].УдельныйВес; УдОбПРод=ВходныеПараметры[2].УдельныйВес; Массив = Новый Массив; Массив.Добавить(Тип("Число")); ОписаниеТиповЧ = Новый ОписаниеТипов(Массив); ТабПоле = ЭлементыФормы.ТабличноеПоле1; ТабПоле.СоздатьКолонки(); ТабПоле.Колонки.Добавить("Значение",ОписаниеТиповЧ); СтаршийИндекс = ТабличноеПоле1.Количество() - 1; Для Сч = 0 по СтаршийИндекс Цикл ОбПр=ТабличноеПоле1[Сч].ОбъемПродаж; КолОб=ТабличноеПоле1[Сч].КоличествоОбращений; ВрОб=ТабличноеПоле1[Сч].ВремяОбслуживания; ЗначКрит=УдВремОб*ВрОб+УдКолОб*КолОб+УдОбПРод*ОбПр; Для Каждого СтрокаТаблицы Из ТабличноеПоле1 Цикл СтрокаТаблицы["Значение"] = ЗначКрит; КонецЦикла; КонецЦикла; КонецПроцедуры |
|||
54
GoldenCalf
14.04.12
✎
13:42
|
(48) не свисти. Если Тип значения колонки будет число, а ты туда будешь писать дату, то колонка у тебя останется пустой
|
|||
55
Terve-R-
14.04.12
✎
13:46
|
(54) ну и не фиг типизировать, пиши че хочешь
|
|||
56
Учусь еще
14.04.12
✎
13:48
|
(54), (55) не спорьте!!!
|
|||
57
GoldenCalf
14.04.12
✎
13:48
|
Процедура Кнопка2Нажатие(Элемент)
УдВремОб = ВходныеПараметры[0].УдельныйВес; УдКолОб = ВходныеПараметры[1].УдельныйВес; УдОбПРод = ВходныеПараметры[2].УдельныйВес; ТабличноеПоле1.Колонки.Добавить("Значение", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(0, 0, ДопустимыйЗнак.Любой))); ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки(); Для Каждого СтрокаТЗ Из ТабличноеПоле1 Цикл ОбПр = СтрокаТЗ.ОбъемПродаж; КолОб = СтрокаТЗ.КоличествоОбращений; ВрОб = СтрокаТЗ.ВремяОбслуживания; ЗначКрит = УдВремОб * ВрОб + УдКолОб * КолОб + УдОбПРод * ОбПр; // Не факт что здесь число! СтрокаТЗ.Значение = ЗначКрит; КонецЦикла; КонецПроцедуры |
|||
58
Terve-R-
14.04.12
✎
13:48
|
Мдя... а зачем второй цикл?
|
|||
59
Учусь еще
14.04.12
✎
13:51
|
(57)благодарю, все работает
только скажи почему не факт что там число, когда во всех ячейках стоят числа |
|||
60
GoldenCalf
14.04.12
✎
13:53
|
Потому-что я не видел запрос и Входные параметры
|
|||
61
Terve-R-
14.04.12
✎
13:53
|
(59) мы сомневаемся, что во всех входящих параметрах числа
|
|||
62
Учусь еще
14.04.12
✎
13:55
|
еще вопрос
я сначала одной кнопкой выгружаю резальтат запроса в ТП, а потом другой кнопкой вычисляю значения ЗначКрит, почему если все сделать при нажатии одной кнопки выскакивают ошибки??? |
|||
63
Учусь еще
14.04.12
✎
13:56
|
хотя может он не успевает выгрузить и сразу считать значения...
|
|||
64
GoldenCalf
14.04.12
✎
13:57
|
(63) :) Не видя коду, не суйся в воду...
|
|||
65
GoldenCalf
14.04.12
✎
13:57
|
Покажи код
|
|||
66
Учусь еще
14.04.12
✎
13:58
|
я хочу вот это код
Процедура Кнопка1Нажатие(Элемент) Запрос = Новый Запрос; запрос.Текст= "ВЫБРАТЬ | ПервоеОбращение.Контрагент, | ПервоеОбращение.Дата КАК ДатаПервогоОбращения, | ПоследнееОбращение.Дата КАК ДатаПоследнегоОбращения, | КолвоОбращений.КоличествоОбращений, | ВЫБОР | КОГДА РАЗНОСТЬДАТ(ПервоеОбращение.Дата, ПоследнееОбращение.Дата, ДЕНЬ) <> 0 | ТОГДА РАЗНОСТЬДАТ(ПервоеОбращение.Дата, ПоследнееОбращение.Дата, ДЕНЬ) | ИНАЧЕ ""Одно обращение"" | КОНЕЦ КАК ВремяОбслуживания, | ОбъемПродажи.ОбъемПродаж |ИЗ | (ВЫБРАТЬ | МИНИМУМ(ЗаказПокупателя.Дата) КАК Дата, | ЗаказПокупателя.Контрагент КАК Контрагент | ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | | СГРУППИРОВАТЬ ПО | ЗаказПокупателя.Контрагент) КАК ПервоеОбращение | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | МАКСИМУМ(ЗаказПокупателя.Дата) КАК Дата, | ЗаказПокупателя.Контрагент КАК Контрагент | ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | | СГРУППИРОВАТЬ ПО | ЗаказПокупателя.Контрагент) КАК ПоследнееОбращение | ПО ПервоеОбращение.Контрагент = ПоследнееОбращение.Контрагент | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ЗаказПокупателя.Дата) КАК КоличествоОбращений, | ЗаказПокупателя.Контрагент КАК Контрагент | ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | | СГРУППИРОВАТЬ ПО | ЗаказПокупателя.Контрагент) КАК КолвоОбращений | ПО ПервоеОбращение.Контрагент = КолвоОбращений.Контрагент | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | ЗаказПокупателя.Контрагент КАК Контрагент, | СУММА(ЗаказПокупателя.ИтоговаяСумма) КАК ОбъемПродаж | ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | | СГРУППИРОВАТЬ ПО | ЗаказПокупателя.Контрагент) КАК ОбъемПродажи | ПО ПервоеОбращение.Контрагент = ОбъемПродажи.Контрагент"; результат=запрос.Выполнить().Выгрузить(); ЭлементыФормы.ТабличноеПоле1.Значение=результат; ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки(); КонецПроцедуры и вот этот (57) соединить в одну процедуру |
|||
67
experimentator76
14.04.12
✎
14:01
|
покажи свой код
я хочу вот это код ))) |
|||
68
Учусь еще
14.04.12
✎
14:05
|
ребят спокуха сделала, все работаетт
|
|||
69
GoldenCalf
14.04.12
✎
14:16
|
Молодец
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |