1s 8.3 nyissa meg a feldolgozási űrlap által kezelt alkalmazást. A külső feldolgozást az információs bázistól elkülönítve tárolják a lemezen

Ebben a cikkben lépésről lépésre megvizsgáljuk a külső feldolgozás létrehozását az 1C 8.3-ban felügyelt alkalmazás módban; ennek megfelelően kezelt űrlapokat fogunk használni. És ami a legfontosabb, megtanuljuk, hogyan kapcsoljuk össze az 1C konfigurációk „külső feldolgozásának” mechanizmusával, amely a 2.0-s és újabb verziójú szabványos alrendszerek könyvtárára épül.

A feladat a következő lesz: létrehozni a legegyszerűbb külső feldolgozást, amely csoportos műveletet hajt végre a „Cikk” könyvtáron, azaz beállítja a kiválasztott áfakulcs százalékát a megadott cikkcsoportra.

Ehhez azonnal elvégezzük a szükséges beállításokat a programban (az 1C 8.3 konfigurációt fontolgatjuk: „Enterprise Accounting 3.0” a kezelt űrlapokon).

A négyzet bejelölése lehetőséget ad külső feldolgozás használatára.

Új külső feldolgozás létrehozása az 1C 8.3-ban egy példa segítségével

Most menjünk a konfigurátorhoz. A "Fájl" menüben válassza az "Új..." lehetőséget. Megnyílik egy ablak a létrehozandó fájl típusának kiválasztásához. Válassza a „Külső feldolgozás” lehetőséget:

Megnyílik egy új külső feldolgozó ablak. Azonnal adjunk neki nevet. A feldolgozás lemezre mentésekor felajánlja:

Adjunk hozzá egy új ellenőrzött feldolgozási űrlapot. Jelezzük, hogy ez egy feldolgozási forma, és ez a fő:

Két részletet fogunk közölni az űrlapon:

  • Nomenclature group – hivatkozás a „Nómenklatúra” könyvtárra;
  • SelectVATRate – link az ÁFA kulcs átutalásához.

A részleteket a jobb felső ablak „Tulajdonságok” oszlopában hozzuk létre. Húzza őket az egérrel a bal felső ablakba. Az új adatoknak azonnal meg kell jelenniük az alábbi űrlapon.

A részletek sorrendje a „Fel” – „Le” nyilakkal módosítható:

Szerezzen ingyen 267 videóleckét 1C-n:

Nincs más hátra, mint a „Telepítés” gomb hozzáadása. A kezelt űrlapokon nem csak egy gombot adhat hozzá az űrlaphoz. Még ha hozzáadja is az űrlapelemek szerkezetéhez, magán az űrlapon nem lesz látható. A gombot hozzá kell rendelni ahhoz a parancshoz, amelyet végrehajtani fog. Lépjen a „Parancsok” fülre, és adja hozzá az „ÁFA kulcs beállítása” parancsot. A parancs tulajdonságai között hozzon létre egy műveletet. Válassza ki az „A kliensen” parancskezelőt. Az űrlaphoz parancsot is hozzáadhat úgy, hogy egyszerűen áthúzza az űrlapelemeket tartalmazó szakaszba.

Az űrlapmodulban létrejön egy azonos nevű eljárás. Ebben meghívjuk az eljárást a szerveren:

&OnClient

Eljárás áfakulcs beállítása (parancs)

SetVATRateOnServer();

Az eljárás vége

A szerveren az eljárás során egy kis kérést és az áfakulcs beállításával kapcsolatos műveleteket írunk:

&A szerveren

SetVATRateOnServer() eljárás

Request = Új kérés;
Kérelem.Szöveg =
"VÁLASZT
| Nomenklatúra.Link
|FROM
| Directory.Nomenclature AS Nómenklatúra
|HOL
| Nómenklatúra. Hivatkozás HIERARCHIABAN (&Nómenklatúra csoport)
| ÉS NEM Nomenklatúra.MarkDeletion
| ÉS NEM Nómenklatúra. Ez egy csoport”;

Request.SetParameter("Cikkcsoport", Cikkcsoport);
ResRequest = Request.Execute();
SelectRecordDet = ResRequest.Select();

Míg SelectRecordDet.Next() Loop

Kísérlet
SprNomObject.Write();
Kivétel
Report("Hiba """ objektum írása közben + SprNomObject + """!
|» + DescriptionError());
EndAttempt;

EndCycle;

Az eljárás vége

Visszatérünk az „Űrlap” fülre, hozzáadunk egy gombot az űrlaphoz, és társítjuk a paranccsal:

Így a feldolgozásunk használatra kész. A híváshoz az „1C Enterprise” módban a „Fájl” - „Megnyitás” menübe kell lépnie, és ki kell választania a létrehozott fájlt.

Az ebben a módban végzett munka azonban kényelmes a hibakeresési feldolgozáshoz, de nem teljesen alkalmas a felhasználó számára. A felhasználók hozzászoktak ahhoz, hogy minden „a keze ügyében” legyen, vagyis magában az adatbázisban.

Erre szolgál a „További jelentések és feldolgozás” szakasz.

De ahhoz, hogy hozzáadjuk a feldolgozásunkat, először leírást kell adnunk neki, és meg kell mondanunk a programnak a tulajdonságait.

Az „Információk a külső feldolgozásról” funkció leírása

Mondok egy példát ennek a függvénynek a tartalmára. Exportálhatónak kell lennie, és ennek megfelelően a feldolgozó modulban kell elhelyezkednie:

Funkció InformationOnExternalProcessing() Export

DataForReg = New Structure();
DataForReg.Insert("Név", "ÁFA kulcs beállítása");
DataForReg.Insert("SafeMode", True);
DataForReg.Insert("Verzió", "ver.: 1.001");
DataForReg.Insert("Információ", "ÁFA kulcs beállításának feldolgozása a Nómenklatúra könyvtárban");
DataForReg.Insert("View", "Additional Processing");

CommandTable = NewValueTable;
TabZnCommands.Columns.Add("Azonosító");
TabZnCommands.Columns.Add("Használat");
TabZnCommands.Columns.Add("View");

NewRow = TabZnCommands.Add();
NewString.Identifier = "OpenProcessing";
NewRow.Use = "OpenForm";
NewRow.View = "Nyílt feldolgozás";
DataForReg.Insert("Parancsok", TabZnCommands);

Return DataForReg;

EndFunction

Hogy jobban megértsük, a regisztrációs adatstruktúra mely mezőit kell használni, nézzük meg a „További jelentések és feldolgozás” címtár részleteit:

Mint látható, minden nagyon egyszerű. Csak egy attribútum nem egyezik: „Indítási opció” – „Használat”. Ha megnézzük az egyik gyakori modul kódját, látni fogjuk, hogyan keletkezik egy csomó ilyen mező:

Annak meghatározásához, hogy egy szerkezet mely mezőire van szükség, először nem írja le, egyszerűen hozzon létre egy üres mezőt, majd használja a hibakeresőt. Ha a feldolgozás regisztrálásakor nyomon követi a modulokat, azonnal világossá válik, hogy mely mezőket kell kitölteni és melyeket nem.

Külső feldolgozás csatlakoztatása az 1C-ben 8.3

A külső feldolgozáshoz (és a külső nyomtatási forma is külső feldolgozás) van egy objektum Külső feldolgozás.

Nézzünk két lehetséges esetet:

A külső feldolgozást az információs bázistól elkülönítve tárolják a lemezen

A külső feldolgozás programozott megnyitásához az 1C-ben ismernie kell a fájl címét. Ennek ismeretében vagy megnyithat egy feldolgozási űrlapot, vagy lekérhet egy feldolgozó objektumot további műveletek végrehajtására (például objektummodulból export függvények meghívására).

Külső feldolgozási űrlap megnyitása

Egy külső feldolgozási űrlap programozott megnyitásához az 1C-ben használja a funkciót GetForm() tárgy Külső feldolgozás. A függvénynek több paramétere van. Fontolja meg a fő feldolgozási űrlap egyszerű megnyitását:


Form = külső folyamatok. GetForm(Fájlcím) ;
Forma. Nyisd ki();

Egy kisebb külső feldolgozási űrlap megnyitásához meg kell adni a nevét.

//A FileAddress változó tartalmazza a külső feldolgozó fájl teljes elérési útját
Form = külső folyamatok. GetForm(fájlcím, "Kisforma") ;
Forma. Nyisd ki();

Külső feldolgozás megnyitása objektumként

A külső feldolgozás objektumként történő fogadásához egy függvényt használnak Teremt() tárgy Külső feldolgozás.

//A FileAddress változó tartalmazza a külső feldolgozó fájl teljes elérési útját
ProcessingObject = Külső feldolgozás. Create(Fájlcím) ;

Alapértelmezés szerint az összes feldolgozás csökkentett módban nyílik meg. A letiltásához használja a következő lehetőségeket:

//A FileAddress változó tartalmazza a külső feldolgozó fájl teljes elérési útját

Külső feldolgozási vagy nyomtatási űrlap elmentve az információs bázisba

Számos konfigurációban lehetőség van a külső nyomtatott űrlapok és a feldolgozás közvetlenül az információs bázisba történő mentésére. Ehhez a kézikönyvet használják. Külső feldolgozás. Maga a külső feldolgozás bináris adatként vagy attribútumokban kerül tárolásra TárolásKülső feldolgozás, vagy a táblázatos részben Affiliáció a kellékekben TárolásKülső feldolgozás.

A külső feldolgozás megnyitásához szüksége lesz:

  1. Vegye ki a tárolóból.
  2. Mentse a feldolgozott fájlt lemezre.
  3. Nyisson meg egy űrlapot, vagy szerezzen be egy feldolgozó objektumot.
  4. Ha külső nyomtatott űrlappal van dolgunk, akkor a szabványos adatokat tudjuk kitölteni Objektum referenciaés hívja meg az export függvényt Fóka.

//A RefLink változó az ExternalProcessings címtárelemre mutató hivatkozást tartalmaz
DvData = RefLink. Külső feldolgozási tároló. Get() ;
Fájlcím = GetTemporaryFileName() ;
DvData. Write(Fájlcím) ;
ProcessingObject = Külső feldolgozás. Create(Fájlcím, False) ;