by jponce » Thu Oct 08, 2009 11:09 pm
DATA aDias AS ARRAY INIT { "01", "02", "03", "04", "05", ;
"06", "07", "08", "09", "10", ;
"11", "12", "13", "14", "15", ;
"16", "17", "18", "19", "20", ;
"21", "22", "23", "24", "25", ;
"26", "27", "28", "29", "30", "31" } READONLY
DATA aMeses AS ARRAY INIT { "Enero", "Febrero", "Marzo", "Abril", ;
"Mayo", "Junio", "Julio", "Agosto" , ;
"Septiembre", "Octubre", "Noviembre", "Diciembre" } READONLY
DATA aAnios AS ARRAY INIT Array( 110 )
...
// Relleno el array Anios:
// Tabla aRray de Años
nAnio:= Year( Date() ) -110
for each cAnio in ::aAnios
cAnio:= Str( ++nAnio, 4 )
next
...
// En el metodo que muestra el Dlg, defino las locales
cDia := ""
cMes := ""
cAnio := ""
// Mas adelante los muestro así:
REDEFINE COMBOBOX aO[_PCmb1] VAR cDia ITEMS ::aDias ID 105 OF aO[_PFld]:aDialogs[1] UPDATE
REDEFINE COMBOBOX aO[_PCmb2] VAR cMes ITEMS ::aMeses ID 106 OF aO[_PFld]:aDialogs[1] UPDATE
REDEFINE COMBOBOX aO[_PCmb3] VAR cAnio ITEMS ::aAnios ID 107 OF aO[_PFld]:aDialogs[1] UPDATE
...
// Mas adelante el Boton Guardar hace lo propio luego, para 'limpiar' los campos, de gets y en este caso combos, hago:
cDia := ""
cMes := ""
cAnio := ""
oDlg:Update()
Mira yo tube casi el mismo problema pero yo lo que hago es lo siguiente
aO[_PCmb1]:set(::aDias[1]) // esto lo que va hacer es que te va a regresar al registro 1 de la matriz adias
Espero que te sirva
Atentamente
Julio Ponce