Редактируемое значение в регистре (Ilogi c на основе Vb) - PullRequest
0 голосов
/ 29 января 2020

У меня есть деталь, которая меняется в зависимости от диаметра каната. Диапазоны веревки и геометрические параметры определены. Но один параметр должен быть редактируемым. Я хочу, чтобы мне предложили набор значений по умолчанию, но я мог, по своему усмотрению, иметь возможность изменить нужный мне параметр или оставить его как есть. Вот фрагмент кода:

Select Case dk
    Case "From 3 to 3,7"
        B = 6
        B1 = 13
        hк = 5
        R = 2
    Case "From 3,7 to 4,6" 
        B = 8
        B1 = 15
        hк = 6
        R = 2.5
    Case "From 4,6 to 5,6" 
        B = 9
        B1 = 16
        hк = 7
        R = 3
    Case "From 5,6 to 7,2" 
        B = 12
        B1 = 19
        hк = 9
        R = 4
    End Select

Значение, которое нужно изменить, - B1. На самом деле, это значение не должно быть меньше или равно B. Поэтому я был бы рад решению, где B1 изменяется в диапазоне. Заранее благодарю за помощь в этом вопросе.

1 Ответ

0 голосов
/ 29 января 2020

Используйте еще два параметра. B1max (максимальное значение для B1) и B1req (запрошенное значение для B1). В вашем коде установите B1max вместо B1. Параметр B1req может быть установлен на любое значение пользователем или другим кодом iLogi c.

Для параметра B1 используйте выражение «min (max (B; B1req); B1max)». Теперь значение параметра B1 может быть только в диапазоне от B до B1max и по возможности равно B1req.

Select Case dk
Case 3 to 3.7 '"From 3 to 3,7"
    B = 6
    B1max = 13
    hk = 5
    R = 2
Case 3.7 To 4.6 '"From 3,7 to 4,6" 
    B = 8
    B1max = 15
    hk = 6
    R = 2.5
Case 4.6 To 5.6 '"From 4,6 to 5,6" 
    B = 9
    B1max = 16
    hk = 7
    R = 3
Case 5.6 To 7.2 '"From 5,6 to 7,2" 
    B = 12
    B1max = 19
    hk = 9
    R = 4
Case Else
    Logger.Error("Parameter 'dk' is out of range")
End Select

Logger.Debug("B = " & B)
Logger.Debug("B1max = " & B1max)
Logger.Debug("hk = " & hk)
Logger.Debug("R = " & R)

enter image description here

...