Вход | Регистрация


1С:Предприятие ::

Метки:Запросы и построители

Простой запрос по справочнику

Я
   AlexMan
 
08.03.04 - 20:38
Код запроса+выгрузка в ТЗ:Перем Запрос, ТекстЗапроса;
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса = 
    "//{{ЗАПРОС(Сформировать)

    |ТекущийЭлемент = Справочник.Материалы.ТекущийЭлемент;
    |Наименование = Справочник.Материалы.Наименование;
    |Артикул = Справочник.Материалы.Артикул;
    |Субсчет = Справочник.Материалы.Субсчет;
    |Группировка ТекущийЭлемент;";    
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Возврат;
    КонецЕсли;
    Таб=СоздатьОбъект("ТаблицаЗначений");   
    Запрос.Выгрузить(Таб,1,1);              
   Таб.ВыбратьСтроку()
В результате в ТЗ попадают элементы справочкика+группы справочника но не все группы а только те внутри клторых есть элементы, а как в запрос "загнать" все группы независимо от того есть ли в них элементы ?
 
 
   GrayT
 
1 - 08.03.04 - 21:29
Вот ведь, млин. В ИТС написано что нельзя этого сделать :(
Возможно, кто-то знает как извернуться, я пока не придумал
   AlexMan
 
2 - 08.03.04 - 21:40
Надо ИТС почитать. Спасибо за наводку.
   327
3 - 08.03.04 - 21:56
Мало ли чего сказано в ИТС.... Там .... ХХХХХ ХХХХ ХХХХ ХХХХ ХХХХ

Читать тоже уметь надо....
   AlexMan
 
4 - 08.03.04 - 22:06
(3) так что всетаки решить задачу в (0) можно?
   Lex_2k
 
5 - 08.03.04 - 22:46
При вугрузке в ТЗ сохраняются только значения группировочных пременных запроса и Значения функций по группировкам. По любому. И не пытайся. Лучьше застрелись.
Это,кстати, не самый веселый прикол по выполнеию запросов. Удачи!
   GrayT
 
6 - 08.03.04 - 22:46
+4 Ну и где мои пасатижи :)
Pit не томи душу, плз.
   Lex_2k
 
7 - 08.03.04 - 22:48
Извернуться сможешь периибирая запрос группировками и записывая значения в таблицу
   Lex_2k
 
8 - 08.03.04 - 22:53
Извини, сразу ворос не понял.
Не парься. Сделай в запросе переменную "код" и по ней группируй. А так, действительно, по х.не группируешь-то.
   327
9 - 08.03.04 - 22:55
Ну я предпочитаю делать это перебором справочника ...

А вообще на Т1С как то проскакивала информация, как сделать нечто подобное... Я не скопировал в записную книжку....

Из этой же оперы - получение Родителя.... тоже было показано...

Фичи ...

Хотя... Если в группе нет элементов - а на кой они нужны, такие группы....
а если в группе нет элементов, но есть подгруппы.... так они и так в выгруженных в ТЗ результатах неявно присутствуют... Надо только их найти
   327
10 - 08.03.04 - 22:56
по коду группировать .... без комментариев ....
 
  Рекламное место пустует
   GrayT
 
11 - 08.03.04 - 23:04
По родителю Папки в корневой дирректори то-же ...
   Lex_2k
 
12 - 08.03.04 - 23:04
327, Ну коды должны быть уникальными! Если хотишь так сделать. Всё ок. Это только вариант. Не нервничай!
   AlexMan
 
13 - 08.03.04 - 23:07
(8) Попробую по коду (не понимаю по чему я по х.не  группирую). Правда для справочника материалы код уникален лиш в пределах группы ....
   Lex_2k
 
14 - 08.03.04 - 23:11
Объясню по чему по х.не.
Ты уверен, что в момент выполнения запроса текущий элемент объекта Справочник.Материалы - это то что ты думаешь? я не уверен!
   Lex_2k
 
15 - 08.03.04 - 23:12
Если нет уникальности кодов. не делай!
   AlexMan
 
16 - 08.03.04 - 23:14
По коду полный бред (даже не все элементы вошли очивидно из-за уникальности кодов в пределах группы).Ну вобщем то если бы и уникальность была в пределах всего справочника тогда также не получилось бы (чем интерестно код лучше ТекущийЭлемент?).
   AlexMan
 
17 - 08.03.04 - 23:22
(14)????
По справочнику Номенклатура в котором коды уникальны в пределах подчинения также ничего не вышло..........
код запроса:    Перем Запрос, ТекстЗапроса;
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса = 
    "//{{ЗАПРОС(Сформировать)

    |ТекущийЭлемент = Справочник.Номенклатура.ТекущийЭлемент;
    |Наименование = Справочник.Номенклатура.Наименование;
    |Код = Справочник.Номенклатура.Код;
    |Артикул = Справочник.Номенклатура.Артикул;
    |Группировка ТекущийЭлемент;";    
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Возврат;
    КонецЕсли;
    Таб=СоздатьОбъект("ТаблицаЗначений");   
    Запрос.Выгрузить(Таб,1,1);              
    Таб.ВыбратьСтроку()
   AlexMan
 
18 - 08.03.04 - 23:23
(17)+ в номенклавтуре коду уникальны в пределах всего справочника........
   AlexMan
 
19 - 08.03.04 - 23:24
код запроса с группировкой по коду:
Перем Запрос, ТекстЗапроса;
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса = 
    "//{{ЗАПРОС(Сформировать)

    |ТекущийЭлемент = Справочник.Номенклатура.ТекущийЭлемент;
    |Наименование = Справочник.Номенклатура.Наименование;
    |Код = Справочник.Номенклатура.Код;
    |Артикул = Справочник.Номенклатура.Артикул;
    |Группировка Код;";    
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Возврат;
    КонецЕсли;
    Таб=СоздатьОбъект("ТаблицаЗначений");   
    Запрос.Выгрузить(Таб,1,1);              
    Таб.ВыбратьСтроку()
   Lex_2k
 
20 - 08.03.04 - 23:27
Погоди, щас расковыряем!
   Lex_2k
 
21 - 08.03.04 - 23:45
У меня в таком виде работает. Даже с ТекущийЭлемент;
В запрос попадает всё, проверял! Все группы и элементы.

Перем Запрос, ТекстЗапроса; 
   Запрос = СоздатьОбъект("Запрос"); 
   ТекстЗапроса = 
   "//{{ЗАПРОС(Сформировать) 

   |ТЭ = Справочник.Номенклатура.ТекущийЭлемент; 
   |Наименование = Справочник.Номенклатура.Наименование; 
   |Код = Справочник.Номенклатура.Код; 
   |Группировка ТЭ;";     
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда 
       Возврат; 
   КонецЕсли; 
  //Таб=СоздатьОбъект("ТаблицаЗначений");   

   Запрос.Выгрузить(Таб,1,1);
   GrayT
 
22 - 09.03.04 - 00:07
(21) Ни чего не перепутал? И группы где нет элементов то же выводятся?
   Южаков
23 - 09.03.04 - 13:31
Обязательно через запрос решение? если нет, пиши, подскажу как сделал сам.
   Рупор абсурда
 
24 - 09.03.04 - 14:13
Этот Lex_2k так уверенно чушь городит ...
И ещё какую ЧУШЬ ...

ЗЫ: Хорошая веточка какая получилась, с удовольствием почитал ... :))
   Zubr
 
25 - 09.03.04 - 20:46
Можно я глупость скажу ?
"Группировка ТекущийЭлемент Все"
   Кое-кто@где-то.там
26 - 09.03.04 - 21:44
   skunk
 
27 - 09.03.04 - 21:59
прикольно... но не понятно на фиха это надо, пустую группу...
   AlexMan
 
28 - 09.03.04 - 22:14
(21) у меня не работает........
(24) Рупор а ты мог бы сказать свое веское слово...
(25)"Группировка ТекущийЭлемент Все" -не прокатывает
   GrayT
 
29 - 09.03.04 - 23:46
(26) Насколько я понял, там так же ответа не нашли.



Список тем форума
  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует