Paul tiszta

Előszó: Ez a módszer csak alternatívája a szabványosnak, amelyet mákról szóló cikkekből tanulhat

Mint a gyakorlat azt mutatja, ennek a módszernek a használata csak igen ritka esetekben igazolható. Maga a módszer azonban érdekes az olyan eljárások és funkciók végrehajtásának lehetőségével kapcsolatban, amelyeket egy másik objektum keretében hajtanak végre.

Hát akkor. Annak érdekében, hogy ne menjünk messzire, vegyük végig a tipikus 1C számviteli 1.6-at. És ezt a nyomtatott formanyomtatvány nyomtatásának külső nyomtatott formáját is megteremtjük.

A következőket tesszük:

1. Hozzon létre egy külső nyomtatott űrlapot, amely ismeri a minta űrlapot.

2. A szállítmányozó területén a sajtóban "ugyanazt" cseréljük ki ezekkel a szervezetekkel.

3. Változtassuk meg kissé az elrendezést.

A kezdet nem különbözik a szokásos külső nyomtatott formától.

1. Hozzon létre külső feldolgozást.

2. Nevezzük el a "External AccountFacility Output" nevet.

4. A feldolgozómodulban hozza létre a "Nyomtatás" exportfunkciót.

Eljárás gomb végrehajtása Nyomja meg a (gombot)
Nyomtatás (). Show ();
Az eljárás vége

Ez lehetővé teszi a nyomtatásnak a feldolgozás feldolgozását anélkül, hogy külső nyomtatási űrlapot csatlakoztatnánk a fájl megnyitásával.

6. Másolja a számla mockupot feldolgozásunkra. Mivel ezek a makettek teljesek, mindent átmásolunk. Csak abban az esetben.

Bár minden a szokásos módon van. Az eredmény - lásd az 1. ábrát.

És most kezdődik a "Magic".

7. Hozzon létre egy másik űrlapot. Nevezzük a "Fiók formája".

8. Módosítsa az elsődleges követelmény a második forma ( „FormaSchetaFaktury”): változtassa meg a nevét „ObrabotkaObekt” on „DokumentObekt” típusú, „VneshnyayaObrabotka.VneshniySchetFakturaVydanny” on „DokumentObekt.SchetFakturaVydanny”. Felhívom a figyelmet, ez DocumentObject!

9. Az űrlapmodulban adja meg a "Feldolgozás" exportváltozót. A külső feldolgozás célja az elrendezések elérése. Miért nem kell? Mert amikor a kellékeket használja, a (feldolgozás) aktív maradt a vállalatnál, még az összes ablak bezárása után is.

10. A "Nyomtatás" függvény feldolgozómodulján adja hozzá a kódot:

AccountFactures formája = Formanyomtatvány ("AccountFuctures formája");
Számlaformák formája. DocumentObject = AccountFactureObject;
Számlaformák formája. Feldolgozás = ThisObject;
TabDoc = Számlafüzet formája. Nyomtassa ki az űrlapot ();

Visszatérés (TabDoc);
Vége funkció

11. A dokumentummodultól a formanyomtatványhoz "A számlaösszetevők formájához" átmásoljuk (a másolás / beillesztés módjával) minden szükséges eljárást. És számolni kell a Számla sokakkal:

  • TablesString inicializálása
  • Összegyűjteni a DataAboutCommentOrSales-t
  • Gyűjtsd össze a DataAboutComissionerOrSales-et
  • Gyűjtse össze a DataServiceServicesServices szolgáltatást
  • Gyűjtsd össze az áruk visszaküldésére vonatkozó adatokat a szállítónak
  • A DataPublications gyűjtése
  • Gyűjtsd össze a DataPOSVP-t
  • Adatok gyűjtése a fizetési megbízás ablakban
  • Gyűjtsd össze a DataPoact-ot
  • Adatátvitel összegyűjtése
  • Adatok összegyűjtése egy szervezetből
  • A GoodsServices DataPaintingRealization létrehozása
  • A DataServiceServicesProcessing összegyűjtése
  • Gyűjtse össze a DataApplicationDocument fájlt
  • Gyűjtsd össze az MS-adatokat
  • Adatok gyűjtése
  • A DataSpareAventsAmountlessDifference összegyűjtése
  • DeliverWidthsField mezők
  • Töltse újra az EGYSZERES TÖRLÉSEK összegét
  • Nyomtassa ki a számlákat

De ne félj a számától. Amint láthatja, a legtöbbjük "Adatgyűjtés". És nyomtatási szolgáltatás. Szintén létezik egy "PrintingFeedback" funkció.

Érdemes megjegyezni, hogy nem mindegyiket exportálják. Ez azért van, mert másoltuk őket.

Elkülönített beszélgetés a Print (.) Eljárás átadásáról a dokumentummodulról.

Ez a legnehezebb pillanat.

Nevezd át az űrlap nyomtatásához. De nem csak egy függvénybe változtatjuk. Ehhez cserélje ki a "Visszatérés" -t a Visszaküldés (Nem meghatározott) lehetőséggel.

Egy eljáráshívás az eljárási modul végén

Univerzális mechanizmusok. NapechatatDokument (TabDokument KolichestvoEkzemplyarov NaPrinter ObschegoNaznacheniya SformirovatZagolovokDokumenta (EtotObekt EtotObekt Metadata () Bevezetés ()) NeposredstvennayaPechat .......);

Most is nincs szükség paraméterekre: példányszám, OnPrint, DirectPrint.

És a "NameMaker" paraméter nem releváns számunkra. Csak állítsa be az értékét a funkció testében:

eltávolítva a paraméterektől.

12. Továbbra is helyettesíti a közös Dummies hívását a feldolgozás elrendezésével. Módosítsa az űrlap sorát

Layout = Az általános elrendezés (".") És az elrendezés = Get the Layout (".")

Elrendezés = Kezelés. Szerezd meg a csomagot (".");

A számlázási számla külső nyomtatott formája van, a kialakításának funkciói és eljárásai, valamint az átruházott makettek.

Megmentjük. Aga - káromkodni a "mr.Address" -en. Megnézzük a modul a dokumentum egy változója a modul a tárgy. Kijelentjük a formanyomtatványunkban, és hozzárendel egy értéket (mint a dokumentum moduljában).


Перем ВнОрабоботка Export;
Mozgassa az mAddressFeedback-ot;

//. (minden eljárás és funkció)

mAddressFeedback = "Előfizetés";

Oktryvaem az 1C vállalatnál és tesztelésnél!).

A Külső nyomtatás formában funkció a vonalak után

Ha a DataFor Printing = Undefined vagy TypeType (DataFor Printing) = Típus ("Matching") Ezután
tovább;
ENDIF

// Cserélje ki a nyomtatott példányt a Szervezettel
Ha az adatok nyomtatása. Feladó = "ő"
DataFor nyomtatás. Fuvarozó = Adatforrás nyomtatás. szervezet;
End If;

De most minden rendben van! Megváltoztatjuk, hogyan szeretnénk elrendezéseket, adatokat szerezni, nyomtatott formákat formálni.

PS. Lásd a mellékelt mellékletet.

Kiegészítés 1. Egy "komplex" példát tekintünk. A fizetési számla, a fuvarlevél és így tovább kinyomtatva még könnyebb, de az elv ugyanaz. A kritikákat és a megjegyzéseket üdvözöljük.

Kiegészítés 2. Csak a 8.1.11-esnél régebbi platform-kiadásoknál működik.

Dopolnenie3. Hosszúan gondoltam a képeken. Soha nem gondoltam rá.

Kiegészítés 4. Ha külső nyomtatott formanyomtatványt csatlakoztat, rendszeresen cserélheti ki, hogy ne törje a felhasználókat a párbeszédbe (c) A hadnagy

Kiegészítés 5. Külső nyomtatott formanyomtatvány teszteléséhez és hibakereséséhez, ahelyett, hogy egy speciális formában létrehoznánk minden feldolgozást, használhatjuk az eszközt a mákból: //expert.chistov.pro/public/14686/ (c) artbear

És nem merül fel.

Nos, figyelembe véve, hogy a kinyomtatott forma nem menti el az objektumot, csak ellenőrzi. Nos, talán igen. A legtöbb esetben egy tárolt vagy elmentett dokumentumra van szükség. De ugyanaz. Ha felmerül a kérdés, akkor valamilyen módon magyarázd meg őket.

Keveset tettem:
- Meghoztam a szükséges formanyomtatványokat a nyomtatvány kialakításához;
- A tesztelés-hibakeresési űrlapon ugyanazt a kódot írtam le, mint fent:

Eljárás gomb végrehajtása Nyomja meg a (gombot)
Nyomtatás () Megjelenítés ();
Az eljárás vége

- De külsõ formanyomtatványként való használatra, más módon (nem kaptam tárgyat, nos, még nem találkoztam az ügyben, hogy tényleg szükséges volt):

Érdeklődés = Új kérelem;
.
Visszatérési kérelem Execute ();

Funkció Nyomtatás () Exportálás

TabDocument = Új táblaszámítógép;
.
Mintavétel = Lekérdezés létrehozása (). Válassza ki ();
Layout = ThisObject. Elkészíti az elrendezést ("Elrendezési formák");
.
Kiválasztás közben Következő () Ciklus
Layout.Parameters.Fill (Selection);
.
TabDokument.Vyvest (elrendezés);
A ciklus vége;

Ez felvet egy kérdést. Miért van a standard nyomtatott formában az ellenőrzés?


A kérdést feltették a tipikus nyomtatott formákon. Ez az a tipikus kérdés, amiket általában nem merül fel.


Olvastad a cikket? Vagy a címsor? Ez pontosan a címben írt, idézem: "(a helyettesítése révén összefüggésben)." Tehát ahhoz, hogy lecseréljük az űrlap kontextusát, meg kell kapnunk az objektumot.

Végtére is minden könnyebbé tehető.


Ismét idézem magam

Mint a gyakorlat azt mutatja, ennek a módszernek a használata csak igen ritka esetekben igazolható. Maga a módszer azonban érdekes az olyan eljárások és funkciók végrehajtásának lehetőségével kapcsolatban, amelyeket egy másik objektum keretében hajtanak végre.

És amennyire megértem, ezt a feldolgozást úgy hívják, hogy felhívja a "Megnyitás" parancsot.


Nem, nem értették helyesen.

Általánosságban, amennyire megértem a helyzetet, te vagy az 1C mastering útjának kezdete. Ha igen, ez a kezelés biztonságosan nem néz ki, és nem szétszedhető. Kétségbe vonta a szokásos alkalmazást, és a kezelt, így elvesztette a sajátját. Röviden, lényegtelen.

Ha igen, elnézést kérek a hangodért. Nagyon nehéz ma.

Kapcsolódó cikkek