Webový systém riadenia Medzinárodného Vyšehradského Fondu.

/*! elementor - v3.15.0 - 20-08-2023 */ .elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}Aplikácia pre správu grantov ZákazníkVyšehradský Fond je medzinárodnou darcovskou organizáciou, ktorá bola založená v roku 2000 vládami krajín V4 na podporu regionálnej spolupráce vo Vyšehradskom regióne, ako aj medzi regiónom V4 a ostatnými krajinami, najmä západného Balkánu a regiónov Východného partnerstva. Podporu realizuje prostredníctvom grantov, štipendií a rezidenčných pobytov. Hlavná činnosť fondu je zameraná na vytváranie výziev, vybavovanie žiadostí a na dohľad ich plnenia. VýzvaZákazník disponoval webovou aplikáciou prostredníctvom ktorej vykonával svoju činnosť. Hlavným dôvodom prečo nás zákazník oslovil bolo to, že hlavná činnosť podlieha množstvu zmien na ktoré je potrebné promptne reagovať a to nebolo možné v rámci pôvodnej aplikácie. Zákazník nemal možnosť správy zmien a musel neustále kontaktovať support čo spomaľovalo procesy a bolo nedostačujúcim pre činnosť organizácie. Hlavnou úlohou ktorej sme čelili bolo nájsť spôsob ako by mohol zákazník sám spravovať zmeny v rámci aplikácie. Analýza systémuNa analýze systému náš tím pracoval počas doby dvoch mesiacov. Analýza bola zameraná na štruktúru systému, ktorú sme považovali za zdroj problémov.  V štruktúre systému sme zistili nedostatky:  Výskyt XML súborov v databáze Silná previazanosť medzi zdrojovými kódmi a databázou Ukladanie potrebných dát mimo databázu Neexistujúca aplikačná podpora zálohovania a archivácie Nedostatočná bezpečnosť systému Neefektívne a komplikované rozširovanie systému o nové programyTieto nedostatky mali negatívny vplyv na realizovaný proces v organizácií. Vytvorenie nového grantového programu bolo spojené s troma zbytočnými procesmi:  Implementácia nového programu Testovanie správnosti implementácie programu Nasadenie implementácie do produkčnej prevádzkyNedostatky pôvodnej aplikácie a naše riešenia Štruktúra dát  Variabilita dát  Pre relačné databázy je povinná pevná a nemenná štruktúra dát a preto nie je jednoduché navrhnúť systém v ktorom by existovalo viacero variácií jednej tabuľky bez zbytočnej duplicity dát. Nedostatok: Pôvodná aplikácia obsahovala len jednu tabuľku na ukladanie dát a dáta boli ukladané vo formáte XML v jednom stĺpci. Podľa zaužívaných štandardov takéto riešenie nie je vhodné. Formát XML nie je určený na uchovávanie dát.  Riešenie: Naším riešením je tvorba tabuliek, ktoré obsahujú metadáta, t.j. dáta o dátach. Pomocou metadát je možné meniť, vytvárať a upravovať štruktúru jednotlivých tabuliek a tým aj programov. Prínosom riešenia je:  Jednoduché rozširovanie databázy o nové tabuľky a stĺpce v tabuľkách Jednoduché rozširovanie systému o nové modulySpracovanie XML XML súbory, ktoré sa nachádzajú v databáze je potrebné spracovať. Spracovanie prebieha nasledovne – prijímanie dát z databázy, analýza štruktúry XML a uloženie dát z XML do štruktúr v zdrojovom kóde.  Nedostatok: Spracovanie XML prebiehalo prostredníctvom nástroja „serializéru“. Nevýhodu predstavovala pevná previazanosť medzi štruktúrou XML v databáze a štruktúrou zdrojového kódu. To znamená, že pre každú zmenu štruktúry dát v dabáze bolo potrebné upraviť zdrojové kódy a zákazník musel kontaktovať support.  Riešenie: Naším riešením bolo zaviesť automatické spracovanie dát z databázy a dynamické ukladanie dát do štruktúr v zdrojovom kóde. Vďaka riešeniu vznikla voľná zviazanosť medzi zdrojovým kódom a štruktúrou databázy. Dôsledkom voľnej štruktúry je možné vytvoriť nástroj na upravovanie štruktúry žiadostí bez zásahu supportu. Dáta mimo databázy Dáta (napr pri registrácií žiadateľa o grant) sa ukladali do XML súboru a nebolo možné s nimi efektívne pracovať. Preto sme navrhli ukladanie dát do databázy. Žiadatelia v databáze Nedostatok: V databáze chýbala tabuľka, ktorá by ukladala informácie o žiadateľovi. Následkom bola absencia prepojenia medzi žiadosťami a žiadateľmi, duplicitné informácie o jednom žiadateľovi pre viacero žiadostí, absencia kontroly toho či žiadateľ nepodal viac ako 1 žiadosť.   Riešenie: Navrhli sme vytvoriť tabuľku v databáze čo malo prínos automatizácie procesu kontroly duplicitných žiadostí a automatického vypĺňania údajov o žiadateľovi. Zálohovanie Nedostatok: V rámci aplikácie neexistovala aplikačná podpora zálohovania dát, pričom odstránenie alebo poškodenie dát mohlo mať katastrofálne následky na fungovanie celého systému a organizácie. Riešenie: Naším riešením bolo vytvorenie nástroja, ktorý umožňuje automatické zálohovanie databázy a obnovovanie databázy zo zálohy. Bezpečnosť Každá aplikácia má niekoľko používateľov, v našom prípade ich môžme rozdeliť do rolí ako napríklad: programová manažérka, žiadateľ grantu, hodnotiteľ žiadosti atď.  Jednou z foriem bezpečnosti v databáze je pre každú rolu definovať typ prístupu k jednotlivým tabuľkám databázy a prideliť práva pre vykonávanie jednotlivých operácií v aplikácií.  Nedostatok: Neexistovalo vymedzenie rolí a právomocí. Existovala jedna rola pre všetky operácie, čo znamená, že v prípade útoku na databázu má útočník plne právo vykonávať rôzne operácie. Riešenie: Vytvorili sme jednotlivé role pre každý modul a pridelili právomoci k vytváraniu operácií čím sa zvýšila bezpečnosť a odolnosť systému pred neoprávneným prístupom do databázy. Tvorba programov Nedostatok: Pri vytváraní nového programu bola nevyhnutná práca externého dodávateľa vyplývajúca zo štruktúry databázy (XML súbory) a použitých technológií (serializér). Riešenie: Tým, že sme vytvorili metadátové tabuľky a komponent na ukladanie dát z databázy do dynamických štruktúr zdrojových kódov sme umožnili zákazníkovi nezávislosť od externého dodávateľa v procese tvorby programu. Prínos:   Ušetrené prostriedky vynaložené na prácu programátorov Optimalizovaný čas strávený čakaním na dokončenie prác programátorov Ušetrené prostriedky vynaložené na komunikáciu s programátormi Ušetrené prostriedky vynaložené na testovanieReporty dát z databázy Nedostatok: Aplikácia neobsahovala prehľadne spracované reporty a chýbali obsahovo i dôležité informácie. Riešenie: Naším riešením je sprehľadnenie reportov obohatených o dôležité informácie (napr. objem vyčerpaných peňazí pre konkrétny program, ad-hoc reporty – kto na čom pracuje, koľko finančných prostriedkov je aktuálne vyčerpaných na program atď.) Aplikačná podpora Nedostatok: V aplikácií existuje niekoľko subprocesov a operácií, ktoré nemali úplnu aplikačnú podporu. Na ich vykonávanie boli potrebné iné aplikácie (napr. Microsoft Office) a tým sa predlžoval čas vykonávania subprocesov a komplikovalo to ďalšie procesy. Týkalo sa to najmä tabuliek s platbami a reportov.  Riešenie: Naším riešením je zavedenie formulárov, ktoré majú viacero prínosov ako :  Automatické vypĺňanie položiek Automatická kontrola položiek  Nezávislosť zákazníka aj žiadateľa od kancelárského balíka Úspora času Zdieľanie dokumentu pre viac používateľov Efektivitu kontroly dokumentovZhrnutie Vzhľadom na závažnosť zistení analýzy a následnú pracnosť pri systémovom odstraňovaní týchto nedostatkov bolo ekonomicky výhodnejšie nepokračovať vo vývoji starej aplikácie. Navrhli sme preto novú databázovú aplikáciu pre evidenciu a riadenie žiadostí o čerpanie grantov.  Naše riešenie zabezpečuje prípravu žiadateľských formulárov pre jednotlivé typy programov, správu jednotlivých prihlášok (vrátane automatizovaného riadenia vyplnenosti a kontroly). Podporuje vyhodnocovanie prihlášok žiadateľov a zabezpečuje dohľad nad realizáciou schválených žiadostí, ako aj priebežnú komunikáciu medzi zúčastnenými stranami. Hlavným prínosom riešenia je nezávislosť zákazníka od externého dodávateľa v procese tvorby grantových programov, zvýšený komfort a efektivita práce so systémom, odstránenie nákladov spojených s prácou externého dodávateľa.  Technické detaily riešenia Technológia: .NET, c#, JavaScript Architektúra: trojvrstvová  Databáza: postgreSQL     /*! elementor - v3.15.0 - 20-08-2023 */ .elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-color:#0c0d0e;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider .elementor-divider{display:flex}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{flex-grow:0;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{flex-grow:0;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,.elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator{width:100%;min-height:var(--divider-pattern-height);-webkit-mask-size:var(--divider-pattern-size) 100%;mask-size:var(--divider-pattern-size) 100%;-webkit-mask-repeat:var(--divider-pattern-repeat);mask-repeat:var(--divider-pattern-repeat);background-color:var(--divider-color);-webkit-mask-image:var(--divider-pattern-url);mask-image:var(--divider-pattern-url)}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.e-con-inner>.elementor-widget-divider,.e-con>.elementor-widget-divider{width:var(--container-widget-width,100%);--flex-grow:var(--container-widget-flex-grow)} Ak máte otázku, radi odpovieme! Stačí ak nám necháte správu. /*! elementor-pro - v3.15.0 - 09-08-2023 */ .elementor-button.elementor-hidden,.elementor-hidden{display:none}.e-form__step{width:100%}.e-form__step:not(.elementor-hidden){display:flex;flex-wrap:wrap}.e-form__buttons{flex-wrap:wrap}.e-form__buttons,.e-form__buttons__wrapper{display:flex}.e-form__indicators{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;font-size:13px;margin-bottom:var(--e-form-steps-indicators-spacing)}.e-form__indicators__indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-basis:0;padding:0 var(--e-form-steps-divider-gap)}.e-form__indicators__indicator__progress{width:100%;position:relative;background-color:var(--e-form-steps-indicator-progress-background-color);border-radius:var(--e-form-steps-indicator-progress-border-radius);overflow:hidden}.e-form__indicators__indicator__progress__meter{width:var(--e-form-steps-indicator-progress-meter-width,0);height:var(--e-form-steps-indicator-progress-height);line-height:var(--e-form-steps-indicator-progress-height);padding-right:15px;border-radius:var(--e-form-steps-indicator-progress-border-radius);background-color:var(--e-form-steps-indicator-progress-color);color:var(--e-form-steps-indicator-progress-meter-color);text-align:right;transition:width .1s linear}.e-form__indicators__indicator:first-child{padding-left:0}.e-form__indicators__indicator:last-child{padding-right:0}.e-form__indicators__indicator--state-inactive{color:var(--e-form-steps-indicator-inactive-primary-color,#c2cbd2)}.e-form__indicators__indicator--state-inactive [class*=indicator--shape-]:not(.e-form__indicators__indicator--shape-none){background-color:var(--e-form-steps-indicator-inactive-secondary-color,#fff)}.e-form__indicators__indicator--state-inactive object,.e-form__indicators__indicator--state-inactive svg{fill:var(--e-form-steps-indicator-inactive-primary-color,#c2cbd2)}.e-form__indicators__indicator--state-active{color:var(--e-form-steps-indicator-active-primary-color,#39b54a);border-color:var(--e-form-steps-indicator-active-secondary-color,#fff)}.e-form__indicators__indicator--state-active [class*=indicator--shape-]:not(.e-form__indicators__indicator--shape-none){background-color:var(--e-form-steps-indicator-active-secondary-color,#fff)}.e-form__indicators__indicator--state-active object,.e-form__indicators__indicator--state-active svg{fill:var(--e-form-steps-indicator-active-primary-color,#39b54a)}.e-form__indicators__indicator--state-completed{color:var(--e-form-steps-indicator-completed-secondary-color,#fff)}.e-form__indicators__indicator--state-completed [class*=indicator--shape-]:not(.e-form__indicators__indicator--shape-none){background-color:var(--e-form-steps-indicator-completed-primary-color,#39b54a)}.e-form__indicators__indicator--state-completed .e-form__indicators__indicator__label{color:var(--e-form-steps-indicator-completed-primary-color,#39b54a)}.e-form__indicators__indicator--state-completed .e-form__indicators__indicator--shape-none{color:var(--e-form-steps-indicator-completed-primary-color,#39b54a);background-color:initial}.e-form__indicators__indicator--state-completed object,.e-form__indicators__indicator--state-completed svg{fill:var(--e-form-steps-indicator-completed-secondary-color,#fff)}.e-form__indicators__indicator__icon{width:var(--e-form-steps-indicator-padding,30px);height:var(--e-form-steps-indicator-padding,30px);font-size:var(--e-form-steps-indicator-icon-size);border-width:1px;border-style:solid;display:flex;justify-content:center;align-items:center;overflow:hidden;margin-bottom:10px}.e-form__indicators__indicator__icon img,.e-form__indicators__indicator__icon object,.e-form__indicators__indicator__icon svg{width:var(--e-form-steps-indicator-icon-size);height:auto}.e-form__indicators__indicator__icon .e-font-icon-svg{height:1em}.e-form__indicators__indicator__number{width:var(--e-form-steps-indicator-padding,30px);height:var(--e-form-steps-indicator-padding,30px);border-width:1px;border-style:solid;display:flex;justify-content:center;align-items:center;margin-bottom:10px}.e-form__indicators__indicator--shape-circle{border-radius:50%}.e-form__indicators__indicator--shape-square{border-radius:0}.e-form__indicators__indicator--shape-rounded{border-radius:5px}.e-form__indicators__indicator--shape-none{border:0}.e-form__indicators__indicator__label{text-align:center}.e-form__indicators__indicator__separator{width:100%;height:var(--e-form-steps-divider-width);background-color:#babfc5}.e-form__indicators--type-icon,.e-form__indicators--type-icon_text,.e-form__indicators--type-number,.e-form__indicators--type-number_text{align-items:flex-start}.e-form__indicators--type-icon .e-form__indicators__indicator__separator,.e-form__indicators--type-icon_text .e-form__indicators__indicator__separator,.e-form__indicators--type-number .e-form__indicators__indicator__separator,.e-form__indicators--type-number_text .e-form__indicators__indicator__separator{margin-top:calc(var(--e-form-steps-indicator-padding, 30px) / 2 - var(--e-form-steps-divider-width, 1px) / 2)}.elementor-field-type-hidden{display:none}.elementor-field-type-html{display:inline-block}.elementor-login .elementor-lost-password,.elementor-login .elementor-remember-me{font-size:.85em}.elementor-field-type-recaptcha_v3 .elementor-field-label{display:none}.elementor-field-type-recaptcha_v3 .grecaptcha-badge{z-index:1}.elementor-button .elementor-form-spinner{order:3}.elementor-form .elementor-button>span{display:flex;justify-content:center;align-items:center}.elementor-form .elementor-button .elementor-button-text{white-space:normal;flex-grow:0}.elementor-form .elementor-button svg{height:auto}.elementor-form .elementor-button .e-font-icon-svg{height:1em}.elementor-select-wrapper .select-caret-down-wrapper{position:absolute;top:50%;transform:translateY(-50%);inset-inline-end:10px;pointer-events:none;font-size:11px}.elementor-select-wrapper .select-caret-down-wrapper svg{display:unset;width:1em;aspect-ratio:unset;fill:currentColor}.elementor-select-wrapper .select-caret-down-wrapper i{font-size:19px;line-height:2}.elementor-select-wrapper.remove-before:before{content:""!important} Meno Email Správa Odoslať The post Webový systém riadenia Medzinárodného Vyšehradského Fondu. appeared first on Partner Soft - firma na vývoj software.

prejsť na článok

Generali Investments - investice do podílových fondů

Investiční společnost České pojišťovny. Investování do podílových fondů ČP INVEST a Generali Invest CEE.

prejsť na článok

Vendor Management System

Potrebujete systém, ktorý vám zabezpečí efektívne riadenie vzťahov s dodávateľmi vrátane komunikácie, plánovania a riadenia dodávok, fakturácie, plánovania platieb a monitorovania kvality? Potrebujete systém riadenia dodávateľov alebo VMS! A my v AutoCRM

prejsť na článok

Hlavná cena FOTOFORA, Ružomberok

Začiatkom roku 1971 bol požiadaný Ján Čalovka organizátormi medzinárodného salónu umeleckej fotografie o vypracovanie návrhu Hlavnej ceny FOTOFORA. Organizačná komisia medzinárodného salónu umeleckej fotografie na svojom zasadnutí 14. apríla 1971 posúdila

prejsť na článok

MyMachine sa rozrástlo na celé Slovensko vďaka Operačnému programu Ľudské zdroje

V období od 01.11.2020 – 31.12.2022 realizovala Karpatská nadácia projekt s názvom Program MyMachine rozvoj kompetencií pre 21. storočie vďaka podpore z Európskeho sociálneho fondu a Európskeho fondu regionálneho rozvoja v rámci Operačného programu Ľudsk

prejsť na článok

Garancia spokojnosti

Garantujeme vám vždy férovú cenu. Ak nájdete niekde inde lacnejší produkt s rovnakou špecifikáciou, pošlite nám na daný produkt webový odkaz a my vám vyrovnáme cenu a dáme ešte naviac 5% zľavu. The post Garancia spokojnosti appeared first on Krby EDEN.

prejsť na článok