|
Недостаточно фактических параметров | ☑ | ||
---|---|---|---|---|
0
buhochka
25.12.12
✎
17:11
|
Помогите, пожалуйста, вторые сутки бьюсь с ВПФ счета на оплату. Вроде, все делаю, как у вас написано, но ошибка остается.
Функция Печать(Тип)Экспорт Перем ПодразделениеОтветственныхЛиц; Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); Запрос.Текст =" |ВЫБРАТЬ | Номер, | Дата, | ДоговорКонтрагента, | Организация, | Контрагент КАК Покупатель, | Организация КАК Руководители, | Организация КАК Поставщик, | ОрганизацияПолучатель КАК Получатель, | СуммаДокумента, | ВалютаДокумента, | УчитыватьНДС, | СуммаВключаетНДС |ИЗ | Документ.СчетНаОплатуПокупателю КАК ЗаказПокупателя | |ГДЕ | ЗаказПокупателя.Ссылка = &ТекущийДокумент"; Шапка = Запрос.Выполнить().Выбрать(); Шапка.Следующий(); ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказПокупателя_СчетЗаказ"; Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); ЧастьЗапросаДляВыбораСодержанияУслуг = ФормированиеПечатныхФорм.ПолучитьЧастьЗапросаДляВыбораСодержанияУслуг("ЗаказПокупателя"); Запрос.Текст = "ВЫБРАТЬ | ВложенныйЗапрос.Номенклатура КАК Номенклатура, | ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар, | ВложенныйЗапрос.Номенклатура.Код КАК Код, | ВложенныйЗапрос.Номенклатура.Артикул КАК Артикул, | ВложенныйЗапрос.Количество, | ВложенныйЗапрос.ЕдиницаИзмерения, | ВложенныйЗапрос.Цена, | ВложенныйЗапрос.Сумма, | ВложенныйЗапрос.СуммаНДС, | ВложенныйЗапрос.НомерСтроки КАК НомерСтроки, | 1 КАК ID |ИЗ | (ВЫБРАТЬ | ЗаказПокупателя.Номенклатура КАК Номенклатура, | ЗаказПокупателя.Номенклатура.БазоваяЕдиницаИзмерения.Наименование КАК ЕдиницаИзмерения, | ЗаказПокупателя.Цена КАК Цена, | СУММА(ЗаказПокупателя.Количество) КАК Количество, | СУММА(ЗаказПокупателя.Сумма) КАК Сумма, | СУММА(ЗаказПокупателя.СуммаНДС) КАК СуммаНДС, | МИНИМУМ(ЗаказПокупателя.НомерСтроки) КАК НомерСтроки | ИЗ | Документ.СчетНаОплатуПокупателю.Товары КАК ЗаказПокупателя | | ГДЕ | ЗаказПокупателя.Ссылка = &ТекущийДокумент | | СГРУППИРОВАТЬ ПО | ЗаказПокупателя.Номенклатура, | ЗаказПокупателя.Номенклатура.БазоваяЕдиницаИзмерения.Наименование, | ЗаказПокупателя.Цена) КАК ВложенныйЗапрос | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | " + ЧастьЗапросаДляВыбораСодержанияУслуг + ", | " + ЧастьЗапросаДляВыбораСодержанияУслуг + ", | ЗаказПокупателя.Номенклатура.Код КАК Код, | ЗаказПокупателя.Номенклатура.Артикул КАК Артикул, | ЗаказПокупателя.Количество, | ЗаказПокупателя.Номенклатура.БазоваяЕдиницаИзмерения.Наименование, | ЗаказПокупателя.Цена, | ЗаказПокупателя.Сумма, | ЗаказПокупателя.СуммаНДС, | ЗаказПокупателя.НомерСтроки, | 2 |ИЗ | Документ.СчетНаОплатуПокупателю.Услуги КАК ЗаказПокупателя | |ГДЕ | ЗаказПокупателя.Ссылка = &ТекущийДокумент | |УПОРЯДОЧИТЬ ПО | ID, | НомерСтроки"; ЗапросТовары = Запрос.Выполнить().Выгрузить(); Макет = ПолучитьМакет("СчетЗаказ"); // Выводим шапку накладной СведенияОПолучателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата); Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ТипЗнч(СсылкаНаОбъект.СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СсылкаНаОбъект.СтруктурнаяЕдиница.БанкДляРасчетов), СсылкаНаОбъект.СтруктурнаяЕдиница.Банк, СсылкаНаОбъект.СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = СсылкаНаОбъект.ВернутьРасчетныйСчет(СсылкаНаОбъект.СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; КонецЕсли; Если ПустаяСтрока(СсылкаНаОбъект.СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СсылкаНаОбъект.СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СсылкаНаОбъект.СтруктурнаяЕдиница.НомерСчета + " в " + СсылкаНаОбъект.СтруктурнаяЕдиница.Банк + " " + СсылкаНаОбъект.СтруктурнаяЕдиница.Банк.Город; КонецЕсли; Иначе ТекстКорреспондента = СсылкаНаОбъект.СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабДокумент.Вывести(ОбластьМакета); КонецЕсли; ОбластьМакета = Макет.ПолучитьОбласть("Заголовок"); ОбластьМакета.Параметры.ТекстЗаголовка = ОбщегоНазначения.СформироватьЗаголовокДокумента(Шапка, "Счет на оплату"); ТабДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("Поставщик"); ОбластьМакета.Параметры.Заполнить(Шапка); СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата); ОбластьМакета.Параметры.ПредставлениеПоставщика = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны,"); ТабДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("Покупатель"); ОбластьМакета.Параметры.Заполнить(Шапка); СведенияОПокупателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Покупатель, Шапка.Дата); ОбластьМакета.Параметры.ПредставлениеПокупателя = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОПокупателе, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны,"); ТабДокумент.Вывести(ОбластьМакета); ДопКолонка = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить(); Если ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда ВыводитьКоды = Истина; Колонка = "Артикул"; ИначеЕсли ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Код Тогда ВыводитьКоды = Истина; Колонка = "Код"; Иначе ВыводитьКоды = Ложь; КонецЕсли; ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы|НомерСтроки"); ОбластьКодов = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов"); ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицы|Данные"); ОбластьСуммы = Макет.ПолучитьОбласть("ШапкаТаблицы|Сумма"); ТабДокумент.Вывести(ОбластьНомера); Если ВыводитьКоды Тогда ОбластьКодов.Параметры.ИмяКолонкиКодов = Колонка; ТабДокумент.Присоединить(ОбластьКодов); КонецЕсли; ТабДокумент.Присоединить(ОбластьДанных); ТабДокумент.Присоединить(ОбластьСуммы); ОбластьКолонкаТовар = Макет.Область("Товар"); Если Не ВыводитьКоды Тогда ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки + Макет.Область("КолонкаКодов").ШиринаКолонки; КонецЕсли; ОбластьНомера = Макет.ПолучитьОбласть("Строка|НомерСтроки"); ОбластьКодов = Макет.ПолучитьОбласть("Строка|КолонкаКодов"); ОбластьДанных = Макет.ПолучитьОбласть("Строка|Данные"); ОбластьСуммы = Макет.ПолучитьОбласть("Строка|Сумма"); Сумма = 0; СуммаНДС = 0; ВсегоСкидок = 0; ВсегоБезСкидок = 0; Для каждого ВыборкаСтрокТовары Из ЗапросТовары Цикл ОбластьНомера.Параметры.НомерСтроки = ЗапросТовары.Индекс(ВыборкаСтрокТовары) + 1; ТабДокумент.Вывести(ОбластьНомера); Если ВыводитьКоды Тогда Если Колонка = "Артикул" Тогда ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Артикул; Иначе ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Код; КонецЕсли; ТабДокумент.Присоединить(ОбластьКодов); КонецЕсли; ОбластьДанных.Параметры.Заполнить(ВыборкаСтрокТовары); ОбластьДанных.Параметры.Товар = СокрЛП(ВыборкаСтрокТовары.Товар); ТабДокумент.Присоединить(ОбластьДанных); ОбластьСуммы.Параметры.Заполнить(ВыборкаСтрокТовары); ТабДокумент.Присоединить(ОбластьСуммы); Сумма = Сумма + ВыборкаСтрокТовары.Сумма; СуммаНДС = СуммаНДС + ВыборкаСтрокТовары.СуммаНДС; КонецЦикла; // Вывести Итого ОбластьНомера = Макет.ПолучитьОбласть("Итого|НомерСтроки"); ОбластьКодов = Макет.ПолучитьОбласть("Итого|КолонкаКодов"); ОбластьДанных = Макет.ПолучитьОбласть("Итого|Данные"); ОбластьСуммы = Макет.ПолучитьОбласть("Итого|Сумма"); ТабДокумент.Вывести(ОбластьНомера); Если ВыводитьКоды Тогда ТабДокумент.Присоединить(ОбластьКодов); КонецЕсли; ТабДокумент.Присоединить(ОбластьДанных); ОбластьСуммы.Параметры.Всего = ОбщегоНазначения.ФорматСумм(Сумма); ТабДокумент.Присоединить(ОбластьСуммы); // Вывести ИтогоНДС ОбластьНомера = Макет.ПолучитьОбласть("ИтогоНДС|НомерСтроки"); ОбластьКодов = Макет.ПолучитьОбласть("ИтогоНДС|КолонкаКодов"); ОбластьДанных = Макет.ПолучитьОбласть("ИтогоНДС|Данные"); ОбластьСуммы = Макет.ПолучитьОбласть("ИтогоНДС|Сумма"); ТабДокумент.Вывести(ОбластьНомера); Если ВыводитьКоды Тогда ТабДокумент.Присоединить(ОбластьКодов); КонецЕсли; Если СуммаНДС <> 0 Тогда ОбластьДанных.Параметры.НДС = ?(Шапка.СуммаВключаетНДС, "В том числе НДС:", "Сумма НДС:"); ОбластьСуммы.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(СуммаНДС); Иначе ОбластьДанных.Параметры.НДС = "Без налога (НДС)"; ОбластьСуммы.Параметры.ВсегоНДС = "-"; КонецЕсли; ТабДокумент.Присоединить(ОбластьДанных); ТабДокумент.Присоединить(ОбластьСуммы); // Вывести ИтогоКОплате ОбластьНомера = Макет.ПолучитьОбласть("ИтогоКОплате|НомерСтроки"); ОбластьКодов = Макет.ПолучитьОбласть("ИтогоКОплате|КолонкаКодов"); ОбластьДанных = Макет.ПолучитьОбласть("ИтогоКОплате|Данные"); ОбластьСуммы = Макет.ПолучитьОбласть("ИтогоКОплате|Сумма"); ТабДокумент.Вывести(ОбластьНомера); Если ВыводитьКоды Тогда ТабДокумент.Присоединить(ОбластьКодов); КонецЕсли; ТабДокумент.Присоединить(ОбластьДанных); СуммаКОплате = Сумма + ?(Шапка.СуммаВключаетНДС, 0, СуммаНДС); ОбластьСуммы.Параметры.ИтогоКОплате = ОбщегоНазначения.ФорматСумм(СуммаКОплате); ТабДокумент.Присоединить(ОбластьСуммы); // Вывести Сумму прописью ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью"); СуммаКПрописи = Сумма + ?(Шапка.СуммаВключаетНДС, 0, СуммаНДС); ОбластьМакета.Параметры.ИтоговаяСтрока ="Всего наименований " + ЗапросТовары.Количество() + ", на сумму " + ОбщегоНазначения.ФорматСумм(СуммаКПрописи, Шапка.ВалютаДокумента); ОбластьМакета.Параметры.СуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(СуммаКПрописи, Шапка.ВалютаДокумента); ТабДокумент.Вывести(ОбластьМакета); // Вывести подписи Если Тип = "Счет" Тогда Если Шапка.Получатель.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо Тогда ОбластьМакета = Макет.ПолучитьОбласть("ПодвалСчета"); Руководители = ОбщегоНазначения.ОтветственныеЛица(Шапка.Руководители, Шапка.Дата, ПодразделениеОтветственныхЛиц); Руководитель = Руководители.РуководительПредставление; Бухгалтер = Руководители.ГлавныйБухгалтерПредставление; ОбластьМакета.Параметры.ФИОРуководителя = Руководитель; ОбластьМакета.Параметры.ФИОБухгалтера = Бухгалтер; Иначе ОбластьМакета = Макет.ПолучитьОбласть("ПодвалСчетаПредприниматель"); ФЛ = Шапка.Получатель.ИндивидуальныйПредприниматель; ДанныеФЛ = РегистрыСведений.ФИОФизЛиц.СрезПоследних(СсылкаНаОбъект.Дата, Новый Структура("ФизЛицо",ФЛ)); Если ДанныеФЛ.Количество() > 0 Тогда Предприниматель = СокрЛП(ДанныеФЛ[0].Фамилия) + " " + Лев(СокрЛП(ДанныеФЛ[0].Имя),1) + ". " + Лев(СокрЛП(ДанныеФЛ[0].Отчество),1) + "."; Иначе Предприниматель = ""; КонецЕсли; ОбластьМакета.Параметры.ФИОПредпринимателя = Предприниматель; КонецЕсли; Иначе ОбластьМакета = Макет.ПолучитьОбласть("ПодвалЗаказа"); КонецЕсли; ОбластьМакета.Параметры.Заполнить(Шапка); ТабДокумент.Вывести(ОбластьМакета); Возврат ТабДокумент; КонецФункции // Печать() |
|||
1
rbcvg
25.12.12
✎
17:12
|
весь текст ошибки выкладывай
|
|||
2
John83
25.12.12
✎
17:12
|
Функция Печать(Тип)Экспорт
отсюда тип убери |
|||
3
GLazNik
25.12.12
✎
17:12
|
Итить.... ты б уж тогда сразу конфу выкладывал
|
|||
4
John83
25.12.12
✎
17:13
|
+2 и сразу напиши Тип = "счет" или чего тебе там надо
|
|||
5
Reset
25.12.12
✎
17:14
|
Это нужно быром метнуться по 1000 строчек и найти ошибку?
|
|||
6
Reset
25.12.12
✎
17:14
|
или (2) телепат
|
|||
7
Reset
25.12.12
✎
17:15
|
и пол с ником диссонирует
|
|||
8
samozvanec
25.12.12
✎
17:26
|
(0) 1. Фотку
2. Текст ошибки |
|||
9
singlych
25.12.12
✎
17:59
|
(0) Делай, как говорит (2) и (4).
|
|||
10
buhochka
26.12.12
✎
12:16
|
Сделала, как написали (2) и (4). Но опять выдает ошибку:
Не удалось сформировать внешнюю печатную форму! Ошибка при вызове метода контекста (ПолучитьМакет): Недопустимое значение параметра (параметр номер '1') |
|||
11
ICWiner
26.12.12
✎
12:37
|
А у твоей ВПФ есть макет СчетЗаказ?
|
|||
12
sapphire
26.12.12
✎
12:40
|
(11) Нету стопудово или функцию не там лежит
|
|||
13
buhochka
26.12.12
✎
12:49
|
Я скопировала макет СчетНаОплатуПокупателю, назвала его НашСчет. Тогда надо писать не Макет = ПолучитьМакет("СчетЗаказ");а Макет = ПолучитьМакет("НашСчет");?
|
|||
14
ICWiner
26.12.12
✎
12:49
|
+
|
|||
15
buhochka
26.12.12
✎
12:52
|
теперь выдает:
Метод объекта не обнаружен (ВернутьРасчетныйСчет) |
|||
16
John83
26.12.12
✎
13:10
|
НомерСчета = СсылкаНаОбъект.ПолучитьОбъект().ВернутьРасчетныйСчет(СсылкаНаОбъект.СтруктурнаяЕдиница);
но это только в том случае, если функция находится в модуле и экспортная, иначе копируешь ту функцию в свою печ. форму PS почему до сих пор нет фото? |
|||
17
buhochka
26.12.12
✎
13:17
|
То же самое...
|
|||
18
Starhan
26.12.12
✎
13:19
|
бух очка нид фото
|
|||
19
buhochka
26.12.12
✎
14:53
|
Помогите!!!
Что за ошибка такая.... Метод объекта не обнаружен (ВернутьРасчетныйСчет) |
|||
20
John83
26.12.12
✎
15:30
|
(19) это значит, что в твоей печ. форме нет функции ВернутьРасчетныйСчет, внимательно читаем (16)
|
|||
21
buhochka
26.12.12
✎
15:34
|
Я уже вставила в модуль
Функция ВернутьРасчетныйСчет(СчетКонтрагента) БанкДляРасчетов = СчетКонтрагента.БанкДляРасчетов; Результат = ?(БанкДляРасчетов.Пустая(), СчетКонтрагента.НомерСчета, СчетКонтрагента.Банк.КоррСчет); Возврат Результат; КонецФункции // ВернутьРасчетныйСчет() |
|||
22
buhochka
26.12.12
✎
15:34
|
а ошибка остается
|
|||
23
del123
26.12.12
✎
15:38
|
так измени строку
НомерСчета = СсылкаНаОбъект.ПолучитьОбъект().ВернутьРасчетныйСчет(СсылкаНаОбъект.СтруктурнаяЕдиница); на НомерСчета = ВернутьРасчетныйСчет(СсылкаНаОбъект.СтруктурнаяЕдиница); |
|||
24
buhochka
26.12.12
✎
15:53
|
УРА!!!!
Спасибо вам огромное!!!!! |
|||
25
buhochka
26.12.12
✎
16:39
|
Может еще подскажете, можно в номер счета поставить букву? Например, Счет на оплату № Н-1 от 26.12.12
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |