Statistik-Objekte verhindern NAV-FOB-Import

20. November 2012 12:55

Hallo zusammen,

bei einem meiner Kunden stolpere ich beim Import einer NAV-FOB-Datei in das Echtsystem des öfteren mal über das Problem, dass die Tabelle xyz nicht geändert werden kann, weil sie eine Abhängigkeit zum/vom (?) Statistikobjekt xyz enthält.

Nun meine Fragen als absoluter SQL-Laie:
  • Woher kommen die Statistik-Objekte?
    (Wer legt die wann und wozu an?)
  • Kann ich die (störenden) Statistik-Objekte bedenkenlos löschen (DROP STATISTICS)?
    -> Welche negativen Auswirkungen könnte dies haben?
  • Gibt es eine einfachere/schnellere/kürzere Methode, die Statistik-Objekte zu löschen, anstatt einen DROP STATISTICS für jedes einzelne Statistik-Objekt abzusetzen?
    Z. B. hat die Sales Line mehrere Statistik-Objekte auf verschiedene Felder, und in der Datenbank gibt es z. Zt. 12 Mandanten
    Schön wäre es, wenn man alle Statistik-Objekte auf alle "Sales Line"-Tabellen (also für alle Mandanten in der DB) mit einem DROP STATISTICS-Befehl löschen könnte.
    Quasi sowas wie DROP STATISTICS [db0].[*$Sales Line].[*]
  • Gibt es eine Alternative zum Löschen, so dass die FOB-Datei importiert werden kann?

Ich bin für jeden Ratschlag, Tipp und Hinweis dankbar.

P. S.:
Es handelt sich um eine NAV 5.0 SP1 Datenbank mit RunTime 2009 R2 und Object Manager 8.50 auf einem SQL Server 2012.
Zur Zeit habe ich die einzelnen DROP-Befehle im OMA-Action Worksheet als SQL Queries hinterlegt; pro Tabelle und Feld eine eigene Zeile (welche für alle Mandanten das Statistik-Objekt löscht).

Re: Statistik-Objekte verhindern NAV-FOB-Import

20. November 2012 13:07

Wie ist denn die Einstellung zur Erzeugung von Statistiken auf dem SQL Server?
Es gibt da zwei Optionen, einmal automatische Statistiken und dann nochmal ob asynchron geupdated wird.

Kenne es bei diversen Installationen, dass statistic updates in einem daily job gescheduled sind statt automatisch erzeugt.

Re: Statistik-Objekte verhindern NAV-FOB-Import

20. November 2012 13:20

JanGD hat geschrieben:Wie ist denn die Einstellung zur Erzeugung von Statistiken auf dem SQL Server?

Kann ich dir leider nicht sagen, da ich keinen Zugriff auf das Management Studio habe.
Ist das von Relevanz, wie die Statistik-Objekte erzeugt werden?

Re: Statistik-Objekte verhindern NAV-FOB-Import

20. November 2012 13:57

1. Könnte der OMA SQL- Trigger die Ursache sein, der die Veränderung von Objekten aufzeichnet?
2. hat evtl. doch jemand eine Referenz auf dein Objekt gelegt (vermute mal BI oder so) ?

Gruß, Fiddi

Re: Statistik-Objekte verhindern NAV-FOB-Import

20. November 2012 14:04

Wichtig! OMA 8.50 hat wohl einen Bug mit Import und/oder SQL Trigger. Meine aktuelle Version ist 8.52!

Re: Statistik-Objekte verhindern NAV-FOB-Import

20. November 2012 14:16

fiddi hat geschrieben:1. Könnte der OMA SQL- Trigger die Ursache sein, der die Veränderung von Objekten aufzeichnet?
OMA installiert ja nur einen Trigger auf die Tabelle "Object".
Würde der SQL Server nun Statistik-Objekte auf der Tabelle Object anmeckern, dann wäre das auch meine Vermutung, jedoch wird diese Tabelle nie bemängelt, sondern immer Tabellen wie "Sales Line" u. ä.

fiddi hat geschrieben:2. hat evtl. doch jemand eine Referenz auf dein Objekt gelegt (vermute mal BI oder so) ?
Es gibt zwar ein BI-Tool (Corporate Planner), jedoch entzieht es sich meiner Kenntnis, wie und wo es auf Tabellen zugreift.

Ach ja: Stryk's Performance-Toolbox ist ebenfalls auf der Produktiv-Datenbank installiert.
Legt die PTB selbständig Statistik-Objekte an, ohne dass ein Anwender die PTB-Konfiguration ändert?

Ich frage deshalb, weil zwischen zwei Performance-Analysen mittels PTB plötzlich weitere Statistik-Objekte auftauchten, welche es beim vorherigen Objektimport noch nicht gab.
Reihenfolge also:
1. Analyse mit der PTB
2. Import einer FOB: Statistiken waren vorhanden und wurden gedroppt
3. Import einer FOB: Zusätzliche Statistiken waren vorhanden
4. Erneute Analyse mittels PTB
Zwischen 1. und 4. lagen ein paar Monate, zwischen 2. und 3. nur wenige Wochen.


JanGD hat geschrieben:Wichtig! OMA 8.50 hat wohl einen Bug mit Import und/oder SQL Trigger. Meine aktuelle Version ist 8.52!
Ich korrigiere: Es wird OMA8.51 verwendet.
Zur Zeit werden die Objekte jedoch noch klassisch per FOB in die Produktivdatenbank importiert, nicht mittels OMA-Transport bzw. einem anderen OMA-Format.

Re: Statistik-Objekte verhindern NAV-FOB-Import

20. November 2012 17:30

Über einen Cursor könntest du schon die Statistiken für alle Mandanten löschen.

Und ja, kann man bedenkenlos über den Jordan schicken. Wir haben auch hin und wieder diese Statistik-Objekte im System und wir hatten auch mal die Performance Toolbox im Einsatz.