05.02.2024

Допълнителна форма за печат 1с 83. Добавяне на външна форма за печат към базата данни


Не е тайна, че въпреки че в днешно време все повече компании преминават към електронен документооборот, старата поговорка „Без хартия ти...” не губи своята актуалност. Случва се така, че по някаква причина контролните органи се интересуват предимно от хартиени документи. Ето защо, ако активно използвате програмата 1C: Accounting или Enterprise за финансов контрол, е важно да знаете как да отпечатате електронен документ, създаден с помощта на програмата.

Печатните формуляри в 1C ви позволяват да трансформирате електронен документ в печатна версия.

За това разработчикът е предоставил отличен инструмент - Print Designer. С негова помощ можете да създавате документи, в които да посочвате всякакви данни, от които се нуждаете, а не само няколко стандартни формуляра. Това важи особено за онези документи, които нямат строго регламентирана форма, която не може да бъде променяна при никакви обстоятелства. Това по-специално може да включва акт за завършване на работа, някои фактури или плащания.

В това ръководство предлагаме да разберем възможностите на печатния дизайнер, да разгледаме какви видове печатни форми могат да бъдат и как се различават един от друг. Ще покажем и с пример как се отпечатва създадения формуляр.

Първо, струва си да разберете какво, като цяло, е печатна форма в 1C 8. Това е шаблон на електронна таблица 1C (като Excel), в който са посочени някои променливи редове, попълнени с данни от програмата при изготвяне на документ.

Печатните форми се предлагат в два вида:

  • Вътрешен (вграден). Те се съхраняват в конфигурацията на програмата, така че е по-добре да не ги променяте, тъй като могат да възникнат проблеми по-късно по време на актуализацията.
  • Външни - съхраняват се отделно от настройките на програмата. И с тяхна помощ можете да създадете и подготвите за печат документ с почти всякаква сложност, без да засягате конфигурацията на програмата 1C 8.

Как да изберем вече готови оформления? След като извършите входяща или изходяща операция, например изписване на отчет за свършена работа, щракнете върху бутона „Печат“, за да отпечатате документите. Списъкът показва списък с формуляри за печат, които вече са попълнени с въведени данни за извършената транзакция и вашата компания. Щраквайки върху типа документ, от който се нуждаете, вие отваряте прозорец за предварителен преглед, за да можете да се уверите, че данните, които сте попълнили, са правилни. Бутонът за печат отпечатва документа на принтера.

Като приключим с основите, нека да разберем къде се съхраняват всичките ви материали за печат. Да преминем към следващия въпрос.

Къде се съхраняват отпечатаните формуляри?

Можете да видите вградените печатни формуляри както в режим на конфигуратор, така и в нормален режим на предприятие. В първия случай трябва да щракнете върху съответния бутон в началния прозорец, когато стартирате програмата. Ще видите менюто на програмата, намерете клона „Продажби на продукти и услуги“, който съдържа елемента „Оформления“. Често съдържа само два елемента - „Фактура“ и „Акт“. Къде са всички останали тогава, след като списъкът е много по-обширен? Те просто се крият някъде другаде. Трябва да отворите клона „Общи“ - „Общи оформления“, почти всички оформления се съхраняват в него.

Във втория случай трябва да отидете в раздела на менюто „Администрация“ - „Печат на формуляри, отчети и обработка“ - „Оформления на печатни формуляри“. Той ще покаже всички оформления на документи. Трябва да се отбележи, че те могат да се редактират в същото меню.

Що се отнася до външните формуляри, първо трябва да ги създадете в режим на конфигуратор или като изтеглите готов файл и след това да ги свържете към менюто „Администриране“ - „Печатни формуляри, отчети и обработка“ - „Допълнителни отчети и обработка”. Ще поговорим за това малко по-късно.

Създаване на прост формуляр с помощта на вградения Print Designer

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

  1. Първо стартирайте режима на конфигуратора, намерете документа, от който се нуждаете, например Продажби на продукти и услуги, в свойствата на документа отидете на Действия - Дизайнери - Дизайнер на печат.
  2. Когато бъдете подканени за работна опция, изберете Редовни формуляри.
  3. Дайте име на новото оформление, например „Печат на фактура“.
  4. Изберете подробностите, които искате да видите в заглавката на документа. Освен това те трябва да бъдат избрани в реда, в който ще бъдат показани. За да изберете, трябва да маркирате елемента в лявата колона с курсора и да натиснете стрелката в средата на екрана, така че подробностите да се появят в дясната колона.
  5. Маркирайте детайлите, които да се показват в секцията с таблици. Изборът на детайли следва същия принцип, както в предишния параграф.
  6. По същия начин изберете детайлите в долната част на документа.
  7. На последния етап от създаването изберете дали искате да отпечатате веднага без преглед, дали трябва да защитите таблицата и след това потвърдете създаването на формуляра с бутона OK.

Създаване на външна печатна форма

Формулярите, създадени чрез Print Designer, могат да бъдат сравнени с визуален софтуерен редактор, когато не въвеждате целия код ръчно, а само го композирате от предложените елементи. Външната форма е файл с ръчно написан програмен код, който описва процедурата за извеждане на данни на екрана. Това е, което ви позволява да редактирате отпечатания формуляр, както желаете, като посочите абсолютно всякакви данни във всяка последователност.

Допълнително предимство е, че дори ако не разбирате или просто не искате да разберете тънкостите на програмирането на 1C 8, можете да поверите тази процедура на професионалисти. Те ще могат да ви изготвят необходимата форма и да ви я предоставят като готов файл, който можете да активирате само с няколко клика на бутон.

Сега нека поговорим повече за самата процедура. Нека да разгледаме примера за създаване на оформление „Фактура“ за документа „Продажби (актове, фактури)“.

  1. Отворете програмата 1C 8 в режим на конфигуратор.
  2. Щракнете върху Файл - Нов - Външна обработка, дайте му име (не трябва да включва интервали), след което щракнете върху Действия - Отваряне на обектен модул.
  3. В полето за въвеждане, което се отваря, въведете следния код (стойностите, които могат да бъдат променени на ваши, са маркирани в жълто):

Функция InformationOnExternalProcessing() Експортиране
Параметри за регистрация = Нова структура;
ArrayDestinations = Нов масив;
Масив от задания.Добавяне("Документ.Продажби на стоки и услуги"); //Посочваме документа, за който правим външен печат. форма
Parameters.Insert("View", "PrintForm"); //може би - PrintableForm, попълващ обект, допълнителен отчет, създаване на свързани обекти...
Регистрационни параметри.Insert("Дестинация", масив от дестинация);
Parameters.Insert("Име", "Поръчка за продажба на стоки"); // име, под което обработката ще бъде регистрирана в директорията на външната обработка
Параметри за регистрация.Insert("SafeMode", FALSE);
Параметри за регистрация.Insert("Версия", "1.0");
Registration Options.Insert("Информация", "Този формуляр за печат е създаден като проба");
CommandTable = GetCommandTable();
AddCommand(CommandTable, "External Order", "ExternalOrder", "CallServerMethod", True, "MXL Print");
Параметри за регистрация.Insert("Команди", CommandTable);
ReturnRegistrationParameters;
EndFunction // Информация ЗА външна обработка ()
Функция GetTableCommand()
Команди = Нова таблица със стойности;
Commands.Columns.Add("View", New TypeDescription("Row"));//как ще изглежда описанието на формата за печат за потребителя
Commands.Columns.Add("Identifier", New TypeDescription("String")); //отпечатайте име на оформлението на формуляр
Commands.Columns.Add("Usage", NewTypeDescription("Row")); //Извикване на ServerMethod
Commands.Columns.Add("ShowAlert", NewTypeDescription("Boolean"));
Commands.Columns.Add("Модификатор", NewTypeDescription("Ред"));
Екип за връщане;
EndFunction
Процедура AddCommand(CommandTable, View, Identifier, Usage, ShowAlert = False, Modifier = "")
NewCommand = CommandTable.Add();
NewCommand.View = Изглед;
NewCommand.Identifier = Идентификатор;
NewCommand.Use = Използване;
NewCommand.ShowAlert = Покажи предупреждение;
NewCommand.Modifier = Модификатор;
Край на процедурата

  1. Запазете оформлението за печат като файл във всяка папка на вашия твърд диск, наименувайте го по подходящ начин.

Вмъкнете в същия документ процедурата за стартиране на печат от менюто на програмата (командите, маркирани в жълто, трябва да съвпадат с реда):

Добавете команда (Таблица с команди, „Външен ред“, „Външен ред“):
Процедура Печат (Масив от обекти, Колекция от PrintForms, PrintObjects, Изходни параметри) Експорт
Управление на печат. Изход TabularDocumentIntoCollection(
Колекция от печатни форми,
"Външен ред"
"Външен ред"
GeneratePrintForm(ArrayofObjects, PrintObjects);
EndProcedure // Print()

  1. Вмъкнете оформление за попълване на отпечатания формуляр, като щракнете върху името на външния формуляр в долния ляв ъгъл и изберете „Оформления“ - „Добавяне“ - „Документ с електронна таблица“, дайте му име. След това попълнете електронната таблица с необходимите данни. Например:
    • Поръчка за продукт № [Номер на реализация] от [Дата на реализация] - десен бутон - Свойства - Оформление - Попълване - Шаблон.
    • Създайте колоните, които искате да се показват във вашия документ.
    • Изберете въведените клетки, щракнете върху Таблица - Имена - Задайте име - въведете името „Заглавка“.
    • Копирайте реда със заглавките на таблицата, изберете ги, щракнете с десния бутон - Properties - Layout - Filling - Parameter.
    • Изберете ред и го наименувайте, например „StringTCH“.
    • Създайте долен колонтитул: напишете Total, клетката, в която трябва да се покаже общата сума, наименувайте я TotalTotal, изберете „Параметри“ в свойствата.
    • Посочете отговорното лице и в свойствата на клетката за показване на фамилното име посочете „Параметри“.
    • Изберете долните редове и наименувайте диапазона „Долен колонтитул“.
  2. Сега в прозореца за въвеждане въведете функцията за генериране на печатна форма:

Функция GeneratePrintForm(LinkToDocument, PrintObjects)
TabularDocument = Нов табличен документ;
TabularDocument.Name of Print Parameters = “PRINT_PARAMETERS_Invoice for Payment to VRTU”;
Оформление за обработка = GetLayout("Payment InvoiceExternal");
//попълнете заглавката
AreaHeader = ProcessingLayout.GetArea("Header");
AreaHeader.Parameters.DocumentNumber = LinkToDocument.Number;
AreaHeader.Parameters.DocumentDate = LinkToDocument.Date;
AreaHeader.Parameters.OrganizationName = LinkToDocument.Organization.Name;
//изведете заглавката в документ с електронна таблица
TabularDocument.Output(HeaderArea);
//попълнете редовете в ЛС
RowArea = ProcessingLayout.GetArea("РЕД");
За всеки текущ ред от връзка към документ. Цикъл на продукти
FillPropertyValues(RowArea.Parameters, CurrentRow);
TabularDocument.Output(RowArea);
EndCycle;
//запълване на мазето
AreaFooter = ProcessingLayout.GetArea("Долен колонтитул");
AreaFooter.Parameters.QuantityTotal = LinkToDocument.Products.Total("Количество");
AreaFooter.Parameters.AmountTotal = LinkToDocument.Products.Total("Сума");
AreaFooter.Parameters.ResponsibleName = LinkToDocument.Manager.Name;
//изведете долния колонтитул в документ с електронна таблица
TabularDocument.Output(AreaFooter);
TabularDocument.AutoScale = True;
върнете TabularDocument;
EndFunction

  1. Запазете промените в документа.
  2. Сега трябва да активирате създадения формуляр. За това:
    • Отидете на „Администриране” - „Печатни формуляри, отчети и обработка” - „Допълнителни отчети и обработка”.
    • Щракнете върху бутона „Създаване“, изберете файла с външен формуляр в Explorer, потвърдете въвеждането си с бутона „Запазване и затваряне“.
  3. За да проверите, отидете на Продажби - Продажби (актове, фактури), щракнете върху бутона "Печат", изберете вашия формуляр и проверете дали е попълнен правилно.
  4. Отпечатайте документа, ако е необходимо.

Заключение

Разгледахме пример за създаване на формуляр за печат чрез Print Designer и чрез инструмента за създаване на външни формуляри. Надяваме се всичко да се получи за вас. Оставете вашите въпроси в коментарите.

Тази статия описва как да свържете външен печатен формуляр към 1C база данни, като използвате примера на конфигурацията „Trade Management 11.2“

Конфигурацията „Trade Management 11.2“ е конфигурация на „MANAGED“ форми!

Нашите инструкции „показват“ как да свържете външен печатен формуляр в информационната база 1C с конфигурация на „УПРАВЛЯВАНИ“ формуляри, а именно:

  • "Счетоводство 3.0"
  • "Управление на търговията 11.2"
  • "Управление на заплати и персонал 3.1"
  • „Цялостна автоматизация 2.0“
  • „Управление на малка фирма 1.6“
  • „Търговия на дребно 2.2“
  • и други подобни конфигурации.

За да свържете външна форма за печат в 1C, ще трябва да преминем през 11 стъпки.

1 — Меню „Основни данни и администрация“ (В други конфигурации, като например в Enterprise Accounting 3.0, може да се нарича просто „Администрация“). 2 — Изберете „Печатни формуляри, отчети и обработка“ (вижте фигурата по-долу ↓)

3 — Разширете подменюто „Отчети и обработка“ (В други конфигурации, като например Enterprise Accounting 3.0, може да няма такова подменю, така че веднага преминаваме към следващата стъпка). 4 — Поставете отметка в квадратчето „Използване на допълнителни отчети и обработка“. 5 — Отидете в раздела: Допълнителни отчети и обработка. (вижте фигурата по-долу ↓) ()

6 — Щракнете върху бутона „Създаване“. (вижте фигурата по-долу ↓)

В новите версии на 1C (от август 2016 г.) програмата има вграден механизъм за предупреждение за опасността от използване на неизвестна външна обработка, която може да съдържа „вируси“; в по-ранните версии на програмата предупреждението няма да се появи! Ако това се случи, тогава за свързване на външна форма за печат ще е необходимо - 7 — щракнете върху бутона „Продължи“. (вижте фигурата по-долу ↓)

8 — Изберете директорията, в която се намира обработката. 9 — Изберете го (обработката, от която се нуждаем). 10 — Щракнете върху бутона „Отвори“. Или, вместо стъпки 9 и 10, можете просто да щракнете двукратно върху външния печатен формуляр, от който се нуждаем, в прозореца за избор. (вижте фигурата по-долу ↓)

Ако трябва да добавим разположение за добавената обработка (Например, това е универсален договорен формуляр от нашия уебсайт и имаме нужда от командата за отпечатване на този формуляр, за да се покаже в някакъв обект, в който първоначално не е показан) - 11 — щракнете върху реда за разположение („Поставяне в:“, може би „Поставяне:“) и изберете необходимите директории и документи. 12 — Завършваме стъпките за свързване на външна форма за печат, като щракнете върху бутона „Запис и затваряне“. (вижте фигурата по-долу ↓)

Това е всичко! Честито! Свързана е външна печатна форма!Направихме ли всичко както трябва? Да проверим...

Преди Записване и затваряне забелязахме, че този външен печатен формуляр се намира в документа Продажби на стоки и услуги, което означава, че можем да отворим опции за печат за всеки документ от типа: „Продажби на стоки и услуги“. натиснете бутона „Печат“ и вижте, че се е появил прозорец за избор на печатни форми, сред които има - 13 — свързана от нас външна печатна форма (виж фигурата по-долу ↓)

Това е със сигурност. Надяваме се, че тази статия е била полезна за вас.

Добър ден.

Днес искам да ви кажа как да създавате външни печатни формуляри за конфигурацията „Управление на заплати и персонал 3.0“. Както знаете, ZUP 3.0 използва библиотека от стандартни подсистеми, което означава, че структурата на обработка изглежда напълно различно. Когато за първи път трябваше да направя печатен формуляр за BSP в управлявани формуляри (тогава беше UT 11), първото нещо, което направих, беше да отида на ITS диска, за да намеря там подробна документация за това какви процедури за експортиране, какви параметри трябва да бъдат обработени и как работи всичко. Тук ITS малко ме разочарова, защото... там е казано всичко за това как трябва да изглеждат процедурите в модула за документи, а във външната печатна форма параметрите на процедурата „печат“ са пренаредени, така че трябваше да търся информация в други източници и да се занимавам с подсистемата отвътре .

Е, да започваме. Това, което получаваме в края, може да се използва като шаблон.

Първа стъпка- очевидно. Нека създадем нова обработка. Нека му присвоим произволно име: „Печатна проба“.

Стъпка втора.Нека създадем оформление. Тъй като имаме тестов пример, ще създам най-простото оформление, без нито един параметър.

Стъпка трета- Най-интересното. Отворете обектния модул и започнете да програмирате. Според БСП при регистриране на външна обработка тя (обработката) трябва да посочи какво може да прави, към какви обекти е прикрепена и как се нарича. На въпрос каква обработка може да направи, трябва да върне списък с команди - това е таблица със стойности. В нашия случай обработката може да изведе една отпечатана форма, така че ще има само една команда. За да генерираме таблица със стойности, ще дефинираме няколко процедури, които винаги ще бъдат еднакви във всички външни печатни форми:

//процедура, която подготвя структурата на командната таблица

Функция GetTableCommand()

// Създаване на празна командна таблица и колони в нея
Команди = Нова таблица със стойности;

// Как ще изглежда описанието на отпечатаната форма за потребителя
Commands.Columns.Add("View", NewTypeDescription("Row"));

// Името на нашето оформление, така че да можем да различим извиканата команда при обработката на печат
Commands.Columns.Add("Identifier", New TypeDescription("String"));

// Това задава как трябва да се извика командата за обработка
// Възможни опции:
// - OpeningForm - в този случай колоната с идентификатор трябва да показва името на формуляра, който системата ще отвори
// - CallClientMethod - извикване на процедурата за експортиране на клиента от модула за обработваща форма
// - Извикване на ServerMethod - извикване на сървърна процедура за експортиране от модула на обработващия обект
Commands.Columns.Add("Usage", New TypeDescription("Row"));

// Следващият параметър указва дали трябва да се показва известие, когато задача за обработка започне и приключи. Няма смисъл при отваряне на формуляра
Commands.Columns.Add("ShowAlert", NewTypeDescription("Boolean"));

// За отпечатана форма, тя трябва да съдържа низа PrintMXL
Commands.Columns.Add("Modifier", New TypeDescription("Row"));

Екип за връщане;

EndFunction

//Създава нов ред в командната таблица

Функция AddCommand(CommandTable, View, Identifier, Usage, ShowAlert = False, Modifier = "")
NewCommand = CommandTable.Add();
Нов отбор. Изглед = Изглед;
Нов отбор. Identifier= Идентификатор;
Нов отбор. Използване = Използване;
Нов отбор. ShowAlert=Покажи предупреждение;
Нов отбор. Modifier= Модификатор;
EndFunction

Функция InformationOnExternalProcessing() Експортиране
Параметри за регистрация = Нова структура;
ArrayDestinations = Нов масив;
Масив от задачи.Добавяне("Документ.Наемане");
Parameters.Insert("View", "PrintForm"); //може би - Попълване на обект, Допълнителен отчет, Създаване на свързани обекти...
Регистрационни параметри.Insert("Дестинация", масив от дестинация);
Parameters.Insert("Име", "Hello World"); // име, под което обработката ще бъде регистрирана в директорията на външната обработка
Параметри за регистрация.Insert("Версия", "1.0");
Parameters.Insert("SafeMode", TRUE);
Registration Parameters.Insert("Information", "SAMPLE");//ето как ще изглежда описанието на формуляра за печат за потребителя
CommandTable = GetCommandTable();
AddCommand(CommandTable, "Hello World", "Layout", "CallServerMethod", True, "MXL Print");
Параметри за регистрация.Insert("Команди", CommandTable);
ReturnRegistrationParameters;
EndFunction

Всъщност ще трябва да се занимавате с него всеки път, когато създавате нова външна форма за печат. От кода става ясно, че ще го свържем с документа „Наемане“, съответно вие пишете свой собствен. Нашият печатен формуляр ще се нарича „Здравей свят“, отново ще го променим на наш собствен. Тук би било удобно да напишете очевиден билборд в шаблона, така че да хваща окото, за да не забравите да го коригирате по-късно; според мен „Здравей свят“ е полезен. Версията е за вас, напишете каквото искате, ще се покаже под формата на елемент в директорията за външна обработка. Думата "ОБРАЗЕЦ" също се вижда само под формата на указател с печатни формуляри. След това добавяме команда, тук вторият параметър е името на бутона, това е, което потребителят ще види в документа в елемента от менюто „печат“.

Този набор от три процедури е достатъчен, за да се добави обработката към директорията на външната обработка; целият този объркващ код е услуга и няма нищо общо с алгоритъма за печат. Всъщност авторите на БСП ни принудиха да програмираме по толкова труден начин, че ако преди това веднага сте започнали да пишете функцията „Печат“, сега, когато пишете обработка от нулата, а не по образец, ще губите време за услугата. Преди това параметрите за регистрация бяха незадължителни и бяха посочени в оформлението на обработката, сега всичко изглежда много по-сериозно. Първото впечатление, когато видях това, беше страхотно, толкова много възможности, всичко е унифицирано... но на практика винаги създавам само една команда в една обработка и я свързвам с един документ. Тези. всъщност имам нужда от два реда за регистрация: име на обект, име на бутон. И тук всичко е така... добре, добре, не е аз да съдя.

Стъпка четвърта- не по-малко интересно.

функция PRINT?

Но не, сега това не е функция, а процедура.

Как мога да върна оформлението?

Изпратете го до функцията на модула на глобалната подсистема за печат.

добре

Ето текста на тази процедура:

Процедура Печат (Масив от обекти, Колекция от PrintForms, PrintObjects, Изходни параметри) Експорт
Ако PrintManagement.NeedPrintLayout(CollectionPrintForms, "Layout") Тогава
Управление на печат. Изход TabularDocumentIntoCollection(CollectionofPrintForms,
"Оформление", "Оформление",
GenerateTabDocumentSample(Масив от обекти, Отпечатани обекти));
endIf;
Край на процедурата

Сега за уточнение. Първият ред на процедурата съдържа малко неясно условие. Факт е, че когато извикаме процедурата за печат, системата ни предава таблица със стойности, която показва какво трябва да отпечатаме. По същество функцията ManagePrint.NeedPrintLayout(...) проверява за наличието в таблицата със стойности на ред, в който в колоната "Име" има ред с името на оформлението. На практика в повечето случаи нещото е безполезно, защото... нашата обработка ще може да генерира само един печатен формуляр. Тези. Това условие може да бъде пропуснато и няма да повлияе на производителността.

След това Управление на печат Изход TabularDocumentIntoCollection(...) - това е, което добавя табличното оформление, където е необходимо, така че след това да може да се покаже на екрана. Ако трябва да покажете своя документ с електронна таблица във вашия собствен прозорец (не в стандартен), тогава не извиквайте тази процедура, а просто напишете своя код тук.

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

След това GenerateTabDocumentSample(...) е функция, която трябва да напишем в модула за обработка и която връща табличен документ. В 100 от 100 случая ще бъде базиран на сървър, защото... трябва да получим стойността на детайлите от обектите, изброени в параметъра "Object Array".

Стъпка пета- създаване на оформление.

Ура, най-накрая ще се заемем с алгоритъма за оформление, извличане на данни и т.н.

Но в нашата извадка ще действаме прозаично и дори няма да коментирам тук)))

Функция GenerateTabDocumentSample(масив от обекти, печатни обекти)
tabDoc = Нов табличен документ;
оформление = GetLayout("Оформление");

AreaHeader = Layout.GetArea("Header");
tabDoc.Output(areaHeader);

Върнете TabDoc;
EndFunction

Това е всичко, благодаря за вниманието

Както е известно - без лист хартия ти...нито един сериозен бизнес не може без. И когато кажем, че 1C има някакъв вид електронни документи, веднага възниква въпросът как да ги отпечатаме на хартиен носител.

Процесът на отпечатване на електронен документ 1C се нарича печатна форма 1C.

Всеки документ може да има няколко отпечатани формуляра 1C. Например документът Продажби на стоки и услуги (т.е. продажба) се отпечатва в печатни форми 1C: TORG-12, Фактура, Товарителен лист, Сертификат за извършени услуги и т.н.

Същността на печатната форма 1C е шаблон (като документ на Excel), в който са посочени променливи. По време на процеса на печат текстът от електронния документ се замества с променливи. Шаблонът обикновено се съхранява в конфигурацията.

Проблемът с промяната на стандартен печатен формуляр 1C е, че обикновено не е препоръчително да променяте стандартната конфигурация, в противен случай ще бъде по-трудно да се актуализира. Поради това се появиха различни методи за използване на външни 1C печатни форми и започнаха да преоткриват колелото.

Външна форма за печат 1C е шаблон за печат, който се съхранява по някакъв начин отделно от самата конфигурация.

Всичко това обаче е теория. Как да създадете свой собствен печатен формуляр? Или още по-добре, как да направите промени в съществуващ?

Как се отпечатва 1C документ

За да отпечатате всеки 1C документ (който може да бъде отпечатан), трябва да щракнете върху бутона Печат в документа. 1C ще предложи да изберете 1C печатен формуляр за този документ от списъка.

Вляво от бутона Печат обикновено има бутон за бърз достъп до последната избрана форма за печат 1C.

Резултатът от печат изглежда така. За да го отпечатате на принтер, трябва да поставите курсора във формата за печат 1C, да натиснете Ctrl+P или бутона на принтера на панела с бутони или в менюто Файл/Печат.

Настройките за печат (полета, ориентация на листа и т.н.) се намират в менюто File/Page Setup. Можете също така да конфигурирате потребителските настройки за печат директно на принтера.

Откъде идва тази печатна форма?

Къде се намира печатният формуляр 1C?

Да отидем на конфигуратора. Намерете необходимия документ в прозореца за конфигуриране. Нека разширим неговия клон Layouts. Именно те се превръщат в печатната форма 1C при отпечатване.

Това обаче няма да е достатъчно - предложиха ни да изберем много повече опции при печат. Факт е, че много оформления на печатни формуляри 1C са скрити на друго място.

Нека се върнем в горната част на прозореца за конфигуриране на 1C. Нека отворим клона General, а след това клона General Layouts. Това е мястото, където се намират повечето оформления. Това важи особено за държавно регулираните печатни формуляри 1C - TORG 12, Фактура и др.

Между другото, не е трудно да забележите, че ще видите няколко оформления на TORG12 или Invoice. Защо? Лесно е за обяснение. Законите и изискванията се променят периодично. Но не можем просто да променим същото оформление - и ако трябва да отпечатаме документа от дата, която е по-ранна от датата на промяната. Затова се правят няколко оформления и в зависимост от датата на документа се използва правилният.

Но това не е всичко! Има и външни разпределения. Къде се съхраняват?

Нека се върнем в режим 1C Enterprise. През потребителското меню с администраторски права Операции/Директории изберете Външна директория за обработка.

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

За да работи това, трябва да направите външна обработка, която има процедура Print() в своя обектен модул с етикет Export, който организира процеса на печат.
Но ние изпреварваме себе си. Нека първо да разгледаме как е организирано оформлението на формата за печат 1C.

Оформление на печатна форма 1C

Оформлението на формата за печат 1C изглежда така.

Както можете да видите, той е разделен на блокове. Блоковете могат да бъдат хоризонтални (име вляво) или вертикални (име в горната част).

Самото оформление, такова каквото е, не се отпечатва. Отпечатват се отделни блокове. Програмистът в процедурата за обработка на печат определя реда на блоковете и броя на повторенията на всеки блок. В резултат на това се формира печатната форма.

За да зададете област, изберете няколко реда (или няколко колони) и от менюто изберете Таблица/Имена/Задаване на име. За да го премахнете, има и командата Remove name.

Името е необходимо, за да може зоната да бъде достъпна от програмния код. Името може да бъде присвоено не само на редове или колони, но и просто на няколко клетки. За да направите това, изберете клетките и изберете същото меню.

По подразбиране обаче имената на персонализираните клетки не се показват. За да ги видите, изберете елемент от менюто Таблица/Имена/Показване на именувани клетки.

И така, днес научихме, че 1C печатна форма се формира с помощта на оформление. Оформлението се състои от блокове – умело наречени области.

Типични (често използвани) блокове за печатни форми:

  • Header – показва се заглавието на документа
  • Ред – показва се един ред от таблицата, този блок се повтаря толкова пъти, колкото редовете трябва да бъдат отпечатани
  • Долен колонтитул – показва се краят на документа.

Сега трябва да се справим с

Извършва се в съответствие със стандартното оформление на отпечатания формуляр, вградено в приложението от разработчиците (това се нарича „доставено“ оформление).

Ако е необходимо, можете да промените стандартното оформление и в бъдеще да отпечатате документ въз основа на вашето лично („персонализирано“) оформление. За редактиране на оформлението на отпечатаната форма е предвиден механизъм за качване на локален компютър. Редактирането на оформлението се извършва в локалната версия на системното приложение 1C:Enterprise (по-специално, можете да използвате безплатното приложение 1C:Enterprise - Работа с файлове).


За да промените оформлението за печат:




Редактирането на оформлението на отпечатания формуляр е завършено; при отпечатване на документа ще се използва оформлението, в което са направени промените.

Ако искате да се върнете към предишното оформление за печат, щракнете върху бутона Използвайте стандартно оформление. В този случай редактираното оформление все още ще присъства на сървъра и може да бъде включено отново чрез натискане на бутона промяна.

Желаем ви приятна работа!

Как да вмъкна фирмено лого в оформление на печатен формуляр?

Ето конкретен пример за редактиране на оформление на печатен формуляр Фактури за плащане, а именно ще разгледаме как да вмъкнем изображение в него, например лого на фирма (това изображение трябва първо да бъде подготвено и запазено като графичен файл, например във формат png или jpg).


Така вече фактурите, които подготвяте за прехвърляне към вашите контрагенти, ще съдържат фирменото ви лого. За да добавите лого към други документи, ще трябва да повторите описаните стъпки за съответните печатни форми на тези документи.

Желаем ви приятна работа!


2024 г
newmagazineroom.ru - Счетоводни отчети. UNVD. Заплата и персонал. Валутни операции. Плащане на данъци. ДДС. Застрахователни премии