Alfresco este o platformă flexibilă pentru dezvoltarea aplicațiilor de gestionare a datelor. Primul pas în dezvoltarea unui tip de date personalizat este crearea unui model de date. Modelul de date Alfresco integrat este destul de complet. De fapt, pentru funcționalitatea de gestionare a documentelor de bază, va trebui să utilizați modelul încorporat. Desigur, veți pierde unele funcționalități în comparație cu utilizarea unui model de date adaptat nevoilor dvs. de afaceri.
Ar trebui să fiți familiarizați cu elementele de bază ale managementului documentelor și cu clientul web Alfresco. Dacă doriți să mergeți mai departe, trebuie să știți cum să scrieți un cod Java simplu.
Noțiuni de bază privind crearea de modele de date
Modelul de date descrie datele care pot fi stocate în depozit. Modelul de date este fundamentul lui Alfresco - fără ele, ar fi doar un sistem de fișiere dezvoltat. Iată caracteristicile cheie ale modelului de date Alfresco:
Modelul de date Alfresco este construit folosind un număr mic de "blocuri": Tipuri, Proprietăți, Tipuri de proprietăți, Asociații și Aspecte.
O proprietate este o parte integrantă a metadatelor asociate unui anumit tip. De exemplu, proprietățile raportului de pierderi pot include proprietăți precum "numele angajatului", "data creării", "proiectul", "clientul" etc. Acest tip poate avea, de asemenea, o proprietate "data" pentru stocarea unui fișier cu un raport în format Excel sau PDF.
Tipurile de proprietăți sunt tipuri de date care pot fi stocate. Tipurile de bază - șiruri, date, numere, valori booleene - sunt deja definite în Alfresco în mod implicit.
Constrângerile sunt folosite pentru a determina ce date pot fi stocate într-o proprietate de tip. Există patru tipuri de restricții: REGEX, LIST, MINMAX și LENGTH. REGEX utilizate pentru a limita proprietățile folosind expresii regulate, LIST este folosit pentru a determina o listă de valori posibile, MINMAX pentru limitarea valorilor digitale și pentru a determina proprietățile de lungime lungime. Restricțiile pot fi definite o dată și utilizate în toate modelele Alfresco. De exemplu, peste tot puteți utiliza restricția "cm: nume de fișier" pentru o restricție REGEX după numele fișierului.
Asociațiile definesc relațiile dintre tipuri. Fără asocieri, modelul poate fi plin de tipuri care se referă la alte date. Revenind la exemplul cu "raportul de profit" putem salva fiecare linie ca un obiect separat. Pentru tipul "Profit Margin", putem adăuga tipul de "linie de raport". Folosind asociații putem spune Alfresco despre relația dintre aceste tipuri. Există două tipuri de asociații: "asociații egale" și asociații de "subordonare". Asociațiile "egale" definesc relația dintre două obiecte, dar nu le subordonează reciproc. Asociațiile "subordonate" sunt folosite pentru a arăta astfel de subordonare. În asociațiile existente, în mod implicit, este ușor de determinat tipul de asociație "cm: conține". Această asociere definește relația „subordonat“ între directoare ( „cm: dosar“) și toate celelalte obiecte - descendenții de tip „sys: bază“. Un alt exemplu este "Raportul" și "Documentele de aplicare" - acestea vor fi legate de asociații "egale".
Înainte de a vorbi despre aspecte, hai să determinăm modul în care funcționează moștenirea și includerea datelor în modelul nostru. Să presupunem că folosim Alfresco pentru a gestiona datele și a le afișa pe pagina portalului. Să spunem că vrem să vedem doar o parte din date. Un exemplu simplu este afișarea datei și orei de trimitere a datelor către portal. Folosind modelul de date, putem proceda în două moduri: în primul rând - este de a defini o proprietate în tipul de rădăcină pentru toate obiectele și toate obiectele -nasledniki vor moșteni, de tipul de rădăcină, iar al doilea mod de a determina o proprietate de acest tip este numai pentru cei care vor fi afișate pe portal. Desigur, a doua cale este mai bună, dar prima este mai ușoară. Astfel, pentru exemplul nostru, trebuie să definiți aspectul "PortalDisplayable" cu proprietatea "data publicată". Acest aspect va fi adăugat tuturor datelor pe care doriți să le afișați pe portal.