27. Februar 2007 07:30
27. Februar 2007 09:32
27. Februar 2007 12:11
27. Februar 2007 12:30
27. Februar 2007 12:49
Kowa hat geschrieben:Wichtig
Bei jedem DELETEALL prüfen , dass es tatsächlich um eine Recordvariable mit TEMPORARY - Property handelt. Diese Eigenschaft ist leider viel zu versteckt ( müsste eigentlich in der Übersicht mit erscheinen) und führt gelegentlich zu ungewollten Löschungen der Inhalte von Tabellen, die dann das ganze System lahmlegen können.
27. Februar 2007 14:06
27. Februar 2007 14:53
Alez hat geschrieben:Ich weiß von unserem NSC, dass einige echte Tabellen angelegt wurden um diese bei Bedarf zu füllen. Das hat natürlich den Nachteil, dass diese Tabellen lizenziert werden müssen.
Allerdings gibt es auch bei Globalen Variablen vom Typ Record eine Eigenschaft die sich Temporary nennt.
Ich bin da ein bißchen vorsichtig, weil mit DeleteAll würde ich ja alle Datensätze löschen und da ist es mir zu gefährlich, das zu testen, wenn dann auch die nicht-temporären DS weg sind
27. Februar 2007 15:05
27. Februar 2007 15:06
27. Februar 2007 15:52
27. Februar 2007 17:10
27. Februar 2007 17:14
Alez hat geschrieben:Das würde zum Beispiel bedeuten, dass ich alle DS aus der echten Tabelle einlesen und für diesen Report beliebig verändern kann, ohne dass es Auswirkungen auf die Stammdaten hat.
Ist das richtig so?
27. Februar 2007 22:19
Natalie hat geschrieben:Alez hat geschrieben:Das würde zum Beispiel bedeuten, dass ich alle DS aus der echten Tabelle einlesen und für diesen Report beliebig verändern kann, ohne dass es Auswirkungen auf die Stammdaten hat.
Ist das richtig so?
Ja!
28. Februar 2007 08:33
Alez hat geschrieben:Was ich meinte, ist, dass unsere NSC Tabellen angelegt hat, die z.B. ein "temp." oder auch "temp 2" im Namen haben, und somit deutlich als temporäre Tabellen deklariert sind.
Timo hat geschrieben:Vorsicht! Der Trigger-Code greift weiterhin auf die physikalischen Tabellen zu, also solltest du genau wissen, was in den OnValidate, OnModify, OnInsert, ... passiert, sonst könntest du ein riesiges Problem bekommen.
28. Februar 2007 09:24
Temp.RESET;
Temp.DELETEALL;
Temp := Beispielrec;
Temp.INSERT;
28. Februar 2007 10:42
Alez hat geschrieben:[...]
Was ich meinte, ist, dass unsere NSC Tabellen angelegt hat, die z.B. ein "temp." oder auch "temp 2" im Namen haben, und somit deutlich als temporäre Tabellen deklariert sind.
[...]
28. Februar 2007 11:12
Timo hat geschrieben:Diese Unart macht dann besonders freude, wenn diese Backup-Objekte auch noch im vom Kunden lizenzierten Bereich liegen und somit echtes Geld kosten, obwohl sie nicht genutzt werden.
Da darf man sich dann stundenlang mit dem NDT beschäftigen und für jedes Objekt einzeln recherchieren, ob es nicht doch irgendwo noch referenziert wird.
// 001 xyz +++
...Hier irgendwelcher Code
// 001 xyz ---
5. März 2007 10:45
Timo Lässer hat geschrieben:Da würde ich mich nicht 100%ig drauf verlassen, dass diese Tabellen wirklich für die temporäre Nutzung gedacht sind, denn ich erlebe es häufig, dass Programmierer eine (Sicherungs-)Kopie des Objektes mit "Objektname Temp", "Objektname Backup" oder dergleichen anlegen und später vergessen, es zu löschen.[...]
IF Einheit = 'Meter' THEN
Item."Base Unit of Measure" := 'Meter'
ELSE
Item."Base Unit of Measure" := 'Stück';
5. März 2007 11:37
5. März 2007 12:04
Alez hat geschrieben:Leider kann ich nicht in alle rein schauen um zu prüfen wie die aufgebaut sind und leider sind die auch nicht alle nach den Namenskonventionen, aber jetzt weiß ich zumindest wofür die sind.