Sales Pipeline - 바이오프로테크 영업 파이프라인
📊 Sales Pipeline

바이오프로테크 영업 파이프라인

구글 시트 연동 실시간 세일즈 파이프라인 대시보드 — 새로고침으로 최신 데이터를 반영합니다.

LEAD PROPOSAL CLOSE PIPELINE
총 영업건수
총 예상매출
가중매출
평균 성사확률
내장 데이터

⚙️ 데이터 연동 설정

📋 Apps Script 배포 방법
  1. Google Sheets (BPT_CRM_sales_pipeline_RawData) 열기
  2. 확장 프로그램 → Apps Script 클릭
  3. 아래 코드를 복사하여 기존 코드 전체를 교체
  4. 배포 → 새 배포 → 유형: 웹 앱
  5. 실행 주체: / 액세스 권한: 모든 사용자
  6. 배포 후 생성된 URL을 위 입력란에 붙여넣기
function doGet(e) { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var data = sheet.getDataRange().getValues(); return ContentService.createTextOutput( JSON.stringify({success:true, data:data}) ).setMimeType(ContentService.MimeType.JSON); } function doPost(e) { var lock = LockService.getScriptLock(); lock.tryLock(30000); try { var p = JSON.parse(e.postData.contents); var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; if (p.action === 'update') { sheet.getRange(p.row, 1, 1, p.values.length) .setValues([p.values]); } else if (p.action === 'add') { sheet.appendRow(p.values); } else if (p.action === 'delete') { sheet.deleteRow(p.row); } return ContentService.createTextOutput( JSON.stringify({success:true}) ).setMimeType(ContentService.MimeType.JSON); } catch(err) { return ContentService.createTextOutput( JSON.stringify({success:false, error:err.message}) ).setMimeType(ContentService.MimeType.JSON); } finally { lock.releaseLock(); } }