2016-03-22 10 views
0

Ich möchte wissen, wie Sie bedingte Summen auf FM 14 erhalten, weil ich nichts finden kann.Bedingte Summierung in FileMaker Pro 14

Ich habe X Anzahl der Datensätze in einem Layout. Jeder Datensatz hat Preis, Name und Monat. Ich möchte ein anderes Layout erstellen, in dem ich eine Tabelle mit den Monaten horizontal angeordnet und Name vertikal angeordnet haben werde. Wie folgt aus:

 January February March April  .... .... .... December 

Name 1 (CALC)

Name 2 (CALC)

Name 3 (ber)

....

....

....

Bezeichnung X


(berechnet) = Berechnung

Ich möchte jeden Preis auf jeden Datensatz summieren, die den Namen und Monat in jeder Berechnung angegeben hat.

Ich kann den Weg nicht finden und es macht mich verrückt.

Dank

+0

Ich habe meine Antwort, ähnlich wie Michaels. Eine Sache, an die Sie sich erinnern müssen: Sie müssen das Jahr der Aufzeichnung isolieren. –

+0

@FrnandoSalazar Haben Ihre Datensätze kein Datumsfeld? –

+0

@FrnandoSalazar http://stackoverflow.com/help/someone-answers –

Antwort

0

Filemaker auf Kreuztabelle Berichten nicht sehr gut, dennoch hier ein Weg, um es zu betrachten:

ein Formelfeld definieren cSplitByMonth (Ergebnis ist die Nummer, Anzahl der Wiederholungen: 12) =

Let ([ 
monthNames = "January¶February¶March¶April¶May¶June¶July¶August¶September¶October¶November¶December" ; 
monthName = GetValue (monthNames ; Get (CalculationRepetitionNumber)) 
] ; 
If (Extend (Month) = monthName ; Extend (Price)) 
) 

definieren ein Auswertungsfeld als Summe cSplitByMonth fassen individuell Wiederholungen.

Erstellen Sie ein Layout mit einem Unterzusammenfassungsteil (wenn nach Namen sortiert) und keinem Körperteil. Platzieren Sie das Feld Name und das Zusammenfassungsfeld (mit allen 12 Wiederholungen, horizontal ausgerichtet) in diesem Teil.

Sortieren Sie die Datensätze nach Name.


Ein weiterer Ansatz, der hier zu sehen ist: http://fmforums.com/topic/71836-getting-more-out-of-filtered-portals-in-version-11/#comment-339728

0
  1. erstellen 12 Rechenfelder mit Formel:

    If (myTable :: Monat = 'Januar'; myTable :: Preis; "")

    (für jeden Monat wiederholen)

  2. eine Liste Layout auf derselben Tabelle basierte erstellen, mit Kopf- und Fußzeilen

  3. Untersicht hinzufügen, wenn

  4. Feld Untersicht Namen nach Namen sortiert In der

  5. eine Zusammenfassung Felder erstellen für je früher Felder erstellt wird basierend auf dem Sum()

  6. Fügen Sie diese Zusammenfassung Felder Unter Zusammenfassung Layout Teil

  7. löschen Körper Layout Teil

  8. Datensätze sortieren nach Namen

Verwandte Themen