1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.fhw.cabaweb.webfrontend.forms.simple;
20
21 import java.util.Iterator;
22
23 import javax.servlet.http.HttpServletRequest;
24
25 import org.apache.commons.logging.Log;
26 import org.apache.commons.logging.LogFactory;
27 import org.apache.struts.action.ActionError;
28 import org.apache.struts.action.ActionErrors;
29 import org.apache.struts.action.ActionForm;
30 import org.apache.struts.action.ActionMapping;
31
32 /***
33 * Formularklasse der MVC Architektur von Struts.
34 * In diesem Fall für eine einzelne Reporterzeugung (Create/Delete/Edit einer Reporterzeugung)
35 *
36 * @author <a href="mailto:thomas.vogt@tvc-software.com">Thomas Vogt</a>
37 * @version Version 1.0 05.09.2004
38 */
39 public final class ReporterzeugungForm extends ActionForm
40 {
41 /***
42 * The <code>Log</code> instance for this application.
43 */
44 private Log log = LogFactory.getLog("org.fhw.cabaweb.webfrontend.forms.simple");
45
46
47 /*** Art der Aktion die wir durchführen wollen (Create, Delete or Edit) - Default ist Create. */
48 private String action = "Create";
49 /*** Die Reportnummer */
50 private Integer reportnummer = null;
51 /*** Die Projektnummer */
52 private Integer projektnummer = null;
53 /*** Artificial PrimaryKey für die Identifikation der Seite des Reports */
54 private Integer seite;
55 /*** Artificial PrimaryKey Die Position innerhalb der Seite */
56 private Integer position;
57 /*** Die Sprachnummer */
58 private Integer sprachnummer = null;
59 /*** Der darzustellende Gruppierungsname */
60 private String gruppierungsname;
61 /*** Der darzustellende Untergruppierungsname */
62 private String untergruppierungsname;
63 /*** Der darzustellende Feldname */
64 private String feldname;
65 /*** Der darzustellende String */
66 private String text;
67 /*** Ausrichtung des Textes */
68 private String textalign;
69 /*** Stil des Textes */
70 private String textstil;
71 /*** Wiederholungsfeld ??? */
72 private Boolean wiederholung;
73 /*** Art der Wiederholung */
74 private String wiederholungstyp;
75 /*** Name des Feldes der Bedingung unter der das Feld angezeigt wird */
76 private String feldbedingung;
77 /*** Wert des Feldes der Bedingung unter der das Feld angezeigt wird */
78 private String feldbedingungwert;
79 /*** Typ des Feldes der Bedingung unter der das Feld angezeigt wird */
80 private String feldbedingungtyp;
81 /*** Quartal ab dem der Wert angezeigt wird */
82 private Integer feldbedingungstartquatal;
83 /*** Quartal bis zu dem der Wert angezeigt wird */
84 private Integer feldbedingungendquartal;
85 /*** Ausrichtung des Wertes */
86 private String wertalign;
87 /*** Stil des Wertes */
88 private String wertstil;
89 /*** Position des Wertes */
90 private String wertposition;
91 /*** Wert Anzeigen ?? */
92 private Boolean wertanzeigen;
93 /*** Wertkennzeichen Anzeigen ?? */
94 private Boolean wertkennzeichenanzeigen;
95 /*** Ende einer Section ?? */
96 private Boolean sektionende;
97 /*** Ende einer Page ?? */
98 private Boolean seitenende;
99
100
101
102 /***
103 * GET Methode
104 *
105 * @return der Parameterwert
106 */
107 public String getAction()
108 {
109 return this.action;
110 }
111
112 /***
113 * SET Methode
114 *
115 * @param action Der zu setzende Parameterwert
116 */
117 public void setAction(String action)
118 {
119 this.action = action;
120 }
121
122 /***
123 * GET Methode
124 *
125 * @return der Parameterwert
126 */
127 public Integer getReportnummer()
128 {
129 return this.reportnummer;
130 }
131
132 /***
133 * GET Methode
134 *
135 * @return der Parameterwert
136 */
137 public Integer getProjektnummer()
138 {
139 return this.projektnummer;
140 }
141
142 /***
143 * SET Methode
144 *
145 * @param reportnummer Der zu setzende Parameterwert
146 */
147 public void setReportnummer(Integer reportnummer)
148 {
149 this.reportnummer = reportnummer;
150 }
151
152 /***
153 * SET Methode
154 *
155 * @param projektnummer Der zu setzende Parameterwert
156 */
157 public void setProjektnummer(Integer projektnummer)
158 {
159 this.projektnummer = projektnummer;
160 }
161
162
163 /***
164 * gets seite
165 * @return seite
166 */
167 public Integer getSeite() {
168 return seite;
169 }
170
171 /***
172 * sets seite
173 * @param seite seite
174 */
175 public void setSeite(Integer seite) {
176 this.seite = seite;
177 }
178
179 /***
180 * gets position
181 * @return position
182 */
183 public Integer getPosition() {
184 return position;
185 }
186
187 /***
188 * sets position
189 * @param position position
190 */
191 public void setPosition(Integer position) {
192 this.position = position;
193 }
194
195 /***
196 * Getter Methode für die zugeordnete Sprachnummer
197 *
198 * @return sprachnummer Die zugeordnete Sprachnummer
199 */
200 public Integer getSprachnummer()
201 {
202 return this.sprachnummer;
203 }
204
205 /***
206 * Setter Methode für den Parameter Sprachnummer
207 *
208 * @param sprachnummer Sprachnummer mit dem neuen Parameterwert
209 */
210 public void setSprachnummer(Integer sprachnummer)
211 {
212 this.sprachnummer = sprachnummer;
213 }
214
215 /***
216 * gets gruppierungsname
217 * @return gruppierungsname
218 */
219 public String getGruppierungsname() {
220 return gruppierungsname;
221 }
222
223 /***
224 * sets gruppierungsname
225 * @param gruppierungsname gruppierungsname
226 */
227 public void setGruppierungsname(String gruppierungsname) {
228 this.gruppierungsname = gruppierungsname;
229 }
230
231 /***
232 * gets untergruppierungsname
233 * @return untergruppierungsname
234 */
235 public String getUntergruppierungsname() {
236 return untergruppierungsname;
237 }
238
239 /***
240 * sets untergruppierungsname
241 * @param untergruppierungsname untergruppierungsname
242 */
243 public void setUntergruppierungsname(String untergruppierungsname) {
244 this.untergruppierungsname = untergruppierungsname;
245 }
246
247 /***
248 * gets feldname
249 * @return feldname
250 */
251 public String getFeldname() {
252 return feldname;
253 }
254
255 /***
256 * sets feldname
257 * @param feldname feldname
258 */
259 public void setFeldname(String feldname) {
260 this.feldname = feldname;
261 }
262
263 /***
264 * gets text
265 * @return text
266 */
267 public String getText() {
268 return text;
269 }
270
271 /***
272 * sets text
273 * @param text text
274 */
275 public void setText(String text) {
276 this.text = text;
277 }
278
279 /***
280 * gets feldbedingung
281 * @return feldbedingung
282 */
283 public String getFeldbedingung()
284 {
285 return feldbedingung;
286 }
287
288 /***
289 * gets feldbedingungendquartal
290 * @return feldbedingungendquartal
291 */
292 public Integer getFeldbedingungendquartal()
293 {
294 return feldbedingungendquartal;
295 }
296
297 /***
298 * gets feldbedingungstartquatal
299 * @return feldbedingungstartquatal
300 */
301 public Integer getFeldbedingungstartquatal()
302 {
303 return feldbedingungstartquatal;
304 }
305
306 /***
307 * gets feldbedingungtyp
308 * @return feldbedingungtyp
309 */
310 public String getFeldbedingungtyp()
311 {
312 return feldbedingungtyp;
313 }
314
315 /***
316 * gets feldbedingungwert
317 * @return feldbedingungwert
318 */
319 public String getFeldbedingungwert()
320 {
321 return feldbedingungwert;
322 }
323
324 /***
325 * gets sektionende
326 * @return sektionende
327 */
328 public Boolean getSektionende()
329 {
330 return sektionende;
331 }
332
333 /***
334 * gets seitenende
335 * @return seitenende
336 */
337 public Boolean getSeitenende()
338 {
339 return seitenende;
340 }
341
342 /***
343 * gets textalign
344 * @return textalign
345 */
346 public String getTextalign()
347 {
348 return textalign;
349 }
350
351 /***
352 * gets textstil
353 * @return textstil
354 */
355 public String getTextstil()
356 {
357 return textstil;
358 }
359
360 /***
361 * gets wertalign
362 * @return wertalign
363 */
364 public String getWertalign()
365 {
366 return wertalign;
367 }
368
369 /***
370 * gets wertanzeigen
371 * @return wertanzeigen
372 */
373 public Boolean getWertanzeigen()
374 {
375 return wertanzeigen;
376 }
377
378 /***
379 * gets wertkennzeichenanzeigen
380 * @return wertkennzeichenanzeigen
381 */
382 public Boolean getWertkennzeichenanzeigen()
383 {
384 return wertkennzeichenanzeigen;
385 }
386
387 /***
388 * gets wertposition
389 * @return wertposition
390 */
391 public String getWertposition()
392 {
393 return wertposition;
394 }
395
396 /***
397 * gets wertstil
398 * @return wertstil
399 */
400 public String getWertstil()
401 {
402 return wertstil;
403 }
404
405 /***
406 * gets wiederholung
407 * @return wiederholung
408 */
409 public Boolean getWiederholung()
410 {
411 return wiederholung;
412 }
413
414 /***
415 * gets wiederholungstyp
416 * @return wiederholungstyp
417 */
418 public String getWiederholungstyp()
419 {
420 return wiederholungstyp;
421 }
422
423 /***
424 * sets feldbedingung
425 * @param feldbedingung
426 */
427 public void setFeldbedingung(String feldbedingung)
428 {
429 this.feldbedingung = feldbedingung;
430 }
431
432 /***
433 * sets feldbedingungendquartal
434 * @param feldbedingungendquartal
435 */
436 public void setFeldbedingungendquartal(Integer feldbedingungendquartal)
437 {
438 this.feldbedingungendquartal = feldbedingungendquartal;
439 }
440
441 /***
442 * sets feldbedingungstartquatal
443 * @param feldbedingungstartquatal
444 */
445 public void setFeldbedingungstartquatal(Integer feldbedingungstartquatal)
446 {
447 this.feldbedingungstartquatal = feldbedingungstartquatal;
448 }
449
450 /***
451 * sets feldbedingungtyp
452 * @param feldbedingungtyp
453 */
454 public void setFeldbedingungtyp(String feldbedingungtyp)
455 {
456 this.feldbedingungtyp = feldbedingungtyp;
457 }
458
459 /***
460 * sets feldbedingungwert
461 * @param feldbedingungwert
462 */
463 public void setFeldbedingungwert(String feldbedingungwert)
464 {
465 this.feldbedingungwert = feldbedingungwert;
466 }
467
468 /***
469 * sets sektionende
470 * @param sektionende
471 */
472 public void setSektionende(Boolean sektionende)
473 {
474 this.sektionende = sektionende;
475 }
476
477 /***
478 * sets seitenende
479 * @param seitenende
480 */
481 public void setSeitenende(Boolean seitenende)
482 {
483 this.seitenende = seitenende;
484 }
485
486 /***
487 * sets textalign
488 * @param textalign
489 */
490 public void setTextalign(String textalign)
491 {
492 this.textalign = textalign;
493 }
494
495 /***
496 * sets textstil
497 * @param textstil
498 */
499 public void setTextstil(String textstil)
500 {
501 this.textstil = textstil;
502 }
503
504 /***
505 * sets wertalign
506 * @param wertalign
507 */
508 public void setWertalign(String wertalign)
509 {
510 this.wertalign = wertalign;
511 }
512
513 /***
514 * sets wertanzeigen
515 * @param wertanzeigen
516 */
517 public void setWertanzeigen(Boolean wertanzeigen)
518 {
519 this.wertanzeigen = wertanzeigen;
520 }
521
522 /***
523 * sets wertkennzeichenanzeigen
524 * @param wertkennzeichenanzeigen
525 */
526 public void setWertkennzeichenanzeigen(Boolean wertkennzeichenanzeigen)
527 {
528 this.wertkennzeichenanzeigen = wertkennzeichenanzeigen;
529 }
530
531 /***
532 * sets wertposition
533 * @param wertposition
534 */
535 public void setWertposition(String wertposition)
536 {
537 this.wertposition = wertposition;
538 }
539
540 /***
541 * sets wertstil
542 * @param wertstil
543 */
544 public void setWertstil(String wertstil)
545 {
546 this.wertstil = wertstil;
547 }
548
549 /***
550 * sets wiederholung
551 * @param wiederholung
552 */
553 public void setWiederholung(Boolean wiederholung)
554 {
555 this.wiederholung = wiederholung;
556 }
557
558 /***
559 * sets wiederholungstyp
560 * @param wiederholungstyp
561 */
562 public void setWiederholungstyp(String wiederholungstyp)
563 {
564 this.wiederholungstyp = wiederholungstyp;
565 }
566
567
568
569 /***
570 * Zurücksetzen aller Parameterwerte auf die Default Werte.
571 *
572 * @param mapping Das Mapping das benutzt wurde um diese Instanz zu selektieren
573 * @param request Die Servlet Anfrage die wir gerade bearbeiten
574 */
575 public void reset(ActionMapping mapping, HttpServletRequest request)
576 {
577 this.setAction("Create");
578 this.setReportnummer(null);
579 this.setProjektnummer(null);
580 this.setSeite(null);
581 this.setPosition(null);
582 this.setSprachnummer(null);
583 this.setGruppierungsname(null);
584 this.setUntergruppierungsname(null);
585 this.setFeldname(null);
586 this.setText(null);
587 this.setTextalign(null);
588 this.setTextstil(null);
589 this.setWiederholung(null);
590 this.setWiederholungstyp(null);
591 this.setFeldbedingung(null);
592 this.setFeldbedingungwert(null);
593 this.setFeldbedingungtyp(null);
594 this.setFeldbedingungstartquatal(null);
595 this.setFeldbedingungendquartal(null);
596 this.setWertalign(null);
597 this.setWertstil(null);
598 this.setWertposition(null);
599 this.setWertanzeigen(null);
600 this.setWertkennzeichenanzeigen(null);
601 this.setSektionende(null);
602 this.setSeitenende(null);
603 }
604
605 /***
606 * Validieren der mit diesem Request übergebenen Paramter Werte. Wenn Fehler
607 * bei der Validierung auftreten wird <code>ActionErrors</code> Objekt,
608 * das die Fehler enthält zurückgegeben.
609 * Wenn kein Fehler bei der Validierung auftritt wird <code>null</code> bzw.
610 * ein leeres <code>ActionErrors</code> Objekt zurückgegeben
611 *
612 * @param mapping Das Mapping das benutzt wurde um diese Instanz zu selektieren
613 * (siehe struts-config.xml)
614 * @param request Das Servlet Anfrage Objekt
615 */
616 public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)
617 {
618
619 ActionErrors errors = new ActionErrors();
620
621 if (projektnummer == null)
622 errors.add("projektnummer", new ActionError("error.field.edit.reporterzeugung.projektnummer.empty"));
623
624 if (reportnummer == null)
625 errors.add("reportnummer", new ActionError("error.field.edit.reporterzeugung.reportnummer.empty"));
626
627 if (sprachnummer == null)
628 errors.add("sprachnummer", new ActionError("error.field.edit.reporterzeugung.sprachnummer.empty"));
629
630 if (seite == null)
631 errors.add("seite", new ActionError("error.field.edit.reporterzeugung.seite.empty"));
632
633 if (position == null)
634 errors.add("position", new ActionError("error.field.edit.reporterzeugung.position.empty"));
635
636 if( !action.equals("Delete") )
637 {
638 int count = 0;
639 if(gruppierungsname != null && gruppierungsname.trim().length() >= 1)
640 count++;
641 if(untergruppierungsname != null && untergruppierungsname.trim().length() >= 1)
642 count++;
643 if(feldname != null && feldname.trim().length() >= 1)
644 count++;
645 if(text != null && text.trim().length() >= 1)
646 count++;
647
648 if(count <= 0)
649 {
650 errors.add("gruppierungsname", new ActionError("error.field.edit.reporterzeugung.count.min"));
651 }
652 else if(count > 1)
653 {
654 errors.add("gruppierungsname", new ActionError("error.field.edit.reporterzeugung.count.max"));
655 }
656 else
657 {
658 if (gruppierungsname != null && gruppierungsname.trim().length() > 0)
659 {
660 if (gruppierungsname.length() < 1)
661 errors.add("gruppierungsname", new ActionError("error.field.edit.reporterzeugung.gruppierungsname.minlength"));
662 else if (gruppierungsname.trim().length() > 255)
663 errors.add("gruppierungsname", new ActionError("error.field.edit.reporterzeugung.gruppierungsname.maxlength"));
664
665 if (textalign != null && textalign.trim().length() > 0)
666 errors.add("textalign", new ActionError("error.field.edit.reporterzeugung.textalign.noentry"));
667
668 if (textstil != null && textstil.trim().length() > 0)
669 errors.add("textstil", new ActionError("error.field.edit.reporterzeugung.textstil.noentry"));
670
671 if (wertalign != null && wertalign.trim().length() > 0)
672 errors.add("wertalign", new ActionError("error.field.edit.reporterzeugung.wertalign.noentry"));
673
674 if (wertstil != null && wertstil.trim().length() > 0)
675 errors.add("wertstil", new ActionError("error.field.edit.reporterzeugung.wertstil.noentry"));
676
677 if (wertposition != null && wertposition.trim().length() > 0)
678 errors.add("wertposition", new ActionError("error.field.edit.reporterzeugung.wertposition.noentry"));
679 }
680 else if (untergruppierungsname != null && untergruppierungsname.trim().length() > 0)
681 {
682 if (untergruppierungsname.length() < 1)
683 errors.add("untergruppierungsname", new ActionError("error.field.edit.reporterzeugung.untergruppierungsname.minlength"));
684 else if (untergruppierungsname.trim().length() > 255)
685 errors.add("untergruppierungsname", new ActionError("error.field.edit.reporterzeugung.untergruppierungsname.maxlength"));
686
687 if (textalign != null && textalign.trim().length() > 0)
688 errors.add("textalign", new ActionError("error.field.edit.reporterzeugung.textalign.noentry"));
689
690 if (textstil != null && textstil.trim().length() > 0)
691 errors.add("textstil", new ActionError("error.field.edit.reporterzeugung.textstil.noentry"));
692
693 if (wertalign != null && wertalign.trim().length() > 0)
694 errors.add("wertalign", new ActionError("error.field.edit.reporterzeugung.wertalign.noentry"));
695
696 if (wertstil != null && wertstil.trim().length() > 0)
697 errors.add("wertstil", new ActionError("error.field.edit.reporterzeugung.wertstil.noentry"));
698
699 if (wertposition != null && wertposition.trim().length() > 0)
700 errors.add("wertposition", new ActionError("error.field.edit.reporterzeugung.wertposition.noentry"));
701 }
702 else if (feldname != null && feldname.trim().length() > 0)
703 {
704 if (feldname.length() < 1)
705 errors.add("feldname", new ActionError("error.field.edit.reporterzeugung.feldname.minlength"));
706 else if (feldname.length() > 255)
707 errors.add("feldname", new ActionError("error.field.edit.reporterzeugung.feldname.maxlength"));
708
709 if (textalign == null || textalign.trim().length() <= 0)
710 errors.add("textalign", new ActionError("error.field.edit.reporterzeugung.textalign.empty"));
711 else if (textalign.length() < 1)
712 errors.add("textalign", new ActionError("error.field.edit.reporterzeugung.textalign.minlength"));
713 else if (textalign.length() > 255)
714 errors.add("textalign", new ActionError("error.field.edit.reporterzeugung.textalign.maxlength"));
715
716 if (textstil == null || textstil.trim().length() <= 0)
717 errors.add("textstil", new ActionError("error.field.edit.reporterzeugung.textstil.empty"));
718 else if (textstil.length() < 1)
719 errors.add("textstil", new ActionError("error.field.edit.reporterzeugung.textstil.minlength"));
720 else if (textstil.length() > 255)
721 errors.add("textstil", new ActionError("error.field.edit.reporterzeugung.textstil.maxlength"));
722
723 if (wertalign == null || wertalign.trim().length() <= 0)
724 errors.add("wertalign", new ActionError("error.field.edit.reporterzeugung.wertalign.empty"));
725 else if (wertalign.length() < 1)
726 errors.add("wertalign", new ActionError("error.field.edit.reporterzeugung.wertalign.minlength"));
727 else if (wertalign.length() > 255)
728 errors.add("wertalign", new ActionError("error.field.edit.reporterzeugung.wertalign.maxlength"));
729
730 if (wertstil == null || wertstil.trim().length() <= 0)
731 errors.add("wertstil", new ActionError("error.field.edit.reporterzeugung.wertstil.empty"));
732 else if (wertstil.length() < 1)
733 errors.add("wertstil", new ActionError("error.field.edit.reporterzeugung.wertstil.minlength"));
734 else if (wertstil.length() > 255)
735 errors.add("wertstil", new ActionError("error.field.edit.reporterzeugung.wertstil.maxlength"));
736
737 if (wertposition == null || wertposition.trim().length() <= 0)
738 errors.add("wertposition", new ActionError("error.field.edit.reporterzeugung.wertposition.empty"));
739 else if (wertposition.length() < 1)
740 errors.add("wertposition", new ActionError("error.field.edit.reporterzeugung.wertposition.minlength"));
741 else if (wertposition.length() > 255)
742 errors.add("wertposition", new ActionError("error.field.edit.reporterzeugung.wertposition.maxlength"));
743 }
744 else if (text != null && text.trim().length() > 0)
745 {
746 if (text.length() < 1)
747 errors.add("text", new ActionError("error.field.edit.reporterzeugung.text.minlength"));
748 else if (text.length() > 255)
749 errors.add("text", new ActionError("error.field.edit.reporterzeugung.text.maxlength"));
750
751 if (textalign == null || textalign.trim().length() <= 0)
752 errors.add("textalign", new ActionError("error.field.edit.reporterzeugung.textalign.empty"));
753 else if (textalign.length() < 1)
754 errors.add("textalign", new ActionError("error.field.edit.reporterzeugung.textalign.minlength"));
755 else if (textalign.length() > 255)
756 errors.add("textalign", new ActionError("error.field.edit.reporterzeugung.textalign.maxlength"));
757
758 if (textstil == null || textstil.trim().length() <= 0)
759 errors.add("textstil", new ActionError("error.field.edit.reporterzeugung.textstil.empty"));
760 else if (textstil.length() < 1)
761 errors.add("textstil", new ActionError("error.field.edit.reporterzeugung.textstil.minlength"));
762 else if (textstil.length() > 255)
763 errors.add("textstil", new ActionError("error.field.edit.reporterzeugung.textstil.maxlength"));
764
765 if (wertalign == null || wertalign.trim().length() <= 0)
766 errors.add("wertalign", new ActionError("error.field.edit.reporterzeugung.wertalign.empty"));
767 else if (wertalign.length() < 1)
768 errors.add("wertalign", new ActionError("error.field.edit.reporterzeugung.wertalign.minlength"));
769 else if (wertalign.length() > 255)
770 errors.add("wertalign", new ActionError("error.field.edit.reporterzeugung.wertalign.maxlength"));
771
772 if (wertstil == null || wertstil.trim().length() <= 0)
773 errors.add("wertstil", new ActionError("error.field.edit.reporterzeugung.wertstil.empty"));
774 else if (wertstil.length() < 1)
775 errors.add("wertstil", new ActionError("error.field.edit.reporterzeugung.wertstil.minlength"));
776 else if (wertstil.length() > 255)
777 errors.add("wertstil", new ActionError("error.field.edit.reporterzeugung.wertstil.maxlength"));
778
779 if (wertposition == null || wertposition.length() <= 0)
780 errors.add("wertposition", new ActionError("error.field.edit.reporterzeugung.wertposition.empty"));
781 else if (wertposition.length() < 1)
782 errors.add("wertposition", new ActionError("error.field.edit.reporterzeugung.wertposition.minlength"));
783 else if (wertposition.length() > 255)
784 errors.add("wertposition", new ActionError("error.field.edit.reporterzeugung.wertposition.maxlength"));
785 }
786 else
787 errors.add("gruppierungsname", new ActionError("error.field.edit.reporterzeugung.count.min"));
788 }
789
790 if(wiederholung != null && wiederholung.booleanValue() == true)
791 {
792 if (wiederholungstyp == null || wiederholungstyp.trim().length() <= 0)
793 errors.add("wiederholungstyp", new ActionError("error.field.edit.reporterzeugung.wiederholungstyp.empty"));
794 else if (wiederholungstyp.length() < 1)
795 errors.add("wiederholungstyp", new ActionError("error.field.edit.reporterzeugung.wiederholungstyp.minlength"));
796 else if (wiederholungstyp.length() > 255)
797 errors.add("wiederholungstyp", new ActionError("error.field.edit.reporterzeugung.wiederholungstyp.maxlength"));
798
799 if(feldbedingung != null)
800 {
801 if (feldbedingung.length() < 1)
802 errors.add("feldbedingung", new ActionError("error.field.edit.reporterzeugung.feldbedingung.minlength"));
803 else if (feldbedingung.length() > 255)
804 errors.add("feldbedingung", new ActionError("error.field.edit.reporterzeugung.feldbedingung.maxlength"));
805
806 if (feldbedingungwert == null || feldbedingungwert.trim().length() <= 0)
807 errors.add("feldbedingungwert", new ActionError("error.field.edit.reporterzeugung.feldbedingungwert.empty"));
808 else if (feldbedingungwert.length() < 1)
809 errors.add("feldbedingungwert", new ActionError("error.field.edit.reporterzeugung.feldbedingungwert.minlength"));
810 else if (feldbedingungwert.length() > 255)
811 errors.add("feldbedingungwert", new ActionError("error.field.edit.reporterzeugung.feldbedingungwert.maxlength"));
812
813 if (feldbedingungtyp == null || feldbedingungtyp.trim().length() <= 0)
814 errors.add("feldbedingungtyp", new ActionError("error.field.edit.reporterzeugung.feldbedingungtyp.empty"));
815 else if (feldbedingungtyp.length() < 1)
816 errors.add("feldbedingungtyp", new ActionError("error.field.edit.reporterzeugung.feldbedingungtyp.minlength"));
817 else if (feldbedingungtyp.length() > 255)
818 errors.add("feldbedingungtyp", new ActionError("error.field.edit.reporterzeugung.feldbedingungtyp.maxlength"));
819
820 if(feldbedingung != null && feldbedingungtyp.equals("Quartal"))
821 {
822 if (feldbedingungstartquatal == null)
823 errors.add("feldbedingungstartquatal", new ActionError("error.field.edit.reporterzeugung.feldbedingungstartquatal.empty"));
824 else if (feldbedingungstartquatal.intValue() < 0)
825 errors.add("feldbedingungstartquatal", new ActionError("error.field.edit.reporterzeugung.feldbedingungstartquatal.min"));
826 else if (feldbedingungstartquatal.intValue() > 19)
827 errors.add("feldbedingungstartquatal", new ActionError("error.field.edit.reporterzeugung.feldbedingungstartquatal.max"));
828
829 if (feldbedingungendquartal == null)
830 errors.add("feldbedingungendquartal", new ActionError("error.field.edit.reporterzeugung.feldbedingungendquartal.empty"));
831 else if (feldbedingungendquartal.intValue() < 1)
832 errors.add("feldbedingungendquartal", new ActionError("error.field.edit.reporterzeugung.feldbedingungendquartal.min"));
833 else if (feldbedingungendquartal.intValue() > 20)
834 errors.add("feldbedingungendquartal", new ActionError("error.field.edit.reporterzeugung.feldbedingungendquartal.max"));
835 }
836 }
837 else if(feldbedingung == null)
838 {
839 if (feldbedingungwert != null && feldbedingungwert.trim().length() > 0)
840 errors.add("feldbedingungwert", new ActionError("error.field.edit.reporterzeugung.feldbedingungwert.noentry"));
841
842 if (feldbedingungtyp != null && feldbedingungtyp.trim().length() > 0)
843 errors.add("feldbedingungtyp", new ActionError("error.field.edit.reporterzeugung.feldbedingungtyp.noentry"));
844 }
845 }
846 else if(wiederholung == null || wiederholung.booleanValue() == false)
847 {
848 if (wiederholungstyp != null && wiederholungstyp.trim().length() > 0)
849 errors.add("wiederholungstyp", new ActionError("error.field.edit.reporterzeugung.wiederholungstyp.noentry"));
850
851 if (feldbedingung != null && feldbedingung.trim().length() > 0)
852 errors.add("feldbedingung", new ActionError("error.field.edit.reporterzeugung.feldbedingung.noentry"));
853
854 if (feldbedingungwert != null && feldbedingungwert.trim().length() > 0)
855 errors.add("feldbedingungwert", new ActionError("error.field.edit.reporterzeugung.feldbedingungwert.noentry"));
856
857 if (feldbedingungtyp != null && feldbedingungtyp.trim().length() > 0)
858 errors.add("feldbedingungtyp", new ActionError("error.field.edit.reporterzeugung.feldbedingungtyp.noentry"));
859 }
860
861 if (wertanzeigen == null)
862 errors.add("wertanzeigen", new ActionError("error.field.edit.reporterzeugung.wertanzeigen.empty"));
863
864 if (wertkennzeichenanzeigen == null)
865 errors.add("wertkennzeichenanzeigen", new ActionError("error.field.edit.reporterzeugung.wertkennzeichenanzeigen.empty"));
866
867 if (sektionende == null)
868 errors.add("sektionende", new ActionError("error.field.edit.reporterzeugung.sektionende.empty"));
869
870 if (seitenende == null)
871 errors.add("seitenende", new ActionError("error.field.edit.reporterzeugung.seitenende.empty"));
872
873 if (log.isDebugEnabled())
874 {
875 Iterator iter = errors.get();
876
877 log.debug(" Form had errors:");
878 while (iter.hasNext())
879 {
880 log.debug(" " + ((ActionError) iter.next()).getKey());
881 }
882 }
883 }
884
885 return errors;
886 }
887 }