Beim Bericht Wöchentliche Übersicht über Anrufe wird zunächst ein Formular mit dem zu wählenden Zeitraum angezeigt. Hier wird das aktuelle und das Datum eine Woche vorher gezeigt.
Dies wird in der SystemCommandy basierten Klasse
WeekDateSetter implementiert:
public class WeekDateSetter implements SystemCommand { ... public Object action(Object[] args, Macro macro) { long currentTime = System.currentTimeMillis(); Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(currentTime); SWindow window = EvaUtils.getActiveSWindow(); SFormattedField fromDate = (SFormattedField) window .getObject("FromDate"); SFormattedField toDate = (SFormattedField) window.getObject("ToDate"); String toDateString = calendar.get(Calendar.DAY_OF_MONTH) + "." + (calendar.get(Calendar.MONTH) + 1) + "." + calendar.get(Calendar.YEAR); calendar.set(Calendar.WEEK_OF_YEAR, calendar.get(Calendar.WEEK_OF_YEAR) - 1); String fromDateString = calendar.get(Calendar.DAY_OF_MONTH) + "." + (calendar.get(Calendar.MONTH) + 1) + ". + calendar.get(Calendar.YEAR); fromDate.setText(fromDateString); toDate.setText(toDateString); return null; } }
Es wird das jeweilige Datum in die Felder FromDate und
ToDate gesetzt. Aufgerufen wird der Befehl durch das Setzen der
AfterInitializeMacro Eigenschaft im Formular
WeekSelection.form.