Autor Thema: Inhalte in strukurell unterschiedliche Datenbanken kopieren  (Gelesen 3887 mal)

DatenDuck

  • Gast
Hallo Leute,

kaum einen Tag aus dem Urlaub zurück, schon habe ich leider wieder eine Frage an die Gemeinde.

Folgendes "Szenario":
Es sind 2 Datenbanken vorhanden, die an sich eine komplett verschiedene Strukur haben.. Z.B. eine Maildatenbank und eine "normale" 08-15 DB.
In beiden Datenbanken ist jedoch ein kleiner Teil des designs identisch (gleiche Masken, gleiche Felder, gleiche Agenten usw. die 100% eindeutig benannt sind).
In einer der beiden Datenbanken ist nun schon etwas in den Maskenfeldern gespeichert (sozusagen die Masterdatenbank mit Inhalt), in der anderen/den anderen Datenbanken noch nicht.
Ist es nun möglich, in einer Art Batchlauf den Inhalt der "Masterdatenbank" in die anderen Datenbanken (und zwar nur die, in denen die gleichen Masken und Felder vorhanden sind und auch nur den Teil des Inhalts, bei dem in beiden DBs die Felder übereinstimmen) automatisch zu kopieren? (Mit automatisch meine ich, der Job läuft einfach mal auf auf alle Datenbanken in einem Ordner und kapiert automatisch, dass bei manchen Datenbanken die nötigen Designelemente fehlen. )

Ich wüsste gerne, ob es auf so eine Art möglich ist, in diversen strukturell unterschiedlichen Datenbanken, den Daten-Inhalt z.B. einer überall vorhanden, gleichen Maske zu verteilen und somit abzugleichen?

Vielen Dank schonmal im Voraus für eure Antworten
Bis dann,
-Moritz
« Letzte Änderung: 31.08.04 - 15:28:19 von DatenDuck »

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #1 am: 30.08.04 - 14:54:59 »
Wenn man sich sehr ordentlich mit LotusScript auskennt, dann könnte das ohne weiteres möglich sein. Du hast in Deiner Frage ab und an Design und Inhalt vermischt, ich habe das mal dabei "in meinem Sinne" interpretiert.
Ob und wie das machbar ist, hängt aber von zahlreichen Faktoren ab, die Du nicht genannt hast. Zum Beispiel muss es ja möglich sein, zwischen Dokument A in Datenbank X eine eineindeutige Beziehung zu Dokument B in Datenbank Y herzustellen. Ohne dem geht gar nix.

Bernhard

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #2 am: 30.08.04 - 14:58:48 »
klar geht das..... man muss sich auch nur ein bisschen mit LotusScript auskennen, um das ganze zu machen...

Dim db1 as NotesDatabase, db2 as NotesDatabase
Dim viw1 as NotesView, viw2 as NotesView
Dim doc1 as NotesDocument, doc2 as NotesDocument
Dim copyItem as NotesItem

DB1 initialisieren
DB2 initialisieren

viw1 Initialisieren (eine Ansicht, die alle Daten enthält, die "kopiert" werden sollen
(optional: viw2 initialisieren: ist eine Ansicht in db2, die kopierte Daten enthält, und in der man evtl über einen Key ein Dokument findet, sofern es schon einmal kopiert wurde...)

viw1 per schleife durchlaufen.
für jedes doc1:
(optional: über einen Schlüssel schauen, ob es ein korrespondierendes doc schon in viw2 gibt)
doc2 in db2 erstellen
alle nötigen Items (copyItem.CopyItemToDocument) von doc1 nach doc2 kopieren
doc2 speichern, gegebenenfalls in  doc1 ein flag setzen ala doc1.Copyflag = "schon kopiert"

fertig...

Gruß
Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #3 am: 30.08.04 - 15:01:29 »
Ganz so einfach hat er es wohl nicht gemeint, Tode:
"... und zwar nur die, in denen die gleichen Masken und Felder vorhanden sind und auch nur den Teil des Inhalts, bei dem in beiden DBs die Felder übereinstimmen ..."

Aber wir wollen ja keine Kaffeesatzleserei betreiben  ;)

Bernhard

DatenDuck

  • Gast
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #4 am: 30.08.04 - 15:12:17 »
Oh ha.. jetzt geht's ab ;)

ich meinte es eher "dynamisch", dass heisst jeder Mensch kann sich in seine eigenen DBs (deren weitere Struktur ich natürlich erstmal nicht kenne) eine meiner Masken einsetzen.. Damit die Person aber den Inhalt nicht immer selber füllen muss, wollt ich das eben durch so eine Art Kopiervorgang in die Menge machen .. (Also noch nicht JETZT, aber dann wenn ichs kann  ;D) Alle vorhandenen Datenbanken haben unter sich nichts mit einander zu tun, ausser eben diese Maske(n) und "mein"  Inhalt in meiner DB.
Ich möchte/kann somit nicht festlegen und sicher sagen, in welcher DB diese Masken usw. bereits vorhanden sind, das heisst der Kopierprozess muss so intelligent sein und selber erkennen, wo er hinkopieren darf/kann und wo eben nicht...

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #5 am: 30.08.04 - 15:23:45 »
FALSCHER ANSATZ !!!!!!!!!!!!!!!!!!!

Warum willst Du Deine Daten und Masken in tausend verschiedene Datenbanken "verteilen" !????

Warum belässt Du es nicht einfach bei EINER Datenbank, auf die Du die richtigen Zugriffsrechte vergibst ?

Was Du Dir da basteln willst, ist in meinen Augen KOMPLETTER SCHWACHSINN...

Aber gut.... Wenn Du es partout haben willst, dann wird es natürlich WESENTLICH komplexer... Du musst Dir aus der Sandbox erstmal die LotusScript- DatabaseDesign- Klassen- Datenbank herunterladen.

Mit dieser Bekommst Du zugriff auf Design- Elemente (Masken, Ansichten, etc)...

Dann durchläufst Du einen DatabaseDirectory und durchläufst in JEDER Datenbank ALLE Design- Elemente, und schaust, ob Du eins findest, was Dir bekannt vorkommt... wenn ja, dann kopierst Du Deine Daten...

Der Agent wird dann -ja nach Anzahl Datenbanken- die ein oder andere Stunde laufen, und Dir den Server zumachen, aber das ist ja wurst... oder ?

Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Glombi

  • Gast
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #6 am: 30.08.04 - 15:30:57 »
Anderer Ansatz: Du erstellst ein Template mit "Deinen" Mastergestaltungselementen. In diesem Template erstellst Du dann auch die Dokumente, die "verteilt" werden sollen.

Wenn jemand dann eine neue Datenbank erstellt, soll er Dein Template als Vorlage verwenden. Dabei werden dann auch automatisch die Dokumente kopiert.

Falls es das nicht ist, wäre ein kleines Script-Progrämmelchen erforderlich  ;D
Das von Tode genannten Spielzeug aus dem Sandkasten hat schon einiges davon (es fehlen aber ein paar neure Dinge wie Gliederungen etc., dass macht aber nix, denn bei Dir kommt es ja auf die Masken an) und müsste "geringfügig" erweitert werden.

Was hast Du denn so für Daten, die es Wert sind, redundant verteilt zu werden?

Andreas

DatenDuck

  • Gast
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #7 am: 30.08.04 - 15:32:03 »
Hi Tode,

eine zentrale DB für alle kann ich nicht verweden da:
In jeder Benutzer DB, warten Agenten darauf etwas mit den Kriterien die sie aus dieser Maske und den Feldern ziehen zu tun.
Die "Einstellungen" in dieser Maske sollen eben nur für diese eine DB gelten und der Benutzer könnte sie auch selber ändern. Da aber nicht jeder von Anfang an weiss was wie sein muss, wollte ich eine art Default Inhalt verteilen (der sich manchmal eben auch ändern kann). Bestimmte Felder bleiben dabei sogar ganz leer, da die vom Benutzer gefüllt werden MÜSSEN (z.B. ein Passwortfeld, was ja nicht besonders schwer zu erkennen und zu interpretieren ist).
Würde ich das alles in eine DB packen könnten ALLE nur mit diesem einen Set an Daten arbeiten...

Ich dachte anfangs eben es ist wesentlich leichter zu sagen "Schau überall nach und wenn du das Feld mit namen BLA findest, dann fülle es mit dem Inhalt den ICH habe"


***Nachtrag: Glombi, dass sind x verschiedene Sachen. In einem Feld steht z.B. nur ein Dateipfad, in dem anderen irgendeine Formel für den Agenten, dann gibts ne Anzahl an checkboxen und radiobuttons die auch wieder den Agenten beeinflussen... Das soll mal ein ganzer haufen Kram sein, der grob überissen nur Einfluss auf die Agenten hat (die hautpsächlich alles mögliche aus der DB exportieren). Im Prinzip also eine Maske mit "Einstellungen" für die Agenten. Würde ich das in ein Mastertemplate stecken, hätten alle "Kinder" ja mein aussehen und das soll nicht so sein***
« Letzte Änderung: 30.08.04 - 15:39:44 von DatenDuck »

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #8 am: 30.08.04 - 16:26:32 »
Ich glaube, hier herrscht auf allen Seiten immer noch Unklarheit über die Aufgabenstellung. So, wie ich das sehe, sollen keine Designelemente automatisch kopiert werden. Dies erfolgt wohl händisch. Wenn aber bestimmte Designelemente in einer anderen DB sind, dann sollen aus einer zentralen DB Daten transferiert werden (wozu immer das gut sein soll).
Wo und wie diese Daten in den "anderen" DBs dann aber visualisiert werden sollen, ist mir schleierhaft.

DatenDuck: Wir brauchen eine genauere Erklärung. Möglichst wenige Worte, dafür umso aussagekräftiger. Vielleicht ein Beispiel ...

Bernhard

DatenDuck

  • Gast
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #9 am: 30.08.04 - 16:37:51 »
Ok ich versuchs so einfach wie möglich.

jeder Benutzer kopiert sich eine Maske selber in seine eigene DB.

In dieser Maske gibt es das Feld "Pfad" und 2 Checkboxen "Kopieren" und "Kopieren und löschen".
Da ein Benutzer jetzt evtl. nicht versteht , was er da reinschreiben/anhaken soll, möchte ich den Inhalt "C:\export" und den Haken "Kopieren" aus meiner DB in sein Feld schreiben und den Haken setzen.
Und diesen Vorgang möchte ich auf alle DBs anwenden, da ich nicht immer weiss ob die Maske mit Feld und Haken voraden sind. Der Rest des DB Designs interessiert mich sogesehen nicht, ich will ja nur ein "meinen Teil". Dadruch könnten meine Einstellungen in aller Art DB gesetzt werden, ganz egal für was die DB genutzt wird. Die der ebenfalls kopierte Agent sieht nun diese Einstellung, ohne dass der Benutzer sie selber treffen musste (und ggf. eine Fehler dabei machte).


Das war jetzt die einfachste Methode hoffe ich. Ich möchte wirklich nur den INHALT kopieren, wenn ein passendes Feld in einer passenden Maske vorhanden ist.
« Letzte Änderung: 30.08.04 - 16:42:05 von DatenDuck »

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #10 am: 30.08.04 - 16:46:44 »
Der Sinn bleibt mir noch immer verschlossen... 8)

Aber warum machst Du das nicht einfach mit Vorgabe- Werten in der Maske ?

Wenn in Deinem Pfad- Feld automatisch "C:\Export" drinstehen soll, dann schreibst Du das in den Vorgabewert... dann musst Du nicht irgendwelche dubiosen Inhalte verteilen...

So nach und nach kriege ich auch den Eindruck, dass Du Masken und Dokumente nicht auseinander halten kannst...

Ausserdem:
Was passiert, wenn ein User sich bereits mehrere Dokumente mit Deiner Maske angelegt hat, und BEWUSST schon einige Inhalte geändert hat... überschreibst Du ihm dann auch einfach seine Werte mit Deinen ?

HILF UNS ! Sag uns nicht immer nur Bruchstücke dessen, was Du willst, sondern sag uns, was diese Masken TUN, wofür sie verwendet werden, und warum ein User sich diese in seine Datenbank kopieren können soll...

Nur so kann man Dir helfen, und vielleicht einen grundlegenden Verständnis / Design- Fehler beheben...

Ausserdem eine Bitte: Sag uns doch mal kurz, wer Du bist, und wie viel Du von dem, was Du da tust verstehst... Bist Du ein Entwickler- Anfänger, der sich in einer (Schnaps)idee verrant hat, oder bist Du ein Profi, der nach einem edlen Weg sucht, etwas zu tun, was er sonst manuell tun müsste...

Gruß
Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #11 am: 30.08.04 - 17:05:22 »
Wenn nur eine MASKE in eine (fremde) DB kopiert wird, kann man deren Existenz wohl ermitteln und so auch unter selbst gesetzten Bedingungen hierfür Dokumente generieren. Aber wozu braucht es eine Maske ? Die Dokumente, die damit erstellt (generiert) wurden, sieht ja sowieso kein Endanwender (weil es dafür dann immer noch keine Ansicht gibt) - und dann brauche ich ja auch die maske nicht, sondern kann die Dokumente mit einem Item Form = "Irgendwas" ja trotzdem erstellen.

Ich stimme Todes Beitrag vollkommen zu: Sag' an, was Du wirklich willst, bevor wir unsere Zeit in Kaffeesatzleserei verplempern.

Bernhard

PS: Da ich Deine Ausgangsfrage ja schon fast richtig gedeutet habe und ich auch Deine anderen Threads gelesen habe, habe ich das Gefühl, dass Dir geholfen werden kann. Wenn Du uns jetzt hilfst und mit des Pudels Kern 'rausrückst.

DatenDuck

  • Gast
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #12 am: 30.08.04 - 17:16:10 »
Das mit dem Vorgabewert geht nicht, da dieser immer gleich wäre. Ändert sich der Pfad, muss jedes Feld in jeder DB angefasst werden, da das Design ja nicht aus einer gemeinsamen Schablone kommt. (Ist jedoch ein guter Tipp für die DBs welche aus einer gemeinsamen Schablone bestehen).

Die Sache mit Masken und Dokumenten:
Ich verstehe das so: In einer Maske habe ich ein Feld. Der Inhalt dieses Objekts wird in einem Dokument gespeichert und die Dokumente können in einer Ansicht aufgelistet werden oder?

Was tun die Masken:
In erster Linie haben sie wie gesagt nur Felder, dessen Inhalt sich ein Agent ausliest. Der Feldinhalt stellt Kriterien für den Agenten dar... Was soll ich da groß sagen... Der Agent schaut ins Feld Pfad und liest "C:\export" und dann auf die Checkbox und liest was angecheckt ist. Daraufhin tut er das was er anhand der Kriterien tun kann.
Nächste Sache: Die Maske gehört zu dem Agenten und ermöglicht z.B. das Abklinken eines Dateianhangs, der Speicherung dieses Anhangs in einem Bestimmten Pfad und somit Entlastung der MailDB. In einer anderen DB bewirkt diese Komponente das Exportieren des angezeigten Dokuments als RTF-Datei in einen bestimmten Pfad usw. In beiden Fällen wird in dem angezeigten Dokument gearbeitet.

Was bin ich:
Ich bin ein Anfänger der sich durchbeissen will und das Notesleben verstehen will.
Dieser ganze diskutierte Gedanke kam mir aus folgendem Hintergrund und scheinbar fehlendem Wissen.
Ich erstelle mir z.B eine HTML-Seite, in der der ein Textfeld sichtbar ist. Den Inhalt dieses Textfeldes speichere ich in einer ODBC DB. Nun kann ich den Inhalt aus der ODBC DB in jedes andere Feld oder sonstwohin kopieren, da die DATEN dort gespeichert sind. Ich dachte so einen Bereich gibt es auch in einer Notes DB wo einfach der Inhalt eines Feldes steht und man darauf zugreiffen kann. Ich habe eine Notes DB bis jetzt quasi so verstanden, dass die den optischen Teil und den Datenteil in einem enthällt. Löscht man (im übertragenen Sinn) die HTML Datei, ist das Feld in der ODBC DB trotzallem noch gefüllt und könnte auch von einer anderen HTML-Datei bearbeitet werden. Bei passenden Zugriffsrechten könnte die HTML Datei auch ganz wo anders liegen, sofern ich von Dort in den immernoch bestehenden Datenspeicher schreiben darf.

Vielleicht können wir dieses Thema ganz einfach beenden  mit einer ganz einfachen Frage

Kann ich einfach den Inhalt des Feldes A in meiner DB in ein gleichnamiges Feld A in einer anderen DB kopieren? Wenn das geht, dann geht sehr wahrscheinlich auch der Rest den ich mir gedacht habe..

Die Sache mit Pudels Kern.. Ich bin derzeit noch nicht soweit um große Dinge selber zu Programmieren.. Das heisst ich kann hier nicht die Quellcodeseiten runterpasten. Viele meiner Fragen beziehen sich auf eine Sache, bei der ich gerne wissen will ob das theoretisch möglich ist. Wenn ich dann weiss "Ja das geht" und bestenfalls noch einen Tipp erhalte, beisse ich mich an meinen gesammelten TestDBs durch.
Jetzt steh ich eben vor der Aufgabe "Zwei identische Masken in ansich unterschiedlichen DBs" und dort möchte ich einfach nur ein Feld füllen... Mehr versuche ich dann später
« Letzte Änderung: 30.08.04 - 17:26:40 von DatenDuck »

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #13 am: 30.08.04 - 17:51:41 »
OK, jetzt habe ich's verstanden, und jetzt kann ich Dir auch den Passenden Tipp geben.

ALSO:

Zunächst mal: Verabschiede Dich komplett von Deinem Wissen über ODBC. Das hilft Dir im Notes- Umfeld GAR NIX.

Und jetzt Zu Deinem Problem:

Solche Dinge macht man in Notes normalerweise über eine Zentrale "Konfigurations-Datenbank"...

Die Daten sind ZENTRAL vorhanden, aber eben zugriffsgeschützt.

Du hast eine "Konfig-Maske" in dieser Zentralen DB und dort fügst Du zwei Felder hinzu:

"ZielDatenbank" und (gegebenenfalls) "User".

Jetzt brauchst Du in Deinen "Ziel- Datenbanken" nur zu wissen, wo die "Konfigurations-DB" liegt, und erstellst eine Passende Konfiguration über

@Command([Compose]; "DeinServer" : "KonfigDB.nsf" ; "DeineMaske" )

Geändert wird das Dokument dann in der Konfig- DB selbst... (oder per Script aus der Ziel- DB heraus...)

So... Dieses passende Konfig- Dokument enthält den Dateinamen der "Ziel-DB" im Feld "ZielDatenbank" und den aktuellen User (sofern es pro Datenbank unterschiedliche User gibt) im Feld "User"

dann werden die anderen Daten abgeändert und das Dokument gespeichert.

Der Agent in der Ziel- Datenbank liest nun NICHT das Dokument in der Datenbank selbst aus, sondern holt sich die Daten beispielsweise über ein DBLookup aus der Konfig- DB mit dem Schlüssel DBName und (ggf) User.

Wenn Du jetzt Pfade ändern / andere Einstellungen korrigieren willst, dann muss Dein "Korrektur- Agent" nur noch eine Datenbank durchforsten, und dort die einstellungen ändern...

Das ist das grobe Gerüst.

ABER: Das ganze ist ein recht anspruchsvolles Projekt, bei dem Du -mit Deinem bisherigen Wissen- noch auf einige Stolpersteine stossen wirst...

Trotzdem kommst Du so ans Ziel. Dein anderer Ansatz ist QUATSCH und sollte nicht weiter verfolgt werden.

HTH
Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

DatenDuck

  • Gast
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #14 am: 30.08.04 - 18:06:42 »
Vielen Dank für den Tipp,

aber dadruch entsteht ein Problem was ich eigentlich umfahren wollte.. (Indem jeder sozusagen seine eigene Ausgabe von den Einstellungen hat)
Wenn nämlich mehere Benutzer diese KonfigDB verwenden, kann niemand mehr seine eigenen Einstellungen vornehmen.. Somit könnte ich ein Feld "Benutzername" nicht verwenden.
Oder irre ich mich?

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #15 am: 30.08.04 - 19:20:04 »
Auch das ist mit einer zentralen ConfigDB möglich - da können natürlich auch Setup-Dokumente allgemein und / oder user-spezifisch sein.
Ich glaube aber, dass dieses Thema bei Dir noch sehr unausgereift in der Spezifikation ist. Was soll zum Beispiel eine Konfigurationsmaske, die in irgendeiner DB plötzlich vorhanden ist ? Wie sollte der User / Owner der DB denn an diese Maske und vor allem an die damit vorhandenen Daten herankommen - da braucht es ja noch ein paar mehr Design-Elemente.

Offensichtlich scheint Dein Agent ja auch im FrontEnd laufen zu sollen:
Zitat
In einer anderen DB bewirkt diese Komponente das Exportieren des angezeigten Dokuments als RTF-Datei in einen bestimmten Pfad usw. In beiden Fällen wird in dem angezeigten Dokument gearbeitet.
Da wirst Du es ggf. mit einer "von aussen" zur Verfügung gestellten Pfadangabe schwieirg haben, mit der lokalen Festplatte des Users klar zu kommen. Da sind viele weitere Prüfungen erforderlich ...

Irgendwie ahne ich (ganz schwach), auf was Du hinaus willst - aber kapieren tue ich es immer noch nicht.

Bernhard

PS: Das könnte ein sehr interessanter Thread werden ;)

DatenDuck

  • Gast
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #16 am: 31.08.04 - 10:17:17 »
Öh naja ich hatte ja (so dachte ich es zumindest anfangs) nichts Großes vor.. Die Diskussion ist nur deshalb so "explodiert" weil ihr natürlich mit eurem Wissen jede Fehlerquelle beseitigen wollt und mir natürlich nichts sagen wollt was, wenn man es "einfach so mal macht" zum Chaos führt oder von vornherein nicht sinnvoll scheint!

Ich dachte mir eben, es ist leichter möglich, Felder die in anderen DBs identisch sind, bei Bedarf mit einem Inhalt aus meinem (natürlich auch identischen) Feld zu füllen (und dass eben ohne wissen zu müssen, in welchen DBs das Feld existiert). Ob sinnvoll oder nicht, ist ja erstmal nebensächlich (für mich ;), denn wenn ich später die Routine habe, werde ich sicher auch sagen "OK das war Murks und geht wesentlich komfortabeler"). Für den Anfang suchte ich eben eine Möglichkeit, einen Feldwert in beliebige Datenbanken zu kopieren, sofern das Feld eben da ist.
Denn angenommen es gibt ein Designelement, das in jeder DB gleich ist und alle nötigen Prüfungen usw. werden vorgenommen KÖNNTE es ja theoretisch möglich sein oder?
Stellt euch einfach vor, jeder hat in seiner DB das Feld "Wasauchimmer" welches für nichts anderes verwendet wird ausser, dass es eben da ist... Nun kann ja nix kaputt gehen wenn ich da was reinschreiben will. Würde es in dieser Situation eine einfache Möglichkeit geben?

Ich denke ich habe Anfangs die Sache so ausgedrückt, als ob das ein riesen Projekt mit allem Drum und Dran wäre... Aber das ist es ja nicht denn im Prinzip gehts nur um die "Kopierfrage" ;)

Bis dann,
-Moritz

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #17 am: 31.08.04 - 11:11:55 »
"es geht NUR um die Kopierfrage"...

Das ist eben NICHT so, wie wir die ganze Zeit schon versuchen, Dir klar zu machen.

ERSTENS: Ob ein Design- Element vorhanden ist, oder nicht (im übrigen gibt es keine Felder ohne Masken, zumindest keine, die man befüllen könnte) kann man natürlich prüfen, aber dazu benötigt man die bereits früher erwähnte Datenbank- Design- Klasse aus der Sandbox.

AUSSERDEM kann man nicht selektieren "SELECT ALLE Datenbanken, die eine Maske enthalten", sondern muss ALLE Datenbanken auf dem Server durchlaufen, öffnen (Fehler abfangen, wenn man keinen Zugriff auf die DB hat ), prüfen, ob das Design element vorhanden ist, und DANN die Daten kopieren.

ZUM KOPIEREN muss man schauen, ob mit der Maske schon ein Dokument erstellt worden ist, wenn ja: dieses abändern, wenn nein, ein neues Dokument erstellen. Vorraussetzung: Man hat in der Datenbank, deren Struktur man nicht kennt, überhaupt Schreibrechte...

Um das aber herauszufinden reicht eine Maske allein nicht, sondern man braucht MINDESTENS eine Ansicht, oder aber alle Datenbanken müssen Volltextindiziert sein....

Du willst eine EINFACHE Lösung, und das was Du anstrebst ist alles andere als einfach, sondern lässt sich nur mit FUNDAMENTALEN Script- Kenntnissen lösen.

Die Lösung, die ich Dir angeboten habe, lässt sich OHNE Script- Kenntnisse mit einfachen Formeln lösen (ja, mit Formel- Sprache sollte jeder Notes- Neuling beginnen, LotusScript sieht zwar "bekannter" aus, weil es aussieht wie VisualBasic, sollte aber nur dafür verwendet werden, aufgaben zu lösen, die Partout nicht mit Formel gehen. Formelsprache ist nämlich um ein VIELFACHES performanter...)

Und jetzt kannst Du ja selbst entscheiden, ob Du den Rat annehmen willst, oder ob Du weiterhin auf Deiner SCHNAPSIDEE beharrst.

Ich klinke mich hier nämlich aus der Diskussion aus.

Gruß
Tode
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

DatenDuck

  • Gast
Re:Inhalte in strukurell unterschiedliche Datenbanken kopieren
« Antwort #18 am: 31.08.04 - 11:47:19 »
lol naja Du hast damit ja meine Frage beantwortet... Nämlich dass die "kleine Kopierfrage" eben auch in einer nochsoeinfachen Umgebung nicht klein ist.. Das wollte ich ja wissen. Ich dachte Anfangs der ganze Umstand entsteht nur bei komplexen DBs usw.

Vielen Dank allen für eure Hilfe!
-Moritz
« Letzte Änderung: 31.08.04 - 11:48:17 von DatenDuck »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz