Dieses Beispiel veranschaulicht, wie eine partitionierte Datei mit einem bestimmten Satz von Dateimerkmalen programmgesteuert angelegt wird.
Klicken Sie mit der rechten Maustaste auf das MVS-Dateisubsystem für die entsprechende Verbindung und wählen Sie anschließend die Aktion API-Beispielaktionen > PDS anlegen aus.
Eine partitionierte Beispieldatei wird angelegt. Der Name der angelegten Datei ist als Konstante mit der Bezeichnung DATASET_NAME fest in der Aktion codiert.
Wenn die Datei bereits vorhanden ist, wird sie gelöscht und anschließend erneut angelegt. Die folgenden Nachrichten werden an die Systemausgabe gesendet.

Die Methode run des Beispiels stellt zu Beginn sicher, dass die Datei, die sie erstellen soll, noch nicht vorhanden ist. Zuerst ruft sie ZOSCatalog für das MVS-Dateisystem ab, indem sie getCatalog für die ausgewählte ISystemReference aufruft.
ZOSCatalog catalog = getCatalog((ZOSSystemReference)selectedItem);
Sobald ZOSCatalog abgerufen wurde, wird die zugehörige Methode findMember aufgerufen, um festzustellen, ob bereits eine partitionierte Datei mit dem angegebenen Namen vorhanden ist. Wenn die Datei bereits vorhanden ist, wird im Beispielcode mithilfe der Methode delete versucht, die vorhandene Datei zu löschen. Es ist wichtig, die OperationFailedException abzufangen, falls während des Löschens Fehler auftreten.
ZOSPartitionedDataSet newPDS = null;
......
newPDS = (ZOSPartitionedDataSet)
catalog.findMember(DATASET_NAME);
if(newPDS != null){
try {
......
newPDS.delete(true, null);
} catch (OperationFailedException ofe) {
System.err.println("Allocate PDS Action - PDS ("
+ DATASET_NAME +
") already exists and could not be deleted.");
return;
}
}
IPhysicalResourceFactory physicalFactory =
PhysicalResourceFactoryFactory.getFactory(
ZOSCatalog.class, ZOSDataSet.class);
......
ZOSDataSet res = (ZOSDataSet)physicalFactory.getPhysicalResource(catalog,ZOSPartitionedDataSet.class,DATASET_NAME);
res.setCharacteristics(getCharacteristics());
try {
res.allocate(null);
} catch (OperationFailedException e) {
System.out.println("Allocate PDS Action - PDS allocation failed" + e.getMessage());
}