Autor Thema: Antwortdokumente - Hauptdokumente  (Gelesen 3880 mal)

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Antwortdokumente - Hauptdokumente
« am: 01.10.03 - 16:10:14 »
Hi,

ich habe normale Dokumente, in denen stehen diverse Stammdaten (u.a. Feld 'Status').

Darunter hängen jew. Antwortdokumente einer anderen Maske.

Nun habe ich eine View, in der nur diese Antwortdokumente enthalten sind.
Wenn aber gilt:
    Feld 'Status' des Mutterdokuments = Archiv
dann soll das Antwortdok nicht angezeigt werden.

Also SELECT Status != "Archiv", wobei aber der Status nicht im Antwort-Dok enthalten ist.

Eine Übernahme des Status-Feldwertes ins Antwort-Dok bei Erstellung des Antwort-Doks macht hier leider keinen Sinn, weil sich das Feld 'Status' öfter ändern kann - und somit nicht im Tochterdok nachgezogen werden würde.

Wie komm ich denn in einer View auf diese Werte des Mutterdoks?
Ich hoffe dass das geht. Evtl. über View, die UNID enthält, dann ein DBColumn oder so,.... aber afaik ist das nicht erlaubt in Viewselection ???

Grüße,
TMC
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Antwortdokumente - Hauptdokumente
« Antwort #1 am: 01.10.03 - 16:15:48 »
Das geht leider wirklich nicht. Hier hilft nur, beispielsweise im QuerySave des MutterDocs den Status-Wert an alle Tochter-Dokumente weiter zu vererben. Was ja keinen Beinbruch darstellen sollte ...

HTH,
Bernhard

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Antwortdokumente - Hauptdokumente
« Antwort #2 am: 01.10.03 - 16:21:58 »
Zitat
Das geht leider wirklich nicht. Hier hilft nur, beispielsweise im QuerySave des MutterDocs den Status-Wert an alle Tochter-Dokumente weiter zu vererben. Was ja keinen Beinbruch darstellen sollte ...

Na das würd mir schon reichen  8)

Hast Du da evtl. mal wieder einen "Wink" für mich, wie ich das auf einen Schlag hinkriege?
Oder muss ich das 'klassisch' machen: Antwort-Docs in Collection (wie bringe ich die denn simpelst rein??), und halt dann nacheinender abarbeiten, also Statusfeld setzen.

Jedenfalls schon mal danke,

TMC
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Antwortdokumente - Hauptdokumente
« Antwort #3 am: 01.10.03 - 16:31:19 »
In aller Kürze (weil wieder mal "Multitasking" ;-):
NotesDocument.Responses (gibt 'ne Collection, wie vermutet).

Und um es dann einfach zu machen, gibt
NotesDocumentCollection.StampAll
eine Chance ;-)

Fill Ervolk !
Pernhart

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Antwortdokumente - Hauptdokumente
« Antwort #4 am: 01.10.03 - 16:41:56 »
@Multitasker ;D: merci schonmal, hört sich sehr gut an.
Mir ist jetzt leider was dazwischen gekommen und muss noch was anderes "schnell" fertigstellen.
Werde es mir aber heute Abend vornehmen....

TMC
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Antwortdokumente - Hauptdokumente
« Antwort #5 am: 01.10.03 - 20:48:48 »
Prima klasse, klappt ja wunderbar!

NotesDocumentCollection.StampAll ist cool, da brauchts nicht mal mehr ein Save  8)

cu,
TMC
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Antwortdokumente - Hauptdokumente
« Antwort #6 am: 02.10.03 - 23:05:38 »
Hab ja ganz vergessen, noch das Script zu posten, soll ja auch anderen hilfreich sein:

Zitat
Sub Querysave(Source As Notesuidocument, Continue As Variant)
'#################################################################   
'# Zweck: Werte werden beim Speichern in alle AW-Doks übernommen   
'#################################################################
   
   'ui-Zeug
   Dim uiws As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Set uidoc = uiws.CurrentDocument
   'backend-Zeug
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim dc As NotesDocumentCollection
   Dim doc As NotesDocument
   Set db = session.CurrentDatabase
   
   'Wenn UIDoc neu ist: dann verlasse Script
   If uidoc.IsNewDoc Then
      Exit Sub
   Else
      Continue = True
   End If   
   
     'uidoc zu backend-doc   
   Set doc = uidoc.Document
   'alle Antwortdocs des Backend-Docs werden in die Collection aufgenommen
   Set dc = doc.Responses
   'Radikal-Methode: setze alle Felder der Collection, gespeichert wird automatisch   
   Call dc.StampAll( "Re_Status" , doc.Status(0) )
   Call dc.StampAll( "Re_No" , doc.No(0) )
   Call dc.StampAll( "Re_Type" , doc.Type(0) )
   
End Sub

TMC
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Antwortdokumente - Hauptdokumente
« Antwort #7 am: 02.10.03 - 23:19:24 »
Folgenden Teil kannst Du Dir sparen:

else
  continue=true

Bei allen Events ist continue=true vorbesetzt.
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 TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Antwortdokumente - Hauptdokumente
« Antwort #8 am: 02.10.03 - 23:37:51 »
aha, danke für die Info, Semeaphoros!

Ist wohl aus Gewohnheit, ich setze das eigentlich immer in solchen Situationen.

Und wieder was gelernt.

TMC
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Antwortdokumente - Hauptdokumente
« Antwort #9 am: 02.10.03 - 23:46:39 »
Fein.

Bei den Schleifen hab ich schon mal geschrieben, dass ich die Exit nicht so besonders schätze, und so würde ich den ganzen If-Block etwa so fassen:

If Not Source.IsNewDoc Then

.....

End If


Der Effizienzgewinn, der sich dadurch wahrscheinlich ergibt, ist aber wohl nicht einmal messbar.
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 TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Antwortdokumente - Hauptdokumente
« Antwort #10 am: 03.10.03 - 00:03:41 »
Jip, Dein Vorschlag ist eleganter und schöner/flüssiger für Humans zu lesen (auch wenn die 'Maschine' bei der Abarbeitung nicht effizienter wird).

Denn so ist schön 'eingeklammert', was denn passiert.
Na ja, letztendlich auch Geschmacksache.
Aber ich kann mir vorstellen, wenn man mal einen km-langen Code hat, dann ist Deine Alternative sehr viel hilfreicher.
Also somit effizienter für Humans, z.B. bei der Fehlersuche. (effektiver aber auch).

TMC
« Letzte Änderung: 03.10.03 - 00:06:10 von TMC »
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Antwortdokumente - Hauptdokumente
« Antwort #11 am: 03.10.03 - 00:08:45 »
vorausgesetzt, der Body des If-Statements wird nicht zu lange, aber das könnte man ja steuern, wenn man immer daran denken würde (womit gleich gesagt sei, dass auch ich nicht immer elegant schreiben :-). Wichtiger als die Eleganz ist wohl eher eine konsequente und damit voraussagbare Gestaltung, was ja schliesslich auch das Ziel von irgendwelchen (firmeneigenen oder anderen) Richtlinien ist. Sowas hilft enorm für die Lesbarkeit, auch wenn es viele Entwickler leider als lästig empfinden.
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 TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Antwortdokumente - Hauptdokumente
« Antwort #12 am: 03.10.03 - 00:21:00 »
Leider sind auch aus meiner Erfahrung manche/einige Entwickler nur auf (Human) Effizienz aus (ich habe da gerade eine DB die ich überarbeiten soll), ohne die Auswirkungen einzuschließen. Und damit wird die DB als Entwicklung alles andere als (Human) effektiv (also die (Aus)wirkung mit einschließend).

Selbst simple Dinge wie nicht-einheitliche Benennung von Forms, Views, Felder etc. können einen zum Wahnsinn treiben, wenn man mal schnell einen Fehler in einer fremdentwickelten DB beheben soll......

TMC



Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Antwortdokumente - Hauptdokumente
« Antwort #13 am: 03.10.03 - 00:49:05 »
Ja ja, Du sprichst wahre Worte, richtig aus der Praxis heraus, interessant, wie Du gleichzeitig mit der Sprache spielst und den Effekt in eine kompliziert geklammerte Ausdrucksweise einbettest.

Ich versteh sowas ja durchaus, wenn man mal ne Quick 'n durty Lösung so rasch mal hinknallen musste und dann wurde das Ding weiterentwickelt, da sind eben die Umstände ungünstig gewesen. Dann verstehe ich auch, dass jedes noch so gut begonnene Werk mit der Zeit degradiert und schon nur aus historischen Rücksichten dann unschöne Ecken erweist. Aber die Entwickler, die bewusst einen Beitrag zur Unverständlichkeit des Codes leisten, versteh ich echt nicht. Teilweise wohl auch ein Versuch, eigene Inkompetenzen zu verschleiern. Wer sich jetzt betroffen fühlt - sorry - aber selber schuld.
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

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz