2014-05-15 2 views
0

패스 반환 값 I가 두 스크립트 가지고Google 애플리케이션 스크립트 한 기능에서 다른

스크립트 A는 : 입력 시트로부터 원 데이터를 취하여 출력은 출력 시트 var resultRows에 저장된 데이터 (포맷

.

스크립트 B :. MySQL 데이터베이스에 저장 resultRows 여기

내가 프로세스가 작동하고 싶은 방법은 다음과 같습니다

  1. 사용자는 스크립트를 실행하는지 확인 정보가 정확합니다.
  2. 정보가 맞으면 사용자가 스크립트 B를 실행하여 데이터를 저장합니다. 이 작업을 수행하는

한 가지 방법은 스크립트 B에 resultRows를 다시 생성 한 후 DB에 삽입하는 것입니다,하지만 난 인수로 스크립트 B에 스크립트 A로부터 resultRows을 통과 할 수 있어야한다 알고있다. 뭔가 같은 ..

function scriptA() { 
    //dosomestuff 
    return resultRows; 
} 

function scriptB(data) { 
    //insert data to db 
} 

scriptB(resultRows); 

스크립트 A는합니다 (.addMenu 방법을 통해) Google 스프레드 시트 메뉴에서 실행,하지만 난 당신이 오직 할 수있는 (이 방법으로 실행있어 함수에 인수를 전달하는 방법을 모른다 funciton 이름을 .addMenu으로 전달하십시오) 어떤 경우에도 resultRows 변수를 함수에서 사용할 수 있는지 확실하지 않습니다.

아마도 UI 요소에서 함수를 실행하는 것이 더 합리적일까요? 어떤 아이디어? 감사!

+1

전역 변수가 Apps Script에서 문제가되는 것과 같은 이유로 이것이 가능하지 않다고 생각합니다. 메뉴의 두 번째 버튼을 누르면 스크립트에 새로운 컨텍스트가 만들어져 기본적으로 이전에 설정된 모든 변수가 제거됩니다. 당신은 scriptDb에'resultRows'를 넣을 수 있습니다 만, resultRow를 다시 읽는 것이 더 쉬울 수 있습니다. – rGil

답변

0

캐시 서비스를 사용해 볼까요?

캐시 서비스를 통해 값을 키로 밀어 다른 함수에서 값을 호출하여 한 함수에서 다른 함수로 값을 전달할 수있었습니다. 캐시 서비스가 저장할 수있는 기간을 잘 모릅니다.

관련 문제