Имя: Пароль:
1C
 
ошибка внешней печатной формы
0 Александр056
 
15.12.15
13:05
1с упп, допиленный механизм, печати из маршрутного листа, ТТН, путевого листа, ... , счета-фактуры...в маршрутном 3 заказа, у каждого есть счета фактуры в структуре подчиненности,иду по коду, нашел где печатается сч-фактура, ВПФ, при печати ее выходи ошибка:

{ВнешняяОбработка.СФвыд.МодульОбъекта(7)}: Поле объекта не обнаружено (КурсВзаиморасчетов)
    КурсВзаиморасчетов = СсылкаНаОбъект.КурсВзаиморасчетов;

достаю из справочника впформ, впформу, бинго! в модуле нет таких строк... вообще ничего про курс взаиморасчетов, я проверил отладчиком, несколько раз, открывает точно эту впф, другого варианта - нет, пробовал печатать эту форму из документа или открыв как внешнюю обработку и печатать те же сч-фактуры, все ок! все печатается, но когда вызывается программно такая ошибка... куда копать? как так?) на всяки код вызова ВПФ:

ИначеЕсли ТипЗнч(ИмяМакета)= Тип("СправочникСсылка.ВнешниеОбработки") Тогда ДвоичныеДанные = ИмяМакета.ХранилищеВнешнейОбработки.Получить();
ИмяФайла = КаталогВременныхФайлов()+"PrnForm.tmp";
ДвоичныеДанные.Записать(ИмяФайла);
Обработка = ВнешниеОбработки.Создать(ИмяФайла);
Обработка.СсылкаНаОбъект = ЭтотОбъект.Ссылка;
ТабДокумент = Обработка.Печать(); // вот на этой строке вываливает ошибку...

прошу подсказать \ помочь
1 LordCMEPTb
 
15.12.15
13:17
Ну если сама обработка работает корректно, значит проблема не в ней.
Были попытки открыть файл по пути записи этой обработки? Т.е. по КаталогВременныхФайлов()+"PrnForm.tmp";
Что изменится, если получать имя файла для сохранения через "ПолучитьИмяВременногоФайла()", а в после создания обработки удалять файл с диска?
2 Александр056
 
15.12.15
13:40
ДвоичныеДанные=ИмяМакета.ХранилищеВнешнейОбработки.Получить();

эту строку не скопировал вначале стоит всего кода, описанного выше
3 Александр056
 
15.12.15
14:45
ап
4 Мэс33
 
15.12.15
14:58
>>>>>достаю из справочника впформ, впформу, бинго! в модуле нет таких строк

Тогда ищи, что конкретно у тебя вызывается.
5 Александр056
 
16.12.15
07:38
интересный момент, поомгли танцы с бубнами, итак, суть проблемы была в том что, перед сч фактурой печатался так же документ ТОРГ12, и вот фишка, каким-то образом получилось след: ТОРГ12 печатается, в
Обработка = ВнешниеОбработки.Создать(ИмяФайла);
Обработка.СсылкаНаОбъект = ЭтотОбъект.Ссылка;
этих строках находит новую печ форму,т.е. счет фактуру, но! ругается на код который в ТОРГ12! првоерил) комментировал след ошибки шли, хотя явно видно что уже в Обработка лежит другая....кароче шаманство, в итоге создал копию Обработки счт фктр, переименовал, запцепил ее, бинго все печатает!, поставил на место старую, бинго! все работает...как так...
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн