enable changes based on template, refactor newSku

This commit is contained in:
Ben Miller
2024-11-04 21:48:31 -07:00
parent 20a5e738f7
commit 7316ba08d7
4 changed files with 29 additions and 10 deletions

View File

@ -1,19 +1,31 @@
function newSku(e: GoogleAppsScript.Events.SheetsOnEdit) {
function newSkuHandler(e: GoogleAppsScript.Events.SheetsOnEdit) {
var sheet = SpreadsheetApp.getActive().getActiveSheet()
if (sheet.getName() !== "product_inventory") {
console.log("skipping edit on sheet " + sheet.getName())
return
}
let row = e.range.getRow()
let row = e.range.getRowIndex()
let idCell = getCellRangeByColumnName(sheet, "#", row)
let idCellValue = idCell.getValue()
let skuPrefixCellValue = getCellValueByColumnName(sheet, "sku_prefix", row)
console.log("skuPrefixCellValue = '" + skuPrefixCellValue + "'")
console.log("idCellValue = '" + idCellValue + "'")
if (idCellValue != "?" && idCellValue != "n") {
console.log("new ID was not requested, returning")
return
}
newSku(row)
}
function newSku(row: number) {
let sheet = SpreadsheetApp.getActive().getSheetByName("product_inventory")
let idCell = getCellRangeByColumnName(sheet, "#", row)
let safeToOverwrite: string[] = ["?", "n", ""]
let idCellValue = idCell.getValue()
let skuPrefixCellValue = getCellValueByColumnName(sheet, "sku_prefix", row)
console.log("skuPrefixCellValue = '" + skuPrefixCellValue + "'")
if (!safeToOverwrite.includes(idCellValue)) {
console.log("ID '" + idCellValue + "' is not safe to overwrite, returning")
return
}
var idArray = sheet.getRange(2, 9, sheet.getLastRow(), 1).getValues()
var regExp = new RegExp(`^` + skuPrefixCellValue + `-0*(\\d+)$`)
console.log("regExp: " + regExp.toString())