Переключение на Главную Страницу Страницы: [1] 2 3 4 ОтправитьПечать
Очень популярная тема (более 25 ответов) Выбор из оборотного региста (число прочтений - 11031 )
Winter
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 21
Зарегистрирован: 24. Сентября 2007
Пол: Мужской
Выбор из оборотного региста
14. Мая 2009 :: 11:28
Печать  
Есть текст прямого запроса:
ТекстЗапроса = "-- qryMaker:Отчет1.2009.05.13.17.45.24
     |SELECT Рег.Покупатель [Покупатель $Справочник.Контрагенты]
     |      , Рег.ТорговаяТочка [ТорговаяТочка $Справочник.ТорговыеТочки]
     |      , Рег.ФормаОплаты [ФормаОплаты $Перечисление.ФормыОплаты]
     |      , Рег.ТМЦ [ТМЦ $Справочник.ТМЦ]
     | , Рег.IDDoc [Док $Документ]
     |      , Рег.РасходСумОборот ОтгруженоСумма
     |      , Рег.РасходКвоОборот ОтгруженоКво
     |      , Рег.ДоходОборот Доход
     |FROM $РегистрОбороты.Обороты(:НачДата,
     |            :КонДата,,,
     |            (Фирма = :ВыбФирма)
     |            AND (Покупатель = :ВыбКонтрагент)
     |            AND (ТорговаяТочка = :ВыбТТ)
     |            AND (ТМЦ = :ВыбТМЦ),
     |            (Покупатель, ТорговаяТочка, ФормаОплаты, ТМЦ),
     |            (РасходСум, РасходКво, Доход)) AS Рег
     |";

При попытке его выполнить выдает ошибку:
Meta name parser error: недопустимое значение параметра "$РегистрОбороты.Обороты" (2)
Подскажите, где ошибка?
Опыта написания прямых запросов можно сказать что нет.
  
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #1 - 14. Мая 2009 :: 11:45
Печать  
УстановитьТекстовыйПараметр("КонДата",ТутЧто?)
  

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #2 - 14. Мая 2009 :: 11:47
Печать  
, Рег.IDDoc [Док $Документ]
будет ошибка - нет такого поля
  

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


I Love YaBB 2!

Сообщений: 21
Зарегистрирован: 24. Сентября 2007
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #3 - 14. Мая 2009 :: 11:53
Печать  
trad писал(а) 14. Мая 2009 :: 11:45:
УстановитьТекстовыйПараметр("КонДата",ТутЧто?)

рс.УстановитьТекстовыйПараметр("ВыбФирма", ВыбФирма);
рс.УстановитьТекстовыйПараметр("ВыбКонтрагент", ВыбКонтрагент);
рс.УстановитьТекстовыйПараметр("ВыбТТ", ВыбТТ);
рс.УстановитьТекстовыйПараметр("ВыбТМЦ", ВыбТМЦ);
рс.УстановитьТекстовыйПараметр("НачДата", НачДата);
рс.УстановитьТекстовыйПараметр("КонДата", КонДата);

Это реквизиты диалога - КонДата - это дата
  
Наверх
IP записан
 
Winter
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 21
Зарегистрирован: 24. Сентября 2007
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #4 - 14. Мая 2009 :: 11:59
Печать  
trad писал(а) 14. Мая 2009 :: 11:47:
, Рег.IDDoc [Док $Документ]
будет ошибка - нет такого поля


А как выбрать документ-движения?
  
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #5 - 14. Мая 2009 :: 13:03
Печать  
Winter писал(а) 14. Мая 2009 :: 11:53:
рс.УстановитьТекстовыйПараметр("КонДата", КонДата);

Это реквизиты диалога - КонДата - это дата

проверь все же
Сообщить(ТипЗначенияСтр(КонДата));

ps
если нужны обороты по конец КонДата, то добавь модификатор :КонДата~
  

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #6 - 14. Мая 2009 :: 13:05
Печать  
Winter писал(а) 14. Мая 2009 :: 11:59:
trad писал(а) 14. Мая 2009 :: 11:47:
, Рег.IDDoc [Док $Документ]
будет ошибка - нет такого поля


А как выбрать документ-движения?

во-первых использовать периодичность Документ в ВТ
во-вторых в селекте написать:
right(Рег.ПозицияДокумента,9) [Док $Документ],
Рег.ВидДокумента Док_вид,
  

1&&2&&3
Наверх
 
IP записан
 
Злой Бобр
Junior Member
**
Отсутствует



Сообщений: 56
Местоположение: Украина, Кривой Рог
Зарегистрирован: 07. Марта 2009
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #7 - 14. Мая 2009 :: 13:12
Печать  
Winter писал(а) 14. Мая 2009 :: 11:59:
А как выбрать документ-движения?

Почитать хелп, там это написано.
  

Если у вас есть деньги тогда мы идем к вам!!!
Наверх
ICQ  
IP записан
 
Winter
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 21
Зарегистрирован: 24. Сентября 2007
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #8 - 14. Мая 2009 :: 13:15
Печать  
trad писал(а) 14. Мая 2009 :: 13:03:
Winter писал(а) 14. Мая 2009 :: 11:53:
рс.УстановитьТекстовыйПараметр("КонДата", КонДата);

Это реквизиты диалога - КонДата - это дата

проверь все же
Сообщить(ТипЗначенияСтр(КонДата));

ps
если нужны обороты по конец КонДата, то добавь модификатор :КонДата~


У меня "Обороты" - оборотный регистр. И мне нужно выбрать документы движения по выбранному товару за выбранный период, по выбранному контрагенту
  
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #9 - 14. Мая 2009 :: 13:29
Печать  
Winter писал(а) 14. Мая 2009 :: 13:15:
У меня "Обороты" - оборотный регистр.
а что, для оборотного регистра понятие "граница конца периода" отменили ?..
дык вот эта граница может быть определена как начало даты, так и как конец даты
  

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


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Выбор из оборотного региста
Ответ #10 - 14. Мая 2009 :: 13:36
Печать  
имхо тут без ВТ проще
Код
Выбрать все
select
 j.iddoc     [Документ $Документ],
 j.iddocdef  [Документ_вид],
 j.date_time_iddoc
from
 $Регистр.Обороты рег (nolock)
inner join
 _1sjourn j (nolock) on j.iddoc = рег.iddoc /*это если нет флага БыстраяОбработкаДвижений*/
where
 j.date_time_iddoc between :НачДата and :КонДата~ and
 $рег.Фирма = :ВыбФирма and
 $рег.Покупатель = :ВыбКонтрагент and
 $рег.ТорговаяТочка = :ВыбТТ and
 $рег.ТМЦ = :ВыбТМЦ
group by
 j.iddoc,j.iddocdef,j.date_time_iddoc
order by
 j.date_time_iddoc 


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


I Love YaBB 2!

Сообщений: 21
Зарегистрирован: 24. Сентября 2007
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #11 - 14. Мая 2009 :: 14:31
Печать  
alexdd писал(а) 14. Мая 2009 :: 13:36:
имхо тут без ВТ проще



Попробовал твой код, ругается:
Meta name parser error: модификатор не определен для типа ":КонДата~"

Хотя написал

рс.УстановитьТекстовыйПараметр("КонДата", КонДата);
  
Наверх
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Выбор из оборотного региста
Ответ #12 - 14. Мая 2009 :: 14:41
Печать  
ну вот в этом и проблема и для запроса в первом посте,
как уже писали, нужно проверить ТипЗначенияСтр(КонДата). Тип значения должен быть "Дата"
  
Наверх
 
IP записан
 
Winter
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 21
Зарегистрирован: 24. Сентября 2007
Пол: Мужской
Re: Выбор из оборотного региста
Ответ #13 - 14. Мая 2009 :: 15:06
Печать  
Конечно дата.
  
Наверх
IP записан
 
alexdd
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 347
Зарегистрирован: 25. Июня 2007
Re: Выбор из оборотного региста
Ответ #14 - 14. Мая 2009 :: 15:39
Печать  
хмм, ну а если так
ТекстЗапроса = "... where j.date_time_iddoc between '"+Формат(НачДата,"ДГГГГММДД")+"' and '"+Формат(КонДата+1,"ДГГГГММДД")+"'..."
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 4
ОтправитьПечать