Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Добрый день. Имеется следующий запрос: ЗапросВЫБРАТЬ ВыданныеКнигиОбороты.ИнвНомер, ВыданныеКнигиОбороты.Читатель.Наименование КАК Читатель, ВыданныеКнигиОбороты.Регистратор.Дата КАК ДатаВыдачи, ВложенныйЗапрос.ДатаВозврата, ВыданныеКнигиОбороты.ИнвНомер.Владелец.Наименование, СУММА(ВыданныеКнигиОбороты.КоличествоПриход) КАК КоличествоПриход ИЗ РегистрНакопления.ВыданныеКниги.Обороты(&НачПериода, &КонПериода, Авто, ) КАК ВыданныеКнигиОбороты ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ВыданныеКнигиОбороты.ИнвНомер КАК ИнвНомер, ВыданныеКнигиОбороты.Читатель КАК Читатель, ВыданныеКнигиОбороты.Регистратор.Дата КАК ДатаВозврата ИЗ РегистрНакопления.ВыданныеКниги.Обороты(&НачПериода, &КонПериода, Авто, ) КАК ВыданныеКнигиОбороты ГДЕ ВыданныеКнигиОбороты.Регистратор ССЫЛКА Документ.ВозвратКниг) КАК ВложенныйЗапрос ПО ВыданныеКнигиОбороты.ИнвНомер = ВложенныйЗапрос.ИнвНомер И ВыданныеКнигиОбороты.Читатель = ВложенныйЗапрос.Читатель ГДЕ ВыданныеКнигиОбороты.Регистратор ССЫЛКА Документ.ВыдачаКниг СГРУППИРОВАТЬ ПО ВыданныеКнигиОбороты.ИнвНомер, ВыданныеКнигиОбороты.Читатель.Наименование, ВыданныеКнигиОбороты.Регистратор.Дата, ВложенныйЗапрос.ДатаВозврата, ВыданныеКнигиОбороты.ИнвНомер.Владелец.Наименование, ВыданныеКнигиОбороты.КоличествоПриход При выдаче книги в регистр накопления ВыданныеКниги добавляется движение приход с количеством 1, при возврате книги - движение расход с количеством 1. Данным запросом получаем все записи из регистра ВыданныеКниги. Дату возврата получаем из вложенного запроса. Если книжку выдали и вернули, то отображается одна запись - с датой выдачи и датой возврата книги. Проблема: если измерения у записи (инвентарный номер книги и читатель) совпадают, то дата возврата подставляется в каждую запись с такими измерениями. Прикладываем 2 скриншота: 1.) Сформированный отчет. Красным обведена дата, которой быть не должно. 2.) Заполненный регистр накопления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2011, 10:08 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Bakteria, а условие в соединении не поможет? ПО ВыданныеКнигиОбороты.ИнвНомер = ВложенныйЗапрос.ИнвНомер И ВыданныеКнигиОбороты.Читатель = ВложенныйЗапрос.Читатель И ВыданныеКнигиОбороты.Регистратор.Дата < ВложенныйЗапрос.ДатаВозврата, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2011, 10:20 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
pail, Спасибо, дружище, то, что нужно! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2011, 10:48 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Добавили еще одну выдачу и возврат книг, условие сработало трижды, т.е. 2 раза когда нужно, и появилась одна лишняя запись с датой выдачи в первый раз и датой возврата во второй раз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2011, 11:08 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
ВЫБРАТЬ ВыданныеКниги.ИнвНомер, ВыданныеКниги.Читатель.Наименование КАК Читатель, ВыданныеКниги.Период КАК ДатаВыдачи, МИНИМУМ(ВозвратКниги.Период) ИЗ РегистрНакопления.ВыданныеКниги КАК ВыданныеКниги ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВыданныеКниги КАК ВозвратКниги ПО ВыданныеКниги.ИнвНомер=ВозвратКниги.ИнвНомер И ВыданныеКниги.Читатель=ВозвратКниги.Читатель И ВыданныеКниги.Период<=ВозвратКниги.Период И ВозвратКниги.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) ГДЕ ВыданныеКниги.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) СГРУППИРОВАТЬ ПО ВыданныеКниги.ИнвНомер, ВыданныеКниги.Читатель.Наименование, ВыданныеКниги.Период ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2011, 15:42 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Naf, Огромное спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2011, 18:33 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
но я бы сделал на регистре сведений ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2011, 09:40 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
А как бы ты через регистр сведений организовал? При выдаче появляется новая запись, а при возврате в эту запись добавляется, к примеру, дата возврата? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2011, 12:22 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
BakteriaА как бы ты через регистр сведений организовал? При выдаче появляется новая запись, а при возврате в эту запись добавляется, к примеру, дата возврата? периодический регистр сведений Измерение - Книга (ну или инвентарный номер) Ресурс - Читатель если ресурс пуст, то значит книга сдаётся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2011, 12:46 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Add: Следующим запросом мы получаем количество невозвращенных книг. Но запрос сам по себе не очень, т.к. мы получаем все записи, а затем в цикле с помощью различных условий отсекаем лишнее. В результате этого возникли проблемы с правильным подсчетом невозвращенных книг. Каким запросом можно получить только невозвращенные книги? ВЫБРАТЬ ВыданныеКниги.ИнвНомер, ВыданныеКниги.Читатель.Наименование КАК Читатель, ВыданныеКниги.ПериодСекунда КАК ДатаВыдачи, МИНИМУМ(ВложенныйЗапрос.ПериодСекунда) КАК ДатаВозврата, СУММА(ВыданныеКниги.КоличествоПриход) КАК КоличествоПриход, СУММА(ВыданныеКниги.КоличествоПриход) - ВЫБОР КОГДА ВложенныйЗапрос.ДатаВозврата <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) ТОГДА СУММА(ВыданныеКниги.КоличествоПриход) ИНАЧЕ 0 КОНЕЦ КАК КоличествоНеВозвращенных ИЗ РегистрНакопления.ВыданныеКниги.ОстаткиИОбороты(&НачПериода, &КонПериода, Авто, , ) КАК ВыданныеКниги ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ВозвратКниги.ИнвНомер КАК ИнвНомер, ВозвратКниги.Читатель КАК Читатель, ВозвратКниги.ПериодСекунда КАК ПериодСекунда, ВозвратКниги.Регистратор.Дата КАК ДатаВозврата, ВозвратКниги.Регистратор КАК Регистратор ИЗ РегистрНакопления.ВыданныеКниги.ОстаткиИОбороты(&НачПериода, &КонПериода, Авто, , ) КАК ВозвратКниги) КАК ВложенныйЗапрос ПО ВыданныеКниги.ИнвНомер = ВложенныйЗапрос.ИнвНомер И ВыданныеКниги.Читатель = ВложенныйЗапрос.Читатель И ВыданныеКниги.ПериодСекунда <= ВложенныйЗапрос.ПериодСекунда И (ВложенныйЗапрос.Регистратор ССЫЛКА Документ.ВозвратКниг) ГДЕ ВыданныеКниги.Регистратор ССЫЛКА Документ.ВыдачаКниг И ВыданныеКниги.ИнвНомер.Владелец.Наименование = &Наименование СГРУППИРОВАТЬ ПО ВыданныеКниги.ИнвНомер, ВыданныеКниги.Читатель.Наименование, ВложенныйЗапрос.ДатаВозврата, ВыданныеКниги.ПериодСекунда ИТОГИ СУММА(КоличествоНеВозвращенных) ПО ОБЩИЕ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2011, 10:23 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Bakteria, а что есть невозвращенные ? я думал это остатки в вашем регистре, но судя по запросу не могу понять что же на самом деле ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2011, 12:31 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Naf, Без комментариев.. вопрос исчерпан. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2011, 13:43 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Поторопились чуток. Осознав свою ошибку, переделали запрос: Возникшие проблемы: 1.) Строки, отмеченные галками, должны отсутствовать. 2.) Строка под номером 1 - книжка была выдана, но уже возвращена 3.) Строка под номером 2 - запись в регистре, что книжка возвращена. Спасибо за внимание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2011, 15:26 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
выбрать Остатки.ИнвНомер, Остатки.Читатель, Остатки.КоличествоОстаток, МАКСИМУМ(Движения.Период) КАК ДатаВыдачи ИЗ РегистрНакопления.ВыданныеКниги.Остатки КАК Остатки внутреннее соединение РегистрНакопления.ВыданныеКниги КАК Движения ПО Остатки.ИнвНомер = Движения.ИнвНомер И Остатки.Читатель = Движения.Читатель И Движения.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) сгруппировать по Остатки.ИнвНомер, Остатки.Читатель, Остатки.КоличествоОстаток ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2011, 17:08 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Naf, Спасибо! ТЫ ЛУЧШИЙ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2011, 18:45 |
|
||
|
Проблема с запросом
|
|||
|---|---|---|---|
|
#18+
Чуть подправили запрос: авторВЫБРАТЬ ВыданныеКнигиОстаткиИОбороты.ИнвНомер, ВыданныеКнигиОстаткиИОбороты.Читатель, ВыданныеКнигиОстаткиИОбороты.КоличествоКонечныйОстаток, МАКСИМУМ(ВыданныеКнигиОстаткиИОбороты.ПериодСекунда) КАК ПериодСекунда ИЗ РегистрНакопления.ВыданныеКниги.ОстаткиИОбороты(, , Авто, , ) КАК ВыданныеКнигиОстаткиИОбороты ГДЕ ВыданныеКнигиОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВыдачаКниг СГРУППИРОВАТЬ ПО ВыданныеКнигиОстаткиИОбороты.ИнвНомер, ВыданныеКнигиОстаткиИОбороты.Читатель, ВыданныеКнигиОстаткиИОбороты.КоличествоКонечныйОстаток Адекватно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2011, 08:32 |
|
||
|
|

start [/forum/topic.php?fid=28&tid=1521455]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
37ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 240ms |
| total: | 354ms |

| 0 / 0 |
