bueno compa, esto es refacil, pa empezar cuando tu marcas un checkbox, esto te genera un valor boleano o numérico, tú se lo puedes indicar en la propiedad value de cada respectivo check, tons tienes que validar en tus 3 checkbox cuando los 3 estén encendidos que se haga visible tu botón si es que la propiedad de visible está en falso o hacer que se active tu botón si tu propiedad de enabled está en falso, o.k. después cuando se active tu botón, ahi en en evento click del botón solo pones esta instrucción...
REPORT FORM \"ruta\"nombredelreporte.frx preview
(si lo quieres en pantalla solamente)
REPORT FORM "ruta\"nombredelreporte.frx NOEJECT NOCONSOLE TO PRINTER
(si lo quieres mandar directamente a la impresora)
o.k. esto se ejecutará hasta que des click en el botón, ahora que si al momento de marcar tus 3 checbox quieres que se active el botón y se mande automaticamente el reporte sin dar click , pues en la validación que debes de poner en tus checkbox para saber si están activos los 3 pones esta instrucción
thisform.nombredelboton.click
y el código que está en el evento click se ejecuta, u otra, en tu formulario pones un timer y dentro del evento timer le pones esa misma instrucción para que se ejecute ese mismo codigo pero dentro de la validación de si los 3 checbox están marcados o.k. en la propiedad interval del timer le pones la cantidad en milisegundos (osea que 1000 es 1 seg.) y cada que se cumpla este intervalo automáticamente se ejecuta el codigo para saber si los check están marcados y mandar llamar el reporte... sale ay me avisas si jalóoo