Berechnungen und Formeln (Javascript)

In diesem Artikel

Funktionen in der Spalte Formel (Ansicht 'Formel der Tabelle Budget).

Datei mit Beispielen

Für Beispiele zu den Formeln bitte folgende Erklärungen lesen:

Tabelle preventivo con formule

Spalte Betrag

Zum Planen braucht es den Wert der Spalte Betrag.

Der Wert der Spalte Betrag:

  • Kann von Hand eingegeben werden.
  • Kann berechnet worden sein:
    • Wenn eine Quantität und ein Preis eingegeben worden sind, wird der Betrag das Resultat der Multiplikation dieser Werte sein.
      Wenn es nur die Quantität oder den Preis gibt, wird der Betrag 0 sein.
    • Wenn eine Formel eingegeben worden ist, wird er Betrag das Resultat der Formel sein.
      Die Formel hat Priorität auch gegenüber Quantität und Preis. Wenn es eine Formel gibt, wird der Inhalt Quantität und Preis nicht in Betracht gezogen.

Berechnungsformeln eingeben (Sprache Javascript)

  • Die Formel muss in der Sprache Javascript ausgedrückt werden (nicht zu verwechseln mit der Sprache Java).
  • Wenn es eine Formel (oder einen Text) gibt, wird der Wert der Spalte Betrag entsprechend dem Ergebnis der Formel eingerichtet.
  • Sie können alle Funktionen der Javascript-Sprache benutzen und ausserdem die API- Schnittstelle von Banana.

Dezimaltrennzeichen

Als Dezimaltrennzeichen verwendet Javascript nur den Punkt ".".

Wenn Sie ein anderes Trennzeichen verwenden, das für Zahlen im lokalen Format verwendet wird, ist es wahrscheinlich, dass die Zahl abgeschnitten wird.

Berechnungsreihenfolge und Fehlen von Zukunftswerten

Wie im Folgenden erläutert, werden die Zeilen nach Datum sortiert und gelöst, indem man vom kleinsten Datum ausgeht.
Wenn es Operationen mit dem gleichen Datum gibt, ist die Reihenfolge die des Einfügens.
Wenn eine Zeile aufgelöst wird, gibt es nur die Ergebnisse der vorherigen Zeilen. Die folgenden Zeilen wurden noch nicht bearbeitet, so dass Sie in der Budgetformel nur die Werte bis zu diesem Zeitpunkt haben.

Das Ergebnis des letzten Vorgangs wird angezeigt.

Der in der Spalte Betrag eingegebene Wert ist das Ergebnis der letzten durchgeführten Operation.

  • 10*3 //wird zurückgegeben 30
  • Wenn mehrere Operationen nacheinander ausgeführt werden, getrennt durch einen Strichpunkt ";", wird der letzte Vorgang fortgesetzt.
    10*3;7; /-Wird am 7. wieder aufgenommen;
  • Wenn es einen Return gibt, wird der Wert nach dem Return wieder aufgenommen.
    return 10; // die 10 wird wieder aufgenommen

Automatische Variablen

  • budgetCurrent
    Es handelt sich um ein Objekt, das die Tabelle mit den Budgetlinien nach dem Anlegen der Wiederholungen enthält.
    Sie werden verwendet, um die Werte in Verbindung mit der JReapeatNumber wieder aufzunehmen.
  • DEBUG ist eine Variable, die "true" oder falsch sein kann.
    Wenn sie "true" ist, werden alle Ergebnisse der Formeln in den Meldungen angezeigt.
  • row
    Es ist ein Javascript-Objekt, das sich auf die aktuelle Zeile bezieht.
    Die Werte der Zellen können mit der Funktion value ("columnNameXml") übernommen werden.
    row.value ("date") gibt das Datum der Buchung zurück. 
    • row.value ("JRepeatNumber") Gibt den fortschreitenden Wert der Wiederholung zurück.
      Die erste Wiederholung ist 0.

Funktionen Budget

Zusätzlich zu den API Budget, definiert in der API der Klasse Buchhaltung, gibt es spezifische Funktionen.

budgetExchangeDifference (account, [date, exchangeRate])

Diese Formel beruft sich auf die Funktion Banana.document.budgetExchangeDifference.budgetGetPeriod(tDate, period)
Diese Funktion wird in Kombination mit der Verwendung der Wiederholung verwendet.
Wenn Wiederholungen angezeigt werden, ist es ratsam, sich auf einen Berechnungszeitraum zu beziehen und nicht auf ein genaues Datum.
 

Parameter tDate.

Das Datum, auf das sich die Berechnung des Zeitraums bezieht. In der Regel das Datum der Buchung.
  • Parameter period.
    Eine Abkürzung
    • "MC", "QC", "YC" um den aktuellen Monat, das aktuelle Quartal oder das aktuelle Jahr anzugeben.
    • "MP", "QP", "YP" um den Monat, das Quartal oder das Vorjahr anzugeben.
  • Rückgabewert.
    Ein Objekt, das aus zwei Daten besteht.
    • startDate
    • endDate 

// example
t = BudgetGetPeriod ('2015-01-01', 'MP') gibt zurück
t.startDate // 2014-12-01
t.endDate // 2014-12-31

Spezifische Budgetfunktionen

Die folgenden sind ähnlich wie bei Banana.document, können aber ohne Angabe des Objekts Banana.document verwendet werden.

Zu berücksichtigen:

  • "MC", Anstelle des startDate Parameters kann eine der in der budgetGetPeriode erläuterten Abkürzungen "QC", "YC", "YC", "MP", "QP", "YP" verwendet werden.
  • Wenn als Datum ein Periodenkürzel angegeben ist, wird das Datum der aktuellen Buchung verwendet.
  • Es ist sinnvoll, das Enddatum nur dann zu verwenden, wenn es vor dem Zeilendatum liegt.
    Wenn sie gleich oder höher ist, hat sie keine Wirkung, weil die Werte nach der aktuellen Zeile noch nicht verfügbar sind, da sie nicht bearbeitet worden sind.

Liste der Funktionen, die in allen Buchhaltungen verfügbar sind:

  • budgetBalance(account, startDate, endDate, extraParam)
    Der Saldo bis zur aktuellen Zeile.
    budgetBalance('1000', 'MP'); //gibt den Saldo von 1000 am Ende des Vormonats zurück.
  • budgetOpening(account, startDate, endDate, extraParam)
    Der Saldo zu Beginn der Periode.
  • budgetTotal(account, startDate, endDate, extraParam)
    Die Differenz zwischen den Bewegungen Soll und Haben der Periode.
    budgetTotal('1000', 'MC'); //gibt die gesamte Bewegung des 1000-Kontos für den aktuellen Monat zurück.
  • budgetInterest( account, interest, startDate, endDate, extraParam)
    Berechnet die Zinsen auf einem Konto für den angegebenen Zeitraum (maximal das Tagesdatum).
    Wenn man die Zinsen auf einem Konto am Ende der Periode berechnet, muss die Zeile, wo die Formel angegeben wird, immer die letzte für dieses Datum sein.
    • Parameter interest,
      Gibt den Zinssatz in Prozent an.
      • positiv (2.5, 4, 10) berechnet die Zinsen der Bewegung Soll des Kontos.
      • negativ (-2.5, -4, -10) berechnet die Zinsen der Bewegung Soll des Kontos.

Funktionen für die Buchhaltung mit Fremdwährungen:

Sie können auch für die Buchhaltung ohne Fremdwährungen verwendet werden, in diesem Fall ist das Konto immer in Basiswährung.

  • budgetBalanceCurrency(account, startDate, endDate, extraParam)
    Der Saldo in der Währung des Kontos, bis zur aktuellen Zeile.
  • budgetOpeningCurrency(account, startDate, endDate, extraParam)
    Der Saldo in der Währung des Kontos, bis zur aktuellen Zeile.
  • budgetTotalCurrency(account, startDate, endDate, extraParam)

credit( Betrag)

  • Wenn der Parameter Betrag negativ ist, gibt er den Betrag als positiven Wert zurück.
    credit(-100) // gibt zurück 100

  • Wenn der Parameter Betrag positiv ist, gibt er 0 (Null)  zurück
    credit(100) // gibt zurück 0

  • Diese Funktion ist in Verbindung mit den anderen budgetBalance-Funktionen nützlich, um nur die Salden zu bearbeiten, die Sie benötigen.
Wenn Sie den Prozentsatz auf die Verkäufe berechnen möchten, ist die Verwendung dieser Funktion einfacher.

credit(budgetTotal('1000')) //

Geben Sie den Wert nur ein, wenn er negativ ist.

debit(Betrag)

  • Wenn der Parameter Betrag positiv ist, gibt er den Betrag zurück.
    debit(100) // gibt zurück 100

  • Wenn der Parameter negativ ist, gib er 0 (Null) zurück
    debit(-100) //gibt zurück 0

Nützlich, wenn man Berechnungen erstellen muss, indem man nur den Betrag Soll benutzt und vermeidet, den Betrag Haben zu benutzen.

include

Beinhaltet und führt eine Javascript-Datei aus, mit der Möglichkeit, eigene Funktionen und Variablen zu erstellen, die im Skript aufgerufen werden können.
  • include "file:test.js" 
    Führt den Inhalt der angegebenen Datei aus. Der Name bezieht sich auf die Datei, an der Sie gerade arbeiten.
  • include "documents:test.js" 
    Führt den Inhalt des Text-Dokumentes aus, das sich in der Tabelle documents.befindet.
    Muss eine Datei vom Typ "text/javascript sein.

 

Variablen

Sie können Variablen direkt innerhalb der Zeilen definieren und verwenden.
Die Variable muss vorher definiert worden sein.

price = 10;
total = price * 5;

Vom Benutzer definierte Funktionen

Der Benutzer kann Funktionen mit der Javascript-Sprache definieren und in den Formeln aufrufen.
Es können Funktionen definiert werden:

  • Direkt in der Formel
  • In einem Anhang vom Codetyp Javascript, angegeben in einem Dokument, das als id-Zeile den Namen "_budget.js" trägt.
  • Innerhalb eines Textes in der Tabelle Dokumente und eingebunden mit dem include-Befehl
function Steuerberechnen(Gewinn)
{
   var Steuersatz = 10;
   if (Gewinn > 50000)
      Steuersatz = 10;
   else if (Gewinn > 100000)
      Steuersatz =20;
   zurückgeben Gewinn * Steuersatz / 100;
}


Berechnungsreihenfolge und Neuberechnen

Jedes Mal, wenn ein Wert in der Tabelle Budget geändert, oder eine Neuberechnung von Hand erstellt wird (Maiusc+F9), macht das Programm:

  • Wenn vorhanden, wird zuerst der Inhalt des Dokuments "_budget.js" ausgeführt.
  • Berechnet die Zeilen in der Tabelle Budget neu:
    • Das Programm erzeugt die sich wiederholenden Zeilen entsprechend der Spalten Startdatum, Enddatum und Wiederholung.
      Wenn es eine Zeile mit einer monatlichen Wiederholung im Januar gibt, werden 12 gleiche Zeilen erstellt, jedoch mit dem Datum für die verschiedenen Monate des Jahres.
    • Die Zeilen des Budgets werden also nach Datum bearbeitet (wenn sie das gleiche Datum in der Reihenfolge der Eingabe haben.
      • Der Betrag der Buchung wird aufgrund der Menge und dem Stückpreis berechnet oder wenn es eine Formel gibt, aufgrund der Formel.
      • Für die Buchhaltung mit Fremdwährungen wird zuerst die Formel Betrag in Währung und dann die Formel Betrag in Basiswährung ausgeführt.
        Wenn es keine Formel für den Betrag in der Basiswährung gibt, übernimmt das Programm den fixen Wechselkurs und berechnet den Gegenwert in der Basiswährung.
      • Für die Buchhaltung mit MwSt/USt wird die USt aufgrund des Betrages der Buchung neu berechnet.
    • Die zuvor bearbeiteten Zeilen werden für die Berechnung der folgenden Zeilen verwendet.
      Der Saldo der Konten zum Zeitpunkt der Zeile des Budgets umfasst nur die zuvor verarbeiteten Beträge.
      Wenn in einer Februar-Buchung eine Formel zur Berechnung des Saldos für das ganze Jahr verwendet wird, wird nur der Saldo bis Februar berücksichtigt.
  • Berechnet die Budgetwerte in der Tabelle Konten neu, aufgrund der Budgetzeilen und Eröffnungssalden.
  • Es wird der Wert der Spalte Totalsumme in der Tabelle Budget aktualisiert.

Wird das Beginn- oder Enddatum der Buchhaltung oder anderer Werte, die zur Berechnung der Budgetwerte verwendet werden (z.B. MwSt.-Tabelle), geändert, muss eine Neuberechnung manuell durchgeführt werden (Befehl Buchhaltung nachkontrollieren und nachrechnen).

Wenn Sie viele Zeilen, viele Wiederholungen und einen langen Berechnungszeitraum haben, kann eine Neuberechnung der Budgettabelle die Eingabe verlangsamen. Wählen Sie in diesem Fall die manuelle Neuberechnung in der Dateieigenschaft aus.

Diese Dokumentation ist veraltet

Die umfangreichste und aktuellste Dokumentation ist die von Banana Buchhaltung Plus: Probieren Sie es sofort aus!

Diesen Artikel teilen: Twitter | Facebook | LinkedIn | Email