Skip to main content
Announcements
NEW: Seamless Public Data Sharing with Qlik's New Anonymous Access Capability: TELL ME MORE!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

connect to QlikView Publisher

Hey,

how can I open a qvw-document which is lying on the QlikView Publisher on a server:

I have try this:

Application qlikViewApp = new Application();

Doc qlikViewDoc = qlikViewApp.OpenDoc("qvp://MYUSERNAME@MYSERVER:MYPORT/MYFILE.qvw", "MYUSER", "MYPASSWORD");

But this is not working, also how can I check which QlikView Documents, are on the QVP.

1 Solution

Accepted Solutions
Not applicable
Author

I think it's too late, but it'll be useful for others.

The best way to get rid of password request is use of kerberos tickets.

To open doc:

qlikViewApp.OpenDocEx("qvp://<host>/<filename>.qvw??ticket=<ticket>", 1, false, "MYUSER", "MYPASSWORD");

To get ticket:

var request = WebRequest.Create("http://<host>/QvAjaxZfc/GetTicket.aspx?admin=");

var str = "<Global method=\"GetTicket\"><UserId>MYUSER</UserId></Global>";

request.ContentLength = str.Length;

request.Method = "POST";

request.Credentials = new NetworkCredential("MYUSER","MYPASS");

var writer = new StreamWriter(request.GetRequestStream());

writer.Write(str);

writer.Flush();

var responce = request.GetResponse();

Best regards.

View solution in original post

2 Replies
Not applicable
Author

Hi,

has nobody some tips for me. A problem that I recognized is, that the user must still insert the password in an formular.

Please can you give me some tips.

Not applicable
Author

I think it's too late, but it'll be useful for others.

The best way to get rid of password request is use of kerberos tickets.

To open doc:

qlikViewApp.OpenDocEx("qvp://<host>/<filename>.qvw??ticket=<ticket>", 1, false, "MYUSER", "MYPASSWORD");

To get ticket:

var request = WebRequest.Create("http://<host>/QvAjaxZfc/GetTicket.aspx?admin=");

var str = "<Global method=\"GetTicket\"><UserId>MYUSER</UserId></Global>";

request.ContentLength = str.Length;

request.Method = "POST";

request.Credentials = new NetworkCredential("MYUSER","MYPASS");

var writer = new StreamWriter(request.GetRequestStream());

writer.Write(str);

writer.Flush();

var responce = request.GetResponse();

Best regards.