16 Replies Latest reply: Sep 7, 2011 2:16 AM by Aissam Boumejjane RSS

    creating charts like Excel

    Aissam Boumejjane

      Hi,

       

      I'm trying to create a chart similar to that in Excel (see attachment). When I look at the Excel chart it has two bars, one with a target and another one with the actual time per shipment.That goes same goes for the pie chart.

       

      When I look at my Qlikview file I have a field with LeanTime. This calculates the amount of days for shipments. The maximum leantime per shipment should not be more than 8 days. Futhermore the bar chart starts at 90%. Where can I set this up in Qlikview?

       

      How can I simulate this in Qlikview? Should I create an expression? For example on with (if below 8 day, then on time)

       

      Hope you can help me out.

       

      Thanks advance!

       

      Regards,

       

      iSam

        • creating charts like Excel
          Kaushik Solanki

          Hi,

           

              If the maximum lean time is fix then you can do this calculation in script itself.

           

              Say for example.

           

              Load,

              Leantime,

              if(Leantime < =8,'Ontime','Late') as Status.

              From xyz.

           

              Now you can use the field Status in your bar chart.

              2. if you want charts to start from 50% then you need to fo in properties -> Axes -> Here you need to define the minimum and maximum scale. Also need to uncheck Forced 0 for all the dimensions.

           

           

              Hope you understood.

            • Re: creating charts like Excel
              Aissam Boumejjane

              Hi Kaushik,

               

               

               

              I understood it. Thanks!! However, since the field LeanTime does not exists in Excel, Qlikview gives me an error message when doing a reload. 

               

               

              Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm') - date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm'), 'd hh:mm') as LeanTime,

               

              if(LeanTime<=8,'OnTime','Late') as Status (Does Not Work)

               

              Why can't I "link" it to the above expression?

               

               

              How Can I tackle this issue?

               

              Thank you very much for you help!!!

               

               

               

              Regards,

               

               

              iSam

                • creating charts like Excel
                  Kaushik Solanki

                  Hi,

                   

                     In that case you should use in this way.

                   

                     if(

                  Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm') - date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm'), 'd hh:mm') <= 8,'ON TIME','LATE') as Status.

                   

                   

                  Regards,

                  Kaushik Solanki

                    • creating charts like Excel
                      Aissam Boumejjane

                      Hi Kaushik,

                       

                      Sorry for the late response! Thanks again for your help!! The formula works!!

                      Now I "just" have to figure out how to convert the numbers of shipments to percentage.

                       

                      snapshot.JPG

                       

                      I went to number tab and selected "show in percent" however this not give me the result I want, because the maximum percent should not be more than 100%. :S

                      snapshot_II.JPG

                      What is it that im doing wrong?

                       

                      iSam

                      • Re: creating charts like Excel
                        Aissam Boumejjane

                        Hi Kaushik,

                         

                         

                         

                        I wasn’t able to add another if statement therefore I’ve splitted the script into 2 formulas:

                         

                        if(Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm') - date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm'), 'd hh:mm') <= 8,'ON TIME','LATE') as Status.

                        if(Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm') - date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm'), 'd hh:mm') <= 7,'ON TIME','LATE') as StatusII.

                         

                        How can I combine both “rules” to 1 “rule”? Suppose I want to state that shipments to destination “JFK” have a maximum of 8 days and shipments to “DBX” have a maximum of 7 days?

                         

                         

                         

                        I want to do this so I don’t have to create a field for each specific ‘requirement’.

                         

                         

                         

                        Hope you can help

                         

                         

                         

                        Regards

                         

                         

                         

                        iSam

                          • Re: creating charts like Excel

                            Ich werde ab  05.09.2011 nicht im Büro sein. Ich kehre zurück am

                            23.09.2011.

                             

                            Ich werde Ihre Nachrichten nach meiner Rückkehr beantworten.

                             

                             

                             

                            Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Verwertung des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.

                            Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank!

                            • creating charts like Excel
                              Kaushik Solanki

                              Hi,

                               

                                  Try this way.

                               

                                  If(Field= 'JFK',

                                     if(Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm') - date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm'), 'd hh:mm') <= 8,'ON TIME','LATE'),

                                     if(Field = 'DBX',

                                         if(Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm') - date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY hh:mm'), 'd hh:mm') <= 7,'ON TIME','LATE'))) as Status.

                               

                              Regards,

                              Kaushik Solanki

                                • Re: creating charts like Excel
                                  Aissam Boumejjane

                                  Hi There,

                                   

                                   

                                   

                                  Thanks a lot for your help again!!! I really appreciate it.

                                   

                                  It works, I can reload my script without error. However the results on my chart are different now:  This is the ‘old’ status field (I renamed it ‘status2’) is different than the ‘status’ field.

                                   

                                   

                                   

                                  if(Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY') - Date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY'), 'D')<=7, 'OnTime', 'Late') as Status2,

                                   

                                   

                                   

                                   

                                   

                                   

                                   

                                   

                                   

                                  The Status is script is now:

                                   

                                  if(Re: creating charts like Excel='BJS',

                                       if(Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY') - Date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY'), 'D')<= 8, 'OnTime','Late'),

                                  if(Re: creating charts like Excel='IZM' OR 'AMS',

                                       if(Interval(Date(Date#(POD, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY') - Date(Date#(DEP, 'DD-MM-YYYY hh:mm'), 'DD-MM-YYYY'), 'D')<=7, 'OnTime', 'Late'))) as Status,

                                   

                                   

                                   

                                   

                                   

                                  It seems that the field “Status” has three ‘options’ ‘OnTime’, ‘Late’ and ‘-‘ I just don’t know where ‘-‘ comes from. :S

                                    • Re: creating charts like Excel

                                      Ich werde ab  05.09.2011 nicht im Büro sein. Ich kehre zurück am

                                      23.09.2011.

                                       

                                      Ich werde Ihre Nachrichten nach meiner Rückkehr beantworten.

                                       

                                       

                                       

                                      Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Verwertung des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.

                                      Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank!

                                      • creating charts like Excel
                                        Kaushik Solanki

                                        Hi,

                                         

                                           When ever you use if statment, and if the field using in condition have more values then whct you have used, then you will fine - i.e NULL.

                                         

                                           So in your case "Creating chart like excel" field will have more values then just  BJS, AMS and IZM.

                                         

                                           So when every you use this field in chart as dimension then dont forget to click "suppress when NULL"

                                         

                                        Regards,

                                        Kaushik Solanki

                                          • Re: creating charts like Excel

                                            Ich werde ab  05.09.2011 nicht im Büro sein. Ich kehre zurück am

                                            23.09.2011.

                                             

                                            Ich werde Ihre Nachrichten nach meiner Rückkehr beantworten.

                                             

                                             

                                             

                                            Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Verwertung des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.

                                            Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank!

                                            • Re: creating charts like Excel
                                              Aissam Boumejjane

                                              Hi Thanks a lot!!!! I found the problem. It wasn’t because of an extra field, it was because of the miss used “OR” statement. I did …if(destination=”IZM” OR “AMS”,….

                                               

                                               

                                               

                                              Again Thanks for all your help, much appreciated!!!

                                          • Re: creating charts like Excel

                                            Ich werde ab  05.09.2011 nicht im Büro sein. Ich kehre zurück am

                                            23.09.2011.

                                             

                                            Ich werde Ihre Nachrichten nach meiner Rückkehr beantworten.

                                             

                                             

                                             

                                            Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Verwertung des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.

                                            Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank!