|
выбрать в запросе | ☑ | ||
---|---|---|---|---|
0
ic-kat
30.03.13
✎
20:06
|
помогите, не соображу, как сделать...
есть регистр накопления, у регистра есть измерение накладная и куча регистраторов типа накладная, перестановка, возврат груза, списание и пр, которые делают по нему движения. нужно за заданный период выбрать самое позднее движение по каждой накладной. если бы на дату, тогда понятно, в а период... вроде элементарно, но что-то застопорилось |
|||
1
Ork
30.03.13
✎
20:11
|
(0) Что значит "самое позднее" движение?
|
|||
2
unkairosed
30.03.13
✎
20:12
|
"выбрать самое позднее движение по каждой накладной" - как это понимать? накладная формирует записи по этому регистру с разными значениями поля "Период"?
|
|||
3
ic-kat
30.03.13
✎
20:14
|
накладная тут и как измерение и как один из регистраторов
|
|||
4
unkairosed
30.03.13
✎
20:17
|
(3) Спасибо за комментарий. Уже успел еще раз перечитать - вопросы отпали.
|
|||
5
ic-kat
30.03.13
✎
20:19
|
например
период регистратор накладная количество 01.03 накладная№1 накладная№1 4 02.03 перестановка№1 накладная№1 4 03.03 накладная№2 накладная№2 1 04.03 возврат№1 накладная№7 2 05.03 перестановка№2 накладная№7 2 в период с 1 по 5 нужно чтобы в выборку попали: 02.03 перестановка№1 накладная№1 4 03.03 накладная№2 накладная№2 1 05.03 перестановка№2 накладная№7 2 |
|||
6
vs7719
30.03.13
✎
20:23
|
Вряд ли получится решить задачу в таком виде: могут быть "последние" документы одной датой и временем. Меняй постановку задачи. Скорее всего, на текущий момент она у вас неправильная.
|
|||
7
ic-kat
30.03.13
✎
20:25
|
задача найти текущее расположение накладной. ячейку т.е.
значит нужно искать последний регистратор по этой накладной в периоде. как по-другому, пока не вижу |
|||
8
mistеr
30.03.13
✎
20:26
|
максимум(период)
сгруппировать по накладная В чем проблема? |
|||
9
ic-kat
30.03.13
✎
20:30
|
видать, просто вечер ночер сказывается. сейчас попробую
|
|||
10
ic-kat
30.03.13
✎
22:05
|
(8) выводит все записи по накладной
что не так делаю? может не так поняла? "ВЫБРАТЬ РАЗЛИЧНЫЕ | МАКСИМУМ(ГрузВЯчейках.Период) КАК Период, | ГрузВЯчейках.Регистратор, | ГрузВЯчейках.Накладная КАК Накладная, | ГрузВЯчейках.Ячейка.АдресПолный КАК Ячейка |ИЗ | РегистрНакопления.ГрузВЯчейках КАК ГрузВЯчейках |ГДЕ | ГрузВЯчейках.Склад В(&СписокСкладов) | И ГрузВЯчейках.Период Между &НачПериода И &КонПериода |СГРУППИРОВАТЬ ПО | ГрузВЯчейках.Накладная, | ГрузВЯчейках.Регистратор, | ГрузВЯчейках.Ячейка.АдресПолный | "; |
|||
11
mistеr
30.03.13
✎
22:27
|
(10) Конечно. Я написал одно, у тебя другое.
Нужно получить ВТ (Накладная, Период) как я написал. Потом снова соединить с регистром, чтобы получить полностью записи. |
|||
12
ic-kat
30.03.13
✎
22:36
|
(11) спасибо, так получилось
|
|||
13
ic-kat
30.03.13
✎
22:43
|
только странно, как только пытаюсь вывести поле регистратора, то опять все записи выводятся
|
|||
14
ic-kat
30.03.13
✎
23:02
|
(11)
выводит запись самую позднюю, даже если она не попадает в диапазон, условия на период ничего не дают |
|||
15
unkairosed
31.03.13
✎
02:56
|
(14) Дайте нам последнюю сборку текста запроса.
|
|||
16
ic-kat
31.03.13
✎
08:07
|
Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
|ГрузВЯчейках.Период, |ГрузВЯчейках.Регистратор, |ГрузВЯчейках.Накладная КАК Накладная, |ГрузВЯчейках.Ячейка.АдресПолный КАК Ячейка |Поместить ВтДанные |ИЗ |РегистрНакопления.ГрузВЯчейках КАК ГрузВЯчейках |ГДЕ |ГрузВЯчейках.Склад В(&СписокСкладов) |И ГрузВЯчейках.Период Между &НачПериода И &КонПериода |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ |ГрузВЯчейках.Склад КАК Склад, |ГрузВЯчейках.Накладная КАК Накладная, |МАКСИМУМ(ГрузВЯчейках.Период) КАК ПоследнееИзменение |ИЗ |РегистрНакопления.ГрузВЯчейках КАК ГрузВЯчейках |ГДЕ |ГрузВЯчейках.Склад В(&СписокСкладов) |И ГрузВЯчейках.Период Между &НачПериода И &КонПериода |И ГрузВЯчейках.Накладная В |(ВЫБРАТЬ РАЗЛИЧНЫЕ |Данные.Накладная |ИЗ |ВтДанные | |СГРУППИРОВАТЬ ПО |ГрузВЯчейках.Накладная, |ГрузВЯчейках.Склад"; |
|||
17
Мимохожий Однако
31.03.13
✎
08:19
|
Попробуй выбрать первые записи накладных и регистраторов с сортировкой на убывание.
|
|||
18
ic-kat
31.03.13
✎
08:21
|
что даст?
|
|||
19
Мимохожий Однако
31.03.13
✎
08:23
|
Даст последние регистраторы, а от этих регистраторов можно будет получить движения
|
|||
20
Мимохожий Однако
31.03.13
✎
08:25
|
Для начала только два поля
ГрузВЯчейках.Регистратор, ГрузВЯчейках.Накладная КАК Накладная, |
|||
21
unkairosed
31.03.13
✎
14:16
|
"ВЫБРАТЬ
| МАКСИМУМ(ГрузВЯчейках.Период) КАК Период, | ГрузВЯчейках.Накладная, | ГрузВЯчейках.Склад, | ГрузВЯчейках.Ячейка |ПОМЕСТИТЬ ВТДанные |ИЗ | РегистрНакопления.ГрузВЯчейках КАК ГрузВЯчейках |ГДЕ | ГрузВЯчейках.Период МЕЖДУ &НачПериода И &КонПериода | И ГрузВЯчейках.Склад В(&СписокСкладов) | |СГРУППИРОВАТЬ ПО | ГрузВЯчейках.Накладная, | ГрузВЯчейках.Ячейка, | ГрузВЯчейках.Склад |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ГрузВЯчейках.Регистратор, | ГрузВЯчейках.Накладная, | ГрузВЯчейках.Склад, | ГрузВЯчейках.Ячейка, | ГрузВЯчейках.Период КАК ПоследнееИзменение |ИЗ | РегистрНакопления.ГрузВЯчейках КАК ГрузВЯчейках | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТДанные КАК ВТДанные | ПО ГрузВЯчейках.Период = ВТДанные.Период | И ГрузВЯчейках.Накладная = ВТДанные.Накладная | И ГрузВЯчейках.Склад = ВТДанные.Склад | И ГрузВЯчейках.Ячейка = ВТДанные.Ячейка" |
|||
22
ic-kat
31.03.13
✎
15:37
|
(17) ничего не дало
(21) а так все движения по накладной выбирает |
|||
23
unkairosed
31.03.13
✎
18:27
|
(22) Не может такого быть. Убедитесь, что соединение "ВНУТРЕННЕЕ" (или "ПРАВОЕ") и условия соединения настроены правильно, см. (21)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |