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

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


sluzebni:sistemni_stojnosti

Разлики

Тук са показани разликите между избраната и текущата версия на страницата.

Препратка към сравнението на версиите

Следваща версия
Предходна версия
sluzebni:sistemni_stojnosti [2016/07/20 11:44] – създадена t.lalovasluzebni:sistemni_stojnosti [2018/01/11 15:28] (текуща) – външна редакция 127.0.0.1
Ред 1: Ред 1:
-====== Системни (стандартни) стойности във всички таблици. ======+====== Системни Източници, Изгледи и Списъци за избор ====== 
 + 
 +Много удобно в практиката е да има стандартен комплект от справки, скриптове и списъци, които да се използват за основа, върху която да се правят различни допълнения и разширения поискани от конкретния клиент, но да не могат да бъдат променяни. 
 + 
 +При необходимост на тяхна разновидност, може да се направят като отделни източници на данни с копиране или експорт и импорт като нови. Целта е да може при ъпгрейд, стандартните източници и изгледи да се ъпгрейдват автоматично. Това позволява нови техни разновидности да се правят на база на най-последната версия (с имплементирани всички новости и промени).  
 + 
 +Също така, когато даден източник е в оригиналния си вид и не е променян, той може да бъде използван като референтен при нови справки, скриптове и списъци. \\  
 +Право на избор е, дали да се работи директно със "стандартен" източник, с което се рискува при ъпгрейд нещо да се повреди, но се печелят автоматични обновления на кода и изгледа (ако има такива).  
 + 
 +За покриване на този начин на работа в системата е реализиран начин за **маркиране на източници на данни, изгледи и списъци за системни**.\\ 
 +**Системните Източници, Изгледи и Списъци, не може да се трият или редактират** през потребителският интерфейс на програмата (те са "read only"). **Системеният запис** винаги е с **отрицателно ID**. 
 + 
 +Променени са класовете за експорт и импорт на източниците и изгледите, така че при дублиране на системен източник, полученият източник и изглед да не са системни. 
 + 
 +Самото конвертиране в системен запис се извършва със съответните бутони "Конвертирай като системен" в **Списъци за избор** и **Справки/Скриптове**. Те са видими само за системния потребител.  
 + 
 +{{:sluzebni:butoni_za_konvertirane.png|}} {{:sluzebni:buton_konv.spisak.png|}} 
 + 
 +**Редовете** със **системни записи** са в **сиво и неактивни**. Не е редно да се конвертира изглед да стане системен, без източника да стане системен. 
 + 
 +{{:sluzebni:ocvetiavane_sistemni_sp..png?700|}} {{:sluzebni:ocvetiavane_sistemni_izt..png?700|}} 
 + 
 +<box round red|Внимание:> Важно е да се има предвид, че копирането на източници, изгледи и списъци към системни не може да се извършва при наличие на синхронизационни тригери.</box> 
 + 
 +За да може да се разграничават системните изгледи на формите от останалите и с цел избягване на проблеми с настъпване на записи с еднакви ID-та, /* от [[vavedenie:kakvo_novo|релийз 2016.12]] е направено така, че */ в тригерите по инсърт и ъпдейт се прави проверка, дали е лейаут на справка, дали е за основната роля и ако това е изпълнено се взима следващото поредно ID с отрицателен знак. 
 + 
 + 
 +==== Системни (стандартни) стойности във всички таблици ==== 
  
 При стартиране на нов проект (нова клиентска база) особено полезно би било наличието на **системни стойности** (константи), които са стандартни за всички бази и са основен комплект от записи, които служат за основа, върху която да се правят различни допълнения и разширения поискани от конкретния клиент.  При стартиране на нов проект (нова клиентска база) особено полезно би било наличието на **системни стойности** (константи), които са стандартни за всички бази и са основен комплект от записи, които служат за основа, върху която да се правят различни допълнения и разширения поискани от конкретния клиент. 
Ред 8: Ред 36:
 Критерият, че **даден запис е системен** е **отрицателен главен ключ** в таблиците. Критерият, че **даден запис е системен** е **отрицателен главен ключ** в таблиците.
  
-В програмата за ъпгрейд е разработена функционалност за сравнение с базата на клиента и уеднаквяване на системните записи с тези в референтната база (новите се вмъкват, старите се актуализират, излишните се изтриват).+В програмата за ъпгрейд е налична функционалност за сравнение с базата на клиента и уеднаквяване на системните записи с тези в референтната база (новите се вмъкват, старите се актуализират, излишните се изтриват).
  
 Добавена е **опция** за избор **при ъпгрейд** за **"Изтриване на системни записи, които не съществуват в референтната"**. Маркирането й задейства **изтриване на системни записи**, които **не съществуват в референтната база за ъпгрейд**, а **съществуват само в клиентската база**, която се ъпгрейдва. \\ Добавена е **опция** за избор **при ъпгрейд** за **"Изтриване на системни записи, които не съществуват в референтната"**. Маркирането й задейства **изтриване на системни записи**, които **не съществуват в референтната база за ъпгрейд**, а **съществуват само в клиентската база**, която се ъпгрейдва. \\
Ред 14: Ред 42:
  
 {{:sluzebni:opcia_pri_upgrade.png?600|}} {{:sluzebni:opcia_pri_upgrade.png?600|}}
 +
 +
 +
 +===== Редакция на системни записи =====
 +
 +
 +Потребителят, който е отговорен да създава системни източници, изгледи, списъци би трябвало да може и да ги редактира, тъй като би било удачно те да могат да се донастройват и подобряват в зависимост от начина им на работа. 
 + 
 +Например: Настройва се Източник по подходящ начин със съответния Изглед, преобразуват се в системни и започват да се използват. В процеса на работа обаче се оказва, че се налага да се коригира няколко пъти. Ако това се прави от програмист би било много бавно и неефективно. 
 +
 +Затова е реализирана възможност да може и да се **редактират системни записи** посредством избор на **бутон „Редакция на системен източник/изглед/списък“** (скрит е по подразбиране). \\
 +Такова право има само потребителят, поддържащ референтната база за ъпгрейд с всички системни записи.
 +
 +{{:sluzebni:b.redakcia_na_spisaci.png|}}
  
sluzebni/sistemni_stojnosti.1469015082.txt.gz · Последна промяна: 2018/01/11 15:27 (външна редакция)