|
Построитель Отчета | ☑ | ||
---|---|---|---|---|
0
Gattuso
14.08.14
✎
12:34
|
Извиняюсь, никогда не любил этот построитель и особо им не занимался.
Такой вопрос: понадобилось выводить доп поле строковое неограниченной длины. Хотел в запросе подменить текст, использовать ВЫРАЗИТЬ(), но не могу понять возможно ли это вообще в построителе или нет. Построитель.Текст-это как я понял начальный запрос, на основании которого создаются отборы, группировки и тд. А Построитель.ПолучитьЗапрос().Текст-это уже текст запроса, результат которого выводится на экран. Я правилньо понял? И если да, то каким образом этот итоговый текст можно заменить? Очень буду благодарен за подсказки! |
|||
1
PR
14.08.14
✎
12:35
|
Возможно.
|
|||
2
PR
14.08.14
✎
12:36
|
||||
3
ДенисЧ
14.08.14
✎
12:36
|
Нет. Нельзя.
Можно использовать ИсточникДанных |
|||
4
Gattuso
14.08.14
✎
12:37
|
(2) Я этот текст уже вдоль и поперек прочел-но на нужный мне вопрос ответ там не нашел
|
|||
5
Gattuso
14.08.14
✎
12:38
|
(3) Не подскажешь где можно почитать каким образом реализовать это через источник данных?
|
|||
6
Wobland
14.08.14
✎
12:39
|
(5) он тебе даже продаст это
|
|||
7
Gattuso
14.08.14
✎
12:40
|
(6) :)
Если ьез шуток-меня уже тошнит от этого построителя-нелепая вещь какая-то имхо.. |
|||
8
Gattuso
14.08.14
✎
12:41
|
мне нужно хотя бы в выводящийся построителем результат добавить в колонку например к строке еще символ. неужели даже это сделать нельзя?
|
|||
9
ДенисЧ
14.08.14
✎
12:42
|
(7) Переходи на СКД. Тебя не только тошнить начнёт. Но и рвать на родину, в смысле на нормальные запросы с ручным выводом.
|
|||
10
Wobland
14.08.14
✎
12:42
|
спаразитирую на чужой ветке. как поиметь результат построителя в виде выборки или ТЗ? Построитель.Результат не содержит ресурсов
|
|||
11
Gattuso
14.08.14
✎
12:43
|
(9) как раз с Скд у меня проблем нет)))
Это старый отчет просто сделанный на построителе и мне его надо изменить немного |
|||
12
DrZombi
гуру
14.08.14
✎
12:43
|
(0) Да бросьте, СКД на тонком клиенте просто чудо :)
|
|||
13
DrZombi
гуру
14.08.14
✎
12:44
|
(10) Вот на этом сайте есть неплохие примерчики, как да куда заполнять, что бы использовать со внешними данными :)
http://1cskd.ru/2010/07/primery-otchetov-na-skd/ |
|||
14
ДенисЧ
14.08.14
✎
12:47
|
(12) Ага. Чудо. Я такое чудо в субботу с утра в зеркале видел. Как в анекдоте "Спрашивается, зачем им нужны были ещё 2 бутылки водки?"
|
|||
15
chelentano
14.08.14
✎
12:54
|
(10) не понял...
ТЗ = ПостроительОтчета.Результат.Выгрузить(); Выборка = ПостроительОтчета.Результат.Выбрать(); вроде ничего сложного |
|||
16
Wobland
14.08.14
✎
12:57
|
(15) там ресурсов нет, одни измерения. в Построитель.ПолучитьЗапрос().Текст тоже одни измерения. кто мне числа в ТабДокументе показывает?
|
|||
17
chelentano
14.08.14
✎
13:00
|
(16) всё равно нифига не понял, давай конкретнее, на примере каком-нибудь
|
|||
18
chelentano
14.08.14
✎
13:01
|
(16) на кой тебе измерения без ресурсов?
|
|||
19
Gattuso
14.08.14
✎
13:06
|
Народ! Я реально в шоке.. попробовал через источник данных-тоже гемор-выводится все криов(тк у меня в запросе куча группировок и тд).
Неужели нельзя никак более менее просто добавить к какой нибудь колонке в результате через построитель отчета например символ "а"? Ну это же бред полный |
|||
20
Wobland
14.08.14
✎
13:07
|
http://i.imgur.com/n9fCch4.png
где остаток? УниверсальныйОтчет.ПостроительОтчета.ПолучитьЗапрос().Текст= ВЫБРАТЬ ЕСТЬNULL(ТоварыНаСкладахОстатки.Склад, ПартииГТДОстатки.Склад) КАК Склад, ЕСТЬNULL(ТоварыНаСкладахОстатки.Номенклатура, ПартииГТДОстатки.Номенклатура) КАК Номенклатура, ЕСТЬNULL(ТоварыНаСкладахОстатки.СерияНоменклатуры, ПартииГТДОстатки.ГТД) КАК ГТД, ПартииГТДОстатки.ДокументОприходования КАК ДокументОприходования ИЗ |
|||
21
Gattuso
14.08.14
✎
13:08
|
(20) а подменить текст этого запроса нельзя никак?
|
|||
22
Gattuso
14.08.14
✎
13:08
|
через стрзаменить() например
|
|||
23
Wobland
14.08.14
✎
13:08
|
(21) ПолучитьЗапрос()видишь?
|
|||
24
Gattuso
14.08.14
✎
13:09
|
(23) вижу. Получить то его не проблема. А как его обратно запихнуть?
|
|||
25
Gattuso
14.08.14
✎
13:10
|
тк если использовать получитьзапрос() и потом менять текст, то выполняется то все равно старый
|
|||
26
Gattuso
14.08.14
✎
13:10
|
не измененный
|
|||
27
chelentano
14.08.14
✎
13:12
|
(24) ПостроительОтчета.Текст = "Твой текст"
|
|||
28
Gattuso
14.08.14
✎
13:13
|
(27) это другой текст же.
ПостроительОтчета.Текст это не тоже самое, что ПостроительОтчета.ПолучитьЗапрос().Текст |
|||
29
chelentano
14.08.14
✎
13:14
|
(20) так когда выбираешь ПоГруппировкам, то первая строка - это общие итоги у тебя, тебе надо до номенклатуры добраться
|
|||
30
Gattuso
14.08.14
✎
13:14
|
(27) выводится же в итоге результат запроса ПостроительОтчета.ПолучитьЗапрос().Текст и я не могу понять как его программно изменить
|
|||
31
chelentano
14.08.14
✎
13:15
|
(30) я вот не могу понять, зачем тебе вообще программно менять текст запроса, ты сразу нужный написать не можешь?
|
|||
32
Gattuso
14.08.14
✎
13:18
|
(31) не могу. Т.к. у меня выбираются всегда разные доп поля в режиме пользователя.
Короче, у меня если выбрано поле адрес, то мне его надо "дописатЬ" в поле Заявка. И как это сделать вообще непонятно |
|||
33
Wobland
14.08.14
✎
13:21
|
(29) думаешь, в выборке полей прибавится?
http://i.imgur.com/mFccCWn.png |
|||
34
Wobland
14.08.14
✎
13:23
|
(32) выбрать заявка+выбор когда &надоадрес тогда адрес иначе "" конец
|
|||
35
Wobland
14.08.14
✎
13:23
|
(34) авотфих ;)
|
|||
36
Wobland
14.08.14
✎
13:24
|
(32) пускай юзер сам настраивает отчёт. нужен ему адрес - его личное дело
|
|||
37
Gattuso
14.08.14
✎
13:30
|
(36) юзер сам и решает. Но у адреса неограниченная длина, именно поэтому его и не дает спокойно добаить отдельным полем и вылетает ошибка
|
|||
38
Wobland
14.08.14
✎
13:33
|
(37) ну ограничь длину
|
|||
39
Gattuso
14.08.14
✎
13:34
|
(38) в этом и суть вопросам и всей этой темы. КАК мне это сделать. Где можно в запросе добавить ВЫРАЗИТЬ()? Если это вообще возможно.
Ограничить длину реквизита сейчас в базе не представляестя возможным |
|||
40
chelentano
14.08.14
✎
13:34
|
(33) ну как там? разобрался?
(37) так и пиши ВЫРАЗИТЬ(СтрокаАдреса КАК СТРОКА(150)) |
|||
41
Gattuso
14.08.14
✎
13:35
|
(40) где писать-то?)
|
|||
42
Gattuso
14.08.14
✎
13:35
|
где я могу получить итоговый текст запроса и отредактировать его?
|
|||
43
Wobland
14.08.14
✎
13:37
|
(40) неа, мрак
(42) редактируй исходный |
|||
44
Gattuso
14.08.14
✎
13:39
|
(43)аа....начну по новой-может я не все понимаю в этом построителе.
Исходный текст запроса это Построитель.Текст верно? Идем дальше, выводится в итоге (с учетом выбранных доп полей) результирующий запрос - его текст не равен Построитель.Текст. А его текст это Построитель.ПолучитьЗапрос().Текст. Но его отредактировать я не понимаю как хоть убей. Может я что то не допонимаю, тогда просветите меня |
|||
45
Wobland
14.08.14
✎
13:40
|
не надо его редактировать, у тебя исходный текст есть для своих хотелок
|
|||
46
chelentano
14.08.14
✎
13:41
|
(44) а чем тебе поле неограниченной длины в качестве доп. поля помешало?
(43) стучись 242037509 |
|||
47
Gattuso
14.08.14
✎
13:43
|
(46) тем что построительотчета сделан так, что такие поля не выводит и выдает ошибку
|
|||
48
Gattuso
14.08.14
✎
13:44
|
(45) что за исходный текст? где его найти?
|
|||
49
chelentano
14.08.14
✎
13:45
|
(47) по-моему, это если ты его в качестве измерения хочешь использовать, а как доп. поле - без проблем вроде бы
|
|||
50
Wobland
14.08.14
✎
13:46
|
(48) Построитель.Текст
|
|||
51
Gattuso
14.08.14
✎
13:46
|
я когда в отладчике пробую
Построитель.ПолучитьЗапрос(), то когда выбрано доп поле "Адрес",то запрос вообще не получает-ошибка. Как только программно удалю Адрес из выбранных полей, тогда и получитьзапрос() отрабатывает. Т.е. как я понимаю именно резальтат этого запроса и выводится в конечном счете на экран |
|||
52
Gattuso
14.08.14
✎
13:47
|
(49) нет/, как доп поле тоже не отрабатывает. кучу уже информации прочитал на эту тему
|
|||
53
Gattuso
14.08.14
✎
13:48
|
(50) я могу туда написать все что угодно в Построитель.Текст-это никакого влияния на конечный результат на экране не оказывает
|
|||
54
Wobland
14.08.14
✎
13:49
|
(53) в универсальном отчёте, к примеру, есть туева гора танцев вокруг построителя
|
|||
55
chelentano
14.08.14
✎
13:51
|
(51) если ты можешь программно удалить Адрес из выбранных полей, значит, ты можешь и написать вместо Адрес - ВЫРАЗИТЬ(Адрес КАК СТРОКА(150))
|
|||
56
Gattuso
14.08.14
✎
13:57
|
(55) не могу))))
Выбранные поля это таблица, в ней Имя,Представление и ПутьКДанным. ПутьКДанным мб и помог бы(да и то не факт), но оне недостпупен для записи |
|||
57
Wobland
14.08.14
✎
14:02
|
получается, иногда надо добавлять дополнительное поле?
|
|||
58
Gattuso
14.08.14
✎
14:07
|
(57) да, именно
|
|||
59
Wobland
14.08.14
✎
14:10
|
(58) сходи в универсальный. добавляется одной строкой
|
|||
60
Wobland
14.08.14
✎
14:11
|
// Добавление дополнительных полей
// Необходимо вызывать для каждого добавляемого дополнительного поля. // УниверсальныйОтчет.ДобавитьДополнительноеПоле(<ПутьКДанным>); |
|||
61
Gattuso
14.08.14
✎
14:16
|
(60) я просто редко с этим всем работал.
Сложно отчет переделать чтобы воспользоваться этим универсальныйотчет? И в путь данных так и пишется "Выразить как строка..." да? |
|||
62
Wobland
14.08.14
✎
14:17
|
(61) если УО есть в конфигурации, забудь свой. там мощные комментарии, разберёшься
|
|||
63
Wobland
14.08.14
✎
14:18
|
+(62) мощные комментарии в другом типовом на основе универсального
|
|||
64
Gattuso
14.08.14
✎
14:27
|
(63) боюсь не прокатит.
Сейчас удалось программно попробовать добавить новое выбранное поле. Путь к данным указал "выразить(Заявка.Адрес КАК СТРОКА.." выдал ошибку Поле не найдено. "ВЫРАЗИТЬ(Заявка" Видимо в ПутьКДанным выразить нельзя использовать. В универсальном отчете наверное тоже самое |
|||
65
Wobland
14.08.14
✎
14:27
|
путь к данным - это путь к данным, пусть через точку
|
|||
66
Gattuso
14.08.14
✎
14:30
|
(65) ну там точно так же будет путь к реквизиту строковому с неограниченной длиной и не будет выводиться . вангую
|
|||
67
chelentano
14.08.14
✎
14:30
|
(64) блин, приведи тест запроса уже и как ты адрес в запрос добавляешь
|
|||
68
Wobland
14.08.14
✎
14:31
|
(66) если у тебя в запросе будет неограниченная строка, то и путь будет к неограниченной строке. ваш К.О.
|
|||
69
Gattuso
14.08.14
✎
14:32
|
(67) текста запроса НЕТ, тк если в доп полях выбран адрес, то текст запроса не получается в отладчике-ошибка. Как только удалить это поле,то все норм.
В этом и трудность. Да и в любом случае как программно отредактировать текст неясно. |
|||
70
Gattuso
14.08.14
✎
14:32
|
(68) и ?
|
|||
71
Wobland
14.08.14
✎
14:34
|
(70) и если у тебя в запросе будет ограниченная строка, то и путь будет к ограниченной строке. ваш К.О.
|
|||
72
chelentano
14.08.14
✎
14:34
|
(69) да блин... СЮДА напиши текст запроса свой
|
|||
73
Wobland
14.08.14
✎
14:35
|
может, присоветовать автору присвоить что-нибудь в Построитель.Текст?
|
|||
74
chelentano
14.08.14
✎
14:43
|
не знаю... у меня никаких проблем с дополнительным полем неограниченной длины не возникает
|
|||
75
chelentano
14.08.14
✎
14:44
|
кода так и не дождёмся походу
|
|||
76
Операция 1Ы
14.08.14
✎
14:46
|
(73) ага, например Построитель.Текст = ""; тогда ошибка пропадет)
|
|||
77
Wobland
14.08.14
✎
14:46
|
(76) выбрать будет ожидать, думаю
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |