MCPcopy Index your code
hub / github.com/analyticswithadam/App_Script / fetchBigQueryData

Function fetchBigQueryData

automatereporting.js:1–37  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1function fetchBigQueryData() {
2 var projectId = 'YOURPROJECTHERE';
3 var query = 'SELECT unique_key,CAST(created_date AS DATE) AS created_date, status, status_notes, agency_name, category, complaint_type, source FROM `bigquery-public-data.san_francisco_311.311_service_requests` Where extract(year from created_date) = 2024 LIMIT 100;'
4
5 //'SELECT * FROM `bigquery-public-data.san_francisco_311.311_service_requests` where agency_name = "Muni Feedback Received Queue" LIMIT 100';
6
7 var request = {
8 query: query,
9 useLegacySql: false
10 };
11
12 var queryResults = BigQuery.Jobs.query(request, projectId);
13 var jobId = queryResults.jobReference.jobId;
14
15 var results = BigQuery.Jobs.getQueryResults(projectId, jobId);
16 var rows = results.rows;
17
18 var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('RawData');
19 if (!sheet) {
20 sheet = SpreadsheetApp.getActiveSpreadsheet().insertSheet('RawData');
21 } else {
22 sheet.clear();
23 }
24
25 // Set headers
26 var headers = results.schema.fields.map(field => field.name);
27 sheet.appendRow(headers);
28 var headerRange = sheet.getRange(1, 1, 1, headers.length);
29 headerRange.setBackground('#000000').setFontColor('#FFFFFF').setFontWeight('bold');
30
31
32 // Set Rows
33 for (var i = 0; i < rows.length; i++) {
34 var row = rows[i].f.map(cell => cell.v);
35 sheet.appendRow(row);
36 }
37}
38
39function formatReport() {
40 var ss = SpreadsheetApp.getActiveSpreadsheet();

Callers 1

generateReportFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected