AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DB-Memofeld wer hats wann geändert

Ein Thema von baumina · begonnen am 16. Feb 2016 · letzter Beitrag vom 18. Feb 2016
Antwort Antwort
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 12:36
Ein Inhalt meines Memofeldes sollte z.B. so aussehen:

Code:
Absplitterung vorne rechts. 10.01.2016 ABCFirma HMüller

Metallisierungsvorgang fehlerhaft. 12.01.2016 DEFFirma AScholz

Achtung: Baugruppe nur für Löttests verwenden 15.01.2016 MasterFirma RGutachter

Nach Rücksprache mit Herrn Walter soll diese Baugruppe für weitere Versuchszwecke eingesetzt werden. 20.01.2016 MasterFirma RGutachter
Irgendwann interessiert die Absplitterung vorne rechts nicht mehr, weil die Baugruppe für Löttests zersägt wurde, dann wird der Kommentar der Absplitterung und des fehlerhaften Metallisierungsvorgangs rausgelöscht.

Diese Arbeitsweise funktionierte nur so lange gut, als die Anzahl der Firmen und Benutzer überschaubar war. Nun vergessen viele Datum und Name zur Bemerkung zu schreiben.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#2

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 12:56
Ein Inhalt meines Memofeldes sollte z.B. so aussehen:
..
Diese Arbeitsweise funktionierte nur so lange gut, als die Anzahl der Firmen und Benutzer überschaubar war. Nun vergessen viele Datum und Name zur Bemerkung zu schreiben.
In einem solchen Fall müssen ja auch alte Informationen gepflegt bzw. überarbeitet werden. Ein schnöder "Schreibschutz" für den alten Inhalt ist ja dann eher kontraproduktiv. Es ist eine bequeme Maßnahme, die aber den Nutzen des gesamten Mechnismus aushebelt und ihn damit wahrscheinlich noch mehr zum Streiobjekt macht.
Was also mit einem Zeit/Nutzerstempel erreicht werden sollte, wird mit der Form der Umsetzung wieder verhindert.

Ich würde eher versuchen, mir ein Ok für eine aufwändigere Lösung zu holen. Z.B. eine Lösung mit mehreren Datensätzen, wovon dann einzelne gelöscht werden können, wenn sie nicht mehr relevant sind. Änderungen oder Korrekturen könnte man durch Delete (alt)/Insert(geänderten Text) abbilden.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 13:26
@Baumina
das ist wieder die typische "Datastoring by Notizzettel Lösung".
warum nicht für eine Platine mehrere Memos mit Zeit und Benutzerstempel, die in der Anzeige zusammen geführt werden? (wie z.B. Einzeiler in einer Listbox) Überflüssige Informationen können dann immer noch gelöscht werden.
So wie Du es skizziert hast wird da nichts draus, da sich die wenigsten Benutzer an irgendwelche Vorgaben halten. "Man sieht doch was da steht" und dann versuch mal die Änderungen von Willi Müller am 02/02/1999 zu finden.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 13:38
Die komplexe "richtige" Lösung kenne ich und war auch mein erster Vorschlag, aber wie Chefs eben so sind, ich darf nur eine halbe Stunde Zeit reinstecken
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#5

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 14:13
Dann würd' ich die alten Daten unverändert für immer drin lassen.

Das DB-Memo wird readonly.

Es gibt eine Edit für die Eingabe der Textzeile (sind ja wohl immer "Einzeiler".

Beim Speichern des Datensatzes wird dann eine neue Zeile ans Memo gehängt, die aus dem Inhalt des Edits + Datum + Benutzername besteht.

ungefähr sowas:
Delphi-Quellcode:
procedure TfmMain.qrySQLBeforePost(DataSet: TDataSet);
begin
  if edKommentar.Text <> 'then begin
    DBMemo.Lines.Add('');
    DBMemo.Lines.Add(Format('%s | %s | %s', [edKommentar.Text, DateTimeToStr(Now), Benutzername]));
  end;
end;
Gelöscht und geändert werden kann nicht mehr.
beim Anzeigen des Memoinhaltes direkt an das Ende des Memos gehen, dann sind die alten Daten halt "oben rausgeschoben".

Wie will man denn (ohne Historisierung) in 'ner halben Stunde sicherstellen, dass in einem Memo zu erkennen ist, dass es etwas nicht mehr (oder eine veränderte Fassung) gibt und von wem es entfernt (oder geändert) wurde?

Das geht doch nur, indem man es woanders hinschreibt - eben historisiert.

[OT]Befürchte das hier wieder ein leidiges Problem auftritt:

Die Suche nach einer einfachen und billigen Lösung und die Einigung auf deren Umsetzung, verbraucht mehr Zeit und Resourcen, als die sofortige Umsetzung einer vernünftigen Lösung.[/OT]
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#6

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 14:56
[OT]
wasch mich aber mach mich nicht nass
[/OT]

Unter den Umständen ist nahpets Vorschlag wahrscheinlich das beste was man bekommen kann.

Die genaue Syntax muß man/Du dann noch auskaspern.
Code:
update tablememo set mfeld=mfeld||chr(13)||chr(10)||'Meinewerte'||chr(9)||to_char(sysdate,'YYYYMMDD')||chr(9)||UID where id=12345;
Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 15:21
Manchmal werden auch ganze Mailtexte reinkopiert, ist halt ein Memofeld mit dem man tun und lassen kann was man will. *Schulterzuck* Eierlegende Wollmilchsäue lassen sich wirklich schlecht mit solch Sonderkomfort ausstatten, aber erklär das mal meinem Chef.

Ich fahr grad die Strategie ... nicht weiter drüber diskutieren ... abwarten, erledigt sich meist eh von selbst.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#8

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 20:45
das ist wieder die typische "Datastoring by Notizzettel Lösung".
Oder auch: Verstoß gegen die erste Normalform.

ich darf nur eine halbe Stunde Zeit reinstecken
Und dann bei jeden neuem Problem nochmal 2 Stunden
  Mit Zitat antworten Zitat
Benutzerbild von rapante
rapante

Registriert seit: 3. Jun 2009
Ort: OPR
172 Beiträge
 
Delphi 12 Athens
 
#9

AW: DB-Memofeld wer hats wann geändert

  Alt 17. Feb 2016, 13:23
Ein Inhalt meines Memofeldes sollte z.B. so aussehen:

Code:
Absplitterung vorne rechts. 10.01.2016 ABCFirma HMüller

Metallisierungsvorgang fehlerhaft. 12.01.2016 DEFFirma AScholz

Achtung: Baugruppe nur für Löttests verwenden 15.01.2016 MasterFirma RGutachter

Nach Rücksprache mit Herrn Walter soll diese Baugruppe für weitere Versuchszwecke eingesetzt werden. 20.01.2016 MasterFirma RGutachter
Dafür scheint das Memo nicht die richtige Lösung zu sein...

Dann lieber einzelne DS, wobei du dann Zeitstempel und Benutzer selbst pro Eintrag setzen kannst.
Micha
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz