Setzen der Compress Option

Aus BI-Snippets - Business Intelligence Code und Module
Wechseln zu: Navigation, Suche

Mit Hilfe des folgenden Codes kann man unter 9.3 für eine Tabelle die Option "Compress" in die Metadaten eintragen.


/**************************************************************************************

* Das Programm setzt für eine Tabelle im Projektrepository des User die Eigenschaft 
* Compress auf YES
* 
* ACHTUNG: Bestehende Werte werden überschrieben!!!
*
***************************************************************************************/
/* Die Verbindungsinformationen müssen entsprechend der Umgebung gesetzt werden */
options metaserver="localhost"

metaport=8561 metaprotocol=bridge metauser="" metapass="" ;

data _null_;
  
     length 
     name $1000
     uri $256
     new_uri $256
     new_uri_PS $256
     ;
 rc=0;
 nobj1=0;
 m=1;  
 nobj1=metadata_getnobj("omsobj:PhysicalTable?@Name = 'CONTINENT'",
                           m,
                           uri);
 /*Komprimieren Option*/
 rc = metadata_newobj("Property", new_uri, "Komprimieren (COMPRESS)");
 rc = metadata_setattr(new_uri, "DefaultValue", 'YES');
 rc = metadata_setattr(new_uri, "PropertyName", 'COMPRESS');				
 rc = metadata_newobj("PropertySet", new_uri_PS, "ACCESS_WRITE",'Foundation',uri,"PropertySets");
 put rc=;
 rc = metadata_setattr(new_uri_PS, "SetRole", 'ACCESS_WRITE');
 put rc=;
 rc = metadata_setassn(new_uri_PS, "SetProperties", "APPEND", new_uri);
 /*Location Teil*/
 rc = metadata_newobj("Property", new_uri, "LOCATION_TYPE");
 rc = metadata_setattr(new_uri, "PropertyName", 'LOCATION_TYPE');				
 rc = metadata_setattr(new_uri, "PropertyRole", 'Option');
 rc = metadata_newobj("PropertySet", new_uri_PS, "Location",'Foundation',uri,"PropertySets");
 put rc=;
 rc = metadata_setattr(new_uri_PS, "SetRole", 'Location');
 put rc=;
 rc = metadata_setassn(new_uri_PS, "SetProperties", "APPEND", new_uri);
run;