![]() |
|
ТаблицаЗначений | ☑ | ||
---|---|---|---|---|
0
Gill
12.08.11
✎
18:30
|
Добрый вечер всем! Подскажите как выгрузить данные из запроса на форму вызываемой обаботки с предворительно настроенным расположением реквизитов табличного поля (тип - ТЗ)...СоздатьКолонки()не подходит,т.к. не сохраняется "предопределенное" расположение реквизитов
|
|||
1
Gill
12.08.11
✎
18:35
|
После запроса пишуОбработка.ЭлементыФормы.ГлобальнаяГруппировкаПоРазделамРабот.Значение=РезультатЗапроса.Выгрузить(); а дальше как?
|
|||
2
Gill
12.08.11
✎
18:38
|
точнее после текста запроса так: Обработка=Обработки.ПотребностиВыполненияРабот.ПолучитьФорму("Форма");
ЭлементыФормы.ГлобальнаяГруппировкаПоРазделамРабот.Значение=РезультатЗапроса.Выгрузить(); //Обработка.ЭлементыФормы.ГлобальнаяГруппировкаПоРазделамРабот.СоздатьКолонки(); Это не подходит |
|||
3
and2
12.08.11
✎
18:53
|
в чем вопрос то?
в порядке колонок? |
|||
4
Gill
15.08.11
✎
08:37
|
(3) У меня в конфигураторе подготовлена форма с след.расположением колонок
Колонка2 №Строки Колонка1 Колонка3 и т.д. хотелось бы сохранить такое расположение.Метод СоздатьКолонки() располагает всё по "горизонтали". |
|||
5
aleks-id
15.08.11
✎
08:40
|
а вывалить результат запроса в ТЗ, связанную с ТЧ не судьба?
|
|||
6
Gill
15.08.11
✎
08:41
|
(6) можно поподробнее
|
|||
7
Gill
15.08.11
✎
15:32
|
Запрос.Выполнить();
РезультатЗапроса=Запрос.Результат; Выборка=РезультатЗапроса.Выбрать(); Обработка=Обработки.ПотребностиВыполненияРабот.Создать(); МояФорма=Обработки.ПотребностиВыполненияРабот.ПолучитьФорму("Форма"); МояФорма.Открыть(); Пока Выборка.следующий() цикл Обработка.ГлобальнаяГруппировка.Загрузить(РезультатЗапроса.Выгрузить()); КонецЦикла; //Почему в тч не загружаются данные?Результат запроса не пустой.... |
|||
8
Gill
15.08.11
✎
15:56
|
^
|
|||
9
salvator
15.08.11
✎
16:03
|
Имена колонок совпадают?
|
|||
10
Gill
15.08.11
✎
16:06
|
(9) совпадают.....
|
|||
11
salvator
15.08.11
✎
16:10
|
Ну попробуй вручную заполнить.
Пока Выборка.следующий() цикл НовСтр = Обработка.ГлобальнаяГруппировка.Добавить(); НовСтр.Колонка1 = Выборка.Колонка1 и тд. КонецЦикла; |
|||
12
skunk
15.08.11
✎
16:12
|
ТабличноеПолеНаФорме.Загрузить(ТаблицаЗначения);
|
|||
13
aleks-id
15.08.11
✎
16:34
|
МояОбработка=Обработки.ПотребностиВыполненияРабот.Создать();
МояОбработка.МОЯ_ТАБЛИЧНАЯ_ЧАСТЬ_СВЯЗАННАЯ_С_ТАБЛИЧНЫМ_ПОЛЕМ = Запрос.Выполнить().Выгрузить(); МояФорма=МояОбработка.ПолучитьФорму("Форма"); МояФорма.Открыть(); |
|||
14
aleks-id
15.08.11
✎
16:36
|
+(13) МояОбработка.МОЯ_ТАБЛИЧНАЯ_ЧАСТЬ_СВЯЗАННАЯ_С_ТАБЛИЧНЫМ_ПОЛЕМ.Загрузить(Запрос.Выполнить().Выгрузить());
|
|||
15
Gill
15.08.11
✎
16:54
|
(13) Обращение к процедуре объекта как к функции (Выполнить)
МояОбработка.ГлобальнаяГруппировка = Запрос.Выполнить().Выгрузить(); |
|||
16
mikecool
15.08.11
✎
16:57
|
в твоем таб поле с типом тз пропишп данные полям(колонкам), как они называются в результате запроса и не надо будет создавать колонки
|
|||
17
aleks-id
15.08.11
✎
16:57
|
(15) а (14) ты читал или за тебя все переписывать т.к. ты мозг не хочешь включать????
|
|||
18
mikecool
15.08.11
✎
16:59
|
(14) а не быстрее будет Скопировать() ?
|
|||
19
Gill
15.08.11
✎
17:02
|
(17) можно без эмоционального всплеска,скажи лучше гдк ошибка
|
|||
20
Gill
15.08.11
✎
17:04
|
(14)...та же ошибка
|
|||
21
aleks-id
15.08.11
✎
17:04
|
МояОбработка=Обработки.ПотребностиВыполненияРабот.Создать();
МояОбработка.МОЯ_ТАБЛИЧНАЯ_ЧАСТЬ_СВЯЗАННАЯ_С_ТАБЛИЧНЫМ_ПОЛЕМ.Загрузить(Запрос.Выполнить().Выгрузить()); МояФорма=МояОбработка.ПолучитьФорму("Форма"); МояФорма.Открыть(); |
|||
22
aleks-id
15.08.11
✎
17:06
|
(18) а куда его там приткнуть? о_о
|
|||
23
mikecool
15.08.11
✎
17:09
|
у меня
ТЗ - промежуточная ЖР - таб поле на форме с типом ТЗ, настроены колонки, прописаны данные в колонках ТЗ = Новый ТаблицаЗначений; ВыгрузитьЖурналРегистрации(ТЗ); ЖР = ТЗ.Скопировать(); |
|||
24
aleks-id
15.08.11
✎
17:12
|
(23) а если ты свяжешь ЖР с ТЗ, которую сделаешь табличной частью этого объекта, то третью строчку можешь вообще выкинуть ;)
|
|||
25
aleks-id
15.08.11
✎
17:13
|
+(24) и первую тоже
|
|||
26
mikecool
15.08.11
✎
17:14
|
(24) изначально я так и попытался, но - данные в колонках приобретали непонятное расположение, абсолютно не равное прописанному
только так и получилось нормально |
|||
27
mikecool
15.08.11
✎
17:15
|
+26 такое очучение, что загружались не согласно привязке данных, а слева-направо, как в выгрузке из журнала
|
|||
28
Gill
15.08.11
✎
17:17
|
МояОбработка.ГлобальнаяГруппировка.Загрузить(Запрос.Выполнить().Выгрузить()); Всё та же ошибка коллеги!!!
|
|||
29
Gill
15.08.11
✎
17:18
|
+(28) Обращение к процедуре объекта как к функции (Выполнить)
|
|||
30
aleks-id
15.08.11
✎
17:22
|
что у тебя такое ГлобальнаяГруппировка ? это табличная часть? ее колонки совпадают с колонками запроса?
|
|||
31
Gill
15.08.11
✎
17:23
|
(30) теперь уже это таб.часть....колонки 100 пудов совпадают....блин вешалка, что не так?!
|
|||
32
salvator
15.08.11
✎
17:33
|
(31) Реквизиты табличной части, надеюсь, добавлял?
|
|||
33
Gill
15.08.11
✎
17:34
|
(32)обижаете....я вот что подумал, а ничего что у меня запрос лежит в отдельной функции()?
|
|||
34
salvator
15.08.11
✎
17:36
|
(33)
Да так-то ничего. Только вызывать уже нужно эту функцию, которая, надеюсь, возвращает таблицу значений. Табличечка = ТвояСуперФункция(); МояОбработка.МОЯ_ТАБЛИЧНАЯ_ЧАСТЬ_СВЯЗАННАЯ_С_ТАБЛИЧНЫМ_ПОЛЕМ.Загрузить(Табличечка); |
|||
35
Gill
15.08.11
✎
17:37
|
(34) а если все-таки речь идет о табличной части, а не о ТЗ?
|
|||
36
salvator
15.08.11
✎
17:39
|
(35) Да ясен-красен что про ТЧ.
У тебя запрос в функции. Она наверняка что-то там возвращает. Скорее всего ТЗ. Вот эту ТЗ ты и должен загрузить в ТЧ твоей обработки. |
|||
37
Gill
15.08.11
✎
17:43
|
(36)Но ведь метод СоздатьКолонки() работает, меня только не устраивает расположение этих "злощастных" колонок...
|
|||
38
Gill
15.08.11
✎
17:44
|
(37) извиняюсь, не то хотел сказать...
|
|||
39
salvator
15.08.11
✎
17:44
|
Мля. Ты пробовал сделать как в (34) ?
|
|||
40
Gill
17.08.11
✎
12:30
|
Спасибо Всем разобрался!И еще вопросик. У меня Колонка1 это результат агрегатной функции в запросе. а как в запросе можно указать что значение колонки1 = значению другой колонки2....Ну вообщем на выходе мне нужно:
Колонка1 Колонка2 БлаБлабла БлаБлабла Всем спасибо! |
|||
41
Gill
17.08.11
✎
14:18
|
^
|
|||
42
Gill
17.08.11
✎
14:24
|
Колонка1 вычисляется так
| УчетРабот.КоличествоОборот КАК ОбъемРабот, | ВЫБОР | КОГДА УчетРабот.ГруппаРаботы = &Факт | ТОГДА СУММА(УчетРабот.КоличествоОборот) | КОНЕЦ КАК ФактическийПоказатель, как записать чтобы ФактическийПоказатель был равен значению колонки2 |
|||
43
Gill
17.08.11
✎
14:26
|
+(42) точнее в колонку2 нужно поместить значение из колонки1
|
|||
44
Gill
17.08.11
✎
14:33
|
Попробую объяснить по-другому: в выборке есть Поле1,Поле2 и т.д...есть ТЧ с полями ввода Колонка1 Колонка2 Колонка3...В колонку1 выгружается значение(см.выше в запросе), в колонки2 - значение Поле1, в колонку3 - тоже нужно поместить значение Поле1
|
|||
45
Megas
17.08.11
✎
14:38
|
Колонка2 вычисляется так
| УчетРабот.КоличествоОборот КАК ОбъемРабот, | ВЫБОР | КОГДА УчетРабот.ГруппаРаботы = &Факт | ТОГДА СУММА(УчетРабот.КоличествоОборот) | КОНЕЦ КАК ФактическийПоказатель2, |
|||
46
Megas
17.08.11
✎
14:38
|
Кароче делаешь тоже самое =)
|
|||
47
Gill
17.08.11
✎
14:46
|
Попробуем так: Есть ТЧ у которой Колонка1(ТипЧисло), колонка2 (Тип Число), Колонка3(ТипЧисло)....Пишем запрос и врезультате получем Значение в колонке1-(см.выше в запросе), в колонке2 - поле1 из таблицы регистратора в выборке, а вот в колонку3 надо записать значение равное (=) из колонки1
|
|||
48
Gill
17.08.11
✎
14:57
|
Запрос.Выполнить();
РезультатЗапроса=Запрос.Результат; Выборка=РезультатЗапроса.Выбрать(); Пока Выборка.следующий() цикл КонецЦикла; МояФорма=МояОбработка.ПолучитьФорм("ГлобальнаяГруппировка"); МояФорма.Открыть(); Обработка=Обработки.ФормаПотребностиРабот.ПолучитьФорму("ГлобальнаяГруппировка"); Обработка.ЭлементыФормы.ГлобальнаяГруппировкаПоРазделамРабот.Значение=РезультатЗапроса.Выгрузить(); Обработка.ЭлементыФормы.ГлобальнаяГруппировкаПоРазделамРабот.Значение.Свернуть("...","..."); Обработка.ЭлементыФормы.ГлобальнаяГруппировкаПоРазделамРабот.СоздатьКолонки(); ТаблицаДанных=РезультатЗапроса.Выгрузить(); МояОбработка.ГлобальнаяГруппировка.Загрузить(ТаблицаДанных); МояОбработка.ГлобальнаяГруппировка.Свернуть("...","..."); ? |
|||
49
Gill
17.08.11
✎
15:01
|
+(48) Вначале второго абзаца МояОбработка=Обработки.ФормаПотребностиРабот.Создать();
|
|||
50
Gill
17.08.11
✎
15:05
|
Какие будут мысли кроме того,чтобы вызвать программиста и того,что мне пора увольняться.Представьте программистов в округе нет...одна надежда на меня....Прошу помощи многоуважаемые Гуру 1С
|
|||
51
salvator
17.08.11
✎
15:05
|
(40)
ДанныеДляКолонки2 = ТаблицаДанных.ВыгрузитьКолонку("Колонка1"); МояОбработка.ГлобальнаяГруппировка.ЗагрузитьКолонку(ДанныеДляКолонки2,"Колонка2"); |
|||
52
Gill
17.08.11
✎
15:21
|
(51) спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |