[Gelöst] Metadaten von Tabelle ungültig

6. Februar 2015 14:52

Hallo zusammen,

kurz vorweg.
Es wurde ein Update von 2009 auf 2013 akt. Build durchgeführt.
Den RTC kann ich auch Starten und es werden mir auch Daten angezeigt.

Wenn ich mir dann aus der Liste der "Geb. Lieferungen" die Daten der Lieferung in der Karte anzeigen lassen möchte erhalte ich folgende Fehlermeldung.

"Die Metadaten von Tabelle '111' sind ungültig. Weitere Details finden Si ein der Ereignisanzeige"

Ereignisanzeige:

Protokollname: Application
Quelle: MicrosoftDynamicsNAVServer
Datum: 06.02.2015 13:33:53
Ereignis-ID: 0
Aufgabenkategorie:Keine
Ebene: Fehler
Schlüsselwörter:Klassisch
Benutzer: Nicht zutreffend
Computer: SERVER03.Server.local
Beschreibung:
Server instance: Neu
Session type: RoleTailoredClient
Session ID: 1
User: Domain\Administrator
Type: System.Xml.XmlException
LineNumber: 247
LinePosition: 47
Message: '', hexidezimaler Wert 0x13, ist ein ungültiges Zeichen. Zeile 247, Position 47.
StackTrace:
bei System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
bei System.Xml.XmlTextReaderImpl.ParseAttributeValueSlow(Int32 curPos, Char quoteChar, NodeData attr)
bei System.Xml.XmlTextReaderImpl.ParseAttributes()
bei System.Xml.XmlTextReaderImpl.ParseElement()
bei System.Xml.XmlTextReaderImpl.ParseElementContent()
bei System.Xml.XmlLoader.LoadNode(Boolean skipOverWhitespace)
bei System.Xml.XmlLoader.LoadDocSequence(XmlDocument parentDoc)
bei System.Xml.XmlDocument.Load(XmlReader reader)
bei System.Xml.XmlDocument.LoadXml(String xml)
bei Microsoft.Dynamics.Nav.Service.Metadata.MetadataProvider.<>c__DisplayClass7.<GetTableMetadataWithExtensions>b__6()
Source: System.Xml
HResult: -2146232000

Ereignis-XML:
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System><Provider Name='MicrosoftDynamicsNAVServer'/><EventID Qualifiers='0'>0</EventID><Level>2</Level><Task>0</Task><Keywords>0x80000000000000</Keywords><TimeCreated SystemTime='2015-02-06T12:33:53.000000000Z'/><EventRecordID>55810</EventRecordID><Channel>Application</Channel><Computer>SERVER03.Server.local</Computer><Security/></System><EventData><Data>Server instance: Neu
Session type: RoleTailoredClient
Session ID: 1
User: DOMAIN\Administrator
Type: System.Xml.XmlException
LineNumber: 247
LinePosition: 47
Message: '', hexidezimaler Wert 0x13, ist ein ungültiges Zeichen. Zeile 247, Position 47.
StackTrace:
bei System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
bei System.Xml.XmlTextReaderImpl.ParseAttributeValueSlow(Int32 curPos, Char quoteChar, NodeData attr)
bei System.Xml.XmlTextReaderImpl.ParseAttributes()
bei System.Xml.XmlTextReaderImpl.ParseElement()
bei System.Xml.XmlTextReaderImpl.ParseElementContent()
bei System.Xml.XmlLoader.LoadNode(Boolean skipOverWhitespace)
bei System.Xml.XmlLoader.LoadDocSequence(XmlDocument parentDoc)
bei System.Xml.XmlDocument.Load(XmlReader reader)
bei System.Xml.XmlDocument.LoadXml(String xml)
bei Microsoft.Dynamics.Nav.Service.Metadata.MetadataProvider.&lt;&gt;c__DisplayClass7.&lt;GetTableMetadataWithExtensions&gt;b__6()
Source: System.Xml
HResult: -2146232000
</Data></EventData></Event>

Wo hakt es denn, sehe den Berühmten Wald vor lauter Bäumen gerade nicht. :oops:

Freue mich über ein paar Gute Tipps!

Vielen Dank
Zuletzt geändert von HM am 6. Februar 2015 15:58, insgesamt 1-mal geändert.

Re: Metadaten von Tabelle ungültig

6. Februar 2015 15:16

Geraten:

Message: '', hexidezimaler Wert 0x13, ist ein ungültiges Zeichen. Zeile 247, Position 47.

Gibt es in der Tabelle 111 irgendwo ein Feld mit einem Steuerzeichen in der Tabellendefinition?

Die konkrete Position (Zeile 247, Pos. 47) orientiert sich am C#-Quelltext. Diesen kannst du dir zum Vergleich hiermit anzeigen lassen (ich weiß allerdings nicht, ob der noch in NAV 2013 X funktioniert):

Code:
WITH ObjectMetadata DO BEGIN   
  RESET;
  IF FIND('-') THEN
    REPEAT
      CALCFIELDS(Metadata,"User Code");
      fileName := 'C:\TEMP\Metadata\' + FORMAT("Object Type") + FORMAT("Object ID") + '.cs';
      IF Metadata.HASVALUE THEN
        Metadata.EXPORT(fileName);
      fileName := 'C:\TEMP\Metadata\' + FORMAT("Object Type") + FORMAT("Object ID") + 'UserCode.cs';
      IF "User Code".HASVALUE THEN
        "User Code".EXPORT(fileName);     
     UNTIL NEXT = 0;
END;

Re: Metadaten von Tabelle ungültig

6. Februar 2015 15:57

Hallo Natalie,

BINGO da waren ein paar Sonderzeichen drin, wie die da rein kamen??? :shock:

Vielen Dank das war sehr Hilfreich!

Schönen Gruß