Autor Thema: Funktionen Kopieren/Ausschneiden/Einfügen  (Gelesen 14217 mal)

Offline DrNotes

  • Aktives Mitglied
  • ***
  • Beiträge: 183
  • Geschlecht: Männlich
Funktionen Kopieren/Ausschneiden/Einfügen
« am: 05.11.04 - 09:39:09 »
Hallo Leute,

ich bräuchte wieder mal eure Hilfe.

Ich habe mehrere Datenbanken, die nach dem Hauptdokument-, Antwort-, Rückantwortdokument-Prinzip aufgebaut sind (entspricht mehr oder weniger der Struktur einer Diskussionsdatenbank).

Mein Problem:
Ich möchte die Funktionen Kopieren/Ausschneiden/Einfügen von Hauptdokumenten (mit/ohne Antwort-Rückantwortdokumente) bzw. einzelner Dokumente mittels Menüauswahl realisieren.

Prinzipiell funktioniert mein System, wenn ich die „richtigen“ Dokumente markiere (nur Hauptdokument oder Hauptdokument inkl. Antwortdokumente oder einzelnes Dokument) und mittels windowseigener Strg-C Strg-X Strg-V Funktionen hin-und-herschiebe.

Frage:
Wie kann ich das ganze menügesteuert realisieren, um den User nicht zu überfordern?
D..h wenn ich ein Hauptdokument markiere, soll er zuerst alle dazugehörigen Antwort-/Rückantwortdokumente in die Zwischenablage (oder sonst wohin?) mitkopieren, und mich beim „Einfügen“ fragen, ob ich nur das Hauptdokument oder inkl. Antwort-/Rückantwortdokumente einfügen möchte.

Soweit ich gesehen habe, gibt’s die Commands „EditCopy“, „EditCut“, „EditPaste“.

Nur, hab ich auf die Elemente in der Zwischenablage irgendwie Zugriff  (wo kann ich da einhacken? – eventuell die Querypaste-Funktion?) oder wo soll ich die betreffenden Dokumente vorübergehend ablegen?


Wäre für Tipps sehr dankbar.
« Letzte Änderung: 05.11.04 - 13:53:06 von DrNotes »

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #1 am: 05.11.04 - 10:42:11 »
Kleiner Hinweis: die Taste mit der Bezeichnung Strg auf den deutsch-deutschen Tastaturen heist Steuerung und nicht String (würde man bei etwas Nachdenken wahrscheinlich merken .... denn es macht überhaupt keinen Sinn ..... ).

Ansonsten, arbeitest Du mit Formeln oder mit Script? Und das QueryPaste ist bestimmt der richtige Ort, um dort einzugreifen, wenn ich es recht im Kopf habe wohl sogar der einzige Ort.
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 koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #2 am: 05.11.04 - 10:47:20 »
Mit dem QueryPaste ist hier aber nicht viel Staat zu machen, denn dort bekommt man nur die Informationen "Achtung - da kommt was !". Was das ist, erfährt man aber nicht ...

Wenn ich das richtig lese ("User nicht überfordern ... auswählen, ob Parent oder Parent & Children ..."), dann könnte man das mit einer Aktionsschaltfläche in einer Ansicht machen. Ohne LotusScript ist das aber (so oder so) nicht zu realisieren.

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: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #3 am: 05.11.04 - 11:06:21 »
Sehe ich genauso, und deshalb wollte ich auch mehr wissen, worum es eigentlich geht.
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 DrNotes

  • Aktives Mitglied
  • ***
  • Beiträge: 183
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #4 am: 05.11.04 - 14:17:48 »
Kleiner Hinweis: die Taste mit der Bezeichnung Strg auf den deutsch-deutschen Tastaturen heist Steuerung und nicht String (würde man bei etwas Nachdenken wahrscheinlich merken .... denn es macht überhaupt keinen Sinn ..... ).

du mögest mir verzeihen, da hab ich mich vertan - ist aber nicht mein eigentliches problem ;)

Offline DrNotes

  • Aktives Mitglied
  • ***
  • Beiträge: 183
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #5 am: 05.11.04 - 14:22:55 »
Sehe ich genauso, und deshalb wollte ich auch mehr wissen, worum es eigentlich geht.
ich arbeite natürlich mit beiden - Formeln und Script.

Userbeispiel:
Hauptdokument = HD      Antwortdokument = AW

Bsp-Struktur:
HD1
   AW1.1
   AW1.2   
   AW1.3   
      AW1.3.1
      AW1.3.2
HD2   
   AW2.1   
   AW2.2   
      AW2.2.1
      AW2.2.2

jetzt möchte ich mittels Menüauswahl "Dokumente Kopieren und woanderst einfügen":

- ich gehe auf AW2.2 -->Bearbeiten --> Kopieren
- ich gehe auf AW1.1 --> Bearbeiten --> Einfügen unter AW1.1 inkl. AW

ergibt:
HD1
   AW1.1
      KopieAW2.2   
         KopieAW2.2.1
         KopieAW2.2.2
   AW1.2   
   AW1.3   
      AW1.3.1
      AW1.3.2

HD2   
   AW2.1   
   AW2.2   
      AW2.2.1
      AW2.2.2

Das muss man irgendwie rekursiv gestalten, nur wie kann ich die Dokumente in der Zwischenablage angreifen, den ich brauch sozusagen einen Klon dieser Dokumente und muss dann die $Ref "umbiegen".
Kann ich bei Querypaste irgendwie jedes Dokument vorm Einfügen abfangen?

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #6 am: 05.11.04 - 14:49:03 »
IMHO hast Du keine Chance, irgendwie auf die Dokumente in der Zwischenablage zuzugreifen. Und das QueryPaste-Event liefert Dir ebenfalls keinerlei Informationen über die Dokumente, die eingefügt werden sollen.

Wie oben schon vorgeschlagen, schreibe Dir doch einen Agent, der auf markierte Dokumente reagiert und dann das korrekte Kopieren vornimmt. Dann hast Du alles selbst im Griff.

Bernhard

Offline mibo11

  • Senior Mitglied
  • ****
  • Beiträge: 325
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #7 am: 05.11.04 - 14:54:51 »
Ich sehe es genauso wie Bernhard und würde den Ansatz verändern.

1. Querypaste in Zieldatenbank verhindern.
2. In Quelldatenbank markierte Dokumente in DocumentCollection
3. Picklistaufruf der Zielansicht (Single)
4. markiertes oder ausgewähltes Dokument als Objekt


Nun hast du alle Informationen des Zieldokuemntes und kannst die Dokumente deiner DocumentCollection in die Zieldatenbank kopieren.

Gruß Sascha

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #8 am: 05.11.04 - 14:59:09 »
Danke, Sascha, für diese Ergänzung. Genauso hatte ich das gemeint.
Wegen Punkt 1 - QueryPaste verbieten: Leider geht das nur Ansicht für Ansicht. Bei der nervigen Aktion aber nicht vergessen: Lass' Dir eine (zugriffsbeschränkte) Ansicht offen - sonst wirst Du Dich eines Tages selber hassen  ;D

Bernhard

Offline mibo11

  • Senior Mitglied
  • ****
  • Beiträge: 325
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #9 am: 05.11.04 - 15:03:46 »
Lass' Dir eine (zugriffsbeschränkte) Ansicht offen - sonst wirst Du Dich eines Tages selber hassen  ;D



Ja natürlich Bernhard alles andere wäre wirklich mühsam.  :D


Gruß Sascha

Offline DrNotes

  • Aktives Mitglied
  • ***
  • Beiträge: 183
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #10 am: 10.11.04 - 09:09:02 »
Ich sehe es genauso wie Bernhard und würde den Ansatz verändern.

1. Querypaste in Zieldatenbank verhindern.
2. In Quelldatenbank markierte Dokumente in DocumentCollection
3. Picklistaufruf der Zielansicht (Single)
4. markiertes oder ausgewähltes Dokument als Objekt


Nun hast du alle Informationen des Zieldokuemntes und kannst die Dokumente deiner DocumentCollection in die Zieldatenbank kopieren.

Gruß Sascha
danke vorerst für die anregungen.

Offline DrNotes

  • Aktives Mitglied
  • ***
  • Beiträge: 183
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #11 am: 10.11.04 - 12:16:28 »
Ich sehe es genauso wie Bernhard und würde den Ansatz verändern.

1. Querypaste in Zieldatenbank verhindern.
2. In Quelldatenbank markierte Dokumente in DocumentCollection
3. Picklistaufruf der Zielansicht (Single)
4. markiertes oder ausgewähltes Dokument als Objekt


Nun hast du alle Informationen des Zieldokuemntes und kannst die Dokumente deiner DocumentCollection in die Zieldatenbank kopieren.

Gruß Sascha
Hallo,

die Idee gefällt mir an und für sich ganz gut, aber:

** da mir das Picklist-Fenster zu klein ist -> wäre es auch möglich, dass ich ohne Picklist auskomme (da es mir optisch besser gefallen würde)?

Ich stelle mir das folgendermassen vor:
1)in meiner Ansicht markiere ich die gewünschten zu kopierenden Dokumente (so wie vorgeschlagen)
2) ich klicke in meinem Menü auf "Dokumente" -> "kopieren" (CopyAgent)- jetzt lies ich die gewählten Dokuemente in die Kollektion ein und demarkiere die gewählten Dokumente
3) ich gehe in meiner Ansicht auf das Zieldokument
4)ich klicke in meinem Menü auf "Dokumente" -> einfügen (InsertAgent) - Vorgang kopieren wird gestartet

Frage:
Wie kann ich vom InsertAgent auf die Dokumente der Kollektion des CopyAgent zugreifen?
« Letzte Änderung: 10.11.04 - 12:19:35 von DrNotes »

Offline DrNotes

  • Aktives Mitglied
  • ***
  • Beiträge: 183
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #12 am: 10.11.04 - 19:57:02 »
Ich sehe es genauso wie Bernhard und würde den Ansatz verändern.

1. Querypaste in Zieldatenbank verhindern.
2. In Quelldatenbank markierte Dokumente in DocumentCollection
3. Picklistaufruf der Zielansicht (Single)
4. markiertes oder ausgewähltes Dokument als Objekt


Nun hast du alle Informationen des Zieldokuemntes und kannst die Dokumente deiner DocumentCollection in die Zieldatenbank kopieren.

Gruß Sascha
Hallo,

die Idee gefällt mir an und für sich ganz gut, aber:

** da mir das Picklist-Fenster zu klein ist -> wäre es auch möglich, dass ich ohne Picklist auskomme (da es mir optisch besser gefallen würde)?

Ich stelle mir das folgendermassen vor:
1)in meiner Ansicht markiere ich die gewünschten zu kopierenden Dokumente (so wie vorgeschlagen)
2) ich klicke in meinem Menü auf "Dokumente" -> "kopieren" (CopyAgent)- jetzt lies ich die gewählten Dokuemente in die Kollektion ein und demarkiere die gewählten Dokumente
3) ich gehe in meiner Ansicht auf das Zieldokument
4)ich klicke in meinem Menü auf "Dokumente" -> einfügen (InsertAgent) - Vorgang kopieren wird gestartet

Frage:
Wie kann ich vom InsertAgent auf die Dokumente der Kollektion des CopyAgent zugreifen?


würde das eventuell auch mit einem Profildokument funktionieren, ich denke dabei an @SetProfileField/@GetProfileField - also ich speichere einfach die ID's der Dokumente in einem Feld ab.
Könnte diese Variante recht gut funktionieren, oder ist die eher unzuverlässig?

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #13 am: 10.11.04 - 20:02:52 »
Das kann man schon machen. Zu berücksichtigen ist aber folgendes:
- Das ProfileDoc muss immer ein persönliches sein.
- Es muss sichergestellt sein, dass nicht mehr Dokumente markiert sind (und deren UNIDs zu übernehmen sind), als in ein Text(listen)feld passen.
- Bevor mit der Aktion begonnen wird, muss das entsprechende Item geleert werden
- @SetProfileField etc. geht natürlich nicht, dass muss mit LS passieren.

Insgesamt halte ich aber die Variante, den Programfluss zwischen Kopieren und Bestimmung des Ziels zu unterbrechen, für bedenklich. Der Ausgang ist da immer insofern ungewiss, als der Abschluss der Aktion nicht gewährleistet werden kann. Wir wissen ja nicht, was der Anwender dann wirklich macht ...

Bernhard

Offline DrNotes

  • Aktives Mitglied
  • ***
  • Beiträge: 183
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #14 am: 10.11.04 - 20:31:48 »
Das kann man schon machen. Zu berücksichtigen ist aber folgendes:
- Das ProfileDoc muss immer ein persönliches sein.
- Es muss sichergestellt sein, dass nicht mehr Dokumente markiert sind (und deren UNIDs zu übernehmen sind), als in ein Text(listen)feld passen.
- Bevor mit der Aktion begonnen wird, muss das entsprechende Item geleert werden
- @SetProfileField etc. geht natürlich nicht, dass muss mit LS passieren.

Insgesamt halte ich aber die Variante, den Programfluss zwischen Kopieren und Bestimmung des Ziels zu unterbrechen, für bedenklich. Der Ausgang ist da immer insofern ungewiss, als der Abschluss der Aktion nicht gewährleistet werden kann. Wir wissen ja nicht, was der Anwender dann wirklich macht ...

Bernhard

Naja, prinzipiell hab ich schon daran gedacht, mehrere einzelne Dokumente auf einmal zu markieren (das könnte ich ja auf z.b. 100 Dokumente begrenzen) und anschliessend anderswo hinkopieren bzw. würde es mir reichen ein Hautpdokument zu markieren und alle dazugehörigen Antwortdokumente anderswo einzufügen.

Das ganze geht natürlich nur im LS und mit Benutzerprofil.

** Variante Dokumente:
ich schreibe max. 100 ID's in dieses Listenfeld, die ich dann beim InsertAgent zum reinkopieren wieder auslese

** Variante Hauptdokument:
hier müsste ich lediglich die ID des Hauptdokumentes abspeichern.

Bzgl. Datenfluss hast du zwar recht, aber rein optisch würde mir diese Variante am besten gefallen (wäre halt der Windows-Standard-Funktion am ähnlichsten)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #15 am: 10.11.04 - 20:44:28 »
Bzgl. Datenfluss hast du zwar recht, aber rein optisch würde mir diese Variante am besten gefallen (wäre halt der Windows-Standard-Funktion am ähnlichsten)

Da ist was dran ...

Kopieren kannst Du ca. 490 Dokumente (ich habe sowas mal in einem ganz anderen Zusammenhang gemacht und entsprechend getestet).

ich schreibe max. 100 ID's in dieses Listenfeld, die ich dann beim InsertAgent zum reinkopieren wieder auslese

Wenn Deine Collection mehr als die erlaubten Doks enthält, solltest Du gar nichts machen, sondern eine entsprechende Meldung ausgeben. Aber das hast Du bestimmt auch so angedacht.

Bernhard

Offline DrNotes

  • Aktives Mitglied
  • ***
  • Beiträge: 183
  • Geschlecht: Männlich
Re: Funktionen Kopieren/Ausschneiden/Einfügen
« Antwort #16 am: 11.11.04 - 08:22:43 »
Bzgl. Datenfluss hast du zwar recht, aber rein optisch würde mir diese Variante am besten gefallen (wäre halt der Windows-Standard-Funktion am ähnlichsten)

Da ist was dran ...

Kopieren kannst Du ca. 490 Dokumente (ich habe sowas mal in einem ganz anderen Zusammenhang gemacht und entsprechend getestet).

ich schreibe max. 100 ID's in dieses Listenfeld, die ich dann beim InsertAgent zum reinkopieren wieder auslese

Wenn Deine Collection mehr als die erlaubten Doks enthält, solltest Du gar nichts machen, sondern eine entsprechende Meldung ausgeben. Aber das hast Du bestimmt auch so angedacht.

Bernhard
genauso hab ich's mir gedacht - danke - werd's jetzt mal versuchen

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz