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

Автор Тема: внешняя обработка ошибка с курсом валют  (Прочитано 4462 раз)

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

Оффлайн agusikdeon

  • ***
  • Сообщений: 111
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2011-01-14
  • Сайт: 
  • Профессия: Ученик 1С
Ут 10.3

во внешней обработке есть функция которая запросом получает данные о документе ЗаказПокупателя с параметром(СсылкаНаОбъект)
"Функция СобратьДанныеПоЗаказПокупателя(СсылкаНаОбъект)"
что нужно написать в запросе чтобы из регистра сведений курсы валют выбралось то значение курса которое соответствует следующим условиям
КурсыВалют.Период=ЗаказПокупателя.Дата И КурсыВалют.Валюта=Заказпокупателя.ВалютаДокумента


Оффлайн agusikdeon

  • ***
  • Сообщений: 111
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2011-01-14
  • Сайт: 
  • Профессия: Ученик 1С
запрос=новый запрос;
   Запрос.УстановитьПараметр("Момент",СсылкаНаОбъект.МоментВремени());
      Запрос.УстановитьПараметр("ДокументОснование", СсылкаНаОбъект);

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

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Запрос=Новый Запрос;
Запрос.УстановитьПараметр("ДатаДокумент",СсылкаНаОбъект.Дата);
Запрос.УстановитьПараметр("Валюта", СсылкаНаОбъект.Валюта);
Запрос.Текст="ВЫБРАТЬ
             |   КурсыВалют.Период КАК период,
             |   КурсыВалют.Курс КАК курс
             |ИЗ
             |   РегистрСведений.КурсыВалют.СрезПоследних(&ДатаДокумента, Валюта = &Валюта) КАК КурсыВалют";

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
agusikdeon, у Вас в запросе связи между таблицами нет, поэтому и не работает.
И, как правильно сказал has, достаточно воспользоваться регистром Курсы валют, раз никакие данные из документа Заказ покупателя нам не нужны.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн agusikdeon

  • ***
  • Сообщений: 111
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2011-01-14
  • Сайт: 
  • Профессия: Ученик 1С
ошибка чтения значения(((
не пойму почему

Оффлайн Klyacksa

  • Фрилансер. Милости прошу с задачами в личку.
  • Глобальный модератор
  • *****
  • Сообщений: 1325
  • РЕПУТАЦИЯ: 430
  • КПД: 32%
  • Регистрация: 2010-08-20
  • Сайт: 
  • Профессия: Программист 1С
Опишите подробней ошибку, когда она возникает.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Оффлайн agusikdeon

  • ***
  • Сообщений: 111
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2011-01-14
  • Сайт: 
  • Профессия: Ученик 1С
скину часть кода обработки

Функция СобратьДанныеПоЗаказПокупателя(СсылкаНаОбъект)

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

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

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

   ДанныеДляПечати = Новый Структура();
   ДанныеДляПечати.Вставить("Организация",      Шапка.Организация);
   ДанныеДляПечати.Вставить("Номер",            СсылканаОбъект.Номер);
   ДанныеДляПечати.Вставить("Дата",             СсылкаНаОбъект.Дата);
   ДанныеДляПечати.Вставить("Поставщик",        Шапка.Поставщик);
   ДанныеДляПечати.Вставить("Грузоотправитель", Шапка.Грузоотправитель);
   ДанныеДляПечати.Вставить("Подразделение",    Шапка.Подразделение);
   ДанныеДляПечати.Вставить("Покупатель",       Шапка.Покупатель);
   ДанныеДляПечати.Вставить("Грузополучатель",  Шапка.Грузополучатель);
   ДанныеДляПечати.Вставить("Сумма",            Шапка.Сумма);
   ДанныеДляПечати.Вставить("Валюта",           Шапка.Валюта);
   ДанныеДляПечати.Вставить("УчитыватьНДС",     Шапка.УчитыватьНДС);
   ДанныеДляПечати.Вставить("курс",     Шапка2.курс);
   ДанныеДляПечати.Вставить("период",     Шапка2.период);



    Руководители = РегламентированнаяОтчетность.ОтветственныеЛицаОрганизации(Шапка.Организация, СсылкаНаОбъект.Дата,);
   ДанныеДляПечати.Вставить("ФИОРуководителя",      Руководители.Руководитель);
   ДанныеДляПечати.Вставить("ФИОГлавногоБухгалтера", Руководители.ГлавныйБухгалтер);

   
   Товары = ИнициализацияТаблицыСтрок();

   Пока ВыборкаСтрокТовары.Следующий() = 1 Цикл
      Строчка = Товары.Добавить();
      Строчка.Товар               = ВыборкаСтрокТовары.Товар;
      Строчка.ТоварНаименование   = СокрЛП(ВыборкаСтрокТовары.ТоварНаименование) + ФормированиеПечатныхФорм.ПредставлениеСерий(ВыборкаСтрокТовары);
      Строчка.СтранаПроисхождения = ВыборкаСтрокТовары.СтранаПроисхождения;
      Строчка.ПредставлениеСтраны = ?(Не ЗначениеЗаполнено(ВыборкаСтрокТовары.ПредставлениеСтраны), ВыборкаСтрокТовары.СтранаПроисхождения, ВыборкаСтрокТовары.ПредставлениеСтраны);
      Строчка.НомерГТД            = ВыборкаСтрокТовары.НомерГТД;
      Строчка.ПредставлениеГТД    = ВыборкаСтрокТовары.ПредставлениеГТД;
      Строчка.Количество          = ВыборкаСтрокТовары.Количество;
      Строчка.ЕдиницаИзмерения    = ВыборкаСтрокТовары.ЕдиницаИзмерения;
      Строчка.СуммаВключаетНДС   = Шапка.СуммаВключаетНДС;
      Строчка.Цена = ?(ВыборкаСтрокТовары.Цена <> 0, ?(НЕ Шапка.СуммаВключаетНДС,?(ВыборкаСтрокТовары.Количество = 0, 0, ВыборкаСтрокТовары.Сумма / ВыборкаСтрокТовары.Количество),ВыборкаСтрокТовары.Цена),
                       ?(ВыборкаСтрокТовары.Количество = 0, 0, (ВыборкаСтрокТовары.Сумма - ?(Шапка.СуммаВключаетНДС, ВыборкаСтрокТовары.СуммаНДС, 0)) / ВыборкаСтрокТовары.Количество));
      Строчка.СтавкаНДС           = ?(Шапка.УчитыватьНДС, ВыборкаСтрокТовары.СтавкаНДС, Перечисления.СтавкиНДС.БезНДС);
      Строчка.СуммаНДС            = ВыборкаСтрокТовары.СуммаНДС;
      Строчка.Сумма               = ВыборкаСтрокТовары.Сумма;
   КонецЦикла;

   ДанныеДляПечати.Вставить("ТабличнаяЧасть", Товары);


   Возврат ДанныеДляПечати;

КонецФункции


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

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

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


   Если ВыборкаПоТоварам.Количество() > 0 Тогда
      ТолькоУслуги = Истина;
      Для Каждого СтрокаТовар Из ВыборкаПоТоварам Цикл
         Если (ТипЗнч(СтрокаТовар.Товар) = Тип("СправочникСсылка.Номенклатура")
            И Не СтрокаТовар.Товар.Услуга)
            Тогда
            ТолькоУслуги = Ложь;
            Прервать;
         КонецЕсли;
      КонецЦикла;
   Иначе
      ТолькоУслуги = Ложь;
   КонецЕсли;


    //Выводим шапку накладной
   ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
   ОбластьМакета.Параметры.Заполнить(ДанныеДляПечати);
   ЗаголовокДляПечати = ОбщегоНазначения.СформироватьЗаголовокДокумента(ДанныеДляПечати, "Заказ Покупателя");
   ОбластьМакета.Параметры.Номер = ЗаголовокДляПечати;
            ОбластьМакета.Параметры.ПредставлениеПоставщика       = "Продавец: "                                 + ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике,  "ПолноеНаименование,");
         ОбластьМакета.Параметры.ДатаКурса       = "ДатаКурса: "+ДанныеДляПечати.период;
         ОбластьМакета.Параметры.Курс       = "Курс: "+ДанныеДляПечати.курс;
         Областьмакета.Параметры.Оплата=оплатта.оплата;
         ОбластьМакета.Параметры.АдресПоставщика               = "Адрес: "                                    + ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике,  "ЮридическийАдрес,");
      ОбластьМакета.Параметры.ИННпоставщика                 = "ИНН/КПП Продавца: "   + ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике,  "ИНН,КПП", Ложь);
         ОбластьМакета.Параметры.ПредставлениеГрузоотправителя = "Грузоотправитель и его адрес: " + ?(Не ЗначениеЗаполнено(СсылкаНаОбъект.Грузоотправитель), ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике,  "ПолноеНаименование,")+ ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике,  "ЮридическийАдрес,"), ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОГрузоотправителе,  "ПолноеНаименование,ФактическийАдрес,"));
         ОбластьМакета.Параметры.ПредставлениеГрузополучателя  = "Грузополучатель и его адрес: "  + ?(Не ЗначениеЗаполнено(СсылкаНаОбъект.Грузополучатель), ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбПокупателе, "ПолноеНаименование,")+ ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбПокупателе, "ЮридическийАдрес,"), ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОГрузополучателе, "ПолноеНаименование,ФактическийАдрес,"));
      Строка_ПоДокументу = "";
      
         Строка_ПоДокументу = Строка_ПоДокументу+ ?(ПустаяСтрока(Строка_ПоДокументу), "К платежно-расчетному документу № ",", ");
               
      
      Если ПустаяСтрока(Строка_ПоДокументу) Тогда
         Строка_ПоДокументу = "К платежно-расчетному документу № -- от --"
      КонецЕсли;
      ОбластьМакета.Параметры.ПоДокументу                   = Строка_ПоДокументу;
      
      ОбластьМакета.Параметры.ПредставлениеПокупателя       = "Покупатель: "                               + ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбПокупателе, "ПолноеНаименование,");
      ОбластьМакета.Параметры.АдресПокупателя               = "Адрес: "                                    + ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбПокупателе, "ЮридическийАдрес,");
         
   
   ПроставитьПрочеркиВПустыеПоля(ОбластьМакета);
   ТабДокумент.Вывести(ОбластьМакета);

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

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

   ИтогоСуммаНДС = 0;
   ИтогоВсего    = 0;

   ВыборкаСтрокТовары = ДанныеДляПечати.ТабличнаяЧасть;
    ВыборкаСтрокТовары.Колонки.Добавить("СуммаБезНДС");
   ВыборкаСтрокТовары.Колонки.Добавить("СуммаСНДС");
   
   Для Каждого Строчка Из ВыборкаСтрокТовары Цикл
      Строчка.СуммаСНДС = Строчка.Сумма + ?(Строчка.СуммаВключаетНДС, 0, Строчка.СуммаНДС);
      Если (Строчка.СтавкаНДС = Перечисления.СтавкиНДС.НДС20_120)
       Или (Строчка.СтавкаНДС = Перечисления.СтавкиНДС.НДС18_118)
       Или (Строчка.СтавкаНДС = Перечисления.СтавкиНДС.НДС10_110) Тогда
         Строчка.СуммаБезНДС = Строчка.СуммаСНДС;
         Если Не Строчка.СуммаВключаетНДС тогда
            Строчка.Цена = 0;
         КонецЕсли;
      Иначе
         Строчка.СуммаБезНДС = Строчка.СуммаСНДС - Строчка.СуммаНДС;
         Если Строчка.СуммаВключаетНДС тогда
            Строчка.Цена = 0;
         КонецЕсли;
      КонецЕсли;
      Если Строчка.Цена = 0 Тогда
         Строчка.Цена = Окр(?(Строчка.Количество = 0, 0, Строчка.СуммаБезНДС / Строчка.Количество), 2);
      КонецЕсли;
   КонецЦикла;
   
   ВыборкаСтрокТовары.Свернуть("Товар, ТоварНаименование, СтранаПроисхождения, ПредставлениеСтраны, НомерГТД, ПредставлениеГТД, ЕдиницаИзмерения, Цена, СтавкаНДС", "Количество, Сумма, СуммаНДС, СуммаСНДС, СуммаБезНДС");
   
   Для Каждого Строчка Из ВыборкаСтрокТовары Цикл
      ОбластьМакета.Параметры.Заполнить(Строчка);
      
      Если Строчка.СтранаПроисхождения = Справочники.КлассификаторСтранМира.Россия Тогда
         ОбластьМакета.Параметры.ПредставлениеСтраны = "--";
         ОбластьМакета.Параметры.ПредставлениеГТД    = "--";
      КонецЕсли;

      Количество  = Строчка.Количество;

               ОбластьМакета.Параметры.Количество = Количество;
         ОбластьМакета.Параметры.Цена   = Строчка.Цена;
         ОбластьМакета.Параметры.Стоимость  = Строчка.СуммаБезНДС;
      
         
      ОбластьМакета.Параметры.Всего      = Строчка.СуммаСНДС;
      ОбластьМакета.Параметры.СтавкаНДС  = Строчка.СтавкаНДС;

      ИтогоСуммаНДС = ИтогоСуммаНДС + Строчка.СуммаНДС;
      ИтогоВсего    = ИтогоВсего    + Строчка.СуммаСНДС;

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

   КонецЦикла;

   Если ВыборкаСтрокТовары.Количество()>0 Тогда
      ТабДокумент.Область(ТабДокумент.ВысотаТаблицы,,ТабДокумент.ВысотаТаблицы,).ВместеСоСледующим = Истина;
   КонецЕсли;
   
   ОбластьМакета = Макет.ПолучитьОбласть("Итого");
   ОбластьМакета.Параметры.ИтогоСуммаНДС = ИтогоСуммаНДС;
   ОбластьМакета.Параметры.ИтогоВсего    = ИтогоВСего;
   
   ПроставитьПрочеркиВПустыеПоля(ОбластьМакета);
   ТабДокумент.Вывести(ОбластьМакета);

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

   ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
   ТабДокумент.ПолеСверху = 13;
   ТабДокумент.ПолеСлева  = 0;
   ТабДокумент.ПолеСнизу  = 0;
   ТабДокумент.ПолеСправа = 0;

   ТабДокумент.ВерхнийКолонтитул.Выводить          = Истина;
   ТабДокумент.ВерхнийКолонтитул.НачальнаяСтраница = 2;
   ТабДокумент.ВерхнийКолонтитул.ВертикальноеПоложение = ВертикальноеПоложение.Низ;
   ТабДокумент.ВерхнийКолонтитул.ТекстСлева   = ЗаголовокДляПечати;
   ТабДокумент.ВерхнийКолонтитул.ТекстСправа  = "Лист [&НомерСтраницы]";

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

КонецФункции

Функция СобратьДанныеПоЗаказПокупателя 2-ой запрос поставил как предложил has.
при отладке если просмотреть значение "шапка1" то там для параметров курс и период будет значение Null
а выборка "шапка2" выдает для параметров курс и период Ошибка Чтения значения

Оффлайн agusikdeon

  • ***
  • Сообщений: 111
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2011-01-14
  • Сайт: 
  • Профессия: Ученик 1С
основа функций взята из документа СчетФактураВыданный

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
скину часть кода обработки
убил)))....можно было поменьше.
Если по делу, то надо то место где выдается ошибка, ато както не фонтан сидеть и разбираться в таком куску

Оффлайн agusikdeon

  • ***
  • Сообщений: 111
  • РЕПУТАЦИЯ: 1
  • КПД: 1%
  • Регистрация: 2011-01-14
  • Сайт: 
  • Профессия: Ученик 1С
ошибку выдает здесь
Запрос=Новый Запрос;
    Запрос.УстановитьПараметр("ДатаДокумента",СсылкаНаОбъект.Дата);
         Запрос.УстановитьПараметр("Валюта", СсылкаНаОбъект.ВалютаДокумента);
Запрос.Текст="ВЫБРАТЬ
             |   КурсыВалют.Период КАК период,
             |   КурсыВалют.Курс КАК курс
             |ИЗ
             |   РегистрСведений.КурсыВалют.СрезПоследних(&ДатаДокумента, Валюта = &Валюта) КАК КурсыВалют";
     

          шапка1=Запрос.Выполнить();
          шапка2=шапка1.Выбрать();



запрос поставил как предложил has.
при отладке если просмотреть значение "шапка1" то там для параметров курс и период будет значение Null
а выборка "шапка2" выдает для параметров курс и период Ошибка Чтения значения


Теги:
 

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

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

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

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

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

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

Ответов: 4
Просмотров: 4348
Последний ответ 28 Апр 2014, 15:53
от maskito
При создании нового документа "Заявка на кассовый расход" Ошибка "Значение 9 поля "номер" не уникально

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

Ответов: 14
Просмотров: 8944
Последний ответ 22 Ноя 2014, 04:50
от cska-fanat-kz
Синтаксическая ошибка "ИЗ"

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

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

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
102 Сообщений
AIFrame
86 Сообщений
alex0402
34 Сообщений
pavl_vs
23 Сообщений
kiksi
19 Сообщений
alexandr_ll
17 Сообщений
andron81_81
16 Сообщений
Norfolk
15 Сообщений
LexaK
13 Сообщений
MuI_I_Ika MuI_I_Ika
13 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal