NAV2017 float Feld?

Moin Moin,

ich häng aktuell bei bei der Erstellen einer Schnittstellentabelle und Verknüpfung einer Externen Tabelle (.dbo) fest...

Mein Problem ist, dass ich zwar die float Felder in der Externen Datenbank mit den NAV Datentyp BLOB in einer Page anzeigen lassen kann. Aber bei einem erstellen eines neuen Datensatzes bekomme ich den Fehler:
i9853q528k91.png
Wenn ich dann einfach aktualisiere Crasht der Client :D

So wie ich das verstehe müsste hier eigentlich ein Binary Feld sein, welches aber 2009 von BLOB abgelöst wurde, was hier als Varbinary interpretiert wird.

Kurz um die Frage: Was wäre hier der passende äquivalent zum float Feld? Ich hatte anfänglich Decimal gedacht, bekomm aber eine Freundliche Fehlermeldung:
tru40wqcysos.png


Hilfe? :D

Best Answer

  • vaprogvaprog Member Posts: 1,116
    Answer ✓
    Ich denke, wenn du auf externe Tabellen zugreifen sollst, die mit NAV inkompatible Datentypen haben, dann solltest du diese Felder, wenn du nur lesen musst, und auf diese Felder verzichten kannst, gar nicht erst in die Tabellendefinition in NAV mit einschließen. Falls du sie lesen, oder gar schreiben musst, solltest du auf Linked Table oder gar ExternalSQL verzichten und stattdessen ADO oder ähnlich verwenden um über Programmierung darauf zuzugreifen. Nur lesend hilft womöglich auch eine View.

Answers

  • vaprogvaprog Member Posts: 1,116
    Answer ✓
    Ich denke, wenn du auf externe Tabellen zugreifen sollst, die mit NAV inkompatible Datentypen haben, dann solltest du diese Felder, wenn du nur lesen musst, und auf diese Felder verzichten kannst, gar nicht erst in die Tabellendefinition in NAV mit einschließen. Falls du sie lesen, oder gar schreiben musst, solltest du auf Linked Table oder gar ExternalSQL verzichten und stattdessen ADO oder ähnlich verwenden um über Programmierung darauf zuzugreifen. Nur lesend hilft womöglich auch eine View.
  • rFriesrFries Member Posts: 5
    vaprog wrote: »
    Ich denke, wenn du auf externe Tabellen zugreifen sollst, die mit NAV inkompatible Datentypen haben, dann solltest du diese Felder, wenn du nur lesen musst, und auf diese Felder verzichten kannst, gar nicht erst in die Tabellendefinition in NAV mit einschließen. Falls du sie lesen, oder gar schreiben musst, solltest du auf Linked Table oder gar ExternalSQL verzichten und stattdessen ADO oder ähnlich verwenden um über Programmierung darauf zuzugreifen. Nur lesend hilft womöglich auch eine View.

    Okay danke erstmal dafür, ich hab auch versucht diesen weg zu gehen. Da gibt es nur eine Sache, die ich bei dem danke nicht verstehe und die scheint ziemlich basic zu sein. Wo wird die Programmiert? Wir die direkt in der Datenbank(bzw. Außerhalb der Entwicklerumgebung) geschrieben oder doch in einem Objekt?

    Gibt es Nachschlagewerk, dass mich bilden kann? :smile:

  • vaprogvaprog Member Posts: 1,116
    rFries wrote: »
    Da gibt es nur eine Sache, die ich bei dem danke nicht verstehe und die scheint ziemlich basic zu sein. Wo wird die Programmiert? Wir die direkt in der Datenbank(bzw. Außerhalb der Entwicklerumgebung) geschrieben oder doch in einem Objekt?

    Ich bin nicht sicher was du hier meinst. Du erstellst ein Table Objekt in NAV mit den entsprechenden Feldern und Properties. Da du sowohl mit LinkedObject=Yes als auch mit TableType=ExternalSQL NAV mitteilst, dass die SQL-Tabelle nicht zu NAV gehört, muss diese Tabelle (oder View) auch extern erstellt werden. NAV modifiziert dieses SQL-Objekt nicht. Für LinkedObject muss das Objekt in der selben Datenbank sein. Das ist meines Wissens der primäre Grund dafür, dass man hier üblicherweise eine View erstellt, die dann Daten aus einer anderen Datenbank holen kann. Mit ExternalSQL ist man in dieser Hinsicht flexibler und kann direkt auf eine andere Datenbank, selbst auf einem anderen Server verlinken. Solche Dinge sind aber nicht so einfach einzurichten, weil allerlei Anforderungen durch die Sicherheitsmechanismen (SQL Zugriffsrechte) entstehen.
    rFries wrote: »
    Gibt es Nachschlagewerk, dass mich bilden kann? :smile:
    Ja, sicher: Das Internet! :*
    Nein, im Ernst, diese Dinge werden erst einmal in der Doku von Microsoft ganz ordentlich beschrieben.
    Gelegentlich ist allerdings irgendein Blog Post einfacher, erst einmal etwas funktionierendes zu erstellen. Alle Details findet man dann wieder leichter direkt bei Microsoft.

    Konkret hierzu:
    Using Linked Objects
    External Tables
    (Jeweils das erste Resultat von Google, bei meinen Suchparametern)

  • rFriesrFries Member Posts: 5
    Okay ich bin bei dem Thema weit vorangeschritten. Hier hat mir absolutes Basis wissen gefehlt, welches ich in keinem Forum oder anderen Dokumentationswebsites gefunden habe.

    Was mir gefehlt hat wir die bloße Verbindung zwischen zwei SQL Servern, damit ich von dem Einen eine Abfrage auf dem Anderen machen kann und dann je nachdem reagieren kann. Das man die unter "Verbindungsserver" auf beiden Servern hierlegen muss wollte mir keiner Erklären :D

    Jetzt geht es nur noch an das rohe SQL Skript
Sign In or Register to comment.