Care este problema cu imprimarea față-verso?
După cum se știe, în setările „pagina parametrul“ formă de imprimare este o opțiune „imprimare duplex“, cu opțiunile: „Nu“, „Flip-up“, „Flip stânga“, „Folosiți setările pentru imprimantă“.

Cu toate acestea, această opțiune este de ajuns numai când tipăriți pentru a imprima forma tipărită un singur document. În cazul în care există mai multe (tipări imediat două sau mai multe documente) începe un al doilea document imprimat pe verso a foii pe care este încheiat primul document (dacă primul document conține un număr impar de pagini). Corect, desigur, este de a imprima fiecare document nou pe noua foaie.
Să examinăm situația cu un exemplu. Există o problemă de nevoia clientului de a dezvolta un nou document de tipar „Vânzările de bunuri și servicii“ (RTU), cu capacitatea de a imprima pe ambele fețe. Mai mult decât atât, un utilizator ar trebui să poată să selecteze mai multe documente și punerea în aplicare a imprima lor kit.
După cum se știe, în acest caz, primul lucru de făcut este de a crea un nou proces, care va fi „forma tipărită exterior“ (RFT) GURA documentului.
1. pentru a crea un document VPF;
2. pentru funcționarea corectă a duplexului.
1. Crearea unui formular simplu de imprimare extern (îl puteți descărca de la partea de jos a articolului):
Cum va forma tipărită:

Creați un nou tratament în configuratorul. File - New - prelucrare externă. Ea a creat „Aspect“, de exemplu, ca aceasta:

Apoi, în „Modulul Object“ avem o procedură și două funcții:
- Procedura de imprimare () trebuie să fie în mod necesar la APF. Aceasta este cauzată de formarea documentului formulare tipărite (e). Parametrul MassivObektov - Aceasta este o serie de trimiteri la documentele pe care le construim WPF. Parametrul ObektyPechati - SpisokZnacheny conține, de asemenea, referiri la documente.
- Funcția SformirovatPechatnuyuFormu () poate fi numit, și un alt nume. Imprimarea numit de procedură (). Esența ei este de a crea SpreadsheetDocument obiect și în ciclul (în conformitate cu documentele conținute în parametrul „MassivObektov“) zona de afișare a umplut „subiect“ și „linie“. La sfârșitul funcției, se întoarce înapoi la gata procedura SpreadsheetDocument Print ().
- Funcția SvedeniyaOVneshneyObrabotke () - cea mai recentă caracteristică a ModulyaObekta noastre. Este obligatoriu pentru standardul APF. Acesta conține parametri care vă permit să adăugați-l în „Rapoarte suplimentare și procesarea“ (meniul Administration - prelucrare formulare de imprimare, rapoarte,).
Acum, rulați 1C: Enterprise. Adăugați APF în „raportarea și procesarea avansată.“ Deschideți lista de documente „vânzare de bunuri“, cum ar fi selectați oricare două din document și faceți clic pe „Print“ - „exemplu imprimarea față-verso“ Deschide formularul completat tipărit al celor două documente. Apăsați butonul mare galben „Print“. Dacă este făcută corect, pe imprimanta noastră acceptă imprimarea față-verso, imprima două foi pe ambele părți. Prima implementare a primei foi nu se va potrivi (ca și rândurile din tabelul 40) și se termină pe aceeași parte a doua foaie. A doua implementare este imprimat pe partea din spate a doua foaie. Astfel, am creat o VPF și a văzut probleme de imprimare față-verso. Luați în considerare decizia de mai jos.
2. De ce am nevoie pentru a adăuga duplex corectă.
În funcția SformirovatPechatnuyuFormu (), adăugați următoarea cheie bucată de cod:
- lipiți-l necesar să se încheie ciclul de „matrice de obiecte“:
- Acest fragment al unei proceduri de apel ZadatOblastPechatiDokumenta () din modulul general al UpravleniePechatyu. Esența procedurii este de a identifica zonele transmise TablichnomDokumente numite, fiecare document separat (în screenshot sunt subliniate în roșu):


Să examinăm procedurile parametrii UpravleniePechatyu.ZadatOblastPechatiDokumenta ():
Procedura în sine este simplu și mic, puteți vedea-vă în modul general, UpravleniePechatyu, astfel încât să nu supraîncărcați articol de prisos.
S-a obținut numita metodă zone se ocupă cu succes de imprimare () PaketOtobrazhaemyhDokumentov obiect care a efectuat în cele din urmă în timpul formării oricărei „placa externă de imprimare.“ (Revizuire, moment în care metoda este numit, a contat mai mult pentru acest articol.) Numit zona servesc pentru a trimite imprimate pokomplektno formularul de imprimare (pentru fiecare document separat).