Имя: Пароль:
1C
1С v8
Вывод в табличный документ из запроса
,
0 Shaggart
 
24.05.15
14:56
Знатоки, помогите, пожалуйста, вывести результат запроса в табличную часть!! Пример кода:

Запрос = Новый Запрос;
    
        Запрос.Текст = "ВЫБРАТЬ
                   |    ПоступлениеТоваровУслуг.Ссылка,
                   |    ОтчетКомитентуОПродажах.Ссылка КАК Ссылка1,
                   |    РеализацияТоваровУслуг.Ссылка КАК Ссылка2
                   |ИЗ
                   |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг,
                   |    Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг,
                   |    Документ.ОтчетКомитентуОПродажах КАК ОтчетКомитентуОПродажах";
                  
    
        Результат=Запрос.Выполнить().Выгрузить();


Что дальше!!!?
14 andryscha
 
24.05.15
15:39
(13) в конструкторе запросов воспользуйтесь не соединением а объединением запросов, выбрав в каждом запросе по 1 типу документу(в вашем случае будет 3 объединенных запроса) И в каждом запросе наложите на "определенные данные" условия, которые вы хотите видеть.
15 rphosts
 
24.05.15
15:40
(0) воспользуйся мастером создания отчета - посмотри какой код он сгенерит... подумай...
И вообще почему не СКД?
16 andryscha
 
24.05.15
15:42
(15) в табличную часть нужно после выгрузить
17 Web00001
 
24.05.15
15:42
(15)Потому что это не отчет?
18 rphosts
 
24.05.15
15:43
+ (15) НЕТ! СТОП!!! Сначало читать UnderStarting SQL если не ошибаюсь Эвви Неммет, потом курить большую библию 1С, ту что в 2 томах любым из которых при желании можно как минимум оглушить... курить до просветления, после даже первого внимательного прочтения вот таких вопросов не возникает.
19 rphosts
 
24.05.15
15:45
хм... реально сплю, а ведь не отчёт нужен...

ТЧ.Загрузить(Запрос.Выполнить().Выгрузить());
20 rphosts
 
24.05.15
15:45
+ (19) но книзки из (18) всёравнго читать!
21 Любопытная
 
24.05.15
15:46
(13) А какие определенные данные надо в документах найти?
22 andryscha
 
24.05.15
15:46
(19) я так понимаю основная проблема это составить запрос
23 Любопытная
 
24.05.15
15:46
(19) можно просто выгрузить результат запроса в ТЗ на форме. Впрочем, платформу мы тоже не знаем
24 rphosts
 
24.05.15
15:48
(22) ну язык запросов чел знает очень мутно... поэтому сначала  UnderStarting SQL
25 andryscha
 
24.05.15
15:49
(23) выгрузить в таб часть, загрузить в таб часть, обойти запрос и добавить в таб часть. неизвестны его определенные данные
26 rphosts
 
24.05.15
15:49
(23) ни платформы, ни контекста, ни того, что он называет ТЧ (возможно совсем не то, что под этим понимаю я)...
27 Web00001
 
24.05.15
15:49
Выглядеть должно как то так.

    Запрос = Новый Запрос(
        "ВЫБРАТЬ
        |    ПоступлениеТоваровУслуг.Ссылка
        |ИЗ
        |    Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
        |
        |ОБЪЕДИНИТЬ ВСЕ
        |
        |ВЫБРАТЬ
        |    РеализацияТоваровУслуг.Ссылка
        |ИЗ
        |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
        |
        |ОБЪЕДИНИТЬ ВСЕ
        |
        |ВЫБРАТЬ
        |    ОтчетКомиссионераОПродажах.Ссылка
        |ИЗ
        |    Документ.ОтчетКомиссионераОПродажах КАК ОтчетКомиссионераОПродажах")
    
    МойДок.МояТЧУКоторойЕстьРеквизитСсылкаИначеНеЗагрузится.Загрузить(Запрос.Выполнить().Выгрузить());


Люди правильно говорят, запрос ты не можешь составить элементарный, надо бы таки теорию почитать купи у гилева хотя бы "быстрый старт", еще у 1С была книга по запросам, стоила копейки совсем, оплачивалась через смс.
28 Любопытная
 
24.05.15
15:50
(27) книгу по запросам на ИТСах можно почитать. Все никак руки не доберутся...
29 andryscha
 
24.05.15
15:51
(28) видео курс насипова и гилева по программированию - всё наглядно и самое главное с практикой
30 Web00001
 
24.05.15
15:52
(28)У меня и ИТС лежат и книга где то скачана, тоже никак не могу открыть. Да и проф разработка лежит в двухтомах :) открывается иногда.
(29)Яростно плюсую, они крутые, но уж очень подробно жуют, нет столько времени.
31 Любопытная
 
24.05.15
15:53
(29) Очень нудно)
32 GROOVY
 
24.05.15
15:53
(29) Да тут нужен курс Илоны Давыдовой "Запросы во сне за 5 ночей".
33 Любопытная
 
24.05.15
15:54
(30) Проф разработка это для фундаментального понимания процессов. Я как-то на работе ликбез по УФ по мотивам проф разработки организовывала... меня не очень поняли)
34 Web00001
 
24.05.15
15:54
(31)Не заснуть самая главная проблема ага, при просмотре :)
35 andryscha
 
24.05.15
15:55
(31) соглашусь и спать хочется но для начинающего самое то)по крайней мере книжки читать и сразу понять не каждому дано)
36 Любопытная
 
24.05.15
15:55
(32) По 8.0 еще была чудесная книжка "Простые примеры разработки", вот она, имхо, была лучшей.
37 andryscha
 
24.05.15
15:56
(36) ага, я недавно её увидел, действительно полезная книга, когда я начинал мне не попадалась и на глаза она(
38 andryscha
 
24.05.15
15:58
только проблему нужно решить текущую, ждем вопросов от Shaggart
39 Web00001
 
24.05.15
15:59
(36)Я с нее начинал, как сказать, лучшей. Потому что не было ничего, много было в духе: нажмите сюда, в этом поле вставьте тест, теперь все работает. Почему, отчего, очень часто никаких пояснений.
40 Web00001
 
24.05.15
16:00
(38)скорее всего после того как GROOVY покусал Shaggart за неправильный запрос, он еще не скоро вернется.
41 Shaggart
 
24.05.15
16:01
"Покусал" сильно сказано, с тем как ты написал в 27 разберусь и вернусь.
42 Любопытная
 
24.05.15
16:03
(39) Елки, это же простые примеры разработки, а не учебник по программированию. Я оттуда брала те вещи, которые так никак не могла запомнить типа "как сделать запись в регистр сведений" и прочую подобную фигню. Какие пояснения там должны быть? Пояснения все разжеваны в Проф. разработке)
43 Web00001
 
24.05.15
16:08
(42)Отчетливо помню, момент: "создайте процедуру при открытии и добавьте туда..." я взял и написал руками в форме эту процедуру, она разумеется в свойства формы не прописалась и не отрабатывала при открытии формы, бился день. Потом было создание отчета на основании сводной таблицы(такую до сих пор можно встретить в консолях запросов) "перетащите мышкой сюда это, а вот сюда это, вот вам и отчет" как работает эта магия, ни слова пояснений.
44 Shaggart
 
24.05.15
16:09
(43)  МояТЧУКоторойЕстьРеквизитСсылкаИначеНеЗагрузится  , про какую ссылку речь идет, можешь пояснить?
45 Web00001
 
24.05.15
16:13
(44)Единственное поле которое есть в запросе - поле ссылка. Надо что бы поле с таким именем было там куда ты собрался грузить результат запроса. Ты же собрался грузить его в табличную часть документа а не выводить в табличный документ?
46 Web00001
 
24.05.15
16:14
Или тебе нужно распечатать результат запроса?
47 Рэйв
 
24.05.15
16:15
(44)>>ПоступлениеТоваровУслуг.Ссылка,
эт не по глазам?
48 Рэйв
 
24.05.15
16:16
(44)Уж лучше бы Объединить  использовал:-) А то так смотришь и забываешь, что культурный человек...
49 Любопытная
 
24.05.15
16:18
(43) Не помню такого, а книжка давно потеряна, так что опровергнуть не могу) Ну мне тоже такая магия попадалась. Зато, когда разберешься, запоминается надолго)
50 Shaggart
 
24.05.15
16:19
Распечатывать не нужно, нужно просто вывести в табличную часть документы
51 Любопытная
 
24.05.15
16:20
(50) что вывести-то надо? Подробности рассказывай)
52 Shaggart
 
24.05.15
16:22
есть некое количество документов, в которых есть реквизит заполненный номером, в каждом документе номер разный, в обработке пользователь вводит номер и должен увидеть в каких документах присутствует этот номер.
53 Web00001
 
24.05.15
16:22
(49)Зато я запомнил надолго :) бился головой об стол долго и упорно, три раза заново переделал,пока не дошло. Да сейчас зато отчетливо понимаю причину. Но какой ценой. Было бы пояснение, что у формы должно быть свойство заполнено и все было бы ок. А в магии, станет новичек разбираться? Просто получит пробел и пойдет дальше.
(50)Тогда у тебя должно быть припасено куда грузить. Поле в запросе переименуй как тебе надо и грузи куда надо.
54 Любопытная
 
24.05.15
16:25
(52) ну тады в запросе отбирай сразу по значению реквизита.
(53) "А в магии, станет новичОк разбираться?" Если нужно ему - станет. А если не нужно - нам такие не нужны)
55 Web00001
 
24.05.15
16:28
(54)Это простые примеры. Как разбираться то, если ничего не понимаешь? Ты не знаешь где так должно быть, где поля совпали по названию, а где платформа отработала. Хотя бы пояснения должны быть хоть какие то, напомню это было 8.0 из книг только СП да ЕСИС больше нету ничего.
56 Рэйв
 
24.05.15
16:28
(52)Как то примерно так, если я правильно стелепатировал:-)

Для Каждого Док Из Документы цикл
    Мета=Док.ПустаяСсылка().Метаданные();
    Имя=Мета.Имя;
    Запрос= Новый Запрос;

    Запрос.Текст="Выбрать Д.ссылка  Из Документ."+Имя+" КАК Д
    | ГДЕ Д.НомерТвой ПОДОБНО &Ном":
     Запрос.УстановитьПараметр("Ном","%КакойтоНомер%");
    тРез=Запрос.Выполнить().Выгрузить();
    Для Каждого Стр Из тРез Цикл
       Сообщить(Стр.ссылка);
    Конеццикла:
57 Рэйв
 
24.05.15
16:29
+Конеццикла в конце забыл:-)
58 Рэйв
 
24.05.15
16:30
Проверку на тему присуствия реквизита "НомерТвой" сам поди напишешь
59 GROOVY
 
24.05.15
16:36
Запрос в цикле? За это увольняют.
60 Любопытная
 
24.05.15
16:41
(55) Мы читали разные простые примеры. Ну или у меня просто таких вопросов не возникало. Или они до сих пор иногда возникают, но я рассматриваю их как собственную тупость, а не то, что кто-то не дообъяснял.
Впрочем, не обо мне речь)
(59) Где там запрос в цикле?
61 andryscha
 
24.05.15
16:46
(59) иногда понимаешь что запрос в цикле неправильно, но ориентируешься на результат и применяешь
62 Рэйв
 
24.05.15
16:46
(59)Поменьше консерватизма:-)
Иногда это необходимо.
63 PR2
 
24.05.15
16:46
(56) За цикл максимальный уровень зарплаты при любых натяжках 80.
За подобно вместо равно планка не выше 60, по-любому.
64 PR2
 
24.05.15
16:47
(61) В данном случае видимо ориентир на копро результат?
65 Рэйв
 
24.05.15
16:47
(63)Ну ты тут меня еще поучи, букварь...
Щас я на коленке буду тут полноценный модуль писать.
66 PR2
 
24.05.15
16:50
(65) Не надо ля-ля.
Какой полноценный модуль?
Подобно вместо равно - это тупо невнимательность.
67 Рэйв
 
24.05.15
16:51
(66)Тупо предусмотрительность.ТС не сказал насчет вхождения номера.
68 Web00001
 
24.05.15
16:52
(60)Видимо у меня всегда больше возникает вопросов, чем у остальных и я никогда их не рассматриваю как тупость.
Дык в (56) во всей красе, учат как делать не надо :)
69 Рэйв
 
24.05.15
16:53
(68)Еще один:-)  Ну можно было объединить с приращением  текста. Только смысл? Запрос был бы тот же самый по времени
70 PR2
 
24.05.15
16:54
(67) Не надо ля-ля.
ТС в (52) сказал "есть некое количество документов, в которых есть реквизит заполненный номером, в каждом документе номер разный, в обработке пользователь вводит номер и должен увидеть в каких документах присутствует этот номер.".
Ничего не сказано про то, что номер составной, может отличаться или еще что-то про то, что присутствие не означает равенство.
71 Рэйв
 
24.05.15
16:55
(70)"присутствует" для тебя равно? Ну мне тебя жаль тогда:-)
72 PR2
 
24.05.15
16:55
(69) Еще "Мета=Док.ПустаяСсылка().Метаданные();" красиво, да, все бы так с метаданными работали.
73 Любопытная
 
24.05.15
16:56
(68) Не разглядела первое Для Каждого в (56)
Видимо, у меня самооценка не так высока, как ваша. Завидую :)
74 Рэйв
 
24.05.15
16:56
(72)Чем этьо то тебе не угодило?:-))
75 PR2
 
24.05.15
16:56
(71) В данном контексте без дополнительных оговорок и уточнений несомненно.
76 Рэйв
 
24.05.15
16:57
(75)Вот именно потому что уточнений не было я и написал ПОДОБНО
77 PR2
 
24.05.15
16:57
(74) Док.Имя вообще-то
78 Рэйв
 
24.05.15
16:57
(77)А ты попробуй сам
79 Рэйв
 
24.05.15
16:58
а потом скажешь насколько не получилось:-))
80 PR2
 
24.05.15
16:58
(76) Я и говорю, горе от ума.
Юридически ты может даже выиграешь, практически клиент скажет, что нахрен ему нужны такие автоматизаторы.
81 Рэйв
 
24.05.15
16:58
Не путай Матаданные.Документ и Документы
82 Рэйв
 
24.05.15
16:59
(80)А я уже давно вышел из того вохраста чтобы угождать клиентам против логики:-)))
83 PR2
 
24.05.15
17:00
(81) Я и не путаю.
Только говоря про документы я не говорю про какой-то список конкретных документов-объектов.
А если даже и так, то Документ.Метаданные().Имя, уж никак не через создание пустой ссылки.
84 Рэйв
 
24.05.15
17:01
(83)Еще раз говорю - попробуй:-)
Ты думаешь я с пустого места так написал?
85 PR2
 
24.05.15
17:06
(84) Вообще в (0) + (13) речь про типы документов, ну да ладно.
По поводу Документ.Метаданные().Имя даже проверять не буду, что проверять-то, сто раз уж пользовался.
86 Рэйв
 
24.05.15
17:07
(85)Я тоже потому так написал что знаю что напрямую .Имя не взять:-))..А ты тут технично слиться пытаешься :-)
87 Drac0
 
24.05.15
17:07
(0) ух ты ж, е*аный ты на*уй!
88 PR2
 
24.05.15
17:09
(86) Ты утверждаешь, что Документ.Метаданные().Имя, где Документ — это ссылка на документ, не сработает? :))
89 Drac0
 
24.05.15
17:11
(88) Оставь его. По выходным и вечерам пятницы он тут нетрезв :)
90 Рэйв
 
24.05.15
17:11
(88)ссылка?...Ну это ноаое чтото в ссылочной целостности:-)))
91 ILM
 
гуру
24.05.15
17:11
ТЧ.Загрузить(Запрос.Выполнить().Выгрузить());
92 Рэйв
 
24.05.15
17:12
(89)С чего ты это взял то?6-))..Еще один блин блюститель мой нравственности нашелся...
93 rphosts
 
24.05.15
17:13
(91) уже писал в (19)... ТС оно не помогло...
94 Drac0
 
24.05.15
17:13
(92) Мне ср?ть на твою нравственность. Людей предупреждаю, чтобы время не тратили.
95 rphosts
 
24.05.15
17:13
(87) от души...
96 Drac0
 
24.05.15
17:13
(91) Ты сам запрос зацени :)
97 rphosts
 
24.05.15
17:14
ну почему не по пятницам такие темы?!
98 Рэйв
 
24.05.15
17:14
(94)Я то как раз сейчас кристально трезв. А вот в твоей трезвости у меня возникают сомнения..
99 PR2
 
24.05.15
17:16
Мда, поразительная упертость
100 Рэйв
 
24.05.15
17:17
(99)сто
101 Рэйв
 
24.05.15
17:17
(99)Рад что самокритика у тебя появилась:-))
102 PR2
 
24.05.15
17:19
(101) Да, да, все хорошо, имя объекта метаданных нужно получать через пустую ссылку, только успокойся :))
103 Рэйв
 
24.05.15
17:20
(102)Да это походу ты не спокоен.Я то просто прикалываюсь, а ты похоже всерьез:-))
104 PR2
 
24.05.15
17:21
(103) А, так это ты питрасянишь. Ну тогда ладно :))
105 Рэйв
 
24.05.15
17:21
(104)ааа...Это ты тут типа умного из себя строишь...Ну тогда ладно:-))
106 PR2
 
24.05.15
17:23
(105) Ну, вообще в сухом остатке у меня правильные советы, а у тебя питрасянистые шутки :))
107 Рэйв
 
24.05.15
17:23
(106)>>Правильные советы...

Какое самомнение однако..:-))
108 PR2
 
24.05.15
17:24
(107) Хех, ты опять готов что-то из них оспорить? :))
109 Рэйв
 
24.05.15
17:25
(108)Не в обиду будет сказано, но метать бисер мне скучно..
110 PR2
 
24.05.15
17:27
(109) Хех, ну как знаешь, питрасянистый ты наш, слив засчитан :))
111 Рэйв
 
24.05.15
17:29
(110)Да защитывай чего хочешь.:-)
Ты просто ходишь по кругу и перестал меня интересовать.
:-)
112 Web00001
 
24.05.15
17:50
Джентльмены мне крайне неловко прерывать вашу крайне интеллектуальную беседу, но я таки взял отладчик посмотреть за (56) и тоже увидел, что не нужна там пустая ссылка. Или я что то неправильно понял. Вот код:
    //Перебор всех метаданных, ссылки нет
    Для Каждого Док Из Метаданные.Документы Цикл
        
        Сообщить(Док.Имя);
        
    КонецЦикла;
    //ссылка есть
    Сообщить(ПолеВвода1.Метаданные().Имя);

Может быть в какой то момент, запрос в цикле можно пропустить, если все работает и быстро, то да и хрен бы с ним. Но мысль то все таки была, что не надо этому учить человека, который вчера конструктор запросов увидел. А про запросы узнал позавчера. Он же будет всегда так делать.
113 PR2
 
24.05.15
19:00
(112) Сейчас он и тебе расскажет, что Документы <> Метаданные.Документы :))