Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Can't see data in the Table using my Qlik Sense Custom Connector, but data is loaded internally and I am able to create the reports.

Hi,

I am new to Qlik, and creating a custom connector. Followed the EventLogSimple Connector example in the QvxSDK_2.1_x64 .

When I select my connector, then select tables, I can see the field Names, but  cant see the table getting populated with data. After I click "Load Data" from the right handside tab, data is loaded internally and I am able to create the reports.

Why dont i see the data in Table in Preview?

Connection.cs --->  in the Init() following MTable is instanciated.

          var orderFields = new QvxField[]

                          {

                              new QvxField("ID", QvxFieldType.QVX_TEXT, QvxNullRepresentation.QVX_NULL_FLAG_SUPPRESS_DATA,                               FieldAttrType.ASCII),

                              new QvxField("ClientId", QvxFieldType.QVX_TEXT, QvxNullRepresentation.QVX_NULL_FLAG_SUPPRESS_DATA,                               FieldAttrType.ASCII),

                              new QvxField("OrderId", QvxFieldType.QVX_TEXT, QvxNullRepresentation.QVX_NULL_FLAG_SUPPRESS_DATA,                               FieldAttrType.ASCII),

                         };

          MTables = new List<QvxTable>

                          {

                            new QvxTable

                                  {

                                      TableName = "Orders",

                                      GetRows = GetApplicationOrders,

                                      Fields = orderFields

                                  }

                          };

          Console.Out.WriteLine(MTables.ToString());

          }


Actual data is returned in the call --> GetApplicationOrders()

               public IEnumerable<QvxDataRow> GetApplicationOrders()

                  {

                      QvxLog.Log(QvxLogFacility.Application, QvxLogSeverity.Notice, "GetApplicationOrders()");

                      List<QvOrdersRestResponse> dataList = getDataOMOrders();

                      foreach (var evl in dataList)

                      {

                          yield return MakeEntryOrders(evl as QvOrdersRestResponse, FindTable("Orders", MTables));

                      }

                  }

               public QvxDataRow MakeEntryOrders(QvOrdersRestResponse evl, QvxTable table)

                  {

                      var row = new QvxDataRow();

                      row[table.Fields[0]] = evl._id;

                     row[table.Fields[1]] = evl.clientId;

                     row[table.Fields[2]] = evl.orderId;

                      return row;

                  }

But GetApplicationOrders() is only called, when I click "Load Data".

Am I missing a step?

1 Reply
roywinkelvicta
Partner - Contributor II
Partner - Contributor II

Hi Joel,

Did you ever find out how you can display preview data?

Ive got the same issue.

Curious if you found an answer.

Roy