2017-02-09 1 views
1

App Maker의 새로운 앱 (사랑)입니다. 자동 번호 필드를 만들려면 도움이 필요하므로 내 앱을 고유 ID로 참조 할 수 있습니다. 이전 앱에서 스프레드 시트를 사용했고 마지막 값을 얻은 스크립트를 컴파일하고 각 새 레코드에 1을 더했습니다. 앱 메이커의 자음 번호

var SS = SpreadsheetApp.openById(Key).getSheetByName('Data'); 
var LR = SS.getLastRow(); 
var SC = SS.getRange('A1').getValue(); 
if(! SC){SS.getRange('A1').setValue(1);return}; 
var colValues = SS.getRange('A1:A').getValues(); 
var CNT=0; 
for(var r in colValues){ 
if(Number(colValues[r][0]>CNT)){CNT=colValues[r][0]}; 
} CNT++ ; 

var setCID = SS.getRange('a1').offset(LR, 0); 

그래서 ID가 27이었던 이전 클리닉, setCID 28

캔트이에 대해 아무것도 찾을 수가있을 것입니다 경우 : 여기 내 예전의 코드이었다. 누군가 분명히 작동하지 않을 AppMaker를 사용하여 나를 안내 할 수 있습니다. 감사합니다. . Deryk

답변

0

Welcome to App Maker! 먼저 모든 레코드에 고유 한 키를 할당합니다.이 키는 "_key"속성을 사용하여 액세스 할 수 있습니다. 그러나 드라이브 테이블의 경우이 값은 임의의 ID이며 증분 값이 아닙니다. ID로 참조하기에 충분하지만 길고 못 생깁니다. 이것이 충분하다면, 나는이 길로가는 것이 좋습니다.

충분히 좋지 않은 경우이 질문을 확장 해 볼 수는 있지만 다소 어려워 보입니다. (대략적인 요약은 "onSave"레코드에 대한 것입니다. 현재 가장 높은 ID로 레코드를 쿼리하고 추가해야합니다.하지만 그렇게 간단하지는 않습니다. 잠금 내에서이 작업을 수행해야합니다. 그렇지 않으면 또한 경주 상황에 노출 될 수 있으며 절약 기록이 약간 느려질 수 있습니다.)