Avatar billede Slettet bruger
21. september 2005 - 10:48 Der er 26 kommentarer og
2 løsninger

Ulovlige bogstaver i tabeller såsom æ og ø og å

Hejsa

Jeg sidder med et website hvor jeg skal indsætte nogle data i en Navision Financials db. Det går fint bortset fra at der er findes en tabel der hedder: Sags-bogføringsgruppe og den vil min iis6 ikke tillade. Den returnere bare fejlen at tabellen ikke findes og jeg tror det er noget med sprog. Kan man ændre noget i IIS eller kan man asp sig ud af den?

Nogle der kan gennemskue fejlen...
Avatar billede soundgarden Nybegynder
21. september 2005 - 11:22 #1
Hvorfor ikke bare ændre navnet til:
Sags-bogføringsgruppe ?
Avatar billede Slettet bruger
21. september 2005 - 11:25 #2
Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Navision Software a/s][Navision Financials ODBC Driver]Column not found: Sags-bogføringsgruppe

line 52
Avatar billede polle007 Nybegynder
21. september 2005 - 12:47 #3
Prøv at sætte klammer rundt om navnet

[Sags-bogføringsgruppe]
Avatar billede soundgarden Nybegynder
21. september 2005 - 13:13 #4
hvad står der i linie 52? og hvor henter du data fra?
Avatar billede Slettet bruger
21. september 2005 - 13:14 #5
StrSql ="INSERT INTO Sag(Nummer,Beskrivelse, ""Beskrivelse 2"", ""Faktureres til kundenr."", Status, Ansvarlig,""Sags-bogføringsgruppe"",Navn,Adresse,""Adresse 2"",Attention,Amt,By_,""Postnr."", Startdato, Oprettelsesdato) values "
    StrSql = StrSql & "('"& Nummer &"','"& Beskrivelse &"','"& Beskrivelse2 &"','"& Fakturerestilkundenr &"','"& Status &"','"& Ansvarlig &"','"&Sagsbogforingsgruppe&"',"
    StrSql = StrSql & "'"&RecordSet("Navn")&"','"&RecordSet("Adresse")&"','"&RecordSet("Adresse 2")&"','"& Attention &"','"&RecordSet("Amt")&"','"&RecordSet("By_")&"','"&RecordSet("Postnr.")&"',"& Startdato &","& Oprettelsesdato &")"
Avatar billede Slettet bruger
21. september 2005 - 13:15 #6
polle007 -> No dice
Avatar billede soundgarden Nybegynder
21. september 2005 - 13:41 #7
Du skal ændre navnet alle steder - prøv det her

StrSql ="INSERT INTO Sag(Nummer,Beskrivelse, ""Beskrivelse 2"", ""Faktureres til kundenr."", Status, Ansvarlig,""Sags-bogføringsgruppe"",Navn,Adresse,""Adresse 2"",Attention,Amt,By_,""Postnr."", Startdato, Oprettelsesdato) values "
    StrSql = StrSql & "('"& Nummer &"','"& Beskrivelse &"','"& Beskrivelse2 &"','"& Fakturerestilkundenr &"','"& Status &"','"& Ansvarlig &"','"&Sagsbogforingsgruppe&"',"
    StrSql = StrSql & "'"&RecordSet("Navn")&"','"&RecordSet("Adresse")&"','"&RecordSet("Adresse 2")&"','"& Attention &"','"&RecordSet("Amt")&"','"&RecordSet("By_")&"','"&RecordSet("Postnr.")&"',"& Startdato &","& Oprettelsesdato &")"
Avatar billede soundgarden Nybegynder
21. september 2005 - 13:42 #8
prøv evt om det fungerer hvis du bruger o i stedet for ø - hvis det gør bør du kunne udskifte samtlige o'er med ø
Avatar billede Slettet bruger
21. september 2005 - 13:48 #9
nej det virker hverken med ø o eller ø

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Navision Software a/s][Navision Financials ODBC Driver]Column not found: Sags-bogføringsgruppe

line 52
Avatar billede soundgarden Nybegynder
21. september 2005 - 13:56 #10
hvis det ikke virker med o kan det jo ikke være ulovlig tegn!
Avatar billede soundgarden Nybegynder
21. september 2005 - 13:59 #11
prøv lige at send hele dokumentet
Avatar billede Slettet bruger
21. september 2005 - 14:09 #12
det kan næsten ikke være andet da den næste der fejler er søgebeskrivelse.


Her kommer hele scriptet:

-> Læg mærke til det er en funktion som eksekveres fra en anden kode

-> her defineres en del variabler men de er hæmlie

'ConnStr = "DRIVER=C/ODBC 32 bit; UID="&BrugerNavn&"; PWD="&Adgangskode&"; SERVER=N; CN="&RegnSkab&"; PPath="&ProgramSti&"; NType=tcp; SName="&ServerNavn&"; CSF=Yes; ML=1030; CD=No; BE=Yes; CC=Yes; RO=No; QTYesNo=Yes; IT=All Characters; OPT=Text;"

function NavDate(Dato)
  if Month(Dato) < 10 then
    mMonth = "0" & Month(Dato)
  else
    mMonth = Month(Dato)
  end if

  if Day(Dato) < 10 then
    dDay = "0" & Day(Dato)
  else
    dDay = Day(Dato)
  end if

  NavDate = "{d '" & Year(Dato) & "-" & mMonth & "-" & dDay & "'}"
end function

Function CreateNavJob(Nummer,Beskrivelse,Beskrivelse2,Fakturerestilkundenr,Status,Ansvarlig,Sagsbogforingsgruppe,Startdato,Oprettelsesdato)
  Set Conn1 = Server.CreateObject("ADODB.Connection")
  Conn1.Open ConnStr
  SQL = "select * from Debitor where Nummer='" & Fakturerestilkundenr & "'"
  Set RecordSet = Conn1.Execute(SQL)

  IF NOT RecordSet.EOF THEN
    Attention        = RecordSet("Attention")
    Startdato        = NavDate(Startdato)
    Oprettelsesdato    = NavDate(Oprettelsesdato)

    Set Conn2 = Server.CreateObject("ADODB.Connection")
    Conn2.Open ConnStr
    StrSql ="INSERT INTO Sag(Nummer,Beskrivelse, ""Beskrivelse 2"", ""Faktureres til kundenr."", Status, Ansvarlig,""Sags-bogforingsgruppe"",Navn,Adresse,""Adresse 2"",Attention,Amt,By_,""Postnr."", Startdato, Oprettelsesdato) values "
    StrSql = StrSql & "('"& Nummer &"','"& Beskrivelse &"','"& Beskrivelse2 &"','"& Fakturerestilkundenr &"','"& Status &"','"& Ansvarlig &"','"&Sagsbogforingsgruppe&"',"
    StrSql = StrSql & "'"&RecordSet("Navn")&"','"&RecordSet("Adresse")&"','"&RecordSet("Adresse 2")&"','"& Attention &"','"&RecordSet("Amt")&"','"&RecordSet("By_")&"','"&RecordSet("Postnr.")&"',"& Startdato &","& Oprettelsesdato &")"

    Conn2.Execute(StrSql)
    Conn2.close
    set Conn2 = Nothing

  END IF
  Conn1.close
  set Conn1 = Nothing
End Function
Avatar billede kjulius Novice
21. september 2005 - 23:21 #13
Det ser for mig ud til, at du bruger Server.HTMLEncode på filnavnet. Det går ikke, da tegn uden for ASCII alfabetet vil blive erstattet af en "kode", som f.eks. ø der bliver til &oslash;

Det er rigtigt, at alt der sendes til browseren, bør HTML encodes men altså ikke data du skal bruge til andet. Det er dog ikke i den kodestump du har vist, at det går galt.

Desuden undrer det mig, at driveren rapporterer, at den ikke kan finde kolonnen. Var det ikke tabellen, der hed Sags-bogføringsgruppe? Det skriver du i hvert fald i det indledende spørgsmål. Men du angiver i din INSERT INTO, at det er et felt der hedder Sags-bogføringsgruppe. Så hvad er rigtigt?
Avatar billede Slettet bruger
22. september 2005 - 08:14 #14
Sags-bogføringsgruppe er en tabel...hvad mener du med=

Det ser for mig ud til, at du bruger Server.HTMLEncode på filnavnet
Avatar billede Slettet bruger
22. september 2005 - 09:03 #15
Ja hallo pingvin...

Sags-bogføringsgruppe er et felt!!!!!!!

Rundstyk
Avatar billede kjulius Novice
22. september 2005 - 09:23 #16
Du er nødt til at skrive feltnavnet i din INSERT INTO nøjagtigt som det hedder i tabellen Sag. Alt andet vil give en fejl....
Avatar billede Slettet bruger
22. september 2005 - 09:26 #17
Ja det gør jeg også...I det ovenstående har jeg rettet scriptet til i forhold til de forslag jeg har fået...

Hvis jeg som kolonne navn bruger Sags-bogføringsgruppe som den rigtigt hedder får jeg fejlen du kan se herover...
Avatar billede kjulius Novice
22. september 2005 - 09:32 #18
Så er det bare ikke det det hedder (overfor SQL, mener jeg).

Prøv at lave en løkke, hvor du udskriver feltnavnene:

SELECT * FROM Sag WHERE Nummer <> Nummer

For x = 0 to rs.fields.count - 1
  response.write rs(x).name & "<BR>"
Next x

Se om SQL bruger de samme feltnavne som du tror...
Avatar billede soundgarden Nybegynder
22. september 2005 - 10:54 #19
Prøv lige at udskift disse linier

StrSql ="INSERT INTO Sag(Nummer,Beskrivelse, ""Beskrivelse 2"", ""Faktureres til kundenr."", Status, Ansvarlig,""Sagsbogforingsgruppe"",Navn,Adresse,""Adresse 2"",Attention,Amt,By_,""Postnr."", Startdato, Oprettelsesdato) values "
    StrSql = StrSql & "('"& Nummer &"','"& Beskrivelse &"','"& Beskrivelse2 &"','"& Fakturerestilkundenr &"','"& Status &"','"& Ansvarlig &"','"& Sagsbogforingsgruppe &"',)"
    StrSql = StrSql & "'"&RecordSet("Navn")&"','"&RecordSet("Adresse")&"','"&RecordSet("Adresse 2")&"','"& Attention &"','"&RecordSet("Amt")&"','"&RecordSet("By_")&"','"&RecordSet("Postnr.")&"',"& Startdato &","& Oprettelsesdato &")"
Avatar billede Slettet bruger
22. september 2005 - 11:07 #20
Set rs = Conn.execute("SELECT * FROM Sag WHERE Nummer <> Nummer")

For x = 0 to rs.fields.count - 1
  response.write rs(x).name & "<BR>"
Next

Expected end of statement

la.asp, line 23

Next x
Avatar billede Slettet bruger
22. september 2005 - 11:14 #21
her kommer resultatet:

Nummer
S¢gebeskrivelse
Beskrivelse
Beskrivelse 2
Faktureres til kundenr.
Oprettelsesdato
Startdato
Slutdato
Afsluttet den
Igangv.arb. bogf. d.
Resultatopg. bogf.d.
Færdigg¢relsespct.
Status
Ansvarlig
Afdelingskode
Projektkode
Sags-bogf¢ringsgruppe
Spærret
Resultatopg.bogf.
Rettet den
Udligningsmetode
Værdiansættelse
Billede
Nummerserie
Typefilter
Ressourcefilter
Datofilter
Hovedakt.filter
Underakt.filter
Delaktivitetsfilter
Ressourcegrp.filter
Bemærkning
Budgetteret kostbel¢b
Budg. salgsbel¢b
Forbrug (kostpris)
Forbrug (salgspris)
Faktureret salgspris
Budg. ressourceantal
Budg. ress.grp.antal
Navn
Adresse
Adresse 2
By_
Attention
Amt
Postnr.
Faktureret kostpris
Faktisk kostbel¢b
Avatar billede soundgarden Nybegynder
22. september 2005 - 11:26 #22
Projektkode
Sags-bogf¢ringsgruppe  << skal ændres
Spærret

Du skal jo ozz ændre dette navn til: Sagsbogforingsgruppe
Avatar billede Slettet bruger
22. september 2005 - 11:27 #23
Nu udskiftedet jeg så min sags-bogføringsgruppe til Sags-bogf¢ringsgruppe

og bingo.....

Tusind tak for hjælpen kjulius...
Avatar billede Slettet bruger
22. september 2005 - 11:27 #24
smid et svar
Avatar billede Slettet bruger
22. september 2005 - 11:29 #25
det sjove er at når jeg trækker kolonnerne ud vha en odbc så skrives det bogføringsgruppe....også i Navision selv...


men hvem kalder også sine kolonner noget med æøå??? :-)
Avatar billede soundgarden Nybegynder
22. september 2005 - 11:39 #26
svar
Avatar billede kjulius Novice
22. september 2005 - 12:49 #27
Det var så lidt...
Avatar billede kjulius Novice
22. september 2005 - 14:13 #28
Du kunne jo også prøve at sætte session lcid til dansk. Jeg ved ikke om det ville ændre noget på det feltnavne du modtager.

Session.LCID = 1030  ' Danish
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester