|
Внешняя печатная форма "Счет на оплату": Метод объекта не обнаружен (Печать) | ☑ | ||
---|---|---|---|---|
0
programmist1c8_
2 18.11.13
✎
23:21
|
Добрый вечер. Делаю счет на оплату для УТ 11. Добавил. Зарегистрировал. Пытаюсь напечатать - Метод объекта не обнаружен (Печать).
Вот код функции: Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СчетНаОплату") тогда УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,"СчетНаОплату", "СчетНаОплату", СформироватьПечатнуюФормуСчетаНаОплату(МассивОбъектов, ОбъектыПечати)); КонецЕсли; КонецПроцедуры // Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода)() Затем Функция СформироватьПечатнуюФорму(Тип, МассивОбъектов, ОбъектыПечати) Экспорт Запрос = Новый Запрос(); Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект); Запрос.Текст = "ВЫБРАТЬ |ЗаказКлиента.Ссылка КАК Ссылка, |ЗаказКлиента.Номер КАК Номер, |ЗаказКлиента.Дата КАК Дата, |ЗаказКлиента.Организация КАК Организация, |ЗаказКлиента.Организация.ТекущийРуководитель.Наименование КАК Руководитель, |ЗаказКлиента.Организация.ТекущийГлавныйБухгалтер.Наименование КАК ГлавныйБухгалтер, |ВЫБОР |КОГДА |ЗаказКлиента.НалогооблажениеНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогооблаженияНДС.ПродажаОблагаетсяНДС) |ТОГДА |ИСТИНА |ИНАЧЕ |ЛОЖЬ |КОНЕЦ КАК УчитыватьНДС, |ЗаказКлиента.Организация.Префикс КАК Префикс, |ЗаказКлиента.Контрагент КАК Контрагент, |ЗаказКлиента.БанковскийСчет КАК БанковскийСчет, |ЗаказКлиента.БанковскийСчет.ТекстКорреспондента КАК БанковскийСчетТекстКорреспондента, |ЗаказКлиента.ЦенаВключаетНДС КАК ЦенаВключаетНДС, |ЗаказКлиента.Валюта КАК Валюта, |ЗаказКлиента.Менеджер.ФизическоеЛицо.Наименование КАК Менеджер, |ЗаказКлиента.ДополнительнаяИнформация КАК ДополнительнаяИнформация, |ЗаказКлиента.Товары.( | НомерСтроки КАК Номенклатура, | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, | Номенклатура.НаименованиеПолное КАК НаименованиеПолное, |ВЫБОР |КОГДА ЗаказКлиента.Товары.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка) |ТОГДА ПРЕДСТАВЛЕНИЕ(ЗаказКлиента.Товары.Номенклатура.ЕдиницаИзмерения) |ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ЗаказКлиента.Товары.Упаковка.ЕдиницаИзмерения) |КОНЕЦ КАК ЕдиницаИзмерения, |КоличествоУпаковок КАК Количество, |Цена КАК Цена, |СуммаРучнойСкидки + СуммаАвтоматическойСкидки КАК СуммаСкидки, |Сумма + СуммаРучнойСкидки + СуммаАвтоматическойСкидки КАК СуммаБезСкидки, |Сумма КАК Сумма, |СтавкаНДС КАК СтавкаНДС, |СуммаНДС КАК СуммаНДС, |ДатаОтгрузки КАК ДатаОтгрузки, |Характеристика КАК Характеристика, |Отменено КАК Отменено, |) |ИЗ |Документ.ЗаказКлиента КАК ЗаказКлиента, |ГДЕ |ЗаказКлиента.Ссылка = &ТекущийДокумент"; Шапка = Запрос.Выполнить().Выбрать(); Шапка.Следующий(); ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказКлиента_СчетНаОплату"; Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ |ВложенныйЗапрос.Номенклатура КАК Номенклатура, |ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар, |ВложенныйЗапрос.Количество, |ВложенныйЗапрос.ЕдиницаИзмерения, |ВложенныйЗапрос.Цена, |ВложенныйЗапрос.СтавкаНДС, |ВложенныйЗапрос.СуммаНДС, |ВложенныйЗапрос.Сумма, |ВложенныйЗапрос.НомерСтроки КАК НомерСтроки, |1 КАК ID |ИЗ |(ВЫБРАТЬ |ЗаказКлиента.Номенклатура КАК Номенклатура, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзиерения.Наименование КАК ЕдиницаИзмерения, |ЗаказКлиента.СтавкаНДС КАК СтавкаНДС, |ЗаказКлиента.Цена КАК Цена, |СУММА(ЗаказКлиента.Количество) КАК Количество, |СУММА(ЗаказКлиента.Сумма) КАК Сумма, |СУММА(ЗаказКлиента.СуммаНДС) КАК СуммаНДС, |МИНИМУМ(ЗаказКлиента.НомерСртроки) КАК НомерСтроки, | |ИЗ |Документ.ЗаказКлиента.Товары КАК ЗаказКлиента, | |ГДЕ |ЗаказКлиента.Ссылка = &ТекущийДокумент | |СГРУППИРОВАТЬ ПО |ЗазакКлиента.Номенклатура, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзиерения.Наименование |ЗаказКлиента.Цена) КАК ВложенныйЗапрос | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ |ЗазакКлиента.Номенклатура, |ЗаказКлиента.Количество, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзмерения.Наименование, |ЗаказКлиента.Цена, |ЗаказКлиента.СтавкаНДС, |ЗаказКлиента.Сумма, |ЗаказКлиента.СуммаНДС, |ЗаказКлиента.НомерСтроки, |2 |ИЗ |Документ.ЗаказКлиента.Услуги КАК ЗаказКлиента | |ГДЕ |ЗаказКлиента.Ссылка = &ТекущийДокумент | |УПОРЯДОЧИТЬ ПО |ID, |НомерСтроки"; ЗапросТовары = Запрос.Выполнить().Выгрузить(); Макет = ПолучитьМакет("Счет"); // Выводим шапку счета СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата); Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ТипЗнчения(СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СтруктурнаяЕдиницаБанкДляРасчетов), СтруктурнаяЕдиница.Банк, СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = ВернутьРасчетныйСчет(СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; Если ПустаяСтрока(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; КонецЕсли; Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; // Вывести область заголовка ОбластьМакета = Макет.ПолучитьОбласть("Заголовок"); ОбластьМакета.Параметры.ТекстЗаголовка = "Счет на оплату № " + НомерДокумента + " от " + Формат(Шапка.ДатаДокумента, "ДФ=""dd MMMM yyyy"""); ТабличныйДокумент.Вывести(ОбластьМакета); // Вывести область поставщика ОбластьМакета = Макет.ПолучитьОбласть("Поставщик"); ОбластьМакета.Параметры.Заполнить(Шапка); СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата); ОбластьМакета.Параметры.ПредставлениеПоставщика = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны,"); ТабличныйДокумент.Вывести(ОбластьМакета); // Вывести область покупателя ОбластьМакета = Макет.ПолучитьОбласть("Покупатель"); ОбластьМакета.Параметры.Заполнить(Шапка); СведенияОПокупателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Покупатель, Шапка.Дата); ОбластьМакета.Параметры.ПредставлениеПокупателя = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОПокупателе, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны,"); ТабличныйДокумент.Вывести(ОбластьМакета); // Вывести табличную часть (товары и услуги) ОбластьМакета = Макет.ПолучитьОбласть("ШапкаТаблицыСНДС"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.Номер = Номер; ОбластьМакета.Параметры.Товар = "Товары (работы, услуги)"; ОбластьМакета.Параметры.Количество = Количество; ОбластьМакета.Параметры.Цена = Цена; ОбластьМакета.Параметры.СтавкаНДС = СтавкаНДС; ОбластьМакета.Параметры.СуммаНДС = СуммаНДС; ОбластьМакета.Параметры.Сумма = Сумма; ТабличныйДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("СтрокаТаблицыСНДС"); НомерСтроки = 0; Для Каждого ВыборкаСтрокТовары Из ЗапросТовары Цикл НомерСтроки = НомерСтроки+1; ОбластьМакета.Параметры.Заполнить(ВыборкаСтрокТовары); ОбластьМакета.Параметры.НомерСтроки = Номер; ОбластьМакета.Параметры.Товары = СокрЛП(СтрокаТабличнойЧасти.Товар); ОбластьМакета.Параметры.Количество = СтрокаКоличество; ОбластьМакета.Параметры.ЕдиницаИзмерения = СтрокаЕдиницаИзмерения; ОбластьМакета.Параметры.Цена = СтрокаЦена; ОбластьМакета.Параметры.СтавкаНДС = СтрокаСтавкаНДС; ОбластьМакета.Параметры.СуммаНДС = СтрокаСуммаНДС; ОбластьМакета.Параметры.Сумма = СтрокаСумма; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЦикла; // Выводим секцию с итоговой суммой ОбластьМакета = Макет.ПолучитьОбласть("Итого"); ОбластьМакета.Параметры.Всего = ОбщегоНазначения.ФорматСумм(Итого); ТабличныйДокумент.Вывести(ОбластьМакета); // Выводим секцию с итоговой суммой с НДС Если СуммаСНДС <> 0 Тогда ОбластьМакета = Макет.ПолучитьОбласть("ИтогоСНДС"); ОбластьМакета.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(СуммаНДС); СуммаСНДС = Сумма + СуммаНДС; ОбластьМакета.Параметры.НДС = ?(Выборка.СуммаВключаетНДС, "Итого с НДС", " Сумма НДС"); ОбластьМакета.Параметры.ВсегоСНДС = ОбщегоНазначения.ФорматСумм(СуммаСНДС); ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; // Выводим сумму прописью ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью"); ОбластьМакета.Параметры.ИтоговаяСтрока ="Всего наименований " + ЗапросТовары.Количество() + ", на сумму " + ОбщегоНазначения.ФорматСумм(СуммаКПрописи) + " руб."; ОбластьМакета.Параметры.СуммаПрописью = ЧислоПрописью(СуммаКПрописи, "L=ru_RU", "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2"); // Заполнить реквизиты подвала ОбластьМакета = Макет.ПолучитьОбласть("ПодвалСчета"); ОбластьМакета.Параметры.ФИОРуководителя = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.Руководитель); ОбластьМакета.Параметры.ФИОГлавногоБухгалтера = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.ГлавныйБухгалтер); ОбластьМакета.Параметры.ФИОменеджера = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.Менеджер); ТабличныйДокумент.Вывести(ОбластьМакета); Возврат ТабличныйДокумент; КонецФункции // СформироватьПечатнуюФорму() Пример брал в нете пошаговый часть дописывал сам Не пойму в чем ошибка может кто подскажет делаю первый раз |
|||
1
Мимохожий Однако
18.11.13
✎
23:22
|
Попробуй ФУНКЦИЯ Печать()
|
|||
2
programmist1c8_
2 18.11.13
✎
23:38
|
Если через Функция Печать()
Ругается, что {ВнешняяОбработка.СчетНаОплатуПокупателю.МодульОбъекта(70,9)}: Процедура или функция с указанным именем уже определена (Печать) Функция <<?>>Печать(Тип, МассивОбъектов, ОбъектыПечати) (Проверка: Сервер) |
|||
3
Мимохожий Однако
18.11.13
✎
23:40
|
Процедуру убери.
|
|||
4
programmist1c8_
2 18.11.13
✎
23:41
|
Совсем убрать? А оставить одну функцию и обозвать ее Печать
|
|||
5
Мимохожий Однако
18.11.13
✎
23:42
|
угу
|
|||
6
programmist1c8_
2 18.11.13
✎
23:43
|
Только еще ругается на последнюю строку
КонецФункции// СформироватьПечатнуюФорму() Ожидается ключевое слово 'КонецЕсли' ---- Сейчас попробую |
|||
7
Мимохожий Однако
18.11.13
✎
23:43
|
функция печать должна возвращать Табличный документ
|
|||
8
Мимохожий Однако
18.11.13
✎
23:44
|
В ИТС написано
|
|||
9
programmist1c8_
2 18.11.13
✎
23:51
|
В конце функции написано Возврат ТабличныйДокумент;
убрал процедуру, добавил заново всё равно ругается Ожидается ключевое слово 'КонецЕсли' |
|||
10
programmist1c8_
2 18.11.13
✎
23:53
|
но уже ругается на общий модуль
{ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль(2147)}: Ошибка при вызове метода контекста (Создать) ВнешнийОбъект = Менеджер.Создать(ПараметрыОбработки.ИмяОбъекта); по причине: {ВнешняяОбработка.СчетНаОплатуПокупателю.МодульОбъекта(306,1)}: Ожидается ключевое слово 'КонецЕсли' ('EndIf') <<?>>КонецФункции // СформироватьПечатнуюФорму() |
|||
11
programmist1c8_
2 18.11.13
✎
23:57
|
Может где в самой функции не хватат этого 'КонецЕсли'
Уже весь вечер разбираюсь |
|||
12
zmaximka
19.11.13
✎
00:16
|
(0) ник прикольный
|
|||
13
programmist1c8_
2 19.11.13
✎
00:46
|
)Нет бы подсказать, как исправить ошибку )))
|
|||
14
programmist1c8_
2 19.11.13
✎
00:49
|
Только без обид)
|
|||
15
programmist1c8_
2 19.11.13
✎
00:49
|
Помогите пожалуйста разобрацца в вопросе
|
|||
16
Godofsin
19.11.13
✎
05:47
|
ну так русским языком написано: "Ожидается ключевое слово 'КонецЕсли' ('EndIf') "
|
|||
17
Godofsin
19.11.13
✎
05:48
|
Выложи текст функции "Печать" из вн. обработки.
|
|||
18
Wobland
19.11.13
✎
06:15
|
(15) если платформа хочет КонецЕсли, ей его надо обязательно дать
|
|||
19
anaed
19.11.13
✎
06:39
|
(15) сервис-параметры-модули-группировка-флажок на условие сворачивать. И смотри какое ты условие не закрыл.
|
|||
20
programmist1c8_
2 19.11.13
✎
11:12
|
Сама Функция такая:
Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Экспорт Запрос = Новый Запрос(); Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект); Запрос.Текст = "ВЫБРАТЬ |ЗаказКлиента.Ссылка КАК Ссылка, |ЗаказКлиента.Номер КАК Номер, |ЗаказКлиента.Дата КАК Дата, |ЗаказКлиента.Организация КАК Организация, |ЗаказКлиента.Организация.ТекущийРуководитель.Наименование КАК Руководитель, |ЗаказКлиента.Организация.ТекущийГлавныйБухгалтер.Наименование КАК ГлавныйБухгалтер, |ВЫБОР |КОГДА |ЗаказКлиента.НалогооблажениеНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогооблаженияНДС.ПродажаОблагаетсяНДС) |ТОГДА |ИСТИНА |ИНАЧЕ |ЛОЖЬ |КОНЕЦ КАК УчитыватьНДС, |ЗаказКлиента.Организация.Префикс КАК Префикс, |ЗаказКлиента.Контрагент КАК Контрагент, |ЗаказКлиента.БанковскийСчет КАК БанковскийСчет, |ЗаказКлиента.БанковскийСчет.ТекстКорреспондента КАК БанковскийСчетТекстКорреспондента, |ЗаказКлиента.ЦенаВключаетНДС КАК ЦенаВключаетНДС, |ЗаказКлиента.Валюта КАК Валюта, |ЗаказКлиента.Менеджер.ФизическоеЛицо.Наименование КАК Менеджер, |ЗаказКлиента.ДополнительнаяИнформация КАК ДополнительнаяИнформация, |ЗаказКлиента.Товары.( | НомерСтроки КАК Номенклатура, | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, | Номенклатура.НаименованиеПолное КАК НаименованиеПолное, |ВЫБОР |КОГДА ЗаказКлиента.Товары.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка) |ТОГДА ПРЕДСТАВЛЕНИЕ(ЗаказКлиента.Товары.Номенклатура.ЕдиницаИзмерения) |ИНАЧЕ ПРЕДСТАВЛЕНИЕ(ЗаказКлиента.Товары.Упаковка.ЕдиницаИзмерения) |КОНЕЦ КАК ЕдиницаИзмерения, |КоличествоУпаковок КАК Количество, |Цена КАК Цена, |СуммаРучнойСкидки + СуммаАвтоматическойСкидки КАК СуммаСкидки, |Сумма + СуммаРучнойСкидки + СуммаАвтоматическойСкидки КАК СуммаБезСкидки, |Сумма КАК Сумма, |СтавкаНДС КАК СтавкаНДС, |СуммаНДС КАК СуммаНДС, |ДатаОтгрузки КАК ДатаОтгрузки, |Характеристика КАК Характеристика, |Отменено КАК Отменено, |) |ИЗ |Документ.ЗаказКлиента КАК ЗаказКлиента, |ГДЕ |ЗаказКлиента.Ссылка = &ТекущийДокумент"; Шапка = Запрос.Выполнить().Выбрать(); Шапка.Следующий(); ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказКлиента_СчетНаОплату"; Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ |ВложенныйЗапрос.Номенклатура КАК Номенклатура, |ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар, |ВложенныйЗапрос.Количество, |ВложенныйЗапрос.ЕдиницаИзмерения, |ВложенныйЗапрос.Цена, |ВложенныйЗапрос.СтавкаНДС, |ВложенныйЗапрос.СуммаНДС, |ВложенныйЗапрос.Сумма, |ВложенныйЗапрос.НомерСтроки КАК НомерСтроки, |1 КАК ID |ИЗ |(ВЫБРАТЬ |ЗаказКлиента.Номенклатура КАК Номенклатура, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзиерения.Наименование КАК ЕдиницаИзмерения, |ЗаказКлиента.СтавкаНДС КАК СтавкаНДС, |ЗаказКлиента.Цена КАК Цена, |СУММА(ЗаказКлиента.Количество) КАК Количество, |СУММА(ЗаказКлиента.Сумма) КАК Сумма, |СУММА(ЗаказКлиента.СуммаНДС) КАК СуммаНДС, |МИНИМУМ(ЗаказКлиента.НомерСртроки) КАК НомерСтроки, | |ИЗ |Документ.ЗаказКлиента.Товары КАК ЗаказКлиента, | |ГДЕ |ЗаказКлиента.Ссылка = &ТекущийДокумент | |СГРУППИРОВАТЬ ПО |ЗазакКлиента.Номенклатура, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзиерения.Наименование |ЗаказКлиента.Цена) КАК ВложенныйЗапрос | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ |ЗазакКлиента.Номенклатура, |ЗаказКлиента.Количество, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзмерения.Наименование, |ЗаказКлиента.Цена, |ЗаказКлиента.СтавкаНДС, |ЗаказКлиента.Сумма, |ЗаказКлиента.СуммаНДС, |ЗаказКлиента.НомерСтроки, |2 |ИЗ |Документ.ЗаказКлиента.Услуги КАК ЗаказКлиента | |ГДЕ |ЗаказКлиента.Ссылка = &ТекущийДокумент | |УПОРЯДОЧИТЬ ПО |ID, |НомерСтроки"; ЗапросТовары = Запрос.Выполнить().Выгрузить(); Макет = ПолучитьМакет("Счет"); // Выводим шапку счета СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата); Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ТипЗнчения(СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СтруктурнаяЕдиницаБанкДляРасчетов), СтруктурнаяЕдиница.Банк, СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = ВернутьРасчетныйСчет(СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; Если ПустаяСтрока(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; КонецЕсли; Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; // Вывести область заголовка ОбластьМакета = Макет.ПолучитьОбласть("Заголовок"); ОбластьМакета.Параметры.ТекстЗаголовка = "Счет на оплату № " + НомерДокумента + " от " + Формат(Шапка.ДатаДокумента, "ДФ=""dd MMMM yyyy"""); ТабличныйДокумент.Вывести(ОбластьМакета); // Вывести область поставщика ОбластьМакета = Макет.ПолучитьОбласть("Поставщик"); ОбластьМакета.Параметры.Заполнить(Шапка); СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата); ОбластьМакета.Параметры.ПредставлениеПоставщика = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны,"); ТабличныйДокумент.Вывести(ОбластьМакета); // Вывести область покупателя ОбластьМакета = Макет.ПолучитьОбласть("Покупатель"); ОбластьМакета.Параметры.Заполнить(Шапка); СведенияОПокупателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Покупатель, Шапка.Дата); ОбластьМакета.Параметры.ПредставлениеПокупателя = ФормированиеПечатныхФорм.ОписаниеОрганизации( СведенияОПокупателе, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны,"); ТабличныйДокумент.Вывести(ОбластьМакета); // Вывести табличную часть (товары и услуги) ОбластьМакета = Макет.ПолучитьОбласть("ШапкаТаблицыСНДС"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.Номер = Номер; ОбластьМакета.Параметры.Товар = "Товары (работы, услуги)"; ОбластьМакета.Параметры.Количество = Количество; ОбластьМакета.Параметры.Цена = Цена; ОбластьМакета.Параметры.СтавкаНДС = СтавкаНДС; ОбластьМакета.Параметры.СуммаНДС = СуммаНДС; ОбластьМакета.Параметры.Сумма = Сумма; ТабличныйДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("СтрокаТаблицыСНДС"); НомерСтроки = 0; Для Каждого ВыборкаСтрокТовары Из ЗапросТовары Цикл НомерСтроки = НомерСтроки+1; ОбластьМакета.Параметры.Заполнить(ВыборкаСтрокТовары); ОбластьМакета.Параметры.НомерСтроки = Номер; ОбластьМакета.Параметры.Товары = СокрЛП(СтрокаТабличнойЧасти.Товар); ОбластьМакета.Параметры.Количество = СтрокаКоличество; ОбластьМакета.Параметры.ЕдиницаИзмерения = СтрокаЕдиницаИзмерения; ОбластьМакета.Параметры.Цена = СтрокаЦена; ОбластьМакета.Параметры.СтавкаНДС = СтрокаСтавкаНДС; ОбластьМакета.Параметры.СуммаНДС = СтрокаСуммаНДС; ОбластьМакета.Параметры.Сумма = СтрокаСумма; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЦикла; // Выводим секцию с итоговой суммой ОбластьМакета = Макет.ПолучитьОбласть("Итого"); ОбластьМакета.Параметры.Всего = ОбщегоНазначения.ФорматСумм(Итого); ТабличныйДокумент.Вывести(ОбластьМакета); // Выводим секцию с итоговой суммой с НДС Если СуммаСНДС <> 0 Тогда ОбластьМакета = Макет.ПолучитьОбласть("ИтогоСНДС"); ОбластьМакета.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(СуммаНДС); СуммаСНДС = Сумма + СуммаНДС; ОбластьМакета.Параметры.НДС = ?(Выборка.СуммаВключаетНДС, "Итого с НДС", " Сумма НДС"); ОбластьМакета.Параметры.ВсегоСНДС = ОбщегоНазначения.ФорматСумм(СуммаСНДС); ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; // Выводим сумму прописью ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью"); ОбластьМакета.Параметры.ИтоговаяСтрока ="Всего наименований " + ЗапросТовары.Количество() + ", на сумму " + ОбщегоНазначения.ФорматСумм(СуммаКПрописи) + " руб."; ОбластьМакета.Параметры.СуммаПрописью = ЧислоПрописью(СуммаКПрописи, "L=ru_RU", "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2"); // Заполнить реквизиты подвала ОбластьМакета = Макет.ПолучитьОбласть("ПодвалСчета"); ОбластьМакета.Параметры.ФИОРуководителя = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.Руководитель); ОбластьМакета.Параметры.ФИОГлавногоБухгалтера = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.ГлавныйБухгалтер); ОбластьМакета.Параметры.ФИОменеджера = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.Менеджер); ТабличныйДокумент.Вывести(ОбластьМакета); Возврат ТабличныйДокумент; КонецФункции // СформироватьПечатнуюФорму() |
|||
21
programmist1c8_
2 19.11.13
✎
11:13
|
Сейчас гляну, где ей не хватат в каком условии
|
|||
22
anaed
19.11.13
✎
12:23
|
не закрытое условие:
Если Тип = "Счет" Тогда |
|||
23
programmist1c8_
2 19.11.13
✎
12:31
|
anaed, написать
Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; КонецЕсли; Так попробовать? |
|||
24
programmist1c8_
2 19.11.13
✎
12:34
|
Ставлю КонецЕсли; Материцца )
|
|||
25
programmist1c8_
2 19.11.13
✎
12:36
|
Попробую пересмотреть весь код от А до Я заново или переписать вовсе.
|
|||
26
anaed
19.11.13
✎
12:42
|
(25) очень разумное решение. Ошибка в выводе шапки счета, где воткнуть конецесли тебе решать, но вроде бы перед // Вывести область заголовка
|
|||
27
Godofsin
19.11.13
✎
12:50
|
ойбля....
Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ТипЗнчения(СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СтруктурнаяЕдиницаБанкДляРасчетов), СтруктурнаяЕдиница.Банк, СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = ВернутьРасчетныйСчет(СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; Если ПустаяСтрока(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; |
|||
28
programmist1c8_
2 19.11.13
✎
12:50
|
....Если ПустаяСтрока(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда
ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; КонецЕсли; Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; // Вывести область заголовка Тут тоже есть ) Ладно, сейчас буду перелопачивать всю функцию по всем "потрахам". Видимо, что-то не хватает, либо какой-то параметр не так как надо указан. Я по кускам собирал, смотрел в нете, кто и как делал. Учусь вот. Слушай, а нет ни где типа методички что-нить? По ВПФ-кам под УП. Общее хотя бы. Я где не находил, всё одна "поверхность". |
|||
29
Godofsin
19.11.13
✎
12:51
|
+(27) в конце еще один коецесли забыл
|
|||
30
Godofsin
19.11.13
✎
12:53
|
ПустаяСтрока заменить на ЗначениеЗаполнено
|
|||
31
Aprobator
19.11.13
✎
12:57
|
(0) что за ужас? Внешняя обработка должна содержать внешнюю экспортную Функция печать, которая возвращает сформированный табличный документ.
|
|||
32
Aprobator
19.11.13
✎
12:57
|
.... внешнюю экспортную функция.... )))))) Просто экспортную функцию в модуле объекта.
|
|||
33
Aprobator
19.11.13
✎
12:59
|
а млин - это специфика УФ что ли какая?
|
|||
34
programmist1c8_
2 19.11.13
✎
13:01
|
Godofsin, написал. Вот так
// Выводим шапку счета СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата); Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ТипЗнчения(СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СтруктурнаяЕдиницаБанкДляРасчетов), СтруктурнаяЕдиница.Банк, СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = ВернутьРасчетныйСчет(СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; |
|||
35
programmist1c8_
2 19.11.13
✎
13:02
|
Всё, закипел, башня едет
|
|||
36
Aprobator
19.11.13
✎
13:03
|
(35) башня с водным радиатором?
|
|||
37
programmist1c8_
2 19.11.13
✎
13:04
|
Ага )
|
|||
38
programmist1c8_
2 19.11.13
✎
13:04
|
Не пойму, опять материццо:
{ВнешняяОбработка.СчетНаОплатуПокупателю.МодульОбъекта(313,1)}: Ожидается ключевое слово 'КонецЕсли' ('EndIf') <<?>>КонецФункции // СформироватьПечатнуюФорму() (Проверка: Сервер) |
|||
39
Godofsin
19.11.13
✎
13:04
|
(34) я ж написал, что в конце одно КонецЕсли; забыл
|
|||
40
programmist1c8_
2 19.11.13
✎
13:04
|
Куды его ишшо втыкать
|
|||
41
Godofsin
19.11.13
✎
13:05
|
(38) Ты сам глазами не видишь что ли? у тебя 4 начала условия "Если", а окончания условия "КонецЕсли" 3.
|
|||
42
Wobland
19.11.13
✎
13:05
|
может, уже лучше выкинуть одно Если?
|
|||
43
programmist1c8_
2 19.11.13
✎
13:05
|
ТабличныйДокумент.Вывести(ОбластьМакета);
КонецЕсли; тут добавить? или в самом конце функции |
|||
44
Godofsin
19.11.13
✎
13:05
|
СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата);
Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ТипЗнчения(СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СтруктурнаяЕдиницаБанкДляРасчетов), СтруктурнаяЕдиница.Банк, СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = ВернутьРасчетныйСчет(СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; КонецЕсли; |
|||
45
programmist1c8_
2 19.11.13
✎
13:08
|
Godofsin, написал так, куча ошибок теперь получилась
Извини, если что не так, всё равно не получаиццо |
|||
46
Aprobator
19.11.13
✎
13:09
|
(44) ...ИначеЕсли.... )
(45) он чуть чуть ошибся. Не надо все бездумно слизывать. |
|||
47
programmist1c8_
2 19.11.13
✎
13:09
|
Если оставить ТабличныйДокумент.Вывести(ОбластьМакета);
КонецЕсли; то ругается на самое окончание функции |
|||
48
programmist1c8_
2 19.11.13
✎
13:10
|
Aprobator, понял, пробую
|
|||
49
programmist1c8_
2 19.11.13
✎
13:12
|
Написать что то типа так
Иначе Если ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента Тогда ..... |
|||
50
Aprobator
19.11.13
✎
13:13
|
(49) надо понять функционал модуля и правильно расставить условия.
|
|||
51
programmist1c8_
2 19.11.13
✎
13:14
|
Ясно
|
|||
52
Aprobator
19.11.13
✎
13:55
|
кстати по условиям то в (44) - код рабочий
|
|||
53
programmist1c8_
2 19.11.13
✎
14:02
|
?
|
|||
54
programmist1c8_
2 19.11.13
✎
14:03
|
Перепробовал варианты, всё равно ругается, не хватает
{ВнешняяОбработка.СчетНаОплатуПокупателю.МодульОбъекта(314,1)}: Ожидается ключевое слово 'КонецЕсли' ('EndIf') <<?>>КонецФункции // СформироватьПечатнуюФорму() (Проверка: Сервер) |
|||
55
programmist1c8_
2 19.11.13
✎
14:03
|
//кстати по условиям то в (44) - код рабочий
А по поподробнее можно? Если не затруднит |
|||
56
Wobland
19.11.13
✎
14:06
|
(54) ты не все варианты попробовал. попробуй ещё один: добавить слово КонецЕсли
|
|||
57
programmist1c8_
2 19.11.13
✎
14:08
|
Wobland, в каком месте?
|
|||
58
programmist1c8_
2 19.11.13
✎
14:08
|
СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата);
Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ТипЗнчения(СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СтруктурнаяЕдиницаБанкДляРасчетов), СтруктурнаяЕдиница.Банк, СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = ВернутьРасчетныйСчет(СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; |
|||
59
Wobland
19.11.13
✎
14:10
|
(57) мне лениво в логике обработки разбираться
|
|||
60
Wobland
19.11.13
✎
14:12
|
я сейчас новость скажу. каждый Если должен иметь свой КонецЕсли. из этого следует любопытное наблюдение: число Еслев в синтаксически верном коде всегда равно числу КонцовЕсли
|
|||
61
programmist1c8_
2 19.11.13
✎
14:15
|
О! Значит, получается такая штукенциЁ. Если.....что-то....КонецЕсли. Если "Если.." 5 то и "КонцовЕсли..." 5
|
|||
62
programmist1c8_
2 19.11.13
✎
14:16
|
Осталось только направить в правильное русло код
|
|||
63
Кай066
19.11.13
✎
14:18
|
СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата);
Если ( раз Если) Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ( два Если) ТипЗнчения(СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СтруктурнаяЕдиницаБанкДляРасчетов), СтруктурнаяЕдиница.Банк, СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = ВернутьРасчетныйСчет(СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; Если (три Если ) ПустаяСтрока(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ( четыре Если) ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; КонецЕсли; (раз Конец) Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; (два Конец) ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; (три Конец) // Вывести область заголовка одного Конце не хватает |
|||
64
Wobland
19.11.13
✎
14:19
|
(61) а я думал, что пошутил..
|
|||
65
programmist1c8_
2 19.11.13
✎
14:21
|
Вот "втыкаю" КонецЕсли; да попасть не могу что-то никак не попаду. По-ходу придется код переделывать полностью
|
|||
66
programmist1c8_
2 19.11.13
✎
14:22
|
Потому что куда не вставляешь этот "конец" сразу куча ошибок
|
|||
67
programmist1c8_
2 19.11.13
✎
14:23
|
Опять таки брал с примера х з может пример не правильный
|
|||
68
programmist1c8_
2 19.11.13
✎
14:24
|
часть взял с 1с про, часть насобирал в одном примере так, в другом так в третьем уже перетак в четвертом недоперетак
|
|||
69
programmist1c8_
2 19.11.13
✎
14:24
|
Пепелац короче
|
|||
70
programmist1c8_
2 19.11.13
✎
14:26
|
ох и загрузил я вас однако
|
|||
71
Wobland
19.11.13
✎
14:28
|
(70) да не, я вот код почти не смотрел ;)
|
|||
72
programmist1c8_
2 19.11.13
✎
14:33
|
Тут видишь как получается. Я искал пример хоть як нибудь глянуть, как правильно делается. В одном примере похожий код. Нахожу другой, там уже по-другому. И Функция в одних случаях "Функция печать()Экспорт, потом "Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Экспорт" с экспортом и без. Мне вот интересно, как правильно написать модуль. Первый раз вроде добавилась нормально, но сработала ошибка "МЕТОД ОБЪЕКТА НЕ ОБНАРУЖЕН (ПЕЧАТЬ). Стал копацца теперь вот допрыгался - КонецЕсли просит.
|
|||
73
programmist1c8_
2 19.11.13
✎
14:34
|
Попробую снести и заново прописать
|
|||
74
Кай066
19.11.13
✎
14:35
|
(73)
Если <Логическое выражение > Тогда // Операторы [ИначеЕсли] <Логическое выражением Тогда] // Операторы [Иначе] // Операторы КонецЕсли ; |
|||
75
Кай066
19.11.13
✎
14:36
|
мож так
Если ПустаяСтрока(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; ИначеЕсли ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; КонецЕсли; |
|||
76
programmist1c8_
2 19.11.13
✎
14:37
|
Кай066, сейчас попробую
|
|||
77
Aprobator
19.11.13
✎
14:40
|
имхо, только TeamViewer и добрая душа спасут ТС.
|
|||
78
programmist1c8_
2 19.11.13
✎
14:40
|
Иначе
ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; Оставить или убрать? А то ругаиццо {ВнешняяОбработка.СчетНаОплатуПокупателю.МодульОбъекта(224,9)}: Ожидается ключевое слово 'КонецЕсли' ('EndIf') <<?>>Иначе (Проверка: Сервер) |
|||
79
anaed
19.11.13
✎
14:41
|
я ж блин в самом начале сказал как сделать группировку условий, чтобы можно было смотреть какое не свернулось = не имеет конецесли.
|
|||
80
programmist1c8_
2 19.11.13
✎
14:42
|
Сделал, добавляю, ошибки выскакивают
|
|||
81
programmist1c8_
2 19.11.13
✎
14:49
|
Может, попробуешь у себя прописать
|
|||
82
programmist1c8_
2 19.11.13
✎
14:50
|
Я бы скрин показал, да не знаю как сюда выкладывать
|
|||
83
programmist1c8_
2 19.11.13
✎
14:55
|
Пойду чай пить, а то уже голова не соображает.
|
|||
84
anaed
19.11.13
✎
14:56
|
(80) я начинаю подозревать что ты как мартышка все делаешь - пробуя какой-то вариант не убираешь предыдущий.
Попробуй включить мозг, нарисуй себе блок схему и по ней пиши раз не можешь понять что за проблемы у тебя с условиями. |
|||
85
singlych
19.11.13
✎
14:58
|
Делаешь печатную форму для УТ 11, а процедура СформироватьПечатнуюФорму у тебя из УТ10.
|
|||
86
programmist1c8_
2 19.11.13
✎
15:10
|
Смотрел вот здесь 1c-pro.ru/topic26882.html.
Там (как в теме сказано)для УТ 11. По этому примеру и делаю. |
|||
87
programmist1c8_
2 19.11.13
✎
15:12
|
Получается, что убрать Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
А сделать Функция Печать()Экспорт |
|||
88
programmist1c8_
2 19.11.13
✎
15:14
|
Но я делаю в УТ 11.1.2.18
|
|||
89
programmist1c8_
2 19.11.13
✎
15:14
|
А то беру как пример
|
|||
90
programmist1c8_
2 19.11.13
✎
15:18
|
Ок, тогда какие процедуры и функции должны быть в печатной форме для УТ версии 11.1.2.хх?
|
|||
91
hhhh
19.11.13
✎
15:19
|
(78)
<<?>>Иначе (Проверка: Сервер) два раза Иначе всандалил |
|||
92
singlych
19.11.13
✎
15:26
|
По твоей ссылке все правильно написано, какие процедуры и функции нужны, чтобы твоя печатная форма успешно зарегистрировалась и работала в УТ 11 как внешняя печатная форма. А содержимое процедуры СформироватьПечатнуюФорму зависит от того, что ты там напечатать хочешь.
Сейчас у тебя в этой процедуре - код из внешней печатной формы счета для УТ10, причем криво скопированный. |
|||
93
programmist1c8_
2 19.11.13
✎
15:28
|
Понятно
|
|||
94
programmist1c8_
2 19.11.13
✎
15:33
|
Так и для версии 11.1.2.хх тоже самое, да? тольки последнюю функцию сварганить правильно
|
|||
95
programmist1c8_
2 19.11.13
✎
15:34
|
СформироватьПечатнуюФорму
|
|||
96
singlych
19.11.13
✎
15:37
|
(94) Да. Не забудь о СведенияОВнешнейОбработке() и сопутствующих процедурах.
|
|||
97
programmist1c8_
2 19.11.13
✎
15:39
|
Спасибо, singlych
|
|||
98
programmist1c8_
2 19.11.13
✎
23:03
|
Объясните пожалуйста еще один момент. В запросе есть такая строка: ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар
Что значит 1000 в скобках? Спасибо |
|||
99
programmist1c8_
2 20.11.13
✎
02:55
|
переписал код
|
|||
100
programmist1c8_
2 20.11.13
✎
02:55
|
ВнешняяОбработка.СчетНаОплатуПокупателю.МодульОбъекта(189,2)}: Ожидается ключевое слово 'КонецФункции' ('EndFunction')
<<?>>КонецЕсли; (Проверка: Сервер) {ВнешняяОбработка.СчетНаОплатуПокупателю.МодульОбъекта(262,46)}: Обнаружено логическое завершение исходного текста модуля ТабличныйДокумент.Вывести(ОбластьМакета);<<?>> (Проверка: Сервер) |
|||
101
programmist1c8_
2 20.11.13
✎
02:55
|
Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Экспорт
Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | ЗаказКлиента.Номер, | ЗаказКлиента.Дата, | ЗаказКлиента.ДоговорКонтрагента, | ЗаказКлиента.Организация, | ЗаказКлиента.Контрагент КАК Покупатель, | ЗаказКлиента.Организация КАК Поставщик, | ЗаказКлиента.СуммаДокумента, | ЗаказКлиента.ВалютаДокумента, | ЗаказКлиента.УчитыватьНДС, | ЗаказКлиента.СуммаВключаетНДС, | |ИЗ | Документ.ЗаказКлиента КАК Заказклиента |ГДЕ | ЗаказКлиента.Ссылка = &ТекущийДокумент"; Шапка = Запрос.Выполнить().Выбрать(); Шапка.Следующий(); ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказКлиента_СчетНаОплату"; Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ |ВложенныйЗапрос.НомерСтроки КАК НомерСтроки, |ВложенныйЗапрос.Номенклатура КАК Номенклатура, |ВЫРАЗИТЬ (ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар, |ВложенныйЗапрос.Количество, |ВложенныйЗапрос.ЕдиницаИзмерения, |ВложенныйЗапрос.Цена, |ВложенныйЗапрос.СтавкаНДС, |ВложенныйЗапрос.СуммаНДС, |ВложенныйЗапрос.Сумма |1 КАК ID |ИЗ |(ВЫБРАТЬ |ЗаказКлиента.Номенклатура КАК Номенклатура, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзмерения.Наименование КАК ЕдиницаИзмерения, |ЗаказКлиента.Цена КАК Цена, |ЗаказКлиента.СтавкаНДС КАК СтавкаНДС, |СУММА(ЗаказКлиента.Количество) КАК Количество, |СУММА(ЗаказКлиента.Сумма) КАК Сумма, |СУММА(ЗаказКлиента.СуммаНДС) КАК СуммаНДС, |ЗаказКлиента.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, |МИНИМУМ(ЗаказКлиента.НомерСтроки) КАК НомерСтроки, |ИЗ |Документ.ЗаказКлиента.Товары КАК ЗаказКлиента, | |ГДЕ |ЗаказКлиента.Ссылка = &ТекущийДокумент | |СГРУППИРОВАТЬ ПО |ЗаказКлиента.Номенклатура, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзмерения.Наименование, |ЗаказКлиента.Цена) КАК ВложенныйЗапрос | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ |ЗкакзКлиента.Количество, |ЗаказКлиента.Номенклатура.БазоваяЕдиницаИзмерения.Наименование, |ЗаказКлиента.Цена, |ЗаказКлиента.Сумма, |ЗаказКлиента.СуммаНДС, |ЗаказКлиента.НомерСтроки |2 |ИЗ |Документ.ЗаказКлиента.Услуги КАК ЗаказКлиента | |ГДЕ |ЗаказКлиента.Ссылка = &ТекущийДокумент | |УПОРЯДОЧИТЬ ПО | |ID | |НомерСтроки"; ЗапросТовары = Запрос.Выполнить().Выгрузить(); Макет = ПолучитьМакет("Счет"); // Выводи шапку счета СведенияОПолучателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата); Если Тип = "Счет" Тогда ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.ИННПолучателя = СведенияОПолучателе.ИНН; ОбластьМакета.Параметры.КПППолучателя = СведенияОПолучателе.КПП; Если ТипЗначения(СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда Банк = ?(НЕ ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов), СтруктурнаяЕдиница.Банк, СтруктурнаяЕдиница.БанкДляРасчетов); БИК = Банк.Код; КоррСчет = Банк.КоррСчет; ГородБанка = Банк.Город; НомерСчета = ВернутьРасчетныйСчет(СтруктурнаяЕдиница); ОбластьМакета.Параметры.БИКБанкаПолучателя = БИК; ОбластьМакета.Параметры.БанкПолучателя = Банк; ОбластьМакета.Параметры.БанкПолучателяПредставление = СокрЛП(Банк) + " " + ГородБанка; ОбластьМакета.Параметры.СчетБанкаПолучателя = КоррСчет; ОбластьМакета.Параметры.СчетБанкаПолучателяПредставление = КоррСчет; ОбластьМакета.Параметры.СчетПолучателяПредставление = НомерСчета; ОбластьМакета.Параметры.СчетПолучателя = НомерСчета; КонецЕсли; Если ПустаяСтрока(СтруктурнаяЕдиница.ТекстКорреспондента) Тогда ТекстКорреспондента = СведенияОПолучателе.НаименованиеДляПечатныхФорм; Если ЗначениеЗаполнено(СтруктурнаяЕдиница.БанкДляРасчетов) Тогда ТекстКорреспондента = ТекстКорреспондента + " р/с " + СтруктурнаяЕдиница.НомерСчета + " в " + СтруктурнаяЕдиница.Банк + " " + СтруктурнаяЕдиница.Банк.Город; КонецЕсли; Иначе ТекстКорреспондента = СтруктурнаяЕдиница.ТекстКорреспондента; КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПолучателя = ТекстКорреспондента; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; КонецЕсли; ОбластьМакета = Макет.ПолучитьОбласть("Заголовок"); ОБластьМакета.Параметры.ТекстЗаголовка = "Счет на оплату № " + НомерДокумента + " от " + Формат(Шапка.ДатаДокумента , "ДФ=""dd MMMM yyyy"""); ТабличныйДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("Поставщик"); ОбластьМакета.Параметры.Заполнить(Шапка); СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата); ОбластьМакета.Параметры.ПредставлениеПоставщика = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны,"); ТабДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("Покупатель"); ОбластьМакета.Параметры.Заполнить(Шапка); СведенияОПокупателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Покупатель, Шапка.Дата); ОбластьМакета.Параметры.ПредставлениеПокупателя = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "НаименованиеДляПечатныхФорм,ИНН,КПП,ЮридическийАдрес,Телефоны,"); ТабДокумент.Вывести(ОбластьМакета); // Вывести табличную часть (товары и услуги) ОбластьМакета = Макет.ПолучитьОбласть("ШапкаТаблицыСНДС"); ОбластьМакета.Параметры.Заполнить(Шапка); ОбластьМакета.Параметры.Номер = Номер; ОбластьМакета.Параметры.Товар = "Товары (работы, услуги)"; ОбластьМакета.Параметры.Количество = Количество; ОбластьМакета.Параметры.Цена = Цена; ОбластьМакета.Параметры.СтавкаНДС = СтавкаНДС; ОбластьМакета.Параметры.СуммаНДС = СуммаНДС; ОбластьМакета.Параметры.Сумма = Сумма; ТабличныйДокумент.Вывести(ОбластьМакета); ОбластьМакета = Макет.ПолучитьОбласть("СтрокаТаблицыСНДС"); НомерСтроки = 0; Для Каждого ВыборкаСтрокТовары Из ЗапросТовары Цикл НомерСтроки = НомерСтроки + 1; ОбластьМакета.Параметры.Заполнить(ВыборкаСтрокТовары); ОбластьМакета.Параметры.НомерСтроки = Номер; ОбластьМакета.Параметры.Товары = СокрЛП(СтрокаТабличнойЧасти.Товар); ОбластьМакета.Параметры.Количество = СтрокаКоличество; ОбластьМакета.Параметры.ЕдиницаИзмерения = СтрокаЕдиницаИзмерения; ОбластьМакета.Параметры.Цена = СтрокаЦена; ОбластьМакета.Параметры.СтавкаНДС = СтрокаСтавкаНДС; ОбластьМакета.Параметры.СуммаНДС = СтрокаСуммаНДС; ОбластьМакета.Параметры.Сумма = СтрокаСумма; ТабличныйДокумент.Вывести(ОбластьМакета); КонецЦикла; // Вывести екцию с итоговой суммой ОбластьМакета = Макет.ПолучитьОбласть("Итого"); ОбластьМакета.Параметры.Всего = ОбщегоНазначения.ФорматСумм(Итого); ТабличныйДокумент.Вывести(ОбластьМакета); // Выводим секцию с итоговой суммой с НДС Если СуммаСНДС <> 0 Тогда ОбластьМакета = Макет.ПолучитьОбласть("ИтогоСНДС"); ОбластьМакета.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(СуммаНДС); СуммаСНДС = Сумма + СуммаНДС; ОбластьМакета.Параметры.НДС = ?(Выборка.СуммаВключаетНДС, "Итого с НДС", " Сумма НДС"); ОбластьМакета.Параметры.ВсегоСНДС = ОбщегоНазначения.ФорматСумм(СуммаСНДС); ТабличныйДокумент.Вывести(ОбластьМакета); КонецЕсли; // Выводим сумму прописью ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью"); ОбластьМакета.Параметры.ИтоговаяСтрока ="Всего наименований " + ЗапросТовары.Количество() + ", на сумму " + ОбщегоНазначения.ФорматСумм(СуммаКПрописи) + " руб."; ОбластьМакета.Параметры.СуммаПрописью = ЧислоПрописью(СуммаКПрописи, "L=ru_RU", "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2"); ТабличныйДокумент.Вывести(ОбластьМакета); // Вывести Реквизиты подвала ОбластьМакета = Макет.ПолучитьОбласть("ПодвалСчета"); ОбластьМакета.Параметры.ФИОРуководителя = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.Руководитель); ОбластьМакета.Параметры.ФИОГлавногоБухгалтера = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.ГлавныйБухгалтер); ОбластьМакета.Параметры.ФИОменеджера = ФизическиеЛица.ФамилияИнициалыФизЛица(Данные.Менеджер); ТабличныйДокумент.Вывести(ОбластьМакета); КонецФункции // СформироватьПечатнуюФорму() |
|||
102
singlych
20.11.13
✎
09:37
|
Тебе же разжевали уже все в (60). Но толку от этого не будет. Не будет этот код работать в УТ11.
|
|||
103
singlych
20.11.13
✎
09:37
|
А 1000 - это максимальная длина строки.
|
|||
104
programmist1c8_
2 20.11.13
✎
13:28
|
А Как правильно написать, уж извините за назойливость
|
|||
105
singlych
20.11.13
✎
16:37
|
Во-первых, ссылка на печатаемый документ передается в твою обработку как элемент массива МассивОбъектов. Тк в УТ11 можно печатать сразу несколько документов, поэтому массив.
Во-вторых, посмотри уже, как в типовой конфе печатается Счет, делай аналогично. Типовая процедура печати ЕМНИП лежит в модуле менеджера то ли документа ЗаказПокупателя, то ли обработки ПечатьСчетовНаОплату. |
|||
106
Noob_Of_1C
20.11.13
✎
16:59
|
Форматирование кода на высоте, вложенность условий хрен поймешь...мдяяяяяя
|
|||
107
hhhh
20.11.13
✎
17:00
|
(100) ну значит лишнее КонецЕсли или еще чего-нибудь.
Ну неужели у вас до такой степени рассеянное внимание, что не можете сосчитать сколько у вас там Если и КонецЕсли, Цикл и КонецЦикла? Это же у вас займет 3 минуты. А вы вместо этого форум полдня из-за этой ерунды мурыжите. |
|||
108
Noob_Of_1C
20.11.13
✎
17:02
|
(107) лучше пусть вложенность покажет и все встанет на свои места В-)
|
|||
109
singlych
20.11.13
✎
17:41
|
(108) а потом будет (45)
|
|||
110
Noob_Of_1C
20.11.13
✎
17:51
|
(109) (45) это когда без (108) xD я просто даже сейчас вижу что у него в одном из последних примеров кода лишний конец торчит
|
|||
111
programmist1c8_
2 20.11.13
✎
21:22
|
Ок, я вас понял. Не буду больше отвлекать. Буду смотреть и разбирацца. Спасибо за советы.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |