In the sample of Yunus, there is a nice sample included.
This one is also interesting :
 aData := { { "Name", Space(40) }, ;
       { "DOB",  CToD(''), nil, nil, { || aData[ 2, 2 ] < STOD('19900101' ) } }, ; // valid
       { "Salary", 0, nil, NumPict(11,2) }, ; // picture clause
       { "State", "NY", nil, { { "NY", "NewYork" }, { "CA", "California" } } }, ; // dbcombo
       { "Married", .f. }, ; // auto checkbox
       { "Country", "USA", .f. }, ; // not editable
       { "Notes",  "",  nil, 'M' } } // MemoEdit
 lModified := MsgGet( "EDIT VALUES", "Short Msg", aData )