1c väliste trükivormide loomine. Väljaanded

Nagu teada - ilma paberita..ükski tõsine äri ei saa ilma. Ja kui me ütleme, et 1C-l on mingisugused elektroonilised dokumendid, tekib kohe küsimus, kuidas neid paberkandjal printida.

Elektroonilise dokumendi 1C printimise protsessi nimetatakse vormiks 1C.

Igal dokumendil võib olla mitu 1C prinditud vormi. Näiteks dokument Kaupade ja teenuste müük (st müük) trükitakse 1C-vormingus: TORG-12, Arve, Saateleht, Sertifikaat osutatud teenuste kohta jne.

Trükitud vormi 1C olemus on mall (nt Exceli dokument), milles on määratud muutujad. Printimise käigus asendatakse muutujad elektroonilise dokumendi tekstiga. Mall salvestatakse tavaliselt konfiguratsioonis.

Standardse 1C trükitud vormi muutmise probleem seisneb selles, et tavaliselt ei ole soovitatav standardset konfiguratsiooni muuta, vastasel juhul on selle värskendamine keerulisem. Seetõttu ilmusid erinevad meetodid väliste 1C-trükivormide kasutamiseks ja hakkasid ratast uuesti leiutama.

Väline 1C-printimisvorm on printimismall, mida hoitakse kuidagi konfiguratsioonist eraldi.

See kõik on aga teooria. Kuidas luua oma trükitud vorm? Või veel parem – kuidas olemasolevas muudatusi teha?

Kuidas 1C dokumenti prinditakse

Mis tahes 1C dokumendi (mida saab printida) printimiseks peate klõpsama dokumendis nuppu Prindi. 1C pakub selle dokumendi jaoks nimekirjast 1C prinditud vormi valimist.

Nupu Prindi vasakul pool on tavaliselt kiire juurdepääsunupp viimati valitud 1C printimisvormile.

Prinditulemus näeb välja selline. Printerile printimiseks tuleb kursor viia 1C printimisvormi, vajutada Ctrl+P või printeri nuppu nupupaneelil või menüüs Fail/Prindi.

Prindisätted (veerised, lehe suund jne) asuvad menüüs File/Page Setup. Samuti saate konfigureerida kasutaja sätted otse printerisse printimiseks.

Kust see trükivorm pärit on?

Kus 1C trükitud vorm asub?

Läheme konfiguraatorisse. Otsige konfiguratsiooniaknas üles vajalik dokument. Avame selle küljenduste haru. Just nemad muutuvad printimisel 1C-printimisvormiks.

Sellest aga ei piisa – meile pakuti printimisel valida palju rohkem võimalusi. Fakt on see, et paljud 1C prinditud vormide paigutused on peidetud teises kohas.

Läheme tagasi 1C konfiguratsiooniakna ülaossa. Avame haru Üldine ja seejärel haru Üldised paigutused. See on koht, kus enamik paigutusi asub. See kehtib eriti riiklikult reguleeritud trükivormide 1C - TORG 12, Arve jne kohta.

Muide, pole raske märgata, et näete mitut TORG12 või Arve paigutust. Miks? Seda on lihtne seletada. Seadused ja nõuded muutuvad perioodiliselt. Kuid me ei saa lihtsalt sama kujundust muuta – ja kui me peame printima dokumendi kuupäevast, mis on muutmiskuupäevast varasem. Seetõttu tehakse mitu paigutust ja olenevalt dokumendi kuupäevast kasutatakse õiget.

Kuid see pole veel kõik! Samuti on välised paigutused. Kus neid hoitakse?

Pöördume tagasi 1C Enterprise režiimi. Valige administraatoriõigustega kasutajamenüüst Operations/Directories välise töötlemise kataloog.

Selle kataloogi read, millel on vorm Trükivorm, lisavad tabelis Trükivormi omandiõigus määratud dokumendile printimisvalikud (pildil on see Kaupade ja teenuste müük).

Selle toimimiseks peate tegema välise töötluse, mille objektimoodulis Eksport on protseduur Print(), mis korraldab printimise protsessi.
Aga me läheme endast ette. Vaatame kõigepealt, kuidas on korraldatud 1C trükivormi paigutus.

Trükivormi 1C küljendus

1C trükivormi paigutus näeb välja selline.

Nagu näete, on see jagatud plokkideks. Plokid võivad olla horisontaalsed (nimi vasakul) või vertikaalsed (nimi ülaosas).

Paigutust ennast, nagu see on, ei prindita. Trükitakse üksikud plokid. Trükitöötlusprotseduuri programmeerija määrab plokkide järjekorra ja iga ploki korduste arvu. Selle tulemusena moodustub trükitud vorm.

Piirkonna määramiseks valige mitu rida (või mitu veergu) ja valige menüüst Tabel/Nimed/Assign a name. Selle eemaldamiseks on olemas ka käsk Eemalda nimi.

Nime on vaja selleks, et alale pääseks ligi programmikoodist. Nime saab määrata mitte ainult ridadele või veergudele, vaid ka lihtsalt mitmele lahtrile. Selleks valige lahtrid ja valige sama menüü.

Vaikimisi aga kohandatud lahtrinimesid ei kuvata. Nende nägemiseks valige menüükäsk Tabel/Nimed/Kuva nimega lahtrid.

Nii saime täna teada, et 1C trükitud vorm moodustatakse paigutuse abil. Paigutus koosneb plokkidest – nutikalt nimetatud aladeks.

Tüüpilised (tavaliselt kasutatavad) plokid trükiplaatide jaoks:

  • Päis – kuvatakse dokumendi pealkiri
  • Rida – kuvatakse üks tabeli rida, seda plokki korratakse nii mitu korda, kui palju ridu on vaja printida
  • Jalus – kuvatakse dokumendi lõpp.

Nüüd peame tegelema

Elu läheb edasi, seadusandlus muutub, arendaja annab välja konfiguratsioonivärskendused ja meil on jälle valik: installida värskendus ise või helistada uuesti programmeerijale, et “installida uus versioon”...

Tutvume trükivormide muutmise mehhanismiga ilma konfiguratsiooni muutmata.


Iga 1C-d kasutava raamatupidaja praktikas on kunagi tekkinud vajadus enda jaoks konfiguratsiooni muuta: mõni korrigeeris arvel oleva hinna või summa täpsust, mõni lisas logo ja korrigeeris arve välimust. Kõik oleks hästi, kuid aja jooksul koguneb väga palju selliseid muudatusi ja kui saabub aeg versiooni värskendamiseks, tekib dilemma: kas kaotada kõik tehtud muudatused või kutsuda programmeerija, kes viiks kõik muudatused üle uuele versioonile (või kursus lisatasu eest). Kuidas olla? Konfiguratsioonide värskendamise kuidagi lihtsustamiseks lõid arendajad uue mehhanismi: "Väline töötlemine, trükitud vormid, töötlemine tabeliosade täitmiseks." Täna vaatleme ainult osa sellest mehhanismist - vormide printimist.


Iga ainet on kõige parem õppida eeskuju järgides. Seadke endale järgmine ülesanne: lisage konfiguratsioonile võimalus printida arve (dokument "Kaupade ja teenuste müük") meie ettevõtte logoga. Lisaks on vajalik, et dokumendi päises oleks pealdised "pakkuja" Ja "ostja" olid rasvases kirjas esile tõstetud ja lõpuks on vajalik, et dokumendi allosas oleks koht saadetise volitanud turvateenistuse allkirja jaoks.


Toome sisse kaks lisatingimust:

  • Uus trükitud vorm peaks asendama vana vormi "Arve"
  • Konfiguratsiooni ei saa muuta, kuna soovime edaspidi kasutada konfiguratsiooni automaatset värskendamist

No mis ülesanne on? Tundub liiga keeruline? Noh, mida keerulisem see on, seda huvitavam see on ja seda rohkem soovite seda lahendada. Seejärel asuge tööle.


Käivitame oma andmebaasi konfiguraatori režiimis. Avage konfiguratsioon, valides peamenüüst käsu "Konfiguratsioon > Ava konfiguratsioon". Me ei muuda mingil juhul konfiguratsiooni ennast. Kasutame seda prototüübina. Põhitöö teeme siin ära, aga muudame välist töötlemist. Välise töötlemise loome peamenüüs oleva käsuga "Fail > Uus". Dokumendi tüübi valimine "Väline töötlemine". Esmaseks töötlemiseks määrame nime "Kaubamärgiga arve"


Tähtis! Töötlemisnimi ei tohi sisaldada tühikuid, nagu ka muutujate nimed.


Nüüd teeme natuke "plagiaat". Kopeerime paigutuse "Arve" dokumendist "Kaubade ja teenuste müük". Selleks leiame selle filiaalist "Dokumentatsioon" konfiguratsioonipuu. Laiendage seda lõime, klõpsates ikoonil «+» ja leidke meile vajalik paigutus "Arve"(see on niidis "Paigutused"). Selle objekti kopeerimiseks peate valima puust selle paigutuse ja käivitama käsu "Muuda > Kopeeri"(sama toiming toimub kombinatsiooniga CTRL+C). Nüüd läheme meie loodud töötlemise juurde, valige puust silt "Paigutused" ja peamenüüst valige üksus - "Muuda > Kleebi" (CTRL+V). Tulemus peaks välja nägema nagu joonisel 1.


Nüüd topeltklõpsake paigutuse avamiseks.

Mis on "paigutus"

Ütleme paar sõna paigutuse eesmärgi kohta.

Paigutus- ladustamine "ehituskivid", alad, millest nagu telliskividest ehitatakse tabeldokument, mida oleme harjunud nimetama trükivormiks. Piirkonnad määratakse horisontaalsete ja vertikaalsete lõikude või nende ristumiskohtade abil. Meie paigutusel on ainult horisontaalsed jaotised: "Päis", "Tarnija", "Ostja", "Tabeli päis", "Rida" (vt joonis 2). Piirkond on rakkude kogum. Nagu MS Excelis, saab lahtreid liita, muuta teksti- ja taustavärve, fonte jne. Kõiki lahtri sätteid saab vaadata ja muuta lahtri omaduste aknas. Seadete akna avamiseks paremklõpsate lahtril ja valite kontekstimenüü üksuse "Omadused"(sama tulemus saavutatakse kiirklahviga Alt+Enter).


Lahter võib sisaldada ühte kolmest tüüpi väärtustest:

  1. tekst– seda tüüpi väärtus trükitakse samal kujul;
  2. parameeter– seda tüüpi lahter sisaldab muutuja nime, mille väärtus trükitakse.
  3. näidis– seda tüüpi lahtrid on kombinatsioon esimesest ja teisest valikust. Lahter võib sisaldada teksti ja muutujaid. Selleks, et programm eristaks teksti muutujast, peavad muutujad olema nurksulgudes: "Täna on [kuupäev]".

Tähtis! Tabeliredaktor kuvab teist ja kolmandat tüüpi lahtrite väärtused kolmnurksulgudes. Joonisel 2 on tekstiga lahter "Ostja"- näeb välja nagu tekst ja asub lahtrist paremal "Ostja esitlus"- parameeter.

Miks ma seda kõike räägin? Nüüd teate, millistes lahtrites saate sisu hõlpsalt muuta ja millistes pole soovitav midagi muuta, kuna peate muutma printimisalgoritmi.

Tuleme nüüd tagasi oma ülesande juurde. Lõime töötlemise, kopeerisime küljenduse ja oleme valmis seda enda jaoks sobivaks muutma. Kõigepealt vaatame seda lähemalt.

Mis sisaldub prinditavas paigutuses

Kõikide dokumentide paigutusstruktuur on väga sarnane. Olles hoolikalt uurinud ühte dokumenti, saame aru ka teistest. Esimene osa "Pealkiri". Selle jaotise kuvamisel luuakse dokumendi päis, mis koosneb tüübist, kuupäevast ja dokumendi numbrist. Sellele järgnevad lõigud "Tarnija" ja "Ostja", milles programm kuvab teavet vastavalt tarnija ja ostja kohta. Järgmine on huvitavam osa "Lisainformatsioon", mida arendajad kasutavad dokumendil muu teabe kuvamiseks, näiteks teabe lepingu kohta koos selle numbri ja kuupäevaga. Selle jaotise eripära on see, et seda saab kuvada mitu korda ja iga kord võib see sisaldada erinevat teavet. Mida täpselt printida ja millal, on kirjeldatud printimisalgoritmis.

See lõpetab dokumendi päise. Päisele järgneb tavaliselt tabeliosa. Huvitav on see, et paigutus kirjeldab kahte tabeliosa kuvamise võimalust: "Tabeli päis", "String" ja "Päisetabelikohad" Ja "StringPlace". Olenevalt sellest, kas veerg on täidetud või mitte "Mest" dokumendis kasutatakse esimest või teist võimalust dokumendi tabeliosa kuvamiseks. Uudishimulik lugeja on ilmselt juba päise väljundi jaotises mõelnud: miks "Hind" Ja "Summa" asetatakse kolmnurksulgudesse, nagu oleksid need muutujad? Täpselt nii – need on muutujad, milles olenevalt dokumendi sätetest kuvatakse pealdis "Hind", "Hind koos käibemaksuga" või "Hind ilma käibemaksuta" ja samamoodi summa kohta.

Noh, allpool on paigutuses jaotised, mille abil kuvatakse dokumendi ja allkirja tulemused.

Paigutuse redigeerimine

Tore oleks panna logo tarnija ja ostja info kohale. Soovitan muuta paigutusala "Pealkiri". Sisu sisaldava lahtri suurust on vaja vähendada "Pealkirja tekst". See lahter koosneb mitmest ühendatud lahtrist. Muudame suurust järgmiselt:

  1. Kopeerime hoolikalt ühendatud lahtri sisu "Pealkirja tekst"(selleks peate valima lahtri ja kasutama käsku "Muuda > Kopeeri" või kiirklahvi CTRL+C)
  2. Pärast selle lahtri valimist valige peamenüüst üksus "Tabel - ühenda", mis toob kaasa vastupidise efekti – ühendatud lahter jagatakse paljudeks algseteks lahtriteks
  3. Nüüd valime väiksema arvu lahtreid - veeru 2. lahtri asemel alustame liitmist veerust 6, lõpetades selle veeruga 32 - ja klõpsame uuesti nuppu "kombineerida"
  4. meeskond "Muuda > Kleebi" (CTRL+V) sisestage eelmise ühendatud lahtri sisu uude ühendatud lahtrisse
  5. Tühjendame lihtsalt vabastatud lahtrid veergudes 2–5 (valige need ja vajutage klahvi Kustuta)

Nüüd saate sisestada vabasse ruumi logoga pildi. Selleks valige menüüst üksus "Tabel > Pildid > pilt...". Leidke kettalt meie logoga fail ja klõpsake nuppu " Okei". Nüüd liigutame pildi vabale kohale. Tulemus peaks välja nägema nagu joonisel 3.


Nüüd kirjutame lahtrites olevad väärtused paksus kirjas "Pakkuja" Ja "Ostja"(joonis 4). Selleks leidke lahtri omadustest parameeter "Font" ja tee see julgeks.



Ja lõpuks jääb üle lisada turvateenistuse allkiri. See teave paigutatakse jaotisesse "Allkirjad". Allkirjade jaoks koha saamiseks peate jaotise teineteisest eemale nihutama. Valige rida 37, paremklõpsake sellel ja valige "Lõika laiali" ja nii kaks korda. Ühele lisatud reale paneme koha turvateenistuse allkirja jaoks. Selle tulemusena peaks kõik välja tulema nagu joonisel 5.



Tähtis! Tüüpiline konfiguratsioon kasutab kahte keelt: vene ja ukraina. Paigutus salvestab teksti esituse mõlemas keeles (lahtri kujundus on tavaline). Lisatud pealdise ukrainakeelse versiooni sisestamiseks peate minema lahtri atribuutidele ja väljale "tekst" vajuta nuppu "otsing". Avaneb aken teksti esituse sisestamiseks erinevates keeltes (joonis 6).

Kuidas tagada printimine

Niisiis, paigutus on valmis. Nüüd on aeg töötada selle printimise algoritmi kallal.

Selleks, et saaksime selle paigutuse valutult konfiguratsiooni integreerida ja seda kasutada, peab meie loodud töötlemine vastama järgmistele tingimustele:

  1. Töötlemisel peate looma rekvisiite "Objekti link" tüübiga "AnyLink"
  2. Töötlemismoodulis peate looma protseduuri "Prindi() Eksport" ilma parameetriteta ja määrake kindlasti märksõna " Ekspordi"

Esimest punkti on vaja selleks, et printimisalgoritm teaks, kust printimiseks andmeid hankida, ja teine ​​on printimisalgoritm ise. Täidame need tingimused.

Valige aknapaneelil aken meie töötlemise redigeerimiseks (joonis 7). Avaneb aken, kus on meie töötlemiseks mõeldud objektide puu. Filiaali valimine "Rekvisiidid" ja vajutage nuppu "Lisama",. Avaneb atribuutide atribuutide aken. Sisestame nime - "Objekti link" ja märkige tüüp "AnyLink". Nüüd saame liikuda edasi printimise mooduli teksti juurde. Me ei kirjuta seda nullist, vaid kopeerime selle dokumendist "Kaubade ja teenuste müük".



Selleks leidke konfiguratsioonipuust dokumentide hulgast "Kaubade ja teenuste müük", paremklõpsake sellel ja valige "Ava objektimoodul"(vt joonis 8).



See avab dokumendimooduli. Vajame esimest funktsiooni "Prindidokument". Selle tekst tuleb valida ja kopeerida. Väga mugav on funktsiooni teksti esiletõstmine, kui see on ahendatud, kuid peate esile tõstma ka selle all oleva rea, vastasel juhul on oht, et kopeerite ainult pealkirja.

Vaata joonisel 9, oleme esile tõstnud pealkirja ja selle all oleva rea. Pärast seda kopeerige see lõikepuhvrisse. Peamenüü "Muuda > Kopeeri" (või CTRL+C).



Oleme lõikepuhvril oleva teksti pähe jätnud, nüüd jätkame uuesti töötlemisega "Kaubamärgiga arve". Klõpsake nuppu "Toimingud > Ava objektimoodul"(joonis 10).



Kleepige kopeeritud tekst: "Muuda > Kleebi" (või CTRL+V).

Nüüd on vaja kopeeritud teksti veidi redigeerida, kuna see on kirjutatud dokumendi printimiseks dokumendist endast ja me kogume seda välisest töötlemisest. Selleks vajate:

  1. Nimetage funktsioon ümber "Prindi"
  2. Asenda "See objekt" peal "Objekti link"
  3. Asenda "See objekt" peal "Objekti link"
  4. Asenda "Organisatsiooni pangakonto" peal "Link objektile. Organisatsiooni pangakonto"
  5. Asenda "Tooted. Kokkuvõte" peal "LinkToObject.Products.Total"

Nende toimingute jaoks saate kasutada peamenüü üksust "Muuda > Asenda".

Pärast seda peate kontrollima süntaksit. Selleks on maagiline kombinatsioon: CTRL+F7. Selle tulemusena peaks ilmuma järgmine teade: "Süntaksivigu ei leitud!"

Noh, sellega oleme kõik mustad tööd lõpetanud. Nüüd saame oma töö tulemused näiteks faili salvestada "Branded Invoice.epf". Selleks peate selle töötlemise akna aktiivseks muutma ja salvestama selle programmi peamenüü abil "Fail > Salvesta kui...". Töötlemise faili nimi – "Branded Invoice.epf"(seda pakutakse vaikimisi). Saate selle ajutiselt oma töölauale salvestada, et saaksite selle hiljem kiiremini üles leida.

Tähtis! Nagu nägite, ei teinud me oma konfiguratsioonis muudatusi. Kõigi ülalkirjeldatud toimingute puhul ei pea te seda isegi toest eemaldama (st muutmisvõimalust lubama).

Välise töötlemise ühendamine konfiguratsiooniga

Nüüd saame töötlemise oma arvega ühendada. Selleks käivitage režiimis. Minge menüüsse "Teenus", kus on kolm mehhanismiga seotud punkti “Väline töötlemine, vormide trükkimine, töötlemine tabeliosade täitmiseks”. Meie puhul vajame ainult eset "Välised trükivormid"(vt joonis 11).



See avab kataloogi. "Väline töötlemine", valikuga tüübi järgi "trükitud vormid". See salvestab kõigi väliste trükitud vormide loendi, näidates, milliste dokumentide jaoks need on mõeldud ja millistel juhtudel tuleb neid näidata.



Tähtis! Töötlemine ise salvestatakse andmebaasi koos muude andmetega, st pärast töötlemise andmebaasis salvestamist ei vaja me välist faili.

Peame looma kataloogis uue elemendi. Klõpsake Sisestage. Vaatame nüüd elemendi sisu. Nimes lisame selle vormi olemuse sisuka lühikirjelduse, näiteks "Ettevõtte arve". Nagu igal teisel kataloogil, on sellel ka kood. Jätame selle vaikimisi. Tüübi atribuut on vaikimisi täidetud ja seda ei saa muuta – "Prindi vorm". Ja päise viimane element on kommentaar. Siin on, nagu ikka, täpsemalt trükivormi eesmärgist. Lisaks päisele on selle kataloogi elementidel kaks järjehoidjat. Teine sisaldab teavet selle töötlemise juurdepääsuõiguste piiramise kohta. See teema ei kuulu selle artikli reguleerimisalasse (räägime sellest ja muudest juurdepääsuõiguste sätetest ilma konfiguratsiooni muutmata ühes eelseisvatest numbritest).

Vaatame esimest vahekaarti lähemalt.

Vahekaart sisaldab nelja veergu. Objekti esitus– dokumendi tüüp, mille jaoks me oma trükivormi kasutada soovime,

Valik– tingimus, mille alusel see trükitud vorm peaks olema kättesaadav. Näiteks kujundasime ümber arve trükitud vormi ja tõlkisime selle inglise keelde. Ja me tahame klientidele kaustast "euroopalik" standardse trükitud vormi asemel "Müügiarve" Uus vorm trükiti inglise keeles. Selleks saate kasutada veergu "Valik". Sellise valiku näide on näidatud joonisel 13.



Kuid meie ülesandes pole valikuid vaja.

Prinditav vormifail– näitab faili, millest küljendus ja printimisprotseduur võtta. Selles lahtris peate valima faili, mille töölauale salvestasime.

Vahetatav trükiplaat– kui soovime, et meie loodud trükitud vorm asendaks ühe selle dokumendi standardvormiga, siis peame märkima, milline neist tuleb asendada. Kui midagi valida pole, ilmub täiendav prinditud vorm.

Meie puhul peame seda tegema "Kaubamärgiga arve" trükiti tavalise arve asemel. Selleks valige sellel väljal "Müügiarve".

Nüüd salvestame selle elemendi. Ja avage mis tahes arve.

See peaks välja nägema nagu näidatud joonisel 14.



Noh, see lõpetab ülesande, mille me artikli alguses endale seadsime. Usume, et suutsime illustreerida võimalusi, mida välise töötlemismehhanismi kasutamine kasutajale avab.

Oma oskuste kinnistamiseks võite proovida iseseisvalt lisada konfiguratsioonile täiendava prinditud vormi "Latu" dokumendi "Kauba ja teenuste kättesaamine" jaoks, mis kordaks tavalist arvet, kuid ilma hindade ja summadeta ning sisaldama aktsepteeritud koguse sisestamise välju.

Selles artiklis kirjeldatakse, kuidas ühendada väline prinditud vorm 1C andmebaasiga, kasutades konfiguratsiooni "Trade Management 11.2" näidet.

Konfiguratsioon "Kaubanduse haldamine 11.2" on konfiguratsioon "HALDATUD" vormidel!

Meie juhised "näitavad", kuidas ühendada väline trükitud vorm 1C teabebaasi konfiguratsiooniga vormidel "HALDATUD", nimelt:

  • "Raamatupidamine 3.0"
  • "Kaubanduse juhtimine 11.2"
  • "Palk ja personalijuhtimine 3.1"
  • "Täielik automatiseerimine 2.0"
  • "Väikeettevõtte juhtimine 1.6"
  • "Jaemüük 2.2"
  • ja muud sarnased konfiguratsioonid.

Välise printimisvormi ühendamiseks 1C-s peame läbima 11 sammu.

1 — Menüü “Põhiandmed ja haldus” (Teistes konfiguratsioonides, näiteks Enterprise Accounting 3.0-s, võib seda nimetada lihtsalt “Administreerimiseks”). 2 — Valige "Prinditud vormid, aruanded ja töötlemine" (vt allolevat joonist ↓)

3 — Laiendage alammenüüd "Aruanded ja töötlemine" (teistes konfiguratsioonides, näiteks Enterprise Accounting 3.0, ei pruugi sellist alammenüüd olla, nii et liigume kohe järgmise sammu juurde). 4 — Märkige ruut "Täiendavate aruannete ja töötlemise kasutamine". 5 — Minge jaotisse: Täiendavad aruanded ja töötlemine. (vt joonist allpool ↓) ()

6 — Klõpsake nuppu "Loo". (vt joonist allpool ↓)

1C uutes versioonides (alates augustist 2016) on programmil sisseehitatud hoiatusmehhanism tundmatu välistöötluse kasutamise ohu kohta, mis võib sisaldada "viirusi"; programmi varasemates versioonides hoiatust ei kuvata! Kui see juhtub, on välise trükivormi ühendamiseks vaja - 7 - klõpsake nuppu "Jätka". (vt joonist allpool ↓)

8 — Valige kataloog, kus töötlemine asub. 9 — Valige see (töötlemine, mida vajame). 10 — Klõpsake nuppu "Ava". Või võite sammude 9 ja 10 asemel lihtsalt topeltklõpsata valikuaknas välisel trükitud vormil, mida vajame. (vt joonist allpool ↓)

Kui peame lisatava töötlemise jaoks lisama paigutuse (näiteks see on universaalne lepinguvorm meie veebisaidilt ja meil on vaja käsku selle vormi printimiseks, et seda kuvada mõnes objektis, milles seda algselt ei kuvata) 11 — klõpsake paigutuse real ("Place in:", võib-olla "Placement:") ja valige vajalikud kataloogid ja dokumendid. 12 — Lõpetame välise printimisvormi ühendamise sammud, klõpsates nuppu „Salvesta ja sulge”. (vt joonist allpool ↓)

See on kõik! Palju õnne! Väline trükiplaat on ühendatud! Kas tegime kõik õigesti? Kontrollime...

Enne salvestamist ja sulgemist märkasime, et see väline prinditud vorm asub dokumendis Kaupade ja teenuste müük, mis tähendab, et saame avada printimisvõimalused igale dokumendile, mille tüüp on "Kaubade ja teenuste müük". vajutage nuppu "Prindi" ja vaadake, et on ilmunud trükivormide valimise aken, mille hulgas on - 13 — meie poolt ühendatud väline trükivorm (vt joonist allpool ↓)

Nüüd on see kindel. Loodame, et see artikkel oli teile kasulik.

Pole saladus, et kuigi tänapäeval läheb üha enam ettevõtteid üle elektroonilisele dokumendihaldusele, ei kaota vana ütlus “Ilma paberita, sa...” oma aktuaalsust. Juhtub nii, et kontrolliasutused on millegipärast huvitatud eelkõige paberdokumentidest. Seega, kui kasutate finantskontrolliks aktiivselt programmi 1C: Accounting või Enterprise, on oluline teada, kuidas printida programmi abil loodud elektroonilist dokumenti.

Trükitud vormid 1C-s võimaldavad teil muuta elektroonilise dokumendi trükitud versiooniks.

Selleks on arendaja pakkunud suurepärase tööriista - Print Designer. Selle abiga saate luua dokumente, milles saate määrata kõik vajalikud andmed, mitte ainult mõned standardvormid. See kehtib eriti nende dokumentide kohta, millel ei ole rangelt reguleeritud vormi, mida ei saa mingil juhul muuta. Eelkõige võib see hõlmata töö lõpetamist, mõningaid arveid või makseid.

Selles juhendis teeme ettepaneku mõista prindikujundaja võimalusi, kaaluda, mis tüüpi trükivorme võib olla ja kuidas need üksteisest erinevad. Näitame ka, kuidas loodud vormi printida.

Esiteks tasub mõista, mis on üldiselt trükitud vorm 1C 8-s. See on 1C arvutustabeli mall (nagu Excel), milles on määratud mõned muutujate read, mis on dokumendi koostamisel täidetud programmi andmetega.

Trükivorme on kahte tüüpi:

  • Sisemine (sisseehitatud). Need on salvestatud programmi konfiguratsioonis, seega on parem neid mitte muuta, kuna hiljem võivad värskenduse käigus tekkida probleemid.
  • Väline - salvestatakse programmi sätetest eraldi. Ja nende abiga saate luua ja printimiseks ette valmistada peaaegu igasuguse keerukusega dokumendi, ilma et see mõjutaks programmi 1C 8 konfiguratsiooni.

Kuidas valida juba ettevalmistatud paigutusi? Pärast sissetuleva või väljamineva toimingu sooritamist, näiteks tehtud töö aruande koostamist, klõpsate dokumentide printimiseks nuppu "Prindi". Loendis kuvatakse nimekiri prinditavatest vormidest, mis on juba täidetud sisestatud andmetega sooritatud tehingu ja teie ettevõtte kohta. Vajalikul dokumenditüübil klõpsates avate eelvaate akna, et saaksite veenduda, et sisestatud andmed on õiged. Prindinupp prindib dokumendi printerisse.

Kui põhiteadmised on eemal, selgitame välja, kus kõik teie prinditavad failid on salvestatud. Liigume edasi järgmise küsimuse juurde.

Kus trükitud vorme hoitakse?

Sisseehitatud prinditud vorme saate vaadata nii konfiguraatorirežiimis kui ka tavalises ettevõtterežiimis. Esimesel juhul peate programmi käivitamisel klõpsama vastavat nuppu stardiaknas. Näete programmi menüüd, leiate haru "Toodete ja teenuste müük", mis sisaldab elementi "Paigutused". See sisaldab sageli ainult kahte kirjet - "arve" ja "akt". Kus on siis kõik teised, kuna nimekiri on palju ulatuslikum? Nad lihtsalt peidavad end kuskil mujal. Peate avama haru "Üldine" - "Üldised paigutused", peaaegu kõik paigutused on selles salvestatud.

Teisel juhul peate minema menüü jaotisesse "Haldus" - "Vormid, aruanded ja töötlemine" - "Prinditud vormide paigutused". See kuvab kõik dokumendipaigutused. Tähelepanuväärne on, et neid saab redigeerida samas menüüs.

Mis puutub välistesse vormidesse, siis peate need esmalt looma konfiguraatori režiimis või valmisfaili alla laadides ja seejärel ühendama need menüüga „Haldus” - „Prinditud vormid, aruanded ja töötlemine” - „Täiendavad aruanded ja töötlemine”. Sellest räägime veidi hiljem.

Lihtsa vormi loomine sisseehitatud prindikujundaja abil

Selline trükitud vorm ei tähenda sügava redigeerimise võimalust, kuna sellega kaasneb programmi konfiguratsiooni muutmine ja täiendavad raskused selle värskendamisel. Kui olete aga tüüpvormiga täiesti rahul või soovite süveneda välise vormi loomise keerukustesse, sobib see meetod teile igati.

  1. Kõigepealt käivitage konfiguraatori režiim, leidke vajalik dokument, näiteks Toodete ja teenuste müük, dokumendi atribuutides minge jaotisesse Toimingud - Kujundajad - Prindikujundaja.
  2. Kui küsitakse töövalikut, valige Tavalised vormid.
  3. Andke uuele paigutusele nimi, näiteks "Prindi arve".
  4. Valige üksikasjad, mida soovite dokumendi päises näha. Lisaks tuleb need valida kuvamise järjekorras. Valimiseks tuleb vasakpoolses veerus olev üksus kursoriga esile tõsta ja vajutada ekraani keskel olevat noolt, et üksikasjad ilmuksid paremasse veergu.
  5. Märkige tabeli jaotises kuvatavad üksikasjad. Detailide valikul järgitakse sama põhimõtet nagu eelmises lõigus.
  6. Samamoodi valige dokumendi alumise osa üksikasjad.
  7. Loomise viimases etapis valige, kas soovite printida kohe ilma eelvaateta, kas peate tabeli kaitsma ja seejärel kinnitage vormi loomine nupuga OK.

Välise trükivormi loomine

Print Designeri kaudu loodud vorme saab võrrelda visuaalse tarkvararedaktoriga, kui te ei sisesta kogu koodi käsitsi, vaid koostate selle ainult pakutud elementidest. Väline vorm on käsitsi kirjutatud programmikoodiga fail, mis kirjeldab andmete ekraanil kuvamise protseduuri. See võimaldab teil prinditud vormi muuta nii, nagu soovite, määrates absoluutselt kõik andmed mis tahes järjestuses.

Täiendav eelis on see, et isegi kui te ei mõista või lihtsalt ei taha mõista 1C 8 programmeerimise keerukust, võite selle protseduuri usaldada professionaalidele. Nad suudavad teile vajaliku vormi koostada ja teile valmisfailina anda, mille saate aktiveerida vaid mõne nupuvajutusega.

Nüüd räägime lähemalt protseduurist endast. Vaatame dokumendi “Müük (aktid, arved)” paigutuse “Arve” loomise näidet.

  1. Avage programm 1C 8 konfiguraatori režiimis.
  2. Klõpsake nuppu Fail - Uus - Väline töötlemine, andke sellele nimi (see ei tohiks sisaldada tühikuid), seejärel klõpsake nuppu Actions - Open Object Module.
  3. Sisestage avanevale sisestusväljale järgmine kood (väärtused, mida saab muuta enda omaks, on kollasega esile tõstetud):

Funktsioon InformationOnExternalProcessing() Export
Registreerimisparameetrid = uus struktuur;
ArrayDestinations = uus massiiv;
Array of Assignments.Add("Dokument.Kaupade ja teenuste müük"); //Määrake dokument, millele me välistrüki teeme. vormi
Registreerimisparameetrid.Insert("View", "PrintForm"); //võib-olla - Prinditav vorm, Objekti täitmine, Lisaaruanne, Seotud objektide loomine...
Registreerimisparameetrid.Insert("Sihtkoht", Sihtkoha massiiv);
Registreerimisparameetrid.Insert("Nimi", "Kauba müügitellimus"); //nimi, mille all töötlus registreeritakse välise töötlemise kataloogis
Registreerimisparameetrid.Insert("SafeMode", FALSE);
Registreerimisparameetrid.Insert("Versioon", "1.0");
Registreerimisvalikud.Insert("Teave", "See prinditav vorm loodi näidisena");
CommandTable = GetCommandTable();
AddCommand(CommandTable, "External Order", "ExternalOrder", "CallServerMethod", True, "MXL Print");
Registreerimisparameetrid.Insert("käsud", käsutabel);
ReturnRegistrationParameters;
EndFunction // Teave välise töötlemise kohta()
Funktsioon GetTableCommand()
Käsud = uus väärtustabel;
Commands.Columns.Add("View", New TypeDescription("Row"));//milline trükivormi kirjeldus kasutaja jaoks välja näeb
Commands.Columns.Add("Identifier", New TypeDescription("String")); //vormi küljenduse nime printimine
Commands.Columns.Add("Kasutus", NewTypeDescription("Rida")); //Helista ServerMethod
Commands.Columns.Add("ShowAlert", NewTypeDescription("Boolean"));
Commands.Columns.Add("Modifier", NewTypeDescription("Rida"));
Tagastamismeeskond;
EndFunction
Protseduur AddCommand(CommandTable, View, Identifier, Usage, ShowAlert = False, Modifier = "")
NewCommand = CommandTable.Add();
NewCommand.View = Vaade;
NewCommand.Identifier = Identifier;
NewCommand.Use = Kasuta;
NewCommand.ShowAlert = ShowAlert;
NewCommand.Modifier = Modifier;
Lõppprotseduur

  1. Salvestage küljendus printimiseks failina kõvaketta mis tahes kausta ja andke sellele sobiv nimi.

Sisestage samasse dokumenti programmimenüüst printimise alustamise protseduur (kollasega esiletõstetud käsud peavad vastama reale):

Lisage käsk (käskude tabel, "Väline korraldus", "Väline korraldus"):
Protseduuri printimine (objektide massiiv, trükivormide kogu, prindiobjektid, väljundparameetrid) eksport
Print Management.Output TabularDocumentIntoCollection(
Trükivormide kogu,
"Väline tellimus"
"Väline tellimus"
GeneratePrintForm(Objects Array, PrintObjects);
Protseduur lõpp // Prindi()

  1. Sisestage prinditud vormitäide küljendus, klõpsates vasakus alanurgas välise vormi nimel ja valides "Layouts" - "Add" - "Spreadsheet Document", andke sellele nimi. Pärast seda täitke tabel vajalike andmetega. Näiteks:
    • Kauba nr [ReleaseNumber] tellimine aadressilt [ReleaseDate] - paremklõpsake - Atribuudid - Paigutus - Täitmine - Mall.
    • Looge veerud, mida soovite oma dokumendis kuvada.
    • Valige sisestatud lahtrid, klõpsake nuppu Tabel - Nimed - Määra nimi - sisestage nimi "Päis".
    • Kopeerige rida tabeli päistega, valige need, paremklõpsake - Atribuudid - Paigutus - Täitmine - Parameeter.
    • Valige rida ja nimetage see, näiteks "StringTCH".
    • Looge jalus: kirjutage Total, lahter, milles kogusumma kuvatakse, pange sellele nimi TotalTotal, valige atribuutidest "Parameters".
    • Määrake vastutav isik ja perekonnanime kuvamise lahtri atribuutides määrake "Parameetrid".
    • Valige alumised read ja pange vahemikule nimeks "Footer".
  2. Nüüd sisestage sisestusaknas prinditud vormi genereerimise funktsioon:

Funktsioon GeneratePrintForm (LinkToDocument, PrintObjects)
TabularDocument = Uus tabelidokument;
TabularDocument.Name of Print Parameters = "PRINT_PARAMETERS_Arve makseks VRTU-le";
Töötlemine Layout = GetLayout("Maksearve Väline");
//täitke päis
AreaHeader = TöötlemineLayout.GetArea("Päis");
AreaHeader.Parameters.DocumentNumber = LinkToDocument.Number;
AreaHeader.Parameters.DocumentDate = LinkToDocument.Date;
AreaHeader.Parameters.OrganizationName = LinkToDocument.Organization.Name;
//väljastab päise arvutustabeli dokumenti
Tabelidokument.Väljand(päiseala);
//täitke PM read
RowArea = TöötlemineLayout.GetArea("RIDA");
Dokumendi lingi iga jooksva rea ​​jaoks. Tootetsükkel
FillPropertyValues(RowArea.Parameters, CurrentRow);
Tabelidokument.Väljand(Ridaala);
EndCycle;
//keldrit täis
AreaFooter = TöötlemineLayout.GetArea("Footer");
AreaFooter.Parameters.QuantityTotal = LinkToDocument.Products.Total("Kogus");
AreaFooter.Parameters.AmountTotal = LinkToDocument.Products.Total("Summa");
AreaFooter.Parameters.ResponsibleName = LinkToDocument.Manager.Name;
//väljastab jaluse arvutustabeli dokumenti
Tabeldokument.Väljand(alajalus);
TabularDocument.AutoScale = Tõene;
tagasta TabularDocument;
EndFunction

  1. Salvestage oma muudatused dokumendis.
  2. Nüüd peate loodud vormi aktiveerima. Selle jaoks:
    • Minge jaotisse "Haldus" - "Prinditud vormid, aruanded ja töötlemine" - "Täiendavad aruanded ja töötlemine".
    • Klõpsake nuppu "Loo", valige Exploreris väline vormifail, kinnitage oma sisestus nupuga "Salvesta ja sulge".
  3. Kontrollimiseks minge Müük - Müük (aktid, arved), klõpsake nuppu "Prindi", valige oma vorm ja kontrollige, kas see on õigesti täidetud.
  4. Vajadusel printige dokument välja.

Järeldus

Vaatasime näidet prinditava vormi loomisest läbi Print Designeri ja väliste vormide loomise tööriista. Loodame, et kõik läheb teie jaoks korda. Jätke oma küsimused kommentaaridesse.

Kaaluge kõige lihtsama trükitud vormi kirjutamist 1 s 8,1 - 8,2 kasutades konfiguratsiooni näidet Ettevõtte raamatupidamine 2.0. Oletame, et peate dokumendi jaoks kirjutama välise trükitud vormi: kuvage dokumendi põhiandmed ja ka tabeliosa Kaubad: nomenklatuur, hind, kogus ja summa.

Saadud näite saate alla laadida saidilt .

Konfiguraatoris 1C ettevõtted 8 loo välistöötlus ( Fail->Uus->Väline töötlemine), määrake nimi, looge välise trükitud vormi jaoks vajalikud üksikasjad Objekti viide tüübiga DocumentLink. Kaupade ja teenuste müük.

Trükitud vormi küljenduse koostamine

Lisage uus paigutus, jätke paigutuse tüüp arvutustabeli dokument. Loome paigutusele kolm ala: Päis, andmed Ja Kelder. Seda saab teha, valides vajaliku arvu ridu ja klõpsates menüüd Tabel->Nimed->Määra nimi (Ctrl+Shift+N).

Pärast seda hakkame aladele teksti ja parameetreid paigutama. Paneme selle päisesse trükitud ankeedi nimetus, dokumendi number Ja organisatsioon ja joonistage ka tabeli päise piirid ja kirjutage veergude nimed. Lahtri atribuutides parameetri loomisel tuleks vahekaardil Paigutus määrata atribuut Täitmine tähenduses Parameeter.

Piirkonnas Andmed loome parameetrid ridade kuvamiseks tabeliosas( Nomenklatuur, hind jne) ja piirkonnas Kelder kogusummade jaoks koguse ja summa järgi.

Programmeerimine

Läheme trükivormi objekti moodulisse Toimingud->Ava objektimoodul.

Loome sinna ekspordifunktsiooni, mis on trükitud vormide puhul kohustuslik. Seal ().

Funktsioon Print () Ekspordi EndFunction

Funktsioonis loome muutuja jaoks arvutustabeli dokument, millesse trükitud vorm väljastatakse, saame paigutus Ja paigutusalad.

TabDoc = uus tabeldokument; Layout = GetLayout("Paigutus" ); HeaderArea = Layout.GetArea("Päis" ); AreaData = Layout.GetArea("Andmed" ); AreaFooter = Layout.GetArea("Footer" );

Täidame parameetrid mütsid ja tuua see kohale arvutustabeli dokument.

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

Tabeliridade saamiseks Kaubad kasutame taotlust.

Taotlus = uus taotlus; Request.SetParameter("Link", ObjectLink); Query.Text = "VALI | Kaupade ja teenuste müük Kaup. Nomenklatuur, | Kaupade ja teenuste müük Kaup. Summa, | Kaupade ja teenuste müük Kaup. Hind, | Kaupade ja teenuste müük Kaubad. Kogus|ALT | Dokument. Kaupade ja teenuste müük. Kaubad KUIDAS Kaupade ja teenuste kaupade müük|KUS | Kaupade ja teenuste kaupade müük. Link = &Link";

Edastame üksikasjad päringu parameetrile Objekti viide, tingimusel märkimiseks KUS, et vajame andmeid ainult sellest dokumendist, millest tuletame trükitud vormi. Näidispäringu saamiseks käivitame selle esmalt ja seejärel valime read.

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

Järgmisena täidame tsüklis ala parameetrid Andmed dokumendinäidise iga rea ​​jaoks ja kuvage need sisse arvutustabeli dokument. Arvutame ka ahela koguväärtused kogused Ja summad. Me ei täida iga parameetrit eraldi, vaid kasutame protseduuri Täida inPropertyValues((<Приемник>, <Источник>) alates globaalses kontekstis, kopeerib see vara väärtusi <Источника> kinnistutele <Приемника> . Sobitamine toimub atribuutide nimede järgi. Selle kohta saate rohkem lugeda artiklist süntaksi assistent 1C Enterprise 8.

Kogusumma = 0; Kogukogus = 0; While Selection.Next() Loop FillPropertyValues(AreaData.Parameters,Selection); Kogusumma = kogusumma + näidis.summa; TotalQuantity = TotalQuantity + Sample.Quantity; TabDoc.Output(AreaData); EndCycle ;

Täitke ja kuvage ala Kelder.

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

Täidetud arvutustabeli dokumendi tagastamine funktsioonist Seal ().

tagasta TabDoc;

Kui kasutate üht standardkonfiguratsioonist, siis pärast arvutustabeli dokumendi tagastamist 1C kuvab prinditud vormi ekraanil. Väljastamiseks saate kasutada ka arvutustabeli dokumendi meetodit. Näita().

5. Trükitud vormi ühendamine dokumendiga

IN standardkonfiguratsioonid 1C 8 Väliste trükitud vormide registreerimiseks on olemas kataloog Väline töötlemine. Ühenduse loomiseks minge ettevõtterežiimis menüüsse Teenindus->Täiendavad aruanded ja töötlemine->Täiendavad välised trükitud vormid.

Lisage uus kataloogi element, laadige prinditud vorm kettalt ja valige dokumendi tüüp.

Nüüd dokumendis Kaupade ja teenuste müük Ilmub uus prinditav.

Trükitud vormi automaatne registreerimine

Tagamaks, et trükivormi ühendamisel ei pea dokumenditüüpi käsitsi valima, saate konfigureerida automaatne registreerimine. Selleks lisage uus paigutus ja helistage sellele Seaded_Automaatne registreerimine(see on ainus viis) ja selle esimesse lahtrisse kirjutame Dokumentatsioon.<Наименование документа> (või Kataloogid.<Наименование справочника> ).

Nüüd trükivormi ühendamisel palutakse meil kasutada automaatse registreerimise parameetrid.