Hi zusammen,
ich habe schon einiges ver- und gesucht um das folgende Problem zu lösen - bislang leider ohne Erfolg. Es geht um folgendes:
Ich habe ein Formular (OOo Base) mit einem Tabellenkontrollfeld das u.a. zwei Datumsfelder enthält. Es handelt sich hier um Felder einer Rechnung, das erste ist das Rechnungsdatum ("Datum"), das zweit das Feld mit dem "zahlbar bis"-Datum ("ZahlbarBis").
Nun will ich, wenn man das Feld "Datum" verlässt und das "ZahlbarBis"-Feld noch leer ist, in dieses das Datum " 'Rechnungsdatum' + 14" Tage eintragen.
Eigentlich dachte ich, dass das mit folgendem Code gehen müsste:
Code: Alles auswählen
' Prozedur um nach der Eingabe des Rechnungsdatum das Zahlbar-Bis-Datum automatisch zu ergänzen
Sub AutoZahlbarBis
Dim oDoc as Object, oForm as Object, oTabelle as Object, oDatum as Object, oZahlbarBis as Object
oDoc = ThisComponent
oForm = oDoc.drawpage.forms(0).getByName("AuftraegeForm").getByName("RechnungenForm")
oTabelle = oForm.getByName("TabelleRechnungen")
oDatum = oTabelle.getByName("Datum")
oZahlbarBis = oTabelle.getByName("ZahlbarBis")
' Nur ergänzen, wenn ZahlbarBis noch nicht eingegeben
If oZahlbarBis.Date = 0 Then
oZahlbarBis.Date = CDateToIso(CDateFromIso(oDatum.Date) + 14)
End If
End Sub
Leider hat dieser Code nicht die gewünschte Auswirkung - das Feld in der Tabelle bleibt leer.
(Bei einem "normalen" Datumsfeld, das nicht in einer Tabelle ist, funktioniert der Code übrigens.)
Auch wenn ich das Feld manuell mit
setze, erscheint kein Wert in dem Feld.
Intern wird er aber wohl gespeichert, denn ein direktes
zeigt "20050505" an.
Ich hab keine Ahnung, wo hier mein Fehler sein könnte, aber vielleicht kann mir ja jemand von euch weiterhelfen...
Viele Grüße
FeG