Autor Thema: Mehrfachwerte (ein Feld) -> zur Anzeige berechnet -> mit DocLinks bzw. Hotspots  (Gelesen 1991 mal)

Offline snore

  • Aktives Mitglied
  • ***
  • Beiträge: 107
Sorry, ich schon wieder ! Tut mir leid, aber meine User haben solche Ideen !

(Ich versuche mich auch verständlich auszudrücken)

Also: In einer Maske-B lasse ich mir in einem "Kontrollkästchenfeld" mit Mehrfachauswahl (nur durch Supervisor sichtbar und bearbeitbar) verschiedene Einträge (berechnet aus einer Ansicht mit Doks der  Maske-A) anzeigen. Der User bekommt die "angehakten" Werte als reines Textfeld (Berechnet zur Anzeige) schön untereinander aufgelistet.
Nun besteht der Wunsch, ob hier nicht direkt auf den Text (also die jeweilige Zeile) geklickt werden kann und sich somit das Dokument aus Maske-A öffnet.

Ich kann mir nicht vorstellen, dass dies ohne X-Page, einer eingebetteten Ansicht, oder... funktioniert.
Dachte mir aber, ob es vielleicht doch die Möglichkeit gebe das Textfeld für die User derart berechnen zu lassen, dass hier pro Zeile eine "Hotspot" erstellt wird, der wiederum die ID des Dokuments enthält und somit den DocLink ermöglicht ?!

Was sagen Sie hierzu ?

Danke
snore


Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
In solchen Fällen baue ich einen Hotspot über das ganze Feld, klickt man dann auf das Feld (egal auf welchen Eintrag), öffnet sich eine Liste mit allen Einträgen des Feldes, daraus wählt man dann den Eintrag aus, der geöffnet werden soll.

Ist ein Schritt mehr, als notwendig, aber besser als nichts

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Wenn die Anzahl der möglichen Werte überschaubar bleibt (<10), dann habe ich das in der Vergangenheit auch schon so gemacht, dass ich für jede Zeile ein eigenes Feld erstellt habe, das jeweils mit einem eigenen Hotspot versehen war. Die "unnötigen" Felder habe ich dann per Hide- When ausgeblendet. Wie gesagt: Das geht nur, wenn man sich sicher ist, dass nicht mehr als x Einträge (=Anzahl Tabellenzeilen) ausgewählt werden...
Das sieht dann im Designer so aus wie im Screenshot. Durch das verwenden von "wiederverwendbarem" Code beschränkt sich das erweitern um "mehr" Zeilen dann auf einfaches Copy & Paste.
Für den Wert der berechnet-zur-Anzeige- Felder benutzt man dann z.B. so eine Formel:
Code
_list := CheckBox;
_thisNr := @TextToNumber( @Right( @ThisName; "_" ) );
@If( @Elements( _list ) < _thisNr ; ""; _list[_thisNr] )
Bei den Hide-Whens funktioniert der Bezug auf @ThisName nicht, da muss man dann nach dem kopieren Hand anlegen:
Code
_list := CheckBox;
_thisNr := 1;
@Elements( _list ) < _thisNr
Und für die Hotspots schreibt man eine kleine Script- Funktion, die das zugehörige Dokument öffnet und als Parameter die Position mitbekommt:
Code
Sub Click(Source As Button)
	ClickMe( 1 )
End Sub
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline thkn777

  • Aktives Mitglied
  • ***
  • Beiträge: 176
Moin,
wir machen's mit Listenfeldern mit mehreren Einträgen zuweilen so:

- QueryRecalc Event der Maske auswerten
- uidoc.CurrentField angucken, ob der Nutzer in DAS bewußte Feld geklickt hat
- dann den Wert des Feldes auslesen und was-auch-immer damit anstellen

In meinem Anwendungsfall klickt der User auf einen Listeneintrag und automatisch werden zusätzliche Informationen zu diesem Datensatz / Eintrag in weiteren Feldern angezeigt.

In Deinem Fall müßtest Du mit dem Feldwert irgendwie z.B. die UniversalID des gewünschten Dokuments ermitteln und das Dokument öffnen.

Viel Erfolg,
Th.
« Letzte Änderung: 04.04.16 - 11:49:26 von thkn777 »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz