Имя: Пароль:
1C
1С v8
Помогите разобраться с запросом
, ,
0 ded20ded
 
23.04.13
09:09
АРМ Больничная аптека

Запрос такой

ВЫБРАТЬ РАЗРЕШЕННЫЕ
   СебестоимостьТоваровОстаткиИОбороты.Номенклатура.ГруппаПКУ КАК ГруппаПКУ,
   СебестоимостьТоваровОстаткиИОбороты.Номенклатура КАК Номенклатура,
   СебестоимостьТоваровОстаткиИОбороты.ЕдиницаИзмерения,
   СебестоимостьТоваровОстаткиИОбороты.ОстатокНаНачало,
   СебестоимостьТоваровОстаткиИОбороты.Приход,
   СебестоимостьТоваровОстаткиИОбороты.Расход,
   СебестоимостьТоваровОстаткиИОбороты.ОстатокНаКонец,
   СебестоимостьТоваровОстаткиИОбороты.Сумма,
   ПринадлежностьЛСКСпискам.Безрецептурное,
   ПринадлежностьЛСКСпискам.ЖНВЛС,
   ПринадлежностьЛСКСпискам.ДЛО,
   ПринадлежностьЛСКСпискам.НаркотическоеВещество КАК НаркотическоеВещество,
   ПринадлежностьЛСКСпискам.СильнодействующиеИЯды КАК СильнодействующиеИЯды,
   ПринадлежностьЛСКСпискам.СпискиАиБ КАК СпискиАиБ
ИЗ
   (ВЫБРАТЬ
       ОстаткиИОбороты.Номенклатура КАК Номенклатура,
       ОстаткиИОбороты.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
       СУММА(ОстаткиИОбороты.ОстатокНаНачало) КАК ОстатокНаНачало,
       СУММА(ОстаткиИОбороты.Приход) КАК Приход,
       СУММА(ОстаткиИОбороты.Расход) КАК Расход,
       СУММА(ОстаткиИОбороты.ОстатокНаКонец) КАК ОстатокНаКонец,
       СУММА(ОстаткиИОбороты.Сумма) КАК Сумма
   ИЗ
       (ВЫБРАТЬ
           АналитикиВидаУчета.Склад КАК Склад,
           АналитикиВидаУчета.ИсточникФинансирования КАК ИсточникФинансирования,
           АналитикиУчетаНоменклатуры.Номенклатура КАК Номенклатура,
           АналитикиУчетаНоменклатуры.Номенклатура.ОсновнаяЕдиницаУчета КАК ЕдиницаИзмерения,
           СебестоимостьТоваровОстаткиИОбороты.КоличествоНачальныйОстаток * 1 КАК ОстатокНаНачало,
           0 КАК Приход,
           0 КАК Расход,
           СебестоимостьТоваровОстаткиИОбороты.КоличествоКонечныйОстаток * 1 КАК ОстатокНаКонец,
           СебестоимостьТоваровОстаткиИОбороты.СтоимостьКонечныйОстаток КАК Сумма
       ИЗ
           РегистрНакопления.СебестоимостьТоваров.ОстаткиИОбороты({(&ДатаНачала)}, {(&ДатаОкончания)}, , , РазделУчета = ЗНАЧЕНИЕ(Перечисление.РазделыУчетаСебестоимостиТоваров.ТоварыНаСкладах)) КАК СебестоимостьТоваровОстаткиИОбороты
               ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаВидаУчета КАК АналитикиВидаУчета
               ПО СебестоимостьТоваровОстаткиИОбороты.АналитикаВидаУчета = АналитикиВидаУчета.КлючАналитики
               ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикиУчетаНоменклатуры
               ПО СебестоимостьТоваровОстаткиИОбороты.АналитикаУчетаНоменклатуры = АналитикиУчетаНоменклатуры.КлючАналитики
       ГДЕ
           АналитикиВидаУчета.Организация = &Организация
       {ГДЕ
           АналитикиВидаУчета.Склад.*,
           АналитикиВидаУчета.ИсточникФинансирования.*,
           АналитикиУчетаНоменклатуры.Номенклатура.*}
       
       ОБЪЕДИНИТЬ ВСЕ
       
       ВЫБРАТЬ
           АналитикиВидаУчета.Склад,
           АналитикиВидаУчета.ИсточникФинансирования,
           АналитикиУчетаНоменклатуры.Номенклатура,
           АналитикиУчетаНоменклатуры.Номенклатура.ОсновнаяЕдиницаУчета,
//было АналитикиУчетаНоменклатуры.Номенклатура.Упаковка,
           0,
           ВЫБОР
               КОГДА СебестоимостьТоваров.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
                   ТОГДА СебестоимостьТоваров.Количество  * 1
               ИНАЧЕ 0
           КОНЕЦ,
           ВЫБОР
               КОГДА СебестоимостьТоваров.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
                   ТОГДА СебестоимостьТоваров.Количество * 1
               ИНАЧЕ 0
           КОНЕЦ,
           0,
           0
       ИЗ
           РегистрНакопления.СебестоимостьТоваров КАК СебестоимостьТоваров
               ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаВидаУчета КАК АналитикиВидаУчета
               ПО СебестоимостьТоваров.АналитикаВидаУчета = АналитикиВидаУчета.КлючАналитики
               ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикиУчетаНоменклатуры
               ПО СебестоимостьТоваров.АналитикаУчетаНоменклатуры = АналитикиУчетаНоменклатуры.КлючАналитики
       ГДЕ
           СебестоимостьТоваров.Активность
           И СебестоимостьТоваров.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
           И СебестоимостьТоваров.РазделУчета = ЗНАЧЕНИЕ(Перечисление.РазделыУчетаСебестоимостиТоваров.ТоварыНаСкладах)
           И СебестоимостьТоваров.ХозяйственнаяОперация В(&ХозяйственныеОперации)
           И АналитикиВидаУчета.Организация = &Организация
       {ГДЕ
           АналитикиВидаУчета.Склад.*,
           АналитикиВидаУчета.ИсточникФинансирования.*,
           АналитикиУчетаНоменклатуры.Номенклатура.*}) КАК ОстаткиИОбороты
   
   СГРУППИРОВАТЬ ПО
       ОстаткиИОбороты.ЕдиницаИзмерения,
       ОстаткиИОбороты.Номенклатура) КАК СебестоимостьТоваровОстаткиИОбороты
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПринадлежностьЛСКСпискам КАК ПринадлежностьЛСКСпискам
       ПО (СебестоимостьТоваровОстаткиИОбороты.Номенклатура.ЭлементКАТ = ПринадлежностьЛСКСпискам.КАТ)
           И (СебестоимостьТоваровОстаткиИОбороты.Номенклатура.ЭтоЛекарственноеСредство)

УПОРЯДОЧИТЬ ПО
   Номенклатура.Наименование

Как в запросе получить коэффициент и помножить его на количество
1 ded20ded
 
23.04.13
09:11
Коэффициент берется из спр. ЕдиницыИзмерения.Коэффициент01
2 chelentano
 
23.04.13
09:12
СебестоимостьТоваровОстаткиИОбороты.КоличествоНачальныйОстаток * АналитикиУчетаНоменклатуры.Номенклатура.ОсновнаяЕдиницаУчета.Коэффициент ?
3 Рэйв
 
23.04.13
09:13
Вообщето все остатки ведутся в базовых единицах..Так что нафик там тебе коээициент не нужен
4 Рэйв
 
23.04.13
09:14
это только пир продаже/покупке если коробками продаешь вместо штук- тогда да
5 ded20ded
 
23.04.13
09:16
(4) у меня в запросе была привязка к упаковкам

сейчас сделал так

ВЫБРАТЬ РАЗРЕШЕННЫЕ
   СебестоимостьТоваровОстаткиИОбороты.Номенклатура.ГруппаПКУ КАК ГруппаПКУ,
   СебестоимостьТоваровОстаткиИОбороты.Номенклатура КАК Номенклатура,
   СебестоимостьТоваровОстаткиИОбороты.ЕдиницаИзмерения,
   СебестоимостьТоваровОстаткиИОбороты.ОстатокНаНачало,
   СебестоимостьТоваровОстаткиИОбороты.Приход,
   СебестоимостьТоваровОстаткиИОбороты.Расход,
   СебестоимостьТоваровОстаткиИОбороты.ОстатокНаКонец,
   СебестоимостьТоваровОстаткиИОбороты.Сумма,
   ПринадлежностьЛСКСпискам.Безрецептурное,
   ПринадлежностьЛСКСпискам.ЖНВЛС,
   ПринадлежностьЛСКСпискам.ДЛО,
   ПринадлежностьЛСКСпискам.НаркотическоеВещество КАК НаркотическоеВещество,
   ПринадлежностьЛСКСпискам.СильнодействующиеИЯды КАК СильнодействующиеИЯды,
   ПринадлежностьЛСКСпискам.СпискиАиБ КАК СпискиАиБ
ИЗ
   (ВЫБРАТЬ
       ОстаткиИОбороты.Номенклатура КАК Номенклатура,
       ОстаткиИОбороты.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
       СУММА(ОстаткиИОбороты.ОстатокНаНачало) КАК ОстатокНаНачало,
       СУММА(ОстаткиИОбороты.Приход) КАК Приход,
       СУММА(ОстаткиИОбороты.Расход) КАК Расход,
       СУММА(ОстаткиИОбороты.ОстатокНаКонец) КАК ОстатокНаКонец,
       СУММА(ОстаткиИОбороты.Сумма) КАК Сумма
   ИЗ
       (ВЫБРАТЬ
           АналитикиВидаУчета.Склад КАК Склад,
           АналитикиВидаУчета.ИсточникФинансирования КАК ИсточникФинансирования,
           АналитикиУчетаНоменклатуры.Номенклатура КАК Номенклатура,
           АналитикиУчетаНоменклатуры.Номенклатура.ОсновнаяЕдиницаУчета КАК ЕдиницаИзмерения,
           СебестоимостьТоваровОстаткиИОбороты.КоличествоНачальныйОстаток * АналитикиУчетаНоменклатуры.Номенклатура.Упаковка.Коэффициент01 КАК ОстатокНаНачало,
           0 КАК Приход,
           0 КАК Расход,
           СебестоимостьТоваровОстаткиИОбороты.КоличествоКонечныйОстаток * АналитикиУчетаНоменклатуры.Номенклатура.Упаковка.Коэффициент01 КАК ОстатокНаКонец,
           СебестоимостьТоваровОстаткиИОбороты.СтоимостьКонечныйОстаток КАК Сумма
       ИЗ
           РегистрНакопления.СебестоимостьТоваров.ОстаткиИОбороты({(&ДатаНачала)}, {(&ДатаОкончания)}, , , РазделУчета = ЗНАЧЕНИЕ(Перечисление.РазделыУчетаСебестоимостиТоваров.ТоварыНаСкладах)) КАК СебестоимостьТоваровОстаткиИОбороты
               ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаВидаУчета КАК АналитикиВидаУчета
               ПО СебестоимостьТоваровОстаткиИОбороты.АналитикаВидаУчета = АналитикиВидаУчета.КлючАналитики
               ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикиУчетаНоменклатуры
               ПО СебестоимостьТоваровОстаткиИОбороты.АналитикаУчетаНоменклатуры = АналитикиУчетаНоменклатуры.КлючАналитики
       ГДЕ
           АналитикиВидаУчета.Организация = &Организация
       {ГДЕ
           АналитикиВидаУчета.Склад.*,
           АналитикиВидаУчета.ИсточникФинансирования.*,
           АналитикиУчетаНоменклатуры.Номенклатура.*}
       
       ОБЪЕДИНИТЬ ВСЕ
       
       ВЫБРАТЬ
           АналитикиВидаУчета.Склад,
           АналитикиВидаУчета.ИсточникФинансирования,
           АналитикиУчетаНоменклатуры.Номенклатура,
           АналитикиУчетаНоменклатуры.Номенклатура.ОсновнаяЕдиницаУчета,
           0,
           ВЫБОР
               КОГДА СебестоимостьТоваров.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
                   ТОГДА СебестоимостьТоваров.Количество  * АналитикиУчетаНоменклатуры.Номенклатура.Упаковка.Коэффициент01
               ИНАЧЕ 0
           КОНЕЦ,
           ВЫБОР
               КОГДА СебестоимостьТоваров.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
                   ТОГДА СебестоимостьТоваров.Количество * АналитикиУчетаНоменклатуры.Номенклатура.Упаковка.Коэффициент01
               ИНАЧЕ 0
           КОНЕЦ,
           0,
           0
       ИЗ
           РегистрНакопления.СебестоимостьТоваров КАК СебестоимостьТоваров
               ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаВидаУчета КАК АналитикиВидаУчета
               ПО СебестоимостьТоваров.АналитикаВидаУчета = АналитикиВидаУчета.КлючАналитики
               ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.АналитикаУчетаНоменклатуры КАК АналитикиУчетаНоменклатуры
               ПО СебестоимостьТоваров.АналитикаУчетаНоменклатуры = АналитикиУчетаНоменклатуры.КлючАналитики
       ГДЕ
           СебестоимостьТоваров.Активность
           И СебестоимостьТоваров.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
           И СебестоимостьТоваров.РазделУчета = ЗНАЧЕНИЕ(Перечисление.РазделыУчетаСебестоимостиТоваров.ТоварыНаСкладах)
           И СебестоимостьТоваров.ХозяйственнаяОперация В(&ХозяйственныеОперации)
           И АналитикиВидаУчета.Организация = &Организация
       {ГДЕ
           АналитикиВидаУчета.Склад.*,
           АналитикиВидаУчета.ИсточникФинансирования.*,
           АналитикиУчетаНоменклатуры.Номенклатура.*}) КАК ОстаткиИОбороты
   
   СГРУППИРОВАТЬ ПО
       ОстаткиИОбороты.ЕдиницаИзмерения,
       ОстаткиИОбороты.Номенклатура) КАК СебестоимостьТоваровОстаткиИОбороты
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПринадлежностьЛСКСпискам КАК ПринадлежностьЛСКСпискам
       ПО (СебестоимостьТоваровОстаткиИОбороты.Номенклатура.ЭлементКАТ = ПринадлежностьЛСКСпискам.КАТ)
           И (СебестоимостьТоваровОстаткиИОбороты.Номенклатура.ЭтоЛекарственноеСредство)

УПОРЯДОЧИТЬ ПО
   Номенклатура.Наименование
6 ded20ded
 
23.04.13
09:16
валится ошибка
Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{Отчет.ОтчетОДвиженииЛекарственныхСредствПодлежащихПКУ_2МЗ.МодульОбъекта(60)}: Ошибка при вызове метода контекста (Выполнить)
   РезультатЗапроса = Запрос.Выполнить();
по причине:
{(35, 1)}: Ожидается выражение "КОНЕЦ"
<<?>>КОНЕЦ.Коэффициент01 КАК ОстатокНаНачало,
7 Рэйв
 
23.04.13
09:17
(5)При получении данных из регистра ты всегда получаешь их в базовых единицах.Коэффициент нужен только при пересчете единиц документа если они отличаются от базовых для формирования правильнывх движений
8 ded20ded
 
23.04.13
09:17
(4) //было АналитикиУчетаНоменклатуры.Номенклатура.Упаковка,
9 ded20ded
 
23.04.13
09:18
в отчет попадает все в упаковках, а нужно в базовых ед. ампулах
10 Рэйв
 
23.04.13
09:19
(6)Точку убери
11 Рэйв
 
23.04.13
09:20
да и Коэффициент01  тоже..Или алиас
12 ded20ded
 
23.04.13
09:24
Ошибка получения информации набора данных
по причине:
Ошибка в запросе набора данных
по причине:
{(31, 69)}: Неверные параметры "*"
СебестоимостьТоваровОстаткиИОбороты.КоличествоНачальныйОстаток * <<?>>АналитикиУчетаНоменклатуры.Номенклатура.Упаковка КАК ОстатокНаНачало,
13 chelentano
 
23.04.13
09:33
бананан решил таки снеговика изучить?
14 ded20ded
 
23.04.13
09:40
(13) научил бы
15 chelentano
 
23.04.13
09:46
(14) чему? тому, что не надо число умножать на ссылку?
16 ded20ded
 
23.04.13
09:54
Как правильно указать, ссылку напиши пожалуйста
17 chelentano
 
23.04.13
09:55
(16) пля, ещё один bananan
18 ded20ded
 
23.04.13
10:55
ап
19 ded20ded
 
23.04.13
12:08
подскажите как правильно решить проблему
20 ReZеt
 
24.04.13
01:29
(16) ПолеСсылка.Поле так кажеться
21 hhhh
 
24.04.13
01:53
(19) может так?

КОНЕЦ).Коэффициент01