2013-11-28 4 views
0

Я хочу поставить if else или оператор switch, который больше подходит для проверки количества сотрудников перед commit.where, где я помещаю код if if или switch. я хочу ограничение на сотрудника, если счет равен 5, тогда его сообщение «достигло максимального количества сотрудников», иначе разрешить фиксацию. Я новичок в Java плз кто-то поможет мне решить эту проблемуСостояние проверки java после нажатия на кнопку сохранения перед фиксацией

public String cmdSave_action() 

{ 
    // my code before 

    { 
    DeptSet result; 
     try { 
      dbo.connect(); 

      result = 
        dbo.execSQL("select count(*) from empmasterinfo where mainid='ORGElement' and designationid='?') " 
           (inputText_ORGElement.getValue() != null ? 
      "")); 

     result = dbo.execSQL(sSQL); 

     catch (Exception e) { 
    System.out.println(e.getMessage()); 
     finally 
     { 
     dbo.close();       
     } 
     return null; 
    }}} 

    // my code above 

    { 
    Global.PerformIteratorAction(this.bindings, "Commit"); 
    AdfFacesContext afContext = AdfFacesContext.getCurrentInstance(); 
    afContext.getProcessScope().put("EmployeeID", 
            Global.getCurrRowFieldValue("EmpmasterinfoViewIterator", 
                   "Employeeid")); 
    if (afContext.getProcessScope().get("AddEdit").toString().equals("0")) 

    { 
     Global.PerformIteratorAction(this.bindings, 
            "EPR_TRANSFER_APPLICANT_INFO"); 
     Global.PerformIteratorAction(this.bindings, "eprGenerateApPlan"); 
    } 
    return null; 
}} 

Мой журнал ошибок

Error(149,12): 'try' without 'catch' or 'finally' 
Error(154,36): , expected 
Error(157,34): field SQL not found in class hcm.view.backing.empprofile.EmployeeMasterInfo_Add 
Error(159,11): illegal start of expression 
Error(159,11): ; expected 

E:\HCM\ViewController\src\hcm\view\backing\empprofile\dbo.java 
Error(13,16): method does not return a value 
+2

-1 Для плохого форматирования кода. –

+0

Было бы более важно отключить кнопку, если только предпосылки уже не верны. – EJP

ответ

0

Пожалуйста, закройте Ваш try catch блок правильно

try{ 

}catch(Exception e){ 

}finally{ 

} 

и прочитать this

+0

спасибо за ответ дорогой. вы можете отредактировать этот код – user3024346

0

catch и finally находятся попробовать block

try { 
//code 
} 
catch(Exception e) { 
System.out.println(e.getMessage()); 
} 
finally { 
dbo.close(); 
} 
+0

спасибо vinayat за помощь вы можете помочь мне, какое условие более подходит для нескольких условий, если else или switch – user3024346

+0

@ user3024346 оператор switch быстрее выполняется, чем лестница if-else-if. Это связано с возможностью компилятора оптимизировать оператор switch. В случае лестницы if-else-if код должен обрабатывать каждую инструкцию if в порядке, определенном программистом. Однако, поскольку каждый случай в операторе switch не полагается на более ранние случаи, компилятор может использовать таблицы ветвей таким образом, чтобы обеспечить самое быстрое выполнение. –

+0

благодарит за помощь – user3024346

0

Использование IDE поможет вам с отступом и правильного форматирования при написании кода. например, Eclipse.

Для первой ошибки закрыть примерки уловов блоков правильно
И для второй ошибки: Так как ваш метод объявлен как public String cmdSave_action(), вы должны возвращать значение String в конце методы. В коде отсутствует инструкция return.

Смежные вопросы