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.