Contar registros en blanco en Visual Foxpro 9.0

Hola czuluaga0210! ¿Me puedes ayudar? Tengo una tabla con 3 campos. Lo que necesito es saber el numero de registros en blanco que existen en dicha tabla. Va así: imagina que el usuario debe llenar los 3 campos con información (Nombre, Edad, Sexo). Vamos a suponer que en el día, el usuario ingreso 20 registros, y de esos, 15 registros están completos (nombre, edad, sexo) pero en 5 registros el usuario omitió llenar con datos uno de los 3 campos (cualquiera de los 3). Lo que necesito es conocer "el numero" de registros que tienen incompleta la información, es decir, que tienen un registro en blanco en un campo. Ese numero de registros en blanco lo debo mostrar en un text1! ¿Me comprendes? Espero tus orientaciones! Bendiciones!
Respuesta
1
Esto lo puedes realizar con un ciclo seria algo así:
Private N
N=0
Use tabla1 in 0 Shared
Select Tabla1
Go Top
While !EOF()
     IF ALLTRIM(campo1)=""
          N=N+1
     ELSE
          IF ALLTRIM(campo2)=""
               N=N+1
          ELSE
               IF ALLTRIM(campo3)=""
                    N=N+1
               ENDIF
          ENDIF
     ENDIF
SKIP
Endwhile
IF N>0
     messagebox("Existen " + N + " Registros en Blanco")
ELSE
    MESSAGEBOX("No se encontraron registros en blanco"
Endif
Esta es una manera de realizarlo... suerte.
Hola! Recibo con mucho entisiasmo tu respuesta! Lo he probado y funciona muy bien! Aprovecho este espacio, para consultarte algo referido al tema.. que me ha dejado una duda. Leyendo un poco... pude hacer un conteo de registros en blanco en un campo de la tabla y luego mostrarlo en un text1, de la siguiente manera: En el INIT del form, puse esto:
SELECT COUNT (tabla1.Campo1) AS total FROM tabla1 WHERE campo1 = " " 
THISFORM.Text1.Value = total
Funciona bastante bien, el numero de registros en blanco es correcto y lo muestro bien en el text. El problema es que al iniciar el form, aparece una ventana (Query) de examinacion (como si ejecutase un BROWSE) y me muestra el numero de registros. Al cerrarla, me aparece el form normal. Existe alguna manera para evitar, en este caso, ¿qué se abra esa ventana? ¿Algo así como BROWSE .F. o algo por el estilo? Leí, pero no encuentro nada. Saludos! :D :D :D Y gracias!
Si la sentencia que colocas en el INIT es la que muestras en tu comentario debes colocar lo siguiente antes de la misma:
if !USED("Tabla1")
     Use Tabla1 In 0 Shared
Endif
Select Tabla1
Con esto ese error no debe aparecer más.
Lo que sucede es que le dices en el INIT del Form que seleccione los campos de la tabla sin haber usado ni abierto la tabla. POr lo tanto te aparece ese cuadrito.
Duerte :-)
Y no te preocupes, pregunta todo lo que quieras que para eso estamos. Siento no haber dado respuesta antes, pues tenia mi Internet averiado.
Muchas gracias! He corregido el problema con tus orientaciones! Son excelentes! Y mil gracias por tu disposición de ayudar a los que necesitamos una mano! Bendiciones che!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas