PC SOFT

AYUDA EN LÍNEA
DE WINDEV, WEBDEV Y WINDEV MOBILE

Este contenido proviene de una traducción automática.. Haga clic aquí para ver la versión original en inglés.
  • Salir de una sentencia SWITCH
  • INTERRUPTOR con prueba en una condición
  • Palabra clave OR
  • OTRAS palabras clave de CASO
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Otros
Procedimientos almacenados
La sentencia SWITCH se utiliza para elegir la acción que se ejecutará según el valor de una expresión.
Hay dos sintaxis disponibles para esta expresión:
  • Sintaxis completa.
  • Sintaxis simplificada para un valor entero de valores consecutivos.
Versiones 16 y posteriores
Universal Windows 10 App Esta función está disponible para las aplicaciones de Windows Phone.
Nueva funcionalidad versión 16
Universal Windows 10 App Esta función está disponible para las aplicaciones de Windows Phone.
Universal Windows 10 App Esta función está disponible para las aplicaciones de Windows Phone.
Versiones 17 y posteriores
iPhone/iPad Esta función está disponible para las aplicaciones iPhone/iPad.
Nueva funcionalidad versión 17
iPhone/iPad Esta función está disponible para las aplicaciones iPhone/iPad.
iPhone/iPad Esta función está disponible para las aplicaciones iPhone/iPad.
Versiones 18 y posteriores
Universal Windows 10 App Esta característica está disponible en el modo de aplicaciones de Windows Store.
Widget Android Esta función está disponible en el modo Android Widget.
Nueva funcionalidad versión 18
Universal Windows 10 App Esta característica está disponible en el modo de aplicaciones de Windows Store.
Widget Android Esta función está disponible en el modo Android Widget.
Universal Windows 10 App Esta característica está disponible en el modo de aplicaciones de Windows Store.
Widget Android Esta función está disponible en el modo Android Widget.
Versiones 21 y posteriores
Universal Windows 10 App Esta función está disponible en el modo Universal Windows 10 App.
Apple Watch Esta función está disponible en el modo Apple Watch.
Nueva funcionalidad versión 21
Universal Windows 10 App Esta función está disponible en el modo Universal Windows 10 App.
Apple Watch Esta función está disponible en el modo Apple Watch.
Universal Windows 10 App Esta función está disponible en el modo Universal Windows 10 App.
Apple Watch Esta función está disponible en el modo Apple Watch.
Ejemplo
SWITCH Quantity
CASE 1: Comment = "Take advantage of our promotions: buy one, get one free"
CASE 2: Comment = "Buy two products: get one free"
OTHER CASE: Comment = ""
END
SWITCH Value
CASE 10: Trace(10)
CASE 10<*<20: Trace("Included between 10 and 20")
CASE >30: Trace("Greater than 30")
END
SWITCH Quantity
CASE TO 8: // Value less than or equal to 8
Comment = "A gift offered for each order"
CASE 9,10: // Value equal to 9 or 10
Comment = "Take advantage of our promotions: buy one, get one free"
CASE 11 TO 20 // Value included between 11 and 20 (inclusive)
Comment = "Buy two products: get one free"
CASE > 20: // Value greater than 20
Comment = ""
END
// Simplified syntax: Combo_Sel contains numbers from 1 to 5
// A first name is displayed according to the selected number
Value is int  = COMBO_sel[COMBO_sel]
Result1 is string = ""
Result1 = SWITCH (Value, "Vince", "Emma", "Liz", "Freddy", ELSE "Not found")
Sintaxis

Full syntax Ocultar los detalles

SWITCH <Comparison variable>
  CASE <Expression 1>: <Action 1>

  CASE <Expression 2>:
      <Action 2.1>
      <Action 2.2>

  CASE <Expression 3>
      <Action 3.1>
      <Action 3.2>
      <Action 3.3>

  CASE <Expression 4>, <Expression 5>: <Action 4>

  CASE <Expression 6>, <Expression 7>:
      <Action 5>

  CASE <Expression 8>, <Expression 9>
      <Action 6.1>
      <Action 6.2>

  CASE <Minimum expression> TO: <Action 7>

  CASE TO <Maximum expression>: <Action 8>

  CASE <Minimum expression> TO <Maximum expression>: <Action 9>

  CASE [= / ~= / ~~ / [= / > />= / < / <= / [~ / [~~ ] <Expression 10>: <Action 10>

  CASE <Minimum expression> [<= * <=] [< * <=] [<= * <] [< * <]  <Maximum expression>: <Action 11>

  ...
  [
  OTHER CASE: <Action other case>
  OR
  OTHER CASE:
  <Action other case>
  OR
  OTHER CASE
  <Action other case>
  ]
END
<SWITCH>:
Marca el comienzo del bloque de estado de cuenta.
<Comparison variable>:
Variable de comparación (cualquier tipo).
<CASE>:
Diferentes casos de comparación.
<Expression N>:
Valor que se debe comparar con la variable de comparación (misma clase que la variable de comparación).
<Action N>:
Acción a realizar si la expresión correspondiente es igual a la variable de comparación. Una vez realizada esta acción, el proceso continúa después de la palabra clave END.
<OTHER CASE>:
Acción a realizar si la variable de comparación es igual a ninguna expresión (opcional).
<END>:
Marca el final del bloque de estado de cuenta.

Simplified syntax for an integer value of consecutive values Ocultar los detalles

<Result> = SWITCH (<Value>, <Result 1>, <Result 2>, ... <Result 3> [ELSE <Other Result>])
<Result> = SWITCH (<Value>
      <Result 1>,
      <Result 2>,
      ...
      )
<Result>:
Valor devuelto por SWITCH
<SWITCH>:
Marca el comienzo del bloque de estado de cuenta.
<Value>:
Variable de comparación (cualquier tipo).
<Result N>:
Valor devuelto. Devuelve <Resultado 1> si el valor de <Valor> es 1, <Resultado 2> si el valor de <Valor> es 2, etc.
<ELSE>:
Se utiliza para procesar el caso cuando ningún resultado corresponde al valor. Se produce un error de WLanguage si no se procesa este caso.
<Other Result>:
Valor devuelto si ningún resultado corresponde al valor.
Observaciones

Salir de una sentencia SWITCH

La sentencia BREAK SWITCH se utiliza para salir de una sentencia SWITCH y ejecutar el resto del proceso.
La sintaxis es la siguiente:
SWITCH <Expression>
CASE <VALUE>
...
IF <Condition> THEN
BREAK SWITCH
END
END
Por ejemplo:
SWITCH Quantity
CASE 1
 IF User = "Admin" THEN
BREAK SWITCH
 END
 Comment = "Take advantage of our promotions: buy one, get one free"
 
CASE 2:
 IF User = "Admin" THEN
BREAK SWITCH
 END
 Comment = "Buy two products: get one free"
 
OTHER CASE: Comment = ""
END

INTERRUPTOR con prueba en una condición

El resultado de una condición realizada en una sentencia CASE puede verificarse en una sentencia SWITCH. Esta condición puede ser una condición compleja que contiene llamadas a funciones, ....
Por ejemplo:
SWITCH True
// Check a complex condition
CASE Value1 = 10 AND Value2 = 20: Trace(10)
// Check a condition on a function
CASE CheckCondition()
señalar: para ejecutar una prueba con una condición simple, le recomendamos que utilice la siguiente sintaxis:
SWITCH Value
CASE 10: Trace(10)
CASE 10<*<20: Trace("Included between 10 and 20")
CASE >30: Trace("Greater than 30")
END

Palabra clave OR

La palabra clave OR no se puede utilizar para comparar el valor con una expresión o con otra.. La coma debe ser usada. Ejemplo de no hacer:
Sub is int = 2
SWITCH Sub
CASE 1 OR 2: Info("case 1 or 2")
CASE 3: Info("case 3")
OTHER CASE: Info("other case")
END
que hacer:
Sub is int = 2
SWITCH Sub
CASE 1,2: Info("case 1 or 2")
CASE 3: Info("case 3")
OTHER CASE: Info("other case")
END

OTRAS palabras clave de CASO

OTRO CASO debe ser la última sentencia utilizada en la sentencia conditional SWITCH.
Versiones 18 y posteriores
control Botón de opción: SWITCH automático
Nueva funcionalidad versión 18
control Botón de opción: SWITCH automático
control Botón de opción: SWITCH automático
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Switch Case com n opções em cada case só usar virgula
SWITCH NUM

CASE 2,4,52,63
....

CASE 43
...


CASE 55
...


CASE 62,64,79,12
...


OTHER CASE
...

END
BOLLER
26 11 2019
video SWITCH
https://youtu.be/NNuZF8I38i4
https://windevdesenvolvimento.blogspot.com/2019/09/dicas-2332-windev-webdev-mobile.html
// SELECTING A ROW OF CAR_CARROSEL
SWITCH CAR_CARROSEL
CASE 1
Info("CADASTRO CLIENTE")
CASE 2
Info("CADASTRO REPRESENTANTE")

CASE 3
Info("CADASTRO TRANSPORTADORA")
OTHER CASE
END
amarildo
30 09 2019
Exemplo Dia da Semana em Numeros
diaSemana is string = Lower(DateToDayInAlpha(gData))

SWITCH Lower(diaSemana)
CASE "segunda-feira" : diaSemana = 1
CASE "terça-feira" : diaSemana = 2
CASE "quarta-feira" : diaSemana = 3
CASE "quinta-feira" : diaSemana = 4
CASE "sexta-feira" : diaSemana = 5
CASE "sábado" : diaSemana = 6
CASE "domingo" : diaSemana = 7
OTHER CASE : diaSemana = 0
END
BOLLER
09 04 2019
Example
SWITCH UF

CASE "AC" : x = 1
CASE "AL" : x = 2
CASE "AP" : x = 3
CASE "AM" : x = 4
CASE "BA" : x = 5
CASE "CE" : x = 6
CASE "DF" : x = 7
CASE "ES" : x = 8
CASE "GO" : x = 9
CASE "MA" : x = 10
CASE "MT" : x = 11
CASE "MS" : x = 12
CASE "MG" : x = 13
CASE "PA" : x = 14
CASE "PB" : x = 15
CASE "PR" : x = 16
CASE "PE" : x = 17
CASE "PI" : x = 18
CASE "RJ" : x = 19
CASE "RN" : x = 20
CASE "RS" : x = 21
CASE "RO" : x = 22
CASE "RR" : x = 23
CASE "SC" : x = 24
CASE "SP" : x = 25
CASE "SE" : x = 26
CASE "TO" : x = 27

END

ListSelectPlus(COMBO_T006_UF,x)
BOLLER
02 04 2019
Exemplo SWITCH
Exemplo SWITCH

EDT_resultado=""
SWITCH EDT_idade
CASE <= 18
EDT_resultado="Menor ou igual 18 anos"
CASE >=60
EDT_resultado="Maior ou igual que 60"
CASE 19 : EDT_resultado="19 anos"
CASE 20
EDT_resultado="20 anos"
CASE 21,22,23
EDT_resultado="21 22 23"
CASE 24 TO 30
EDT_resultado="entre 24 a 30 anos"
CASE 31 <*< 40
EDT_resultado="Entre 32 ate 39 anos"
OTHER CASE
END

//Blog com Video e Exemplo
http://windevdesenvolvimento.blogspot.com.br/2016/10/aula-934-windev-comandos-2-switch.html
https://www.youtube.com/watch?v=XAmIYCMb_ao

De matos
08 10 2016