вторник, 2 октября 2012 г.

1с Отбор изменений из плана обмена с помощью запроса

Построитель1 = Новый ПостроительОтчета;
    Построитель1.Текст ="
    |ВЫБРАТЬ
|    0 КАК Ном,
|    ИСТИНА КАК Выгружать,
|    РеализацияТоваровУслугИзменения.Ссылка.ДатаОтгрузки КАК Дата,
|    ""РеализацияТоваровУслуг"" КАК Вид,
|    РеализацияТоваровУслугИзменения.Ссылка.Номер КАК Номер,
|    РеализацияТоваровУслугИзменения.Ссылка
|ИЗ


|    Документ.РеализацияТоваровУслуг.Изменения КАК РеализацияТоваровУслугИзменения
|ГДЕ
|    РеализацияТоваровУслугИзменения.Ссылка.ДатаОтгрузки МЕЖДУ &Нач И КОНЕЦПЕРИОДА(&Кон, ДЕНЬ)
|{ГДЕ
|    (""РеализацияТоваровУслуг"") КАК Вид}
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
|    0,
|    ИСТИНА,
|    ВозвратТоваровОтПокупателяИзменения.Ссылка.Дата,
|    ""ВозвратТоваровОтПокупателя"",
|    ВозвратТоваровОтПокупателяИзменения.Ссылка.Номер,
|    ВозвратТоваровОтПокупателяИзменения.Ссылка
|ИЗ
|    Документ.ВозвратТоваровОтПокупателя.Изменения КАК ВозвратТоваровОтПокупателяИзменения
|ГДЕ
|    ВозвратТоваровОтПокупателяИзменения.Ссылка.Дата МЕЖДУ &Нач И КОНЕЦПЕРИОДА(&Кон, ДЕНЬ)
|{ГДЕ
|    (""ВозвратТоваровОтПокупателя"") КАК Вид}
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
|    0,
|    ИСТИНА,
|    ОприходованиеТоваровИзменения.Ссылка.Дата,
|    ""ОприходованиеТоваров"",
|    ОприходованиеТоваровИзменения.Ссылка.Номер,
|    ОприходованиеТоваровИзменения.Ссылка
|ИЗ
|    Документ.ОприходованиеТоваров.Изменения КАК ОприходованиеТоваровИзменения
|ГДЕ
|    ОприходованиеТоваровИзменения.Ссылка.Дата МЕЖДУ &Нач И КОНЕЦПЕРИОДА(&Кон, ДЕНЬ)
|{ГДЕ
|    (""ОприходованиеТоваров"") КАК Вид}
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
|    0,
|    ИСТИНА,
|    СписаниеТоваровИзменения.Ссылка.Дата,
|    ""СписаниеТоваров"",
|    СписаниеТоваровИзменения.Ссылка.Номер,
|    СписаниеТоваровИзменения.Ссылка
|ИЗ
|    Документ.СписаниеТоваров.Изменения КАК СписаниеТоваровИзменения
|ГДЕ
|    СписаниеТоваровИзменения.Ссылка.Дата МЕЖДУ &Нач И КОНЕЦПЕРИОДА(&Кон, ДЕНЬ)
|{ГДЕ
|    (""СписаниеТоваров"") КАК Вид}
|
|УПОРЯДОЧИТЬ ПО
|    Вид,
|    Дата,
|    Номер
    |";
   
    Построитель1.Параметры.Вставить("Нач",Нач);
    Построитель1.Параметры.Вставить("Кон",Кон);
   
    Построитель1.ЗаполнитьНастройки();
   
    Построитель1.Выполнить();
   
    Результат = Построитель1.Результат.Выгрузить();
   
    Результат.ЗаполнитьЗначения(Истина,"Выгружать");
   
    Результат.Колонки.Удалить("Вид");
    Результат.Колонки.Удалить("Дата");
    Результат.Колонки.Удалить("Номер");   
    Результат.Колонки.Добавить("Примечание");
    Результат.Колонки.Добавить("УиСтр");
    ЭлементыФормы.Результат.СоздатьКолонки();
    Выгружать = ЭлементыФормы.Результат.Колонки.Найти("Выгружать");
    Выгружать.ДанныеФлажка="Выгружать";
    Выгружать.УстановитьЭлементУправления(Тип("Флажок"));
    Ном = ЭлементыФормы.Результат.Колонки.Найти("Ном");
    Ном.Ширина=2;
    ЭлементыФормы.Результат.Колонки.Найти("УиСтр").Видимость=Ложь;
   
    для Каждого стр из Результат Цикл
        стр.Ном = Результат.Индекс(стр)+1;
    КонецЦикла;