|
Подмена данных табличного поля данными из ТЗ | ☑ | ||
---|---|---|---|---|
0
Kuklachel
08.08.13
✎
09:13
|
Доброе утро. Подскажите, пожалуйста, как подменить данные табличного поля, данными из ТЗ?
ОбъектДокДобавитьКол = ЭлементыФормы.ТабличнаяЧастьПрогнозаФорма; ДВТ=новый ТаблицаЗначений; ДВТ = ЭтотОбъект.ТабличнаяЧастьПрогноза.Выгрузить(); ДатаМесяц=Месяц(Двт[0].ДатаОкончания); Пока ДатаМесяц <= 12 Цикл ДатаОк="Месяц"+ДатаМесяц; ДВТ.Колонки.Добавить(ДатаОк) ; Для каждого строка Из ДВТ Цикл Если строка.ПроцентПовышенияСтавки <> 0 Тогда СуммаСПроцентом = строка.СтавкаВМесяц / 100 * строка.ПроцентПовышенияСтавки + строка.СтавкаВМесяц; строка[ДатаОк]= СуммаСПроцентом; КонецЕсли; КонецЦикла; ДатаМесяц=ДатаМесяц+1; КонецЦикла; ЭлементыФормы.ТабличнаяЧастьПрогнозаФорма.Значение=ДВТ; ЭлементыФормы.ТабличнаяЧастьПрогнозаФорма.СоздатьКолонки(); Делаю вот так, но ничего не получается. |
|||
1
Defender aka LINN
08.08.13
✎
09:23
|
Жесть какая...
|
|||
2
Oleg_Kag
08.08.13
✎
09:30
|
Гы гы...
У чела на форме есть ТЗ, не понятно связанная с чем нибудь или нет. Он делает другую ТЗ добавляет к ней колонки. Мало мало заполняет. Хочет что бы теперь вместо ТЗ появилась ту что он сей час сделал. С новыми колонками... Начнем пытать: Вопрос Раз. ТЗ на форме как-то связана с другими данными (ТЗ является ТЧ документа и выводится на форму документа ) Вопрос Два. Собственно как и сказано в (1) НЕ просматривается конечная цель пыток программиста. |
|||
3
Kuklachel
08.08.13
✎
09:38
|
Она связанна с ТЧ документа. В ТЧ документа загружается результат запроса. В одной из колонок я проставляю процент повышения ставки и по кнопке добавляются колонки с суммой равные количеству месяцев от ДатаОкончания, т.е. от 1 до 12.
|
|||
4
Oleg_Kag
08.08.13
✎
09:45
|
В ТЧ документа есть колонки с названиями
"Месяц1", "Месяц2"..."Месяц12" ? |
|||
5
Kuklachel
08.08.13
✎
09:47
|
Нет, я изначально не знаю сколько колонок у меня будет.
|
|||
6
Лодырь
08.08.13
✎
09:48
|
УФ или обычные?
|
|||
7
Kuklachel
08.08.13
✎
09:50
|
Это 8.1, обычные.
|
|||
8
Лодырь
08.08.13
✎
09:51
|
СоздатьКолонки()
|
|||
9
Kuklachel
08.08.13
✎
09:53
|
Последней строкой я это и делаю
|
|||
10
Лодырь
08.08.13
✎
09:56
|
Вопрос, а что тогда не получается? В чем это проявляется?
|
|||
11
Лодырь
08.08.13
✎
09:57
|
Может стоит задуматьтся о типизированных колонках скажем?
|
|||
12
Kuklachel
08.08.13
✎
09:59
|
На форму не добавляются нужные колонки. В ТЗ они создаются.
|
|||
13
Oleg_Kag
08.08.13
✎
10:09
|
Вопрос: НЕ создаются или НЕ заполняются?
|
|||
14
Kuklachel
08.08.13
✎
10:09
|
Именно не создаются.
|
|||
15
Kuklachel
08.08.13
✎
10:10
|
Сейчас попробую с типизированными колонками.
|
|||
16
Kuklachel
08.08.13
✎
10:22
|
Не получилось. В ЭлементыФормы.ТабличнаяЧастьПрогнозаФорма не добавляются колонки.
|
|||
17
Oleg_Kag
08.08.13
✎
10:42
|
Давай проще...
Встань в Форме на ту табличную часть (вроде называется ТабличнаяЧастьПрогноза) и напиши сюда что находится справа от слов "Тип значения" (в свойствах... что там?) |
|||
18
Kuklachel
08.08.13
✎
10:45
|
ДокументТабличнаяЧасть.ПрогнозПоступленияДС.ТабличнаяЧастьПрогноза
|
|||
19
Лодырь
08.08.13
✎
10:47
|
Вот этот код у меня отлично отрабатывает:
В нем Табчасть - это табличнаячасть объекта ТабличноеПоле1 - реквизит формы, и одноименный элемент управления - табличное поле на форме. Процедура КнопкаВыполнитьНажатие(Кнопка) Таб = ТабЧасть.Выгрузить(); Массив = Новый Массив; Массив.Добавить(Тип("Строка")); Описание = Новый ОписаниеТипов(Массив); Таб.Колонки.Добавить("НовыйРеквизит",Описание); Таб.ЗаполнитьЗначения("Блабла","НовыйРеквизит"); ЭлементыФормы.ТабличноеПоле1.Значение = Таб; НоваяКолонка = ЭлементыФормы.ТабличноеПоле1.Колонки.Добавить("НовыйРеквизит"); НоваяКолонка.УстановитьЭлементУправления(Тип("ПолеВвода")); НоваяКолонка.Данные = "НовыйРеквизит"; НоваяКолонка.Видимость = Истина; ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки(); КонецПроцедуры Процедура ПриОткрытии() Для Ы = 1 По 10 Цикл НоваяСтрока = ТабЧасть.Добавить(); НоваяСтрока.СтарыйРеквизит = "Строка№"+Ы; КонецЦикла; ТабличноеПоле1 = ТабЧасть.Выгрузить(); ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки(); КонецПроцедуры |
|||
20
cw014
08.08.13
✎
10:47
|
Смотри как в УТ 10 установка цен номенклатуры реализовано, так и делай.
|
|||
21
Oleg_Kag
08.08.13
✎
10:48
|
(18) Держись чувак щас тебе накидают на вентилятор :)))
Короче берешь УТ 10.3 и смотришь документ УстновкаЦенНоменклатуры. |
|||
22
Лодырь
08.08.13
✎
10:49
|
+(19)В принципе в Процедура КнопкаВыполнитьНажатие(Кнопка) создать колонки лишнее
|
|||
23
Oleg_Kag
08.08.13
✎
10:51
|
Там должно быть просто ТаблицаЗначений
|
|||
24
zladenuw
08.08.13
✎
10:51
|
(3) а не проще в результате запроса посчитать. а по кнопке просто отобразить эту колонку, не ?
|
|||
25
Kuklachel
08.08.13
✎
11:07
|
Качаю УТ, спасибо за помощь.
|
|||
26
Oleg_Kag
08.08.13
✎
11:10
|
Процедура ОсновныеДействияФормыДобКол(Кнопка)
ДВТ = Новый ТаблицаЗначений; ДВТ = ТЗНаФорме.СкопироватьКолонки(); ДатаМесяц=Месяц(ТекущаяДата()); Пока ДатаМесяц <= 12 Цикл ДатаОк="Месяц"+ДатаМесяц; ДВТ.Колонки.Добавить(ДатаОк); ДатаМесяц=ДатаМесяц+1; КонецЦикла; ЭлементыФормы.ТЗНаФорме.Значение=ДВТ; ЭлементыФормы.ТЗНаФорме.СоздатьКолонки(); КонецПроцедуры |
|||
27
cw014
08.08.13
✎
11:16
|
А можно создать таблицу с чиселками глобальную и при выводе строки просто текст устанавливать
|
|||
28
Kuklachel
08.08.13
✎
11:53
|
Олег, у ТЗНаФорме нет метода СкопироватьКолонки();
|
|||
29
Oleg_Kag
08.08.13
✎
12:04
|
(28) Ну, ну... куда говоришь базу послать?
|
|||
30
Kuklachel
08.08.13
✎
12:04
|
У меня табличная часть называется: ТабличнаяЧастьПрогноза, а табличное поле на форме: ТабличнаяЧастьПрогнозаФорма, я так понял, что ТЗНаФорме == ТабличнаяЧастьПрогнозаФорма.
|
|||
31
Oleg_Kag
08.08.13
✎
12:08
|
ТабличнаяЧастьПрогнозаФорма
Так и есть. Это ТабличноеПоле (добавлено через Вставить элемент управления) имеющее тип значения ТаблицаЗначений и имя ТЗНаФорме |
|||
32
Oleg_Kag
08.08.13
✎
12:10
|
... а еще я ищу работу "стажера 1С", ибо капитально потерял занания :(
|
|||
33
Kuklachel
08.08.13
✎
13:14
|
Так у меня же ТабличнаяЧастьПрогнозаФорма имеет тип значения ДокументТабличнаяЧасть.ПрогнозПоступленияДС.ТабличнаяЧастьПрогноза с реквизитами
|
|||
34
cw014
08.08.13
✎
13:20
|
Развернули дискуссию...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |