Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
12 Дек 2017, 03:42
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Ошибка при создании отчета, без помощи СКД  (Прочитано 6496 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн proofet

  • **
  • Сообщений: 66
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-02-11
  • Сайт: 
  • Профессия: Ученик 1С
Всем привет! Задача: составить отчет по регистру Касса (Вид регистра - Остатки) в табличном документе  -- НЕ ЧЕРЕЗ СХЕМУ КОМПАНОВКИ ДАННЫХ. Мной сделан макет, подобный тому что делает конструктор печати....Создана форма отчета, на которой расположены  НачалоПериода ; КонецПериода и кнопка СФОРМИРОВАТЬ непосредственно сам отчет..Который бы выводил дату начала и конца, перечень номенклатуры, обороты кассы по каждой позиции и общий итог.   .. версия 1С - 8.1 .  Ранее всегда создавал отчет через схему компановки данных....Может уже было что то подобное на форуме ?(я искал, но может быть не слишком тщательно, всетки много тут тем уж было)...... В общем при нажатии кнопки сформировать отчет не формируется а выводит ошибки....Очевидно код составил я не правильно. Прошу вас если не затруднит помочь
Код:

Процедура СформироватьОтчетНажатие(Элемент)
    НачалоПериода = ЭлементыФормы.ДатаНачала;
   КонецПериода = ЭлементыФормы.ДатаОкончания;
   Макет1 = Отчеты.ОтчетПоКассеВМакете.ПолучитьМакет("Макет1");

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

   
   Запрос.УстановитьПараметр("НачалоПериода", НачалоПериода);
   Запрос.УстановитьПараметр("КонецПериода", КонецПериода);
   
   ТабДок = ЭлементыФормы.ПереченьНоменклатуры;
                     
   //Запрос.Параметры.Вставить("Ссылка", Ссылка);
   Выборка = Запрос.Выполнить().Выбрать();
   

   ОбластьЗаголовок = Макет1.ПолучитьОбласть("Заголовок");
   ОбластьПереченьНоменклатурыШапка = Макет1.ПолучитьОбласть("ПереченьНоменклатурыШапка");
   ОбластьПереченьНоменклатуры = Макет1.ПолучитьОбласть("ПереченьНоменклатуры");
   ОбластьИтог = Макет1.ПолучитьОбласть("Всего");
   ТабДок.Очистить();
   
   ВставлятьРазделительСтраниц = Ложь;
   Пока Выборка.Следующий() Цикл
      Если ВставлятьРазделительСтраниц Тогда
         ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
      КонецЕсли;

      ТабДок.Вывести(ОбластьЗаголовок);

      //Шапка.Параметры.Заполнить(Выборка);
      //ТабДок.Вывести(Шапка, Выборка.Уровень());

      ТабДок.Вывести(ОбластьПереченьНоменклатурыШапка);
      ВыборкаПереченьНоменклатуры = Выборка.ПереченьНоменклатуры.Выбрать();
      
      СуммаНачальныйОстаток = 0;
      СуммаОборот = 0;
      СуммаКонечныйОстаток = 0;
      
      Пока ВыборкаПереченьНоменклатуры.Следующий() Цикл
         ОбластьПереченьНоменклатуры.Параметры.Заполнить(ВыборкаПереченьНоменклатуры);
         ТабДок.Вывести(ОбластьПереченьНоменклатуры, ВыборкаПереченьНоменклатуры.Уровень());
         СуммаНачальныйОстаток = СуммаНачальныйОстаток + ВыборкаПереченьНоменклатуры.НачальныйОстаток;
         СуммаОборот = СуммаОборот + ВыборкаПереченьНоменклатуры.Оборот;
         СуммаКонечныйОстаток = СуммаКонечныйОстаток + ВыборкаПереченьНоменклатуры.КонечныйОстаток;
         
      КонецЦикла;
      
      ОбластьИтог.Параметры.ВсегоНачальныйОстаток = СуммаНачальныйОстаток;
      ОбластьИтог.Параметры.ВсегоОборот = СуммаОборот;
        ОбластьИтог.Параметры.ВсегоКонечныйОстаток = СуммаКонечныйОстаток;

      ТабДок.Вывести(ОбластьИтог);
      
      ВставлятьРазделительСтраниц = Истина;
      
   КонецЦикла;

КонецПроцедуры


Оффлайн proofet

  • **
  • Сообщений: 66
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-02-11
  • Сайт: 
  • Профессия: Ученик 1С

Оффлайн Nail2010

  • ****
  • Сообщений: 325
  • РЕПУТАЦИЯ: 18
  • КПД: 6%
  • Регистрация: 2010-10-27
  • Сайт: 
Вместо 
 НачалоПериода = ЭлементыФормы.ДатаНачала;
   КонецПериода = ЭлементыФормы.ДатаОкончания;
сделай через
Форма - вставить элемент управления - поле периода.

Наверное, ошибка выходит - Параметр не определен?

Оффлайн ***Vjacheslav***

  • ***
  • Сообщений: 156
  • РЕПУТАЦИЯ: 35
  • КПД: 22%
  • Регистрация: 2010-08-16
  • Сайт: 
  • Профессия: Программист 1С
Какие ошибки выводит???

Оффлайн proofet

  • **
  • Сообщений: 66
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-02-11
  • Сайт: 
  • Профессия: Ученик 1С
{Отчет.ОтчетПоКассеВМакете.Форма.ФормаОтчета(27)}: Ошибка при вызове метода контекста (Выполнить): {(8, 20)}: Ошибка обработки представления "РегистрНакопления.Касса.ОстаткиИОбороты:Несоответствие типов (параметр номер ""1"")"
ЛЕВОЕ СОЕДИНЕНИЕ <<?>>РегистрНакопления.Касса.ОстаткиИОбороты(&НачалоПериода, &КонецПериода) КАК КассаОстаткиИОбороты
   Выборка = Запрос.Выполнить().Выбрать();
по причине:
{(8, 20)}: Ошибка обработки представления "РегистрНакопления.Касса.ОстаткиИОбороты:Несоответствие типов (параметр номер ""1"")"
ЛЕВОЕ СОЕДИНЕНИЕ <<?>>РегистрНакопления.Касса.ОстаткиИОбороты(&НачалоПериода, &КонецПериода) КАК КассаОстаткиИОбороты

Оффлайн ***Vjacheslav***

  • ***
  • Сообщений: 156
  • РЕПУТАЦИЯ: 35
  • КПД: 22%
  • Регистрация: 2010-08-16
  • Сайт: 
  • Профессия: Программист 1С
Пробуй так:
 НачалоПериода = ЭлементыФормы.ДатаНачала.Значение;
 КонецПериода = ЭлементыФормы.ДатаОкончания.Значение;

Оффлайн proofet

  • **
  • Сообщений: 66
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-02-11
  • Сайт: 
  • Профессия: Ученик 1С
Это уже поменял...и на форме табличное поле, заменил на  поле табличного документа.  Сейчас проблема: не заполняется Поле ПереченьНоменклатуры.{Отчет.ОтчетПоКассеВМакете.Форма.ФормаОтчета(48)}: Метод объекта не обнаружен (Выбрать)
      ВыборкаПереченьНоменклатуры = Выборка.ПереченьНоменклатуры.Выбрать();

Почему нельзя Выбрать ?? в конструкторе печати даже выдает такую же строку...правда в 8.2..Объясните плиз

Оффлайн ***Vjacheslav***

  • ***
  • Сообщений: 156
  • РЕПУТАЦИЯ: 35
  • КПД: 22%
  • Регистрация: 2010-08-16
  • Сайт: 
  • Профессия: Программист 1С
А что ты хочешь этим выбрать ВыборкаПереченьНоменклатуры = Выборка.ПереченьНоменклатуры.Выбрать();? У тебя  Выборка.ПереченьНоменклатуры - Это СпрНоменклатура.Ссылка. А у ссылки нет метода выбрать(). вот она и ругаеться.

Оффлайн proofet

  • **
  • Сообщений: 66
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-02-11
  • Сайт: 
  • Профессия: Ученик 1С
Большое Спасибо!


Теги:
 

При открытии обр-ки в "Предприятии" есть ошибка, а в "Отладке" нет

Автор proofetРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 4523
Последний ответ 21 Сен 2011, 17:35
от proofet
ошибка "Невозможно обработать параметр "ПрофильПолномочийПользователя""

Автор lindeluРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 6072
Последний ответ 06 Июн 2012, 09:15
от lindelu
Синтаксическая ошибка "В" Номенклатура.Ссылка = <<?>> В ИЕРАРХИИ(&Ссылка)

Автор maskitoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 4191
Последний ответ 28 Апр 2014, 15:53
от maskito
Ошибка при загрузке данных через (Обработка "Выгрузка и загрузка данных XML")

Автор Сергей_87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 8551
Последний ответ 26 Апр 2012, 23:08
от Dethmontt
Синтаксическая ошибка "ИЗ"

Автор kulkriseРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 4564
Последний ответ 26 Янв 2014, 19:33
от kulkrise

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
166 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
55 Сообщений
alex0402
46 Сообщений
andron81_81
42 Сообщений
AIFrame
36 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
BuhRust
28 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 195
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal