Iff condicional

Tengo un campo llamado text59, de acuerdo al siguiente Iff sera su contenido:
=IIf([Comisión Code]=?A ?,[Price]*[Quantity]+[Text39],IIf([Comisión Code=?AI?,((([Price]*[Quantity]*[Text39]/100+[Text75]))), mi problema es que quiero a#adirle que si Comisión Code= ? ? Calcule solo [Price]*[Quantity] trato de a#

1 respuesta

Respuesta
1
Tu usas varias Variables... o campos...
Quantity
Price
Text39
Text75
Y
Comisión Code
Si estas variables, ya tiene valor cuando tu formulario se carga... es decir, si las tomas de una Base de Datos, o ya están predeterminadoas, bien puedes poner esa variable en el Form_Load
Si no. Si esas variables, se asignan en tiempo de ejecución, después de ciertas operaciones... Es en ese momento cuando tienes que establecer el controlsource...
Lo puedes establecer en el evento de un botón, o al cargarse cierta información...
Lo ideal, es que tengan información las variables o campos, para que no llegase a mandar un error, o un dato incorrecto, al faltar este y hacerse las operaciones.
Te agradeceré me orientes sobre ese concepto, osea en el load form o donde debo poner estas instrucciones, gracias disculpa..
Cada record yo le entro quantity, los text son campos que provienen de calculaciones, si lo pongo en load form load en ese momento no he entrado el quantity, lo que quiero es que al entrar el quantity calcule y lo lleve a un campo especifico con las condiciones que tengo. No entiendo porque se me ha complicado tanto cuando lo único que quiero es añadir que cuando sea blanco caalcule price por quantity, la operación del IIf si la dejo sola trabaja excelente..
Para mi todo este código debe trabajar, lo que no entiendo porque aun no trabaja, dejame explicarte más sobre el asunto:
Ese campo donde tengo estas instrucciones se llama text59, cuando chequeas las propiedades del campo la segunda linea es Control Source, es ahí donde tengo escrito, estas condiciones. Lo único que tiene es la linea del IIF, cuando le inserto las demás lineas que me recomiendas, no las guarda cuando yo cierro las ventanas, se supone que las guarde y no las guarda. Espero poderte aber dado detalles que puedan ayudarte a que me ayudes, gracias y disculpa
Lógico que no te las esta guardando en la linea del ControlSource del text59. Ya que estas lineas son código, para modificar en tiempo de Ejecución y no en tiempo de diseño el controlsource de ese text.
Lo que necesitas hacer... es poner ese código, en algún evento del formulario o algún botón (por ejemplo el Load del formulario)
Para establecer el controlsource de ese text
Por que en vez de ponerlo todo en una linea, ¿lo pones en varias?
If ([Comision Code ]= empty) Then
'El calculo que quieres...
else
= IIf([Comisión Code] = "A", [Price] * [Quantity] + [Text39], IIf([Comisión Code] = "AI", ((([Price] * [Quantity] * [Text39] / 100 + [Text75])))))
No funciona, recuerda estas instrucciones las tengo en el Control Source... dame un ejemplo con el calculo, gracias..
Y por que no lo pasas a una variable, ya que comprobaste la variable, lo pasas al control source... ¿y de origen de datos estableces la variable?
Disculpame pero no te entiendo, podrías explicarme con un ejemplo, gracias..
Dim Var1
If ([Comision Code ]= empty) Then
'El calculo que quieres, solo el quantity por el price
Var1=[Price]*[Quantity]
else
IIf([Comisión Code] = "A", [Price] * [Quantity] + [Text39], IIf([Comisión Code] Var1= "AI", ((([Price] * [Quantity] * [Text39] / 100 + [Text75])))))
end if
controlsource= var1
Y listo... ya lo tienes hecho.
Entonces, eso ponlo en el Evento Keypress del campo Quantity... Y cuando valides que el campo no sea nulo, o que es nulo, estableces el valor del controlsource.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas