Prijsbeheer
Reparatie- & verkoopprijzen beheren — alleen voor managers

Gebruik de beheercode van de manager

Prijsbeheer
Verbinden met Google Sheets...
✓ Geen wijzigingen
Koppeling met Google Sheets instellen
Volg de stappen hieronder om de prijzen te koppelen aan een Google Spreadsheet. Dit hoeft maar één keer ingesteld te worden.
1
Maak een nieuw Google Spreadsheet aan
Ga naar sheets.google.com en maak een leeg spreadsheet. Voeg twee tabbladen toe (onderaan het scherm) met exact de namen Prijzen en Verkoopprijzen.
2
Maak een Apps Script aan
Klik in het spreadsheet op Extensies → Apps Script. Verwijder alle bestaande code en plak de onderstaande code. Verander JOUW_TOKEN_HIER in iets geheims (bijv. tc2024geheim).
// Telecombinatie Prijsbeheer — Apps Script v2 var TOKEN = 'JOUW_TOKEN_HIER'; // << verander dit in een geheim woord function doGet(e) { var type = (e && e.parameter && e.parameter.type) ? e.parameter.type : 'prijzen'; var sheetName = type === 'verkoop' ? 'Verkoopprijzen' : 'Prijzen'; var sheet = SpreadsheetApp.getActive().getSheetByName(sheetName); if (!sheet) return err('Tabblad "' + sheetName + '" niet gevonden'); var data = sheet.getDataRange().getValues(); var csv = data.map(function(r){ return r.join(','); }).join('\n'); return ContentService.createTextOutput(csv) .setMimeType(ContentService.MimeType.TEXT); } function doPost(e) { try { var p = JSON.parse(e.postData.contents); if (p.token !== TOKEN) return err('Ongeldig token'); var type = p.type || 'prijzen'; var sheetName = type === 'verkoop' ? 'Verkoopprijzen' : 'Prijzen'; var sheet = SpreadsheetApp.getActive().getSheetByName(sheetName); if (!sheet) sheet = SpreadsheetApp.getActive().insertSheet(sheetName); sheet.clearContents(); var rows; if (type === 'verkoop') { rows = [['model','grade','gb','prijs']]; p.data.forEach(function(m) { ['A','B','C'].forEach(function(grade) { m.s.forEach(function(gb) { if (m[grade] && m[grade][gb] !== undefined) rows.push([m.n, grade, gb, m[grade][gb]]); }); }); }); sheet.getRange(1,1,rows.length,4).setValues(rows); } else { rows = [['brand','model_id','model_label','model_group','cat','repair_name','price']]; Object.keys(p.data).forEach(function(brand) { p.data[brand].models.forEach(function(model) { model.repairs.forEach(function(repair) { rows.push([brand, model.id, model.label, model.group||'', repair.cat, repair.name, repair.price]); }); }); }); sheet.getRange(1,1,rows.length,7).setValues(rows); } return ContentService.createTextOutput('OK') .setMimeType(ContentService.MimeType.TEXT); } catch(ex) { return err(ex.message); } } function err(msg) { return ContentService.createTextOutput('ERROR: '+msg) .setMimeType(ContentService.MimeType.TEXT); }
3
Implementeer als Web App
Klik op Implementeren → Nieuwe implementatie. Kies type: Web-app. Stel in: Uitvoeren als: Ik en Toegang: Iedereen. Klik Implementeren en kopieer de URL.
4
Vul de URL en het token in
Plak hieronder de Web App URL en het token dat je in stap 2 hebt gekozen. Klik dan op Verbinding testen.
5
Sla op en initialiseer de sheets
Klik op Opslaan & verbinden om de koppeling op te slaan. Klik daarna op Initialiseer alle prijzen om zowel de reparatie- als verkoopprijzen naar Google Sheets te sturen. Dit hoef je maar één keer te doen.
Reparatieprijzen laden uit Google Sheets...