Asp->Append Recordset σε TextFile

Πληροφορίες σχετικές με την ASP, ASP.NET και με τις εφαρμογές που είναι γραμμένες με αυτήν.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
thetrooper7
Δημοσιεύσεις: 3
Εγγραφή: 02 Απρ 2009 16:49

Asp->Append Recordset σε TextFile

Δημοσίευση από thetrooper7 » 02 Απρ 2009 17:56

Καλησπέρα σε όλους. Προσπαθώ να κάνω append τα πεδία ενός recordset σε ένα TextFile όμως μου βγάζει αυτό το error

Microsoft VBScript runtime error '800a0005'
Invalid procedure call or argument


Ο κώδικας είναι ο εξής:

...
query="Select * from myTable"
myRs.open query, myAdo
dim fs,fname
set fs=Server.CreateObject("Scripting.FileSystemObject")
set fname=fs.CreateTextFile(server.mapPath("/files/test.txt"),true)
do while not rs.EOF
fname.WriteLine (myRs("myFieldA")) <---σε αυτή τη γραμμή εμφανίζει το error
myRs.MoveNext
Loop
...


Το αρχείο δημιουργείτε κανονικά,αν αντί για το πεδίο του Recordset βάλω ένα string η μια μεταβλητή, την γράφει κανονικά.Αν αναθέσω το myRs("myFieldA") σε μια μεταβλητή και περάσω αυτή, πάλι χτυπάει error.Τοπικά παίζει μια χαρά, οταν το ανεβαζω στο net οχι...

Καμιά ιδέα?

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Asp->Append Recordset σε TextFile

Δημοσίευση από dva_dev » 02 Απρ 2009 21:09

Τσεκάρισε
1) ότι μπορεί να γράψει στο αρχείο κάποιο standard string (πχ. fname.WriteLine ("test_string") )
2) ότι υπάρχει το πεδίο myFieldA στην db του server
3) ότι μπορεί ο χρήστης να κάνει connect στην db
4) ότι δεν έχει κόψει κάποιος δικαιώματα read στο mytable

thetrooper7
Δημοσιεύσεις: 3
Εγγραφή: 02 Απρ 2009 16:49

Asp->Append Recordset σε TextFile

Δημοσίευση από thetrooper7 » 03 Απρ 2009 11:10

1) ότι μπορεί να γράψει στο αρχείο κάποιο standard string (πχ. fname.WriteLine ("test_string") )

Όπως είπα στη τελευταία γραμμή, αν αντί για το πεδίο του Recordset βάλω ένα string ή μια μεταβλητή, την γράφει κανονικά.Όποτε πάμε στο επόμενο

2) ότι υπάρχει το πεδίο myFieldA στην db του server

Υπάρχει αυτο το πεδίο γιατί μπορώ να το εκτυπώσω στην οθόνη με Response.write(myRs(myFieldA))

3) ότι μπορεί ο χρήστης να κάνει connect στην db

Αν δε μπορούσε να κάνει connect, θα έσκαγε το ερώτημα οταν το εκτελούσα :)


4) ότι δεν έχει κόψει κάποιος δικαιώματα read στο mytable

Τα δικαιώματα είναι όλα οκ, ( σύμφωνα και με αυτό που λέω στο 2) )


Το θέμα είναι καθαρά οτι για κάποιο λόγο η συνάρτηση αυτή φαίνεται να μη μπορεί να γράψει στο αρχείο το πεδίο του recordset, όλα τα άλλα τα έχω ψάξει ( πιστεύω :D )

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Asp->Append Recordset σε TextFile

Δημοσίευση από dva_dev » 03 Απρ 2009 20:21

Το myFieldA τι τύπου πεδίο είναι;

[edit]Το πρόβλημα στο βγάζει μόνο για το myfieldA ή για οποιοδήποτε πεδίο και αν βάλεις;[/edit]

thetrooper7
Δημοσιεύσεις: 3
Εγγραφή: 02 Απρ 2009 16:49

Asp->Append Recordset σε TextFile

Δημοσίευση από thetrooper7 » 06 Απρ 2009 17:26

Τη βρήκα τη λύση τελικά.. Είναι κάτι χαζό :)

Την αναφέρω σε περίπτωση που κάποιος αντιμετωπίσει το ίδιο πρόβλημα.

set fname=fs.CreateTextFile(server.mapPath("/files/test.txt"),true)

Η μέθοδος CreateTextFile παίρνει 3 ορίσματα, το τρίτο ειναι optional.
Το πρώτο είναι το filename, το δεύτερο ειναι αν θα κάνει overwrite σε περίπτωση που τπάρχει ήδη το αρχείο ( true/false ) και το τρίτο ορίζει το encoding αν θα είναι ASCII ή Unicode(True για Unicode, false ή δεν το ορίζουμε καν για ASCII).Επειδή το string που ήθελα να γράψω ήταν στα ελληνικά, για αυτό έσκαγε.Δεν όριζα το 3ο όρισμα :-?

http://www.csidata.com/custserv/onlineh ... vbs279.htm <---Εδώ το βρήκα

Ευχαριστώ για την ανταπόκριση :)

Απάντηση

Επιστροφή στο “ASP, ASP.NET”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες