Lotus Script: comparar valores numéricos de Form en un Agente
Por Sagara el
17 de abril del 2011
Note algo curioso en Lotus Script que hasta el momento no entiendo por que pasa así y es que al tratar de hacer una comparación en un Agent que corre en el evento WebQuerySave de un Form no tuve problemas con los valores String:
If doc.stringVal(0) <> doc.stringValPrev(0) Then MsgBox "Valor Cambio" ' Cambiar Prev por actual End If
Pero si con unos valores numéricos:
If doc.intVal(0) <> doc.intValPrev(0) Then MsgBox "Valor Cambio" ' Cambiar Prev por actual End If
En este ultimo If regresa en la aplicación un “Form processed” y en la consola un “Type mistmatch”, lo que significa que se esta usando valores de tipos diferentes. Ni siquiera entra a la condición. Pero doc.intVal(0) y doc.intValPrev(0) ambos son Integer, así que lo que hice fue:
- Cambie a String value el doc.intValPrev(0)
- If Str$(doc.intVal(0)) <> doc.intValPrev(0) Then
Y en la comparación del If hice esto:
Para obtener si el valor cambio o no, con eso es mas que suficiente. Espero les ayude mientras entiendo exactamente el por que sucede así.
Documentación | IBM
Publicado en Programación
1 Comentario »