зователь, що додав данниеDATE_ADDДата добавленияUSER_EDITПользователь, який змінив данниеDATE_EDITДата ізмененіяDELПрізнак видалення запису
Таблиця 7 - Користувачі
Таблиця 8 - Документи
АтрибутОписаниеDOC_IDУникальный код документаDOCНазваніе документа
Таблиця 9 - Типи діяльності організацій
АтрибутОписаниеTYPE_IDУникальный код типу деятельностіNAMEТіп діяльності
Таблиця 10 - Види робіт організацій
АтрибутОписаниеTYPE_FUNC_IDУникальный код виду работNAMEВід робіт
Таблиця 11 - Підстави призначення пенсій
АтрибутОписаниеOSNOV_IDУникальный код основанияKODРегистрационный код основанияDISCRIPTIONОписаниеPRIZNAKПризнак відносини до списків
Таблиця 12 - Коди позицій списку
АтрибутОписаниеSPIS_POZ_IDУникальный код позиції спіскаKODРегістраціонний код позиції спіскаDESCRIPTIONОпісаніе
Нормалізована логічна модель представлена ​​на рис.2.
В
Рис.2
7. Приклад практичної реалізації функції завантаження xml файлу в РБД
Програмний код функції на мові Pascal:
procedure TMainF. PerechenClick (Sender: TObject);, NodesProfession, NodesEmployee, NodesWorkperiod: IXMLNodeList;: Variant;, Q, J, K, ORG_ID, PERIOD_ID, PODRAZD_ID, PROF_ID, EMPL_ID: Integer;, Lvl2: string;: array [0.7] of string ;: array [0.3] of string;: array [0.3] of string;: array [0.11] of string;: array [0.4] of string;: array [0.11] of string;. Filter: = 'XML files (*. Xml) | *. xml '; not OpenDialog. Execute then exit;. LoadFromFile (OpenDialog. FileName);. Active: = true;: = 'ФайлЛьготнихПрофессій';: = 'Підприємство'; Q: = 0 to 5 do begin (Q = 4) or (Q = 5) then begin
Org [Q]: = VarToStr (XMLDoc. DocumentElement. ChildNodes [Lvl1]. ChildNodes [Lvl2]. ChildNodes [Q]. ChildNodes ['ПІБ']. Text); [Q + 2] : = VarToStr (XMLDoc. DocumentElement. ChildNodes [Lvl1]. ChildNodes [Lvl2]. ChildNodes [Q]. ChildNodes ['Телефон']. Text); else [Q]: = VarToStr (XMLDoc. DocumentElement. ChildNodes [Lvl1]. ChildNodes [Lvl2]. ChildNodes [Q]. Text);;: = 'ОтчетнийПеріод'; Q: = 0 to 3 do [Q]: = VarToStr (XMLDoc. DocumentElement. ChildNodes [Lvl1]. ChildNodes [Lvl2]. ChildNodes [ Q]. Text); DataModuleF do begin: = ADOTableOrg. Lookup ('AREA; REGION; REG_NUM', ([StrToInt (Copy (Org [0], 1,3)), StrToInt (Copy (Org [0], 5,3)), (Copy (Org [0], 9,6))]), 'AREA'); not VarIsNull (V) then begin. Locate ('AREA; REGION; REG_NUM', ([StrToInt (Copy (Org [0], 1,3)), StrToInt (Copy (Org [0], 5,3)), (Copy (Org [0], 9,6))]) , []);. Edit;. AsString: = Org [1];. AsString: = ...