Hola Agag.
Claro que el OnSetText no te servira para esto. Pero.... estas mezclando la lógica. Un asunto es mantener todo en mayúsculas, y otro muy diferente validar que un artículo (o cualquier otro dato relacionado) dado exista en la base de datos.
Para ello si has de valerte del OnValidate.
Hasta luego.