View Javadoc

1   ////////////////////////////////////////////////////////////////////////////////
2   //CabaWeb
3   //Copyright (C) 2004  Thomas Vogt <Thomas.Vogt@TVC-Software.com>
4   //
5   //This library is free software; you can redistribute it and/or
6   //modify it under the terms of the GNU Lesser General Public
7   //License as published by the Free Software Foundation; either
8   //version 2.1 of the License, or (at your option) any later version.
9   //
10  //This library is distributed in the hope that it will be useful,
11  //but WITHOUT ANY WARRANTY; without even the implied warranty of
12  //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  //Lesser General Public License for more details.
14  //
15  //You should have received a copy of the GNU Lesser General Public
16  //License along with this library; if not, write to the Free Software
17  //Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18  ////////////////////////////////////////////////////////////////////////////////
19  package org.fhw.cabaweb.webfrontend.actions.edit;
20  
21  import java.util.Collection;
22  import java.util.Iterator;
23  
24  import javax.servlet.ServletException;
25  import javax.servlet.http.HttpServletRequest;
26  import javax.servlet.http.HttpServletResponse;
27  import javax.servlet.http.HttpSession;
28  
29  import org.apache.struts.action.Action;
30  import org.apache.struts.action.ActionForm;
31  import org.apache.struts.action.ActionForward;
32  import org.apache.struts.action.ActionMapping;
33  import org.apache.struts.action.DynaActionForm;
34  import org.apache.struts.action.DynaActionFormClass;
35  import org.apache.struts.config.FormBeanConfig;
36  import org.apache.struts.validator.DynaValidatorForm;
37  
38  import org.apache.commons.logging.Log;
39  import org.apache.commons.logging.LogFactory;
40  
41  
42  import org.fhw.cabaweb.data.DataInterfaceGruppenmitglieder;
43  import org.fhw.cabaweb.data.DataInterfaceErgebnissdaten;
44  import org.fhw.cabaweb.data.DataInterfaceErgebnissdatenGruppierungsnamen;
45  import org.fhw.cabaweb.data.DataInterfaceProjektgruppen;
46  import org.fhw.cabaweb.data.constants.Constants;
47  import org.fhw.cabaweb.data.dataobjects.Ergebniss;
48  
49  import org.fhw.cabaweb.ojb.dataobjects.Ergebnissdaten_Gruppierungsnamen;
50  import org.fhw.cabaweb.ojb.dataobjects.Gruppenmitglieder;
51  import org.fhw.cabaweb.ojb.dataobjects.Projektgruppen;
52  import org.fhw.cabaweb.webfrontend.configs.Keys;
53  
54  /***
55   * <strong>Action</strong>-Klasse f&uuml;r die Edit Entscheidung Action .
56   * Die Controller Klasse der Struts Model View Controller Architektur.
57   *
58   * @author  <a href="mailto:thomas.vogt@tvc-software.com">Thomas Vogt</a>
59   * @version Version 1.0 28.07.2004
60   */
61  public final class EditEntscheidungAction extends Action {
62  
63      /***
64       * The <code>Log</code> instance for this application.
65       */
66      private Log log = LogFactory.getLog("org.fhw.cabaweb.webfrontend.actions.edit");
67  
68      /***
69       * Verarbeiten der spezifizierten HTTP Anfrage und erzeugen der zugeordneten
70       * HTTP Antwort bzw. Forwarden an eine andere Web Komponente, die die Antwort 
71       * erzeugt.  
72       * 
73       * Gibt eine <code>ActionForward</code> Instanz zurück die angibt wohin und wie
74       * die Kontrolle weitergegeben werden soll. Kann auch <code>null</code> sein, 
75       * wenn die Anfrage bereits bearbeitet wurde.
76       * 
77       * @param mapping Das ActionMapping das benutzt wurde um diese Instanz zu selektieren
78       * @param form Das optionale ActionForm Bean für die Anfrage (soweit vorhanden)
79       * @param request Die HTTP Anfrage die wir gerade bearbeiten
80       * @param response The HTTP Antwort die wir erzeugen
81       *
82       * @return Die Action zu der wir weiterleiten
83       * @exception Exception wenn ein Eingabe-/Ausgabe Fehler auftritt oder eine Servlet Exception auftritt
84       *            bzw. die Business Logik einen Fehler verursacht 
85       */
86      public ActionForward execute(ActionMapping mapping,
87  				                 ActionForm form,
88                                   HttpServletRequest request,
89                                   HttpServletResponse response)
90      throws Exception 
91      {
92          /*** Forwarding Action Variable mit null initialisieren */
93  //        ActionForward forward = null;
94          /*** Die Locale Variable (Sprache, Formatierung, etc.) */
95  //        Locale locale = getLocale(request);
96          /*** Die Resourcen (lokalisierten Meldungen) der Anfrage holen */
97  //        MessageResources messages = getResources(request, "EntscheidungenResources");
98          /*** Wenn Fehler bei der Validierung Fehler auftreten werden Sie diesem
99           *  <code>ActionErrors</code> Objekt hinzugefügt. 
100          */ 
101 //        ActionErrors errors = new ActionErrors();
102 
103         /*** Data Interface (indirekter Zugriff auf die OJB Ebene) initialisieren */
104         DataInterfaceErgebnissdaten die = new DataInterfaceErgebnissdaten();
105         /*** Data Interface (indirekter Zugriff auf die OJB Ebene) initialisieren */
106         DataInterfaceProjektgruppen dipg = new DataInterfaceProjektgruppen();
107         /*** Data Interface (indirekter Zugriff auf die OJB Ebene) initialisieren */
108         DataInterfaceGruppenmitglieder digm = new DataInterfaceGruppenmitglieder();
109         /*** Data Interface (indirekter Zugriff auf die OJB Ebene) initialisieren */
110         DataInterfaceErgebnissdatenGruppierungsnamen diegn = new DataInterfaceErgebnissdatenGruppierungsnamen();
111         /*** Die Session der aktuellen Anfrage */
112         HttpSession session = request.getSession();
113         /*** Die übergebene Action */
114         String action = request.getParameter("action");
115 
116         /*** Zwischenspeichvaribale für den Status des Benutzers (Administrator ???) */
117         boolean isAdmin = request.isUserInRole("Administrator");
118         /*** Zwischenspeichvaribale für den Status des Benutzers (Projektleiter ???) */
119         boolean isProjectleader = false;
120         /*** Zwischenspeichvaribale für den Status des Benutzers (Benutzer ???) */
121         boolean isUser = false;
122         /*** Zwischenspeichvaribale für den Namen des Benutzers */
123         String username = request.getRemoteUser();
124 
125         if(!isAdmin)
126         {
127             isProjectleader = request.isUserInRole("Projektleiter");
128         }
129         if(!isAdmin && !isProjectleader)
130         {
131             isUser = request.isUserInRole("Benutzer");
132         }
133 
134     	if (action == null) 
135     	{
136     	    action = "Create";
137         }
138 
139         Collection usernames = digm.sucheLogInName(username);
140         Iterator iter = usernames.iterator();
141         Gruppenmitglieder user = null;
142         
143         if(iter.hasNext())
144         {
145             user = (Gruppenmitglieder) iter.next();
146 
147             if (log.isDebugEnabled()) 
148             {
149                 log.debug("EditEntscheidungAction: User '" + user.toString() + "'");
150             }
151         }         
152 
153         Integer projektnummer = user.getProjektgruppe().getProjekte().getProjektnummer();
154         Integer gruppennummer = user.getProjektgruppe().getGruppennummer();
155         Integer quartal = user.getProjektgruppe().getProjekte().getAktuellesQuartal();
156 
157         if (log.isDebugEnabled()) 
158         {
159             log.debug("EditEntscheidungAction: Processing " + action + " action");
160         }
161         
162         Collection gruppierungsnamen = diegn.sucheKombination(null, projektnummer, Constants.EG_ENTSCHEIDUNGEN_KEY);
163         iter = gruppierungsnamen.iterator();
164         Ergebnissdaten_Gruppierungsnamen gruppierungsname = null;
165         Integer gruppierungsnummer = null;
166         
167         if(iter.hasNext())
168         {
169             gruppierungsname = (Ergebnissdaten_Gruppierungsnamen) iter.next();
170 
171             gruppierungsnummer = gruppierungsname.getGruppierungsnummer();
172             if (log.isDebugEnabled()) 
173             {
174                 log.debug(" Group Nr. '" + gruppierungsname.getGruppierungsnummer() + "'");
175             }
176         }
177 
178         Collection entscheidungen = die.sucheKombination_Gruppierung(projektnummer, gruppennummer, new Integer(quartal.intValue() + 1), gruppierungsnummer);
179 
180         if (entscheidungen != null) 
181         {
182             session.setAttribute(Keys.ENTSCHEIDUNGEN_KEY, entscheidungen);
183         }
184         
185         Collection projektgruppen = null;
186 
187         if(isAdmin)
188         {
189             if (log.isDebugEnabled()) 
190             {
191                 log.debug(" User has Role: Administrator");
192                 log.debug(" Searching all Project Groups");
193             }
194 
195             projektgruppen = dipg.sucheAlle();
196             projektgruppen.add(new Projektgruppen(new Integer(0), null, "", null, new Boolean(false)));
197 
198             if (log.isDebugEnabled()) 
199             {
200                 log.debug(" Found " + projektgruppen.size() + " Project Groups");
201             }
202         }
203         else if(isProjectleader)
204         {
205             if (log.isDebugEnabled()) 
206             {
207                 log.debug(" User is Projectleader");
208                 log.debug(" Searching own Project Groups");
209             }
210             
211             projektgruppen = dipg.sucheProjektnummer(((user.getProjektgruppe()).getProjekte()).getProjektnummer());
212             projektgruppen.add(new Projektgruppen(new Integer(0), null, "", null, new Boolean(false)));
213             
214             if (log.isDebugEnabled()) 
215             {
216                 log.debug(" Found " + projektgruppen.size() + " Project Groups");
217             }
218         }
219         else if(isUser)
220         {
221             if (log.isDebugEnabled()) 
222             {
223                 log.debug(" User is User");
224                 log.debug(" Searching Projects Project Groups");
225             }
226             
227             projektgruppen = dipg.sucheProjektnummer(((user.getProjektgruppe()).getProjekte()).getProjektnummer());
228             projektgruppen.add(new Projektgruppen(new Integer(0), null, "", null, new Boolean(false)));
229             
230             if (log.isDebugEnabled()) 
231             {
232                 log.debug(" Found " + projektgruppen.size() + " Project Groups");
233             }
234         }
235 
236         if (projektgruppen != null) 
237         {
238             session.setAttribute(Keys.PROJEKTGRUPPEN_KEY, projektgruppen);
239         }
240 
241     	// Populate the Project Form
242     	if (form == null) 
243     	{
244             if (log.isDebugEnabled()) 
245             {
246                 log.debug(" Creating new EntscheidungForm bean under key " + mapping.getAttribute());
247             }
248             
249             form = new DynaValidatorForm();
250 	        
251             if ("request".equals(mapping.getScope())) 
252             {
253                 request.setAttribute(mapping.getAttribute(), form);
254             } 
255             else 
256             {
257                 session.setAttribute(mapping.getAttribute(), form);
258             }
259     	}
260 
261 //        DynaValidatorForm dvform = (DynaValidatorForm) form;
262         
263         FormBeanConfig fbc = new FormBeanConfig();
264         fbc.setName("entscheidungenForm");
265 //        fbc.setModuleConfig(mapping.getModuleConfig());
266         DynaActionFormClass dafc = DynaActionFormClass.createDynaActionFormClass(fbc);
267         DynaActionForm dvform = (DynaActionForm) dafc.newInstance();
268         dvform.set("action", action);
269         request.setAttribute("entscheidungenForm", dvform);
270 /*
271         DynaValidatorForm dvform = (DynaValidatorForm) form;
272         dvform.set("action", action);
273 */
274         if (entscheidungen != null) 
275         {
276             if (log.isDebugEnabled()) 
277             {
278                 log.debug(" Populating form from " + dvform);
279             }
280             
281             try 
282             {
283                 dvform.set("gruppennummer", gruppennummer);
284                 dvform.set("quartal", quartal);
285                 
286                 Iterator entscheidungsiterator = entscheidungen.iterator();
287 
288                 while(entscheidungsiterator.hasNext())
289                 {
290                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
291                     
292                     if(entscheidung == null)
293                     {
294                         entscheidungsiterator.remove();
295                     }
296                 }
297                 entscheidungsiterator = entscheidungen.iterator();
298                 while(entscheidungsiterator.hasNext())
299                 {
300                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
301                     
302                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGVERKAUFSPREIS_KEY) == 0)
303                     {
304                         String wert = "0.0";
305                         
306                         if(entscheidung.getObjectWert() != null)
307                             wert = entscheidung.getObjectWert().toString();
308                                                         
309                         dvform.set("preis", wert);
310                         break;
311                     }
312                 }
313                 entscheidungsiterator = entscheidungen.iterator();
314                 while(entscheidungsiterator.hasNext())
315                 {
316                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
317                     
318                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGMARKETING_KEY) == 0)
319                     {
320                         String wert = "0";
321                         
322                         if(entscheidung.getObjectWert() != null)
323                             wert = entscheidung.getObjectWert().toString();
324                             
325                         dvform.set("marketing", wert);
326                         break;
327                     }
328                 }
329                 entscheidungsiterator = entscheidungen.iterator();
330                 while(entscheidungsiterator.hasNext())
331                 {
332                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
333                     
334                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGMARKTFORSCHUNGSDIENST_KEY) == 0)
335                     {
336                         String wert = "0";
337                         
338                         if(entscheidung.getObjectWert() != null)
339                             wert = entscheidung.getObjectWert().toString();
340                             
341                         dvform.set("marktforschung", wert);
342                         break;
343                     }
344                 }
345                 entscheidungsiterator = entscheidungen.iterator();
346                 while(entscheidungsiterator.hasNext())
347                 {
348                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
349                     
350                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGABSETZBAREMENGE_KEY) == 0)
351                     {
352                         String wert = "0";
353                         
354                         if(entscheidung.getObjectWert() != null)
355                             wert = entscheidung.getObjectWert().toString();
356                             
357                         dvform.set("absetzbaremenge", wert);
358                         break;
359                     }
360                 }
361                 entscheidungsiterator = entscheidungen.iterator();
362                 while(entscheidungsiterator.hasNext())
363                 {
364                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
365                     
366                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGPRODUKTART_KEY) == 0)
367                     {
368                         String wert = "0";
369                         
370                         if(entscheidung.getObjectWert() != null)
371                             wert = entscheidung.getObjectWert().toString();
372                             
373                         dvform.set("produktart", wert);
374                         break;
375                     }
376                 }
377                 entscheidungsiterator = entscheidungen.iterator();
378                 while(entscheidungsiterator.hasNext())
379                 {
380                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
381                     
382                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGPRODUKTIONSMENGE_KEY) == 0)
383                     {
384                         String wert = "0";
385                         
386                         if(entscheidung.getObjectWert() != null)
387                             wert = entscheidung.getObjectWert().toString();
388                             
389                         dvform.set("produktionsmenge", wert);
390                         break;
391                     }
392                 }
393                 entscheidungsiterator = entscheidungen.iterator();
394                 while(entscheidungsiterator.hasNext())
395                 {
396                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
397                     
398                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGQUALITAETSSICHERUNG_KEY) == 0)
399                     {
400                         String wert = "0.0";
401                         
402                         if(entscheidung.getObjectWert() != null)
403                             wert = entscheidung.getObjectWert().toString();
404                             
405                         dvform.set("qualitaetssicherung", wert);
406                         break;
407                     }
408                 }
409                 entscheidungsiterator = entscheidungen.iterator();
410                 while(entscheidungsiterator.hasNext())
411                 {
412                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
413                     
414                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGQSKOSTENMINIMUM_KEY) == 0)
415                     {
416                         String wert = "0.0";
417                         
418                         if(entscheidung.getObjectWert() != null)
419                             wert = entscheidung.getObjectWert().toString();
420                             
421                         dvform.set("qsoptimal", wert);
422                         break;
423                     }
424                 }
425                 entscheidungsiterator = entscheidungen.iterator();
426                 while(entscheidungsiterator.hasNext())
427                 {
428                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
429                     
430                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGKAPAZITAETSAUSLASTUNG_KEY) == 0)
431                     {
432                         String wert = "0.0";
433                         
434                         if(entscheidung.getObjectWert() != null)
435                             wert = entscheidung.getObjectWert().toString();
436                             
437                         dvform.set("kapazitaetsauslastung", wert);
438                         break;
439                     }
440                 }
441                 entscheidungsiterator = entscheidungen.iterator();
442                 while(entscheidungsiterator.hasNext())
443                 {
444                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
445                     
446                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGINVESTITIONEN_KEY) == 0)
447                     {
448                         String wert = "0";
449                         
450                         if(entscheidung.getObjectWert() != null)
451                             wert = entscheidung.getObjectWert().toString();
452                             
453                         dvform.set("investition", wert);
454                         break;
455                     }
456                 }
457                 entscheidungsiterator = entscheidungen.iterator();
458                 while(entscheidungsiterator.hasNext())
459                 {
460                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
461                     
462                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGROHSTOFFBESTELLUNGNORMAL_KEY) == 0)
463                     {
464                         String wert = "0";
465                         
466                         if(entscheidung.getObjectWert() != null)
467                             wert = entscheidung.getObjectWert().toString();
468                             
469                         dvform.set("rohstoffnormal", wert);
470                         break;
471                     }
472                 }
473                 entscheidungsiterator = entscheidungen.iterator();
474                 while(entscheidungsiterator.hasNext())
475                 {
476                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
477                     
478                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGROHSTOFFBESTELLUNGEXPRESS_KEY) == 0)
479                     {
480                         String wert = "0";
481                         
482                         if(entscheidung.getObjectWert() != null)
483                             wert = entscheidung.getObjectWert().toString();
484                             
485                         dvform.set("rohstoffexpress", wert);
486                         break;
487                     }
488                 }
489                 entscheidungsiterator = entscheidungen.iterator();
490                 while(entscheidungsiterator.hasNext())
491                 {
492                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
493                     
494                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGDIVIDENDE_KEY) == 0)
495                     {
496                         String wert = "0";
497                         
498                         if(entscheidung.getObjectWert() != null)
499                             wert = entscheidung.getObjectWert().toString();
500                             
501                         dvform.set("dividende", wert);
502                         break;
503                     }
504                 }
505                 entscheidungsiterator = entscheidungen.iterator();
506                 while(entscheidungsiterator.hasNext())
507                 {
508                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
509                     
510                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGAENDERUNGBANKDARLEHEN_KEY) == 0)
511                     {
512                         String wert = "0";
513                         
514                         if(entscheidung.getObjectWert() != null)
515                             wert = entscheidung.getObjectWert().toString();
516                             
517                         dvform.set("aenderungvereinbarterkredit",wert);
518                         break;
519                     }
520                 }
521                 entscheidungsiterator = entscheidungen.iterator();
522                 while(entscheidungsiterator.hasNext())
523                 {
524                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
525                     
526                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGERHOEHUNGTILGUNG_KEY) == 0)
527                     {
528                         String wert = "0";
529                         
530                         if(entscheidung.getObjectWert() != null)
531                             wert = entscheidung.getObjectWert().toString();
532                             
533                         dvform.set("erhoehungoderverminderung", wert);
534                         break;
535                     }
536                 }
537                 entscheidungsiterator = entscheidungen.iterator();
538                 while(entscheidungsiterator.hasNext())
539                 {
540                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
541                     
542                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGZINSEN_KEY) == 0)
543                     {
544                         String wert = "0";
545                         
546                         if(entscheidung.getObjectWert() != null)
547                             wert = entscheidung.getObjectWert().toString();
548                             
549                         dvform.set("zinsen", wert);
550                         break;
551                     }
552                 }
553                 entscheidungsiterator = entscheidungen.iterator();
554                 while(entscheidungsiterator.hasNext())
555                 {
556                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
557                     
558                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGLIQUIDITAETSAENDERUNG_KEY) == 0)
559                     {
560                         String wert = "0";
561                         
562                         if(entscheidung.getObjectWert() != null)
563                             wert = entscheidung.getObjectWert().toString();
564                             
565                         dvform.set("liquiditaetsaenderung", wert);
566                         break;
567                     }
568                 }
569                 entscheidungsiterator = entscheidungen.iterator();
570                 while(entscheidungsiterator.hasNext())
571                 {
572                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
573                     
574                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGFUNDE_KEY) == 0)
575                     {
576                         String wert = "0";
577                         
578                         if(entscheidung.getObjectWert() != null)
579                             wert = entscheidung.getObjectWert().toString();
580                             
581                         dvform.set("forschung", wert);
582                         break;
583                     }
584                 }
585                 entscheidungsiterator = entscheidungen.iterator();
586                 while(entscheidungsiterator.hasNext())
587                 {
588                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
589                     
590                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGGRENZGEWINN_KEY) == 0)
591                     {
592                         String wert = "0.0";
593                         
594                         if(entscheidung.getObjectWert() != null)
595                             wert = entscheidung.getObjectWert().toString();
596                             
597                         dvform.set("grenzgewinn", wert);
598                         break;
599                     }
600                 }
601                 entscheidungsiterator = entscheidungen.iterator();
602                 while(entscheidungsiterator.hasNext())
603                 {
604                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
605                     
606                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGLIZENZVERKAUFUNTERNEHMEN_KEY) == 0)
607                     {
608                         String wert = "0";
609                         
610                         if(entscheidung.getObjectWert() != null)
611                             wert = entscheidung.getObjectWert().toString();
612                             
613                         dvform.set("lizenzverkaufan", wert);
614                         break;
615                     }
616                 }
617                 entscheidungsiterator = entscheidungen.iterator();
618                 while(entscheidungsiterator.hasNext())
619                 {
620                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
621                     
622                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGLIZENZVERKAUFPRODUKTART_KEY) == 0)
623                     {
624                         String wert = "0";
625                         
626                         if(entscheidung.getObjectWert() != null)
627                             wert = entscheidung.getObjectWert().toString();
628                             
629                         dvform.set("lizenzverkaufproduktart", wert);
630                         break;
631                     }
632                 }
633                 entscheidungsiterator = entscheidungen.iterator();
634                 while(entscheidungsiterator.hasNext())
635                 {
636                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
637                     
638                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGLIZENZKAUFUNTERNEHMEN_KEY) == 0)
639                     {
640                         String wert = "0";
641                         
642                         if(entscheidung.getObjectWert() != null)
643                             wert = entscheidung.getObjectWert().toString();
644                             
645                         dvform.set("lizenzkaufvon", wert);
646                         break;
647                     }
648                 }
649                 entscheidungsiterator = entscheidungen.iterator();
650                 while(entscheidungsiterator.hasNext())
651                 {
652                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
653                     
654                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGLIZENZKAUFFUER_KEY) == 0)
655                     {
656                         String wert = "0";
657                         
658                         if(entscheidung.getObjectWert() != null)
659                             wert = entscheidung.getObjectWert().toString();
660                             
661                         dvform.set("lizenzkaufkosten", wert);
662                         break;
663                     }
664                 }
665                 entscheidungsiterator = entscheidungen.iterator();
666                 while(entscheidungsiterator.hasNext())
667                 {
668                     Ergebniss entscheidung = (Ergebniss) entscheidungsiterator.next();
669                     
670                     if(entscheidung.getFeldname().compareTo(Constants.EF_ENTSCHEIDUNGBERATUNG_KEY) == 0)
671                     {
672                         String wert = "0";
673                         
674                         if(entscheidung.getObjectWert() != null)
675                             wert = entscheidung.getObjectWert().toString();
676                             
677                         dvform.set("beratung", wert);
678                         break;
679                     }
680                 }
681             } 
682             catch (Throwable t) 
683             {
684                 log.error("EntscheidungForm.populate", t);
685                 throw new ServletException("EntscheidungForm.populate", t);
686             }
687         }
688 
689         // Forward control to the edit Projekt page
690         if (log.isDebugEnabled()) 
691         {
692             log.debug(" Forwarding to 'success' page");
693         }
694     	return (mapping.findForward("success"));
695     }
696 }