Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: brathaenchen am 06.09.05 - 14:59:37

Titel: makeresponse in einer anderen db
Beitrag von: brathaenchen am 06.09.05 - 14:59:37
Hi

ich kopiere in einer Schleife ein Dokument mit ein paar Antwortdokumenten in eine andere DB.
Wie kann ich jetzt mit makeresponse die Dokumente wieder korrekt zu Antwortdokumenten machen?
Muss ich hierfür erst ein feld setzen und dannach wieder ne Collection aufbauen? Oder gibt es einen einfacheren weg?
Titel: Re: makeresponse in einer anderen db
Beitrag von: koehlerbv am 06.09.05 - 15:02:14
Wenn Du die Dokumente mit CopyToDatabase kopierst, bleibt die Verrknüpfung erhalten.

Bernhard
Titel: Re: makeresponse in einer anderen db
Beitrag von: brathaenchen am 06.09.05 - 15:05:18
ja das hab ich auch gemerkt... aber leider nicht in meinem fall
das Elterndokument kann vorher schonmal in die DB kopiert worden sein und dannhängt er beim 2. lauf des agenten das Dokument an das erste elterndokument und nicht an das 2.
Titel: Re: makeresponse in einer anderen db
Beitrag von: gossifu am 06.09.05 - 16:13:29
Hallo,

was Du natürlich brauchts, ist ein Identifyer. Wenn Du damit das korrekte Elterndokument
gefunden hast, machst du mit
Code
Call Antwortdokument.MakeResponse( Elterndokument )
eine Zuordnung.
Leider kenne ich Dein Dokument nicht und kann Dir daher nicht sagen, wie dein Identifyer aussehen sollte.

mfg

Kjeld
Titel: Re: makeresponse in einer anderen db
Beitrag von: koehlerbv am 06.09.05 - 16:22:16
Einen Identifier braucht man dazu eigentlich nicht:
CopyToDatabase des parent documents - NotesDocument bleibt instantiiert. Es wird in Target eine neue UNID erzeugt, wenn es diese schon gibt.
NotesCollection der child documents erzeugen (rekursiv !). Diese einzeln mit CopyToDatabase in Target werfen. Prüfen, ob das parent eine neue UNID hat - wenn ja, mit MakeResponse  das gerade kopierte child umhängen.

Bernhard
Titel: Re: makeresponse in einer anderen db
Beitrag von: gossifu am 06.09.05 - 16:33:31
Hallo,

da er sagte '2. Lauf des Agenten', bin ich nicht von einer bestehenden Instanz ausgegangen.
Aber wenn das Dokument noch irgendwo rumschwirrt, hast Du natürlich recht.
Ansonsten Identifyier.

mfg

Kjeld
Titel: Re: makeresponse in einer anderen db
Beitrag von: koehlerbv am 06.09.05 - 17:00:59
Hallo Kjeld,

das brathaehnchen hatte genau dies aber gesagt:
das Elterndokument kann vorher schonmal in die DB kopiert worden sein ...

Ich befürchte aber, dass das Problem eher ein grundsätzliches Designproblem und nicht nur ein rein technisches ist: Der Aufbau der DB und / oder des Kopiervorganges könnte vielleicht anders gestaltet werden, so dass dieses Problem sich in Wohlgefallen auflöst. Aber dazu müssten wir mehr Infos haben.

Bernhard