Entiendo que estás hablando de un programa hecho en PowerCOBOL. En PC 3.0 yo lo que hago es poner en el botón sólo la llamada a un subprograma que estará en el evento PROCEDURE del form.
Por ejemplo, en el botón estaría un código como éste:
El subprograma "Imprimir" estaría en la PROCEDURE. Si yo quiero imprimir sin pulsar el botón, símplemente llamo a dicho subprograma.
Si el programa es nuevo creo que es una buena práctica proceder de esta manera. Pero si el programa ya está hecho y es grande, entonces tu código sí es de utilidad. Y me resulta muy ilustrativo sobre la forma de invocar las funciones de la API de Windows.