KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > compiere > process > ProjectSetType


1 /******************************************************************************
2  * The contents of this file are subject to the Compiere License Version 1.1
3  * ("License"); You may not use this file except in compliance with the License
4  * You may obtain a copy of the License at http://www.compiere.org/license.html
5  * Software distributed under the License is distributed on an "AS IS" basis,
6  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
7  * the specific language governing rights and limitations under the License.
8  * The Original Code is Compiere ERP & CRM Smart Business Solution
9  * The Initial Developer of the Original Code is Jorg Janke and ComPiere, Inc.
10  * Portions created by Jorg Janke are Copyright (C) 1999-2003 Jorg Janke, parts
11  * created by ComPiere are Copyright (C) ComPiere, Inc.; All Rights Reserved.
12  * Contributor(s): ______________________________________.
13  *****************************************************************************/

14 package org.compiere.process;
15
16 import java.math.*;
17
18 import org.compiere.model.*;
19
20 /**
21  * Set Project Type
22  *
23  * @author Jorg Janke
24  * @version $Id: ProjectSetType.java,v 1.4 2003/10/11 05:20:32 jjanke Exp $
25  */

26 public class ProjectSetType extends SvrProcess
27 {
28     /** Project directly from Project */
29     private int m_C_Project_ID = 0;
30     /** Project Type Parameter */
31     private int m_C_ProjectType_ID = 0;
32
33     /**
34      * Prepare - e.g., get Parameters.
35      */

36     protected void prepare()
37     {
38         ProcessInfoParameter[] para = getParameter();
39         for (int i = 0; i < para.length; i++)
40         {
41             String JavaDoc name = para[i].getParameterName();
42             if (para[i].getParameter() == null)
43                 continue;
44             else if (name.equals("C_ProjectType_ID"))
45                 m_C_ProjectType_ID = ((BigDecimal)para[i].getParameter()).intValue();
46             else
47                 log.error("prepare - Unknown Parameter: " + name);
48           }
49     } // prepare
50

51     /**
52      * Perrform process.
53      * @return Message (clear text)
54      * @throws Exception if not successful
55      */

56     protected String JavaDoc doIt() throws Exception JavaDoc
57     {
58         m_C_Project_ID = getRecord_ID();
59         log.info("doIt - C_Project_ID=" + m_C_Project_ID + ", C_ProjectType_ID=" + m_C_ProjectType_ID);
60         //
61
MProject project = new MProject (getCtx(), m_C_Project_ID);
62         if (project.getC_Project_ID() == 0 || project.getC_Project_ID() != m_C_Project_ID)
63             throw new IllegalArgumentException JavaDoc("Project not found C_Project_ID=" + m_C_Project_ID);
64         if (project.getC_ProjectType_IDasInt() > 0)
65             throw new IllegalArgumentException JavaDoc("Project already has Type (Cannot overwrite) " + project.getC_ProjectType_ID());
66         //
67
MProjectType type = new MProjectType (getCtx(), m_C_ProjectType_ID);
68         if (type.getC_ProjectType_ID() == 0 || type.getC_ProjectType_ID() != m_C_ProjectType_ID)
69             throw new IllegalArgumentException JavaDoc("Project Type not found C_ProjectType_ID=" + m_C_ProjectType_ID);
70
71         // Set & Copy if Service
72
project.setProjectType(type);
73         if (!project.save())
74             throw new Exception JavaDoc ("@Error@");
75         //
76
return "@OK@";
77     } // doIt
78

79 } // ProjectSetType
80
Popular Tags