Имя: Пароль:
1C
1С v8
Регистр накопления. ОстаткиИОбороты. Запрос строки прошлого периода
0 PiotrLoginov
 
05.12.13
10:18
Здрасте всем. Есть запрос для СКД, в сокращенном виде такой:

ВЫБРАТЬ РАЗРЕШЕННЫЕ
    УчетСебестоимости.АналитикаУчетаНоменклатуры КАК АналитикаУчетаНоменклатуры,
    УчетСебестоимости.ПериодСекунда,
    УчетСебестоимости.Регистратор,
    УчетСебестоимости.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток
ИЗ
    РегистрНакопления.СебестоимостьТоваров.ОстаткиИОбороты(, , Авто, , ) КАК УчетСебестоимости


Подразумевается, что пользователь перед формированием отчета будет задавать &Период.ДатаНачала и &Период.ДатаОкончания . Надо получить из регистра только две строки - последнюю в запрашиваемом периоде, чтобы иметь остаток накопленного количества на данный момент и последнюю в прошлом месяце, чтобы иметь остаток на конец прошлого месяца.

Только последнюю строку я бы еще получил сам, с помощью группировки. Но вот плюс еще последнюю в прошлом периоде, и это при том, что пользователь может задать ограниченный период, не попадающий в прошлый месяц... В общем, без подсказок буду долго мучаться. Помогите кто-нибудь, пожалуйста.
1 Господин ПЖ
 
05.12.13
10:20
разрешаю сделать юнион
2 PiotrLoginov
 
05.12.13
10:27
ну пожалуйста, чуточку поподробней..
3 PiotrLoginov
 
05.12.13
10:48
Сейчас пытался что-то придумать с помощью КОНЕЦПЕРИОДА, но для этого надо как-то получить из &Период.ДатаОкончания месяц, предшествующий точке НАЧАЛОПЕРИОДА(&Период.ДатаОкончания, МЕСЯЦ) ... то ли вычесть одну секунду... чувствую, мои домыслы гроша ломаного не стоят, и подобные вещи делаются легко и просто.

Жду добрых людей...
4 PiotrLoginov
 
06.12.13
04:05
Не дождался. Продолжительные поиски истины максимум что дали - это наворачивание навроде КОНЕЦПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонецПериода, МЕСЯЦ, -1), МЕСЯЦ) .
Мб других вариантов и нет. Так или иначе, вроде работает ... посмотрим.