Existe BAPI_MATERIAL_AVAILABILITY, pero no creo que devuelva los mismos resultados que CO09. La cuestión es que en SAP no hay una función que haga exactamente lo mismo que hace cada transacción. (Supongo que la separación de preocupaciones no era algo importante en la década de 1970).
No estoy seguro de qué tipo de informe estás escribiendo (y esto podría ser una razón para la votación negativa), pero en mi humilde opinión, mostrar un nivel de granularidad tan detallado no tiene mucho sentido para mostrarlo para todo el conjunto de materiales de una vez. Tal vez podrías mostrar solo información general de ATP y/o stock en existencia, y luego proporcionar funcionalidad de doble clic con CALL TRANSACTION (y saltar la primera pantalla) para llevar a los usuarios a CO09 para un análisis más detallado.
De lo contrario, básicamente estarías tratando de ingeniería inversa de CO09 e insertando el mismo código en un programa personalizado.
Ten en cuenta que la verificación de ATP puede llevar algo de tiempo, por lo que si intentas poner BAPI o FM en un bucle, podría afectar el rendimiento de tu informe. Realmente deberías volver a evaluar este asunto. Dudo seriamente que exactamente la misma información que en CO09 sea lo que los usuarios realmente desean...