Pagdaragdag ng panlabas na form sa pag-print sa database. Pagdaragdag ng panlabas na form sa pag-print sa database Pagkonekta sa mga panlabas na form sa pag-print 1s 8.3

  • 15.07.2023

Isaalang-alang natin ang pagsulat ng pinakasimpleng naka-print na form sa 1s 8.1 - 8.2 gamit ang halimbawa ng pagsasaayos Enterprise accounting 2.0. Sabihin nating kailangan mong magsulat ng panlabas na naka-print na form para sa isang dokumento: ipakita ang pangunahing data ng dokumento, pati na rin mula sa tabular na bahagi Mga paninda: katawagan, presyo, dami at halaga.

Maaari mong i-download ang resultang halimbawa mula sa .

Sa configurator 1C Enterprises 8 lumikha ng panlabas na pagproseso ( File->Bago-> Panlabas na pagproseso ), itakda ang pangalan, lumikha ng mga kinakailangang detalye para sa panlabas na naka-print na form Sanggunian ng Bagay may uri DocumentLink. Pagbebenta ng Mga Produkto at Serbisyo.

Paglikha ng layout ng naka-print na form

Magdagdag ng bago layout, iwanan ang uri ng layout dokumento ng spreadsheet . Lumilikha kami ng tatlong lugar sa layout: Header, Data At Silong. Magagawa ito sa pamamagitan ng pagpili ng kinakailangang bilang ng mga linya at pag-click sa menu Talahanayan->Mga Pangalan->Magtalaga ng pangalan (Ctrl+Shift+N).

Pagkatapos nito, nagsisimula kaming maglagay ng teksto at mga parameter sa mga lugar. Ilalagay natin ito sa header pangalan ng naka-print na form, numero ng dokumento At organisasyon, at iguhit din ang mga hangganan ng header ng talahanayan at isulat ang mga pangalan ng mga column. Kapag gumagawa ng parameter sa mga katangian ng cell, sa tab na Layout dapat mong itakda ang property Pagpupuno sa kahulugan Parameter.

Sa lugar Data gumawa tayo ng mga parameter para sa pagpapakita ng mga row sa tabular section( Nomenclature, presyo atbp.), at sa lugar Silong para sa mga kabuuan ayon sa dami at halaga.

Programming

Pumunta tayo sa printing form object module Mga Aksyon->Buksan ang module ng object.

Gumawa tayo ng export function doon na mandatory para sa mga naka-print na form. Seal().

Function Print () I-export EndFunction

Sa function ay gagawa kami ng variable para sa dokumento ng spreadsheet, kung saan ang naka-print na form ay magiging output, nakukuha namin layout At mga lugar ng layout.

TabDoc = bagong TabularDocument; Layout = GetLayout("Layout" ); HeaderArea = Layout.GetArea("Header" ); AreaData = Layout.GetArea("Data" ); AreaFooter = Layout.GetArea("Footer" );

Punan natin ang mga parameter mga sumbrero at dalhin ito sa dokumento ng spreadsheet.

HeaderArea.Parameters.HeaderText = +LinkToObject.Number; HeaderArea.Parameters.Organization = LinkToObject.Organization; TabDoc.Output(HeaderArea);

Upang makakuha ng mga hilera ng talahanayan Mga paninda ginagamit namin ang kahilingan.

Kahilingan = bagong Kahilingan; Request.SetParameter("Link", ObjectLink); Query.Text = "PUMILI | Pagbebenta ng Mga Kalakal at Serbisyong Mga Kalakal. Nomenclature, | Pagbebenta ng mga Goods and Services Goods. Halaga, | Pagbebenta ng mga kalakal at Serbisyong mga kalakal. Presyo, | Benta ng mga Goods and Services Goods. Dami|MULA | Dokumento. Pagbebenta ng Mga Kalakal at Serbisyo. Mga Kalakal PAANO Magbebenta ng Mga Kalakal at Serbisyo ng Mga Kalakal|SAAN | Mga Pagbebenta ng Mga Kalakal at Serbisyong Mga Kalakal. Link = &Link";

Ipinapasa namin ang mga detalye sa parameter ng kahilingan Sanggunian ng Bagay, upang ipahiwatig sa kondisyon SAAN, na kailangan lang namin ng data mula sa dokumento kung saan kami nagmula sa naka-print na form. Upang makakuha ng sample na query, isasagawa muna namin ito at pagkatapos ay piliin ang mga row.

Piliin = Query.Run().Select();

Susunod sa loop punan namin ang mga parameter ng lugar Data para sa bawat linya ng sample ng dokumento at ipakita ang mga ito sa dokumento ng spreadsheet. Kinakalkula din namin ang kabuuang mga halaga sa loop dami At mga halaga. Hindi namin pupunan ang bawat parameter nang hiwalay, ngunit gagamitin ang pamamaraan Punan angPropertyValues((<Приемник>, <Источник>) mula sa pandaigdigang konteksto, kinokopya nito ang mga halaga ng ari-arian <Источника> sa mga ari-arian <Приемника> . Ginagawa ang pagtutugma ng mga pangalan ng property. Maaari mong basahin ang higit pa tungkol dito sa syntax assistant 1C Enterprise 8.

TotalSum = 0 ; TotalQuantity = 0 ; Habang Selection.Next() Loop FillPropertyValues(AreaData.Parameters,Selection); TotalSum = TotalSum + Sample.Sum; TotalQuantity = TotalQuantity + Sample.Quantity; TabDoc.Output(AreaData); EndCycle ;

Punan at ipakita ang lugar Silong.

AreaFooter.Parameters.TotalQuantity = TotalQuantity; AreaFooter.Parameters.TotalSum = TotalSum; TabDoc.Output(AreaFooter);

Ibinabalik ang nakumpletong dokumento ng spreadsheet mula sa function Seal().

ibalik ang TabDoc;

Kung gumagamit ka ng isa sa mga karaniwang configuration, pagkatapos ay ibalik ang spreadsheet na dokumento 1C ay ipapakita ang naka-print na form sa screen. Maaari mo ring gamitin ang paraan ng dokumento ng spreadsheet para sa output. Ipakita ().

5. Pagkonekta ng naka-print na form sa isang dokumento

SA karaniwang mga pagsasaayos 1C 8 Mayroong isang direktoryo para sa pagpaparehistro ng mga panlabas na naka-print na form Panlabas na Pagproseso. Upang kumonekta, pumunta sa menu sa enterprise mode Serbisyo->Mga karagdagang ulat at pagproseso->Mga karagdagang panlabas na naka-print na form.

Magdagdag ng bagong elemento ng direktoryo, i-load ang naka-print na form mula sa disk at piliin ang uri ng dokumento.

Ngayon sa dokumento Pagbebenta ng mga kalakal at serbisyo May lalabas na bagong printable.

Auto-registration ng naka-print na form

Upang matiyak na kapag kumokonekta sa isang form sa pag-print hindi mo kailangang piliin nang manu-mano ang uri ng dokumento, maaari mong i-configure awtomatikong pagpaparehistro. Upang gawin ito, magdagdag ng bagong layout at tawagan ito Settings_Auto-registration(ito ang tanging paraan) at sa unang cell nito ay nagsusulat tayo Dokumentasyon.<Наименование документа> (o Mga direktoryo.<Наименование справочника> ).

Ngayon, kapag nagkokonekta ng isang printing form, hihilingin sa amin na gamitin mga parameter ng auto-registration.

Kaya! Mayroong isang pagsasaayos (halimbawa, "Pamamahala ng Kalakalan", edisyon 10.3), at para dito kinakailangan na bumuo ng isang panlabas na naka-print na form. Halimbawa, kunin natin ang karaniwang dokumento na "Invoice para sa pagbabayad sa mamimili" (bagaman ang mga panlabas na naka-print na form ay maaaring malikha hindi lamang para sa mga dokumento, kundi pati na rin para sa mga direktoryo).

Halimbawa para sa 1C 8.3 (Mga pinamamahalaang form)

Maaaring tingnan ang isang halimbawa ng pagbuo ng panlabas na naka-print na form para sa isang pinamamahalaang aplikasyon.

Gawain

Bumuo ng isang panlabas na naka-print na form na makukuha mula sa dokumentong "Invoice para sa pagbabayad sa mamimili", at kung saan ay naglalaman ng pangalan ng organisasyon, ang katapat at isang listahan ng mga kalakal na may presyo, halaga at dami.

Go!

Ang unang bagay na kailangan mong gawin ay lumikha ng isang panlabas na processing file. Ang pagproseso ay dapat maglaman ng tatlong pangunahing punto:
  1. Ang attribute na "Object Link" na may uri na "DocumentLink.Invoice for Payment to Buyer"
  2. Ang layout na ipi-print
  3. I-export ang Function na "Print()" na nagbabalik ng spreadsheet na dokumento
Ang mga pagkilos na ito ay makikita sa Figure 1

"Pagguhit ng layout"

Maglalaman ang aming layout ng dalawang lugar:
  1. Ang pamagat (header) ng dokumento (sa lugar na ito ang mga pangalan ng organisasyon at ang katapat ay ilalagay), at ang header ng talahanayan (na may mga pangalan ng mga column)
  2. Table na may mga kalakal (mga column na may pangalan, dami at halaga)
Ipinapakita ng Figure No. 2 ang layout ng panlabas na form sa pagpi-print. Pakitandaan na ang mga cell ng talahanayan at header ay naglalaman ng mga parameter, hindi lamang teksto.

Function na "Print()"

Ang form ay halos handa na. Ang natitira na lang ay magsulat ng programmatic filling ng mga field ng spreadsheet na dokumento. Ang mga pagkilos na ito ay ginagawa sa processing object module, sa isang function na tinatawag na "Print", na DAPAT ma-export.
Stage No. 1. Pagtanggap ng data para sa header, pagpuno sa mga parameter ng header, at pag-output nito sa isang spreadsheet na dokumento TabularDocument = Bagong TabularDocument; Layout = GetLayout("OurLayout"); Kahilingan sa Data = Bagong Kahilingan("PUMILI | REPRESENTASYON(Invoice para sa Pagbabayad sa Mamimili. Counterparty) BILANG Counterparty, | REPRESENTASYON(Invoice para sa Pagbabayad sa Mamimili. Organisasyon) BILANG Organisasyon | MULA | Dokumento. Invoice para sa Pagbabayad sa Mamimili BILANG Invoice para sa Pagbabayad sa Mamimili | SAAN | Invoice para sa Pagbabayad sa Mamimili. Link = &Link"); Data Request.SetParameter("Link", ObjectLink); Header = DataRequest.Execute().Select(); Cap.Next(); Lugar = Layout.GetArea("Header"); Area.Options.Fill(Header); TabularDocument.Output(Area); Yugto Blg. 2. Pagtanggap ng tabular data at line-by-line na output ng mga produkto
Data Request.Text = "PUMILI | _Products.Line Number, | REPRESENTATION(_Products.Nomenclature) AS Nomenclature, | _Products.Quantity, | _Products.Price, | _Products.Amount |FROM | Document.Invoice for Payment to the Buyer.Products AS _Mga Produkto |SAAN | _Mga Produkto. Link = &Link"; Fetch = DataRequest.Execute().Select(); Lugar = Layout.GetArea("Data"); Habang Selection.Next() Loop Area.Parameters.Fill(Selection); TabularDocument.Output(Area); EndCycle; Yugto Blg. 3. Ibalik ang dokumento ng spreadsheet at function ng pag-print ibalik ang TabularDocument;

Pagdaragdag ng aming panlabas na form sa pag-print sa 1C

Pumunta sa menu na "Serbisyo - Panlabas na mga form sa pag-print at pagproseso - Panlabas na mga form sa pag-print"

Sa window ng paglikha ng elemento na bubukas, gawin ang mga sumusunod na pagkilos:

  1. Nilo-load ang external processing file
  2. Ipinapahiwatig namin kung para sa aling dokumento ng pagsasaayos (o direktoryo) ang naka-print na form ay inilaan
  3. Pag-record ng mga pagbabago

Print tayo!

Buksan ang anumang dokumento na "Invoice para sa pagbabayad sa mamimili" (na may nakalagay na tabular na bahagi na "Mga Produkto", dahil doon namin nakukuha ang data upang punan), i-click ang pindutang "I-print", sa window na bubukas, piliin ang OUR printed form, at i-click ang "I-print"


PANSIN! Ang development algorithm na ito ay angkop LAMANG para sa isang "Regular na aplikasyon". Ang mga printable para sa Application Managed configuration ay iba!

Ang file ng naka-print na form na ipinapakita sa halimbawa ay maaaring

Pumunta tayo sa Serbisyo->Mga karagdagang ulat at pagproseso->Opsyonal na panlabas na mga plato sa pagpi-print.

Ang form ng listahan ng direktoryo na may mga panlabas na naka-print na form ay bubukas. Sa tuktok na menu ng listahan, i-click Idagdag. Ang form para sa paglikha ng isang item sa direktoryo ay lilitaw.

I-click ang pindutang Buksan at piliin ang file na may nais na form sa pag-print. Pagkatapos nito, kung kinakailangan, itakda ang nais na pangalan (Pangalan ng pangalan).

Kung ang naka-print na form ay naglalaman ng mga parameter ng auto-registration, isang mensahe tungkol dito ay lalabas. I-click Oo.Kung hindi ito mangyayari, kailangan mong tukuyin kung aling dokumento ang iuugnay sa form na ito. Upang gawin ito, kailangan mong magdagdag ng linya sa tabular na bahagi na "Affiliation of the printed form", kung saan sa "Object representation" patlang piliin ang uri ng dokumento kung saan iniuugnay namin ang form. Dahil sa aming halimbawa ito ay isang pagkilos ng pagtanggal ng mga materyales, pipiliin namin ang dokumento ng Request-invoice.

Pagkatapos nito, pumunta sa anumang dokumento na Request-invoice, i-click ang I-print, at piliin ang bagong idinagdag na form.

Para sa BP 3.0, ZUP 3.0, UT 11, KA 2.0, ERP 2.0.

Upang ipakita ang pagdaragdag ng naka-print na form sa isang pinamamahalaang interface, ipapakita ko ang pagdaragdag ng panlabas na anyo ng isang invoice para sa pagbabayad sa isang dokumento na may parehong pangalan sa Accounting 3.0.

Pumunta kami sa kaukulang seksyon ng programa:


Kinakailangan na ang bandila para sa paggamit ng mga panlabas na ulat at pagproseso ay naka-on; sundin ang hyperlink sa listahan ng mga panlabas na bagay:

Sa listahang bubukas, i-click Lumikha:


Sa dialog box, piliin ang nais na file:


Ang panlabas na object card ay napunan: sa layout makikita natin ang uri ng base object kung saan ang form ay ikakabit at sa ibaba lamang ng pangalan nito:


Isulat at isara natin ang anyo ng nilikhang panlabas na bagay.

Ngayon pumunta tayo sa anumang dokumento Invoice para sa pagbabayad sa mamimili at ipakita ang print menu:


Ang mga panlabas na naka-print na form para sa isang regular na aplikasyon (para sa pagsasaayos ng Enterprise Accounting 2.0, Salary at Human Resources Management 2.5, Trade Management 10.3, atbp.) ay ginawa nang simple kumpara sa mga panlabas na naka-print na form para sa isang pinamamahalaang aplikasyon.

Bakit lumikha ng panlabas na mga form sa pag-print?

Ang bentahe ng isang panlabas na plato sa pagpi-print kumpara sa isang maginoo ay ang pag-iwas nito sa mga pagbabago sa pagsasaayos base ng impormasyon. Nangangahulugan ito na ang proseso ng mga kasunod na pag-update ng configuration ay hindi magiging kumplikado. Bilang karagdagan, ang mga panlabas na form sa pag-print kasama ang panlabas na pagproseso ay ang tanging opsyon para sa pagpapalawak ng pag-andar mga pangunahing bersyon 1C configurations na hindi na mababago sa lahat.

At isang huling bagay: ang mga panlabas na naka-print na form ay mas madaling kopyahin, dahil sila ay isang hiwalay na file na maaaring mabilis na konektado sa infobase.

Paano lumikha ng isang panlabas na form sa pag-print

Tingnan natin ang proseso ng paglikha ng panlabas na 1C printed form na hakbang-hakbang:

  1. Lumilikha kami ng panlabas na pagproseso. Upang gawin ito, piliin ang item ng menu sa configurator File - Bago... At sa dialog box na bubukas - Panlabas na pagproseso.
  2. Gumawa ng external processing attribute na may pangalan Sanggunian ng Bagay. Ang uri ng katangian ay isang link sa isang direktoryo o dokumento kung saan gumagawa ng panlabas na naka-print na form. Ang parehong form ay maaaring gamitin para sa ilang mga uri ng mga bagay, sa kasong ito ang uri ng data ng katangian Sanggunian ng Bagay dapat composite.
  3. Sa object module gumawa kami ng export function na may pangalan selyo, na dapat magbalik ng naka-print na dokumento ng spreadsheet.

Madalas na nangyayari na kailangan mong bahagyang ayusin ang layout ng isang umiiral na naka-print na form at gawin itong panlabas. Halimbawa, idagdag ang selyo ng organisasyon at ang lagda ng manager sa layout.

Paglikha ng isang panlabas na form sa pag-print batay sa isang karaniwang isa na may maliit na pagbabago

Isaalang-alang natin ang pamamaraang ito gamit ang halimbawa ng paglikha ng panlabas na naka-print na anyo ng isang unibersal na dokumento ng paglilipat para sa isang dokumento Pagbebenta ng mga kalakal at serbisyo 1C: Accounting. Mag-iiba ito sa karaniwang naka-print na form sa pamamagitan ng pagkakaroon ng selyo ng organisasyon.

  1. Paglikha ng panlabas na pagproseso gamit ang mga props Sanggunian ng Bagay, uri ng datos - DocumentLink. Pagbebenta ng Mga Produkto at Serbisyo.
  2. Nahanap namin ang layout ng karaniwang UPD na naka-print na form (ito ay matatagpuan sa pangkalahatang mga layout) at kopyahin (i-drag) ito sa panlabas na window ng pagproseso. Ang mga layout ng iba pang mga naka-print na form ay maaaring matatagpuan sa mismong mga dokumento o sangguniang libro.
  3. Ginagawa namin ang mga kinakailangang pagbabago sa kinopyang layout ng naka-print na form.
  4. Nalaman namin ang function na responsable para sa pagbuo ng naka-print na form. Dapat ibalik ng function na ito ang nabuong dokumento ng spreadsheet. Kopyahin ang mga nilalaman nito sa export function Seal() sa panlabas na processing object module.
    Sa aming kaso ito ang function PrintUniversalTransferDocument() Export mula sa module ng object object Pagbebenta ng mga kalakal at serbisyo.
    Kung ang mga pagbabago sa layout ay makabuluhan (mga lugar at/o mga parameter ay binago), pagkatapos ay dapat gawin ang mga naaangkop na pagsasaayos sa print function.
  5. Sinusubukan naming i-save ang panlabas na pagproseso. Gayunpaman, malamang na makakatanggap ka ng mga mensahe ng error na nagpapahiwatig na ang ilan sa mga pamamaraan at function na tinatawag ng print function ay nawawala. Ang mga function at procedure na ito ay dapat matagpuan sa source na dokumento at makopya din sa external processing object module. O ayusin ang link kung na-export ang orihinal na function o procedure.
  6. (hindi kinakailangan). Upang subukan ang isang panlabas na form sa pag-print, ito ay maginhawa upang gumawa ng isang form kung saan ilalagay ang mga props Sanggunian ng Bagay. Pindutan Ipatupad dapat tumawag ng procedure Seal() mula sa object module. Upang gawin ito, ang kaganapan ng pag-click sa pindutan ay binibigyan ng isang pamamaraan:

Hindi lihim na, bagama't sa kasalukuyan ay mas maraming kumpanya ang lumilipat sa pamamahala ng elektronikong dokumento, ang lumang kasabihang "Kung walang papel, ikaw ..." ay hindi nawawala ang kaugnayan nito. Nangyayari na sa ilang kadahilanan ang mga awtoridad sa inspeksyon ay pangunahing interesado sa mga dokumento ng papel. Samakatuwid, kung aktibong ginagamit mo ang 1C: Accounting o Enterprise program para sa pinansiyal na kontrol, mahalagang malaman kung paano mag-print ng isang elektronikong dokumento na nilikha gamit ang programa.

Binibigyang-daan ka ng mga naka-print na form sa 1C na baguhin ang isang elektronikong dokumento sa isang naka-print na bersyon.

Para dito, nagbigay ang developer ng mahusay na tool - Print Designer. Sa tulong nito, maaari kang lumikha ng mga dokumento kung saan maaari mong tukuyin ang anumang data na kailangan mo, at hindi lamang ng ilang karaniwang mga form. Ito ay totoo lalo na para sa mga dokumentong iyon na walang mahigpit na kinokontrol na form, na hindi maaaring baguhin sa anumang pagkakataon. Ito, sa partikular, ay maaaring magsama ng isang pagkilos ng pagkumpleto ng trabaho, ilang mga invoice o pagbabayad.

Sa gabay na ito, iminumungkahi naming maunawaan ang mga kakayahan ng Print Designer, isaalang-alang kung anong mga uri ng mga form sa pag-print ang maaaring mayroon at kung paano sila naiiba sa isa't isa. Ipapakita rin namin sa isang halimbawa kung paano i-print ang nilikha na form.

Una, ito ay nagkakahalaga ng pag-unawa kung ano, sa pangkalahatan, ang isang naka-print na form ay nasa 1C 8. Ito ay isang 1C spreadsheet na template (tulad ng Excel), kung saan ang ilang mga variable na hilera ay tinukoy, na puno ng data mula sa programa kapag gumuhit ng isang dokumento.

Ang mga form sa pag-print ay may dalawang uri:

  • Panloob (built-in). Ang mga ito ay naka-imbak sa pagsasaayos ng programa, kaya mas mahusay na huwag baguhin ang mga ito, dahil maaaring lumitaw ang mga problema sa paglaon sa panahon ng pag-update.
  • Panlabas - nakaimbak nang hiwalay sa mga setting ng programa. At sa kanilang tulong, maaari kang lumikha at maghanda para sa pag-print ng isang dokumento ng halos anumang kumplikado, nang hindi naaapektuhan ang pagsasaayos ng programa ng 1C 8.

Paano pumili ng mga nakahandang layout? Pagkatapos mong magsagawa ng papasok o papalabas na operasyon, halimbawa, pagsulat ng ulat ng natapos na trabaho, i-click mo ang pindutang "I-print" upang i-print ang mga dokumento. Ang listahan ay nagpapakita ng isang listahan ng mga napi-print na form na napunan na ng inilagay na data tungkol sa transaksyon na isinagawa at sa iyong kumpanya. Sa pamamagitan ng pag-click sa uri ng dokumentong kailangan mo, magbubukas ka ng preview window upang matiyak mong tama ang data na iyong pinunan. Ang print button ay nagpi-print ng dokumento sa printer.

Nang wala na ang mga pangunahing kaalaman, alamin natin kung saan naka-imbak ang lahat ng iyong napi-print. Lumipat tayo sa susunod na tanong.

Saan nakaimbak ang mga naka-print na form?

Maaari mong tingnan ang mga built-in na naka-print na form sa parehong configurator mode at sa normal na enterprise mode. Sa unang kaso, kailangan mong i-click ang kaukulang pindutan sa window ng pagsisimula kapag sinimulan ang programa. Makikita mo ang menu ng programa, hanapin ang sangay na "Mga Pagbebenta ng Mga Produkto at Serbisyo", na naglalaman ng item na "Mga Layout". Madalas itong naglalaman lamang ng dalawang item - "Invoice" at "Act". Nasaan ang iba kung gayon, dahil mas malawak ang listahan? Nagtatago lang sila sa ibang lugar. Kailangan mong buksan ang "General" - "General Layouts" na sangay, halos lahat ng mga layout ay naka-imbak dito.

Sa pangalawang kaso, kailangan mong pumunta sa seksyon ng menu na "Administration" - "Mga form sa pag-print, mga ulat at pagproseso" - "Mga layout ng mga naka-print na form". Ipapakita nito ang lahat ng mga layout ng dokumento. Kapansin-pansin na maaari silang i-edit sa parehong menu.

Tulad ng para sa mga panlabas na form, kailangan mo munang likhain ang mga ito sa pamamagitan ng configurator mode, o sa pamamagitan ng pag-download ng isang yari na file, at pagkatapos ay ikonekta ang mga ito sa menu na "Administration" - "Mga naka-print na form, ulat at pagproseso" - "Mga karagdagang ulat at pagproseso”. Pag-uusapan natin ito mamaya.

Paglikha ng isang simpleng form gamit ang built-in na Print Designer

Ang ganitong naka-print na form ay hindi nagpapahiwatig ng posibilidad ng malalim na pag-edit, dahil magkakaroon ito ng pagbabago sa pagsasaayos ng programa, pati na rin ang mga karagdagang paghihirap kapag ina-update ito. Gayunpaman, kung ikaw ay ganap na nasiyahan sa karaniwang form o nais na bungkalin ang mga intricacies ng paglikha ng isang panlabas na form, ang pamamaraang ito ay ganap na angkop para sa iyo.

  1. Una sa lahat, ilunsad sa mode ng Configurator, hanapin ang dokumentong kailangan mo, halimbawa, Mga Pagbebenta ng Mga Produkto at Serbisyo, sa mga katangian ng dokumento pumunta sa Mga Aksyon - Mga Taga-disenyo - Taga-disenyo ng Pag-print.
  2. Kapag sinenyasan para sa isang opsyon sa trabaho, piliin ang Mga Regular na Form.
  3. Bigyan ng pangalan ang bagong layout, halimbawa, "Print Invoice."
  4. Piliin ang mga detalye na gusto mong makita sa header ng dokumento. Bukod dito, dapat na piliin ang mga ito sa pagkakasunud-sunod kung saan ipapakita ang mga ito. Upang pumili, kailangan mong i-highlight ang item sa kaliwang column gamit ang cursor at pindutin ang arrow sa gitna ng screen upang lumabas ang mga detalye sa kanang column.
  5. Markahan ang mga detalye na ipapakita sa seksyon ng talahanayan. Ang pagpili ng mga detalye ay sumusunod sa parehong prinsipyo tulad ng sa nakaraang talata.
  6. Sa parehong paraan, piliin ang mga detalye ng ibabang bahagi ng dokumento.
  7. Sa huling yugto ng paglikha, piliin kung gusto mong mag-print kaagad nang walang preview, kung kailangan mong protektahan ang talahanayan, at pagkatapos ay kumpirmahin ang paglikha ng form gamit ang OK na pindutan.

Paglikha ng panlabas na form sa pag-print

Ang mga form na ginawa sa pamamagitan ng Print Designer ay maihahambing sa isang visual na software editor, kapag hindi mo ipinasok ang lahat ng code nang manu-mano, ngunit binubuo lamang ito mula sa mga iminungkahing elemento. Ang panlabas na form ay isang file na may manu-manong nakasulat na code ng programa, na naglalarawan sa pamamaraan para sa pagpapakita ng data sa screen. Ito ang nagbibigay-daan sa iyong i-edit ang naka-print na form gayunpaman ang gusto mo, na tumutukoy sa ganap na anumang data sa anumang pagkakasunud-sunod.

Ang isang karagdagang kalamangan ay na, kahit na hindi mo maintindihan o hindi mo nais na maunawaan ang mga intricacies ng 1C 8 programming, maaari mong ipagkatiwala ang pamamaraang ito sa mga propesyonal. Magagawa nilang ihanda ang kinakailangang form para sa iyo at ibigay ito sa iyo bilang isang handa na file, na maaari mo lamang i-activate sa ilang mga pag-click ng isang pindutan.

Ngayon ay pag-usapan natin ang tungkol sa mismong pamamaraan. Tingnan natin ang halimbawa ng paglikha ng layout ng "Invoice" para sa dokumentong "Mga Benta (mga gawa, mga invoice)".

  1. Buksan ang 1C 8 program sa Configurator mode.
  2. I-click ang File - Bago - External Processing, bigyan ito ng pangalan (hindi ito dapat magsama ng mga puwang), pagkatapos ay i-click ang Actions - Open Object Module.
  3. Sa input field na bubukas, ipasok ang sumusunod na code (ang mga halaga na maaaring baguhin sa iyong sarili ay naka-highlight sa dilaw):

Function InformationOnExternalProcessing() Export
Mga Parameter ng Pagpaparehistro = Bagong Istraktura;
ArrayDestinations = Bagong Array;
Array of Assignments.Add("Document.Sales of Goods and Services"); //Tukuyin ang dokumento kung saan kami gumagawa ng panlabas na pag-print. anyo
Mga Parameter ng Pagpaparehistro.Insert("View", "PrintForm"); //maaaring - PrintableForm, Pagpuno ng Bagay, Karagdagang Ulat, Paglikha ng Mga Kaugnay na Bagay...
Mga Parameter ng Pagpaparehistro.Insert("Destination", Array of Destination);
Mga Parameter ng Pagpaparehistro.Insert("Pangalan", "Order para sa pagbebenta ng mga kalakal"); //pangalan kung saan irerehistro ang pagproseso sa direktoryo ng panlabas na pagproseso
Mga Parameter ng Pagpaparehistro.Insert("SafeMode", FALSE);
Mga Parameter ng Pagpaparehistro.Insert("Bersyon", "1.0");
Mga Pagpipilian sa Pagpaparehistro.Insert("Impormasyon", "Ang napi-print na form na ito ay nilikha bilang isang sample");
CommandTable = GetCommandTable();
AddCommand(CommandTable, "External Order", "ExternalOrder", "CallServerMethod", True, "MXL Print");
Mga Parameter ng Pagpaparehistro.Insert("Commands", CommandTable);
ReturnRegistrationParameters;
EndFunction // Impormasyon TUNGKOL SA Panlabas na Pagproseso()
Function na GetTableCommand()
Mga Utos = Bagong ValueTable;
Commands.Columns.Add("View", New TypeDescription("Row"));//kung ano ang magiging hitsura ng paglalarawan ng form sa pag-print para sa user
Commands.Columns.Add("Identifier", New TypeDescription("String")); //print form na pangalan ng layout
Commands.Columns.Add("Usage", NewTypeDescription("Row")); //Tumawag sa ServerMethod
Commands.Columns.Add("ShowAlert", NewTypeDescription("Boolean"));
Commands.Columns.Add("Modifier", NewTypeDescription("Row"));
Bumalik na Koponan;
EndFunction
Pamamaraan AddCommand(CommandTable, View, Identifier, Usage, ShowAlert = False, Modifier = "")
NewCommand = CommandTable.Add();
NewCommand.View = View;
NewCommand.Identifier = Identifier;
NewCommand.Use = Gamitin;
NewCommand.ShowAlert = ShowAlert;
NewCommand.Modifier = Modifier;
Katapusan ng Pamamaraan

  1. I-save ang layout para sa pag-print bilang isang file sa anumang folder sa iyong hard drive, pangalanan ito nang naaangkop.

Ipasok sa parehong dokumento ang pamamaraan para sa pagsisimula ng pag-print mula sa menu ng programa (ang mga utos na naka-highlight sa dilaw ay dapat tumugma sa linya):

Magdagdag ng Command(Talahanayan ng Mga Utos, "Panlabas na Pagkakasunud-sunod", "Panlabas na Pagkakasunud-sunod"):
Procedure Print(Array of Objects, Collection of PrintForms, PrintObjects, Output Parameters) Export
Pamamahala sa Pag-print.Output TabularDocumentIntoCollection(
Koleksyon ng mga Form sa Pag-print,
"Panlabas na pagkakasunud-sunod"
"Panlabas na pagkakasunud-sunod"
GeneratePrintForm(ArrayofObjects, PrintObjects);
EndProcedure // Print()

  1. Magpasok ng layout para sa pagpuno ng naka-print na form sa pamamagitan ng pag-click sa pangalan ng panlabas na form sa ibabang kaliwang sulok at pagpili sa "Mga Layout" - "Magdagdag" - "Spreadsheet Document", bigyan ito ng pangalan. Pagkatapos nito, punan ang spreadsheet ng kinakailangang data. Halimbawa:
    • Order para sa product No. [Realization Number] mula sa [Realization Date] - right-click - Properties - Layout - Filling - Template.
    • Gumawa ng mga column na gusto mong lumabas sa iyong dokumento.
    • Piliin ang ipinasok na mga cell, i-click ang Talahanayan - Mga Pangalan - Magtalaga ng pangalan - ilagay ang pangalang "Header".
    • Kopyahin ang hilera gamit ang mga header ng talahanayan, piliin ang mga ito, i-right-click - Properties - Layout - Pagpuno - Parameter.
    • Pumili ng isang linya at pangalanan ito, halimbawa, "StringTCH".
    • Gumawa ng footer: isulat ang Kabuuan, ang cell kung saan dapat ipakita ang kabuuang halaga, pangalanan itong TotalTotal, piliin ang "Mga Parameter" sa mga katangian.
    • Tukuyin ang taong responsable, at sa mga katangian ng cell para sa pagpapakita ng apelyido, tukuyin ang "Mga Parameter".
    • Piliin ang mga row sa ibaba at pangalanan ang hanay na "Footer".
  2. Ngayon sa input window, ipasok ang function para sa pagbuo ng isang naka-print na form:

Function GeneratePrintForm(LinkToDocument, PrintObjects)
TabularDocument = Bagong TabularDocument;
TabularDocument.Pangalan ng Mga Parameter ng Pag-print = "PRINT_PARAMETERS_Invoice para sa Pagbabayad sa VRTU";
Pagproseso ng Layout = GetLayout("Payment InvoiceExternal");
//punan ang header
AreaHeader = ProcessingLayout.GetArea("Header");
AreaHeader.Parameters.DocumentNumber = LinkToDocument.Number;
AreaHeader.Parameters.DocumentDate = LinkToDocument.Date;
AreaHeader.Parameters.OrganizationName = LinkToDocument.Organization.Name;
//output ang header sa isang spreadsheet na dokumento
TabularDocument.Output(HeaderArea);
//punan ang mga linya ng PM
RowArea = ProcessingLayout.GetArea("ROW");
Para sa Bawat Kasalukuyang Linya Mula sa Document Link.Products Cycle
FillPropertyValues(RowArea.Parameters, CurrentRow);
TabularDocument.Output(RowArea);
EndCycle;
//punan ang basement
AreaFooter = ProcessingLayout.GetArea("Footer");
AreaFooter.Parameters.QuantityTotal = LinkToDocument.Products.Total("Dami");
AreaFooter.Parameters.AmountTotal = LinkToDocument.Products.Total("Amount");
AreaFooter.Parameters.ResponsibleName = LinkToDocument.Manager.Name;
//output ang footer sa isang spreadsheet na dokumento
TabularDocument.Output(AreaFooter);
TabularDocument.AutoScale = True;
ibalik ang TabularDocument;
EndFunction

  1. I-save ang iyong mga pagbabago sa dokumento.
  2. Ngayon ay kailangan mong i-activate ang nilikha na form. Para dito:
    • Pumunta sa "Pamamahala" - "Mga naka-print na form, ulat at pagproseso" - "Mga karagdagang ulat at pagproseso".
    • I-click ang pindutang "Lumikha", piliin ang panlabas na file ng form sa Explorer, kumpirmahin ang iyong entry gamit ang pindutang "I-save at Isara".
  3. Upang suriin, pumunta sa Mga Benta - Mga Benta (mga gawa, mga invoice), i-click ang pindutang "I-print", piliin ang iyong form at suriin na ito ay napunan nang tama.
  4. I-print ang dokumento kung kinakailangan.

Konklusyon

Tumingin kami sa isang halimbawa ng paglikha ng napi-print na form sa pamamagitan ng Print Designer at sa pamamagitan ng tool para sa paglikha ng mga panlabas na form. Umaasa kami na ang lahat ay gagana para sa iyo. Iwanan ang iyong mga katanungan sa mga komento.