Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Где ошибка, не могу понять :( Запрос к таблице движений (число прочтений - 2663 )
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Где ошибка, не могу понять :( Запрос к таблице движений
22. Февраля 2009 :: 10:04
Печать  
Код
Выбрать все
SELECT
		Номенклатура.Code as Товар,
		SUM(0) AS КоличествоНачОст,
		(1-RA99.debkred)* RA99.SP102 AS КоличествоПриход,
		(RA99.debkred)	* RA99.SP102 AS КоличествоРасход
		FROM
			RA99 as РегДвиж
		INNER JOIN
			1SJourn as Журнал ON (RA99.IDDOC=Журнал.IDDOC)
		INNER JOIN
			SC33 as Номенклатура ON (RG99.SP101 = Номенклатура.ID)
		WHERE  
			(J.DATE >= :начДата~~) AND (J.DATE <= :конДата~~) AND  
			(RA99.SP3603 <> $ПустойИД)
 



А ошибка такая:
FAILED! ICommandText::Execute(): SQL: Column 'IDDOC' is not found.
Если писать SELECT IDDOC FROM 1SJourn или SELECT IDDOC FROM RA99 всё выбирает, то есть колонка есть, а что запросу не хватает в данном случае?
  
Наверх
 
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #1 - 22. Февраля 2009 :: 10:08
Печать  
Код
Выбрать все
SELECT
		Номенклатура.Code as Товар,
		SUM(0) AS КоличествоНачОст,
		(1-РегДвиж.debkred)*РегДвиж.SP102 AS КоличествоПриход,
		(РегДвиж.debkred)*РегДвиж.SP102 AS КоличествоРасход
		FROM
			RA99 as РегДвиж
		INNER JOIN
			1SJourn as Журнал ON (РегДвиж.IDDOC = Журнал.IDDOC)
		INNER JOIN
			SC33 as Номенклатура ON (РегДвиж.SP101 = Номенклатура.ID)
		WHERE  
			(Журнал.DATE >= :начДата~~) AND (Журнал.DATE <= :конДата~~) AND  
			(РегДвиж.SP3603 <> $ПустойИД)
GROUP BY Товар
 


Изменил запрос таким образом. Теперь ошибка
FAILED! ICommandText::Execute(): SQL: GROUP BY clause is missing or invalid.
  
Наверх
 
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #2 - 22. Февраля 2009 :: 10:16
Печать  
Спасибо, разобрался Улыбка
  
Наверх
 
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #3 - 22. Февраля 2009 :: 17:52
Печать  
Желательно для поколений next как-то подытоживать Улыбка
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #4 - 24. Февраля 2009 :: 07:40
Печать  
В первом варианте запроса, просто запутался в переменных, поэтому данные брались не из тех таблиц, которые нужно. А во втором, забыл добавить функции агрегирования SUM у КолиствоРасход и КоличествоПриход, соответственно GROUP BY требовал добавить эти переменные в группировку...

Как-то так Улыбка
  
Наверх
 
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #5 - 25. Февраля 2009 :: 10:18
Печать  
По ходу возник еще один вопрос, чтобы лишний раз тему не создавать. Растолкуйте пожалуйста про отчет по остаткам товара:
Допустим, отчет с 14.02.2009 по 15.02.2009
Делается запрос к итогам на начало месяца (Период итогов "Месяц"), то есть на 01.02.2009, к нему прибавляются движения с 02.02.2009 по 13.02.2009, ну и затем соответственно, основные движения с 14 по 15.
Уж незнаю, но не получается, так как выше. Если делать запрос по всем движения с начала года (база ведется с 05.01.2009) без обращения к итогам на 01.02.2009, то всё нормально.
  
Наверх
 
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #6 - 25. Февраля 2009 :: 12:11
Печать  
И еще вопрос в догонку Улыбка Как организовать в прямом запросе группировку по типу 1С: Все ВошедшиеВЗапрос
  
Наверх
 
IP записан
 
pavel_tr
Senior Member
****
Отсутствует



Сообщений: 279
Местоположение: Казань
Зарегистрирован: 14. Октября 2006
Пол: Мужской
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #7 - 25. Февраля 2009 :: 12:20
Печать  
SashaL писал(а) 25. Февраля 2009 :: 10:18:
Растолкуйте пожалуйста про отчет по остаткам товара:
Допустим, отчет с 14.02.2009 по 15.02.2009

Здесь надо использовать ВТ РегистрОстаткиОбороты
  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #8 - 25. Февраля 2009 :: 15:31
Печать  
SashaL писал(а) 25. Февраля 2009 :: 12:11:
И еще вопрос в догонку Улыбка Как организовать в прямом запросе группировку по типу 1С: Все ВошедшиеВЗапрос


Если одно поле - несложно; если много - можно - но таблица становится размером как декартово произведение измерений.
Например 1000*100*100 что не есть гууд.
Намного проще при выводе на печать учитывать это обстоятельство.
Набор измерений легко получается сверткой.
  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Где ошибка, не могу понять :( Запрос к таблице движений
Ответ #9 - 25. Февраля 2009 :: 15:40
Печать  
Цитата:
Допустим, отчет с 14.02.2009 по 15.02.2009


1. Цитата:
Делается запрос к итогам на начало месяца (Период итогов "Месяц"), то есть на 01.02.2009

нет
Делается запрос к итогам на начало месяца -1 (Период итогов "Месяц"), то есть на 01.01.2009
Визуально это можно представить так :
в таблице итогов значение периода(месяца) означает итог на Конец периода(месяца), не на начало,
т.е. 01.01.2009 - на конец января (начало февраля),
     01.02.2009 - на конец февраля(т.е. на точку актуальности, если февраль не закончился)

(почему так сделано хз - к фирме 1С)

2. Цитата:
к нему прибавляются движения с 02.02.2009 по 13.02.2009

надо
к нему прибавляются все движения с 01.02.2009(начало дня) по 12.02.2009 (конец дня)

3 Да


  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать