Antwort schreiben...
 
Themen-Optionen Thema durchsuchen
Alt 23.11.2007, 16:40   #1
waldbauer.com
Entwickler
Nach Abfrage mit Formel eine Zufallszahl einfügen

Ich mache eine Abfrage und erhalte eine Ergebnisliste.

Ein Feld hat keinen Wert und nun soll der Wert eines jeden Feldes nach einem Zufallsprinzip mit einer 8 - stelligen Zufallszahl gefüllt werden; aber jeder Datensatz mit einer Anderen natürlich.
waldbauer.com ist offline   Mit Zitat antworten
Alt 24.11.2007, 10:43   #2
Schuffenhauer
Registrierter Benutzer
Geht glaube ich nur mit einem Programm

Soll diese Zufallszahl einmalig sein oder nach und nach
immer neue zufällige, aber noch nicht vorhandene Nummern in die Felder
einfügen?
Und sollen diese dann in dem Feld der Datensätze der Ergebnisliste
gespeichert werden?

Oder ist das ein einmaliger Vorgang und dann erledigt
Schuffenhauer ist offline   Mit Zitat antworten
Alt 24.11.2007, 11:51   #3
waldbauer.com
Entwickler
Es sollen zufällige 8-stellige Zahlen sein, müssen auch nicht einmalig in der Tabelle stehen (kein UNIQUE Feld), aber es sollen die Datensätze natürlich aktualisiert werden.
waldbauer.com ist offline   Mit Zitat antworten
Alt 24.11.2007, 18:20   #4
Heinz_Richartz
Registrierter Benutzer
Verstehe ich das richtig - es soll eine 8-stellige zufällige Zahl eingetragen werden, welche bei Aktualisierung des Datensatzes (Neu/Änderung) neu berechnet wird? Demnach soll es möglichst in der Schirmmaske geschehen. Da es m.W. keine OSA-Routine dafür gibt, wird es nur über Umwege zu relalisieren sein. Spontan fallen mir Datum und Uhrzeit ein. Das ist aber nicht wirklich zufällig. In der Programmier-Umgebung gibt es die Funktion RANDOM. Die lässt sich dafür nutzen.

Heinz
Heinz_Richartz ist offline   Mit Zitat antworten
Alt 24.11.2007, 19:10   #5
waldbauer.com
Entwickler
Ja genau, ich will quasi relativ schnell ohne Umwege über den Programmierer mehrere tausend Datensätze updaten und in einem Feld eines jeden eine zufällige 8 stellige Zahl einfügen.
waldbauer.com ist offline   Mit Zitat antworten
Alt 26.11.2007, 21:34   #6
Heinz_Richartz
Registrierter Benutzer
Ich habe da mal ein wenig herumexperimentiert und natürlich auch nachgedacht. Leider ist dabei nicht viel brauchbares herausgekommen. Mit einer Formel ist das wohl schwer zu machen. Mein Ansatz mit Datum und Uhrzeit bringt es auch nicht. Das Umrechnen in eine Zahl ist halt nicht wirklich zufällig.

Warum willst Du das nicht mit dem Programmierer machen? Das Programm dafür wäre ja ziemlich einfach. Du musst doch nur die 'leeren' Datensätze laden und dann in einer Schleife die Zufallszahl einstellen. Fertig. Das kannst Du über die Start-Batch sogar via Makro automatisch beim Start oder Beenden von OA ausführen. Der Anwender muss das ja nicht merken.

Ansonsten fällt mir da nur ein Umweg ein. Aus irgendwelchen Textfeldern Deiner Datenbank nimmst Du jeweils den ASCII-Code des ersten Zeichens (dafür gibt es eine OSA-Routine) und setzt diese mit irgendwelchen Rechenoperationen zu einer geeigneten Zahl zusammen.

Schöne Grüße
Heinz
Heinz_Richartz ist offline   Mit Zitat antworten
Alt 27.11.2007, 09:48   #7
waldbauer.com
Entwickler
Ich wollte mir die "Arbeit" des Programmierers ersparen aber es bleibt mir leider nichts anderes übrig. Da Problem daran ist die Geschwindigkeit des Updates pro Datensatz, im Programmierer ist das nämlich deutlich langsamer und ich traue den Basistabellen Operationen nicht über den Weg.
waldbauer.com ist offline   Mit Zitat antworten
Alt 27.11.2007, 18:04   #8
Heinz_Richartz
Registrierter Benutzer
Compilierte Anwendungen laufen deutlich schneller. Um wieviel Datensätze geht es denn? Wenn Du willst, so schreibe ich Dir das Programm. So bleibe ich im Thema, roste OA-mäßig nicht ein und Du sparst Zeit. Lass von Dir hören.

Schöne Grüße
Heinz
Heinz_Richartz ist offline   Mit Zitat antworten
Alt 28.11.2007, 16:24   #9
Schuffenhauer
Registrierter Benutzer
Vielleicht existieren ja zwei oder drei Datumsfelder in der Datei
dann ging so ein böser Patch wie

DATUMSFELD1*DATUMSFELD2*DATUMSFELDX / SYSDATUM / (6,oder 7, oder 8, oder 9)

Das kann man dann anpassen und ergibt wenn die Datumsfelder
einigermassen unterschiedlich sind und nicht jeden Tag dieser Vorgang
mehrfach durchgeführt werden muß, ziemlich ungleiche 8-stellige Nummernwerte
(Allerdings darf im Datumsfeld nicht "00.00.0000" eingetragen sein)
Sonst muss noch eine Bedingungen eingetragen werden.

Aber vielleicht kannst Du ja noch andere Werte mit SYSTIME oder SYSDATE
kombinieren
Schuffenhauer ist offline   Mit Zitat antworten


Antwort schreiben...

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche