Domino 9 und frühere Versionen > Entwicklung
Zeitüberschneidung Reservierungen
Friesenjung:
Hallo,
in Zusammenhang mit der Erstellung einer Reservierungsdatenbank, möchte bei einer Neuanlage auf Zeitüberschneidungen mit bestehenden Reservierungen prüfen.
Ich benutze einen Button Prüfung mit folgendem Code:
ENVIRONMENT Konflikt := "Nein";
ENVIRONMENT PlatzNr. := PlatzNr.;
ENVIRONMENT von := @Text (von);
ENVIRONMENT bis := @Text (bis);
@Command ([ToolsRunMacro]; "Prüfung")
Der Agent Prüfung hat folgenden Code:
SuchPlatzNr. :=@Environment ("PlatzNr.");
SuchBeginn :=@TextToTime (@Environment ("von"));
SuchEnde :=@TextToTime (@Environment ("bis"));
@If (PlatzNr. != SuchPlatzNr.;
@Success;
@If (SuchBeginn>bis) | (SuchEnde<von);
@Success;
@Prompt ( [OK]; "Zeitüberschneidung mit einer bestehenden Reservierung" ;Nachname+" : "+@Text(von)+" - "+@Text(bis) )
)&@Environment ("Konflikt";"");
SELECT @All
Der Button Reservierung hat dann folgenden Code:
@If (@Environment ("Konflikt") = "";
@Return (@Prompt ([OK];"Eine Speicherung ist nicht möglich !" ; " Die Reservierung nochmals auf Zeitüberschneidung prüfen ! " ));
@Success);
@Command ( [FileSave]);
@Command ([FileCloseWindow]);
ENVIRONMENT PlatzNr. :="";
ENVIRONMENT von :="";
ENVIRONMENT bis :="";
ENVIRONMENT Konflikt :="";
Die Prüfung für einen freien Termin klappt, dann möchte ich speichern und kommt der Prompt "Eine Speicherung ist...". Ich habe das Gefühl ich sehe den Wald vor lauter Bäumen nicht. Vielleicht erkennt einer von euch den Fehler.
Vielen Dank für eure Bemühungen
Friesenjung
Rob Green:
oh weh, schlimmes Thema .. aba.. vielleicht das hier? > http://www.atnotes.de/index.php?board=7;action=display;threadid=6094;start=20
koehlerbv:
Nein, der genannte Thread hat nichts mit Friesenjungs Problem zu tun.
Ganz raffe ich die Fehlerursache noch nicht, auf jeden Fall ist aber die Verwendung von @Success falsch und führt evtl. zu unerwarteten Ergebnissen: @Success ist nur für den Einsatz in Validierungsformeln gedacht.
Ersetze mal alle @Success und poste dann ggf. nochmal.
HTH,
Bernhard
Friesenjung:
Danke erstmal,
leider kein Fortschritt, ohne @success läuft die Prüfung nicht durch, sondern bleibt gleich beim ersten Eintrag mit dem Nachnamen hängen.
Schade, vielleicht findet ja jemand die Schwachstelle - wäre echt Klasse.
Friesenjung
koehlerbv:
Mal ein Beispiel (OHNE Funktionsprüfung):
SuchPlatzNr. :=@Environment ("PlatzNr.");
SuchBeginn :=@TextToTime (@Environment ("von"));
SuchEnde :=@TextToTime (@Environment ("bis"));
@If (PlatzNr. != SuchPlatzNr.;
@Success;
@If (SuchBeginn>bis) | (SuchEnde<von);
@Return ("");
@Prompt ( [OK]; "Zeitüberschneidung mit einer bestehenden Reservierung" ;Nachname+" : "+@Text(von)+" - "+@Text(bis) )
);
@Environment ("Konflikt";"");
SELECT @All
@Return ("") bricht den Code ab.
@Environment darf so nicht mit @Prompt verkettet werden, wie Du das gemacht hast - das funktioniert gar nicht ("&" = AND)
Vielleicht hilft Dir das ja schon weiter.
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln