Объединить данные из двух источников данных в одну таблицу - PullRequest
0 голосов
/ 25 июня 2018

Обычно у меня есть два набора данных:

Набор данных 1 - записывает детали посещения магазина.Название, местоположение, дата мерчендайзера и отношение к SKU (набор данных2). Набор данных 2 - это данные SKU, где уровни запасов для каждого SKU вводятся в виде новой записи, каждая из которых связана с посещением из набора данных 1.

У меня есть две проблемы:

  1. Я хочу объединить эти данные в одну таблицу.Я хочу показать каждую запись sku с дополнительными столбцами для информации о посещении (например, место и дата).Как мне это сделать.

  2. Как мне объединить эти данные для использования в других местах, таких как Google Data Studio.По сути, я хочу видеть историю уровня запасов SKU или дату последнего обновления.

Спасибо

1 Ответ

0 голосов
/ 26 июня 2018

Вам необходимо создать Расчетный источник данных.Вы можете сослаться на этот образец.

На высоком уровне

  1. Добавить источник данных в Appmaker.
  2. Выберите Рассчитано, укажите Имя и Создатьисточник данных.

Как только ваша расчетная модель будет на месте.Добавить поля в соответствии с необходимостью.Например, если вы хотите сохранить сумму двух полей, создайте одно целочисленное поле в вычисляемой модели.Вот как будет выглядеть ваша расчетная модель данных.

Sample

Теперь перейдите на вторую вкладку «Источники данных».Нажмите на название модели данных там.Вы должны увидеть опцию написания серверного скрипта. Sample2

Здесь вы должны написать свою логику для объединения ваших источников данных.Я могу предоставить вам один образец для достижения этой цели.

//server script
var calculatedModelRecords = [];
var recordsByStatus = {};
var allRecord = app.models.Request.newQuery().run(); //your existing data source.


for (var i = 0; i < allRecord.length; i++) {
     var record = allRecord[i];
    var draftRecord = app.models.TAT.newRecord(); //new data source 
    draftRecord.CreatedOn = record.CreatedOn;
    draftRecord.DocumentName = record.DocumentName;
    draftRecord.DueDate = record.DueDate;
    draftRecord.DaysPerStage = record.DaysPerStage;  
    draftRecord.Status = record.Status;  
  calculatedModelRecords.push(draftRecord);    
}

return calculatedModelRecords;
...