Още веднъж относно отстраняването на грешки във външни формуляри за печат в управлявано приложение

Така че във външния модул за обработка имаме процедура:

Процедурата е стандартна, извиква функцията за формиране на документ с електронна таблица PrintAccountContract(ObjectsArray), трябва да извикаме точно тази функция от добавената форма и да покажем резултата.

добавяме към отчета атрибута LinkToObject от типа, от който се нуждаем тук, едно към едно, както в дебелия клиент. Създаваме формуляр - реквизитите в него ще се добавят автоматично. Добавяме бутон на формата - Print, свързваме командата Print към него и създаваме автоматична процедура на сървъра и на клиента.

Тук има малко ръчна работа. Първо заместваме процедурата на сървъра с функция. На клиента добавете съответно метода Show(). Искаме ли да видим генерирания документ с електронна таблица? Във функцията Command1AtServer() изваждаме документ с електронна таблица - директно извикваме функцията на модула PrintInvoiceAccount (. ) - и прехвърляме този документ с електронна таблица на клиента, ясно е, че сървърът няма да ни го покаже. Атрибутът FormToValue(..) е необходим за изпреварване на обекта до състояние - когато неговата процедура (модул) може да се види от клиента, както пише 1s, получаваме обект от типа приложение, в противен случай нищо няма да работи.

Ако започнем обработка в този вариант, ще видим грешка - функцията PrintAccountAccount(array1) не е намерена. Ние правим последния щрих - в модула, за да направим тази функция експортируема.

Усъвършенстването е минимално и ще отнеме малко повече време, отколкото при дебелия клиент. Отстранена грешка за печат без никакви промени може да се добави към външни отчети и обработка - тя ще бъде напълно функционална.

Сега можем свободно да отстраняваме грешки във формуляра, като го отворим през менюто за файлове.Превключете към грешки директно в конфигуратора / обработката и вмъкнете готовия печат в допълнителни отчети и обработка без никакви добавки - както е.