Имя: Пароль:
1C
1С v8
Формирование отчета.
0 Ленулькин
 
27.08.13
13:31
Здравствуйте ребята попросили созать простой отчет чтоба на словов "вет" сформировался отчет:
Дата нач
Дата конц
словов: вет
далее таблица где:
Дата Номер Сумма Ктнрагент АдресДоставки Организация Экспедитор


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

    КонецЦикла;
КонецПроцедуры

Процедура ВыбПериодНажатие(Элемент)
    НастройкаПериода = Новый НастройкаПериода;
    НастройкаПериода.УстановитьПериод(НачПериода, ?(КонПериода='0001-01-01', КонПериода, КонецДня(КонПериода)));
    НастройкаПериода.РедактироватьКакИнтервал = Истина;
    НастройкаПериода.РедактироватьКакПериод = Истина;
    НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
    Если НастройкаПериода.Редактировать() Тогда
        НачПериода = НастройкаПериода.ПолучитьДатуНачала();
        КонПериода = НастройкаПериода.ПолучитьДатуОкончания();
    КонецЕсли;
КонецПроцедуры

Процедура СоставВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    ТекСтрока = ЭлементыФормы.Состав.ТекущаяСтрока;
    Если ТекСтрока <> Неопределено Тогда
        ФормаЭлемента = ТекСтрока.Документ.Ссылка.ПолучитьФорму();
        ФормаЭлемента.ОткрытьМодально();
    КонецЕсли;    
КонецПроцедуры



НачПериода = ТекущаяДата();
КонПериода = ТекущаяДата();



    //Если ПустаяСтрока(ПолеВвода) Тогда
    //    Предупреждение("Нет слова для поиска");
    //    Возврат;
    //КонецЕсли;
    //Запрос = Новый Запрос;
    //Запрос.Текст =  "
    //|ВЫБРАТЬ
    //|    Ссылка,
    //|   Дата
    //|ИЗ
    //|    Документ.РеализацияТоваровИУслуг
    //|ОБЪЕДИНИТЬ
    //|ВЫБРАТЬ
    //|    Ссылка,
    //|   Дата
    //|ИЗ
    //|Документ.ЗаказыПокупателей
    //|ГДЕ
    //| ВЫРАЗИТЬ(НазначениеПлатежа КАК СТРОКА(250)) ПОДОБНО &Усл
    //| И Дата МЕЖДУ &НачПериода И &КонПериода
    //| УПОРЯДОЧИТЬ ПО Дата" ;
    //Запрос.УстановитьПараметр("НачПериода",НачПериода);
    //Запрос.УстановитьПараметр("КонПериода",КонПериода);
    //Выборка = Запрос.Выполнить().Выбрать();
    //Состав.Очистить();
    //Пока Выборка.Следующий() Цикл
    //    НоваяСтрока = Состав.Добавить();
    //    НоваяСтрока.Документ = Выборка.Ссылка;
    //КонецЦикла;

Пожалуйста если не сложно проверьте отчет, и помогите почему пишет ошибку?
({Форма.Форма(28,5)}: Переменная не определена (Состав)
    <<?>>Состав.Очистить();
{Форма.Форма(30,17)}: Переменная не определена (Состав)
        НоваяСтрока = <<?>>Состав.Добавить();)
1 Rie
 
27.08.13
13:33
(0) Это означает, что переменная с именем Состав не определена.
Что такое Состав? Откуда он (должен был) взяться?
2 Ленулькин
 
27.08.13
13:57
Нашла! Это же табличное поле у меня было)))
Но теперь выдает другуб ошибку уже В торговле

({Форма.Форма(27)}: Ошибка при вызове метода контекста (Выполнить): {(7, 24)}: Синтаксическая ошибка "(Перечисление.ЗаказыПокупателей)"
Видоперации = ЗНАЧЕНИЕ<<?>>(Перечисление.ЗаказыПокупателей)
    Выборка = Запрос.Выполнить().Выбрать();)

Посмотрите пожалуйста возможно я не правильные параметры задала?
3 Molinor
 
27.08.13
14:02
Не возможно, а точно неправильно.
Надо ещё указать значение перечисления.
4 Ленулькин
 
27.08.13
14:39
Процедура КнопкаВыполнитьНажатие(Кнопка)
    Если ПустаяСтрока(ПолеВвода1) Тогда
        Предупреждение("Нет слова для поиска");
        Возврат;
    КонецЕсли;
    Запрос = Новый Запрос;
    Запрос.Текст =  "
        |Выбрать
        |    *
        |ИЗ
        |    ЖурналДокументов.ЗаказПокупателей
        |ГДЕ
        |    Видоперации = ЗНАЧЕНИЕ(ПеречислениеСсылка.ВидыОперацийЗаказПокупателя)
        |И
        |    НЕ ПометкаУдаления
        |И
        |    Проведен
        |И
        |    ВЫРАЗИТЬ(НазначениеПлатежа КАК СТРОКА(250)) ПОДОБНО &Усл
        | И Дата МЕЖДУ &НачПериода И &КонПериода
        | УПОРЯДОЧИТЬ ПО Дата";
    
    
    Запрос.УстановитьПараметр("НачПериода",НачПериода);
    Запрос.УстановитьПараметр("КонПериода",КонПериода);
    Выборка = Запрос.Выполнить().Выбрать();
    Состав.Очистить();
    Пока Выборка.Следующий() Цикл
        НоваяСтрока = Состав.Добавить();
        НоваяСтрока.Документ = Выборка.Ссылка;
        НоваяСтрока.КонтрАгент = Выборка.Ссылка.Контрагент;
        НоваяСтрока.Дата = Выборка.Ссылка.Дата;
        НоваяСтрока.Номер = Выборка.Ссылка.НомерДокумента;
        НоваяСтрока.Сумма = Выборка.Ссылка.СуммаДокумента;
        НоваяСтрока.АдресДоставки = Выборка.Ссылка.РегистрСведений.КонтактнаяИнформация;
        НоваяСтрока.Организация = Выборка.Ссылка.РегистрСведений.КонтактнаяИнформация;
        НоваяСтрока.Организация = Выборка.Ссылка.Справочник.Организаци;
        НоваяСтрока.Экспедитор = Выборка.Ссылка.Справочник.ФизичискиеЛица;

    КонецЦикла;
КонецПроцедуры

Вот указала перечисления! Ну что то опять не выходит
5 Rie
 
27.08.13
15:48
(4) А можно сделать так, чтобы не приходилось напрягать телепатические способности, догадываясь, что означает "не выходит"?
6 Ленулькин
 
27.08.13
15:50
конечно(
Процедура КнопкаВыполнитьНажатие(Кнопка)
Если ПустаяСтрока(ПолеВвода1) Тогда
  Предупреждение("Нет слова для поиска");
  Возврат;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.Текст =  "ВЫБРАТЬ
  |ЗаказыПокупателей.Ссылка
        |ИЗ
  |ЖурналДокументов.ЗаказыПокупателей КАК ЗаказыПокупателей
  |ГДЕ
  |ЗаказыПокупателей.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийЗаказПокупателя.ПродажаКомиссия)
  |И ЗаказыПокупателей.ПометкаУдаления = Ложь
  |И
  |ЗаказыПокупателей.Проведен = Истина
  |И
  | ВЫРАЗИТЬ(НазначениеПлатежа КАК СТРОКА(250)) ПОДОБНО &Усл
  | И Дата МЕЖДУ &НачПериода И &КонПериода
  | УПОРЯДОЧИТЬ ПО Дата";

Запрос.УстановитьПараметр("НачПериода",НачПериода);
Запрос.УстановитьПараметр("КонПериода",КонПериода);
Выборка = Запрос.Выполнить().Выбрать();
    Состав.Очистить();
Пока Выборка.Следующий() Цикл
  НоваяСтрока = Состав.Добавить();
  НоваяСтрока.Документ = Выборка.Ссылка;
  НоваяСтрока.КонтрАгент = Выборка.Ссылка.Контрагент;
  НоваяСтрока.Дата = Выборка.Ссылка.Дата;
  НоваяСтрока.Номер = Выборка.Ссылка.НомерДокумента;
  НоваяСтрока.Сумма = Выборка.Ссылка.СуммаДокумента;
  НоваяСтрока.АдресДоставки = Выборка.Ссылка.РегистрСведений.КонтактнаяИнформация;
  НоваяСтрока.Организация = Выборка.Ссылка.РегистрСведений.КонтактнаяИнформация;
  НоваяСтрока.Организация = Выборка.Ссылка.Справочник.Организаци;
  НоваяСтрока.Экспедитор = Выборка.Ссылка.Справочник.ФизичискиеЛица;
КонецЦикла;
КонецПроцедуры


Ошибку выдает!
{Форма.Форма(24)}: Ошибка при вызове метода контекста (Выполнить): {(6, 41)}: Синтаксическая ошибка "(Перечисление.ВидыОперацийЗаказПокупателя.ПродажаКомиссия)"
ЗаказыПокупателей.ВидОперации = ЗНАЧЕНИЕ<<?>>(Перечисление.ВидыОперацийЗаказПокупателя.ПродажаКомиссия)
Выборка = Запрос.Выполнить().Выбрать();
7 Rie
 
27.08.13
16:04
(6) А что у Вас за конфигурация?
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший