Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Горячая тема (более 10 ответов) А как в моем запросе вытянуть склад и контрагента (число прочтений - 3063 )
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
А как в моем запросе вытянуть склад и контрагента
30. Ноября 2007 :: 11:52
Печать  
Мой запрос
Код
Выбрать все
	ТекстЗапроса = "
		|SELECT Данные.Товар [Товар $Справочник.Номенклатура]
	  |  ,right(Данные.Позиция,9) as [Документ $Документ]
	  |  ,Данные.Вид as Документ_вид
	  |  ,Данные.Склад as [Склад $Справочник.Склады]
	  |  ,Данные.Клиент as [Склад $Справочник.Склады]
	  |  ,  Данные.НОст as но
	  |  ,  Данные.Приход as пр
	  |  ,  Данные.Расход as рс
	  |  , CASE WHEN Данные.Вид = 410 THEN док.контрагент ELSE 0 END AS Прих
	  |from (
	  |SELECT
	  |    ОстаткиТМЦОстатки.Товар
	  |   ,null as Позиция
	  |   ,null as Вид
	  |   , ОстаткиТМЦОстатки.ОстатокТовараОстаток as НОст
	  |   , 0 as Приход
	  |   , 0 as Расход
	  |FROM $РегистрОстатки.ОстаткиТоваров(:ДатаРасчета,,
		|		(Фирма = $ПустойИд)
		|		AND (Склад IN (:СписокСкладов)),
		|		(Товар),ОстатокТовара) AS ОстаткиТМЦОстатки
		|) as Данные
	  |order by Данные.Товар,Данные.Позиция
		|";
 


Эти реквизиты находятся в накладных расходных, в регистре партий их нет.
  
Наверх
 
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: А как в моем запросе вытянуть склад и контраге
Ответ #1 - 30. Ноября 2007 :: 11:54
Печать  
ой, в том запросе ошибки, вот новый
Код
Выбрать все
	ТекстЗапроса = "
		|SELECT Данные.Товар [Товар $Справочник.Номенклатура]
	  |  ,right(Данные.Позиция,9) as [Документ $Документ]
	  |  ,Данные.Вид as Документ_вид
	  |  ,  Данные.НОст as но
	  |  ,  Данные.Приход as пр
	  |  ,  Данные.Расход as рс
	  |  , CASE WHEN Данные.Вид = 410 THEN док.контрагент ELSE 0 END AS Прих
	  |from (
	  |SELECT
	  |    ОстаткиТМЦОстатки.Товар
	  |   ,null as Позиция
	  |   ,null as Вид
	  |   , ОстаткиТМЦОстатки.ОстатокТовараОстаток as НОст
	  |   , 0 as Приход
	  |   , 0 as Расход
	  |FROM $РегистрОстатки.ОстаткиТоваров(:ДатаРасчета,,
		|		(Фирма = $ПустойИд)
		|		AND (Склад IN (:СписокСкладов)),
		|		(Товар),ОстатокТовара) AS ОстаткиТМЦОстатки
		|) as Данные
	  |order by Данные.Товар,Данные.Позиция
		|";
 

  
Наверх
 
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: А как в моем запросе вытянуть склад и контраге
Ответ #2 - 30. Ноября 2007 :: 11:54
Печать  
Код
Выбрать все
	ТекстЗапроса = "
		|SELECT Данные.Товар [Товар $Справочник.Номенклатура]
	  |  ,right(Данные.Позиция,9) as [Документ $Документ]
	  |  ,Данные.Вид as Документ_вид
	  |  ,  Данные.НОст as но
	  |  ,  Данные.Приход as пр
	  |  ,  Данные.Расход as рс
	  |from (
	  |SELECT
	  |    ОстаткиТМЦОстатки.Товар
	  |   ,null as Позиция
	  |   ,null as Вид
	  |   , ОстаткиТМЦОстатки.ОстатокТовараОстаток as НОст
	  |   , 0 as Приход
	  |   , 0 as Расход
	  |FROM $РегистрОстатки.ОстаткиТоваров(:ДатаРасчета,,
		|		(Фирма = $ПустойИд)
		|		AND (Склад IN (:СписокСкладов)),
		|		(Товар),ОстатокТовара) AS ОстаткиТМЦОстатки
		|) as Данные
	  |order by Данные.Товар,Данные.Позиция
		|";
 

  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: А как в моем запросе вытянуть склад и контраге
Ответ #3 - 30. Ноября 2007 :: 11:58
Печать  
Цитата:
       |   ,null as Позиция
       |   ,null as Вид

И как ты себе представляешь отсюда что-то вытянуть?  Ужас
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: А как в моем запросе вытянуть склад и контраге
Ответ #4 - 30. Ноября 2007 :: 12:02
Печать  
не знаю, поэтому и спрашиваю.То есть из это го запроса появляется таблица Товар,Документ и суммы, а что можно присоединить ик как вытянуть , наверное нужно документы и  из реквизитов склад и контрагентов.Я только учусь.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: А как в моем запросе вытянуть склад и контраге
Ответ #5 - 30. Ноября 2007 :: 12:08
Печать  
maxa писал(а) 30. Ноября 2007 :: 12:02:
не знаю, поэтому и спрашиваю.То есть из это го запроса появляется таблица Товар,Документ и суммы, а что можно присоединить ик как вытянуть , наверное нужно документы и  из реквизитов склад и контрагентов.Я только учусь.

Документ из этого запроса не появляется. Судя по тексту, тебе нужна ВТ ОстаткиОбороты, но и там документ можно будет получить только для оборотов. Остатки останутся без документов и, соответственно, без складов.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: А как в моем запросе вытянуть склад и контраге
Ответ #6 - 30. Ноября 2007 :: 12:10
Печать  
Ой, только счас заметила, что-то не так в форйм перенесла
Код
Выбрать все
	ТекстЗапроса = "
		|SELECT Данные.Товар [Товар $Справочник.Номенклатура]
	  |  ,right(Данные.Позиция,9) as [Документ $Документ]
	  |  ,Данные.Вид as Документ_вид
	  |  ,  Данные.НОст as но
	  |  ,  Данные.Приход as пр
	  |  ,  Данные.Расход as рс
	  |from (
	  |SELECT
	  |    ОстаткиТМЦОстатки.Товар
	  |  ,null as Позиция
	  |  ,null as Вид
	  |  , ОстаткиТМЦОстатки.ОстатокТовараОстаток as НОст
	  |  , 0 as Приход
	  |  , 0 as Расход
	  |FROM $РегистрОстатки.ОстаткиТоваров(:ДатаРасчета,,
		|		(Фирма = $ПустойИд)
		|		AND (Склад IN (:СписокСкладов)),
		|		(Товар),ОстатокТовара) AS ОстаткиТМЦОстатки
	  |union all
	  |SELECT
	  |  ПартииТоваровОбороты.Товар
	  |  ,ПартииТоваровОбороты.ПозицияДокумента  as Позиция
	  |  ,ПартииТоваровОбороты.ВидДокумента as Вид
	  |  ,0  as НОст
	  |  , ПартииТоваровОбороты.ОстатокТовараПриход  as Приход
	  |  , ПартииТоваровОбороты.ОстатокТовараРасход   as Расход
		|	FROM  $РегистрОбороты.ПартииТоваров(:ДатаНач,:ДатаКон~,Документ,,
		|		(Фирма = $ПустойИд) and (оборот<>0) and (КодОперации Collate Cyrillic_General_CS_AS in ("+ Мета.ПолучитьСтрокуИзСЗ(КодыОперацийПродажи) + ")),
		|		(Товар),
		|		ОстатокТовара) AS ПартииТоваровОбороты
	  |) as Данные
	  |order by Данные.Товар,Данные.Позиция
		|";
 

  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: А как в моем запросе вытянуть склад и контраге
Ответ #7 - 30. Ноября 2007 :: 12:17
Печать  
Улыбка

Контрагентов мы уже получали здесь: http://www.1cpp.ru/forum/YaBB.pl?num=1194441563
Склады, если есть графа отбора, получаются аналогично.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: А как в моем запросе вытянуть склад и контраге
Ответ #8 - 04. Декабря 2007 :: 14:55
Печать  
а если нет графы отбора по СКладам, можно как-то из шапки документов РасходнаяНакладня,ОтчетКассовойСмены выудить склад.Не могу сообразить как это все объеденить
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: А как в моем запросе вытянуть склад и контраге
Ответ #9 - 04. Декабря 2007 :: 15:12
Печать  
maxa писал(а) 04. Декабря 2007 :: 14:55:
а если нет графы отбора по СКладам, можно как-то из шапки документов РасходнаяНакладня,ОтчетКассовойСмены выудить склад.Не могу сообразить как это все объеденить

Что-то вроде
Код
Выбрать все
SELECT ...
	, IsNull(sq.Склад, $ПустойИд) [Склад $Справочник.Склады]
FROM ЧтотоТам
	LEFT OUTER JOIN (
		SELECT РасходнаяНакладная.IDDOC
			, $РасходнаяНакладная.Склад Склад
		FROM $Документ.РасходнаяНакладная РасходнаяНакладная (nolock)
		UNION ALL
		SELECT ОтчетКассовойСмены.IDDOC
			, $ОтчетКассовойСмены.Склад
		FROM $Документ.ОтчетКассовойСмены ОтчетКассовойСмены (nolock)
		) sq ON ЧтотоТам.Документ = sq.IDDOC 

  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: А как в моем запросе вытянуть склад и контраге
Ответ #10 - 04. Декабря 2007 :: 15:17
Печать  
спасибо,завтра попробую.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать