Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Завершение условий (http://forum.oszone.net/showthread.php?t=280601)

Тишина 09-04-2014 15:29 2335310

Завершение условий
 
Ребята, я немного запутался с синтаксисом... пожалуйста, помогите!

есть куча вложенных условий. я запутался с "закрытием" условия при помощи end if, например в этом кусочке кода что к чему будет относиться?
Код:

if lCount = 1
    then
        requirements_list_Validation = "Requirements must belong to RAProject: " + sRAProjectName + _". The following Requirement belongs to a different RAProject:" + sError
   
    elseif lCount > 1
          then
              requirements_list_Validation = "Requirements must belong to RAProject: " + sRAProjectName + _". The following Requirements belong to different RAProject:" + sError
          end if
         
          else
                a_vTableDBIDs = getfieldValue(ac_sCQReqListAttName).GetValueAsList
                if not IsEmpty(a_vTableDBIDs)

                    then

                        if (LBound(a_vTableDBIDs) <= UBound(a_vTableDBIDs))

                            Then

                                  requirements_list_Validation = "Please select an RA Project in order to create associations to Requirement records."

                            end if

                                end if
                                end if

я здесь уже поставил табуляции, но они могут быть ошибочными. больше всего интересует "приоритет" для однострочных тел условия, как указано здесь (забирёт ли THEN под себя END IF или это сделает then что описан выше?)

Iska 09-04-2014 16:21 2335328

У Вас наблюдается несогласованность условий. Вот первая часть после исправлений:
Код:

If lCount = 1 Then
        requirements_list_Validation = "Requirements must belong to RAProject: " + sRAProjectName + _". The following Requirement belongs to a different RAProject:" + sError
ElseIf lCount > 1 Then
        requirements_list_Validation = "Requirements must belong to RAProject: " + sRAProjectName + _". The following Requirements belong to different RAProject:" + sError
End If

— корректная. Дальше у Вас идёт «else» без предшествующего «If».

Тишина 11-04-2014 16:23 2336315

спасибо! кажется, разобрался с синтаксисом! "на каждый многострочный IF вылезает свой END IF" + если ELSE(IF) добавляется даже однострочный - то всё равно закрывается END IF"


Время: 05:57.

Время: 05:57.
© OSzone.net 2001-