Jetzt mal langsam. Es geht hauptsächlich um das Prinzip, wie so etwas am Besten zu machen ist. Vom Programm aus irgendein Tabellen-Feld zu setzen ist kein Problem. Den Computernamen usw. auszulesen auch nicht. Natürlich kann ich das von Hand bzw. vom Programm aus erledigen. Wenns keiner verstehen soll, sagt man besser "der Client" soll das machen.
Soweit so gut. Wie manipuliere ich nun Datenbestände ? 1.
DB-Tool : wenn man sieht, daß sogar hier einige nicht wissen was das ist, dann kann man das außen vor lassen. 2. Programm (könnte auch fremdgeschriebenes sein !) : noch unwahrscheinlicher. 3. das eigene Programm, so wie es auch vorgesehen ist wird bewußt zweckentfremdet/falsch bedient.
Nun speichere ich im Programm normalerweise per SP. An einigen Stellen allerdings auch mit Post etc. An all diesen Stellen müßte man Hand anlegen. Sollte das nötig werden, dann wäre ausnahmsweise eine globale Variable wohl am besten : beim Programmstart alles nötige ermitteln und damit später die Felder besetzen, ohne daß jedesmal alles neu deklariert / ermittelt werden muß, Parameter und blabla. Keine Frage, daß das so geht. Wenn schon, dann aber nicht im FormCreate, sondern im DataModuleCreate. Meine Idee war ja, daß das im Trigger gemacht werden soll, also egal wie ein insert/update zustande kommt.
Dann noch Marabus Vorschlag. Dank diesem war ein kurzer Exkurs zu den UDFs nötig. Union hats ja direkt gesehen : geht so nicht. Ich habe es durchexerziert, allerdings einfach mit GetComputerName. Die UDF ermittelt einwandfrei den Computernamen und speichert ihn auch per Trigger automatisch ab. Allerdings von dem Computer, auf dem die
DB und somit die UDF liegt, also vom Server. 8) Dann noch ClientAdress.
FB 2 Beta ? Hmm, etwas zu früh. Allerdings habe ich gesehen, daß es da SetConText??? und GetContext??? gibt. Eventuell wäre das genau das Gesuchte. Werde deshalb eventuell 2 vorläufuge Dummy-Felder Computername und Username in alle Tabellen einbauen.
Zur Problematik an sich : es geht um diverse Sachen, konkret tatsächlich um einen 3/4 Computer-DAU, der Fehler nie zugibt und einen Normaluser. Beide sind allerdings in puncto Geld/Lager absolut nicht als DAUs zu bezeichnen. 8)