Hace pocos días un buen amigo, me preguntaba la forma en que podría correr un proceso dentro de un dialogo sin la necesidad de que el usuario tuviera que pulsar algún control. Aquí les dejo el ejemplo de cómo lo pueden hacer haciendo uso del CodeBlock bStart de la clase TDialg. DEFINE FONT oFontDlg NAME "Tahoma" SIZE 0, -20 BOLD ITALIC DEFINE FONT oFont3 NAME "Arial" SIZE 0, -21 NESCAPEMENT 900 DEFINE BRUSH oBrushDlg STYLE "BORLAND" DEFINE DIALOG oDlgSky FROM 0, 0 TO 100, 600 TITLE "Test Meter" PIXEL FONT oFontDlg UPDATE @ 10, 30 METER oMeter VALOR nConta TOTAL 100 SIZE 260, 20 PIXEL INIT nConta:=0 PROMPT "Ejemplo de Meter" OF oDlgSky oDlgsky:bStart := { cw:TuFuncion( oMeter ) , oDlgsky:End() } ACTIVATE DIALOG oDlgsky CENTERED FUNCTION TUFUNCION() PARAM oMeter ABRE("prod") nTotal := prod->( Lastrec() ) oMeter:nTotal := nTotal nConta := 0 Mientras !eof() nConta++ oMeter:Set( nConta ) salta FINM cierra TERMINA ¡¡¡ Notaron alg