|
Помогите с запросом (попытка2) | ☑ | ||
---|---|---|---|---|
0
Ben_art
10.06.13
✎
15:19
|
Пожалуйста помогите с запросом :
Момент = Новый Граница(КонецДня(Дата), ВидГраницы.Включая); // дата отчёта Момент1 = Новый Граница(КонецДня(ДатаОстатки), ВидГраницы.Включая); // дата остатков Запрос.УстановитьПараметр("Момент",Момент); // дата отчёта Запрос.УстановитьПараметр("Момент1",Момент1); // дата остатков Запрос.УстановитьПараметр("Склад",Склад); Запрос.Текст = "ВЫБРАТЬ | ХозрасчетныйОстатки.Субконто1 КАК Номенклатура, | ЕСТЬNULL(ХозрасчетныйОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток, | ЕСТЬNULL(ХозрасчетныйОстатки.СуммаОстаток, 0) КАК СуммаОстаток, | ЕСТЬNULL(ХозрасчетныйОстатки1.КоличествоОстаток, 0) КАК КоличествоОстаток1 |ИЗ | РегистрБухгалтерии.Хозрасчетный.Остатки(&Момент, Счет = &Счет, , Организация = &Организация) КАК ХозрасчетныйОстатки | ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(&Момент1, Счет = &Счет, , Организация = &Организация) КАК ХозрасчетныйОстатки1 | ПО ХозрасчетныйОстатки.Субконто1 = ХозрасчетныйОстатки1.Субконто1 |ГДЕ | ХозрасчетныйОстатки.КоличествоОстаток > 4 | И ХозрасчетныйОстатки1.КоличествоОстаток > 6 | И ХозрасчетныйОстатки.Субконто2 = &Склад"; РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); ЧислоТоваров = -1; Нужно списать товар ОтчётомОРозничныхПродажах , но именно тот которого на так называемую дату остатков достаточно. Отсюда проблема на дату остатков может быть поступление и тогда отчёт забирает товар у оптовой реализации. Помогите с задачей. |
|||
1
Ben_art
10.06.13
✎
15:23
|
UPD: Отчёты делаются задним числом , но не должны отбирать товар у реализации (
|
|||
2
scanduta
10.06.13
✎
15:25
|
Ну исключай постпуления ... тогда бери физическую таблицу регистра накопления выбирай поле регистратор и убирай то что тебе не нужно (поступление за сегодняшний день)
|
|||
3
Ben_art
10.06.13
✎
15:34
|
Тогда подскажите как к этому запросу прикрутить условие чтобы
не было поступлений на >= дата создания отчёта ? |
|||
4
scanduta
10.06.13
✎
15:45
|
Через ВЫБОР делай
ВЫБОР КОГДА Регистратор="нужный" ТОГДА ВЫБОР ЕСЛИ Регистратор.ДАТА= |
|||
5
Ben_art
10.06.13
✎
18:00
|
А более лёгкие варианты есть ?
|
|||
6
RomanYS
10.06.13
✎
18:15
|
Если я правильно понял, надо списать задним числом, но так чтобы потом ни в какой последующий момент не провалиться в минус. Можно взять таблицу ОборотыИОстатки от нужной даты по последний документ, развернуть по регистратору, а потом сгруппировать уже без регистратора с функцией минимум(Таблица.КоличествоКонечныйОстаток)
|
|||
7
Ben_art
10.06.13
✎
18:43
|
(6) Что это за таблица такая , подскажите как регистр называется ?
|
|||
8
RomanYS
10.06.13
✎
18:49
|
ВЫБРАТЬ
ТоварыНаСкладахОстаткиИОбороты.Номенклатура, МИНИМУМ(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток ИЗ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&Дата, , Регистратор, ДвиженияИГраницыПериода, ) КАК ТоварыНаСкладахОстаткиИОбороты СГРУППИРОВАТЬ ПО ТоварыНаСкладахОстаткиИОбороты.Номенклатура такая же виртуальная таблица есть и у регистра бухгалтерии, только параметров там побольше (счета, корсчета, субконто...) |
|||
9
Ben_art
10.06.13
✎
18:54
|
(8) К сожалению у меня нет такого регистра (
|
|||
10
RomanYS
10.06.13
✎
19:08
|
это пример, у тебя есть
РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты |
|||
11
Ben_art
10.06.13
✎
19:10
|
ой да , нашёл
|
|||
12
RomanYS
10.06.13
✎
19:13
|
Описание доступных таблиц: Конфигуратор - Справка - Содержание справки - Встроенный язык - Работа с запросами - Таблицы запросов
|
|||
13
RomanYS
10.06.13
✎
19:14
|
Если есть минимальное понимание, то всё есть в конструкторе запросов
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |