Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hello,
Is it me, or the Dropbox connector is missing in Qlik Sense Business?
Thanks for your support
Hi All,
I just noticed that the DropBox connector and DropBox MetaData connector are available in Qlik Sense Business.
I did not tested yet...
Yay!
I've just created a Dropbox connection in QSB, selected data from a file and stored it back to a QVD, all in DropBox.
It looks like this could be an ideal solution for my client who is being forced off of QSC4B and has hundreds of source files.
The one thing to watch is that when you come to refer to the Dropbox lib that you create you need to have a LIB CONNECT TO statement, like you do with a database but don't generally need to with folder type libraries.
Hope this works well for everyone else.
The ability to do a STORE is a massive step forward also, making incremental loads a possibility.
Steve
Thanks for the updates.
Hi All,
This is extremely good news for me. I did my testing this morning and I can load my QVDs and STORE back to Dropbox. So, back to the Client today!
The whole configuration is very slick. I am sure that ' in the engine room ' there have been some really busy people. Massive 👍 to all.
Hello,
So STORE is now supported in QSB?
If my memory serves me right, this was not possible, that's why our setup was to create QVDs locally and then transfer to DropBox folder (created a batch file to do this) and then refresh our QSCB apps.
STORE is now supported, with Dropbox, S3 and native folders in QSB. This is a massive step forward and makes incremental possible and remove the need for Frankenstein implementations like we have both had to create in the past.
I use to use DropBox to
I've transferred both of these categories to QSB business. So my plan is (to see how it goes). But I might revert back to Dropbox. Or do a bit of both
Set up a QVD creation App (one App only as I like almost real time but am aware of the 50 max reload limit) and save to the appropriate SharedSpace DataFile. These QVDs are then made available to the users that have access to a space or spaces.
If I need to give them access to a Excel etc file. I hold these in my personal space (that of course isn't shared) and share by creating a QVD. The only issues are - QSB struggles to upload larger files but these are all fairly small - They can't be downloaded. So for this I might go back to dropbox maybe
Anyone else have a view on the preferred approach?
And my QVD creation is as follows
Step 1
CallReloadMax: ///LOAD FROM QVD
load
MAX (Call_Last_Update) AS CallReloadMax
FROM [lib://1. Finance:DataFiles/$(d).qvd]
(qvd);
LET vDateIncremLoad = num( PEEK ('CallReloadMax',-1,'CallReloadMax')) ; // can include -1
drop table CallReloadMax;
Step 2
LIB CONNECT TO '-------------------';
SCCallTess:
load
text ("Call_Ser_Num") as "Call_Ser_Num" ,
text ("Call_Site_Num") as "Call_Site_Num",
etc
;
SELECT
*
FROM *******.dbo.SCCall
where "Call_Last_Update" >= $(vDateIncremLoad)-20 ;
Step 3
///----------------------load QVD
SCCallTess:
Concatenate (SCCallTess)
LOAD
*
FROM [lib://1. ********:DataFiles/SCCallTess.qvd]
(qvd)
where not exists (Call_Num);
//////------------RemoveDeletedCalls
SCTessInner:
Inner Join (SCCallTess)
SQL SELECT
"Call_Num"
FROM ********.dbo.SCCall
// where "Call_Last_Update" >= $(vDateIncremLoad)-20
;
Step 4
for i = 0 to NoOfTables() - 1
LET d = TableName(i);
store $(d) into
[lib://**********:DataFiles/$(d).qvd]
(qvd);
next
LET j = nooftables();
do while j > 0
let d = TableName(0);
drop table $(d);
let j = nooftables();
loop
As it's all in the Cloud it shouldn't make much difference which you use. Native and S3 will be quicker, as they are both on storage in the Amazon Cloud. Dropbox may be elsewhere.
Considerations are how much storage you need and what each service allows.
Dropbox has the advantage is that it is simplest of all to get files into, as you can set up a drop folder and have users put files into there and they can be loaded into Sense automatically.
Regarding the process, creating QVDs incrementally and then pulling into the front end is definitely best practice. The only comment I would have on your code is whilst the loops to store and drop are efficient from a code point of view you are better off storing and dropping each table explicitly as you go. The reason for this is that Sense is looking at associations between tables during the load, but these are then not used. As it's not your hardware though there is no harm in leaving it as you have it.
Thanks Steve
I've changed as you suggested. I also like to keep my script as simple as possible. I sometimes used the above alternative as it was quicker but ...
STORE SCCall INTO
[lib://3a Service Main:DataFiles/SCCall.qvd]
(qvd);
drop table SCCall ;