A Payroll and Human Resources 3.0, 8.3.2580 platformon hiba történt:
A Bérek és járulékok számítása dokumentum kitöltésekor a következő üzenet jelenik meg:
Az X munkavállaló 2017. januári „Bérkifizetés” elhatárolásának kiszámításakor hiba történt: Osztás 0-val
A számítás során használt képlet: Fizetés * TimeDays / NormDays.
A probléma a konfiguráció adott telepített verziójával kapcsolatos, azt frissíteni kell 3.1-re. Az általános algoritmus a következő:
1. frissítve platform naprakész.
2. frissítve konfiguráció a 3.1-es verzióig
3. Elindítottam a hibakereső alkalmazást, hiba lépett fel
4. Teljesen lezárva az 1C-t, megkezdődött a tesztelés chdbfl(nem található hiba).
5. Elindította a konfigurátort, és elindította tesztelés és javítás a következő beállításokkal (fentről lefelé): ellenőrzések és módok minden jelölőnégyzet bejelölve, tesztelés és javítás, ha nem létező objektumokra mutató hivatkozások vannak - törölje a hivatkozásokat, ha az objektum adatok részben elvesztek - ne változtasson.
6. Elindította az alkalmazást a hibakereséshez és minden ment mint a karikacsapás, az adatbázis frissült és nem volt hiba a kitöltésnél
Remélem hasznos volt számodra 🙂
Jó napot, kedves olvasók. A minap az egyik cég, ahol dolgozom, egy problémával fordult hozzám.
A hónap 1C-ben zárásakor hiba jelent meg: Osztás 0-val.
(Document.Formation of PurchaseBookEntries.ObjectModule(2466)): Oszd 0-val
VATRows = Env(TableRow.VAT * AmountWithoutVATRow / RowTable.AmountWithoutVAT, 2);
Először is felmásztam a fórumra, és tanácsot kértem az 1C programozóitól. Azt mondták, hogy ellenőrizzem a valutában kifejezett többszörösséget. Egyenlőnek kell lennie 1-gyel.
A Pénznemek szakasz megnyitásához lépjen a lapra Bankés válassza ki a lapot Pénznemek. Mindenhol ellenőrizzük a multiplicitást, egyenlőnek kell lennie 1 . Nem záródó időszakra töltjük be az árfolyamokat.
A Pénznemek szakasznak így kell kinéznie:
Adatbázisom átvizsgálása után megbizonyosodtam arról, hogy az árfolyamokkal és a multiplicitással tökéletes rendben vagyok, de a hónapzárás nem történt meg. (A legtöbb esetben a 0-val való osztás problémája pontosan az árfolyamok sokaságában rejlik)
Sokáig nem tudtam rájönni erre a problémára, átnéztem az összes dokumentumot a vásárlási és eladási könyvben.
Csak néhány nappal később találtam egy fel nem küldött dokumentumot, amelyen nincsenek bejegyzések a részben Tevékenységek — Szabályozó dokumentumok 1C.
A lista végén található áfa-szabályozási dokumentumokban találtam egy fel nem küldött dokumentumot. A vásárlási könyv kialakítása, amibe semmi nem volt rögzítve, elköltöttem és ami meglepetésem volt, a hónap lezárult, a probléma megoldódott.
A matematikában a nullával való osztás lehetetlen! A szabály magyarázatának egyik módja a folyamat elemzése, amely megmutatja, mi történik, ha egy számot elosztunk egy másikkal.
A valóságban az osztás lényegében ugyanaz, mint a kivonás. Például, ha 10-et osztunk 2-vel, akkor a 2-t többszörösen kivonjuk 10-ből. A multiplicitást addig ismételjük, amíg az eredmény 0 nem lesz. Így pontosan ötször kell kivonni a 2-t tízből:
Ha megpróbáljuk elosztani a 10-et 0-val, soha nem kapunk 0-val egyenlő eredményt, mivel 10-0 kivonásánál mindig 10 lesz. A nulla tízből végtelen számú kivonása nem vezet el az eredményhez = 0. A kivonás =10 művelet után mindig ugyanaz az eredmény lesz:
A matematikusok előcsarnokában azt mondják, hogy bármely szám nullával való osztásának eredménye "korlátlan". Bármely számítógépes program, amely megpróbál 0-val osztani, egyszerűen hibát ad vissza. Az Excelben ezt a hibát a #DIV/0! cellában lévő érték jelzi.
De ha szükséges, az Excelben megkerülheti a 0-val osztás hibáját. Csak ki kell hagyni az osztási műveletet, ha a nevező 0. A megoldás úgy valósul meg, hogy az operandusokat az =IF() függvény argumentumaiba helyezzük:
Így az Excel képlet lehetővé teszi, hogy hiba nélkül "elosztjuk" a számot 0-val. Bármely szám 0-val való osztásakor a képlet 0 értéket ad vissza. Vagyis osztás után a következő eredményt kapjuk: 10/0=0.
A megfelelő működéshez az IF függvénynek 3 argumentumát kell kitöltenie:
Ebben az esetben a feltételes argumentum értékellenőrzést tartalmaz. Hogy az Értékesítés oszlop cellaértékei 0-e. Az IF függvény első argumentumának mindig tartalmaznia kell két érték közötti összehasonlító operátort, hogy a feltétel eredménye IGAZ vagy HAMIS legyen. A legtöbb esetben az egyenlőségjelet használják összehasonlító operátorként, de más is használható, például nagyobb, mint > vagy kisebb, mint >. Vagy ezek kombinációi - nagyobb vagy egyenlő, mint >=, nem egyenlő!=.
Ha az első argumentum feltétele IGAZ értéket ad vissza, akkor a képlet kitölti a cellát a második argumentumtól az IF függvényig terjedő értékkel. Ebben a példában a második argumentum értékeként a 0 számot tartalmazza. Ez azt jelenti, hogy a "Teljesítmény" oszlop cellája egyszerűen 0-val lesz kitöltve, ha az "Eladások" oszloppal szemben lévő cellában 0 eladás található.
Ha az első argumentum feltétele HAMIS, akkor a harmadik argumentum és az IF függvény értéke kerül felhasználásra. Ebben az esetben ez az érték az „Eladások” oszlopból származó mutató és a „Terv” oszlop mutatójának elosztása után jön létre.
Bonyolítsuk a képletünket az =VAGY() függvénnyel. Adjunk hozzá még egy értékesítési ügynököt nulla értékesítéssel. Most a képletet a következőre kell módosítani:
Másolja ezt a képletet a Végrehajtás oszlop összes cellájába:
Mostantól függetlenül attól, hogy hol van nulla a nevezőben vagy a számlálóban, a képlet a felhasználó igényei szerint fog működni.