Once an aggregate UDF is defined, you can invoke it using a partition window.
Consider the following aggregate UDF definition:
REPLACE FUNCTION myUdoa(x FLOAT) RETURNS FLOAT CLASS AGGREGATE(250) LANGUAGE JAVA NO SQL PARAMETER STYLE JAVA EXTERNAL NAME 'INVF:AggregateFunctions.myUdoa(com.teradata.fnc.Phase, com.teradata.fnc.Context[],double) returns java.lang.Double';
You can invoke this aggregate UDF with the following query:
SELECT myUdoa(Product_ID) OVER() FROM tab_invf01102;