Βασικά, όχι αλλά. Το Sharepoint χρησιμοποιεί ένα αρκετά περίεργο σχήμα στη βάση το οποίο μόνο .... relational δεν είναι. Δεν υπάρχει εύκολος τρόπος να πειράξεις ή να διαβάσεις τους πίνακες του, ούτε και πρέπει να το κάνεις. Εξάλλου, η λογική "φτιάχνω πίνακες, τους ενώνω και φτιάχνω και ένα view" δεν δουλεύει στο sharepoint, γιατί δεν υπάρχουν πίνακες και views με την έννοια που έχουν στην SQL. Οι λίστες στο Sharepoint δεν αντιστοιχούν σε πίνακες αλλά είναι κυριολεκτικά λίστες οι οποίες περιέχουν διάφορα είδη περιεχομένων, όπως π.χ. την καρτέλα ενός πελάτη, ή την περιγραφή ενός προϊόντος. Δεν μπορείς να σπάσεις τις οντότητες σε διάφορες λίστες όπως θα έκανες με τους πίνακες στη βάση. Μπορείς όμως να ορίσεις ότι μία λίστα μπορεί να περιέχει διαφορετικά content types τα οποία μπορεί να έχουν διαφορετικά πεδία, π.χ. να έχεις μία λίστα Products η οποία να περιέχει ένα Clothes content type με πεδίο το χρώμα και ένα Dairy content type με ημερομηνία λήξης.
Αν αυτό που θέλεις είναι απλά να έχεις μερικά lookup πεδία σε μία βασική λίστα θα πρέπει να φτιάξεις δύο λίστες και στη αρχική να προσθέσεις ένα lookup πεδίο το οποίο θα δείχνει στην lookup λίστα και να επιλέξεις ποιό πεδίο από την lookup λίστα θα εμφανίζεται στην αρχική.
Το αλλά τώρα. Αν χρησιμοποιείς Sharepoint Designer και έχεις όρεξη να γράψεις κώδικα μέσα στις σελίδες σου, να τις μαρκάρεις κατάλληλα στο web.config (μία-μία) και να φτιάξεις το δικό σου grid και το δικό σου UI για να χειρίζεσαι αυτά τα δεδομένα μπορείς να το κάνεις. Αν δουλεύεις με Visual Studio μπορείς πάλι να φτιάξεις ένα feature το οποίο θα περιλαμβάνει τη σελίδα που θέλεις, και θα πρέπει να γράψεις και τα κατάλληλα xml αρχεία για να την εγκαταστήσεις. Σε κάθε περίπτωση τα ListView και DataFormWebPart δεν θα παίξουν με τα data σου όμως. Θα χάσεις έτσι κάθε πλεονέκτημα που θα σου έδινε σε ταχύτητα το Sharepoint και θα πρέπει να παλέψεις και με μερικά bugs.
Γενικά, δεν είναι καλή ιδέα να προσπαθείς να αναμίξεις δικό σου κώδικα μέσα σε μία σελίδα ή να προσπαθείς να χρησιμοποιείς πίνακες από κάποια βάση στο Sharepoint. Στις περισσότερες περιπτώσεις μπορείς να κάνεις παρόμοια πράγματα με λίστες και lookup πεδία, ενώ θα πρέπει να φτιάξεις από το 0 πολλούς από τους μηχανισμούς που ήδη διαθέτει το Sharepoint, όπως το security και το versioning.
Αντί να προσπαθείς να κάνεις το Sharepoint βάση (που δεν είναι) θα πρέπει να σκεφτείς τί πραγματικά θέλεις να κάνεις και πως θα το πετύχεις με τους μηχανισμούς που υπάρχουν.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos