Autor Thema: Feld füllen mit @DbLookup und 2 Wert finden.  (Gelesen 8574 mal)

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #20 am: 12.08.05 - 11:23:38 »
Ja ok axel ich hab es jetzt so gemacht:

choice:=@PickList( [Custom] ; "" ; "InputOutput" ; "Select an Entry" ; "Please select the products you want to order" ; 4 ;Division);
@SetField("ResponsibleProcess"; @Word(choice; "~~"; 2));
@SetField("SubProcess"; @Word(choice; "~~"; 1))

Was mir jetzt aber noch eingefallen ist:.................
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #21 am: 12.08.05 - 11:34:33 »
Was mir jetzt aber noch eingefallen ist:.................

Was denn?

Axel

Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #22 am: 12.08.05 - 11:48:20 »
Das mit der Picklist geht aber wie oben schon gesagt:

Wenn ich im Teilprozessfeld bei formula for choice das hier habe:


value := "";
value1:="";
value2:="";
@If(Division != ""; @Do(@Set("value"; @DbLookup("":"ReCache"; ""; "InputOutput";Division; 2));
                                     @Set("value1"; @DbLookup("":"ReCache"; ""; "InputOutput";Division; 4));
                                     @SetField("ResponsibleProcess";value1);
                                     @Prompt([Ok] ; "value1"; @Implode(value1))
                                     )
; "");
@If(@IsError(value) | value = ""; ""; value)

Dann steht im Feld ResponsibleProcess das hier:

2.2 001 Logistik Management~~Robert Prinz; 1.2 902 Permanente Inventur durchführen~~ich; 2.3 101 Abruf bearbeiten / Vertriebsprozeß~~du


Wenn ich jetzt alle doc zurückbekomme und im Feld Teilprozess hab ich ja dann zb
2.2 001 Logistik Management das ausgewählt dann kann ich ja mir mit einer
@for-Schleife doch den value1 durchsuchen und mit @Word(value1;"~~;2) dann den Namen rausholen?

Oder nicht?
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #23 am: 12.08.05 - 13:55:56 »
Hi,

eigentlich schon. Einen Versuch's wäre es wert.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #24 am: 12.08.05 - 15:30:35 »
Mag sein, dass ich was verpasst habe, aber ... warum holst Du Dir denn den Prozessverantwortlichen nach Auswahl des Prozesses nicht einfach aus einer (neuen) Ansicht "(LookupProcesses)", die nach der Prozessnummer sortiert ist ? Dann stehen Dir nach Auswahl der Division und des Prozesses automatisch auch gleich die Angaben zum Verantwortlichen zur Verfügung.
Nur - über die vorhandene Ansicht geht das eben nicht, dazu braucht es eine eigene.

Bernhard

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #25 am: 12.08.05 - 15:36:34 »
Volle Zustimmung, Bernhard, das entspricht meinem ersten Vorschlag.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #26 am: 17.08.05 - 10:29:09 »
@Bernhard: Es ist sicher so machbar aber das ist denke ich der letzte Lösungsweg.

Ich hab jetzt das hier:
FIELD SubProcess := SubProcess;
value := "";
value1:="";
value2:="";
@If(Division != ""; @Do(@Set("value"; @DbLookup("":"ReCache"; ""; "InputOutput";Division; 2));
                                     @Set("value1"; @DbLookup("":"ReCache"; ""; "InputOutput";Division; 4));
                                     @SetField("ResponsibleProcess";value1);


@For(n := 1;

n <= @Elements(value1);
n := n + 1;
@Prompt([Ok] ; "For "; value1[n]);
@If(value1[n] = SubProcess ; value2 := value1[n]  ; "");@Prompt([Ok] ; "value1"; value2))




                                     )
; "");
@If(@IsError(value) | value = ""; ""; value)

in meinem Teilprozessfeld als formula for choice.
Wenn ich das Feld jetzt auf einen anderen Wert setze dann passiert folgendes:
Eine Msgbox mit "FOR": 2.2 001 Logistik Management~~Robert Prinz
jedoch ist die Msgbox mit "Value1" gleich leer, dann
Msgbox mit "FOR": 1.2 902 Permanente Inventur durchführen~~ich
und wieder Msgbox mit "Value1" als Tilte gleich leer.
usw.
dh irgendwie macht er das Vergleichen nicht!
@If(value1[n] = SubProcess ; value2 := value1[n]  ; "")
An was kann das liegen?
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #27 am: 22.08.05 - 09:54:56 »
So und jetzt für alle die das Problem auch schon mal gehabt haben und die Lösung über eine zweite View oder über die Picklist nicht machen wollten meine Lösung:

value := "";
value1:="";
value2:="";
@If(Division != ""; @Do(@Set("value"; @DbLookup("":"ReCache"; ""; "InputOutput";Division; 2));
                                     @Set("value1"; @DbLookup("":"ReCache"; ""; "InputOutput";Division; 4));
                                     @SetField("ResponsibleProcess";"");
                                     @For(n := 1;
                                               n <= @Elements(value1);
                                               n := n + 1;
                                                       @If(SubProcess = @Word(value1[n];"~~";1) ; value2 := @Word(value1[n];"~~";2)  ; "")
                                     );
                                     @SetField("ResponsibleProcess";value2)
                              )
; "");
@If(@IsError(value) | value = ""; ""; value)


Eigentlich schon fertig gewesen nur ein kleiner Denkfehler in der @if -Schleife im @For.

Ich werde das ganze unter Tips & Tricks eintrragen auch mit den anderen Lösungswegen nur fehlt mir eine passende Überschrift??? Wie könnte man das taufen?
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline Jörg

  • Aktives Mitglied
  • ***
  • Beiträge: 175
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #28 am: 01.09.05 - 10:52:57 »

value := "";
value1:="";
value2:="";
@If(Division != ""; @Do(@Set("value"; @DbLookup("":"ReCache"; ""; "InputOutput";Division; 2));
                                     @Set("value1"; @DbLookup("":"ReCache"; ""; "InputOutput";Division; 4));
                                     @SetField("ResponsibleProcess";"");
                                     @For(n := 1;
                                               n <= @Elements(value1);
                                               n := n + 1;
                                                       @If(SubProcess = @Word(value1[n];"~~";1) ; value2 := @Word(value1[n];"~~";2)  ; "")
                                     );
                                     @SetField("ResponsibleProcess";value2)
                              )
; "");
@If(@IsError(value) | value = ""; ""; value)



Bei Lotus Notes5 bekomme ich immer angezeigt, das der Befehl@for nicht bekannt ist,daher die Frage wie dies ausehen muss??
« Letzte Änderung: 01.09.05 - 11:30:28 von Jörg »

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re: Feld füllen mit @DbLookup und 2 Wert finden.
« Antwort #29 am: 01.09.05 - 12:05:18 »
@FOR

Note  This @function is new with Release 6.

Robert
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz