Qlik Community

Ask a Question

QlikView App Dev

Discussion Board for collaboration related to QlikView App Development.

Announcements
Support Cases coming to Qlik Community Oct. 4! Start chats, open cases, explore resources: READ DETAILS
cancel
Showing results for 
Search instead for 
Did you mean: 
dave_treagust_m
Contributor
Contributor

Qlikview Version Control

We have a multi Qlikview developer environment and are looking at different version control solutions to enable our developers to work in a more effective and stricter workflow.

Our current manual solution could be vastly improved by enabling version control to effectively track developer changes, enable us to view historical versions and branching to allow developers to work on an application at the same time.

If you're currently using version control with in a work environment, could you please share your experiences both good/bad and the solution that is working best for your team.

We've also looked at the eBiExperts solution named WIP, this is a very good product but at this time of writing it was missing one of our key requirements.

1 Solution

Accepted Solutions
romansavchuk
Contributor III
Contributor III

Hi Dave,

#1. You can see the following guide:Updated Guide to QlikView and Source Control (TFS & Subversion)

It contains general work with TFS and SVN.
QlikView has 'out of box' only integration with SVN and TFS, but you can use Git as version control system. (link: How to use Git with QlikView 10 | Birchroad).

About process of working on application in same time: not so good idea, because QlikView application exported his meta data into xml file, that managed by QlikView Desktop, not by programmer (of course if you don`t want to save qvw file into version control system). Merging changes in XML from different developers may cause to corruption application. More details described in guide #1.
And if you use this approach - during release process through Version Control system you need to open, save and close QlikView application to import back changes from xml file to qvw. I use powershell to automate it (QlikView – Open, Save, Close a QVW without reloading data using PowerShell – Eugene Niemand's Blog).

You can move reload script to external file and include it in application using Include and Must_Include statements (see discussionInclude and MustInclude).
This separate load script from interface development process.
We use it for configuration file - settings on DEV/TEST/PROD environments can be different.

In our development process we use 3 environment: Development (on developer machine), Testing (on QlikView Server) and Production (on  QlikView Server). We deliver changes through version control system.

1. Developer make changes into application and commit it to version control system.
2. Release engineer deliver changes to QlikView Server by making Get operation in TFS (Development and Test has same folder in version control system) and Open/Save/Close application.
3. Release engineer reload QlikView application manually or using reload task on QlikView Server. We automate this step by using QMS API of QlikView Server.
4. User/developer test application on Test environment.

5. If everything is good, release engineer make merge from Testing to production folder in version control system (TFS).

6. Release engineer make Open/Save/Close application and reload it.

This is simplified process (in real it may be more complex with more actions and details in steps) of release process in our company.

You have mentioned about WIP and your requirements to version control system:

"We've also looked at the eBiExperts solution named WIP, this is a very good product but at this time of writing it was missing one of our key requirements."

What are key requirements you mean?

Regards,

Savchuk Roman

View solution in original post

4 Replies
adityaakshaya
Creator III
Creator III

Hi Dave,

We tried using SVN in our environment. It helped to some extent but not fully.

I heard TFS works better with Qlik.

Regards,

Akshaya

romansavchuk
Contributor III
Contributor III

Hi Dave,

#1. You can see the following guide:Updated Guide to QlikView and Source Control (TFS & Subversion)

It contains general work with TFS and SVN.
QlikView has 'out of box' only integration with SVN and TFS, but you can use Git as version control system. (link: How to use Git with QlikView 10 | Birchroad).

About process of working on application in same time: not so good idea, because QlikView application exported his meta data into xml file, that managed by QlikView Desktop, not by programmer (of course if you don`t want to save qvw file into version control system). Merging changes in XML from different developers may cause to corruption application. More details described in guide #1.
And if you use this approach - during release process through Version Control system you need to open, save and close QlikView application to import back changes from xml file to qvw. I use powershell to automate it (QlikView – Open, Save, Close a QVW without reloading data using PowerShell – Eugene Niemand's Blog).

You can move reload script to external file and include it in application using Include and Must_Include statements (see discussionInclude and MustInclude).
This separate load script from interface development process.
We use it for configuration file - settings on DEV/TEST/PROD environments can be different.

In our development process we use 3 environment: Development (on developer machine), Testing (on QlikView Server) and Production (on  QlikView Server). We deliver changes through version control system.

1. Developer make changes into application and commit it to version control system.
2. Release engineer deliver changes to QlikView Server by making Get operation in TFS (Development and Test has same folder in version control system) and Open/Save/Close application.
3. Release engineer reload QlikView application manually or using reload task on QlikView Server. We automate this step by using QMS API of QlikView Server.
4. User/developer test application on Test environment.

5. If everything is good, release engineer make merge from Testing to production folder in version control system (TFS).

6. Release engineer make Open/Save/Close application and reload it.

This is simplified process (in real it may be more complex with more actions and details in steps) of release process in our company.

You have mentioned about WIP and your requirements to version control system:

"We've also looked at the eBiExperts solution named WIP, this is a very good product but at this time of writing it was missing one of our key requirements."

What are key requirements you mean?

Regards,

Savchuk Roman

View solution in original post

PlatformManager-Expert

Another great solution is PlatformManager by In4BI. This flagschip product does not only provide version control. PlatformManager simplifies your development and deployment process, saves time with in testing your apps, provides insight in relations, visualizes all QVD relations, manages your Extensions, Mashups and Widgets, Reload tasks, provides a workflow for approval and much more. And it works for QlikView AND Qlik Sense! Seamlessly integrated with both solutions.

With over 150 Customer it's the most used Application Governance solution available today. With presence in over 19 countries you can probably find a partner nearby. You can download a demo video through PlatformManager.com.

Hope this helps you!

RimantasE
Contributor
Contributor

This is not totally true /  accurate. Document will loose "Always one selected" setting and all variable values. In case you have "Always one selected" in Alternate States is will not recover the setting even if you open QVD file already with data, which suppose to be developers daily activity.