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

Автор Тема: Не удалось сформировать внешнюю печатную форму! Поле объекта не обнаружено (Товар)  (Прочитано 5044 раз)

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

Оффлайн stydent117

  • *
  • Сообщений: 6
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Добрый день,подскажите в чём ошибка "Не удалось сформировать внешнюю печатную форму!
Поле объекта не обнаружено (Товар) "?
Конф:Комплексная,документ Заказ Покупателя.
В печатной форме "товар" есть.




#Если Клиент Тогда
Функция ВернутьРасчетныйСчет(СчетКонтрагента)

   БанкДляРасчетов = СчетКонтрагента.БанкДляРасчетов;
   Результат       = ?(БанкДляРасчетов.Пустая(), СчетКонтрагента.НомерСчета, СчетКонтрагента.Банк.КоррСчет);

   Возврат Результат;

КонецФункции // ВернутьРасчетныйСчет()
   

// Функция формирует табличный документ с печатной формой заказа или счета,
// разработанного методистами
//
// Возвращаемое значение:
//  Табличный документ - сформированная печатная форма
//
Функция ПечатьСчетаЗаказа(Тип) Экспорт
   Перем ПодразделениеОтветственныхЛиц;

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

   
   
   Шапка = Запрос.Выполнить();      //.Выбрать()
   //Шапка.Следующий();

   ТабДокумент = Новый ТабличныйДокумент;
   ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Счет";

   Запрос = Новый Запрос;
   Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка);
   СтрокаВыборкиПоляСодержания = ОбработкаТабличныхЧастей.ПолучитьЧастьЗапросаДляВыбораСодержания("ЗаказПокупателя");

   Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка);
   Запрос.Текст ="
   |ВЫБРАТЬ
   |   ВложенныйЗапрос.Номенклатура,
   |   ВЫРАЗИТЬ (ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК НаименованиеПолное,
   |   ВложенныйЗапрос.Номенклатура.Код                КАК Код,
   |   ВложенныйЗапрос.Номенклатура.Артикул            КАК Артикул,
   |   ВложенныйЗапрос.Количество,
   |   ВложенныйЗапрос.ЕдиницаИзмерения.Представление  КАК ЕдиницаИзмерения,
   |   ВложенныйЗапрос.ПроцентСкидкиНаценки
   |   + ВложенныйЗапрос.ПроцентАвтоматическихСкидок   КАК Скидка,
   |   ВложенныйЗапрос.Цена,
   |   ВложенныйЗапрос.Сумма,
   |   ВложенныйЗапрос.Размещение,
   |   ВложенныйЗапрос.СуммаНДС,
   |   ВложенныйЗапрос.Характеристика,
   |   NULL Как Серия,
   |   ВложенныйЗапрос.НомерСтроки,
   |   Метка
   |ИЗ
   |   (
   |   ВЫБРАТЬ
   |      ЗаказПокупателя.Номенклатура,
   |      ЗаказПокупателя.ЕдиницаИзмерения,
   |      ЗаказПокупателя.ПроцентСкидкиНаценки        КАК ПроцентСкидкиНаценки,
   |      ЗаказПокупателя.ПроцентАвтоматическихСкидок КАК ПроцентАвтоматическихСкидок,
   |      ЗаказПокупателя.Цена                        КАК Цена,
   |      СУММА(ЗаказПокупателя.Количество)           КАК Количество,
   |      СУММА(ЗаказПокупателя.Сумма     )           КАК Сумма,
   |      ЗаказПокупателя.Размещение                  КАК Размещение,
   |      СУММА(ЗаказПокупателя.СуммаНДС  )           КАК СуммаНДС,

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

   ЗапросТовары = Запрос.Выполнить().Выгрузить();


   Макет = ПолучитьМакет("СчетГримме");

   // Выводим шапку накладной
 //   СтруктурнаяЕдиница = СсылкаНаОбъект.Организация.ОсновнойБанковскийСчет;
//   СведенияОПолучателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата);
   
       ОбластьМакета       = Макет.ПолучитьОбласть("ЗаголовокСчета");
      ОбластьМакета.Параметры.Заполнить(Шапка);
//      СведенияОбОрганизации    = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата);
   //   ОбластьМакета.Параметры.ПредставлениеПолучателя = СведенияОбОрганизации.ПолноеНаименование;
      //ОбластьМакета.Параметры.Телефон = СведенияОбОрганизации.Телефоны;
      
      ТабДокумент.Вывести(ОбластьМакета);

   ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
//   ОбластьМакета.Параметры.Дата = Шапка.Дата;
   
   ТабДокумент.Вывести(ОбластьМакета);


   ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы");

   ТабДокумент.Вывести(ОбластьНомера);

   ОбластьСтрока = Макет.ПолучитьОбласть("Строка");


   Для каждого ВыборкаСтрокТовары Из ЗапросТовары Цикл

      ОбластьСтрока.Параметры.НомерСтроки = ЗапросТовары.Индекс(ВыборкаСтрокТовары) + 1;
        товар = СокрЛП(ВыборкаСтрокТовары.Товар);
      Артикул =Лев(товар,9);
      Если Найти(Артикул,".")=0 тогда
         Если НЕ ВыводитьБезАртикула тогда
            продолжить;
         КонецЕсли;   
         Артикул = "";
      иначе
         товар = СтрЗаменить(товар,""+Артикул+" ","");
      КонецЕсли;
      ОбластьСтрока.Параметры.Артикул       = Артикул;
      ОбластьСтрока.Параметры.Товар       = товар;
      ОбластьСтрока.Параметры.Количество       = ВыборкаСтрокТовары.Количество;
        ТабДокумент.Вывести(ОбластьСтрока);

   КонецЦикла;

   Возврат ТабДокумент;

КонецФункции // ПечатьСчетаЗаказа()

// Процедура осуществляет печать документа. Можно направить печать на
// экран или принтер, а также распечатать необходимое количество копий.
//
//  Название макета печати передается в качестве параметра,
// по переданному названию находим имя макета в соответствии.
//
// Параметры:
//  НазваниеМакета - строка, название макета.
//
Функция Печать() Экспорт
       // Получить экземпляр документа на печать
   ИмяМакета = "СчетГримме";
      
      ТабДокумент = ПечатьСчетаЗаказа(ИмяМакета);
   
     Возврат ТабДокумент;
   

КонецФункции // Печать

#КонецЕсли


Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
гуглите, как отлаживать внешние печатные формы.

хотя скорее всего дело в
"ОбластьСтрока.Параметры.Товар       = товар;"
и у этой области нет такого параметра...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн pavl_vs

  • *****
  • Сообщений: 1069
  • РЕПУТАЦИЯ: 168
  • КПД: 16%
  • Регистрация: 2011-05-09
  • Сайт: 
  • Профессия: Программист 7.7
stydent117, замечания:
- следовало бы использовать теги кода;
- большая часть кода отношения к существу вопроса не имеет;
- следовало бы указать место возникновения сообщения об ошибке.

Вопрос:
область (ячейка) строки "Товар" в свойствах определена как "Параметр", или застряла, например, как "Строка"?

Оффлайн stydent117

  • *
  • Сообщений: 6
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-08-11
  • Сайт: 
  • Профессия: Ученик 1С
stydent117, замечания:
- следовало бы использовать теги кода;
- большая часть кода отношения к существу вопроса не имеет;
- следовало бы указать место возникновения сообщения об ошибке.

Вопрос:
область (ячейка) строки "Товар" в свойствах определена как "Параметр", или застряла, например, как "Строка"?

В макете как параметр.
Добавлено: 11 Авг 2015, 14:49

stydent117, замечания:
- следовало бы использовать теги кода;
- большая часть кода отношения к существу вопроса не имеет;
- следовало бы указать место возникновения сообщения об ошибке.

Вопрос:
область (ячейка) строки "Товар" в свойствах определена как "Параметр", или застряла, например, как "Строка"?
В макете как параметр.

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
а. повторение - мать заикания? ;)
б. Ругается на
       товар = СокрЛП(ВыборкаСтрокТовары.Товар);

догадайтесь почему...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн pavl_vs

  • *****
  • Сообщений: 1069
  • РЕПУТАЦИЯ: 168
  • КПД: 16%
  • Регистрация: 2011-05-09
  • Сайт: 
  • Профессия: Программист 7.7
Цитировать
В макете как параметр.
Но чудес ведь не бывает.
Покажите макет и свойства ячейки.

Ругается всё же, как я понял, на строку
ОбластьСтрока.Параметры.Товар = товар;
Поставьте коммент (//) на этой строке -  проверьте вывод Артикула и количества.

Соглашусь с #2 и посоветовал бы больше самостоятельности в отладке.

Оффлайн stydent117

  • *
  • Сообщений: 6
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Скрин.
Добавлено: 11 Авг 2015, 15:30

Цитировать
В макете как параметр.
Но чудес ведь не бывает.
Покажите макет и свойства ячейки.

Ругается всё же, как я понял, на строку
ОбластьСтрока.Параметры.Товар = товар;
Поставьте коммент (//) на этой строке -  проверьте вывод Артикула и количества.

Соглашусь с #2 и посоветовал бы больше самостоятельности в отладке.

Нет,все равно ругается на "Товар"
Добавлено: 11 Авг 2015, 15:34

а. повторение - мать заикания? ;)
б. Ругается на
       товар = СокрЛП(ВыборкаСтрокТовары.Товар);

догадайтесь почему...

 //  товар = СокрЛП(ВыборкаСтрокТовары.Товар);
      //Артикул =Лев(товар,9);
      //Если Найти(Артикул,".")=0 тогда
      //   Если НЕ ВыводитьБезАртикула тогда
      //      продолжить;
      //   КонецЕсли;   
      //   Артикул = "";
      //иначе
      //   товар = СтрЗаменить(товар,""+Артикул+" ","");
      //КонецЕсли;
      //ОбластьСтрока.Параметры.Артикул       = Артикул;
   //   ОбластьСтрока.Параметры.Товар       = товар;
Да, ошибка тут,вывел печ.форму,заполнил количество.
Добавлено: 11 Авг 2015, 15:47

а. повторение - мать заикания? ;)
б. Ругается на
       товар = СокрЛП(ВыборкаСтрокТовары.Товар);

догадайтесь почему...

товар = СокрЛП(ВыборкаСтрокТовары.Товар);//Тут получается перем товар=значение из запроса,так?
      Артикул =Лев(товар,9); //тут перем артикул = 9 знакам слева
      Если Найти(Артикул,".")=0 тогда //тут если артикул =0 тогда дальше
         Если НЕ ВыводитьБезАртикула тогда
            продолжить;
         КонецЕсли;   
         Артикул = "";//тут появляется значение артикула(9 знаков слева)
      иначе
         товар = СтрЗаменить(товар,""+Артикул+" ","");//не пойму что тут
      КонецЕсли;
      ОбластьСтрока.Параметры.Артикул       = Артикул;
      ОбластьСтрока.Параметры.Товар       = товар;
Так я понимаю?

Последний раз редактировалось: stydent117; 11 Авг 2015, 15:47. Причина: Объединение сообщений

Оффлайн pavl_vs

  • *****
  • Сообщений: 1069
  • РЕПУТАЦИЯ: 168
  • КПД: 16%
  • Регистрация: 2011-05-09
  • Сайт: 
  • Профессия: Программист 7.7
stydent117, судя по Вашим комментариям к фрагментам кода писали код не Вы.

Покажите конкретно структуру "товара", закомментарив в цикле всё кроме "товара", ну можно оставить еще "Артикул", и введя в цикл Сообщение:
Для каждого ВыборкаСтрокТовары Из ЗапросТовары Цикл
//...........
  товар = СокрЛП(ВыборкаСтрокТовары.Товар);
  Артикул =Лев(товар,9);
//...........
Сообщить(товар);
// здесь можно так: Сообщить(Артикул + "  " + товар);
КонецЦикла;

Оффлайн stydent117

  • *
  • Сообщений: 6
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-08-11
  • Сайт: 
  • Профессия: Ученик 1С
stydent117, судя по Вашим комментариям к фрагментам кода писали код не Вы.

Покажите конкретно структуру "товара", закомментарив в цикле всё кроме "товара", ну можно оставить еще "Артикул", и введя в цикл Сообщение:
Для каждого ВыборкаСтрокТовары Из ЗапросТовары Цикл
//...........
  товар = СокрЛП(ВыборкаСтрокТовары.Товар);
  Артикул =Лев(товар,9);
//...........
Сообщить(товар);
// здесь можно так: Сообщить(Артикул + "  " + товар);
КонецЦикла;

Наименование полное выводит,а вот с обрезкой проблемы.
Аналогичная ошибка.
С переменной товар как я понимаю траблы,он не видит ее чтоль или нет у нее значения.


Теги:
 

Поле не найдено"ЗаказПокупателя.Услуги.Ссылка"<<?>>ЗаказПокупателя.Услуги.Ссылка

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

Ответов: 6
Просмотров: 6940
Последний ответ 05 Дек 2013, 00:01
от romanprogrammist
Вывод информации: если поле не заполнено, то вывод иной информации. Новичок

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

Ответов: 6
Просмотров: 311
Последний ответ 10 Окт 2017, 12:33
от kiksi
Поле "ВаловаяПрибыль" не может быть использовано в группировке "Store" СКД

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

Ответов: 2
Просмотров: 6407
Последний ответ 10 Июл 2014, 15:16
от virtus
Не заполняется поле "Цена" при формировании документа "Пересчет товаров"

Автор InnakechaРаздел Пользователям "1С - Предприятие 8"

Ответов: 4
Просмотров: 1082
Последний ответ 29 Дек 2016, 09:54
от Innakecha
Поле "Профессия"!!!

Автор MytiРаздел Предложения по работе форума

Ответов: 5
Просмотров: 5201
Последний ответ 23 Ноя 2010, 23:48
от progmikon

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
184 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
50 Сообщений
andron81_81
40 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
29 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 328
  • Точка Скрытых: 0
  • Точка Пользователей: 7
  • Точка Сейчас на форуме:

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal