Google apps script 如何获取记录';在手动模式下保存时的主键值?

Google apps script 如何获取记录';在手动模式下保存时的主键值?,google-apps-script,google-cloud-platform,google-app-maker,Google Apps Script,Google Cloud Platform,Google App Maker,我有一个处于手动保存模式的模型和一个处于创建模式的表单。一旦我添加了详细信息并单击submit,它就会创建记录并 警告类似“您的请求已注册,id=7”,其中id是id(主键) 注意,主键处于自动递增状态,并动态生成 在手动保存模式下,我使用saveChanges保存记录,但看到错误: 严重:记录RecordKey{key=private$2,型号 key=1YMDocyohkegpumlxvekzh57jujd9oy | 7LyXBUY46K9Jl6GRCy1DeL32kXmnGHis} 已删除

我有一个处于手动保存模式的模型和一个处于创建模式的表单。一旦我添加了详细信息并单击submit,它就会创建记录并 警告类似“您的请求已注册,id=7”,其中id是id(主键)

注意,主键处于自动递增状态,并动态生成

在手动保存模式下,我使用saveChanges保存记录,但看到错误:

严重:记录RecordKey{key=private$2,型号 key=1YMDocyohkegpumlxvekzh57jujd9oy | 7LyXBUY46K9Jl6GRCy1DeL32kXmnGHis} 已删除。失败:对象处的getProperty。 (UserCreationRequest:12:37)在createUCR(UserCreationRequest:11:19) 在 UserCreationRequest.Container.UserCreationRequestPanel.UserCreationRequestPanelFooter.UserCreationRequestPanelSubmitButton.onClick:1:1

(错误12:37点记录。_键)

代码:(点击提交按钮后执行)

有人能建议如何在手动模式下获取保存时的主键吗

其他信息参考:

上面的代码在其他地方的其他模型中对我有效。但不适用于当前模型,是因为当前模型有关系吗

我在当前模型的Datasources部分添加了一个新的数据源 通过使用它,它工作得很好。但为什么不能与原始版本配合使用呢


同样,仅供参考,也是一个类似的问题,但它没有帮助,因为这是一个不同的方法。我渴望使用小部件本身进行保存。

首先,我们需要了解创建模式与正常模式不同。有了这一点,我们可以做以下工作:

假设数据源名称为MYDATASOURCE,则表单datasource应为MYDATASOURCE(创建)。然后,在插入表单
内的
提交
按钮小部件的onClick事件中,使用以下命令:

widget.datasource.createItem(function(record){
  app.datasources.MYDATASOURCE.saveChanges(function(){
    console.log(record._key);
  });
});

首先,我们需要了解创建模式与正常模式不同。有了这一点,我们可以做以下工作:

假设数据源名称为MYDATASOURCE,则表单datasource应为MYDATASOURCE(创建)。然后,在插入表单内的提交按钮小部件的onClick事件中,使用以下命令:

widget.datasource.createItem(function(record){
  app.datasources.MYDATASOURCE.saveChanges(function(){
    console.log(record._key);
  });
});

更多元评论:我不确定这应该有[谷歌应用程序脚本]标签。AppMaker确实使用Apps脚本作为后端,但其功能似乎大不相同。另外,我非常想和AppMaker玩。@chris有一个14天的免费试用期。为什么不去玩呢?从文档中我看到saveChanges没有一个带有record的回调函数,但是它在其他地方对我有效。无论如何,如果没有,那么有人能建议如何解决这个问题吗?更多的元评论:我不确定这应该有[google apps script]标签。AppMaker确实使用Apps脚本作为后端,但其功能似乎大不相同。另外,我非常想和AppMaker玩。@chris有一个14天的免费试用期。为什么不去玩呢?从文档中我看到saveChanges没有一个带有record的回调函数,但是它在其他地方对我有效。无论如何,如果没有,那么有人可以建议如何解决这个问题吗?只是为了确保我们在同一页上,通过创建模式,我的意思是数据源处于创建模式,即为表单设置MYDATASOURCENAME(创建)。我得到了记录。_key=null和您的代码。我认为这是因为数据源处于手动模式,create项创建了记录,但没有将其保存到数据源中。@abhishek186是的。因此,基本上,表单将使用MYDATASOURCENAME(创建)作为数据源。单击“提交”按钮时,首先必须在(创建)数据源上创建项,一旦创建项,则需要在非(创建)数据源上保存更改,即仅保存MYDATASOURCENAME。它对我很管用,现在还不管用。当我打印记录时,它显示空值。当我打印除eg record.FirstName的主键以外的字段名时,我会得到值。因此,看起来记录已经创建,但在保存之前没有密钥。在saveChanges中,我们正在打印该记录,但createItem会重新打印该记录,该记录不包含任何键。@abhishek186您的设置有问题。它在不同的项目中对我非常有效。祝你好运。在这种情况下,我想确认其他用户。如果它对您有效而对我无效,那么可能会有一些不同的设置。为了确保我们在同一页面上,通过创建模式,我的意思是数据源处于创建模式,即为表单设置MYDATASOURCENAME(创建)。我得到了记录。_key=null和您的代码。我认为这是因为数据源处于手动模式,create项创建了记录,但没有将其保存到数据源中。@abhishek186是的。因此,基本上,表单将使用MYDATASOURCENAME(创建)作为数据源。单击“提交”按钮时,首先必须在(创建)数据源上创建项,一旦创建项,则需要在非(创建)数据源上保存更改,即仅保存MYDATASOURCENAME。它对我很管用,现在还不管用。当我打印记录时,它显示空值。当我打印除eg record.FirstName的主键以外的字段名时,我会得到值。因此,看起来记录已经创建,但在保存之前没有密钥。在saveChanges中,我们正在打印该记录,但createItem会重新打印该记录,该记录不包含任何键。@abhishek186您的设置有问题。它在不同的项目中对我非常有效。祝你好运。在这种情况下,我想确认其他用户。可能有一些不同的设置,如果它为你工作,而不是为我工作。