Autor Thema: wie klick auf ein Kontrollkästchen protokollieren  (Gelesen 3622 mal)

Offline solaar

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Ich liebe dieses Forum!
Hallo zusammen!

Hab leider nicht wirklich viel Erfahrung und gerade erst einen Anwendungsentwicklung-Grundkurs hinter mir. Ich steh nun vor einer vermutlich einfachen Problematik:

Ich erstelle gerade eine Datenbank, die unsere Materialanforderungen auflistet und deren Bearbeitungsstatus.

Es wird beispielsweise ein Monitor und ein Drucker bestellt.

Ich habe nun eine Tabelle erstellt in der ich mehrere Postionen eintragen kann . zusätzlich habe ich ein Kontrollkästchen erstellt in dem der Bearbeiter ein häckchen setzen soll wenn die angeforderet Hardware mit einer Anlagennummer beklebt wurde.

in etwa so:

Pos    Beschreibung     beklebt
1        monitor 
2        drucker

Wenn nun der Bearbeiter das Häckchen in "beklebt" setzt, soll ein Protokolleintrag beim Speichern erfolgen.

dies habe ich hinter den speichern-button gesetzt:

@If(beklebt != "";(@SetField("history"; "--> " + @Text(@Now) + "," +  " " + @Name([CN];@V3UserName) + ":" + " " + "Beklebung erfolgt" + @NewLine + @NewLine + history));"");

OK, mein Fehler ist mir eigentlich klar, nun wird bei jedem Speichern ein Protokolleintrag dafür geschrieben, aber wie änder ich das? Er soll dies quasi nur einmal schreiben, und wegen der besseren Übersicht sollte er auch, falls für beide Positionen ein Häckchen gesetzt wurde ein eintrag a la "Pos 1,2 Beklebung erfolgt " geschrieben werden.

Gebt mir doch mal ein paar Denkanstösse :)
Achtung: leider habe ich 0 Scriptwissen, lediglich kleine copy+paste erfahrungen :)

Vielen Dank
Carsten

klaussal

  • Gast
Re: wie klick auf ein Kontrollkästchen protokollieren
« Antwort #1 am: 18.08.06 - 08:03:57 »
Das Kontrollkästchen bekommt die Werte "ja" und "nein" zugeteilt (oder auch nur "ja"). Wenn jetzt der Haken gesetzt wird, dann hat das Feld eben den Inhalt "ja".

Jetzt möchte ich wirklich mal gerne wissen, wie dieser "Grundkurs" ausgesehen hat.... ;D

Offline solaar

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Ich liebe dieses Forum!
Re: wie klick auf ein Kontrollkästchen protokollieren
« Antwort #2 am: 18.08.06 - 08:19:18 »
ersteinmal Danke

naja aller Anfang ist schwer, vorallem wenn zwischen GK und erster Anwendung 5 Wochen vergehen...

ok, abändern auf ja ist ja kein Ding, aber das Problem bleibt doch, ob ich jetzt sage feld ="ja" oder != "", an der Protokollierung ändert sich doch nichts, oder?


klaussal

  • Gast
Re: wie klick auf ein Kontrollkästchen protokollieren
« Antwort #3 am: 18.08.06 - 09:11:56 »
Try and error .... :-\

Offline LN4ever

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 505
  • Geschlecht: Männlich
Re: wie klick auf ein Kontrollkästchen protokollieren
« Antwort #4 am: 18.08.06 - 10:45:38 »
Für dein Vorhaben brauchst du 4 Felder

BESCHREIBUNG: BEARBEITBAR, MEHRFACHWERTE
BEKLEBT: KONTROLLKÄSTCHEN BEARBEITBAR  FORMEL FÜR AUSWAHL, AKTUALISIERUNG BEI SCHLÜSSELWORTÄNDERUNG mit der Formel: BESCHREIBUNG (du verwendest einfach die bestellten Sachen als Werte
BEKLEBTVERMERKT: BERECHNET BEIM ANLEGEN, MEHRFACHWERTE, Formel: ""
HISTORY: BERECHNET BEIM ANLEGEN, MEHRFACHWERTE, Formel: ""

Der entscheidende Teil findet in der Eingabeumsetzungsformel des Felds BEKLEBT statt. Dort schreibst du Einträge in das Feld HISTORY für die Werte, die noch nicht in BEKLEBTVERMERKT stehen und setzst das Feld BEKLEBTVERMERKT auf den Wert von BEKLEBT - und dann das Feld BEKLEBT auf den Wert von BEKLEBTVERMERKT (das sorgt dafür, daß du ein gesetztes Häkchen nicht wieder wegnehmen kannst).

OFFEN:=@Trim(@Replace(BEKLEBT;BEKLEBTVERMERKT;"");
NEWHISTORY:=@If@Elements(OFFEN)<1;"";OFFEN+(" beklebt am "+@Text(@Now)+ " von " + @Name([CN];@Username)));
@If(NEWHISTORY="";NULL;@SetFIELD("HISTORY";@Trim(HISTORY:NEWHISTORY);
@SETFIELD("BEKLEBTVERMERKT";@Trim(@Unique(BEKLEBT:BEKLEBTVERMERKT)));
BEKLEBTVERMERKT

Was passiert ?
Du kannst ein Häkchen setzen, aber nicht wieder wegnehmen.
Jeder neue Eintrag wird einmal protokolliert.

Eine so einfache Lösung hat natürlich ein paar Einschränkungen. Du solltest die Liste der BESCHREIBUNG nicht mehr für die Elemente ändern, die bereits ein Häkchen bei BEKLEBT haben. Aber ansonsten sollte es so funktionieren.
« Letzte Änderung: 18.08.06 - 11:25:01 von LN4ever »
Situs vilate in isse tabernit.

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: wie klick auf ein Kontrollkästchen protokollieren
« Antwort #5 am: 18.08.06 - 11:23:47 »
Du könntest auch die ClassHistory benutzen die Michael Wöhrer gebaut hat bzw. deine Anwendung einfach auf Basis von !!HELP!! oder !!DRIVERS!! aufbauen und die da bereits vorhandenen Mechanismen zur Protokollierung von Änderungen an Feldwerten verwenden.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline solaar

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Ich liebe dieses Forum!
Re: wie klick auf ein Kontrollkästchen protokollieren
« Antwort #6 am: 06.09.06 - 13:36:31 »
Vielen Dank nochmals!

konnte es mit Eurer Hilfe/Denkanstössen schaffen :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz