Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
bmenicucci
Creator
Creator

QDF containers in cloud

Hello everyone,

I have a question for you: is that possible to create containers or use QDF scripts stored in cloud drives like Google Cloud Storage, Dropbox etc.?

Thanks a lot!

Brunello

43 Replies
bmenicucci
Creator
Creator
Author

@nicolett_yuri @Magnus_Berg any update on QDF? 

@rwunderlich  would you mind to elaborate further on how to use QVC subroutines from the cloud?

Thank you all!

rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

@bmenicucci You can upload Qvc.qvs to a cloud storage or Qlik Cloud datastore and then reference it in your script like:

$(Must_Include=lib://DataFiles/Qvc.qvs);

Or alternatively paste the Qvc.qvs content into your script. 

-Rob
http://www.easyqlik.com
http://masterssummit.com
http://qlikviewcookbook.com

Magnus_Berg
Employee
Employee

Hi Brunello, there is ongoing work in extending QDF to work with QS in cloud. but It's already possible to run qvs scripts from external storage, as seen below where you first need to create a file data connection to your storage (OneDrive - account) best is to use a space for this (SpaceName) and assign users access to this connection.
SET vG.SharedBasePath='lib://SpaceName:OneDrive - account/QDF_SaaS/Shared/';
$(include=$(vG.SharedBasePath)InitLink.qvs);

Hope this helps? Regards Magnus

bmenicucci
Creator
Creator
Author

Hello @Magnus_Berg , thanks for your reply!

Indeed I am able to run "InitLink.qvs", however the problem seems to be (in my case, at least) that it is unable to identify a proper container to start with. In the following screenshot you can see the script I'm using, that is always returning "

'### QDF Info, Initiation Started'
'### DF Warning, could not find root container with name lib://OneDrive/'
'### DF Warning, could not identify any valid container path, will exit'
'### DF Warning, if using Qlik Sense add SET vG.HomeContainer=container name before InitLink.qvs'
 
any help will be appreciated!
Thanks,
Brunello
 

bmenicucci_0-1657200583172.png

 

bmenicucci
Creator
Creator
Author

Hello @Magnus_Berg , 

after having played a while with QS Saas, I've found out that the problem is related to the OneDrive limitation (indeed this is true for all other cloud storages, such as GCP, GDrive etc.) in using wildcards and also, I'm afraid is not possible to load the list of "folders" like we do in a Windows environment.

For your reference, check the enclosed screenshot where you can see the given error. Is there any progress in extending QDF to QS Saas? Thank you so much

Brunello

Screenshot 2022-08-23 at 15.58.20.png

 

bmenicucci
Creator
Creator
Author

Hi @nicolett_yuri ,

would you mind to share your customized QDF? I'd like to contribute in its development

Thank you in advance!

Brunello

Magnus_Berg
Employee
Employee

Hi Brunello, thanks for your response and willingness to help out. I will release the current dev version in GitHub soon as I can, need to clean up some things. My thought is like this:
QDF containers will work with both Spaces (in product) and containers (in any cloud storage).

  1. There is always a default Shared container in cloud storage, it this container that stores all the needed scripts including the container map (the file that describes container names and locations)
  2. The container structure is simplified against the one for QlikView as we can remove unneeded folders
  3. Shared container do not need container map as it's "initiated" using the script in the app
  4. Container map will primarily use spaces as containers (no additional URL is needed)
  5. Spaces has limited functionality as a container, it can only store data files ($vG.QVDPath)
  6. The default $vG.QVDPath is the space where you run your app from. Meaning that an app by default would have:
     $vG.QVDPath (space I am in)
     $vG.SharedQVDPath (Shared area in cloud)
    $vG.SharedIncludePath (with the different sub path
    $vG.SharedConfigPath (to store configuration files)
    $vG.SharedImportPath (for import data like CSV's from other systems)
    $vG.SharedExportPath (Export data like CSV's to other systems)
  7. Container map can map containers in any cloud storage using the URL field in the container  map
nicolett_yuri

Yes @bmenicucci 

I will share the scripts I am developing with everyone

I had some personal problems and ended up staying away from QlikCommunity for a while, now my daughter has just been born too, I'm having some sleepless nights. Sorry for this time away, but I'm coming back now 🙂

The solution we're using still has some issues, but I'll prepare a post to explain what we're doing and also share all the QDF changes that were made.

bmenicucci
Creator
Creator
Author

@Magnus_Berg thanks a lot for your reply.

Looking forward to hearing from you soon

Brunello

bmenicucci
Creator
Creator
Author

Hello @Magnus_Berg ,

I'd need a clarifications on your previous answer:

  1. in this point you mentioned "There is always a default Shared container in cloud storage" that will store all QDF scripts, and I'd like to ask you if that's part of current QDF dev version for cloud, or if it is already available. In this case, may I ask you how to load or access it... maybe I'm missing something?
  2. I'm okay with this one: Qlik Sense simplified structure it's a good fit 
  3. ok with container map initiation, I see what you said and agree
  4. here I'm quite confused because, as I see it, here you're stating "no additional URL is needed" but in point 7. you say Container map will use URL field to map containers in any cloud storage
  5. I'm ok with this point
  6. ok, but again in my experience current connections to clouds storage (OneDrive, Google Drive, GCP, S3) have some limitations such the use of wildcard sign, that prevent QDF scripts to identify the different folders and thus I bet this is the main part of your development, is it?

Thanks a lot for your support, 

Brunello