Αρχεία κατηγοριών: BDC

Γρήγορη συμβουλή: Αριθμούς έκδοσης BDC ADF είναι ο φίλος σας

Εάν σας χέρι-κωδικοποίηση ADF αρχεία και πολλή κύκλων κώδικα/εισαγωγής/δοκιμών, Χρησιμοποιήστε τον αριθμό έκδοσης για να κάνουν τη ζωή σας ευκολότερη.

Μου άρεσε καθόλου να το παραδεχθούμε, αλλά μέχρι αυτή την εβδομάδα, Ήμουν πάντα διαγράφοντας τον τροφοδότη ADF και επαναεισαγωγής αυτό. Αυτό θα σπάσει μου στήλες δεδομένων επιχειρήσεων και με κάνουν να εκ νέου τα σύρματα. Όλων των περιττών.

Αρχείου αυτό στο πλαίσιο "είναι προφανές από τη στιγμή που βλέπετε".

Παράδειγμα:

<LobSystem
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.microsoft.com/Office/2006/03/BusinessDataCatalog BDCMetadata.xsd" Τύπος="WebService" Έκδοση="1.2.0.0" Όνομα="xyzzyDocumentReview" xmlns="http://schemas.microsoft.com/Office/2006/03/BusinessDataCatalog">

Αλλαγή που η έκδοση και η επανεισαγωγή και την υπάρχουσα στήλη επιχειρηματικών δεδομένων χρησιμοποιεί αυτόματα την ενημερωμένη έκδοση με καμία επιπρόσθετη ρύθμιση που απαιτούνται.

</Τέλος>

Εγγραφείτε στο blog μου.

Technorati Tags:

Λύση: Επιλογέας BDC εμφανίζει μόνο μία στήλη των αποτελεσμάτων

Στην εν εξελίξει μου απόπειρες, παρέχοντας ένα πιο χρήσιμο στήλη αναζήτησης χρησιμοποιώντας BDC, Χτύπησα έναν τοίχο με τον επιλογέα BDC. Αν δεν έχετε δει, ο επιλογέας BDC είναι παρόμοια με μια επιλογή ατόμων εκτός από το ότι λειτουργεί με τις στήλες του τύπου "επιχειρηματικών δεδομένων".

Επισκέπτεστε τον επιλογέα κάνοντας κλικ στο εικονίδιο ανοιχτό βιβλίο από μια στήλη εταιρικών δεδομένων, όπως φαίνεται:

εικόνα

Η παραπάνω εικόνα δείχνει μια στήλη εταιρικών δεδομένων, που ονομάζεται "Master αναγνωριστικού εγγράφου". Αυτήν τη στήλη είναι συνδεδεμένος, μέσω BDC, σε μια υπηρεσία web. Η υπηρεσία web επιστρέφει δύο στήλες πληροφοριών: Αναγνωριστικού εγγράφου και τίτλο. Ο επαγγελματικός σκοπός εδώ είναι να παρέχει ένα «αυτό το έγγραφο βασίζεται στην" συνάρτηση. Οι χρήστες επιλέξουν ένα master"" έγγραφο και όταν σώζουν, ένα δέκτη συμβάντων αντιγράφει τα πεδία δεδομένων meta από τον αναφερόμενο πλοίαρχο.

Από προεπιλογή, ο επιλογέας BDC που μοιάζει με αυτό, όταν μπορώ να ψάξω για ένα έγγραφο με το αναγνωριστικό = "38":

clip_image002

Αυτό είναι χρήσιμο, αλλά δεν είναι αρκετά καλό. Άνθρωποι δεν σκέφτονται από την άποψη του IDs, που σκέφτονται με γνώμονα τίτλους ή/και άλλα μετα-δεδομένα. Η επιλογή σας επιτρέπει την αναζήτηση σε άλλες στήλες (π.χ.. Τίτλος) αλλά δεν θα δείξει το πραγματικό Κατάλογος των τίτλων που διαπιστώθηκε, μόλις τους προσθηκών του όπως φαίνεται εδώ:

clip_image002[1]

(Το στιγμιότυπο οθόνης δεν είναι τόσο μεγάλη, γιατί δεν είχα πάρει μια αναζήτηση που επιστρέφει κάθε έγκυρα αποτελέσματα, αλλά μπορείτε να δείτε ότι αν διαπίστωσε κάποια αποτελέσματα, αυτό έδειχνε μόνο της προσθήκης, Δεν βρέθηκαν τίτλοι).

Έψαξα ψηλά και χαμηλά για την απάντηση σε αυτό και απέτυχε. Ο συνάδελφός μου, ο σεβάσμιος Jonathan Bradshaw, είχε αντιμετωπίσει και να λυθεί αυτό το ζήτημα. Όταν έφτασα σε αυτόν για βοήθεια, αυτός που μου επισήμανε προς τη σωστή κατεύθυνση.

Ρυθμίστε τον επιλογέα για να εμφανίσετε πολλαπλές στήλες, μέσω της "ShowInPicker" Ακίνητα/ADF:

<Ιδιότητα Όνομα="ShowInPicker" Τύπος="System.Boolean">TRUE</Ιδιότητα>

Αναλυτικότερα:

  <!-- Τίτλος -->
  <TypeDescriptor Όνομα τύπου="System.String" Όνομα="Τίτλος" >
    <LocalizedDisplayNames>
      <LocalizedDisplayName LCID="1033">Τίτλος</LocalizedDisplayName>
    </LocalizedDisplayNames>
    <Ιδιότητες>
      <Ιδιότητα Όνομα="DisplayByDefault" Τύπος="System.Boolean">TRUE</Ιδιότητα>
      <Ιδιότητα Όνομα="ShowInPicker" Τύπος="System.Boolean">TRUE</Ιδιότητα>
    </Ιδιότητες>
  </TypeDescriptor>

Αυτή την ιδιότητα να εισαγάγει ένα μικρό πρόβλημα. Μόλις ορίσετε μια φορά, θα πρέπει να ορίσετε για κάθε στήλη που θέλετε να εμφανίζονται. Στην περίπτωσή μου, Επιλογέας BDC έδειξε προσθηκών από προεπιλογή. Ωστόσο, μόλις πρόσθεσα "ShowInPicker" στον τίτλο, Προσθηκών, παύει να εμφανίζεται. Ότι έλυσα, ορίζοντας ρητά την ιδιότητα ShowInPicker για το αναγνωριστικό εγγράφου.

Εδώ είναι το αποτέλεσμα:

εικόνα

(Θα εξηγήσω τα περιττά αναζητούν» 168 – CamlSchema.xsd" κατασκευή σε μια μελλοντική θέση blog. Με λίγα λόγια, είναι μια αλληλουχία συμβολοσειρά που επιτρέπει για μια ελαφρώς καλύτερη εμπειρία του χρήστη).

Φυσικά, έχοντας γράψει αυτήν την είσοδο blog, Έκανα ακριβώς μια αναζήτηση για "ShowInPicker" και βρέθηκαν πολλές επιτυχίες, συμπεριλαμβανομένου αυτού: http://msdn2.microsoft.com/en-us/library/ms583986.aspx. Εξηγεί την έννοια αυτής της ιδιότητας μαζί με κάποια άλλα καλά πράγματα BDC.

</Τέλος>

Εγγραφείτε στο blog μου!

Technorati Tags:

Λύση σε αποτυχία εισαγωγής BDC ADF: “Παρουσιάστηκε το ακόλουθο σφάλμα:”

Χειροτεχνίας φορά BDC ADF αρχεία με το χέρι (έτσι ώστε να μπορώ να οικοδομήσουμε μου "Κατεβείτε γκαζόν μου!" cred) και το χτύπημα αυτό το υπέροχο σφάλμα:

εικόνα

"Εισαγωγή ορισμό εφαρμογής απέτυχε. Παρουσιάστηκε το ακόλουθο σφάλμα:"

Όπως μπορείτε να δείτε, υπάρχει ένα λάθος, Αλλά … δεν πρόκειται να μου πει τι είναι.

Στην περίπτωσή μου, το θέμα αποδείχθηκε ότι είχα ξεκίνησε με μια λειτουργική ADF για ένα διαφορετικό πρόγραμμα που συνδέεται με μια βάση δεδομένων και να εκτελεστεί ένα ερώτημα SQL κατά μια άποψη. Σε αυτό το νέο έργο, Είμαι καλώντας μια μέθοδο για μια υπηρεσία web. Είχα αφαιρεθούν για την συγκεκριμένη ουσία DB και πρόσθεσε μου πράγματα υπηρεσία web, αλλά απέτυχε να ενημερώσει το <LobSystem>του χαρακτηριστικού type. Εγώ ανάβω αυτό σε "WebService" και εγώ ευτυχώς προχώρησε σε σφάλματα νεότερα και πιο συναρπαστικά εισαγωγής, που χειρίζονταν εν ευθέτω χρόνω.

Εδώ είναι το λάθος συστήματος Lob:

<LobSystem
xmlns:xsi =http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation =http://schemas.microsoft.com/Office/2006/03/BusinessDataCatalogBDCMetadata.xsd
Τύπος = "βάση δεδομένων"
Εκδοχή = "1.0.0.0" Όνομα = "xyzzy"
xmlns ="
http://schemas.microsoft.com/Office/2006/03/BusinessDataCatalog">

Αυτό είναι σωστό:

<LobSystem
xmlns:xsi =http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation =http://schemas.microsoft.com/Office/2006/03/BusinessDataCatalogBDCMetadata.xsd
Τύπος = "WebService"
Εκδοχή = "1.0.0.0" Όνομα = "xyzzy"
xmlns ="
http://schemas.microsoft.com/Office/2006/03/BusinessDataCatalog">

</Τέλος>

Technorati Tags:

BDC φαίνεται ένα βιώσιμο υποκατάστατο για αναζητήσεις

Η ΕΝΗΜΕΡΩΜΈΝΗ ΈΚΔΟΣΗ: Αυτής της ταχυδρόμησης MSDN έχει μερικές ενδιαφέρουσες παρατηρήσεις από JXJ βάσει του, κυρίως αρνητική, εμπειρίες που πηγαίνει κάτω από αυτό το μονοπάτι: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2623565&SiteID=1

Έχουμε ένα επιχειρηματικό σενάριο όπου πρέπει να συνδέσετε δύο βιβλιοθήκες εγγράφων μέσω μιας κοινής "Αναγνωριστικού εγγράφου" πεδίο.

Χρησιμοποιούμε συχνά μια στήλη αναζήτησης να υλοποιεί συνδέσεις όπως αυτό. Υπάρχουν αρκετά μειονεκτήματα για στήλες αναζήτησης, τρία από τα οποία:

  1. Μπορεί να συνδεθεί μόνο μία στήλη από την βιβλιοθήκη συμβούλευσης αναζήτησης.
  2. Απόδοση: Η Βιβλιοθήκη προέλευσης θα μπορούσαν να περιέχουν εκατοντάδες εγγραφές. Αυτό είναι πάρα πολλές καταχωρήσεις σε η λειτουργία αναζήτησης.
  3. Αναζήτηση: Δεν υπάρχει καμία ολοκληρωμένη αναζήτηση. Δεν εννοώ με την έννοια του ΒΡΎΟΥ της αναζήτησης, αλλά δεν υπάρχει κανένας τρόπος για την αναζήτηση / φίλτρο σε πολλαπλές στήλες από τη βιβλιοθήκη εγγράφων προέλευσης και εντοπίστε τη σύνδεση που θέλετε.

Υποστηρίζεται από το BDC, μπορούμε να χρησιμοποιήσουμε ένα "επιχειρηματικών δεδομένων" στήλη τύπου και παρέχει μια ανώτερη αναζήτηση και επιτρέπει ακόμη και σε πολλαπλές στήλες δεδομένων να εμφανίζονται σε προβολές λίστας.

Είχα κάποια προκαταρκτική επιτυχία με την προσέγγιση αυτή και σχέδιο να γράψω περισσότερα για αυτό.

Εάν έχετε εργαστεί πριν από αυτή την γωνία και έχετε οποιαδήποτε σχόλια, παρακαλώ μοιραστείτε!

</Τέλος>

Technorati Tags:

Λύση για το σφάλμα εισαγωγής BDC: “Δεν ήταν δυνατή η φόρτωση τύπου που περιγράφεται από το TypeName του TypeDescriptor …”

Έχω εργαστεί με BDC σήμερα, κωδικοποίηση ADF αρχεία με το χέρι και να παράγει τον εαυτό μου κάποια λάθη. Ένα τέτοιο σφάλμα:

Εισαγωγή ορισμός εφαρμογή απέτυχε. Παρουσιάστηκε το ακόλουθο σφάλμα: Δεν ήταν δυνατή η φόρτωση τύπου που περιγράφεται από το TypeName του TypeDescriptor. Το όνομα παραμέτρου: Όνομα τύπου σφάλμα παρουσιάστηκε στο ή λίγο πριν τη γραμμή: «35’ και θέση: «20».

ΒΡΎΑ εμφανίζεται αυτό το σφάλμα όταν προσπάθησα να εισαγάγετε το αρχείο ADF XML.

Ερεύνησα το Ίντερνετ και διαπίστωσε ότι ήμουν αναφοράς το όνομα εμφάνισης LOB (από το <LobSystemInstance>) σε μου <TypeDescriptor> κόμβος όταν πρέπει να έχουν αναφορά το ίδιο το όνομα LOB (από <LobSystem>).

Λάθος:

<Περιγραφή τύπου TypeName="Conchango.KeyValue, Όνομα παρουσίας LOB" Όνομα = "KeyValue">

Διόρθωση:

<Περιγραφή τύπου TypeName="Conchango.KeyValue, Όνομα LOB" Όνομα = "KeyValue">

Ελπίζω αυτό κάποιος αποθηκεύει μια ώρα ή δύο του χρόνου.

</Τέλος>

Εγγραφείτε στο blog μου!

Technorati Tags:

Σφάλμα χρόνου εκτέλεσης BDC εξήγησε

Μου προκάλεσε ένα σφάλμα BDC αυτή την εβδομάδα το που εκδηλώθηκε στη διεπαφή χρήστη και εν τη 12 Κυψέλη καταγραφής κατά το χρόνο εκτέλεσης.

Πρώτη, αυτό εμφανίστηκε στο περιβάλλον εργασίας χρήστη:

Δεν ήταν δυνατή η εύρεση πεδίων για εισαγωγή όλων των τιμών αναγνωριστικού για τη σωστή εκτέλεση μιας Εμφάνισης_μεθόδου Ειδικής_εύρεσης με όνομα … Εξασφαλιστεί παράμετροι εισαγωγής έχουν TypeDescriptors συσχετισμένους με κάθε αναγνωριστικό που έχει οριστεί για αυτή την οντότητα.

Εδώ είναι ένα στιγμιότυπο οθόνης:

clip_image001

Μπορούσε, επίσης, να προκαλέσει αυτό το μήνυμα να εμφανίζεται σε το 12 Κυψέλη καταγραφής στο θα (χρησιμοποιώντας μου κατοχυρωμένη με δίπλωμα ευρεσιτεχνίας high-tech-don't-try-this-at-home "μυστηριώδεις λάθη" μέθοδος):

11/14/2007 09:24:41.27 W3wp.exe (0x080C) 0x0B8C του SharePoint Portal Server επιχειρηματικών δεδομένων υψηλής εξαίρεση 6q4x στο BusinessDataWebPart.OnPreRender: System.InvalidOperationException: Η τιμή του αναγνωριστικού ”, τύπου ”, δεν είναι έγκυρη. Αναμενόμενη τιμή αναγνωριστικού του τύπου 'System.String'. στο Microsoft.Office.Server.ApplicationRegistry.MetadataModel.Entity.FindSpecific(Αντικείμενο[] subIdentifierValues, LobSystemInstance lobSystemInstance) στο Microsoft.SharePoint.Portal.WebControls.BdcClientUtil.FindEntity(Οντότητα οντότητα, Αντικείμενο[] userValues, LobSystemInstance lobSystemInstance) στο Microsoft.SharePoint.Portal.WebControls.BusinessDataItemBuilder.GetEntityInstance(Προβολή desiredView) στο Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.GetEntityInstance() στο Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties()

Έψαξα γύρω και βρήκα μερικές οδηγεί σε το Φόρουμ MSDN, αλλά δεν ήταν αρκετό για μένα να καταλάβω τι έκανα λάθος. Είδα μια εκπομπή στο Web με TED Pattison που μου εταιρεία έχει squirreled μακριά σε ένα διακομιστή και ήρθε να συνειδητοποιήσει το πρόβλημα μου.

Στο ADF μου, Είμαι σύνδεση σε μια βάση δεδομένων SQL, όπως φαίνεται:

            <Ιδιότητα Όνομα="RdbCommandText" Τύπος="System.String">
              <![CDATA[
                ΕΠΙΛΈΞΤΕ SETID, CARRIER_ID, EFFDT, DESCR, EFF_STATUS, TAXPAYER_ID, NETWORK_ID, FRT_FORWARD_FLG, ALT_NAME1, ALT_NAME2, LANGUAGE_CD,
                      ΧΏΡΑ, ΔΙΕΎΘΥΝΣΗ1, 2Η ΔΙΕΎΘΥΝΣΗ, ADDRESS3, ADDRESS4, ΠΌΛΗ, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
                      ΚΟΜΗΤΕΊΑ, ΚΡΆΤΟΣ, ΤΑΧΥΔΡΟΜΙΚΉ, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, ΤΗΛΈΦΩΝΟ, ΕΠΈΚΤΑΣΗ, ΦΑΞ, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR,
                      INTERLINK_DLL, TMS_EXCLUDE_FLG από dbo.PS_CARRIER_ID_VW με (nolock)
                ΌΠΟΥ
                  (SETID <> "ΜΕΤΟΧΉ") και
                  (χαμηλότερη(CARRIER_ID) >= κάτω(@MinId)) και
                  (χαμηλότερη(CARRIER_ID) <= κάτω(@MaxId)) και
                  (χαμηλότερη(DESCR) ΉΘΕΛΑ να κατώτερο(@InputDescr))
                ]]>
            </Ιδιότητα>

Έδωσα ήταν ότι SQL από ένα πρόσωπο DBA και αν κατάλαβα καλά, ότι είναι ένα ειδική Προβολή δημιούργησαν μόνο για μένα. Το μοναδικό κλειδί, εκεί είναι CARRIER_ID.

Εδώ είναι το ζωύφιο που εισήγαγα:

      <Αναγνωριστικά>
        <Αναγνωριστικό Όνομα="CARRIER_ID" Όνομα τύπου="System.String" />
        <Αναγνωριστικό Όνομα="DESCR" Όνομα τύπου="System.String" /> 
</Αναγνωριστικά>

Κάπου κατά μήκος της γραμμής, Είχα καταφέρει να συγχέουμε τον εαυτό μου πάνω από την έννοια του <Αναγνωριστικά> και πρόσθεσε DESCR, ακόμα κι αν δεν είναι στην πραγματικότητα ένα αναγνωριστικό. Πήρα DESCR από τα αναγνωριστικά σύνολο και presto! Δούλεψε όλα.

Ελπίζω να σώσει κάποιον κάποια θλίψη 🙂

Technorati Tags: , , ,

BDC ADF και το φίλο σας, CDATA

Έχω παρατηρήσει κάποια δύσκολη και περιττή χέρι-κωδικοποίησης της RdbCommandText σε μερικά παραδείγματα (συμπεριλαμβανομένων των MSDN τεκμηρίωση).

Θα ήθελα να επισημάνω στους νεοφερμένους να BDC ότι εντολές μπορεί να είναι τυλιγμένο μέσα μια ετικέτα CDATA στη φυσική τους»" μορφή. Έτσι, Αυτή η δύσκολη κατασκευή:

<Ιδιότητα Όνομα="RdbCommandText" Τύπος="System.String">
Επιλέξτε dbo.MCRS_SETTLEMENT.ID, dbo.MCRS_SETTLEMENT.settlement από dbo.MCRS_SETTLEMENT
ΌΠΟΥ (αναγνωριστικό &gt;= @MinId) ΚΑΙ (αναγνωριστικό &lt;= @MaxId)
</Ιδιότητα>

να εκπροσωπείται καλύτερα τον τρόπο αυτό:

<Ιδιότητα Όνομα="RdbCommandText" Τύπος="System.String">
<![CDATA[
Επιλέξτε dbo.MCRS_SETTLEMENT.ID, dbo.MCRS_SETTLEMENT.settlement από dbo.MCRS_SETTLEMENT
ΌΠΟΥ (αναγνωριστικό >= @MinId) ΚΑΙ (αναγνωριστικό <= @MaxId)
]]>
</Ιδιότητα>

</Τέλος>

Αστάρι BDC

Εισαγωγή στην BDC

Λειτουργικό παράδειγμα: ADF BDC που συνδέεται με τη βάση δεδομένων SQL με ενσωματωμένο user αστυνομική ταυτότητα και κωδικός πρόσβασης

Είχα ανάγκη να σύρμα μέχρι ΒΡΎΑ σε μια βάση δεδομένων SQL μέσω BDC. Για σκοπούς δοκιμής POC /, Θα ήθελα να ενσωματώσετε το αναγνωριστικό χρήστη του SQL λογαριασμού και τον κωδικό πρόσβασης στο ADF. Ξεκινώντας με αυτό το πρότυπο (http://msdn2.microsoft.com/en-us/library/ms564221.aspx), Δημιούργησα ένα ADF που συνδέεται με μια συγκεκριμένη παρουσία του SQL server και να συνδέεται με ένα συγκεκριμένο χρήστη id και κωδικό πρόσβασης και φαίνεται στο απόσπασμα αυτό:

  <Παρουσίες του LobSystemInstances>
    <LobSystemInstance Όνομα="ClaimsInstance">
      <Ιδιότητες>
        <Ιδιότητα Όνομα="AuthenticationMode" Τύπος="System.String">Ενεργοποιημένη η διέλευση</Ιδιότητα>
        <Ιδιότητα Όνομα="DatabaseAccessProvider" Τύπος="System.String">SqlServer</Ιδιότητα>
        <Ιδιότητα Όνομα="Αρχείο προέλευσης δεδομένων RdbConnection" Τύπος="System.String">πραγματική serveractual παρουσία</Ιδιότητα>
        <Ιδιότητα Όνομα="Αρχική RdbConnection Κατάλογος" Τύπος="System.String">πραγματική αρχικός κατάλογος</Ιδιότητα>
        <Ιδιότητα Όνομα="RdbConnection ολοκληρωμένη ασφάλεια" Τύπος="System.String">SSPI</Ιδιότητα>
        <Ιδιότητα Όνομα="RdbConnection συγκέντρωση" Τύπος="System.String">ψευδές</Ιδιότητα>

        <!-- Αυτές είναι οι βασικές τιμές: -->
        <Ιδιότητα Όνομα="ID χρήστη RdbConnection" Τύπος="System.String">έναΚαταχωρήστε το ID χρήστη</Ιδιότητα>
        <Ιδιότητα Όνομα="RdbConnection κωδικό πρόσβασης" Τύπος="System.String">πραγματικό κωδικό πρόσβασης</Ιδιότητα>
        <Ιδιότητα Όνομα="RdbConnection Trusted_Connection" Τύπος="System.String">ψευδές</Ιδιότητα>

      </Ιδιότητες>
    </LobSystemInstance>
  </Παρουσίες του LobSystemInstances>

Δεν πρόκειται για μια καλύτερη πρακτική, αλλά είναι χρήσιμο για μια γρήγορη και απλή ρύθμιση παραμέτρων για τη δοκιμή. Αυτό ήταν εκπληκτικά δύσκολο να καταλάβω. Βρήκα ποτέ ένα λειτουργικό παράδειγμα με λέξεις-κλειδιά αναζήτησης:

  • ADF ενσωματωμένα userid και κωδικός πρόσβασης
  • ενσωματώσετε το αναγνωριστικό χρήστη και τον κωδικό πρόσβασης στο adf
  • ενσωματώσετε το αναγνωριστικό χρήστη και τον κωδικό πρόσβασης στο adf bdc
  • SharePoint bdc αστάρι
  • SharePoint ενσωματώσετε το αναγνωριστικό χρήστη και τον κωδικό πρόσβασης στο adf

</Τέλος>

Εγγραφείτε στο blog μου.