Мае пажаданні да СКБД будучыні, а таксама да Росрэестра ў частцы транзакцыйнасці

Мае пажаданні да СКБД будучыні, а таксама да Росрэестра ў частцы транзакцыйнасці
Кліент узаемадзейнічае з базай дадзеных.
З сайта http://corchaosis.ru, аўтар карціны Jonathan Tiong.

Акрамя таго, што я з'яўляюся праграмістам (пераважна, гэта Delphi + усякія розныя СКБД, у апошні час АРАКЛ, + трохі PHP), у мяне ёсць хобі - гэта купля і продаж кватэр. Я купляю кватэру на этапе будаўніцтва ад надзейнага забудоўшчыка па смачным кошце (напрыклад, цяпер такім забудоўшчыкам з'яўляецца Самалёт, кватэры каля м. Некрасовка прадаюцца), чакаю здачы дома (часта на два гады пазней, з недарагімі прапановамі такое здараецца), раблю ў ёй рамонт і затым прадаю за 95-100% яе рынкавага кошту.

Дык вось, я (як і ўсё) сутыкнуўся з праблемай адсутнасці ў РосРеестра транзакцыйнасці.

Праблема адсутнасці ў Росреестра транзакцыйнасці здзелак

У праграмаванні «Транзакцыя», а ў нерухомасці гэта «Здзелка з альтэрнатывай» (а таксама, як яе частка, «Дагавор аб банкаўскім вочку»), і там усё крыху больш складана. Расказваю.

Вася прыйшоў на прагляд кватэры, якую прадае Пеця. І Васю ўсё вельмі спадабалася, у тым ліку і кошт, але ў Васі грошай няма. Так пачынаецца нашая гісторыя.

Вася мае сваю нерухомасць, якая мае нейкія не асабліва патрэбныя для яго каштоўнасці - у суседнім доме жыў Ламаносаў, вышыня столяў сем з паловай метраў, паблізу знаходзіцца плодагароднінная база і рынак Садавод, можна дайсці пешшу на Аэраэкспрэс, пад кватэрай ёсць склеп вышынёй 1 метр, над кватэрай ёсць гарышча зручны для астранамічных назіранняў. Вася разумее што гэтыя асаблівасці падвышаюць кошт яго кватэры, але не для яго самога. І ён вырашае кватэру Пеці купіць, а сваю кватэру - прадаць. Але прадаць менавіта для таго, каб купіць кватэру Пеці, а не проста. На мове рыэлтараў гэта называецца - "Альтэрнатыва падабрана".

Цяпер паглядзім на гэтую сітуацыю з боку Пеці. Справа ў тым, што Пеці таксама не цікава сядзець на абясцэньваюцца грошах, ён прадае кватэру дзеля таго, каб купіць сабе кватэру ў эльфійскім горадзе Валінор, але якую менавіта - яшчэ не глядзеў. На мове рыэлтараў гэта называецца - "Здзелка з альтэрнатывай".

Два эльфа Міжзем'я, Маглор і Маэдрас, валодаюць прыдатнай (крытэрам Пеці) нерухомасцю ў горадзе Валінор, якую тэрмінова распрадаюць, бо адпраўляюцца служыць Мелькору. На мове рыэлтараў гэта называецца - "Свабодны продаж".

Такім чынам, Вася знаходзіць кліента Сярожу. Цяпер, Пеця знаходзіць два прыдатныя яму варыянты ў горадзе Валінор. Выходзім на афармленне здзелкі. Дапушчальны для прастаты, што ніхто з удзельнікаў здзелкі не выкарыстоўвае іпатэку і не мае долевым уласнікам непаўналетніх. Такім чынам, зараз павінны здзейсніцца наступныя дзеянні:
1. Сярожа перадае грошы Пеці.
2. Вася перадае сваю кватэру Сярожу.
3. Пеця перадае сваю кватэру Васю.
4. Або Маглор, або Маэдрас, перадаюць сваю кватэру ў Валінора Пеці і атрымліваюць грошы Сярожы.
5. Малкор і Маэдрас ідуць у Мордор служыць Мелькору.

Ідэальна было б перадаць у Росреестр на выкананне наступны скрыпт:

START TRANSACTION
Кватэру Васі аддаць Сярожы.
Кватэру Пеці аддаць Васю.
пачынаць
Кватэру Малкора аддаць Пеці
Грошы Сярожы аддаць Малкору
КАЛІ_ПАМЫЛКА:
Кватэру Маэдроса аддаць Пеці
Грошы Сярожы аддаць Маэдросу
канец
COMMIT TRANSACTION

Гэта спрошчаны скрыпт здзелкі з альтэрнатывай, які прадугледжвае, што ва ўсіх кватэр адзін дарослы (і дзеяздольны) уласнік, што іх кошты роўныя, і што аплата рыэлтараў (калі яны ёсць) аплачваецца па-за прывязкай да этапаў здзелкі.

Аднак, Росреестр не падтрымлівае транзакцыйнасць. Усе дзеянні будуць выконвацца паслядоўна і незалежна, сябар за сябрам, без адкату транзакцыі ў цэлым калі не выканалася адно з іх. Максімум, што можна дасягнуць - улічваючы, што Росреестр і МФЦ не працуюць з перадачай наяўных сродкаў - гэта закласці грошы ў банкаўскае вочка, з умовамі доступу да іх Васі, Пеці, Сярожы (калі наогул ніякая здзелка не зарэгістраваная), і іншых дзеючых асоб, па факце прад'яўлення імі зарэгістраваных Росреестром дагавораў. (І дарэчы, банкі самастойна праверку сапраўднасці дагавораў не ажыццяўляюць, гэта значыць давяраюць сапраўднасці папер удзельнікаў здзелкі).

Акрамя рызык няпоўнага выканання транзакцыі, іншая праблема ў тым, што калі іншыя ўдзельнікі могуць заехаць у сваё новае жыллё не чакаючы поўнага афармлення (прывітанне, пытанне недаплаты камунальных плацяжоў!), то Маглор і Маэдрас няхутка адправяцца служыць Мелькору, і магчыма, Маглор не зможа патрымаць у сваіх руках сильмариллы, ён проста не паспее. Здзелкі з нерухомасцю выконваюцца паслядоўна, і афармленне кожнай здзелкі будзе доўжыцца не менш за 9 працоўных дзён.

Акрамя гэтага, Росреестр не падтрымлівае абцяжаранне жылля, якое будуецца па ДДУ жылля, а мог бы, гэта элементарнае дзеянне ў дачыненні да простага ф'ючэрса.

Цяпер пяройдзем да недахопаў і маім жаданням пра СКБД

1) Першае - гэта адсутнасць сістэмы кантролю версій. Калі са боку Delphi я вяду распрацоўку ў сваёй пясочніцы, і зробленыя мной змены не з'явяцца ў іншых праграмістаў да моманту іх комміта, то з СКБД не так. І нават калі мне давяраюць поўны (прынамсі, у рамках патрэбнага для пастаўленай перада мной задачы) доступ да баявой БД, а такое здараецца, я не магу на ёй распрацоўваць. Пакуль я буду наладжвацца, усё абрынецца. Гэта што за каменны век??? Зрабіце пясочніцу распрацоўшчыкам.

2) Другое - гэта адсутнасць прадусталяваных стандартызаваных табліц, якія апісваюць рэальны свет. У кожнай кампаніі, дзе я працаваў, свой уласны фармат табліцы, які апісвае назвы (на рускай і (прынамсі) англійскай мове, у розных склонах рускай мовы) дванаццаці месяцаў!

3) Трэцяе - і тут я скарыстаюся тэрміналогіяй Аракла - адсутнічае магчымасць выклікаць просты скрыпт Insert або Update, які выкарыстоўвае Returning, так, як мы выклікаем Select. Магчыма, гэта не праблемы Аракла, а праблемы стыку Delphi + Oracle.

4) Чацвёртае - неабходнасць прызначэння ствараным мной працэдурам і функцый паўнамоцтваў там, дзе я рабіць гэтага не хачу. Я не хачу задаваць, а потым мяняць, паўнамоцтвы карыстальнікаў працэдуры і функцыі. Чаму, калі я відавочна не напісаў Grant-ы, сістэма не магла б сама паглядзець на задзейнічаныя аб'екты, і ў адпаведнасці з правамі на дзеянні з імі надзяляць ці не тых ці іншых карыстальнікаў правам на выклік функцыі? Я готаў напісаць для гэтага пры напісанні функцый і працэдур адно ключавое слова. Ці, яшчэ лепш, няхай карыстальнік пачне выкананне, а калі галінка алгарытму прывядзе яго да запыту на які ў карыстальніка няма правоў, то выкіне з памылкай.

Крыніца: habr.com

Дадаць каментар