Инструменти за потребители

Инструменти за сайта


obsti_komponenti:vavedenie:chesto_zadavani_vaprosi:smiana_na_tochnost

Смяна на броя знаци след десетичната запетая в единичната цена

С избора на бутон от Конфигурация на програмата/За напреднали активирате функцията за промяна на точността. Точността на програмата влияе на това колко знака след десетичната запетая да се използват за закръгляне на единичната цена в програмата.

Стандартно SelMatic Plus се доставя с точност до втория знак.

По чисто математически причини, ако желаете да имате цени с точност до втория знак със ДДС е необходимо точността на цената без ДДС да бъде най-малко 3 знака (при това ако ДДС процента е 20%, количеството продавани стоки е винаги по-малко от 10 и не се прави никаква отстъпка в проценти). Най-често използваната точност в такива случаи е до 4 знак. За точна информация, съобразена с вашите нужди и с конкретната ситуация, моля обърнете се към консултант от фирмата производител.

Внимание:

Никога не променяйте точността на програмата, без да сте 100% наясно какво и защо правите. Промяната на точността води до необратими последствия в пресмятането на стойността на продажбите, съответно и на дълговете, които те генерират.

Важно:

Точността може само да се увеличава. В случай, че има издадена и една ПРОДАЖБА с по-висока точност или е въведена дори една цена в ценовата листа с по-висока точност, то точността в никакъв случай не трябва да се намалява.

При смяна на точността се налага да се съобразите със следните неща:

* Промяната на точността се прави само и единствено на сървъра, където е инсталиран Firebird-а.
НЕ МОЖЕ ДА СЕ НАПРАВИ ПРОМЯНА В ТОЧНОСТТА, АКО НЕ СТЕ СТАРТИРАЛИ SelMatic Plus ФИЗИЧЕСКИ НА СЪРВЕРНАТА МАШИНА!
Възможно е достъпа до сървъра да бъде осъществен и през Remote Desktop или чрез покана за дистанционен достъп.

* SelMatic Plus задължително трябва да е стартиран с администраторски акаунт или акаунт имащ право да пише в регистрито на Windows в ключ HKEY_LOCAL_MACHINE\SOFTWARE\Selmatic\Udf (именно писането в този ключ е причината, да е необходимо програмата да е стартирана физически на сървера)

* Всички връзки към бази данни на SelMatic Plus на съответния сървър да бъдат спрени (т.е. ако на този сървър има повече от една база данни на SelMatic Plus, всяка една от тях трябва да е спряна). Съответно, всички потребители трябва да са излезли от програмата, т.е. тя трябва да бъде затворена, както и ако има синхронизация - да бъде спряна.

Внимание:

Промяната на точността засяга *всички* бази данни на конкретния сървър, заедно с използващите ги приложения.

Внимание:

Ако се използва синхронизация това означава, че се работи с повече от един Firebird сървер. Това на свой ред означава, че точността ТРЯБВА да се промени и във всеки един ком модул (т.е. всеки един firebird сървер поотделно! Това пък от своя страна означава, че за да е гарантирана безпроблемната смяна на точността, е най-добре ВСИЧКИ потребители във ВСИЧКИ ком модули да преустановят работа, докато процедурата по смяната не бъде завършена.

Важно е да знаете:

По технически причини, настройката се пази на две места – вътре във всяка една база данни и отделно в самия сървър!
Именно поради това, че една част от настройката е в регистрите, физически на сървера, има следните последствия:

1. На един и същ сървър може да се работи САМО с една точност, т.е. всички бази данни на SelMatic Plus на сървера трябва да са със една и съща точност

2. Ако има връзки към бази данни на сървера, настройките ще влязат в сила, едва след като всички връзки към бази данни на SelMatic Plus на този сървър бъдат прекратени.

3. Ако за произволна база данни се установи дадена точност (и заедно с това и на сървера), и се опитате да отворите друга база данни на същия сървър, която не е със същата точност, SelMatic Plus няма да позволи влизането, докато точността не бъде уеднаквена.

С корекция от м.05.2011 се прави проверка с кой потребител се влиза в базата. Ако потребителят е SYSDBA се появява въпрос, като след потвърждение от оператора, се сменя точността на базата (това е така, тъй като е възможно да няма достъп до машината, на която се намира базата данни).

След потвърждаване на всички съобщения точността е смененa и желаната база може да бъде отворена.
Целта на промяната е потребителят да може, при пускане на нова база, да настрои точността каквато е на сървъра и после от Конфигурация на програмата да я донастрои.

Ръчно установяване на точността

В някои случаи е по-лесно и удобно, а и подлежи на автоматизация ръчната смяна на точността. Най-типичната причина е необходимостта от смяна на точността освен на централния сървър и на всички ком модули.

Точността се пази на две места - в регистрито на Windows на машината, на която се намира базата данни и в таблица CONFIG в самата база данни.

1. В регистрито на Windows 32-bit точността се пази в HKEY_LOCAL_MACHINE\SOFTWARE\Selmatic\Udf, ключ NumDigitsRound, тип стринг (reg_sz). В ключа точността се пази като число, представляващо броя знаци след десетичната запетая, НО СЪС ЗНАК МИНУС.

2. В регистрито на Windows 64-bit точността се пази в HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Selmatic\Udf, ключ NumDigitsRound, тип стринг (reg_sz).

Пример: точност до втория знак се пази като -2 (за Windows 32-bit).

3. В базата данни, точността се пази в таблица Config, поле Num_Digits_Ed_Cena. В полето точността отново се пази като число, представляващо броя знаци след десетичната запетая, БЕЗ ЗНАК МИНУС.

Пример: точност до втория знак се пази просто като числото 2.

Тъй като поле Config.Num_Digits_Ed_Cena се синхронизира от синхронизацията, препоръчва се на централния сървър точността да се смени с описаната по-горе функция; синхронизацията ще разнесе въпросното поле по всички ком модули, в които обаче веднага щом SelMatic Plus бъде стартиран за първи път след синхронизация ще спре да работи, заради различието между точността в базата данни и точността в сървера.

Най-просто е да се експортира горе указания ключ от регистрито в .reg файл и да се импортира на всяка една машина-сървър на ком модул поотделно.

Ключа в регистрито се чете при инициализацията на библиотеката selmatic_udfs.dll. Тъй като тази библиотека се инициализира почти веднага щом се установи връзка към коя да е база данни на SelMatic Plus именно затова настройката влиза в сила едва след като всички връзки към база данни на SelMatic Plus бъдат преустановени - за да се премахне библиотеката от паметта и при следващо свързване да се инициализира пак и да прочете новите настройки.

obsti_komponenti/vavedenie/chesto_zadavani_vaprosi/smiana_na_tochnost.txt · Последна промяна: 2018/01/11 15:34 от 127.0.0.1