Hallo,
ich habe da einen Javaagenten in einer Notesdatenbank (Fahrtkostenabrechnung) laufen, der soll mir eine DTA-Datei erstellen.
Führe ich diesen Agenten unter Notes aus, arbeitet er einwandfrei. Lade ich die DB aber aus dem Web (egal, ob über Mozilla oder Internet Explorer), schreibt er mir die DTA-Datei nicht
dahin wo ich's gern hätte (C: oder D:); sondern es geht nur wenn ich ohne Laufwerksangabe arbeite, dann schreibt er die Datei auf den Notesserver.
Ich führe den Agenten unter meinem Namen als Webbenutzer aus.
Liegt es eventl. an fehlenden Zugriffsrechten ? Ich hätte erwartet, dass ich zumindest auf C: bzw. D: schreiben könnte.
Gruß
Harald
import lotus.domino.*;
import java.util.* ;
import java.text.*;
import java.io.File;
import java.io.FileWriter;
public class JavaAgent extends AgentBase {
public void NotesMain() {
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
Database db = agentContext.getCurrentDatabase();
DateTime dt = session.createDateTime("Today");
SimpleDateFormat sdf = new SimpleDateFormat( "ddMMyy" );
Document Buchungsnachweis = db.createDocument();
Buchungsnachweis.replaceItemValue("Form", "(Buchungsnachweis)");
Buchungsnachweis.replaceItemValue("Datum", dt.getLocalTime() );
RichTextItem Empfänger = Buchungsnachweis.createRichTextItem("Empfänger");
RichTextItem Verwendungszweck = Buchungsnachweis.createRichTextItem("Verwendungszweck");
RichTextItem Betrag = Buchungsnachweis.createRichTextItem("Betrag");
RichTextItem Konto = Buchungsnachweis.createRichTextItem("Konto");
View view = db.getView("Profile");
Document profilDoc = view.getFirstDocument();
Item item = profilDoc.getFirstItem("Absender");
String Absender = item.getText();
Absender = Absender.toUpperCase();
item = profilDoc.getFirstItem("Bankleitzahl");
String Bankleitzahl = item.getText();
item = profilDoc.getFirstItem("Bankkonto");
String Bankkonto = item.getText();
item = profilDoc.getFirstItem("Laufwerk");
String Datei = "D:\\DTAUS0.TXT";
String A_Satz;
String C_Satz;
String E_Satz;
Double Blz = null;
long Bankleitzahl1 = 0;
Blz = Double.valueOf(Bankleitzahl);
Bankleitzahl1 = 0;
long Betrag1 = 0;
long Kontonummer1 = 0;
Double Kto = null;
int Anzahl = 0;
String B ;
String Spaces ;
double BSumme = 0 ;
String strAnzahl = null ;
String Ersteller = agentContext.getEffectiveUserName();
File file;
file = new File(Datei);
FileWriter out;
out = new FileWriter(file);
// Erstelle DatenSatz_A
Date sdt = new Date();
String strHeuteddmmyy = sdf.format( sdt ) ;
A_Satz = "0128"+"A"+"GK"+Bankleitzahl+"00000000"+Absender+strHeuteddmmyy+" "+Bankkonto+"0000000000 1";
A_Satz = A_Satz.toUpperCase();
out.write(A_Satz);
//diverse weitere Handlungen
out.flush();
out.close();