Имя: Пароль:
1C
1С v8
Как в запросе получить виды документов
,
0 sidalexsandr
 
14.12.12
13:40
Есть запрос:
ВЫБРАТЬ
   СчетФактураПолученный.Ссылка,
   СчетФактураПолученный.СуммаДокумента,
   СчетФактураПолученный.ДокументОснование
ИЗ
   Документ.СчетФактураПолученный КАК СчетФактураПолученный
ГДЕ
   СчетФактураПолученный.СуммаДокумента = 0

Вопрос: Как из него получить виды использумых ДокументОснование?
1 singlych
 
14.12.12
13:47
ТИПЗНАЧЕНИЯ, не?
2 AugustBlack
 
14.12.12
13:56
(0)мб сделать условие прям в запросе
"выбор когда ссылка документ тогда"
и т.д
3 kiruha
 
14.12.12
14:02
Есть же ПРЕДСТАВЛЕНИЕ
с ним и работай
Вид не нужен
4 kiruha
 
14.12.12
14:04
Если хочется "нестандартного" представления (непонятно зачем)- во временную таблицу
5 Wobland
 
14.12.12
14:05
очередная перепись телепатов
6 sidalexsandr
 
14.12.12
14:20
(4) Временной таблицы нет.
7 sidalexsandr
 
14.12.12
14:22
Цель такая:
СчетФактураПолученный 0 АвансовыйОтчет
СчетФактураПолученный 0 ВозвратТоваровОтПокупателя

То есть по одной строчке для каждого вида ДокументОснование
8 sidalexsandr
 
14.12.12
14:24
Сейчас:Счет-фактура полученный E0000002675 от 08.10.2012 23:59:59        Авансовый отчет E0000000222 от 08.10.2012 23:59:59
Счет-фактура полученный E0000002676 от 12.10.2012 0:00:00        Авансовый отчет E0000000223 от 12.10.2012 0:00:00
Счет-фактура полученный E0000002677 от 12.10.2012 23:59:59        Авансовый отчет E0000000225 от 12.10.2012 23:59:59
Счет-фактура полученный E0000002678 от 12.10.2012 0:00:00        Авансовый отчет E0000000224 от 12.10.2012 0:00:00
Счет-фактура полученный E0000002679 от 12.10.2012 0:00:00        Авансовый отчет E0000000224 от 12.10.2012 0:00:00
Счет-фактура полученный E0000002681 от 12.10.2012 23:59:59        Авансовый отчет E0000000226 от 12.10.2012 23:59:59
Счет-фактура полученный E0000002719 от 15.10.2012 0:00:00        Авансовый отчет E0000000228 от 15.10.2012 0:00:00
Счет-фактура полученный E0000002733 от 15.10.2012 23:59:59        Авансовый отчет E0000000229 от 15.10.2012 23:59:59
Счет-фактура полученный E0000002734 от 15.10.2012 23:59:59        Авансовый отчет E0000000230 от 15.10.2012 23:59:59
Счет-фактура полученный E0000002680 от 04.10.2012 18:00:02        Поступление из переработки E0000000093 от 04.10.2012 9:00:00
Счет-фактура полученный E0000002443 от 21.09.2012 23:59:59        Авансовый отчет E0000000208 от 21.09.2012 23:59:59
9 Wobland
 
14.12.12
14:25
(7) тебе нужно в (2)
10 sidalexsandr
 
14.12.12
14:25
Обратите внимание на последний столбец предпоследнюю Строку.

А надо как в (7).
11 Wobland
 
14.12.12
14:27
(10) надо как в (2). определить число по типу документа и понему группировать.
а что там в столбце?
12 sidalexsandr
 
14.12.12
14:28
(11) Написал:ВЫБРАТЬ ТИПЗНАЧЕНИЯ(СчетФактураПолученный.ДокументОснование) КАК ВидДок
ИЗ
(ВЫБРАТЬ
   СчетФактураПолученный.Ссылка,
   СчетФактураПолученный.СуммаДокумента,
   СчетФактураПолученный.ДокументОснование
ИЗ
   Документ.СчетФактураПолученный КАК СчетФактураПолученный
ГДЕ
   СчетФактураПолученный.СуммаДокумента = 0) КАК ВложЗапр

Не работает
13 Wobland
 
14.12.12
14:28
(12) бывает..
14 Wobland
 
14.12.12
14:29
по строке в принципе тоже можно группировать, тогда выборы не нужны..
15 sidalexsandr
 
14.12.12
14:30
Поправил, но всеравно не работает:
ВЫБРАТЬ ТипЗнч(ДокументОснование) КАК ВидДок
ИЗ
(ВЫБРАТЬ
   СчетФактураПолученный.Ссылка,
   СчетФактураПолученный.СуммаДокумента,
   СчетФактураПолученный.ДокументОснование
ИЗ
   Документ.СчетФактураПолученный КАК СчетФактураПолученный
ГДЕ
   СчетФактураПолученный.СуммаДокумента = 0) КАК ВложЗапр
16 Wobland
 
14.12.12
14:30
(15) и такое случается
17 DrShad
 
14.12.12
14:31
(13), (16) +1
18 1C-band
 
14.12.12
14:32
ВЫБОР
   КОГДА СчетФактураПолученный.Ссылка ССЫЛКА(Документ.СчетФактураПолученный)
       ТОГДА "СчетФактураПолученный"
   ИНАЧЕ "Что-то другое, но точно не счёт-фактура!"
КОНЕЦ КАК ЭтоСчетФактураПолученный
19 1C-band
 
14.12.12
14:32
+ и так по каждому типу ))
20 DrShad
 
14.12.12
14:32
(15) у тебя все равно будет один единственный док основание
21 Wobland
 
14.12.12
14:32
и даже различные можно попросить выбрать, если интересуют только типы документов
22 sidalexsandr
 
14.12.12
15:05
(21) Вот различные и нужны.
23 sidalexsandr
 
14.12.12
15:06
(18) Спасибо.
24 Wobland
 
14.12.12
15:06
(22) ты хочешь их выбрать? выбери их полностью. прямо из счетов-фактур, где 0
25 sidalexsandr
 
14.12.12
15:45
(18) Выдает ошибку:
ВЫБРАТЬ
КОГДА ВложЗапр.ДокументОснование.Ссылка ССЫЛКА(Документ.ДокументРасчетовСКонтрагентом)
       ТОГДА
   ВложЗапр.Ссылка,
   ВложЗапр.СуммаДокумента,
   ВложЗапр.ДокументОснование,
   ВложЗапр.ДокументОснование.СуммаДокумента
   КОНЕЦ КОНЕЦ КАК ДокументРасчетовСКонтрагентом
ИЗ
   (ВЫБРАТЬ
       СчетФактураПолученный.Ссылка КАК Ссылка,
       СчетФактураПолученный.СуммаДокумента КАК СуммаДокумента,
       СчетФактураПолученный.ДокументОснование КАК ДокументОснование
   ИЗ
       Документ.СчетФактураПолученный КАК СчетФактураПолученный
   ГДЕ
       СчетФактураПолученный.СуммаДокумента = 0) КАК ВложЗапр
26 6tuf
 
14.12.12
15:47
ВЫБРАТЬ
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ПередачаТоваровМеждуОрганизациями.Ссылка) КАК Ссылка,
   ТИПЗНАЧЕНИЯ(ПередачаТоваровМеждуОрганизациями.ДокументОснование) КАК Поле1
ИЗ
   Документ.ПередачаТоваровМеждуОрганизациями КАК ПередачаТоваровМеждуОрганизациями

СГРУППИРОВАТЬ ПО
   ТИПЗНАЧЕНИЯ(ПередачаТоваровМеждуОрганизациями.ДокументОснование)
27 kiruha
 
14.12.12
15:48
Универсальный - пользуйся

МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
ТЗ=Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("ПустаяССылка",Документы.ТипВсеСсылки());
ТЗ.Колонки.Добавить("ВидМетаданных",Новый ОписаниеТипов("Строка"));

Для каждого ДокМенеджер Из Документы Цикл
    Стр=ТЗ.Добавить();
    Стр. ПустаяССылка=ДокМенеджер.ПустаяСсылка();
    // любое свое представление
    Стр.ВидМетаданных=ДокМенеджер.ПустаяСсылка().Метаданные().Имя;
КонецЦикла;                                                          

Запрос.Текст=    "ВЫБРАТЬ
   |    *
   |ПОМЕСТИТЬ ТаблицаПредставленияВида
   |ИЗ
   |    &ТЗ КАК ТЗ2 ;
   | ВЫБРАТЬ
   |ТаблицаПредставленияВида.ВидМетаданных,
   |ВзаиморасчетыСКонтрагентами.Регистратор
   |ИЗ РегистрНакопления.ВзаиморасчетыСКонтрагентами КАК ВзаиморасчетыСКонтрагентами
   | ЛЕВОЕ СОЕДИНЕНИЕ  ТаблицаПредставленияВида
   |ПО  ТИПЗНАЧЕНИЯ(ВзаиморасчетыСКонтрагентами.Регистратор) = ТИПЗНАЧЕНИЯ(ТаблицаПредставленияВида.ПустаяССылка )
   |";
Запрос.УстановитьПараметр("ТЗ",ТЗ);
ТзПередано=Запрос.Выполнить().Выгрузить();
28 sidalexsandr
 
14.12.12
15:50
(26) Спасибо
29 Wobland
 
14.12.12
15:51
а я, как обычно, остаюсь без спасибы
30 НЕА123
 
14.12.12
15:56
(29)
Спасибо.
31 aka AMIGO
 
14.12.12
15:56
(29) спасибо! не грусти :)
32 Wobland
 
14.12.12
15:59
(30) (31) от прям отлегло ;)
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn