FoxPro/Visual FoxPro - urgente por favor

 
Vista:

urgente por favor

Publicado por mario (90 intervenciones) el 16/02/2009 13:09:40
muy buenas tengo un problema en mi formulario factura. estoy usando un opt con tres opciones para descuento 1 =5%, 2=10% y 3 =0% cuando le doy grabar en descuento de 5% el me graba 1 esta bien pero como ago para que me grabe alreves o sea si le doy en la opcion 1 y me grabe 5%, por favor si me ayudan estoy usando bd mysql y toda mis grabacion lo estoy realizando con sentencias sql es por eso que estoy algo perdido pues no puedo usar do case. desde ya muchas graciassss
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:urgente por favor

Publicado por jose camilo (805 intervenciones) el 16/02/2009 14:01:10
usas una variable temporal
haces un case y en vez de utilizar la variable del optiongrup usas la temporal
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:urgente por favor

Publicado por mario (90 intervenciones) el 16/02/2009 14:18:32
hola amigo mira estoy totalmente bloqueado me dices que use un case pero yo ya e usado un case y no me sale si puedes enviar un ejemplo te agradeceria gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:urgente por favor

Publicado por alexcoinc (450 intervenciones) el 16/02/2009 15:16:04
Por ejemplo:

optiongroup: 1=5% 2=10%... etc.

Entonces:

Do Case
Case optiongroup=1
vbletemporal=(5/100) && depende como grabes en la tabla, tambien
&& podría ser solo el 5; en este último caso a
&& sabienndas que cuando vayas a realizar un calculo
&& lo dividas entre 100.. Ok
Case optiongroup=2
vbletemporal=(10/100) && depende como grabes en la tabla, tambien
&& podría ser solo el 10; en este último caso a
&& sabienndas que cuando vayas a realizar un calculo
&& lo dividas entre 100.. Ok
.
.
.
.
EndCase

Luego grabaras la vbletemporal....

Eso es todo.

alexcoinc
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:alexcoinc

Publicado por mario (90 intervenciones) el 16/02/2009 15:46:59
hola amigo mira no me sale te cuento que yo uso sql para grabar porq tengo mi base de datos en mysql te envio lo que e echo
fd_descue aqui es donde quiero q esta en la tabla factura grabar
Do Case
Case optiongroup=1
fd_descue=(5/100)
Case optiongroup=2
fd_descue=(10/100)
Case optiongroup=3
fd_descue = 0

y ahora le digo que me grabe(le puese q me modifique para probar)

sql: update factura set fd_descue=?fd_descue where facturanro=?m.facturanro

aver si me puedes ayudar gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:alexcoinc

Publicado por alexcoinc (450 intervenciones) el 16/02/2009 15:55:06
A mi humile modo de ver, en lo que me escribes te falta

ENDCASE


Y aver .... se escribe con h y con b..... haber si me puedes .... ES BROMA !!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:alexcoinc

Publicado por mario (90 intervenciones) el 16/02/2009 16:12:40
gracias por la correcciones es verdad y intentare de otra forma porque no me graba pero no pasa nada y gracias una ves mas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:alexcoinc

Publicado por HELDER MARTINEZ (COUNDY)  (711 intervenciones) el 16/02/2009 18:41:34
Yo nunca he trabajado con bd mysql,

pero en vfp tablas lo haria asi;


public nDescuento
nDescuento = thisform.optiongroup.value

select tabla
if nDescuento = 1
appen blank
replace campo with 0.05 * 100
else
if nDescuento = 2
append blank
replace campo with 0.10 * 100
else
if nDecuento = 3
append blank
replace campo with 0
endif
endif
endif

Claro el campo donde almacenas debe ser numerico.

Saludes espero te ayude amigo, cualquier duda me avisas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:urgente por favor

Publicado por HELDER MARTINEZ (COUNDY)  (711 intervenciones) el 16/02/2009 18:37:57
Yo nunca he trabajado con bd mysql,

pero en vfp tablas lo haria asi;


public nDescuento
nDescuento = thisform.optiongroup.value

select tabla
if nDescuento = 1
appen blank
replace campo with 0.05 * 100
else
if nDescuento = 2
append blank
replace campo with 0.10 * 100
else
if nDecuento = 3
append blank
replace campo with 0
endif
endif
endif


Saludes espero te ayude amigo, cualquier duda me avisas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:urgente por favor

Publicado por jose camilo (805 intervenciones) el 16/02/2009 22:31:09
Do Case
Case Thisform.optiongroup.Value=1
fd_descue=(5/100)
Case Thisform.optiongroup.Value=2
fd_descue=(10/100)
Case Thisform.optiongroup.Value=3
fd_descue = 0
EndCase

sql: update factura set fd_descue=?fd_descue where facturanro=?m.facturanro

aver si me puedes ayudar gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar