• Domingo 22 de Diciembre de 2024, 17:45

Autor Tema:  Problemas con formulas en crystal 7  (Leído 2724 veces)

puchungon

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Problemas con formulas en crystal 7
« en: Martes 1 de Mayo de 2012, 16:30 »
0
 :angel: Buenas compañeros soy nuevo en el foro y tengo un problema con una formula,  :scream: tengo una aplicacion en vb6 con crystal reports 7 donde me rellena un informe de resultados de un paciente pero que pasa una de las formulas no me manda error pero no hace lo que se pide.

No se si es pq tiene muchos if miren el codigo haber si alquien me ayuda.
Código: [Seleccionar]
if tonumber({vs_informe.peso_kg}) < tonumber({vs_informe.peso1_n17ohp}) then //1.50
 
   if tonumber({vs_informe.concentracion_n17ohp}) < tonumber({vs_informe.rango1_n17ohp}) and {vs_informe.contador_n17ohp}= '1' then
       {vs_informe.concentracion_n17ohp}
   else if tonumber({vs_informe.concentracion_n17ohp}) >= tonumber({vs_informe.rango1_n17ohp}) and {vs_informe.contador_n17ohp}= '1' then
       "***"
   else if tonumber({vs_informe.repeticion_n17ohp}) < tonumber({vs_informe.rango1_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
       {vs_informe.repeticion_n17ohp}
   else if tonumber({vs_informe.repeticion_n17ohp}) >= tonumber({vs_informe.rango1_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
       "***"
   else if tonumber({vs_informe.confirmacion_n17ohp}) < tonumber({vs_informe.rango1_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
       {vs_informe.confirmacion_n17ohp}
   else if tonumber({vs_informe.confirmacion_n17ohp}) >= tonumber({vs_informe.rango1_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
       "***"

else if tonumber({vs_informe.peso_kg}) >= tonumber({vs_informe.peso1_n17ohp}) then //1.50

   if tonumber({vs_informe.concentracion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      {vs_informe.concentracion_n17ohp}
   else if tonumber({vs_informe.concentracion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      "***"
   else if tonumber({vs_informe.repeticion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      {vs_informe.repeticion_n17ohp}
   else if tonumber({vs_informe.repeticion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      "***"
   else if tonumber({vs_informe.confirmacion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      {vs_informe.confirmacion_n17ohp}
   else if tonumber({vs_informe.confirmacion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      "***"

else if tonumber({vs_informe.peso_kg}) < tonumber({vs_informe.peso2a_n17ohp}) then //2.49

   if tonumber({vs_informe.concentracion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      {vs_informe.concentracion_n17ohp}
   else if tonumber({vs_informe.concentracion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      "***"
   else if tonumber({vs_informe.repeticion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      {vs_informe.repeticion_n17ohp}
   else if tonumber({vs_informe.repeticion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      "***"
   else if tonumber({vs_informe.confirmacion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      {vs_informe.confirmacion_n17ohp}
   else if tonumber({vs_informe.confirmacion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      "***"

else if tonumber({vs_informe.peso_kg}) >= tonumber({vs_informe.peso2_n17ohp}) then //2.49

   if tonumber({vs_informe.concentracion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      {vs_informe.concentracion_n17ohp}
   else if tonumber({vs_informe.concentracion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      "***"
   else if tonumber({vs_informe.repeticion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      {vs_informe.repeticion_n17ohp}
   else if tonumber({vs_informe.repeticion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      "***"
   else if tonumber({vs_informe.confirmacion_n17ohp}) < tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      {vs_informe.confirmacion_n17ohp}
   else if tonumber({vs_informe.confirmacion_n17ohp}) >= tonumber({vs_informe.rango2_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      "***"
   
else if tonumber({vs_informe.peso_kg}) > tonumber({vs_informe.peso3_n17ohp}) then //2.50

    if tonumber({vs_informe.concentracion_n17ohp}) < tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      {vs_informe.concentracion_n17ohp}
   else if tonumber({vs_informe.concentracion_n17ohp}) >= tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      "***"
   else if tonumber({vs_informe.repeticion_n17ohp}) < tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      {vs_informe.repeticion_n17ohp}
   else if tonumber({vs_informe.repeticion_n17ohp}) >= tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      "***"
   else if tonumber({vs_informe.confirmacion_n17ohp}) < tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      {vs_informe.confirmacion_n17ohp}
   else if tonumber({vs_informe.confirmacion_n17ohp}) >= tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      "***"

else if tonumber({vs_informe.peso_kg}) <= tonumber({vs_informe.peso3_n17ohp}) then //2.50

   if tonumber({vs_informe.concentracion_n17ohp}) < tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      {vs_informe.concentracion_n17ohp}
   else if tonumber({vs_informe.concentracion_n17ohp}) >= tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp} = '1' then
      "***"
   else if tonumber({vs_informe.repeticion_n17ohp}) < tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      {vs_informe.repeticion_n17ohp}
   else if tonumber({vs_informe.repeticion_n17ohp}) >= tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp}= '2' then
      "***"
   else if tonumber({vs_informe.confirmacion_n17ohp}) < tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      {vs_informe.confirmacion_n17ohp}
   else if tonumber({vs_informe.confirmacion_n17ohp}) >= tonumber({vs_informe.rango3_n17ohp}) and {vs_informe.contador_n17ohp} = '3' then
      "***"
 
Nota: en esta seccion la formula verifa un peso si es correcto debe ingresar y ejecutar los otros if pero  hasta aqui fuenciona cuando le agrego el segundo if es que no entra y me imprime vacio y ya he reestructurado la formula mas de 4 veses y no se como hacer ya que no me manda error en ningun lado de la formula...... :ball:
« última modificación: Martes 1 de Mayo de 2012, 18:13 por puchungon »