0
App Maker 데이터베이스의 야간 백업을 수행 할 수있는 방법이 있습니까? 사용자가 우발적으로 데이터를 삭제하는 경우를 대비하여?야간 앱 제조업체 데이터 백업
출력 된 스프레드 시트 만있는 경우에도 허용됩니다.
App Maker 데이터베이스의 야간 백업을 수행 할 수있는 방법이 있습니까? 사용자가 우발적으로 데이터를 삭제하는 경우를 대비하여?야간 앱 제조업체 데이터 백업
출력 된 스프레드 시트 만있는 경우에도 허용됩니다.
Installable Trigger 기반의 시계를 만들 수 있습니다.이 시계는 근무 시간 전 아침에 하루에 한 번 실행됩니다.
이 코드 조각은 서버 측 스크립트에있을 것입니다과 같이 보일 것입니다 :
function createInstallableTrigger() {
// Runs at 5am in the timezone of the script
ScriptApp.newTrigger("backUp")
.timeBased()
.atHour(5)
.everyDays(1) // Frequency is required if you are using atHour() or nearMinute()
.create();
}
function backUp() {
try {
var spreadSheet = SpreadsheetApp.openById("").getActiveSheet(),
dataToBackUp = [],
globalKeys = {
model: ["first_name", "last_name", "email"],
label: ["First Name", "Last Name", "Email"]
},
var records = app.models.requests.newQuery().run();
if(records.length >= 1) {
for (var i = 0; i < records.length; i++) {
var newLine = [];
for (var x = 0; x < globalKeys.model.length; x++) {
newLine.push(records[i][globalKeys.model[x]]);
}
dataToBackUp.push(newLine);
// at the end, push it all on the spreadsheet
if(i === records.length - 1) {
// check if there is any entry at all
if(dataToBackUp.length >= 1) {
// append column titles first
spreadSheet.appendRow(globalKeys.label);
//
spreadSheet.getRange(2, 1, dataToBackUp.length, globalKeys.model.length).setValues(dataToBackUp);
}
}
}
}
} catch(e) {
console.log(e);
}
}
이 도움을 주셔서 감사합니다! –
작동한다면 알려주세요. 답변을 선택하십시오. –
이 코드가 많은 것이어서 죄송합니다. 그래서 나는 Server Side Script를 만들고 거기에 그 코드를 복사하겠습니까? 어디에서 스프레드 시트를 만들거나 저장할 것입니까? 또한 모델/라벨 섹션에서 모든 모델의 모든 라벨을 전체 앱에 입력해야합니까? 그렇다면 라벨의 수와 그 라벨이 아직도 변하고 있기 때문에 가치가있는 것보다 더 많은 문제가 될 수 있습니다. 배포 섹션에서 수동으로 데이터 내보내기를 할 수 있다는 것을 알고 있습니다. 제 희망은 그것을 수동으로하지 않고도 시작할 수있는 방법이 있다는 것입니다. 그러나 나는 그것이 더 간단한 선택일지도 모른다라고 생각한다. –