Имя: Пароль:
1C
1С v8
УТ 8.2. Выборка данного вида регистраторов в запросе по регистру накопления
0 olmi
 
26.03.14
23:19
Я в восьмерке только начинаю, подскажите, если можно.
В запросе по регистру ПартииТоваровНаСкладах надо выбрать движения прихода только по регистратору ПеремещениеТоваров. Как это написать? Движения там есть, учет по ФИФО, в настройках все прописано.
Будет простенький отчетик по списаниям на данный склад за месяц. Пишу пока вручную, программные средства еще непонятны.
1 vicof
 
26.03.14
23:21
ССЫЛКА
2 vicof
 
26.03.14
23:22
в условии на регистратор
3 olmi
 
26.03.14
23:46
(1) Я видела оператор такой, по Инету шарила, но когда попробовала вставить, конструктор запроса выдал ошибку.
Можно пример?
Вот в этот запрос надо вставить:
"ВЫБРАТЬ
    |    ПартииТоваровНаСкладах.Период,
    |    ПартииТоваровНаСкладах.Регистратор КАК  Регистратор,
    |    ПартииТоваровНаСкладах.Регистратор.СкладПолучатель,
    |    ПартииТоваровНаСкладах.Регистратор.ОтметкаБухгалтера,
    |    ПартииТоваровНаСкладах.Регистратор.Организация,
    |    ПартииТоваровНаСкладах.Регистратор.Проведен
    |ИЗ
    |    РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
    |ГДЕ
    |    ПартииТоваровНаСкладах.Период >= &ДатаНачала
    |    И ПартииТоваровНаСкладах.Период <= &ДатаОкончания
    |    И Регистратор = &ВыбТипДокумента
    |    И ПартииТоваровНаСкладах.Регистратор.Организация = &ВыбОрганизация
    |    И ПартииТоваровНаСкладах.Регистратор.Проведен = &Истина
    |    И ПартииТоваровНаСкладах.Регистратор.ОтметкаБухгалтера = &Истина" ;
Вместо Регистратор = &ВыбТипДокумента кострукцию, в которой будет, что регистратор - ПеремещениеТоваров. Поможете?
4 patria0muerte
 
27.03.14
02:14
(3) скорее всего неправильно что то указала...

вообще вот так в условии:
ГДЕ
ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ПеремещениеТоваров

Еще можно таким образом:

ГДЕ
ТИПЗНАЧЕНИЯ(ПартииТоваровНаСкладах.Регистратор) = ТИП(Документ.ПеремещениеТоваров)

Но первый вариант, насколько мне известно, правильней...
5 patria0muerte
 
27.03.14
02:20
+(4) Хотя, судя по v8: ТИПЗНАЧЕНИЯ vs ССЫЛКА - без разницы, что использовать...
6 olmi
 
27.03.14
07:32
(4) Спасибо огромное!) Если б было время все досконально читать). А то учусь в темпе по ходу дела).
7 13_Mult
 
27.03.14
08:08
(6) Вы по больше времени запросам уделяйте - они классные ;))
8 olmi
 
27.03.14
20:38
(4) А если надо просто выбрать все приходы по Перемещениям на данный склад, как написать запрос? Тут мне посоветовали из табличных частей документов просто выбирать, а не из регистра, но получаю не то - таблицу из табличных частей, а надо просто: Товар-Цена-Количество-Сумма.
В 7.7 это просто, а тут запросы трудны для меня пока).
Выборка должна быть из документов ПеремещениеТоваров, проведенных, по данной Организации и т.п. (остальные условия по образцу написала бы.
9 patria0muerte
 
28.03.14
03:17
(8) Из табличных частей выбирать не надо... для этого регистры существуют...
По хорошему - надо обратиться к виртуальной таблице оборотов ПартииТоваровНаСкладахОбороты из которой и выбрать КоличествоПриход и СуммаПриход, цену можно высчитать в запросе... как отбор по регистратору сделать - выше уже указано... отбор по складу - указать в параметрах виртуальной таблицы.

Отбор по организации можно конечно через точку сделать, т.е. ПартииТоваровНаСкладахОбороты.Регистратор.Организация = &Организация, но такие обращения - не есть хорошо.
Насколько я знаю, по хорошему нам необходимо левое соединение к Документам Перемещения делать и оттуда ее тянуть. Но тут точно уже не скажу.

Ну а так: потрать время, почитай по запросам, это того стоит. Где то видел небольшой курс по запросам толи от Чистова, толи от Гилева, не вспомню сейчас...
10 olmi
 
28.03.14
10:33
(9) Время на обучение потрачу, но не сегодня, в понедельник проект сдавать, а этот отчет необходим.
Отборы тоже необходимы, т.к. пока делать умею только в стиле 7.7.
+(8) Попробовала по ПартииТоваровНаСкладахОбороты, но на выходе пустая ТЗ ВыборкаПоСтрокам, а данные есть. Пробовала выбирать другую периодичность в параметрах виртуальной таблицы - например,запись - то же самое.Что неправильно? Вообще-то нужны итоги по каждому товару за период, но, если конструктором выбираю периодичность - ПЕРИОД, в запросе исчезают регистратор и все мои условия.

Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ПартииТоваровНаСкладахОбороты.Регистратор ССЫЛКА Документ.ПеремещениеТоваров КАК ВидРегистратора,
        |    ПартииТоваровНаСкладахОбороты.Регистратор.Проведен,
        |    ПартииТоваровНаСкладахОбороты.Регистратор.Организация,
        |    ПартииТоваровНаСкладахОбороты.Регистратор.ОтметкаБухгалтера,
        |    ПартииТоваровНаСкладахОбороты.Склад,
        |    ПартииТоваровНаСкладахОбороты.Номенклатура КАК Номенклатура,
        |    ПартииТоваровНаСкладахОбороты.КоличествоПриход,
        |    ПартииТоваровНаСкладахОбороты.СтоимостьПриход
        |ИЗ
        |    РегистрНакопления.ПартииТоваровНаСкладах.Обороты(, , Регистратор, ) КАК ПартииТоваровНаСкладахОбороты
        |ГДЕ
        |    ПартииТоваровНаСкладахОбороты.Период >= &ДатаНачала
        |    И ПартииТоваровНаСкладахОбороты.Период = &ДатаОкончания
        |    И ПартииТоваровНаСкладахОбороты.Склад = &ВыбСклад
        |    И ПартииТоваровНаСкладахОбороты.Регистратор.Проведен = &Истина
        |    И ПартииТоваровНаСкладахОбороты.Регистратор.Организация = &ВыбОрганизация
        |    И ПартииТоваровНаСкладахОбороты.Регистратор.ОтметкаБухгалтера = &Истина";

    Запрос.УстановитьПараметр("ВыбОрганизация", ВыбОрганизация);
    Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);
    Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания);
    Запрос.УстановитьПараметр("Истина", Истина);
    Запрос.УстановитьПараметр("ВыбСклад", ВыбСклад);

    Результат = Запрос.Выполнить();
    ВыборкаПоСтрокам=Результат.Выгрузить();
11 olmi
 
28.03.14
10:50
+(10) Нормальный результат выдает стандартный отчет по партиям, но мне нужен определенный его формат, в том числе, с подписями комиссии. Разобрать способ построения стандартного отчета, чтобы сделать аналог, пока не могу - слишком много всего.
12 olmi
 
28.03.14
11:00
(+10) Заметила ошибку в установке параметра ДатаОкончания - надо не =, а <=. Все в порядке, заработало!) Прошу прощения за лишний пост).
13 patria0muerte
 
28.03.14
11:03
(10)+(12) Вот как то так правильней будет...
  ВЫБРАТЬ
    ПартииТоваровНаСкладахОбороты.Номенклатура,
    ПартииТоваровНаСкладахОбороты.Склад,
    ПартииТоваровНаСкладахОбороты.КоличествоПриход,
    ПартииТоваровНаСкладахОбороты.СтоимостьПриход,
    ПартииТоваровНаСкладахОбороты.Регистратор.Организация
ИЗ
    РегистрНакопления.ПартииТоваровНаСкладах.Обороты(&НачалоПериода, &КонецПериода, Регистратор, Склад = &Склад) КАК ПартииТоваровНаСкладахОбороты
ГДЕ
    ТИПЗНАЧЕНИЯ(ПартииТоваровНаСкладахОбороты.Регистратор) = ТИП(Документ.ПеремещениеТоваров)
    И ПартииТоваровНаСкладахОбороты.Регистратор.Организация = &Организация
14 patria0muerte
 
28.03.14
11:04
+(13)У меня в КА у регистра ПартииТоваровНаСкладах есть измерение Организация. В УТ тоже по идее должно быть, лучше брать его, чем из регистратора.
15 olmi
 
02.04.14
21:34
(13), (14) Случайно заглянула сюда снова и увидела). Буду теперь и так писать, так, конечно, компактней).Ну и новому подучилась). Спасибо большое!!!)
AdBlock убивает бесплатный контент. 1Сергей