DJTank Geschrieben 8. September 2005 Teilen Geschrieben 8. September 2005 Hey Leute, ich habe grade ein Problem, welches sehr stark nach amerikanischem Zahlenformat riecht. Wir haben ein Access FE mit Access BE, welches nun nach Oracle migriert wurde. In einem bestimmten Feld in der DB steht der Wert 223720. Dieser stellt ein Gewicht in Gramm dar. Nun haben wir eine Ausgabe im FE, welche den Wert dieses Feldes durch 1000 dividiert, damit wir Kilogramm erhalten. Es ist eingestellt, dass 2 Nachkommastellen angezeigt werden. Nun sieht die Ausgabe folgendermaßen aus: Access-BE: 223,72 Oracle-BE: 22.372,00 Habe ich recht, dass in Oracle irgendwie ein Fremdformat eingestellt ist? Weil so sieht das für unsere Anwender ja aus, als hätte das Produkt 223Tausend Kilogramm Wenn ja, wo stelle ich das Format um? Dankeschön für eure Hilfe. lg Stefan Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 8. September 2005 Autor Teilen Geschrieben 8. September 2005 btw...das soll natürlich 23Tausend heißen... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
zirri Geschrieben 8. September 2005 Teilen Geschrieben 8. September 2005 hi, ich denke mal deine spalte gewicht hat den dtyp number; welche precision und scale ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 8. September 2005 Autor Teilen Geschrieben 8. September 2005 Jap, hat natürlich number. prec: 11 scale: 0 Würde auch passen, wird in Gramm eingegeben und ist eine Ganzzahl. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mme Geschrieben 8. September 2005 Teilen Geschrieben 8. September 2005 einstellen kannst du das an vielen stellen Welches betriebsystem auf dem Server welches auf dem client...? am windowsclient z.B. in der regestry: hkey_local_machine\software\oracle\.... dort und in den unterordnern nach nls_lang schauen Hier z.B. ein deutsches Datum- und zahlenformat und entsprechender Zeichensatz: GERMAN_GERMANY.WE8MSWIN1252 alternativ z.B.: AMERICAN_AMERICA.WE8IDO8859P1 Dies beeinflusst am Client natürlich nur aus/eingabe. Nun ist die Frage wo das Problem entsteht. Am client, oder beim Import auf dem Server... Den gleichen Regestryeintrag kannst du auch auf dem Server machen (wenn windows) und dann schau die mal die DB-Parameter an. In SQLPLUS eingeben: show parameter nls Dann schauen wir mal weiter... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 8. September 2005 Autor Teilen Geschrieben 8. September 2005 Danke schonmal für den Hinweis Ich habe die Registry-Settings nun auf meinem Testserver- bzw. Client überprüft und sehe nur Einträge, welche auf "Deutsch" stehen. Wenn ich jedoch die Parameter via SQLPLUS überprüfe bekomme ich folgendes Ergebnis: SQL> show parameter nls NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ nls_calendar string nls_comp string nls_currency string nls_date_format string nls_date_language string nls_dual_currency string nls_iso_currency string nls_language string AMERICAN nls_length_semantics string BYTE nls_nchar_conv_excp string FALSE nls_numeric_characters string NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ nls_sort string nls_territory string AMERICA nls_time_format string nls_timestamp_format string nls_timestamp_tz_format string nls_time_tz_format string Hmmm...wie stelle ich das jetzt wirklich auf Deutsch? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mme Geschrieben 8. September 2005 Teilen Geschrieben 8. September 2005 meiner Meinung zwei Möglichkeiten. Wenn die in der Applikation statements absetzten kannst, könntest du z.B direkt nach dem Connect folgendes einbauen: alter session set nls_language = GERMAN; alter session set nls_territory = GERMANY; Wenn nicht (oder auch sonst) kannst du dies auch grundsätzlich im Parameterfile der Datenbank umstellen. D.h. du musst diese einträge in das Parameterfile machen. Wie du das machst hängt davon ab ob du ein spfile hast oder ein pfile. Danach Datenbank durchstarten. nls_language = GERMAN nls_territory = GERMANY Welche Version hast du? Ich habe irgendwas im hinterkopf das man dies in früheren Versionen noch nicht konnte... Aber versuch es einfach, er wird dir dann ein Fehlermeldung geben wenns nicht geht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 8. September 2005 Autor Teilen Geschrieben 8. September 2005 Ich habe in der Testumgebung 9i (9.2). Jetzt hab ich mal zum Testen die Sache mit "alter session" ausprobier, aber das bringt in meiner Anwendung leider gar keinen Effekt...Möglicherweise war der Ansatz von mir völlig falsch, was meinst? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mme Geschrieben 9. September 2005 Teilen Geschrieben 9. September 2005 völlig falsch würde ich nicht sagen, aber vielleicht sollten wir erstnochmal versuchen herauszubekommen wo das Problem entsteht.... Frag mal mit Sqlplus ab was in der Tabelle in Oracle drinsteht. Nur um zu wissen ob das Problem bei der Datenübernahme von Access entstanden ist, oder bei der Ausgabe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 9. September 2005 Autor Teilen Geschrieben 9. September 2005 Das Problem entsteht bei der Ausgabe. Die Daten wurden völlig korrekt übernommen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mme Geschrieben 9. September 2005 Teilen Geschrieben 9. September 2005 wie greift den das FE auf das Oracle-BE zu? Per ODBC und verknüpften tabellen? Wenn ja, was steht denn dann in Access in der Verknüpften Tabelle drin? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 9. September 2005 Autor Teilen Geschrieben 9. September 2005 Genau richtig, der Zugriff erfolgt über verknüpfte Tabellen via ODBC. Die Daten sind korrekt, auch wenn ich die Tabellen in Access anzeigen lasse. Da fällt mir noch was ein...grade so nebenbei...ich habe auch das Problem, dass unsere Anwendung in manchen Tabellen keine Insert und Updates machen kann. Wenn ich diese jedoch direkt im Oracle einfüge oder update, dann gehts ohne Probleme. Datenbanken sind oft schon zum Verzweifeln Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
schlati Geschrieben 9. September 2005 Teilen Geschrieben 9. September 2005 Da fällt mir noch was ein...grade so nebenbei...ich habe auch das Problem, dass unsere Anwendung in manchen Tabellen keine Insert und Updates machen kann. Wenn ich diese jedoch direkt im Oracle einfüge oder update, dann gehts ohne Probleme. Datenbanken sind oft schon zum Verzweifeln Naja, das kann viele Ursachen haben. Es kann ja durchaus sein, dass auf bestimmten Tabellen keine entsprechenden Rechte gelegt sind, um dort Daten einzufügen oder aktualisieren. Außerdem gibt's dann ja noch hin und wieder mal Probleme damit, wenn verschiedene Tabellen untereinander verknüpft sind und diese dann voneinander abhängen...wie versucht eure Anwendung denn Daten in die DB einzuspeisen? Direktzugriff auf die Oracle-DB? Oder indirekt noch über Access? ODBC? Ich nehme an, dass die Access-DB kurzfristig aufgelöst werden soll? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 12. September 2005 Autor Teilen Geschrieben 12. September 2005 Der Zugriff erfolgt immer in Access über verknüpfte ODBC-Tabellen, wie du es angenommen hast. Weiters hast du auch damit recht, dass die Access-DB kurzfristig aufgelöst werde soll (das BE) -> wird ja auf Oracle umgestellt und die Zeit drängt. Wir haben es fast geschafft bis auf 2-3 "dubiose" Sachen, u.a. diese zwei Probleme, die ich in diesem Thread angesprochen habe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 12. September 2005 Autor Teilen Geschrieben 12. September 2005 Das Problem mit dem Zahlenformat hat sich erledigt (war ein Fehler, den der damalige Entwickler in einer Kalkulation eingebaut hat ). Hoffentlich finden wir auch noch eine Lösung für das Insert/Update-Problem. Danke vielmals für die große Hilfe Stefan Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DJTank Geschrieben 19. September 2005 Autor Teilen Geschrieben 19. September 2005 Sooooooooooooo...das Problem mit den Inserts/Updates war mal wieder ein "Key-Problem". In Oracle waren alle Primary-Key vorhanden, jedoch übernahm Access diese nicht ordentlich, logischerweise konnte ich nun nichts anfügen bzw. editieren. Nun haben wir jedoch den Karren aus dem Dreck gezogen Vielen Dank für den oftmaligen Support Leute. lg Stefan Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.