Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Blubb am 26.07.06 - 14:19:27
-
Hi,
ich versuche mit einem Java Programm (in Eclipse erstellt) in einer Notes Datenbank einen neuen Eintrag zu generieren.
Die Datenbank beinhaltet Daten von Material (Pruefmittel), Artikelnummer, Kategorie usw.
Ich hab sogar Daten von bestehenden Einträgen schon ändern können aber leider keine neuen Anlegen.
Hier mal ein Beispiel-Code aus meinem Programm :
(So is es auch in der Doku beschrieben, aber so klappts nicht)
Document docu = db.createDocument();
docu.appendItemValue("EquipmentProfile", "MegaHammer");
docu.appendItemValue("Department", "QM");
docu.appendItemValue("ArticleNumber", "1111");
docu.save
Hab auch schon andere Varianten probiert, also z.B. ein Document zu erstellen und in die DocumentCollection hinzuzufügen, ohne Erfolg. Die Programme kompilieren alle und laufen, nur dass die Daten nicht in der Datenbank gespeichert werden.
Bin ich über "Document" auch auf dem richtigen weg?
Hat jemand so etwas schon geschafft, wenn ja, wie?
Danke
-
Ich befürchte eher, dass die neuen Dokumente lediglich nicht angezeigt werden - das Item Form wird offensichtlich nicht gesetzt.
Bernhard
-
Werden die Docs nur nicht gezeigt, oder sind die definitiv nicht da ?
Uups, Bernhard war wieder schneller... ;)
-
Hi,
also die in der Ansicht angezeigten Dokumente sollten alle sein die vorhanden sind und dort sind sie nicht mit dabei.
Ich selber kenn mich in Lotus Notes nicht so gut aus. Ein Kollege hat mir auch keine andere Lösung nennen können auf die Daten zuzugreifen, bzw die sie anzeigen zu lassen.
-
Also, man notiere sich per Datenbankeigenschaften (2. Reiter von links) die Anzahl der Docs, lasse anschliessend das JAVA-Pgm laufen und kontrolliere danach nochmals die Anzahl der Docs. Sind es mehr geworden ?
Dann kommt's in der Ansicht natürlich noch auf die Select-Formel an, was gezeigt wird bzw nicht.
-
Supi,
das hat schon mal geklappt.
Also wenn mein Programm durch gelaufen ist, hab ich 1 Dokument mehr.
D.h. meine Dokumente werden gespeichert nur nicht angezeigt.
An was könnte das dann noch liegen?
-
Wie Bernhard bereits sagte musst Du noch das Item "Form" belegen.
Deine Ansicht hat mit Sicherheit eine Zugriffsformel a la
SELECT Form = "..."
Du musst nun herausfinden, welcher Wert für Form verwendet werden muss. Wenn es bereits Dokumente des Typs gibt, kannst Du in den Dokumenteigenschaften danach suchen.
Andreas
-
Wer lesen kann, ist eindeutig im Vorteil !
Dann kommt's in der Ansicht natürlich noch auf die Select-Formel an, was gezeigt wird bzw nicht.
das Item Form wird offensichtlich nicht gesetzt.
1. Das Feld namens "Form" fehlt !
2. Wie heisst denn die Select-Formel in der Ansicht ?
Das sind jetzt aber alles Basics, die man kennen sollte ;D
-
Ich kann nur empfehlen, für solche Stunts jemanden heranzuziehen, der sowohl Ahnung von Notes als auch von der betreffenden Applikation hat. Steht beides nicht nur Verfügung, kann man nur die Finger davon lassen.
Bernhard
-
@Bernhard,
lass ihn doch. Wenn's daneben geht, ist mal wieder eine Stelle frei.
-
Lasst ihn doch, es ist doch nur eine Materialverwaltung und die Daten werden nach Notes gepushed.
Also ein lustige kleine Applikation zum Üben.
Andreas
-
Danke für eure Antworten.
Braucht euch nicht so aufzuregen, bin neuling und mach grad ne Diplomarbeit.
Irgendwann fängt wohl jeder mal an, oder?
-
Wir regen uns ja nicht auf.....
Nur, wenn man eine Diplomarbeit macht, sollte man auch lesen können.
-
Ja schon, aber die Antwort hat mir halt mal gar nix gebracht.
Deswegen hatt ich das nicht auf die Antworten von Klauss bezogen, die mir einiges mehr geholfen haben.
-
:-P
So, zurück zum fachlichen sonst ist das hier dicht.
Alle Tipps stehen hier, sogar mehrfach. Du solltest jetzt mal wieder ein bisschen proggen.
Andreas
-
Also,
die Select - Anweisung sieht folgendermaßen aus.
SELECT Form = "Equipment" & MarkedForDeletion!="Yes" & State!="verschrottet"
wäre nett mir hier noch zu helfen.
-
So, zum x-ten Mal: in deinem Java-Pgm wird das Feld "Form" weder angesprochen noch gefüllt !
Vielleicht so etwas in der Form : docu.appendItemValue("Form", "Wie_heisst_meine_Maske");
Und anschliessend neue Ansicht mit: Select Form = "Wie_heisst_meine_Maske"
-
Dann so:
Document docu = db.createDocument();
docu.appendItemValue("Form", "Equipment");
docu.appendItemValue("EquipmentProfile", "MegaHammer");
docu.appendItemValue("Department", "QM");
docu.appendItemValue("ArticleNumber", "1111");
docu.save
Wenn das geht. würde ich noch das
appendItemValue
austauschen durch
replaceItemValue
Wie gesagt musst Du das Feld "Form" setzen. Was ist denn daran so schwer ???
Andreas
-
Super,
jetzt siehts besser aus :)
danke für eure Hilfe
-
Hallo!
Nur falls den Thread wer liest.
docu.save ist sicher nicht Java. Das sollte wahrscheinlich
docu.save();
heissen.
Grüße
Ralf