Számviteli információk. Számviteli információ Negatív egyenlegek ellenőrzése 1 másodpercben 8.3

  • 05.02.2024

Az oktatóvideóimban gyakran beszélek arról, hogy az 1C adatbázist fel kell készíteni az időszakzárásra és a jelentésekre. És az ilyen előkészítés egyik fontos pontja az áruk, anyagok és késztermékek negatív egyenlegének ellenőrzése. Milyen jelentéseket kell használni a készletszámlák állapotának ellenőrzéséhez az 1C: Számvitelben? Nézzünk meg néhányat közülük.

1. Jelentés „Számlamérleg”

Sok könyvelő hozzászokott ahhoz, hogy számlamérlegekkel dolgozzon. Ez a jelentés valóban használható a készletegyenlegek ellenőrzésére, csak meg kell győződnie arról, hogy a beállítások mennyiségi mutatók megjelenítésére vannak beállítva.
Kattintson a „Beállítások megjelenítése” gombra, és lépjen az „Indicators” fülre.

Ezután alaposan átnézzük a jelentést, és elemezzük az észlelt hibákat

A mérleg kényelmes, mert lehetővé teszi nemcsak a negatív mennyiségi egyenlegek meglétének értékelését, hanem más problémás helyzetek észlelését is:
- leltári tételek mennyiségi egyenlege összeg nélkül;
- teljes egyenleg mennyiség nélkül;
- negatív egyenleg.
Ha azonban nagyszámú tétel szerepel a könyvelésben, akkor egy ilyen ellenőrzés meglehetősen munkaigényes lehet. Ezen kívül minden könyvelési számlához (10, 41, 43) külön-külön kell előállítani a SALT-ot, ami szintén bonyolítja némileg a munkafolyamatot.

2. "Negatív egyenlegek ellenőrzése" jelentés

Az 1C: Enterprise Accounting 8 Edition 3.0 konfigurációja olyan jelentést biztosít, amely ideális a készletelemek negatív mennyiségi egyenlegeinek figyelésére. A jelentés a „Raktár” fülön található.

Megjelöljük az időszakot, a szervezetet és elkészítjük a jelentést.

A jelentés csak azokat a tételeket tartalmazza, amelyeknél negatív mennyiségi egyenleget észleltek. Nagy előnye, hogy az összes készletnyilvántartás adatait elemzik. Véleményem szerint kényelmesebb a jelentéssel dolgozni, mint az OSV-vel.
De van egy mínusz is - a jelentés csak a negatív mennyiségi egyenlegek nyomon követését teszi lehetővé, a színfalak mögött hagyva az egyéb problémákat, amelyeket a SALT lehetővé tesz.

3. Jelentés „A részkonto elemzése”

Többször beszéltem erről a jelentésről. A Subconto elemzés az egyik kedvenc jelentésem, amely lehetővé teszi nemcsak a hibák észlelését, hanem sok esetben az okok megértését is.
Lépjen a „Jelentések” - „Subconto Analysis” szakaszra.

Válassza ki a „Nómenklatúra” alkontot, és ellenőrizze, hogy a mennyiségi mutatók megjelenítése engedélyezve van-e a jelentés beállításaiban.

A subconto elemzés jó, mert lehetővé teszi, hogy információkat szerezzen a készletelemek mozgásáról az összes számviteli számlán. Például olyan helyzetek nyomon követésére, amikor egy termék megérkezett az egyik könyvelési számlára, de a másikról eladták.

Nagy számú elem esetén azonban nehéz lehet az adatok elemzése.
A jelentéssel való munkavégzésről bővebben az 1C - VIDEÓ „Subconto Analysis” jelentésének kezelése című videós bemutatójában beszéltem.
Így minden áttekintett jelentésnek megvannak a maga előnyei és hátrányai. Munkám során javaslom ezek kombinálását:
- találjon durva hibákat a „Negatív egyenlegek ellenőrzése” jelentés segítségével;
- majd tekintse meg a SALT-ot az összes készletszámlához;
- a hibás mérleg okainak azonosításához használja a „Subconto Analysis” jelentést.
Két hasznos videóban is tárgyaltam a készletelemek elszámolása során felmerülő hibák megtalálásával és kijavításával kapcsolatos érdekes példákat:

Minden szervezetnek figyelemmel kell kísérnie a készletek egyenlegét. És gyakran adódik olyan helyzet, amikor a termék valóban elérhető, de nincs benne a programban. És akkor a könyvelő kénytelen dönteni:

  • engedje meg, hogy eladják;
  • el kell halasztani, amíg világossá nem válik, hogy miért alakult ki ez a helyzet.

A döntés főszabály szerint a szervezetben az egyenleg-elszámolással kapcsolatban követett politika alapján történik. Néha félreteheti a terméket, és elmondhatja a vevőnek, hogy most nem lehet eladni. Néha ezt lehetetlen megtenni. Például amikor a vásárló meglátja ezt a terméket, vagy már a kezében tartja.

Természetesen egyszerűen létrehozhat egy értékesítési bizonylatot, és nem könyvelheti el, de ezt nem minden szervezet teszi lehetővé. Ezért az 1C 8.3 programban (mint a 8.2-ben) lehetőség van a negatív egyenlegek vezérlésének letiltására.

Ha az egyenlegszabályozás engedélyezve van, akkor raktáron (vagy a szükséges számlán) nem lévő termék eladásakor a program a következő figyelmeztetést küldi:

A „Termékek” lista 1. sorában található „Mennyiség” oszlop hibásan van kitöltve.
A feltüntetett mennyiség meghaladja az egyenleget. Maradék: 18; Hiányzik: 111 093

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

A negatív egyenlegek ellenőrzésének letiltása az 1C-ben 8.3

Az egyensúlyszabályozás letiltásához vagy engedélyezéséhez az 1C-ben lépjen a „Fő” menübe, majd a „Beállítások” részben válassza a „ ” lehetőséget.

Az 1C Accounting egyes verzióiban ezek a beállítások az „Adminisztráció - Dokumentumfeladási beállítások” menüben találhatók.

A „Számviteli paraméterek” részben el kell lépnie az 1C „Készletek” fülre, és be kell jelölnie „A készletek leírásának engedélyezése, ha a számviteli adatok szerint nincs egyenleg” jelölőnégyzetet:

Ezután már csak a „Mentés és bezárás” gombra kell kattintania. Most, amikor leírják, az egyenlegeket nem fogják ellenőrizni.

De egy ilyen módszer elkerülhetetlenül negatív egyenlegek megjelenéséhez vezet a raktárban (értsd: a programban). Nézzük meg, hogyan kezeljük ezt.

Jelentés „Negatív egyenlegek ellenőrzése”

A legegyszerűbb esetben csak ki kell választania egy időszakot, és kattintson a „Létrehozás” gombra. És itt várt rám az első meglepetés.

Kifejezetten szimuláltam a tesztprogramban egy olyan helyzetet, amikor több árut adtam el, mint amennyi raktáron van. Ráadásul ezt az eladást 2013-ban bonyolította le. Logikusan most, 2016-ban is mínuszban van ugyanaz a termékem. Ezért nem is nyúltam hozzá az időszakhoz, hanem azonnal rákattintottam a „Generál” gombra. Nekem nem jött be. Kiderült, hogy a jelentés csak a kiválasztott időszakra vonatkozó negatív egyenlegekről tud információt megjeleníteni.

A raktári egyenlegek ellenőrzése kötelező számviteli eljárás minden áruval foglalkozó vállalkozásnál. Gyakran találkozhat olyan helyzettel, amikor nincs termék a programban, de valójában a raktárban van. Ilyen helyzetben két lehetőség van:

  • Küldje el eladásra;
  • Hagyja a raktárban a helyzet körülményeinek tisztázásáig.

A választás számos tényezőtől függ, például a szervezeti politikától vagy a konkrét helyzettől. Ha a termék a pulton van és a vásárló érdeklődik iránta (a kezében tartva), akkor nem célszerű megtagadni az eladást.

Egyes vállalkozások gyakorlatban hoznak létre értékesítési bizonylatot feladás nélkül, de nem mindegyik használja ezt a gyakorlatot. Ilyen helyzetekben az 1C program a legújabb verzióiban lehetőséget kínál a negatív egyenlegek vezérlésének letiltására.

Az ellenőrzés aktiválásakor a program szerint raktáron nem lévő áruk értékesítése figyelmeztetést kap a felhasználóra: „A „Termékek” lista 1. sorában a „Mennyiség” oszlop hibásan van kitöltve. „A feltüntetett mennyiség meghaladja az egyenleget. Maradt: 18. Hiányzik 111.093.”

A negatív egyenlegek ellenőrzésének letiltása az 1C-ben

Az 1C egyenlegek vezérlésének be- és kikapcsolása a „Fő” - „Beállítások” - „Számviteli paraméterek” - „Készletek” menün keresztül történik. Itt be kell jelölni a „Készletleírás engedélyezése, ha a számviteli adatok szerint nincs készlet” négyzetet.

Ezt követően a műveletet a „Rögzítés és bezárás” gomb megerősíti. Az ilyen tevékenységek viszont garantáltan alapul szolgálnak a számviteli negatív egyenlegek kialakulásához. Ezeket meg kell szüntetni.

Jelentés „Negatív egyenlegek ellenőrzése”

Ez a jelentés a „Raktár” - „Jelentések” menün keresztül jön létre, ahol a bizonylat bemutatásra kerül. A felhasználónak meg kell határoznia a kérés intervallumát, és rá kell kattintania a „Létrehozás” gombra. A meghatározott időszak hiánya nem teszi lehetővé a negatív egyenlegek megjelenítését, ami a rendszer olyan jellemzője, amely megköveteli az „Időszak” oszlop kötelező kitöltését.

A kész jelentés a következőképpen néz ki.

Magához a jelentéshez szabványos szűrőkészlet áll rendelkezésre, beleértve a csoportosítást, rendezést és egyéb adatátalakításokat a felhasználói kéréseknek és igényeknek megfelelően. A „Beállítások megjelenítése” gombbal manuálisan is felvehet további sorokat a jelentésbe.

Kereskedelmi vagy feldolgozóipari vállalkozásoknál negatív egyenlegek „felbukkannak” a számviteli rendszerben. Túlzottan leírt árukat/anyagokat tükröznek.

Milyen okai vannak előfordulásuknak?

Nincs érkezés

A leggyakoribb ok gyakran az áru átvételének hiánya vagy a kezdeti egyenlegek rögzítése lehet. Például vásárolt egy terméket, de még nem sikerült aktiválnia a rendszerben, de már sikerült eladni. Az történik, hogy az árut nyilvántartásba vették, majd az üzletbe szállították és eladták, de valaki törölte az átvételi bizonylatot.

Ebben a helyzetben a helyes lépés az lenne, ha ellenőrizzük a nyugta bizonylatának meglétét az adatbázisban. Ha ott van, és nincs feladva, ellenőrizze a kitöltést, és postázza. Ha az átvételi bizonylat egyáltalán nem szerepel az adatbázisban, akkor azt visszamenőleg kell megadni. Meg kell érteni, hogy a lezárt adózási időszakban a bizonylatok visszamenőleges kiegészítése az adóösszegekben, különösen az áfában módosulhat.

Újra osztályozás

Az általunk vizsgált jelenség másik gyakori oka az egyik termék (anyag) hibás besorolása vagy túlzása, ugyanakkor egy másik termék (anyag) hiánya. Például a programban csak 10 darab fekete pénztárca van raktáron megjelölve, de egy boltban az eladó egy piros pénztárcát ad el, és az eladását 5 darabos mennyiségben regisztrálja az adatbázisban. Ennek eredményeként a fekete pénztárcák egyenlege az adatbázisban nem csökken, viszont a piros pénztárcákban megjelenik az egyenlegünk.

Ebben az esetben az egyenlegek korrekcióját a következő módon oldják meg: egy termék nyilvántartásba vétele és egy másik leírása kerül rögzítésre. Ehhez létrejön egy „Áruk feladása” bizonylat, amelyben 5 tétel nagybetűvel íródik. piros pénztárcák. Ezután létrejön egy „Az áruk leírása” dokumentum, és 5 tétel kerül leírásra. fekete pénztárcák.

Ha az 1C:Accounting 3.0-ban negatív egyenleg van egy terméknél (anyagoknál), akkor az „Árueladások” bizonylat feladásakor egy tájékoztató üzenet jelenik meg, amely szerint ezt a bizonylatot nem lehet könyvelni, mivel az egységek száma a dokumentum táblázatos részében megjelenített egyenleget meghaladja.

1. ábra Üzenet a bizonylatban, ha nincs egyenleg a raktárban

Figyelmeztető jelzések a mérlegben - a negatív egyenlegek pirossal vannak kiemelve!



2. ábra Nyomon követés OSV által

A negatív egyenlegek szabályozásának engedélyezése vagy letiltása az 1C BP 3.0-ban

A vezérlést az „Adminisztráció” részben állíthatja be, majd kattintson a „Dokumentumok feladása” hivatkozásra.



3. ábra Beállítás

A vezérlés letiltásához aktiválnia kell a „Készletleírás engedélyezése, ha a számviteli adatok szerint nincs egyenleg” paraméter jelzőjét.



4. ábra Egységek leírásának engedélyezése negatív egyenlegjelzőkkel

Előfordul, hogy egy olyan termék sürgős értékesítéséhez, amelyet szintén sürgősen ki kell szállítani, ideiglenesen le kell tiltania a vezérlést. Az „Implementations” dokumentum felkerül a rendszerbe, majd a vezérlés újra bekapcsol. Ezután ne felejtse el elemezni az egyenlegeket, hogy kijavítsa a negatív terméket okozó könyvelési hibát.

Az egyenlegek raktáronkénti szabályozásához be kell állítania az analitikát a „Számviteli beállítások” között az „Adminisztráció” menüponton keresztül.



5. ábra Paraméterek

Kattintson a „Számlaterv beállítása” elemre.



6. ábra Beállítási paraméter

Kattintson a „Cikk, tételek és raktárak szerint (mennyiség és mennyiség szerint)” lehetőségre.



7. ábra Készletnyilvántartási paraméterek

Az analitika telepítésekor a „Raktárak (tárolóhelyek) szerint” gombra kattintva kiválasztjuk a nyilvántartások vezetésének módját.



8. ábra A raktárelemzés aktiválása

Ha a „mennyiség és mennyiség szerint” beállítást választja, akkor ennek megfelelően a számvitel a raktárakra külön-külön mennyiségi és teljes könyvelésben történik, ha pedig „mennyiség szerint”, akkor az egyes raktárakkal összefüggésben csak mennyiségi, és a leírási összegek úgy határozzák meg, hogy a készlet árát elosztják az összes raktárban lévő teljes mennyiséggel.

Ellenőrző jelentések

A „Negatív egyenlegek ellenőrzése” jelentés a szervezetek áruinak észlelt negatív egyenlegeinek elemzésére szolgál. Megnyithatja a „Raktár – negatív egyenlegek ellenőrzése” menüpontban.



9. ábra Jelentések az egyenlegek ellenőrzéséhez



10. ábra Ellenőrző jelentés űrlap

A jelentésbeállításokban megadhatja, hogy milyen adatokra építse fel a jelentést, például csoportosítsa az adatokat Szervezet, Raktár, Leírási bizonylat, Cikk stb. szerint.



11. ábra Vezérlő jelentés beállításai

A kijelölésben megadható, hogy milyen adatokról készítsen jelentést például egy adott raktárról vagy egy problémás cikkről.



12. ábra Kiválasztások az ellenőrzési jelentésben



13. ábra Ellenőrző jelentés generálása

A negatív egyenlegek a számviteli hibák egyfajta mutatói. Fontos a készletegyenlegek folyamatos figyelemmel kísérése és azok időbeni korrekciója. A meglévő hibás egyenlegek problémákat okoznak a felhasználók operatív munkájában, és hibás költségszámítást, átértékelést és más fontos számviteli mutatókat is okozhatnak.

Ez a cikk az 1C-megvalósítóknak szól - és különösen azoknak, akik az 1C-tanúsítványra készülnek: Platform Specialist.

Ma megnézzük 2 módszer az egyenlegek ellenőrzésére - nem csak a raktári egyenlegek, hanem például a kölcsönös elszámolások is ("Mekkora az ügyfél jelenlegi tartozása, és lehetséges-e árut szállítani neki?")

Mindkét módszer használatos a szabványos konfigurációkban és a tanúsítási feladatokban. És mivel ketten vannak - világosan meg kell értenie, hogy mikor alkalmazható az „új” technika, és mikor csak a „régi”..

Ez alapvető tudás az 1C programozók számára, javasoljuk, hogy ne hagyjanak hiányosságokat az ilyen területeken. Tanulni kell 15 perc :)

A probléma megfogalmazása

Vegyünk egy egyszerű konfigurációt az „Áru átvétele” és az „Árueladás” dokumentumokkal:

Az egyenlegek elszámolására a „Szabad egyenlegek” felhalmozási nyilvántartást használják:

Az „Áru átvétele” bizonylat feladásakor a következő mozgásokat hajtják végre:

Feldolgozási eljárás (hiba, mód)


Minden TechStringProducts From Products ciklushoz
Movement = Movements.FreeRemains.Add();
Movement.MovementType = AccumulationMovementType.Incoming;
Movement.Period = dátum;
Movement.Nomenclature = TechStringProducts.Nomenclature;
Movement.Quantity = TechStringProducts.Quantity;
EndCycle;

Az eljárás vége

Az „Áru átvétele” bizonylat feladása a mozgástervezővel történt, és nem érdekes, mivel a raktárba érkezéskor nincs szükség egyenlegellenőrzésre.

Néha egyenleg-ellenőrzést is végrehajtanak az „Áru átvétele” bizonylatnál - így a bizonylat törlésekor vagy újbóli könyvelésekor nem keletkezik negatív egyenleg.

Például 10 új LG TV érkezett a raktárba, ebből 6 darab elkelt. Ha az átvételi bizonylat 10 darabot tartalmaz. fix 5 db. – negatív egyenleg „mínusz 1 db” keletkezik.

A szabványos UT 11-ben az ilyen vezérlés a „Szervezetek áruinak ellenőrzése nyugták törlésekor” funkcióval van engedélyezve.

Az „Áru értékesítése” bizonylat feladásakor meg kell szervezni a szermaradványok elleni védekezést. Ha nincs elég termék, a dokumentum nem kerül feladásra, és diagnosztikai üzenet jelenik meg. Ez a probléma megoldása folyamatban van.

Szándékosan egy egyszerű problémán dolgozunk, ahol nincs kiszámítva a leírási költség. Ez lehetővé teszi számunkra, hogy kifejezetten a maradékanyag-szabályozás árnyalataira összpontosítsunk.

jegyzet– az alábbiakban bemutatott algoritmusok képzésre készültek, és a lehető legvilágosabbaknak kell lenniük.
Lehet őket optimalizálni, de akkor a „megértési együttható” alacsonyabb lesz, ezért ebben a cikkben nem foglalkozunk ezzel.

Természetesen Ön is optimalizálhatja őket, vagy elvégezheti az 1C gyorsítása és optimalizálása című tanfolyamunkat :)

Mint már megértette, a probléma megoldása kétféleképpen történhet. Kezdjük egy technikával, amelyet az 1C:Enterprise 8.0 napjai óta használnak.

Régi szermaradék-szabályozási módszer

A régi szermaradék-szabályozási technika elve a következő: Ellenőrizzük, hogy van-e még áru a kívánt mennyiségben. Ha van, akkor kiírjuk, ha nincs, akkor hibát jelentünk..

A régi módszer algoritmusa több blokkból áll:

  1. A kérelem lekéri a termékegyenlegeket és a dokumentumadatokat
  2. A ciklus figyeli az áruk elegendőségét
  3. Ha nincs elég áru, akkor a bizonylat nem kerül feladásra
  4. Ha van elegendő áru, fogyasztási mozgásokat hajtanak végre

Így néz ki a programkód:

// 1. Régi regisztermozgások törlése
Movements.FreeRemainnders.Write = Igaz;
Movements.Record();

// 2. Igény szerint bizonylatadatok és nyilvántartási egyenlegek átvétele
Request = Új kérés;
Kérelem.Szöveg =
"VÁLASZT

|PLACE Termékek
|FROM
|HOL
| Products.Link = &Link
|GROUP BY
| Termékek.Nómenklatúra
|INDEX BY
| Elnevezéstan
|;

|KIVÁLASZTÁS
,
| REPRESENTATIONLINK(Products.Nomenclature) AS NomenclatureRepresentation,
| Products.Quantity AS Mennyiség,
| ISNULL(fennmaradó.Számmaradék, 0) AS maradék
|FROM
| Products AS Termékek
| LEFT JOIN RegisterAccumulations.FreeRemains.Remains(
| &Idő pillanata,
| B nómenklatúra
| (VÁLASZT
| Termékek.Nómenklatúra AS Nómenklatúra
| TÓL TŐL
| Software Products.Nomenclature = Remaining.Nomenclature";
Request.SetParameter("TimePoint", TimePoint());

// 3. A lekérdezés eredményeinek bejárása

// 4. Áru elegendőségének ellenőrzése
Hiány = SampleProducts.Quantity - SampleProducts.Remaining;
Ha Deficit>0 Akkor
Refuse = igaz;
Message.Text = "A "+SelectionProducts.NomenclaturePresentation+" termék nem elegendő mennyiségben "+Hiány+" db.";
Üzenet.Üzenet();
endIf;

// 5. Menjen a ciklus elejére, ha hibák voltak
Ha kudarc Akkor
Folytatni;
endIf;

// 6. Mozgások végrehajtása regiszterekbe
Movement.Period = dátum;

EndCycle;

// 7. A zászló beállítása a mozgások rögzítéséhez a tranzakció végén
Movements.FreeRemainnders.Write = Igaz;

Az eljárás vége

Fogalmazzuk meg az algoritmus legfontosabb pontjait.

1. Régi regisztermozgások törlése

Az algoritmus alatt egy kérés érkezik a regiszter többi részéhez.

Ha az aktuális dokumentumot korábban feladták, akkor van régi dokumentummozgások beérkezésének valószínűsége egy kérelemben– ez komoly probléma.

Mikor lehetséges egy ilyen helyzet? Mikor van a dokumentum dátuma halad előre.

Mutassuk meg egy példán, hogy ez mire vezet:

  1. Maradt asztali lámpák 10 db.
  2. A 17.02.16-án kelt dokumentum feldolgozás alatt áll, 6 db lámpát írunk le
  3. A dokumentumban a dátum 17.02.17-re módosult (a dátum legalább 1 másodperccel előre tolható), tegyük fel újra a dokumentumot.

Ha nem törli a mozgásokat, a rendszer 2 darab hiányt jelez. Miért? Igen, mert a régi dokumentummozgalmak 10 meglévő lámpából 6-ot leírtak. Ezután a rendszer megpróbál még 6 darabot leírni, de már csak 4 van hátra.

A probléma 3 soros kóddal oldható meg:

  • A rekordkészlet törlése folyamatban van (lehet, hogy az űrlapon vagy a korábbi kezelőkben olvasható volt)
  • A rekordkészlet rendelkezik az „Írás” jelzővel
  • Minden olyan készlet rögzítésre kerül, amelynél a „Record” jelző be van állítva.

Szigorúan véve szabályozhatjuk a mozgások tisztítását dokumentumok feladása során:

A végrehajtás megszakításánál javasolt a mozgások törlése – mi magunk szabályozzuk, hogy mikor kell valóban törölnünk a mozdulatokat.

2. Igény szerint bizonylatadatok és nyilvántartási egyenlegek átvétele

A kérelem két csomagból áll:

  • Az elsőben csoportosított adatokat kapunk a táblázatos részből - egy ideiglenes táblázatot hozunk létre
  • A második kérésben a nyilvántartásból a maradványok a bizonylatadatokhoz kerülnek.

Amire érdemes figyelni ebben a kérésben:

  1. Ideiglenes tábla létrehozásakor indexelve lesz az a mező, amelyen az összekapcsolás megtörténik – ez az optimális teljesítmény érdekében történik
  2. Az egyenlegek beérkezésének pillanata – a bizonylat időtengelyen elfoglalt helyzetének felel meg
  3. Előfordulhat, hogy a regiszterben nincsenek maradékok - ezért bal oldali összekapcsolást hajtanak végre, és az „ECTNULL” függvényt használják a „Mennyiség” erőforráshoz - a NULL értéke nullára csökken.

3. A lekérdezés eredményeinek megkerülése

A kidolgozott kérés tételenként csoportosított bizonylatadatokat és egyenlegeket tartalmaz.

Egy ciklusban végignézzük ennek a kérésnek az eredményét.

4. Ellenőrizze az áruk elegendőségét

Megállapítjuk az áruhiányt.

Ha a hiány nagyobb, mint nulla, az áruhiányt jelent:

  • Diagnosztikai üzenetet ad ki
  • A könyvelési feldolgozás „Refusal” paraméterét állítsa „Igaz” értékre.

Ha az „Elutasítás” értéke „Igaz”, akkor a bizonylat-könyvelési tranzakció eredménye nem kerül rögzítésre. Egyszerűen fogalmazva, ez egy parancs a rendszernek, hogy ne dolgozza fel ezt a dokumentumot.

5. Ha hibák voltak, lépjen a ciklus elejére

Ha a ciklus ezen vagy előző lépéseinél hibák voltak (Failure = True), akkor nincs értelme a mozgások kialakításának. Mindazonáltal nem kerülnek rögzítésre az adatbázisban.

6. Mozgások végrehajtása regiszterekben

Ha az egyenlegellenőrzés sikeres volt, létrehozzuk a költségmozgást.

7. A mozgásrögzítés jelzőjének beállítása a tranzakció végén

Ha ez a zászló nincs beállítva, akkor a mozgások NEM kerülnek rögzítésre.

A bizonylatfeladási tranzakció végén csak azok a rekordkészletek kerülnek kiírásra, amelyeknél be van állítva az „Írás” jelző.

Az igazságosság kedvéért megjegyezzük, hogy egy rekordkészlet „Rekord” tulajdonságának beállításának egyetlen feltétellel van értelme - a „Rekord mozgások végrehajtása során” dokumentumtulajdonságban meg kell adni a „Rekord kiválasztva” értéket:

Azonban a „Record selected” érték a de facto szabvány:

  • Standard oldatokban használják
  • Alapértelmezés szerint új dokumentumok létrehozásakor.

Az ingatlan másik értéke – „Módosított írás” – elavult, és gyakorlatilag nem fordul elő a modern konfigurációkban.

Új módszer a maradékanyag-ellenőrzésre

Az új módszer azt az elvet használja, hogy a szükséges árukat leírjuk, majd ellenőrizzük, hogy nem keletkeztek-e negatív egyenlegek a bizonylat áruira. Ha igen, akkor vissza kell görgetnie a dokumentumot.

Mint látható, alapvető különbség van az egyenlegek ellenőrzésének pillanatában:

  • A régi módszer az, hogy először ellenőrizzük az egyenleget, majd írjuk le
  • Új technika - először leírjuk, majd ellenőrizzük az egyenleget.

Ennek eredményeként a programkód így fog kinézni:

Feldolgozási eljárás (hiba, mód)

// 1. Dokumentum adatok átvétele kérésre
Request = Új kérés;
Query.TemporaryTableManager = ÚjTemporaryTableManager;
Kérelem.Szöveg =
"VÁLASZT
| Products.Nomenclature AS Nómenklatúra,
| SUM(Tételek.Mennyiség) AS Mennyiség
|PLACE Termékek
|FROM
| Az áruk és szolgáltatások értékesítése AS áruk
|HOL
| Products.Link = &Link
|GROUP BY
| Termékek.Nómenklatúra
|INDEX BY
| Elnevezéstan
|;
|////////////////////////////////////////////////////////////////////////////////
|KIVÁLASZTÁS
| Products.Nomenclature AS Nómenklatúra,
| Termékek.Mennyiség AS Mennyiség
|FROM
| Products AS Products";
Request.SetParameter("Link", Link);
RequestResult = Request.Execute();

// 2. Mozgások kialakulása - fogyasztás nyilvántartása
Movements.FreeRemains.Clear();
SelectionProducts = Lekérdezés eredménye.Select();
Míg SelectProducts.Next() Loop
Mozgás = Movements.Free Remainings.AddExpense();
Movement.Period = dátum;
Movement.Nomenclature = SelectionProducts.Nomenclature;
Movement.Quantity = SampleProducts.Quantity;
EndCycle;

// 3. Mozgások rögzítése az adatbázisban
Movements.FreeRemainnders.Write = Igaz;
Movements.Record();

// 4. Lekérdezés, amely negatív maradékokat kap a regiszterből
Kérelem.Szöveg =
"VÁLASZT
| Remains Nomenclature AS Nomenclature,
| REPRESENTATIONLINK(Remains.Nomenclature) AS NomenclatureRepresentation,
| -Remaining.QuantityRemaining AS Deficit
|FROM
| RegisterAccumulations.FreeRemains.Remains(
| &Idő pillanata,
| B nómenklatúra
| (VÁLASZT
| Termékek.Nómenklatúra AS Nómenklatúra
| TÓL TŐL
| Termékek AS Termékek)) AS Maradékok
|HOL
| Remaining.QuantityRemaining< 0";

Szegély szabályozása = New Boundary(TimePoint(), BorderView.Include);
Request.SetParameter("TimePoint", Control Boundary);
RequestResult = Request.Execute();

// 5. Üzenetek megjelenítése áruhiányról
Ha nem QueryResult.Empty() Akkor
Refuse = igaz;
ErrorSelect = QueryResult.Select();
Míg SelectErrors.Next() Loop
Üzenet = New MessageToUser;
Message.Text = "A "+SampleErrors.NomenclaturePresentation+" termék nem elegendő mennyiségben "+SampleErrors.Deficiency+" db.";
Üzenet.Üzenet();
EndCycle;
endIf;

Az eljárás vége

Nézzük meg az algoritmus legfontosabb pontjait.

1. Igény szerint dokumentumadatok átvétele

Ez a lekérdezés szükséges az adatok csoportosításához a dokumentum táblázatos részében.

Ne feledje, hogy a köteg első lekérdezése ideiglenes táblát hoz létre – a következő lekérdezésben ez kerül felhasználásra. Ez a lekérdezéshez létrehozott ideiglenes táblakezelőnek köszönhetően lehetséges.

2. Mozgások kialakulása - fogyasztás nyilvántartása

A ciklusban a dokumentumból származó adatok beírásra kerülnek a nyilvántartásba - azaz az áruk feltétel nélküli (ellenőrzés nélküli) leírása történik.

3. Mozgások rögzítése az adatbázisban

Ahhoz, hogy a nyilvántartásban szereplő egyenlegek megváltozzanak, a mozgásokat rögzíteni kell.

4. Negatív egyenlegek fogadásának lekérdezése a nyilvántartásból

Most egy egyszerű kéréssel negatív egyenlegeket választunk ki a bizonylati árukhoz.

Itt az első lépésben létrehozott ideiglenes tábla kerül felhasználásra - egy feltételt szabunk az elemnek (ehhez nem hozunk létre új „Request” típusú objektumot, hanem a korábban elkészítettet használjuk).

Ügyeljen az időpillanat átvitelére - a „Határ” adattípust használja. A fennmaradó egyenlegeket közvetlenül az aktuális bizonylat UTÁN kell beérkezni.

Lehetett-e egyenleget szegély nélkül kapni, ha például 1 másodpercet adtunk a bizonylat dátumához?

Nem! Végtére is, egy másodperc alatt nagy számú dokumentum lehet. Ezért az egyetlen helyes lehetőség a „Beleértve” szegélytípus használata.

5. Üzenetek megjelenítése áruhiányról

Ha a lekérdezés eredménye nem üres, akkor negatív maradványok vannak - ebben az esetben a dokumentum nem kerül feldolgozásra, és minden hibáról üzenet jelenik meg.

Az új módszerrel végzett szermaradék-szabályozás előnyei

Tehát mindkét algoritmus ugyanazt a problémát oldja meg.

Az algoritmusok közötti különbség látható, de az előnyök nem nyilvánvalóak.

Tehát emeljük ki őket:

  1. Nem kell törölni a régi dokumentummozgásokat. Lényegében ez az a művelet, amikor egy üres mozgáskészletet írunk az adatbázisba, és töröljük a meglévő mozgásokat - ezek meglehetősen erőforrás-igényes műveletek
  2. A negatív egyenlegekre vonatkozó adatokat lekérő lekérdezés csak egy táblát ér el - nincs szükség bal oldali összeillesztésre a dokumentum adataival és az „ISNULL()” függvény használatára

Ezenkívül az üzleti folyamatok normál menete során a felhasználó olyan mennyiséget jelez, amely nem haladja meg a raktár egyenlegét.

Ebben az esetben a második kérés nem ad vissza semmilyen adatot, és a dokumentumok feldolgozása a lehető leggyorsabb lesz.

Valóban olyan fontosak ezek az ezredmásodpercek?

A kis mennyiségű adatot és felhasználót tartalmazó adatbázisokon a különbség nem lesz észrevehető. De a több tucat felhasználót számláló elfoglalt rendszerekben minden ezredmásodperc költsége magas.

Ezenkívül az 1C: Platform Specialist vizsga során mindenképpen új egyenlegszabályozási módszert kell alkalmaznia, ha egy konkrét feladat ezt lehetővé teszi.

Rendben, akkor mindig új technikát kell használnia, igaz?

Nem, ez nem igaz!

Az új technika csak akkor alkalmazható, ha a dokumentum feldolgozásához szükséges összes adat benne van a dokumentumban.

Vagyis az adatok megszerzéséhez nem kell hozzáférni az egyenlegeket vezérlő regiszterekhez.

Így például, ha az összeget a „Szabad egyenlegek” nyilvántartásban is figyelembe vették, akkor a régi ellenőrzési módot kellene alkalmazni.

Egyébként az „1C: Trade Management 11” szabványban az egyenlegellenőrzést új módszerrel, az „1C: Számvitel 8”-ban pedig a régi módszerrel hajtják végre.

De ez még nem minden!

A fent bemutatott algoritmusok csak oktatási célokra használhatók. A lényeg, hogy nem veszik figyelembe vezérelt zárak, amelyet akkor kell használni, ha egynél több felhasználó van a rendszerben.

Mindkét szermaradék-szabályozási módszer blokkjait tárgyaljuk. Ebben a cikkben egy összetettebb problémát is megoldunk - az egyenlegek ellenőrzése mellett a leírt tételek költségét is kiszámítjuk. Javasoljuk, hogy alaposan tanulmányozza át.

És kezdésnek csak annyit a zár felszerelése az új módszerrel nagyon egyszerű– és ez egy másik előnye a szermaradványok elleni védekezés új módszerének.

Eredmények

Foglaljuk össze röviden.

Két szermaradék-szabályozási technikát vizsgáltunk, amelyek mindegyikét modern, tipikus konfigurációkban használják.

A legfontosabb különbségek a technikák között az egyenlegek ellenőrzésének pillanatában:

  • Régi technika - vezérlés a mozgások regiszterekben történő rögzítése előtt
  • Új technika - vezérlés a mozgások regiszterekben történő rögzítése után

Általában véve az új technika hatékonyabb, de nem mindig alkalmazható.

Alkalmazhatósági kritérium– ha nincs szükség egy ellenőrzött regiszter adataihoz a mozgások generálásához, új technika alkalmazható.

Ha a termékegyenlegek ellenőrzéséről beszélünk, akkor egy új technika alkalmazása lehetséges, amikor a költség- és raktáregyenlegek adatait különböző regiszterekben tárolják.

És végül példák innen tipikus konfigurációk:

  • BAN BEN UT 11 2 fő nyilvántartás létezik a tételek elszámolására: szabad egyenlegek (mennyiség) és áruk költsége (költségadatok) - új módszert alkalmaznak
  • BAN BEN BP 3.0 A költségekre és egyenlegekre vonatkozó adatok egy számviteli nyilvántartásban vannak tárolva - az egyenlegek ellenőrzésének régi módszerét alkalmazzák.