Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

QlikView 11 and Java Integration via QMS API

Hello everyone,

I've been trying to utilize the QV web service on Java but I'm getting errors on the WSDL file.

WSDL error.png

Even in C#.net, I was not able to succeed using the web service by following the sample implementation mentioned at QMS API documentation.

Is there someone, succeeded utilizing the QV 11 web service ?

Please help.

Any response is highly appreciated.

Thanks,

Arnold

25 Replies
alex_nerush
Partner - Creator II
Partner - Creator II

Hello Arnold,

I'm not specialist in Java... But I have successful implementation using C#.NET and QMS API v.11...

Not applicable
Author

Hi Alex,

Really apreciate the time and response.

Currently I was able to make the C#+QMS work. Do you know if QMS api can access the sheets and other objects inside the qvw file?

Basically, what I want to achieve is to get all the TableBox object together with its row and column values inside a specific document.

I read the API documentation, but I couldn't find the right method.

Please help.

Thanks,

Arnold

alex_nerush
Partner - Creator II
Partner - Creator II

I think such functionality doesn't available in current release (but you can get field list, field content)... You can look forward 3rd party software - like this http://www.qvsconnector.com/. Or you can try to use QlikOCX component to achive such functionality.

Not applicable
Author

thanks a lot Alex!

Do you know if it is possible to integrate the QlikOcx with Java?

alex_nerush
Partner - Creator II
Partner - Creator II

Sorry, i have no idea regarding Java and QlikOcx.. Maybe this link will be useful for you http://javaactivex.com/

Not applicable
Author

Hi Alex,

Do you have a sample .net program using QlikOcx to retrieve tablebox objects together with its values within a specific qvw document?

Thanks,

Arnold

alex_nerush
Partner - Creator II
Partner - Creator II

Here are you couple lines of code from my project, maybe this will be helpful for you. Documentation available right here http://community.qlik.com/docs/DOC-2639(see The QlikView  Core COM API)

axQlikOCX1 - instance of QlikOCX object.

axQlikOCX1.ActiveDocument.GetSheetObject(objectId) - this method i've used to retrieve reference for appropriate object in the document.

....

public void OpenDocument(string link, string username, string password)

        {

            if (axQlikOCX1.HasOpenDocument())

            {

                axQlikOCX1.ActiveDocument.CloseDoc();

            }

            if(!String.IsNullOrEmpty(username))

                axQlikOCX1.OpenDocument(link, username, password);

            else

                axQlikOCX1.OpenDocument(link);

        }

...

public void Select(string fieldName, string fieldValue)

        {

            if (axQlikOCX1.HasOpenDocument())

            {

                axQlikOCX1.ActiveDocument.Fields(fieldName).Select(fieldValue);

            }

        }

...

public void SelectValues(string fieldName, IEnumerable<string> values, bool isNumeric)

        {

            if (axQlikOCX1.HasOpenDocument())

            {

                //axQlikOCX1.ActiveDocument.Clear();

                QlikView.Field f = axQlikOCX1.ActiveDocument.GetField(fieldName);

                QlikView.IArrayOfFieldValue fv = f.GetNoValues();

                int i = 0;

                foreach (string value in values)

                {

                    double result;

                    if (isNumeric && Double.TryParse(value, out result))

                    {

                        fv.Add();

                        fv.Number = result;

                        fv.IsNumeric = true;

                        ++i;

                    }

                    else

                    {

                        fv.Add();

                        fv.Text = value;

                        fv.IsNumeric = false;

                        ++i;

                    }                   

                }

                // f.Clear();

                f.SelectValues(fv);

            }

        }

...

public IEnumerable<string> GetPossibleValues(string fieldName)

        {

            List<string> values = new List<string>();

            QlikView.Field f = axQlikOCX1.ActiveDocument.GetField(fieldName);

            if (f != null)

            {

                QlikView.IArrayOfFieldValue fv = f.GetPossibleValues();

                for (int i = 0; i < fv.Count; ++i)

                {

                    if (fv.IsNumeric)

                        values.Add(fv.Number.ToString());

                    else

                        values.Add(fv.Text);

                }

            }

            return values;

        }

...

public void CopyObjectToClipboard(string objectId)

        {

            if (axQlikOCX1.HasOpenDocument())

            {

                QlikView.SheetObject o = axQlikOCX1.ActiveDocument.GetSheetObject(objectId);

                if (o != null)

                    o.CopyTableToClipboard(true);

                    //o.CopyBitmapToClipboard();

            }

        }

Not applicable
Author

Hi Alex,

Would QlikOcx work with a console application?

Thanks a lot.

Regards,

Arnold

alex_nerush
Partner - Creator II
Partner - Creator II

I've never used it in the console apps.