Use Dynamic VDB instead:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<vdb name="LPIN_TEST_VDB" version="2">
<description/>
<property name="validationDateTime" value="Tue Feb 27 12:35:47 CST 2018"/>
<property name="validationVersion" value="8.12.13"/>
<model name="HRSPROD">
<source connection-jndi-name="java:/BQT" name="HRSPROD" translator-name="oracle"/>
<metadata type="DDL"><![CDATA[
CREATE FOREIGN TABLE VDB_TEST_TBL (
NM string(30) OPTIONS(NAMEINSOURCE '"NM"', NATIVE_TYPE 'VARCHAR2'),
ADDDATE date OPTIONS(NAMEINSOURCE '"ADDDATE"', NATIVE_TYPE 'DATE', FIXED_LENGTH 'TRUE')
) OPTIONS(NAMEINSOURCE '"VDB_TEST_TBL"', UPDATABLE 'TRUE');
CREATE FOREIGN FUNCTION GREATEST (
IN newParameter_1 string(4000),
IN newParameter_2 string(4000),
IN newParameter_3 string(4000),
OUT newParameter_4 string(4000) NOT NULL RESULT
) OPTIONS(NAMEINSOURCE 'GREATEST');
CREATE FOREIGN FUNCTION LEAD (
IN newParameter_1 string(4000),
OUT newParameter_2 string(4000) RESULT
) OPTIONS(NAMEINSOURCE 'LEAD', AGGREGATE 'TRUE', "ALLOWS-ORDERBY" 'TRUE', "ALLOWS-DISTINCT" 'TRUE');
]]></metadata>
</model>
<model name="VBL" type="VIRTUAL">
<property name="imports" value="HRSPROD"/>
<metadata type="DDL"><![CDATA[
CREATE VIEW TESTVIEW (
NM string(30),
ADDDATE date,
greatest string,
LEAD_DT string
)
AS
SELECT
HRSPROD.VDB_TEST_TBL.NM, HRSPROD.VDB_TEST_TBL.ADDDATE, GREATEST('HARRY', 'HARRIOT', 'HAROLD') AS greatest, LEAD(HRSPROD.VDB_TEST_TBL.ADDDATE) OVER (PARTITION BY NM Order by ADDDATE) AS LEAD_DT
FROM
HRSPROD.VDB_TEST_TBL;
]]></metadata>
</model>
</vdb>