Autor Thema: Wertuebernahme aus einer Ansicht!!!  (Gelesen 3473 mal)

Offline mh70220

  • Aktives Mitglied
  • ***
  • Beiträge: 125
  • Geschlecht: Männlich
    • Meine HP
Wertuebernahme aus einer Ansicht!!!
« am: 24.01.04 - 02:05:03 »
Hallo zusammen,

Ich habe eine Maske, in der ich ein Dialogfeld habe. Dieses habe ich schon so eingestellt, das ich einen Datensatz aus einer Ansicht auswaehlen kann. Bei Auswahl des Datensatzes sollen automatisch 5 weitere Felder mit bestimmten Daten dieses Datensatzes befuellt werden.

Wie kann ich das realisieren?

Danke

Matthias
Notes 5.05
Server 5.05
Windows 2000

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #1 am: 24.01.04 - 08:59:43 »
wenn der Wert, den du in das Dialogfeld schreibst das ausgewählte Dokument eindeutig identifizieren kann, dann kannst du die anderen Felder berechnet machen und als Formel jeweils einen entsprechenden @DBLookup.

Was du dazu noch brauchst: du musst in deinem Dialoglist-Feld die Option "Refresh fields on keyword change" aktivieren, dadurch werden alle berechneten Felder neu berechnet, wenn sich der Wert in der Dialogliste ändert.
Und du brauchst vielleicht noch ne neue (versteckte) Ansicht für deine Lookups, die in der ersten Spalte nach dem Feld sortiert, dass du in deine Dialogliste übernimmst.
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

Offline Axel_Janssen

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 769
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #2 am: 24.01.04 - 09:35:26 »
alles sehr wahr.

Aus Performance-Sicht wäre es zudem sinnvoll die @dbLookups von 5 auf 1 zu beschränken.

Dafür sieht die Lookup-Ansicht so aus:
1. Spalte --> der key, den du in der Auswahlbox anwählst.
2. Spalte --> die 5 Werte konketanentiert mit einem Trennzeichen (also einen Character, der bestimmt nicht in den Feldwerten vorkommt. Kandidaten sind "~" oder "#".  

In Praxis sieht dann die Spaltenformel so aus
Feld1 + "~" + Feld2 + "~" + ... + "~" + Feld5
Du kannst diese Formel auch in ein Feld der Maske schreiben.
Vergesse dann aber nicht alle bestehenden Dokumente nochmal neu zu berechnen.

Den Wert mit den vielen ~ holst du dir dann über die @dbLookup. Diesen Wert zerschneidest du dann mit @Left und @Right Operationen in den Formeln.

Hoffe es hilft

Axel
... design patterns are abstract designs that help identify the structure and elements involved in a specific design solution. From this, a concrete implementation can be produced.
Kyle Brown

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #3 am: 24.01.04 - 10:54:51 »
Ja das ist dann natürlich die deluxe Version.
Sehr schön.
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #4 am: 24.01.04 - 11:08:56 »
Das Zerlegen des zusammengesetzten Wertes geht statt mit @Links oder @Rechts noch eleganter mit @Word ;-)

Bernhard

Offline mh70220

  • Aktives Mitglied
  • ***
  • Beiträge: 125
  • Geschlecht: Männlich
    • Meine HP
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #5 am: 24.01.04 - 16:00:26 »
Danke fuer eure schnelle Hilfe. Doch irgendwas passt bei meiner Formel immer noch nicht. Schaut mal bitte ob ihr den fehler findet:

@If(PersBearbeiter="";"";@Word(@DbLookup( "" : "NoCache" ; ""  : ""  ; "($PersBeHelp)"  ; PersBearbeiter  ; 2 ); "~"; 2))

Das Feld ist ein Textfeld "berechnet" wo diese Formel drinsteht.

Ich bekomme immer die Fehlermeldung: Eintrag im Index nicht gefunden, oder der Index ist fuer die Ansicht nicht aufgebaut!
Notes 5.05
Server 5.05
Windows 2000

Offline cococo69

  • @Notes Preisträger
  • Senior Mitglied
  • ****
  • Beiträge: 286
  • Geschlecht: Männlich
  • Super dieses Forum!!!
    • Mein Hobby...
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #6 am: 24.01.04 - 16:09:51 »
Hallo mh,

liegt die DB lokal auf deinem Rechner oder auf einem Server?

cococo69

Glombi

  • Gast
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #7 am: 24.01.04 - 16:10:55 »
Die Angabe der Datenbank (2. Parameter) scheint mir falsch: Du suchtst doch in der gleichen Datenbank, oder?
Also so

@If(PersBearbeiter="";"";@Word(@DbLookup( "" : "NoCache" ; "" ; "($PersBeHelp)"  ; PersBearbeiter  ; 2 ); "~"; 2))

Ausserdem muss die erste Spalte der View "($PersBeHelp)" sortiert sein - bitte prüfe das mal. Dort muss als Wert der Namen PersBearbeiter stehen.

Andreas

Offline mh70220

  • Aktives Mitglied
  • ***
  • Beiträge: 125
  • Geschlecht: Männlich
    • Meine HP
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #8 am: 24.01.04 - 16:34:12 »
He Andreas,

danke fuer die Fehlerbehebung. Nur klappt alles :)

Matthias
Notes 5.05
Server 5.05
Windows 2000

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #9 am: 24.01.04 - 16:44:53 »
abgesehen von dem Problem mit der Fehlermeldung hätte ich auch noch mal ne Frage dazu.

ich dachte, das läuft so ab: ich mache einen Lookup, bekomme den zusammengesetzten String zurück und schreibe den in ein verstecktes Feld (anders formuliert, ein verstecktes berechnetes Feld enthält die DBLookup Funktion). Jedes andere berechnete Feld holt sich mit @Word "seinen" Wert aus dem String, der ja jetzt in diesem versteckten Feld steht. Dadurch ist die Anzahl der Lookups = 1.

So wie es aussieht, habe ich da was falsch verstanden, denn mh7411 macht in jedem berechneten Feld einen Lookup und als ich Axels Post nochmal genau gelesen habe, dann steht das auch genau so da drin.
Also habe ich bei dieser Lösung auch 5 Lookups bei 5 berechneten Feldern.

Allerdings, wo ist da jetzt die bessere Performance gegenüber 5 stinknormalen Lookups ohne diesen zusammengesetzten String?
Oder wie groß mag sie sein?
« Letzte Änderung: 24.01.04 - 16:46:52 von Thomas Völk »
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

Glombi

  • Gast
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #10 am: 24.01.04 - 16:53:34 »
@Thomas: Ich glaube Du hast recht.
@Matthias: Am besten (aus Performancesicht) ist es, wenn Du ein berechnetes Feld "Lookup" machst.
Dort als Formel:
@DbLookup( "" : "NoCache" ; "" ; "($PersBeHelp)"  ; PersBearbeiter  ; XX );

wobei XX die Spaltennummer ist, in der die einzelnen Felder mit "~" konkatteniert sind.

Dann bspw. im Feld "PersBearbeiter" die Formel:
@If(PersBearbeiter="";"";@Word(Lookup; "~"; 2))

Das setzt dann voraus, dass der Bearbeiter an 2. Stelle in dem String steht.

Andreas


Offline mh70220

  • Aktives Mitglied
  • ***
  • Beiträge: 125
  • Geschlecht: Männlich
    • Meine HP
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #11 am: 24.01.04 - 17:38:05 »
Hallo alle zusammen,

auch der Vorschlag klappt super.

Vielleicht loennt ihr mir noch bei einem weiteren Problem helfen. Ich habe in meiner Maske ein Feld, wo eine E-Mail Adresse drin steht. Nun moechte ich ueber ein Button ein ein Memo erstellen und die E-Mail Adresse gleich als Empfaenger eintragen. Ich weis schon, das ic h mit dem Befehl "@Command([MailComposeMemo])" das Standart Memo Formular in meiner Maildatenbank oeffnen kann. Nun fehlt mir nur noch der die Moeglichkeit, die E-Mail Adresse zu uebertragen.

Kennt sich jemand damit aus?
Notes 5.05
Server 5.05
Windows 2000

Glombi

  • Gast
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #12 am: 24.01.04 - 17:42:26 »
Probier mal das:

_Empfaenger := DeinFeldName;
@Command([MailComposeMemo]);
@Command([EditGotoField];"EnterSendTo");
@Command( [EditInsertText];_Empfaenger)

Das sollte es tun.

Andreas
« Letzte Änderung: 24.01.04 - 17:42:51 von Glombi »

Offline mh70220

  • Aktives Mitglied
  • ***
  • Beiträge: 125
  • Geschlecht: Männlich
    • Meine HP
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #13 am: 24.01.04 - 17:49:34 »
Danke fuer die schnelle Hilfe. Du best super, Andreas! :)
Notes 5.05
Server 5.05
Windows 2000

Glombi

  • Gast
Re:Wertuebernahme aus einer Ansicht!!!
« Antwort #14 am: 24.01.04 - 17:51:09 »
Gern geschehen, Danke für die Blumen !  :D

Andreas

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Mail aus Adressfeld erstellen
« Antwort #15 am: 24.01.04 - 19:54:54 »
Hierzu noch eine Alternative:
- Du markierst das Feld "Mail-Adresse"
- über Erstellen - Hotspot -Verknüpfungshotspot wählst Du den Typ "URL" (berechnet)
- Jetzt wählst Du aus: Formel (das @Symbol neben "Wert")
- hier trägst Du jetzt ein: "mailto:" + <DeinAdressfeldname>

Jetzt brauchst Du nur noch auf das Adressfeld zu klicken, und schon öffnet sich der vom User eingestellte MailClient mit bereits eingetragener Empfängeradresse.

ACHTUNG: Andreas Tip funktioniert immer mit Notes als Mail-Client, bei meinem Tip bist Du davon abhängig, was der User als Mail-Client installiert hat (ggf. also auch gar nix).

Ciao,
Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz