Frage

Ich möchte fragen, wie eine berechnete Spalte in BIRT hinzuzufügen, die eine Nummer zu seiner Wortdarstellung berechnen? (Ex. 100 bis "hundert") Also in meinem Datensatz kann ich eine Spalte, die die Zeichenfolge enthält

Ich bin neu bei BIRT hoffentlich gibt es einen Zeiger oder zwei für mich

War es hilfreich?

Lösung

Ich bin mir bewusst, das ist eine ganz alte Post, aber wenn Sie noch interessiert sind, das ist, wie ich es zu tun gehen würde:

Fügen Sie ein Skript oder Glas, die eine Funktion / Methode enthält, die eine Zahl in eine Textdarstellung umwandeln würde. Um dies zu tun, zum Beispiel, erstellen Sie eine serverseitige-utilities.js-Datei und in der Registerkarte ‚Ressourcen-Explorer‘ die Ressource hinzuzufügen. Dann wird in der ‚Editor-Eigenschaften‘ für den Bericht selbst auf die Registerkarte ‚Ressourcen‘ und dass die JS-Datei.

bearbeiten Sie die JS-Datei eine Funktion enthalten, die eine Reihe wandelt sie in Text und zu speichern. Dann in ihrem Datensatz Dialog fügen eine berechnete Spalte, nennen es, Datensatztyp-String, und stellen Sie den Ausdruck, der die Funktion definiert, vorbei an die Funktion den Wert der betreffenden Spalte aufzurufen, z.B. convertNumberToText(row["NUMERIC_COL"]).

Eine partielle Umsetzung von convertNumberToText() könnte sein:

function convertNumberToText(number)
{
  var text;

  switch (number)
  {
    case 1:
    {
      text = "One";
      break;
    }
    default: text = "Unsupported number";
  }

  return text;
}

Andere Tipps

Eigentlich werde ich eine andere Lösung bieten, selbst wenn diese Frage eine Antwort akzeptiert hat.

Erstellen Sie eine Umrechnungstabelle in der Datenbank selbst entlang der Linien von:

number  as_one       as_first
------  -----------  ------------
     1  one          first
     2  two          second
    99  ninety-nine  ninety-ninth

und verwenden Sie nur eine Abfrage (oder Unterabfrage oder implizite / explizite Join), um den Textwert der Zahl abrufen Sie interessiert sind.

Dies vereinfacht den Code aus auf dem Client auf Kosten der minimalen Speicher und ein wenig Tabelle Set-up.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top