error qs alguien me ayuda?

33 views
Skip to first unread message

Miguel J

unread,
Mar 10, 2017, 6:54:33 AM3/10/17
to Eneboo
Hola,

Intento definir un valor en un qs pero no me sale, alguien detecta qué hago mal? gracias:

case "variablec": {
               var variableC:Number = parseFloat(cursor.valueBuffer("variablec"));
               var variableA:
                     if (variableC > 0) {
                     var variableA:Number = variableC * 2;
                     } else {
                     var variableA:Number = variableC * 4;
                     }
              valor = util.roundFieldValue(variableA, "lineaspedidoscli", "nombrevariablea");
              break;
}




Oscar Dominguez

unread,
Mar 10, 2017, 7:10:09 AM3/10/17
to Eneboo
No entiendo lo que quieres hacer, pero puedes probar con esto:

case "variablec": {
              var variableA:Number;

              var variableC:Number = parseFloat(cursor.valueBuffer("variablec"));
              if (variableC > 0) {
                     variableA = variableC * 2;
              } else {
                     variableA = variableC * 4;

              }
              valor = util.roundFieldValue(variableA, "lineaspedidoscli", "nombrevariablea");
              break;
}

O de esta otra forma:

var variableA:Number;

var variableC:Number = parseFloat(cursor.valueBuffer("variablec"));
case "variablec": {
              if (variableC > 0) {
                     variableA = variableC * 2;
              } else {
                     variableA = variableC * 4;

              }
              valor = util.roundFieldValue(variableA, "lineaspedidoscli", "nombrevariablea");
              break;
}

José Antonio Cuello

unread,
Mar 10, 2017, 7:34:32 AM3/10/17
to Eneboo Groups
Hola, comentar que aunque se llamen igual "variableA" al hacer un var dentro de un grupo "{   }" al salir del grupo se libera la variable por lo que no comparten valor o son variables distintas la definida antes del "Case" con las definidas dentro del "IF" y "ELSE".

Por otro lado no sé si funciona la definición tipo "var variableA:" sin especificar el tipo.
Como te comenta el compañero Oscar en sus ejemplos, debería funcionar, incluso podrías:

case "variablec": {
              var variableC:Number = parseFloat(cursor.valueBuffer("variablec")) * 2;
              if (variableC <= 0)
                      variableC = variableC * 2;
              valor = util.roundFieldValue(variableC, "lineaspedidoscli", "nombrevariablea");
              break;
}

Un saludo

--
Has recibido este mensaje porque estás suscrito al grupo "Eneboo" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a eneboo+unsubscribe@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

José Antonio Cuello

unread,
Mar 10, 2017, 7:36:17 AM3/10/17
to Eneboo Groups
Me corrijo a mi mismo. En caso del "if" no es necesario que sea menor o igual, ya que en caso de ser igual a cero da igual por que número multipliques siempre será cero.

Un saludo

Miguel J

unread,
Mar 10, 2017, 8:13:36 AM3/10/17
to Eneboo
Genial, muuuchas gracias a los dos. solucionado...me faltaba definir como variable NUMBER, ANTES de la fórmula ....y DENTRO DEL CASE:


case "variablec": {
              var variableA:Number;

Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a eneboo+un...@googlegroups.com.

Oscar Dominguez

unread,
Mar 13, 2017, 4:23:28 AM3/13/17
to Eneboo
No solo eso, tb te faltaba poner punto y coma al final de la linea ;)
Reply all
Reply to author
Forward
0 new messages