---
title: "Atlantis Portal - Διαμόρφωση"
canonical: "https://wiki.soft1.eu/space/ATEL/182092817/Atlantis%20Portal%20-%20%CE%94%CE%B9%CE%B1%CE%BC%CF%8C%CF%81%CF%86%CF%89%CF%83%CE%B7"
format: markdown
---
Δημιουργία και διαμόρφωση σελίδων (tab sheets) Η διαμόρφωση των σελίδων του Atlantis Portal επιτυγχάνεται είτε δημιουργώντας νέα gadget, είτε ανακατανέμοντας τα ήδη υπάρχοντα, είτε και τα δύο. Η διαδικασία περιγράφεται αναλυτικότερα παρακάτω.Η δημιουργία νέων σελίδων επιτυγχάνεται με την επιλογή «Νέα καρτέλα» από το πλήκτρο   του   . Στο διάλογο που εμφανίζεται, ορίζονται τόσο η διαρρύθμιση της σελίδας όσο και τα gadget που θα περιλαμβάνονται σ' αυτήν.Από τις υπόλοιπες επιλογές (Θέμα, Γλώσσα, Εμφάνιση ως) ορίζονται επιπλέον λεπτομέρειες, όπως ο χρωματικός συνδυασμός, η γλώσσα και ο τύπος εμφάνισης. Η δημιουργία νέων gadget αλλά και τροποποίηση αυτών που εμφανίζονται σε συγκεκριμένη σελίδα επιτυγχάνεται με το πλήκτρο   . Τα gadgets μπορεί να είναι τύπου RSS, HTML ή Data.                 Δημιουργία και διαμόρφωση gadgets Σε κάθε περίπτωση οι υπόλοιπες παράμετροι ορίζονται μέσω των σελίδων του gadget designer. Τέλος, η διαμόρφωση της θέσης και του μεγέθους των gadgets επιτυγχάνεται με απλό drag&drop. Eιδικές συναρτήσεις  Κατά τη δημιουργία του ερωτήματος (query) ενός gadget, με ειδική συνάρτηση, επιτυγχάνεται η κλήση μίας οντότητας του Atlantis, εστιασμένη στη συγκεκριμένη εγγραφή από την οποία κλήθηκε.  Η συνάρτηση αυτή μπορεί να οριστεί σε μία ή περισσότερες στήλες και έχει την παρακάτω σύνταξη: Σύνταξη για εστίαση σε εγγραφή οντότητας →  $uhref  ( FormClassName ,  KeyValue ,  DisplayValue [,KeyField] )  'ColumnName' FormClassName  = φόρμα οντότητας με την οποία θα εμφανιστούν τα στοιχεία KeyValue  = Μοναδικός αριθμός εγγραφής στην οποία θα εστιάσει DisplayValue  = Πεδίο οντότητας που θα εμφανίσει KeyField  = Πεδίο οντότητας βάσει του οποίου θα γίνει η αναζήτηση. Η παράμετρος αυτή είναι προαιρετική και σε περίπτωση που δεν συμπληρωθεί, ως τιμή λαμβάνει το " ID " 'ColumnName'  = Τίτλος στήλης στην οποία θα εμφανιστεί Ενδεικτικό παράδειγμα  για  $uhref(TCrmCustomerFrm, p.ID, P.Name) 'Πελάτης' : - Στα στοιχεία του gadget εμφανίζεται στήλη με τις επωνυμίες πελατών  (P.Name) - Επιλέγοντας έναν πελάτη (κλικ), αναζητείται η αντίστοιχη εγγραφή με  (ID = p.ID)  και εμφανίζονται τα αναλυτικά στοιχεία της οντότητας με την φόρμα  (TCrmCustomerFrm) Σύνταξη για εστίαση σε πίνακα→  $uhref  ( TableName ,  KeyValue ,  DisplayValue [,KeyField] )  'ColumnName' TableName = Πίνακας εμφάνισης KeyValue  = Μοναδικός αριθμός εγγραφής στην οποία θα εστιάσει DisplayValue  = Πεδίο πίνακα που θα εμφανίσει KeyField  = Πεδίο πίνακα βάσει του οποίου θα γίνει η αναζήτηση. Η παράμετρος αυτή είναι προαιρετική και σε περίπτωση που δεν συμπληρωθεί, ως τιμή λαμβάνει το " CodeID " 'ColumnName'  = Τίτλος στήλης στην οποία θα εμφανιστεί Ενδεικτικό παράδειγμα  για  $uhref(Country, c.CodeID, c.Descr) 'Χώρα'  : - Στα στοιχεία του gadget εμφανίζεται στήλη με τις ονομασίες των χωρών ( c.Descr ) - Επιλέγοντας μία χώρα (κλικ), αναζητείται η αντίστοιχη εγγραφή με ( CodeID  =  c.CodeID ) και εμφανίζεται πίνακας με όλα στοιχεία των χωρών Σύνταξη για εστίαση σε  DBViews → $uhref  (DBVIEW, KeyValue, DisplayValue [,KeyField]) 'ColumnName' DBVIEW = Πίνακας εμφάνισης KeyValue  = Μοναδικός αριθμός εγγραφής στην οποία θα εστιάσει DisplayValue  = Πεδίο πίνακα που θα εμφανίσει 'ColumnName'  = Τίτλος στήλης στην οποία θα εμφανιστεί Ενδεικτικό παράδειγμα  για   $uhref( DBVIEW , CodeID, Descr) 'Ειδικές υπενθυμίσεις'  : - Στα στοιχεία του gadget εμφανίζεται στήλη με την περιγραφή των DBViews ( Descr ) - Επιλέγοντας ένα DBView (κλικ), ενεργοποιείται το αντίστοιχο view με ( CodeID  =  CodeID ), εμφανίζονται τα δεδομένα και με επιλογή μίας γραμμής ενεργοποιείται η αντίστοιχη οντότητα, σύμφωνα με την παραμετροποίηση του συγκεκριμένου DBView. Κατά τη δημιουργία του ερωτήματος (query) ενός gadget, με ειδικές συναρτήσεις επιτυγχάνεται η εκτέλεση των ερωτημάτων αυτών τόσο σε εγκαταστάσεις SQL Server όσο και Oracle. Η αρχική σύνταξη του ερωτήματος γίνεται για SQL Server και με τη χρήση των συναρτήσεων επιτυγχάνεται η εκτέλεση και σε Oracle. Οι συναρτήσεις αυτές πρέπει να ορίζονται σε όλα τα υποερωτήματα που μπορεί να υπάρχουν στο ‘ερώτημα’ ενός Gadget (π.χ. περιπτώσεις Union) και έχουν την σύνταξη που θα βρείτε παρακάτω: $NOFROM  → συμπεριλαμβάνεται στο ερώτημα εφόσον ΔΕΝ υπάρχει η εντολή FROM στο υπό/ερώτημα προς SQL Server. Θα πρέπει να προστίθεται στο τέλος του κάθε υπό/ερωτήματος, οπότε κατά την εκτέλεση σε Oracle προστίθεται αυτόματα η εντολή ‘FROM DUAL’. $TOP  → η συνάρτηση πρέπει να συμπεριλαμβάνεται στο ερώτημα εφόσον υπάρχει η εντολή TOP στο ερώτημα προς SQL Server. Θα πρέπει: να αντικαθίσταται η εντολή, δηλ. TOP με $TOP, οπότε κατά την εκτέλεση σε Oracle παραλείπεται η εντολή TOP να προστίθεται και στο τέλος της εντολής WHERE κάθε υπό/ερωτήματος,           οπότε κατά την εκτέλεση σε Oracle προστίθεται αυτόματα η εντολή ‘AND ROWNUM <= Ν’ (όπου Ν ο ακέραιος αριθμός που υπάρχει μετά την TOP). $WTOP → η συνάρτηση πρέπει να συμπεριλαμβάνεται στο ερώτημα εφόσον υπάρχει η εντολή TOP στο ερώτημα προς SQL Server. Θα πρέπει: να αντικαθίσταται η εντολή, δηλ. TOP με $TOP, οπότε κατά την εκτέλεση σε Oracle παραλείπεται η εντολή TOP να προστίθεται και στο τέλος της εντολής FROM κάθε υπό/ερωτήματος , όταν ΔΕΝ υπάρχει η εντολή ‘WHERE’ στο ερώτημα,          οπότε κατά την εκτέλεση σε Oracle προστίθεται αυτόματα η εντολή ‘WHERE ROWNUM <= Ν’ (όπου Ν ο ακέραιος αριθμός που υπάρχει μετά την TOP). $ YEAR ()   – η συνάρτηση πρέπει να συμπεριλαμβάνεται στο ερώτημα εφόσον υπάρχει η συνάρτηση   YEAR () στο ερώτημα προς SQL Server. Θα πρέπει να αντικαθίσταται η   YEAR () με $ YEAR (), οπότε κατά την εκτέλεση σε Oracle μετατρέπεται αυτόματα σε EXTRACT( YEAR FROM   field _ name ) και επιστρέφει το έτος από την ημερομηνία. $ΜΟΝΤΗ()   – η συνάρτηση πρέπει να συμπεριλαμβάνεται στο ερώτημα εφόσον υπάρχει η συνάρτηση ΜΟΝΤΗ() στο ερώτημα προς SQL Server. Θα πρέπει να αντικαθίσταται η ΜΟΝΤΗ() με $ΜΟΝΤΗ(), οπότε κατά την εκτέλεση σε Oracle μετατρέπεται αυτόματα σε EXTRACT( ΜΟΝΤΗ FROM   field _ name ) και επιστρέφει το μήνα από την ημερομηνία. $ DAY ()   – η συνάρτηση πρέπει να συμπεριλαμβάνεται στο ερώτημα εφόσον υπάρχει η συνάρτηση ΜΟΝΤΗ στο ερώτημα προς SQL Server. Θα πρέπει να αντικαθίσταται η   DAY () με $ DAY (), οπότε κατά την εκτέλεση σε Oracle μετατρέπεται αυτόματα σε EXTRACT(   DAY   FROM   field _ name ) και επιστρέφει την ημέρα από την ημερομηνία.