Framework:FKT GetRecord: Unterschied zwischen den Versionen

Aus CoPlanner 10
Zur Navigation springenZur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 71: Zeile 71:
===Calculated Measures===
===Calculated Measures===


Diese holen die entsprechenden copsys_id's der Dimensionen PSPElemtns und Projects. Die Felder werden nur temporär benötigt. Da die Projects Dimension im Filter der Maske ist muss ein Workaround angewendet werden da nicht immer die copsys_id zurückgegeben wird. Es wird einfach ein anderes (beliebiges) Measure Feld hinzugefügt und abgezogen. Als Datatype muss GrosseGanzzahl ausgewählt werden
Diese holen die entsprechenden copsys_id's der Dimensionen PSPElemtns und Projects. Die Felder werden nur temporär benötigt. Da die Projects Dimension im Filter der Maske ist muss ein Workaround angewendet werden da nicht immer die copsys_id zurückgegeben wird. Es wird einfach ein anderes (beliebiges) Measure Feld hinzugefügt und abgezogen. Als Datatype muss GrosseGanzzahl ausgewählt werden.


'''PSP_COPSYSID''': Attribute(PSPElements)<br />
'''PSP_COPSYSID''': Attribute(PSPElements)<br />
Zeile 78: Zeile 78:
[[Image:PSPElements_COPSYSID.jpg|thumb|center|PSPElements copsys_id holen]]  
[[Image:PSPElements_COPSYSID.jpg|thumb|center|PSPElements copsys_id holen]]  


Die Rate kann nun über folgendes Script geholt werden:
<code>
FKT_GetRecord( AEE_TBL_PROJECT_CURRENCYRATES.Rate , Projects != [Projects_COPSYSID], Currencies !=
FKT_GetRecord(CPM_TBL_BUD_PAYMENTS.Currencies_1, Projects != [Projects_COPSYSID], PSPElements != [PSP_COPSYSID])
)
</code>


__NOEDITSECTION__  
__NOEDITSECTION__  

Version vom 29. April 2014, 09:37 Uhr

Funktion

FKT_GetRecord(<Rueckgabe-Feld>,<Einschränkung 1 bis n>)

Die Funktion FKT_GetRecord wird gleich angewendet, wie die Funktion FKT_Aggregat. Folgender Unterschied besteht jedoch: Die FKT_GetAggregat liefert die Summe der Werte, auf die die entsprechenden Bedingungen zutreffen. Die FKT_GetRecord liefert den ersten Wert, der unter den entsprechenden Einschränkungen gefunden wird. (ab Version 20060820 wird keine Logmeldung ausgegeben wenn kein Datensatz gefunden wird)

FKT_GetRecord kann auch COPSYS_ID’s retournieren.

Diese Funktion gehört zu den serverseitigen Funktionen.

Beispiel

FKT_GetRecord(Umsatzerloese_Plan.dim_sys_zeit_1, …))

FKT_GetRecord(Employees.PSPElements_1, Employees !me [Plantable.Employees_1.COPSYS_ID])

Holt aus der Employees Dimension den Lookup PSPElements der für den Employee der Planungstabelle übereinstimmt

Transform=fkt_GetRecord(TBL_PRE_BUD_MYP_PAR.FiscalYearPeriod_1, Company !me+under @Session_Unternehmen_ID@, StartYear != true)

Hinweis  Beachten Sie bitte, dass eine Boolabfrage auf True/False erfolgt und nicht auf 1/0.


Hinweis  Bei einem Measurebezug ist davor kein Verweis auf die Tabelle zu tätigen.


FKT_GetRecord(Studies.COPSYS_LDIM_634538468828176346_1,COPSYS_ID !=FKT_GetRecord(tb_SessionParameters.Value, COP_SESSION_ID != @Session_ID@, Name != 'Studies'))

Bei diesem Beispiel wird ein bestimmtes Attribut einer Dimension abgefragt.

Hinweis  Bei einem Dimensionsbezug ist davor kein Verweis auf die Tabelle zu tätigen. Es ist lediglich der Name der Dimension anzugeben.


Hinweis  Bei einem Attributwertfeld ist der Name des Dimensionslookups anzugeben.


Beispiel Währung

Zu einer Plantabelle soll die Währung gejoint werden. Die Währung ist verknüpft über die Proejcts und Currencies Dimension mit der Plantabelle. Pro Project und Currency gibt es also eine Währung.

In der Planungsmaske sind die Projects im Filter und die PSPElements auf der Achse. Die Currencies Dimension soll ebenfalls in der Maske abänderbar sein. Die Dimension ist daher nicht im Filter.

Planungsmaske

Ausgangssituation

Plantabelle: CPM_TBL_BUD_PAYMENTS
Dimension: Currencies
Dimension: PSPElements
Dimension: Projects


Währungstabelle: AEE_TBL_PROJECT_CURRENCYRATES
Dimension: Currencies
Dimension: Projects
Measure: Rate


Calculated Measures

Diese holen die entsprechenden copsys_id's der Dimensionen PSPElemtns und Projects. Die Felder werden nur temporär benötigt. Da die Projects Dimension im Filter der Maske ist muss ein Workaround angewendet werden da nicht immer die copsys_id zurückgegeben wird. Es wird einfach ein anderes (beliebiges) Measure Feld hinzugefügt und abgezogen. Als Datatype muss GrosseGanzzahl ausgewählt werden.

PSP_COPSYSID: Attribute(PSPElements)
Projects_COPSYSID: Attribute(Projects)+[Invoice Number]-[Invoice Number]

PSPElements copsys_id holen

Die Rate kann nun über folgendes Script geholt werden:

FKT_GetRecord( AEE_TBL_PROJECT_CURRENCYRATES.Rate , Projects != [Projects_COPSYSID], Currencies != FKT_GetRecord(CPM_TBL_BUD_PAYMENTS.Currencies_1, Projects != [Projects_COPSYSID], PSPElements != [PSP_COPSYSID]) )