Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
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