Есть ли какие-либо ограничения на количество ячеек office.js может писать в таблицу одновременно - PullRequest
0 голосов
/ 20 декабря 2018

Я пытаюсь записать 10000 записей данных, используя office-js, в таблицу Excel. Я получаю код ошибки 2000: ошибка записи данных (предоставленный тип объекта данных не поддерживается. Предоставляется неподдерживаемый объект данных).

Я проверил схему данных и объектов, кажется, все в порядке, сначала я пытался записать все данные за один снимок, но позже я попытался записать данные порциями, скажем, 250 записей на порцию, затем после операции записи яудалось увидеть около 4000 записей успешно написано.Когда я попытался написать 999 записей в чанке, я смог успешно увидеть около 8000 записей.Но я не нахожу никакой документации о таком поведении, может кто-то помочь в этом отношении.Код, используемый для записи данных в Excel, указан ниже.

this.workbook.bindings.getByIdAsync(tableName,{},
        (result: Office.AsyncResult) => {
            var binding = result.value;
            var rowsData: any[] = [];
            //Split rowData in chunks of 999
            var chunks = this.split(rowData, 999);
            for (var i = 0; i < chunks.length; i++) {
                for (var r = 0; r < chunks[i].length; r++) {
                    var rows = chunks[i];
                    rowsData[r] = [];
                    //Form all the columns data.
                }
                binding.addRowsAsync(rowsData,
                    (result: Office.AsyncResult) => {
                        if (result.status === Office.AsyncResultStatus.Failed) {
                        }
                    });
            }
        });
...