Создание внешних печатных форм, 1С7.7 #392579


#0 by soloveichik
Добрый день, уважаемые форумчане! Подскажите, пожалуйста, в чем может быть ошибка. Необходимо сделать внешнюю печатную форму в 1С7.7. Для версии 1С8.1 ответы есть в интернете. Сделать по аналогии мне не удалось - появились ошибки, которые пока не знаю, как исправить. Может быть, в принципе сделано не верно. Делал внешнюю обработку для документа Поступление МПЗ в конфигурации 1С7.7 Бухгалтерия Упрощенная система налогообложения. 1. Создал внешнюю обработку. 2. Скопировал ее из необходимого документа макет ("Таблица") и пометил его в свою внешнюю обработку. И тут появился первый вопрос. Для документа Поступление МПЗ мне не удалось найти форму М-4 (искал среди документов, отчетов, обработок) Подскажите, где ее (форму М-4) можно найти в конфигураторе ? 3. Далее, скоприровал из документа часть модуля печатной формы. Часть, названную Печать. И тут возникли следующие вопросы. В 8.1 для внешней обработки, для печати измененного документа используется функция Печать , а в 7.7 идет Процедура Печать. Понятно, что функция в отличие от процедуры возвращает значение. Нужно ли переименовывать в случае 7.7 Процедуру в Функцию? И если да, то тогда, соответственно функция должна возвращать значение, какое? Объект Таб, который создает новую таблицу? 4. В тексте модуля создаваемой процедуры создал ссылку на необходимый документ, чтобы обработка "подцепляла" тот документ, котрый нам нужен СсылкаНаОбъект = СоздатьОбъект ("Документ.ПоступлениеМПЗ"); //Документ.ПоступлениеМПЗ - это тот документ, который мне необходимо отредактировать. 5. И далее, везде в тексте модуля, где появляются синтаксические ошибки (или функция Проведен не обнаружена, или переменная НомерДок не определена), или другие переменные не определены, поставил ссылку на документ (СсылкаНаОбъект.Проведен или СсылкаНаОбъект.НомерДок) И так исправляю все ошибки, которые выделяет синтаксическая проверка. И наконец, синтаксических ошибок нет. Ура! 6. В форме обработки добавляю поле "РеквизитДиалога", в свойствах которого указал тип "Документ.ПоступлениеМПЗ", идентификатор "СсылкаНаОбъект"). 7. Подцепил в 1С Предприятии созданную печатную форму, выбрал в поле диалога свой документ и ..... появляется надпись об ошибке в строке: Значение не представляет агрегатный объект (Выбран) Мои дальнейшие попытки что-то откорректировать, к сожалению, ни к чему не привели... Пожалуйста, подскажите, как и что нужно сделать правильно. В данном случае это документ "Поступление МПЗ", но могут быть и другие документы. Спасибо!
#1 by ТелепатБот
#2 by AeDen
2. Общие таблицы, скорее всего (дерево конфигурации - на самом верхнем уровне правый клик). 3. Не нужно. 5. А спозиционироваться на документ? И вообще нифига не понятно. Что надо было? В 7-ке есть штатный механизм регистрации внешних печатных форм для типовых конфиг. Обработка какая-то... Ищите:)
#3 by soloveichik
Спасибо! В общих таблицах нашел нужную мне М-4! Что означает спозиционирваться на документ? (извините за глупыый вопрос :)) ) Что нужно было сделать - нужно было написать внешнюю обработку, которая бы печатала нужный документ, но который был бы изменен. То есть в него необходимо внести простые изменения - добавить логотип и т.п.
#4 by kalleka
в 1с есть стандартный механизм подключения печатных форм, в ТиСе он выглядит так в папке ExtFormsPrnForms лежат файлы ert и efd например: в последнем следующий текст Объект="Документ.Реализация" Название=Торг-12 Кнопка=Торг-12 в самом внешнем отчете создаешь процедуру приоткрытии в ней пишешь что то вроде текдок я обычно делаю глобальной переменной в процедуру печать копируешь алгоритм печати из оригинального дока, везде где идет работа с документом и его реквизитами (вместо выбратьстроки, текдок.выбратьстроки, вместо контрагент, текдок.выбратьконтрагент ) Печатную форму тоже копируешь. Все это правишь как тебе надо
#5 by kalleka
+ теперь когда в документе нажимаешь кнопку выбора печатной формы - твоя печатная форма появится в списке. В моем случае появится надпись "торг-12". Список печатных форм формируется при открытии документа
#6 by Хряк
правда это для бух, подрихтуешь сам
#7 by kalleka
ну вот столько букв написал, а автор пропал, не сообщив о результатах))
#8 by andrewalexk
:) вот и появилось поколение которое азы на семерке пытается делать по аналогии с восьмеркой.. "я слишком стар для этого дерьма"(с)
#9 by soloveichik
Господа, спасибо за содержательные ответы! действительно отлучался :)) Сейчас буду пробовать :)), надеюсь все заработает :)) Спасибо!
#10 by kalleka
главное велосипед с квадратными колесами не изобретай)
#11 by soloveichik
Доброго времени суток! Почти все заработало :)) То есть внешняя форма регистрируется, из окна регистрации внешних форм открывается и при выборе нужного документа (в форму внес такое поле)открывает печатную форму документа. Ура!!! Но не получилось пока сделать так, чтобы из открытого документа моя форма работала. В списке печатных форм она есть, ее можно выбрать наряду с основной формой, но, выбрав, печатная форма не вызывается. Копирование в модуль ответственных за это процедур из модуля изначального документа ни к чему кроме появления ошибок не водит :(. Подскажите, пожалуйста, как и что нужно еще добавить в модуль внешней формы! Спасибо!
#12 by victuan1
Посмотри по аналогии как сделаны "родные" внешние печатные формы. Их код унифицирован.
#13 by soloveichik
Доброго времени суток! Спасибо всем за дельные рекомендации! Внешняя форма заработала, как надо :))
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С