SAP Analytics Cloud – JavaScript API Code Snippets

SAP Analytics Cloud - JavaScript API Code Snippets

Eine Sammlung von JavaScript Code Snippets für SAP Analytics Cloud Anwendungsfälle.

Als aktiv gekennzeichnete Version in Stammdaten finden

Sucht nach X im Attribut „Active“ und gibt die entsprechende ID aus.

Stammdaten der Dimension Version
console.log("My console output starts here:");

// Aktive Version finden
// Zuerst unter "Scripting" Planungsmodell hinzufügen und mit einem Modell verknüpfen
var allVersions = PlanningModel_1.getMembers("Version");
for(var i=0;i<allVersions.length;i++)
	{
	if(allVersions[i].properties.Active==="X")	//"Active" ist ID des Attributs
		{
		var activeVersion=allVersions[i].id;	
		}
	}

console.log("Active Plan Version: "+activeVersion);
Console Output aktive Version

Nur gebuchte Werte der Dimension über getMembers ausgeben

var varPC = Table_1.getDataSource().getMembers("ZDPLANC", {accessMode:MemberAccessMode.BookedValues}); 
console.log("Table_1.getDataSource().getMembers('ZDPLANC', {accessMode:MemberAccessMode.BookedValues});");
console.log(varPC);
Stammdaten

Planungszyklus aus Attribut auslesen und als Filter für das Jahr setzen

Planungszyklus Attribute
Application.showBusyIndicator(); 
Table_1.setVisible(false); // Sonst sieht der Benutzer zunächst alle Jahre, dann verschwinden sie

// Aktiven Planungszyklus finden
// Zuerst unter "Scripting" Planungsmodell hinzufügen und mit einem Modell verknüpfen
var allPlanningCycles = PlanningModel_1.getMembers("ZDPLANC");
for(var i=0;i<allPlanningCycles.length;i++)
	{
	if(allPlanningCycles[i].properties.Flag==="PC+0")	//"Flag" is attribute ID
		{
		var activePlanningCycle=allPlanningCycles[i].id;	
		}
	}

console.log("My console output starts here:");
console.log("Activer Planungszyklus: "+activePlanningCycle);

//Date Filter auf den aktiven Planungszyklus setzen
Table_1.getDataSource().setDimensionFilter("Date", "[Date].[YQM].&["+activePlanningCycle+"]");

//Filter fürs Datum ausgeben
var varDate = Table_1.getDataSource().getDimensionFilters("Date")[0];
console.log('Table_1.getDataSource().getDimensionFilters("Date")[0]');
console.log(varDate); // {value: '[Date].[YQM].&[2024]', type: 'Single'}
Table_1.setVisible(true);
Application.hideBusyIndicator();

Planungszyklus hochzählen

var integerPlanningCycle = ConvertUtils.stringToInteger(activePlanningCycle); //siehe Beispiel oben
integerPlanningCycle++;
console.log("Um Eins erhöhter Planunungszyklus: "+ConvertUtils.numberToString(integerPlanningCycle));
0 Kommentare

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.