From the viewpoint of the Java Open Client, the minimum information that you must provide in a ProDataGraph to map a ProDataSet parameter depends on the parameter passing mode of the application service. For example:
OUTPUT parameters — You must pass a com.progress.open4gl.ProDataGraphHolder object instance (see ProDataGraphHolderclass). Use of this holder class is similar to holder classes for other parameter data type mappings. On output, the holder object contains a reference to a com.progress.open4gl.ProDataGraph object that you can access. For more information on managing a ProDataGraph for an OUTPUT ProDataSet parameter, see Passinga ProDataGraph as OUTPUT.
INPUT parameters — You must pass a com.progress.open4gl.ProDataGraph object instance. Before passing the ProDataGraph, as a minimum, you must create and initialize (or obtain) the object with a ProDataGraphMetaData object specifying the number and meta data of its underlying tables (ProDataObjectMetaData objects), and which must map to the ProDataSet temp-table schemas. In this meta data, you must also include ProDataRelationMetaData objects that map to all DATA-RELATION objects defined in a static ProDataSet parameter. Differences do exist for how the schema must be passed between static and dynamic ProDataSets. For more information on managing a ProDataGraph for an INPUT ProDataSet parameter, see Passing a ProDataGraph as INPUT or INPUT-OUTPUT.
INPUT-OUTPUT parameters — You must pass an instance of com.progress.open4gl.ProDataGraphHolder that contains a reference to a client-supplied com.progress.open4gl.ProDataGraph object instance (see the ProDataGraphHolderclass). Use of this holder class is similar to holder classes for other parameter data type mappings. The requirements for supplying the input ProDataGraph are the same as for passing an INPUT parameter. On output, the same holder object is changed to reference a com.progress.open4gl.ProDataGraph object that represents the ProDataSet that is passed as output. For more information on managing a ProDataGraph for an INPUT-OUTPUT ProDataSet parameter, see Passing a ProDataGraph as INPUT or INPUT-OUTPUT.