Имя: Пароль:
1C
 
печатная форма. Несоответствие типов (параметр номер '1')
Ø (Волшебник 25.06.2018 15:49)
,
0 Droning
 
25.06.18
13:02
{ВнешняяОбработка.СчетНаОплатуСПечатьюАльянс.МодульОбъекта(361)}: Ошибка при вызове метода контекста (Заполнить)
            ОбластьМакета.Параметры.Заполнить("АдресОрганизацииШапка");
по причине:
Несоответствие типов (параметр номер '1')



Добрый день. в чем может быть косяк?
1 Darych
 
25.06.18
13:04
в несоответствии типа первого параметра
2 singlych
 
25.06.18
13:05
ПараметрыМакетаТабличногоДокумента (SpreadsheetDocumentTemplateParameters)
Заполнить (Fill)
Синтаксис:

Заполнить(<Объект>)
Параметры:

<Объект> (обязательный)

Тип: Произвольный.
Объект, из свойств которого будут заполняться параметры макета табличного документа.
Описание:

Заполняет параметры значениями свойств переданного объекта. Заполняются только те параметры, имена которых совпадают с именами свойств объекта.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).
Пример:

К=0;
Пока Выборка.Следующий() Цикл
    К = К+1;
    ОбластьМакета = Макет.ПолучитьОбласть("Строка");
    ОбластьМакета.Параметры.Заполнить(Выборка);
    ОбластьМакета.Параметры.НомерСтроки = К;
    ТабДок.Вывести(ОбластьМакета);
КонецЦикла;
3 Волшебник
 
25.06.18
13:06
(1) Шаман!
4 Droning
 
25.06.18
13:08
Если СведенияОПолучателе.ИНН="7715990969" Тогда
            ОбластьМакета = Макет.ПолучитьОбласть("ШапкаЭконотел");
            ДанныеПечатиШапкаЭконотел = Новый Структура;
                    ДанныеПечатиШапкаЭконотел.Вставить("АдресОрганизациииШапка", СведенияОПолучателе.ЮридическийАдрес);
        ДанныеПечатиШапкаЭконотел.Вставить("НазваниеОрганизациииШапка", СведенияОПолучателе.ПолноеНаименование);

              ОбластьМакета.Параметры.Заполнить(АдресОрганизациииШапка);
          ОбластьМакета.Параметры.Заполнить(НазваниеОрганизациииШапка);
        
                ОбластьМакета.Параметры.Заполнить(ДанныеПечатиШапкаЭконотел);

                    ОбластьМакета = Макет.ПолучитьОбласть("ШапкаЭконотел");
            
            ТабличныйДокумент.Вывести(ОбластьМакета);
            
        ИначеЕсли  СведенияОПолучателе.ИНН="7705552109" Тогда
            ОбластьМакета = Макет.ПолучитьОбласть("ШапкаГорлинии");
            ДанныеПечатиШапкаГорлинии = Новый Структура;

            ДанныеПечатиШапкаГорлинии.Вставить(АдресОрганизацииШапка, СведенияОПолучателе.ЮридическийАдрес);
        ДанныеПечатиШапкаГорлинии.Вставить(НазваниеОрганизацииШапка, СведенияОПолучателе.ПолноеНаименование);

            ОбластьМакета.Параметры.Заполнить(АдресОрганизацииШапка);
          ОбластьМакета.Параметры.Заполнить(НазваниеОрганизацииШапка);
        
                ОбластьМакета.Параметры.Заполнить(ДанныеПечатиШапкаГорлинии);

                    ОбластьМакета = Макет.ПолучитьОбласть("ШапкаГорЛинии");
                        ТабличныйДокумент.Вывести(ОбластьМакета);
            
        КонецЕсли;
5 Droning
 
25.06.18
13:09
если так, то переменная не определена ни АдресОрганизацииШЩапка ни НазваниеОрганизацииШапка
6 Darych
 
25.06.18
13:11
в условие небось не заходит.. там же у тя иначеесли
7 Droning
 
25.06.18
13:13
(6) и как быть?
8 Droning
 
25.06.18
13:14
у меня 2 шапки, надо при выставлении счета от одной организации высвечивалось лого этой организации , ее адрес и название. для второй соответственно так же
9 Mankubus
 
25.06.18
13:14
(5) читал (2)? Нужно передать объект а не просто значение
Иди сразу сделай присваиванием область. Параметры. Парам = значениеПарам
10 Droning
 
25.06.18
13:20
(9) читал. как передать объект то? в макете это поле определено как параметр. нужно создать соответствующий реквизит?
11 catena
 
25.06.18
13:22
(5)Определи их.
12 Droning
 
25.06.18
13:41
// Выводим шапку счета
        ВывестиЗаголовокПредупреждение(СведенияОДокументе.Получатель, ТабличныйДокумент, Макет);
        
        СведенияОПолучателе = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(СведенияОДокументе.Получатель, СведенияОДокументе.ДатаДляПолученияСведений);
         АдресОрганизации  = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОПолучателе, "ЮридическийАдрес");
        НазваниеОРганизации  = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОПолучателе, "НаименованиеДляПечатныхФорм");        
        
        
        Если СведенияОПолучателе.ИНН="7715990969" Тогда
            ОбластьМакета = Макет.ПолучитьОбласть("ШапкаЭконотел");
            ДанныеПечатиШапкаЭконотел = Новый Структура;
            
                    ДанныеПечатиШапкаЭконотел.Вставить("АдресОрганизации", СведенияОПолучателе.ЮридическийАдрес);
        ДанныеПечатиШапкаЭконотел.Вставить("НазваниеОрганизации", СведенияОПолучателе.ПолноеНаименование);

              ОбластьМакета.Параметры.Заполнить(АдресОрганизации);
          ОбластьМакета.Параметры.Заполнить(НазваниеОрганизации);
        
                ОбластьМакета.Параметры.Заполнить(ДанныеПечатиШапкаЭконотел);

                    ОбластьМакета = Макет.ПолучитьОбласть("ШапкаЭконотел");
            
            ТабличныйДокумент.Вывести(ОбластьМакета);
            
        ИначеЕсли  СведенияОПолучателе.ИНН="7705552109" Тогда
            ОбластьМакета = Макет.ПолучитьОбласть("ШапкаГорлинии");
            ДанныеПечатиШапкаГорлинии = Новый Структура;

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

            ОбластьМакета.Параметры.Заполнить(АдресОрганизации);
          ОбластьМакета.Параметры.Заполнить(НазваниеОрганизации);
        
                ОбластьМакета.Параметры.Заполнить(ДанныеПечатиШапкаГорлинии);

        //АдресОрганизации  = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(
        //    СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,ЮридическийАдрес");
            ОбластьМакета = Макет.ПолучитьОбласть("ШапкаГорЛинии");
            //ДанныеПечатиШапкаГорЛинии.Вставить("АдресОрганизации", АдресОрганизации);
            //ОбластьМакета.Параметры.Заполнить(ДанныеПечатиШапкаГорЛинии);
            ТабличныйДокумент.Вывести(ОбластьМакета);
13 Волшебник
 
25.06.18
13:43
(12) Не надо зашивать конкретные ИНН в программный код

ООО "Эконотел" (ИНН 7715990969, ОГРН 1147746091580), Москва
14 Droning
 
25.06.18
13:47
(13) мне сказали сделать так, привязать лого к инн
15 Droning
 
25.06.18
13:48
(13) вопрос в том, почему несоответствие типов вылезает, уже после того как я определил переменные
16 Droning
 
25.06.18
13:48
{ВнешняяОбработка.СчетНаОплатуСПечатьюАльянс.МодульОбъекта(362)}: Ошибка при вызове метода контекста (Заполнить)
            ОбластьМакета.Параметры.Заполнить(АдресОрганизации);
по причине:
Несоответствие типов (параметр номер '1')
17 Волшебник
 
25.06.18
13:50
(14) Надо завести справочник или регистр сведений Логотипы или добавить реквизит "Логотип" в спр. "Организации".

(16) Научись уже пользоваться отладчиком. Поставь точку останова и посмотри.
18 Darych
 
25.06.18
13:53
АдресОрганизации - в топку, как структуру называл?
19 Droning
 
25.06.18
13:56
(18) закомментривал строчки  ОбластьМакета.Параметры.Заполнить(АдресОрганизации);
          ОбластьМакета.Параметры.Заполнить(НазваниеОрганизации);

если ты это имел ввиду. Ошибок не выдает, однако на печати ни адреса ни названия
20 Darych
 
25.06.18
13:57
ОбластьМакета.Параметры.Заполнить(ДанныеПечатиШапкаЭконотел )
21 Droning
 
25.06.18
13:58
(20) и?
22 Darych
 
25.06.18
13:59
и иди в жопу
23 Droning
 
25.06.18
14:02
(22) Исправил в макете имя параметра на ДанныеПечатиШапкаЭконотел. Спасибо за верный посыл)))
24 фросия
 
25.06.18
14:03
(22) сработало!
25 Droning
 
25.06.18
14:05
(24) теперь впринципе все ответы на форуме можно свести к такому варианту) Животворящее иди в жопу спасет всех ламеров.
26 Droning
 
25.06.18
14:07
{ВнешняяОбработка.СчетНаОплатуСПечатьюАльянс.МодульОбъекта(73)}: Ошибка при вызове метода контекста (ВыполнитьПакет)
    РезультатЗапроса = Запрос.ВыполнитьПакет();
по причине:
{(46, 17)}: Поле не найдено "СчетНаОплату.ЗаРуководителяПоПриказу"
СчетНаОплату.<<?>>ЗаРуководителяПоПриказу КАК ЗаРуководителяПоПриказу,
27 Droning
 
25.06.18
14:13
а такое как решается?
28 Droning
 
25.06.18
14:13
{(46, 17)} что значат эти значения?
29 hhhh
 
25.06.18
14:15
(26) сначала определись, что такое у тебя СчетНаОплату.  ??
30 фросия
 
25.06.18
14:16
(28) обычно номер строки на котором спотыкнулся отладчик
31 Волшебник
 
25.06.18
14:17
(22) Великий Гуру!
32 Droning
 
25.06.18
14:18
(29) решил проблему. Привет, hhhh!

Но почему-то в печати опять таки нет поля ДанныеПечатиШапкаЭконотел. В печати нужная инфа отсутствует.

Ребят, я понимаю, что никому не интересно отвечать на глупые вопросы. Но все же очень прошу помочь(
33 фросия
 
25.06.18
14:19
(32) отладчик. используй его!
34 Droning
 
25.06.18
14:19
(33) а как его использовать с внешними печатными формами? значения не заполняются
35 фросия
 
25.06.18
14:22
(34) открой ВПФ просто как обработку.  и отлаживай
36 Darych
 
25.06.18
14:23
(35) ща будут вопрос "она не открывается"...
Путевку повторить?
37 фросия
 
25.06.18
14:24
(36) подождите, может у него еще действие первой не закончилось
38 Волшебник
 
25.06.18
14:24
(36) Великий Гуру не повторяется. Сказанного достаточно. Sapienti sat.
39 Droning
 
25.06.18
14:25
(35) отладка пошла.
40 Droning
 
25.06.18
14:27
Структура  ДанныеПечатиШапкаЭконотел заполнена как надо...
41 hhhh
 
25.06.18
14:39
(40) а вы точно уверены что АдресОрганизациииШапка - это то, что надо? три буквы и подряд ??
42 Droning
 
25.06.18
14:44
(41) // Выводим шапку счета
        ВывестиЗаголовокПредупреждение(СведенияОДокументе.Получатель, ТабличныйДокумент, Макет);
        
        СведенияОПолучателе = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(СведенияОДокументе.Получатель, СведенияОДокументе.ДатаДляПолученияСведений);
         АдресОрганизации  = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОПолучателе, "ЮридическийАдрес");
        НазваниеОРганизации  = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОПолучателе, "НаименованиеДляПечатныхФорм");        
        
        
        Если СведенияОПолучателе.ИНН="7715990969" Тогда
            ОбластьМакета = Макет.ПолучитьОбласть("ШапкаЭконотел");
            
            
                    ДанныеПечатиШапкаЭконотел = Новый Структура;
            
                    ДанныеПечатиШапкаЭконотел.Вставить("АдресОрганизации", СведенияОПолучателе.ЮридическийАдрес);
                    ДанныеПечатиШапкаЭконотел.Вставить("НазваниеОрганизации", СведенияОПолучателе.ПолноеНаименование);

                
                ОбластьМакета.Параметры.Заполнить(ДанныеПечатиШапкаЭконотел);

                                
            ТабличныйДокумент.Вывести(ОбластьМакета);
            
        ИначеЕсли  СведенияОПолучателе.ИНН="7705552109" Тогда
            ОбластьМакета = Макет.ПолучитьОбласть("ШапкаГорлинии");
            
            
                    ДанныеПечатиШапкаГорлинии = Новый Структура;

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

        
        
                ОбластьМакета.Параметры.Заполнить(ДанныеПечатиШапкаГорлинии);

                
              ТабличныйДокумент.Вывести(ОбластьМакета);
            
        КонецЕсли;
43 Droning
 
25.06.18
14:44
в данный момент код выглядит так
44 фросия
 
25.06.18
14:53
а макет?
45 Droning
 
25.06.18
14:58
46 фросия
 
25.06.18
14:58
а где в макете
АдресОрганизации
НазваниеОрганизации
?
47 фросия
 
25.06.18
15:01
как у вас параметр в макете называется - тот параметр и заполняйте в программе
тип параметра примитивный: число, строка.

вот интересно, у вас два параметра, вы его как хотели увидеть
АдресНазвание
или НазваниеАдрес?
или Название и с новой строки адрес, сами подумайте как вам программа должна структуру вывести в строку?
48 Droning
 
25.06.18
15:09
(47) тогда мне вообще никакая структура не нужна же?

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

        
        
                
                
              ТабличныйДокумент.Вывести(ОбластьМакета);
            
        КонецЕсли;
49 Droning
 
25.06.18
15:09
если так, то выдает ошибку по несоответствию типов параметр номер1
50 Droning
 
25.06.18
15:34
(47) как очевидно задать тип параметра?
51 Darych
 
25.06.18
15:37
ОбластьМакета.ТвойДолбанныйПараметр = ТвоеБлинЗначение
52 Droning
 
25.06.18
15:43
(51) ОбластьМакета.ТабличныйДокумент = НазваниеОрганизации;
                 ОбластьМакета.ТабличныйДокумент = АдресОрганизации;


так?
53 Darych
 
25.06.18
15:44
до свиданья
54 Droning
 
25.06.18
15:44
ОбластьМакета.НазваниеОрганизации = ТабличныйДокумент;
                 ОбластьМакета.АдресОрганизации = ТабличныйДокумент;  


точнее так?
55 Darych
 
25.06.18
15:44
не.. лучче прощай
56 Малыш Джон
 
25.06.18
15:48
... и Droning рисует на своем борту очередную звездочку!

Boom! Headshot!
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший