Hi all,
I found this issue while using Eikon R library. Do understand that's not formally supported here, but I believe the underlying issue is with API/proxy rather than R.
When get_data returns a table with columns that contains NULL, NULL values are not inserted properly and the results from get_data would not match what one would get from Eikon/Excel
JSON request:
{"Entity":{"E":["DataGrid"],"W":{"instruments":[["0388.HK"]],"fields":[{"name":["TR.EPSEstValue(Period=FY2019)"]},{"name":["TR.EPSEstValue(Period=FY2019).date"]},{"name":["TR.EPSEstValue(Period=FY2019).origdate"]},{"name":["TR.EPSEstValue(Period=FY2019).confirmdate"]},{"name":["TR.EPSEstFootnote(Period=FY2019)"]}]}}}
JSON Response:
{\"columnHeadersCount\":1,\"data\":[[\"0388.HK\",8.19,\"2018-03-01T15:00:00Z\",\"2018-03-01T15:00:00Z\",\"2018-03-02T00:00:00Z\",\"Contributor update pending: Estimate failed freshness policy\"],[\"0388.HK\",6.94,\"2018-03-01T05:58:00Z\",\"2018-03-01T05:58:00Z\",\"2018-02-28T00:00:00Z\",\"\"],[\"0388.HK\",9.6,\"2018-04-12T12:00:00Z\",\"2018-04-12T12:00:00Z\",\"2018-04-13T00:00:00Z\",\"\"],[\"0388.HK\",12.038,\"2018-01-29T16:35:00Z\",\"2018-01-29T16:35:00Z\",\"2018-03-01T00:00:00Z\",\"\"],[\"0388.HK\",9.238,\"2018-04-12T08:27:00Z\",\"2018-04-12T08:27:00Z\",\"2018-03-20T00:00:00Z\",\"\"],[\"0388.HK\",9.41,\"2018-01-26T21:10:00Z\",\"2018-01-26T21:10:00Z\",\"2018-03-27T00:00:00Z\",\"\"],[\"0388.HK\",7.04,\"2017-10-03T14:00:00Z\",\"2018-04-01T22:40:18Z\",\"\",\"\"],[\"0388.HK\",10.684,\"2018-03-01T05:40:00Z\",\"2018-03-01T05:40:00Z\",\"\",\"\"],[\"0388.HK\",9.2,\"2018-03-01T19:37:00Z\",\"2018-03-01T19:37:00Z\",\"\",\"\"],[\"0388.HK\",7.802,\"2018-03-01T14:57:00Z\",\"2018-03-01T14:57:00Z\",\"\",\"\"],[\"0388.HK\",11.99,\"2018-03-01T17:17:00Z\",\"2018-03-01T17:17:00Z\",\"\",\"\"],[\"0388.HK\",7.586,\"2018-03-05T10:30:00Z\",\"2018-03-05T10:30:00Z\",\"\",\"\"],[\"0388.HK\",7.61,\"2018-02-28T12:20:00Z\",\"2018-02-28T12:20:00Z\",\"\",\"\"],[\"0388.HK\",7.7,\"2018-01-11T07:47:00Z\",\"2018-01-11T07:47:00Z\",\"\",\"\"],[\"0388.HK\",9.04,\"2018-03-01T09:22:00Z\",\"2018-03-01T09:22:00Z\",\"\",\"\"],[\"0388.HK\",7.89,\"2018-02-28T21:54:00Z\",\"2018-02-28T21:54:00Z\",\"\",\"\"],[\"0388.HK\",7.978,\"2018-03-01T08:34:00Z\",\"2018-03-01T08:34:00Z\",\"\",\"\"],[\"0388.HK\",8.75,\"2018-04-09T21:08:00Z\",\"2018-04-09T21:08:00Z\",\"\",\"\"],[\"0388.HK\",7.32,\"2018-01-09T20:44:00Z\",\"2018-01-09T20:44:00Z\",\"\",\"\"],[\"0388.HK\",9.754,\"2018-02-28T14:15:00Z\",\"2018-02-28T14:15:00Z\",\"\",\"\"]],\"headerOrientation\":\"horizontal\",\"headers\":[[{\"displayName\":\"Instrument\"},{\"displayName\":\"Earnings Per Share - Broker Estimate\",\"field\":\"TR.EPSESTVALUE(PERIOD=FY2019)\"},{\"displayName\":\"Date\",\"field\":\"TR.EPSESTVALUE(PERIOD=FY2019).DATE\"},{\"displayName\":\"Activation Date\",\"field\":\"TR.EPSESTVALUE(PERIOD=FY2019).origdate\"},{\"displayName\":\"Confirm Date\",\"field\":\"TR.EPSESTVALUE(PERIOD=FY2019).confirmdate\"},{\"displayName\":\"Earnings Per Share - Note\",\"field\":\"TR.EPSESTFOOTNOTE(PERIOD=FY2019)\"}]],\"rowHeadersCount\":1,\"totalColumnsCount\":6,\"totalRowsCount\":21}
Here both confirmdate and footnote columns can (and do contains) NULL. Instead of having NULL inserted into the correct rows. The reply simply put the non-NULL values at the top/head of the column and fill the rest with NULL.
Further details: