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



Сообщений: 106
Зарегистрирован: 01. Ноября 2006
Пол: Мужской
Остаток на ТА (DBF)
28. Марта 2007 :: 14:30
Печать  
Всем привет. Допускаю что тема не самая новая. но нигде не смог найти...
чатал FAQ но там только для SQL....

пока есть такой запрос:

Код
Выбрать все
текстЗапроса = "
| SELECT
|	VT.Фирма as [Фирма $Справочник.Фирмы],
|	VT.Товар as [Товар $Справочник.Номенклатура],
|	Sum(VT.ОстатокТовараКонечныйОстаток) as ОстатокТовараКонечныйОстаток
|FROM (	SELECT
|		$РегИтоги.Фирма as Фирма,
|		$РегИтоги.Товар as Товар,
|		$РегИтоги.ОстатокТовара as ОстатокТовараКонечныйОстаток
|		FROM
|			$РегистрИтоги.ОстаткиТоваров as РегИтоги
|		WHERE
|			РегИтоги.PERIOD = :ДатаПериодаОстатков~~
//|			AND $РегИтоги.Фирма = $ПустойИД
//|	     and $РегИтоги.Товар  IN (SELECT Val FROM :ВременнаяТаблица)
|			AND (1=0
|			OR $РегИтоги.ОстатокТовара<>0)
//|	UNION ALL
//|	SELECT
//|		$РегДвиж.Фирма,
//|		$РегДвиж.Товар,
//|		$РегДвиж.ОстатокТовара*(1-регДвиж.DEBKRED*2)
//|		FROM
//|			$Регистр.ОстаткиТоваров as РегДвиж
//|		INNER
//|			JOIN 1SJourn as J ON РегДвиж.IDDOC=J.IDDOC
//|		WHERE
//|			(J.DATE >= :ДатаНачалаОстатков~~) AND (J.DATE <= :ДатаКонцаОстатков~~) AND (J.$ФлагРегистра.ОстаткиТоваров=1)
////|		    AND $РегИтоги.Фирма = $ПустойИД
//|	     and $РегИтоги.Товар  IN (SELECT Val FROM :ВременнаяТаблица)
|) as VT
|
|
|GROUP BY
|	Фирма,
|	Товар
|HAVING
|	Sum(ОстатокТовараКонечныйОстаток) <> 0";

 



но выводит только остатоко на начало месяца.
понимаю что можно добавить движения за период, но может есть возможность сразу получить остаток на ТА?

заранее спасибо.

  

работай с умом, а не до ночи!
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #1 - 28. Марта 2007 :: 14:45
Печать  
чему равен параметр ДатаПериодаОстатков ?
  

1&&2&&3
Наверх
 
IP записан
 
Bond
Full Member
***
Отсутствует



Сообщений: 106
Зарегистрирован: 01. Ноября 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #2 - 28. Марта 2007 :: 14:55
Печать  
trad писал(а) 28. Марта 2007 :: 14:45:
чему равен параметр ДатаПериодаОстатков ?



спасибо  Улыбка

проблема была действительно в этом...
было ),-1));
сделал RS.УстановитьТекстовыйПараметр("ДатаПериодаОстатков",BegOfMonth(ВыбДата));

и все заработало.


ещё если не трудно подсткажи как сделать фильтр (множественный) по спску складов и товарам



  

работай с умом, а не до ночи!
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #3 - 28. Марта 2007 :: 15:22
Печать  
Bond писал(а) 28. Марта 2007 :: 14:55:
ещё если не трудно подсткажи как сделать фильтр (множественный) по спску складов и товарам

ищи по УложитьСписокОбъектов
  

1&&2&&3
Наверх
 
IP записан
 
Bond
Full Member
***
Отсутствует



Сообщений: 106
Зарегистрирован: 01. Ноября 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #4 - 28. Марта 2007 :: 15:37
Печать  
trad писал(а) 28. Марта 2007 :: 15:22:
Bond писал(а) 28. Марта 2007 :: 14:55:
ещё если не трудно подсткажи как сделать фильтр (множественный) по спску складов и товарам

ищи по УложитьСписокОбъектов


в тексте запроса
$РегИтоги.Товар  IN (SELECT Val FROM :ВременнаяТаблица)

и потом
ВременнаяТаблица = "Группа";
RS.УложитьСписокОбъектов(спВыбТовары, ВременнаяТаблица,"Номенклатура");
RS.УстановитьТекстовыйПараметр ("ВременнаяТаблица", ВременнаяТаблица);


но второе такое условие не работает


  

работай с умом, а не до ночи!
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #5 - 28. Марта 2007 :: 15:50
Печать  
Bond писал(а) 28. Марта 2007 :: 15:37:
в тексте запроса
$РегИтоги.Товар  IN (SELECT Val FROM :ВременнаяТаблица)

и потом
ВременнаяТаблица = "Группа";
RS.УложитьСписокОбъектов(спВыбТовары, ВременнаяТаблица,"Номенклатура");
RS.УстановитьТекстовыйПараметр ("ВременнаяТаблица", ВременнаяТаблица);


но второе такое условие не работает



в тексте запроса
$РегИтоги.Товар  IN (SELECT Val FROM #ВременнаяТаблица)

и потом
RS.УложитьСписокОбъектов(спВыбТовары, "#ВременнаяТаблица","Номенклатура");
  

1&&2&&3
Наверх
 
IP записан
 
Bond
Full Member
***
Отсутствует



Сообщений: 106
Зарегистрирован: 01. Ноября 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #6 - 28. Марта 2007 :: 15:58
Печать  
а второе условие как?


$РегИтоги.Склад  IN (SELECT Val FROM #ВременнаяТаблица2)

RS.УложитьСписокОбъектов(спВыбСклады, "ВременнаяТаблица2","МестаХранения");

так?
  

работай с умом, а не до ночи!
Наверх
 
IP записан
 
Bond
Full Member
***
Отсутствует



Сообщений: 106
Зарегистрирован: 01. Ноября 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #7 - 28. Марта 2007 :: 16:02
Печать  
trad писал(а) 28. Марта 2007 :: 15:50:
Bond писал(а) 28. Марта 2007 :: 15:37:
в тексте запроса
$РегИтоги.Товар  IN (SELECT Val FROM :ВременнаяТаблица)

и потом
ВременнаяТаблица = "Группа";
RS.УложитьСписокОбъектов(спВыбТовары, ВременнаяТаблица,"Номенклатура");
RS.УстановитьТекстовыйПараметр ("ВременнаяТаблица", ВременнаяТаблица);


но второе такое условие не работает



в тексте запроса
$РегИтоги.Товар  IN (SELECT Val FROM #ВременнаяТаблица)

и потом
RS.УложитьСписокОбъектов(спВыбТовары, "#ВременнаяТаблица","Номенклатура");


пишет такое
FAILED! ICommandText::Execute(): File '#временнаятаблица.dbf' does not exist.
  

работай с умом, а не до ночи!
Наверх
 
IP записан
 
Bond
Full Member
***
Отсутствует



Сообщений: 106
Зарегистрирован: 01. Ноября 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #8 - 28. Марта 2007 :: 16:22
Печать  
разобрался. спасибо за советы.
  

работай с умом, а не до ночи!
Наверх
 
IP записан
 
Bond
Full Member
***
Отсутствует



Сообщений: 106
Зарегистрирован: 01. Ноября 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #9 - 28. Марта 2007 :: 17:38
Печать  
получился следующий запрос
Код
Выбрать все
текстЗапроса = "
|SELECT
|	VT.Товар as [Товар $Справочник.Номенклатура],
|	Sum(VT.ОстатокТовараКонечныйОстаток) as ОстатокТовараКонечныйОстаток
|FROM (	SELECT
|		$РегИтоги.Фирма as Фирма,
|		$РегИтоги.Товар as Товар,
|		$РегИтоги.ОстатокТовара as ОстатокТовараКонечныйОстаток
|		FROM
|			$РегистрИтоги.ОстаткиТоваров as РегИтоги
|
|		WHERE
|			РегИтоги.PERIOD = :ДатаПериодаОстатков~~
|			AND $РегИтоги.Фирма = $ПустойИД
|	     and $РегИтоги.Товар  IN (SELECT Val FROM :ВременнаяТаблица)
|	     and $РегИтоги.Склад  IN (SELECT Val FROM :ВременнаяТаблица2)
|) as VT
|
|
|GROUP BY
|	Товар
|";
 



теперь хочу что б выводило в тз ВСЕ товары из фильтра. Догадываюсь что нужно сделать Right join с такой штуковиной:
Код
Выбрать все
|SELECT
|	Спр.Descr as Наименование
|FROM
|	$Справочник.Номенклатура as Спр
 




только вот куда его прилепить?

подскажите плз.
  

работай с умом, а не до ночи!
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #10 - 29. Марта 2007 :: 04:31
Печать  
Bond писал(а) 28. Марта 2007 :: 16:02:
пишет такое
FAILED! ICommandText::Execute(): File '#временнаятаблица.dbf' does not exist.

я просмотрел - что dbf
  

1&&2&&3
Наверх
 
IP записан
 
Bond
Full Member
***
Отсутствует



Сообщений: 106
Зарегистрирован: 01. Ноября 2006
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #11 - 29. Марта 2007 :: 07:12
Печать  
trad писал(а) 29. Марта 2007 :: 04:31:
Bond писал(а) 28. Марта 2007 :: 16:02:
пишет такое
FAILED! ICommandText::Execute(): File '#временнаятаблица.dbf' does not exist.

я просмотрел - что dbf



там я разобрался - по невнимательности поставил кавычки не там.

подскажи по посту №9 пожалуйста
  

работай с умом, а не до ночи!
Наверх
 
IP записан
 
logarifm
Junior Member
**
Отсутствует



Сообщений: 92
Местоположение: Украина
Зарегистрирован: 29. Марта 2007
Пол: Мужской
Re: Остаток на ТА (DBF)
Ответ #12 - 30. Марта 2007 :: 08:17
Печать  
По JOIN применени и как их использовать это читать скул
  

я переписал бы мир, но Бог не дает мне исходники...
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать