Das QlikView Forum


Schreibt uns eure QlikView Fragen und wir erstellen einen neuen Thread zu eurem Thema, so entsteht eine Sammlung der häufigsten Fragen und Antworten rund um eure Themen.


Kommentar schreiben

Kommentare: 60
  • #1

    Gast1 (Sonntag, 13 September 2015 21:31)

    Hallo zusammen,
    wie kann ich mein Skript über ein Batch File automatisch starten? Hat da jemand Erfahrungen?
    Danke vorab.

  • #2

    QlikView Info (Sonntag, 13 September 2015 21:43)

    Ja, das ist möglich. Um QVW Dateien, ohne die Management Konsole, über WIN zu starten sollte folgender Befehl für BAT Dateien hilfreich sein:
    "C:\DeinSpeicherortVonQlikView\QlikView\qv.exe" /R "C:\DeinPfadZurQlikViewDatei\Name.qvw"

  • #3

    Gast3 (Donnerstag, 16 Juni 2016 09:24)

    Hallo,
    meine Variable "GesamtZeit" "=Sum(GeleisteteZeit)"
    sollte mit der Chart Formel "Sum (GeleisteteZeit)/$(GesamtZeit)"
    eigentlich Anteile vom Gesamt liefern. Leider bekomme ich nur 0 Als Ergebnis.
    $(GesamtZeit) gibt bei mir auch immer die Summe der Auswahl und nicht die
    Summe über alle Dimensionen wie es sein sollte.

  • #4

    Benjamin (Dienstag, 10 Januar 2017 12:01)

    Hello,



    I'm currently working on a project for university where I have to visualize some shipment data with Qlikview, using the extension GeoQlik. First of all I loaded the data into my Document, this worked finde. I have all my columns, including Longitude and Latitude.

    When I now want to create an analysis with GeoQlik and choose X/Y-Coordinates as the option, I insert my columns "Longitude and Latitude" to the respective fields. When I click on "verify geographic data" however, only one city/country gets verified, the rest looks like they are missing the latitude or the longitude value. It looks like they are splitted:



    As mentioned, the data gets loaded in the document correctly, meaning every X value has an Y value, GeoQlik hower says that for 48 out of 49 rows there is only one of X or Y. So the problem is in GeoQlik I think.



    Has anyone had the same problem? Or am I doing something wrong? Any help would be appreciated!



    Greetings

  • #5

    MG (Dienstag, 11 April 2017 12:39)

    Guten Tag,
    mit welcher Formel kann man im Skript von einer .xlxs Datei nur die ersten 6 Buchstaben (von Links) auslesen?

    Danke MFG

  • #6

    QlikView Info (Mittwoch, 26 Juli 2017 21:39)

    Hallo,

    dazu nutzt du die Formel Filename(), damit bekommst du den kompletten Dateiname in dein Datenmodell.
    Dann kannst su mit der Formel left() noch die ersten 6 Buchstaben "abschneiden".

    Das Ganze sollte dann so aussehen: left(Filename(),6)

  • #7

    Prince (Montag, 25 September 2017 10:31)

    Ich bräuchte eure Hilfe. Ich hab eine Tabelle, wo Emails drinnen stehen. Nun möchte ich per Buttonklick allen Emails einen Mail schreiben .. hatte hier an concat gedacht, aber irgendwie funktioniert es nicht.

  • #8

    QlikView Info (Montag, 25 September 2017 21:47)

    Hallo Prince,
    du kannst das automatische Versenden von in QlikView erstellten Berichten über einen automatischen Task realisieren, wenn du einen Zugang zur QlikView Management Console hast.

    Alternativ kannst du dir auch eine Benachrichtigung direkt in deinem QlikView Bericht erstellen, die dann sogar automatisch, bei Erfüllung einer bestimmten Bedingung, versendet werden. Du findest das unter
    Settings --> User Preferences --> Mail

  • #9

    Randall (Dienstag, 10 Oktober 2017 12:03)

    Hallo,
    ich bräuchte bitte eure Hilfe, ich versuche schon seit längerem in einem Diagramm eine Funktion abzubilden, doch leider klappt es nicht so wie ich mir das vorstelle.
    Hintergrund: Wir haben mehrere Filialen welche in verschiedenen Regionen aufgeteilt sind.
    Fragestellung: Nun möchte ich wissen, wenn ich einen bestimmten Artikel habe, zu wie viel Prozent er in den verschiedenen Regionen im Sortiment ist.

    So soll es aussehen:
    Artikel Bez - Region 1 - Region 2 - Region 3
    Schraube - 10% - 85% - 100%
    Zucker - 100% - 50% - 30%

    Anmerkung: Bei den Regionen handelt es sich um eine Gruppierung, d.h. beim Klick auf die Region werden die einzelnen Filialen sichtbar.

    Meine Ausgangstabelle 1 aus dem Script 1:
    Art_Bez - Filiale - Region
    (Es werden nur Filialen mit Artikelbestand angezeigt)

    Meine Ausgangstabelle 2 aus dem Script 2:
    Filiale - Region
    (Alle Filialen mit der dazugehörigen Region)

    Leider bekomme ich es nicht hin, mir die prozentuale Verteilung (Distribution) anzuzeigen. Ich bekomme für die einzelnen Regionen einfach nicht die Anzahl der Filialen innerhalb der Region hin.
    Z.B. sind in Region 1 = 4 Filialen; Region 2 = 13 Filialen; Region 3 = 22 Filialen. Als Ergebnis bekomme ich im Diagramm leider immer nur die Gesamtanzahl der Filialen (in diesem Fall 39 Filialen) und nicht pro Region, oder nur die Anzahl der Filialen indem der Arikel vorhanden ist (z.B. Region 1 in 2 Filialen; Region 2 in 11 Filialen; Region 3 in 8 Filialen) .

    Ich hoffe es ist einigermaßen verständlich worauf ich hinausmöchte.
    Vielen Dank im Voraus.

  • #10

    QlikVIew Info (Freitag, 13 Oktober 2017 14:17)

    Hallo Randall,

    du findest also alle für dich wichtigen Daten in der Ausgangstabelle 1, richtig?
    In deinem Diagramm zeigst du dann in der Dimension die Regionen und Filialen als Gruppierung - soweit auch klar.
    Dein Problem scheint die verwendete Formel zu sein, nach der du die Werte zählst.

    Kannst du deine Formel hier bitte mal posten?

    Am Ende möchtest du wissen wie sich die Artikel auf die Regionen bzw. Filialen verteilen (das wäre Formel Nr. 1) und in einer extra Spalte wieviele Regionen bzw. Filialen diese Artikel im Sortiment haben, korrekt?

  • #11

    Mario (Freitag, 27 Oktober 2017 09:59)

    Hallo,

    gibt es die möglichkeit im aus einem excel nur färbigen Text (z.b. Roter Text) auszulesen?

    Vielen Dank

  • #12

    QlikView Info (Samstag, 28 Oktober 2017 17:56)

    Hallo Mario,

    versuche am besten direkt in Excel eine neue Spalte zu erstellen, die deine farbigen Felder kennzeichnet. Du kannst z.b. in Excel den Farbcode einer Zelle auslesen oder bei bedingten Formatierungen die gleiche Bedingung wie bei der farbigen Kennzeichnung verwenden um in einer Nachbarspalte eine "1" oder einen beliebigen Wert zu schreiben. So hast du in Excel am Ende alle deine farbigen Zellen nochmal extra gekennzeichnet. Mit QlikView hast du dann den Vorteil, dass du beim Einlesen der Daten direkt diese Hilfsspalte filtern kannst um zu deinem gewünschten Ergebnis zu kommen.

  • #13

    Patric (Donnerstag, 02 November 2017 09:02)

    Hallo zusammen,
    ich nutze Qlikview normalerweise als Designer und versuche mich gerade dabei eine komplette neue Datenstruktur zusammenzubasteln. Das Arbeiten im Skript fällt mir sehr schwer. Folgende Frage beschäftigt mich:

    Meine Quelle liefert mir €-Werte auf Sachkontenebene. Der BRUTTOUMSATZ berechnet sich aus mehreren Sachkonten ( z.B. 400010, 400020, 400030). Ich würde gerne die Sachkonten bzw. den Wert der Sachkonten als BRUTTOUMSATZ schon im Skript zusammenfassen, dass ich es im Designer nicht mehr machen muss.

    Ich hoffe ich konnte mein Problem in meiner Laiensprache mitteilen und dass mir jemand helfen kann.
    Viele Grüße
    Patric

  • #14

    QlikView Info (Donnerstag, 02 November 2017 09:15)

    Hallo Patric,

    Du kannst, so wie du es als Designer schon machst, auch als Developer im Skript schon rechnen. Das macht dann Sinn, wenn du die Datenmenge in deinem finalen Bericht reduzieren möchtest.

    Zu deiner Frage:
    Du hast also schon eine Tabelle im Skript - Nennen wir sie mal: „Umsatz“
    Sie hat die Felder „Sachkonto“ und „Betrag“

    Diese musst du nun nochmal mit dem Befehl „Resident“ laden. D.h. Du lädst die Tabelle nochmal und kannst dann auch rechnen.

    Konkret müsste der Befehl für dich dann so aussehen:

    Umsatz2:
    LOAD
    Sum(Betrag) as Bruttoumsatz
    Resident Umsatz
    Group by Sachkonto;

    Du erstellst somit eine neue Tabelle in deinem Datenmodell, die die Spalten aus deiner Umsatztablle lädt und die Summe der Beträge aller Sachkonten in denn Feld Bruttoumsatz berechnet.

    Oft macht es dann noch Sinn das Datum als Spalte mit aufzunehmen, damit du deine Datentabellen sinnvoll verknüpfen kannst.

    Ich hoffe, das hilft die so weiter.

  • #15

    QlikView Info (Donnerstag, 02 November 2017 12:41)

    Nachtrag zum Kommentar oben. Der richtige Befehl müsste heißen

    Umsatz2:
    Load
    Sachkonto,
    Sum(Betrag) as Bruttoumsatz
    Resident Umsatz
    Group by Sachkonto;

  • #16

    Patric (Donnerstag, 02 November 2017 16:55)

    Vielen Dank für die schnelle Antwort.
    Ich habe es ausprobiert, und das Skript läuft durch.
    In der Tabelle sind aber neben Sachkonten für den BRUTTOUMSATZ auch Sachkonten für MATERIALEINSATZ, RETOUREN, etc.,

    Sachkonto 400010, 400020, 400030 --> BRUTTOUMSATZ
    Sachkonto 500010, 500020, 500030 --> MATERIALEINSATZ
    Sachkonto 600010, 600020, 600030 --> RETOURE

    Ich stelle mir die Lösung in etwa so vor:
    Sum(BetragEUR) as BRUTTOUMSATZ where Sachkonto is ('400010', '400020', '400030')
    Ich hoffe es ist verständlich - mir fehlt nur die richtige Syntax.

    Vielen Dank im Voraus
    Viele Grüße
    Patric

  • #17

    QlikView Info (Donnerstag, 02 November 2017 19:48)

    Hallo Patric,

    Dann sieht es wie folgt aus

    Umsatz2:
    Load
    Sachkonto,
    Sum(Betrag) as Bruttoumsatz
    Resident Umsatz
    Group by Sachkonto
    Where
    Sachkonto = '400010' or
    Sachkonto = '400020' or
    Sachkonto = '400030';

    Entsprechend passt du das Script dann für Materialeinsatz und Retoure an und lädst das im Script dann quasi für jede Kategorie einmal.

    Du könntest deine Kategorien Bruttoumsatz, Materialeinsatz und Retoure alternativ auch schon beim ersten laden deiner Daten in einer extra Spalte „Kategorie“ kennzeichnen und dann nur einmal berechnen und über den „Group by“ Befehl nach den Kategorien gruppieren. Viele Wege führen dich hier zum Ziel.

  • #18

    Patric (Montag, 06 November 2017 14:02)

    Hallo,
    nochmals vielen Dank für die Hilfe. Es funktioniert so :)

    Viele Grüße

  • #19

    Michael Reinke (Dienstag, 07 November 2017 08:47)

    Hallo Usergemeinde,

    mich beschäftigt ob es möglich ist mittels QV eine Verzeichnisstruktur als csv abzuspeichern ?

    Also Ordner mit unterordnern und deren inhalt aller pdf dateien

    Für Tips Wäre ich sehr Dankbar

  • #20

    QlikView Info (Dienstag, 07 November 2017 13:05)

    Hallo Michael,
    ich würde dir folgenden Load Befehl vorschlagen:

    Verzeichnis:
    Load
    FilePath() as Pfad
    From
    C:\DeinPfad\*.xlsx;

    Store Verzeichnis Into C:\Speicherpfad\Verzeichnisdatei.csv;

    So lädst du alle Excel Dateien aus deinem Pfad --> das machst du über das Sternchen '*'.
    (Hier musst du wahrscheinlich mit dem Sternchen im Pfad etwas experimentieren, damit all deine gewünschten Dateien erfasst und geladen werden) Gleichzeitig schreibst du den Pfad aller geladenen Dateien in das Feld "Pfad" in der Tabelle "Verzeichnis".

    Die Tabelle kannst du dann speichern. Sie sollte nun die Pfade all deiner geladenen Dateien enthalten und somit eigentlich deine Verzeichnisstruktur wiedergeben.

  • #21

    Jochen (Donnerstag, 16 November 2017 14:41)

    Hallo QV-Info-Team,

    ich habe ein Skript, das eine Datenbank inkrementell lädt.
    Es kann aber sein, dass sich die Datenbank rückwirkend ändert.
    Gibt es einen Befehl, um immer zu überprüfen, welche Einträge sich geändert haben und diese dann zu aktualisieren?

    Viele Grüße
    Jochen

  • #22

    QlikView Info (Donnerstag, 16 November 2017 20:04)

    Hallo Jochen,

    In den meisten Tabellen findest du ein Datumsfeld an dem divergenten kannst wann ein Datensatz zuletzt geändert wurde. Du müsstest also zuerst alle Daten vor dem letzten Änderungsdatum laden und dann die neuen Datensätze anfügen.

    Das sieht dann z.B. so aus

    Alt:
    Load *
    From „deineTabelle“
    where Änderungsdatum < today();

    Concatenate

    Neu:
    Load *
    From „deineTabelle“
    Where Änderungsdatum = today();

  • #23

    QlikView Info (Donnerstag, 16 November 2017 20:07)

    Sorry für den Rechtschreibfehler im Post oben drüber (#22)
    „divergenten“ sollte heißen „du erkennen“

  • #24

    Mario (Samstag, 18 November 2017 00:15)

    Hallo,

    gibt es die möglichkeit im Qlikview etwas hineinzuschreiben? Wie z.b. bei einem Tabellendiagramm eine Spalte hinzuzufügen, wo man dann direkt im Qlikview Notizen hineinschreibt?

    Danke

  • #25

    QlikView Info (Samstag, 18 November 2017 08:41)

    Hallo Mario,
    Du hast in QV die Möglichkeit mit Inputfeldern zu arbeiten. Beim Laden werden in deiner Tabelle dann Platzhalter erzeugt, die du dann beliebig ändern kannst. Die erzeugst das Feld beim Laden deiner Tabelle im Skript und kennzeichnest es mit dem Befehl „inputfield“

    Inputfield MeineNotizenspalte

    Das Feld kannst du dann auch im Layout, z.B. In einer Tabellenbox anzeigen und bearbeiten.

  • #26

    Patric (Montag, 20 November 2017 14:07)

    Hallo QV-Info-Team,
    ich möchte die Tätigkeiten unseres Außendienstes in Qlikview abbilden.

    Dafür habe ich extra einen Kalender gebaut (Kopie aus anderem Bericht). Dieser berücksichtigt aber nur die Datensätze an, die neben dem Datum die Uhrzeit 0:00 haben. (Beispiel: Arzt A und Arzt B werden im Kalender nicht berücksichtigt). Leider weiß ich nicht, warum die Datensätze mal mit Uhrzeit und mal ohne Uhrzeit (0:00) abgespeichert sind.

    Was muss ich tun, dass alle Datensätze berücksichtigt werden, wenn ich bspw. im Kalender "November" auswähle ?

    Datum ArztName
    15.11.17 12:45 Arzt A
    15.11.17 12:44 Arzt B
    15.11.17 0:00 Apotheker A

    Vielen Dank im Voraus und schöne Grüße
    Patric

  • #27

    QlikView Info (Dienstag, 21 November 2017 20:12)

    Hallo Patric,

    Du hast in deinem Kalender sicher nur das Datum geschrieben. Wenn dem so ist, dann steht in deinem Kalender dort immer auch die Uhrzeit 0:00 Uhr mit dran. Du wirst das aufgrund des Formates (sicher in Excel) nicht sehen.

    Du solltest es lösen können, indem du aus deinem Datum in der Tabelle der Außendienstler nur den Tag verwendest und die Uhrzeit.

    Probier mal
    Date(Datum) as Datum

  • #28

    Mario (Montag, 04 Dezember 2017 12:38)

    Hallo,
    gibt es im Qlikview Skript eine einfache möglichkeit, Felder aus einer anderen Datei heranzuziehen? ==> beim Skirpt ausführen, kommt die Fehlermeldung, Feld kann nicht gefunden werden)

    Beispiel: es sollen mit 2 F elder(oder auch mehreren) aus unterschiedlichen Tabellen im Skript miteinander gerechnet werden!

    Danke
    MfG Mario



  • #29

    QlikView Info (Dienstag, 05 Dezember 2017 20:24)

    Hallo Mario,

    du musst zuerst beide Tabellen in dein Datenmodell laden. Sie werden ja dann über gleichnamige Felder miteinander verknüpft. Soweit so gut. Wenn du nun im Skript anfangen willst zu rechnen, dann musst du erst beide Tabellen zu einer Tabelle zusammenführen. Dabei wird dir der Join Befehl helfen (https://www.qlikview-info.de/im-skript/join/)

    Bsp.:
    Tabelle1:
    Load
    Kunde,
    Umsatz
    From „deineTabelle“

    Left Join

    Tabelle2:
    Load
    Kunde,
    Region
    From „deine_andere_Tabelle“

    Dadurch wird Tabelle 2 an Tabelle1 angefügt.
    Nun hast du alles in der Tabelle1 und kannst anfangen zu rechnen --> z.B. die Umsätze der Kunden summieren etc.
    Ein Beispiel dafür findest du im Forumseintrag #17.

  • #30

    Dieter aus Köln (Donnerstag, 01 Februar 2018 17:52)

    Hallo,


    ich habe Zugriff auf einen QV-Report, der vom Unternehmen gestaltete Objekte enthält. Ich habe aber die Möglichkeit in diesem Report eigene Objekte anzulegen.


    Bei einer Pivot-Tabelle habe ich aber folgendes Problem, welches mir leicht erscheint, aber keiner aus meiner IT-Abteilung wirklich 100 % helfen konnte.


    In der Pivot-Tabelle werden Offene Posten (OP) aus der Datenbank angezeigt und dabei verschiedene Dimensionen in den Zeilen aufgeführt. Jede Zeile enthält einen OP mit Kontonummer (OP_Payer_N), Datum, Status, Währung (OP_Currency_S), BelNr, , Soll/Haben-Kz, Betrag_OrigWhr (OP_Amount_math_C), Betrag_EUR etc.


    In einer Formel, möchte ich eine Zwischensumme berechnen, die nur die Dimensionen Kontonummer und Währung berücksichtigt.


    Selektiert/gefiltert sind Konten einer bestimmten Klasse zu einem bestimmten Stichtag.


    Dazu habe ich in der QV-Hilfe gelesen, dass man dazu die Funktion TOTAL nutzen kann. Erschöpfende Beispiele, die mein Problem lösen kann ich dort aber nicht finden. Auch im Internet finde ich dazu wenig, Daher verstehe ich nicht, wie man die Formel aufbauen muss, um zum passenden Ergebnis zu kommen.


    Hier mal ein Beispiel, wie das bei mir aussieht:


    = If(sum(TOTAL<OP_Currency_S, OP_Payer_N> OP_Amount_math_C) >= 0 , 'x', 'y')


    Dabei habe ich die Formel für die Berechnung einmal in der Spalte "x oder y" und ein zweites Mal in der Spalte "Ergebnis der Formel", die leider nicht zu demselben Ergebnis kommt wie die Summe der selektierten Posten.


    Funktioniert aber nicht, da scheinbar auch andere Dimensionen in die Berechnung der Spalte "Ergebnis der Formel" mit einfließen und deshalb nicht zum gewünschten Ergebnis "x" führt.


    Die Tabelle mit den unbefriedigenden Ergebnis seht Ihr hier:



    Acc No Doc No Doc Date St T# CCY D/C FX-Rate Due Date Days overdue Amount Orig Amount EUR X oder y Ergebnis der Formel
    11000037 288 18.01.2018 1 476837 EUR S 1 17.02.2018 -16 172,23 172,23 y -6.079,80
    11000037 289 18.01.2018 1 476838 EUR S 1 17.02.2018 -16 1.507,98 1.507,98 y -6.079,80
    11000037 290 18.01.2018 1 476839 EUR S 1 17.02.2018 -16 580,33 580,33 y -6.079,80
    11000037 291 18.01.2018 1 476840 EUR S 1 17.02.2018 -16 371,34 371,34 y -6.079,80
    11000037 292 18.01.2018 1 476841 EUR S 1 17.02.2018 -16 307,23 307,23 y -6.079,80
    11000037 293 18.01.2018 1 476842 EUR S 1 17.02.2018 -16 462,22 462,22 y -6.079,80
    11000037 294 18.01.2018 1 476843 EUR S 1 17.02.2018 -16 3,16 3,16 y -6.079,80
    3.404,49 3.404,49


    Ist wahrscheinlich für Euch ein Klacks!?


    Oder?

  • #31

    QlikView Info (Sonntag, 04 Februar 2018 15:08)

    Hallo Dieter,

    mit der Total Formel bist du hier wahrscheinlich schon auf dem richtigen Weg. Da es aber dein Problem noch nicht gelöst hat und du wohl auch schon verschiedene Stellen um Hilfe ersucht hast ohne das richtige Ergebnis zu bekommen, ist es wohl noch nicht das Richtige.

    Gehen wir mal einen Schritt zurück:

    Du hast also Zugriff auf den Bericht, nicht aber auf das darunterlegende Datenmodell, richtig?

    Kannst du versuchen ein neues Objekt zu erstellen, dass nur die von dir benötigten Dimensionen enthält?
    --> Wenn deine Formel aufgrund der vielen Dimensionen nicht richtig funktioniert, dann willst du vielleicht zu viel auf einmal?

    Oft hilft es die Komplexität zu reduzieren. Deine Formel sieht ja schon kompliziert aus. Versuche die If Formel und die Summenformel zu trennen und mehrere Zwischenschritte zur Berechnung zu machen. Dafür nutzt man in der Regel das Datenmodell und baut sich dort mehrere Felder zur Berechnung. Wenn du dorthin z.B. die Berechnung der If Formel legen kannst, dann musst du in deinem Bericht nur die Summe bilden.


  • #32

    W. Eichhorn (Freitag, 02 März 2018 13:39)

    Hallo,
    Ist es möglich in einer Datei für unterschiedliche Registerblätter unterschiedliche Scripte zu verwenden ?

    vielleicht hat jemand einen Rat - DANKE !!

  • #33

    QlikView Info (Freitag, 02 März 2018 21:40)

    Hallo,

    Grundsätzlich ist die Antwort: Ja

    Wenn du von einer Excel Datei sprichst, dann kannst du die Daten aus verschiedenen Registerblättern in unterschiedlichen Scripten verarbeiten.

    Wenn du von Registerblättern im QlikView sprichst, dann kannst du dort auch mehrere Skripte schreiben und so dein Datenmodell bauen.

    Wenn du verschiedenen Datenmodelle hast und diese zusammenfügen willst um sie in verschiedenen Registerblättern eines QlikView Berichtes zu verwenden, dann musst du vorher die verschiedenen Datenmodelle zu einem Modell zusammenfügen.

    Ich hoffe, die richtige Antwort war dabei.

  • #34

    Mario (Dienstag, 24 April 2018 15:20)

    Hallo,

    folgendes wäre meine Frage:
    Möchte eine Excel Datei einlesen, dann in eine qvd speichern und anschließend wieder das qvd einlesen!
    Dabei soll beim speichern ins qvd immer die nur neue und geänderte Werte aktulisiert bzw. erweitert werden!

    Danke
    SG Mario



  • #35

    QlikView Info (Dienstag, 24 April 2018 20:44)

    Hallo Mario,

    deine Frage ist ähnlich dem Eintrag #21 aus dem Forum. --> Die gute Nachricht ist also wie immer: "Ja, es geht."

    Zuerst solltest du deine Excel Datei modifizieren. Du solltest in dort in einer extra Spalte jede Änderung mit einem Datum kennzeichnen. Wie das geht zeigt dir herber.de (http://www.herber.de/forum/archiv/932to936/933542_Wenn_Zelle_geaendert_dann_Datum.html)

    Das hilft dir nun beim Laden in QlikView. Du nimmst also folgendes Skript als Grundlage:

    QVD:
    Load
    Feld,
    Änderungsdatum,
    From „deine_bestehende_QVD_Tabelle“
    where Änderungsdatum < today();

    Concatenate

    EXCEL:
    Load
    Feld,
    Änderungsdatum,
    From „deine_Excel_Tabelle“
    Where Änderungsdatum = today();

    Dann hast du erstmal die geänderten Werte mit an deine bestehende Datei angefügt. Jetzt musst du noch die doppelten Werte rausfinden und von denen jeweils die "alten" Einträge löschen.

    Dazu lädst du die Tabelle nun nochmal

    left join (QVD)

    Load
    Feld,
    max(Änderungsdatum) as Datum_Max
    Resident QVD
    group by Feld;

    Damit lädst du zu jedem Feld das letzte Änderungsdatum und fügst es an die bestehende Tabelle hinzu.

    Nun nochmal laden und kennzeichnen, wenn das Änderungsdatum gleich dem Datum_Max ist.

    QVD1
    Load
    *
    if(Änderungsdatum = Datum_Max, 1, 0) as Marker
    Resident QVD;

    Drop Table QVD;

    Nun nur nochmal laden und nur die rausfiltern, die einen Marker mit der 1 haben, danach die QVD wieder speichern.

    QVD2:
    Load
    Feld,
    Änderungsdatum
    Resident QVD1
    where Marker = 1;

    Drop Table QVD1;

    Store QVD2 as deine_bestehende_QVD_Tabelle.qvd

    Drop Table QVD2;

    Wenn du dieses Skript dann täglich ausführen lässt, kannst du immer die aktuellen Werte in deiner QVD ablegen.


  • #36

    Levi (Montag, 30 Juli 2018 15:47)

    Hallo,

    gibt es im Qlikview eine integrierte Funktionalität um Änderungen in Berichten zu verwalten, also eine Änderungshistorie. z.B. ich habe was geändert in einem Bericht. Mein Kollege soll sehen können wann und was genau ich geändert habe.

  • #37

    QlikView Info (Mittwoch, 01 August 2018 22:02)

    Hallo Levi,

    wenn du die Änderungshistorie auf dein Datenmodell bzw. dein QlikView Skript beziehst, dann kann man diese über Transportskripte wegspeichern und so dokumentieren. In der Praxis läuft das so, dass du in einem Test Bereich Änderungen an den Berichten vornimmst und testest. Wenn alles korrekt läuft, dann "transportierst" du deinen Bericht in einen Produktiv Bereich. Für das Transportieren nutzt man .bat Dateien mit entsprechenden Kopierbefehlen. Neben dem Kopieren vom Test in den Produktiv Bereich sollte dieses Skript dann auch noch eine Kopie in einen Archiv Bereich speichern. So erzeugst du nach jeder Änderung eine Archivkopie und kannst so die Änderungen dokumentieren.

  • #38

    Rene (Freitag, 10 August 2018 09:39)

    Hallo zusammen,

    gibt es in einem Balken/Punktdiagramm die Möglichkeit, die Punktwerte nebeneinander und nicht horizontal über z.B. die Jahre & einem anderen Wert zu legen. Momentan liegen die Punktwerte alle vertikal und überschneiden sich zum Teil. Also jeder Balken soll auch den dazugehörigen Punktwert haben.

  • #39

    QlikView Info (Donnerstag, 16 August 2018 19:44)

    Hallo Rene,

    entschuldige die verspätete Antwort.
    Hier sind 2 Lösungsvorschläge für dein Problem:

    1. Zeige die Werte in den Balken in den Segmenten an, anstatt darüber.
    Die Einstellung dazu findest du in den Eigenschaften des Diagramms --> Reiter "Präsentation" --> in der Box "Werte in der Grafik" setzt du den Haken bei "Anzeige in den Segmenten"

    falls das noch nicht wirklich hilft, probiere

    2. Nutze die Primär- und Sekundärachse
    Lege dazu die Werte der Punkte auf die Sekundärachse rechts und passe dir die Skala so an, dass sich deine Werte nicht mehr überschneiden. Die Einstellungsmöglichkeit findest du in den Eigenschaften des Diagramms im Reite "Achses" --> wähle für die Formel der Punkte in der Box "Position" das Feld "Rechts (Oben)" aus und passe dir die Werte bei "Skala" so ein, dass dein Diagramm passt.

  • #40

    Enrico (Dienstag, 25 September 2018 15:29)

    Hallo ich habe folgendes Problem.
    Ich habe eine Datei für Kundenreklamationen nach Vertriebsgebieten und möchte nun die Entwicklung für jedes Vertriebsgebiet in einer separaten Graphik darstellen. Wie kann ich diese fest definieren, damit ich die jeweiligen Gebiete nicht stets separat selektieren muss. kurz gesagt.

    Besten Dank vorab.

  • #41

    QlikView Info (Dienstag, 25 September 2018 22:19)

    Hallo Enrico,

    Wenn du vergeht es Vertriebsgebiet eine eigene Grafik erstellen willst, dann musst du das Gebiet entsprechend in der Formel des Diagramms fix eingrenzen.

    Das ganze sieht dann so aus:
    =Count({<Gebiet = {'A'}> } Reklamation)
    Du kannst auch die folgende Syntax verbinden
    =Count(if(Gebiet = A, Reklamation)

  • #42

    Mario (Mittwoch, 26 September 2018 09:23)

    wie kann ich den aktuellen Monat mit dem Vormonat vergleichen?

    Aktueller Monat: sum({$<Monat={$(=only(Monat))}>}Zeile_nettoeffektiv)
    Vormonat: sum({$<Monat={$(=only(Monat)-1)}>}Zeile_nettoeffektiv)

    Die Formel für den Vormonat funktioniert nicht.

  • #43

    Enrico (Mittwoch, 26 September 2018 16:22)

    Vielen Dank für die Hilfe!

  • #44

    QlikView Info (Mittwoch, 26 September 2018 19:23)

    Hallo Mario,

    Zur Beantwortung deiner Frage aus #42 ist es wichtig den Inhalt des Feldes Monat zu kennen.

    Steht darin ein Datum wie „01.09.2918“ dann kannst du den Vormonat z.B. so bekommen:

    Sum(Monat >= Monthstart(today(),-1) and Monat < Monthstart(today() ,zeile_nettoeffektiv)

    Falls du Monatsnamen als Text darin hast, sie woe „Sep“, dann klappt das mit dem rechnen „-1“ an der Stelle nicht.

    Das ist nun ohne die Info zum Feldinhalt schwer zu sagen.

  • #45

    Mario (Freitag, 28 September 2018 08:49)

    Deine Antwort für die Frage #42

    ich habe den Monat als Text drin. Gibt es dafür auch eine Lösung?

    lg

  • #46

    QlikView Info (Freitag, 28 September 2018 22:34)

    Hallo Mario,

    Du nutzt vermutlich den Wert als Text weil es für das Anzeigen dann am Ende schöner ist.

    Zum Berechnen empfehle ich dir jedoch immer direkt mit einem Datumsfeld zu arbeiten. Somit hast du einfach mehr Möglichkeiten und kommst auch leichter zum Ziel.

    Vielleicht kannst du dir ein zweites Feld in deinem Datenmodell anlegen in dem du das Datum verwendest.

    Dann wäre
    Monat = „September“ und
    Datum = 01.09.2018

    Über den Weg kannst du mit dem Feld Datum rechnen und in der Anzeige trotzdem das Feld Monat verwenden.

  • #47

    Marco (Dienstag, 23 Oktober 2018 08:25)

    Hallo Zusammen,

    ich versuche den kumulierten Wert aus einer Datenbank herauszuziehen:
    num(Only({$<
    OrganisationElements.ElementName=P(OrganisationElements.ElementName1),
    AccountingHierarchy.Category={'GuV'},
    AdjustmentLevel.Name={'CO'},
    DataLevel.Name={'Ist'},
    AccountingHierarchy.Name={' Umsatzerlöse'},
    Kalender.Datum={"$(=MonthStart(MonthEnd(today())-70))"}
    >} Facts.Value)

    MIt dieser Struktur erhalte ich den Monatswert - 2 Monate. Also im Oktober den Wert für August. Alles super. Jedoch möchte ich jetzt den Wert für Januar- August ausgegeben haben. Wie muss ich die Letzte Zeile im Skript anpassen? Eventuell YearStart?

  • #48

    Marco (Dienstag, 23 Oktober 2018 08:35)

    Noch eine weitere Frage:

    Wenn ich eine Pivottabelle erstelle mit einer Dimension und mehreren Formeln kann ich dann verschiedene Zahlenformate auswählen?

    Z.B. Bestehen innerhalb einer Dimension mehrere Formeln (EBT & EBT Marge in %). Setze ich unter Zahlenformat den Punkt Ganze Zahl konvertiert er die gesamte Pivottabelle in diesem Format. Jedoch benötige ich Sowohl ganze Werte als auch %-Werte in einer Tabelle.

    Vielen Dank für eure Hilfe.

  • #49

    Marcus (Dienstag, 23 Oktober 2018 18:41)

    Hallo Gemeinde,

    ich würde gerne die komplette Visualisierung eines Jahres und nicht nur einen Ausschnitt exportieren. Habt ihr irgentwelche Tipps und Kniffe?

  • #50

    QlikView Info (Dienstag, 23 Oktober 2018 19:16)

    Hallo Marco,

    starten wir mit deiner Frage aus #48

    Versuche vielleicht die IF Anweisung zu verwenden. Ich finde das schreibt und liest sich einfache

    num(
    if(
    OrganisationElements.ElementName=P(OrganisationElements.ElementName1) and
    AccountingHierarchy.Category='GuV' and
    AdjustmentLevel.Name='CO' and
    DataLevel.Name='Ist' and
    AccountingHierarchy.Name= 'Umsatzerlöse' and
    Kalender.Datum >='01.01.2018' and
    Kalender.Datum <'01.09.2018' ,
    Facts.Value)

    In deiner Schreibweise hilft dir aber auch sicher
    Kalender.Datum={"$(=MonthStart(MonthEnd(today())))"} und bringt dir so alle Wert ab Jahresstart.

    Zu deiner Frage aus #49
    Versuche mal die eine Formel auf die linke Achse (Primärachse) zu legen und die zweite Formel auf die rechte Sekundärachse. Dann kannst du beides individuell einstellen.

  • #51

    QlikView Info (Dienstag, 23 Oktober 2018 19:18)

    Hallo Markus aus #49,

    kannst du deine Frage noch genauer beschreiben?
    Von wo willst du exportieren? (Tabelle, Diagramm ...)
    Was ist bei dir eine komplette Visualisierung und was nur ein Ausschnitt?

  • #52

    Marco (Mittwoch, 24 Oktober 2018 07:41)

    Hallo,

    zu meinen Beitrag #48 und Ihren Beitrag #50. Leider werden beide Varianten von Qlik nicht angenommen. Bei der If-Bedingung bekomme ich einfach keine Werte, egal mit welchen Datum ich es versuche. Bleibe ich in meiner Schreibweise, wie von Ihnen beschrieben:

    Kalender.Datum={"$(=MonthStart(MonthEnd(today())))"}

    erhalte ich nicht das ganze Jahr, sondern nur
    das aktuelle Tagesdatum today()
    aus diesem macht er den Monatsletzten MonthEnd()
    und aus diesem macht er den Monatsanfang MonthStart()

    somit erhalte ich bei einem Heutigen Tagesdatum immer den Wert 01.10.2018 und er sucht mir alle Werte aus Oktober in meiner Datenbank zusammen, da diese immer zum 01. geschlüsselt sind. Ich würde jedoch gerne alle Werte seit Jahresbeginn erhalten.

    Vielen Dank nochmal für die Hilfe.

  • #53

    QlikView Info (Mittwoch, 24 Oktober 2018 08:58)

    Stimmt, es muss natürlich heißen
    Kalender.Datum={"$(=YearStart(MonthEnd(today())))"}
    um den Jahresstart auszuwerten. Sorry für den Schreibfehler :)

  • #54

    Marco (Mittwoch, 24 Oktober 2018 13:14)

    Hallo noch ein letztes Mal,

    wenn ich den Wert Kalender.Datum={"$(=YearStart(MonthEnd(today())))"} einsetze erhalte ich ja wieder nur ein Ergebnis. Und zwar den 01.01.2018. Und dementsprechend auch nur die addierten Werte für den 01.01.2018
    Bei der Form Kalender.Datum={"$(=MonthStart(MonthEnd(today())))"} erhalte ich ebenfalls nur ein Ergebnis und zwar den 01.10.2018. Jedoch benötige ich alle Werte zwischen diesem Zeitraum. D.h. das Skript muss die Daten vom 01.01 ; 01.02;01.03;01.04;01.05....etc. in einer Summe ausgeben.

    Vielen Dank nochmal.

  • #55

    QlikView Info (Mittwoch, 24 Oktober 2018 13:25)

    Hallo Marco,
    nimm noch das "größer als Zeichen" mit in deine Formel auf, dann sollten alle Monate aggregiert werden.
    Kalender.Datum={"$(>=YearStart(MonthEnd(today())))"}

  • #56

    Marc (Donnerstag, 08 November 2018 11:05)

    Hallo liebe Community,

    Ich habe mal eine Frage bezüglich meines Skriptes - und zwar ob es möglich ist, mit einem "Load * From" Dateien aus mehreren Ordnern zu laden, in dem man die Ordner beispielsweise mit einem "*" oder anderem markiert ?
    Also das ich mehrere Ordner, mit einem Pfad öffne.

  • #57

    QlikView Info (Donnerstag, 08 November 2018 20:16)

    Hallo Marc,

    dein Vorhaben wird möglich, wenn du es schaffst die verschiedenen Ordnerpfade in Variablen zu verpacken, die nacheinander geladen werden. Wie zum Beispiel in folgendem Beispiel:

    For i = 0 to vAnzahlMonate



    Let vSuchdatum = Date(vTag-i*30);
    
Let vSuchjahr = Year(vSuchdatum);

    Let vSuchmonat = num(Month(vSuchdatum),'00');

 

    Let vDir = '\\Dein_Pfad\'&vSuchmonat&'-'&vSuchjahr&'\';


    //Alle CSV-Dateien aus dem Ordner laden
 

    for each file in FileList('$(vDir)*.csv')
    //Tabelle laden

    LOAD *
 FROM
 [$(file)];

    next file

    
next i

    Ansonsten ist es wahrscheinlich auch einfacher im Skript mehrere Load Befehle hintereinander ablaufen zu lassen um so für jeden Ordner einen Befehl zu schreiben.

    Du kannst natürlich auch alle Dateien in einen Ordner ablegen lassen (wenn du das beeinflussen) kannst um so ein einfacher Skript zu ermöglichen.

  • #58

    Marco (Montag, 12 November 2018 15:58)

    Guten Tag Community,

    ich habe da noch einmal eine Frage:

    Ich habe ein Datum, das in folgendem Format in die Datenbank gelesen wird JJJJMMDD.

    Nun will ich immer die summe der Facts des aktuellen Datums ausgeben. Daher bin ich wie folgt vorgegangen:

    =Sum({$<Datum = {"(=$(=year(today())&NUm(Month(today()),'00')&num(day(today()),'00')))"}>}Facts.AnwesendeMa)

    Der Abschnitt (=year(today())&NUm(Month(today()),'00')&num(day(today()),'00')) bringt mir in einer Textbox immer das Ergebnis 20181112 was auch korrekt ist. Jedoch funktioniert es in der Formel nicht. Wo ist der Fehler kann mir jemand helfen?

    VIelen Dank.

  • #59

    QlikView Info (Montag, 12 November 2018 21:08)

    Hallo Marco,

    probiere einmal folgende Schreibweise in der Formel.

    = sum (if(Datum = year(today())&num(month(today()),'00')&num(day(today()),'00'), AnwesendeMA)

    Damit bekomme ich das Ergebnis sowohl in der Textbox als auch im Diagramm angezeigt.

  • #60

    Marco (Dienstag, 13 November 2018 11:41)

    Super, das hat geklappt:)