use column names for newSku

This commit is contained in:
Ben Miller
2024-11-04 01:35:44 -07:00
parent 0fd89bc9ea
commit b6b75e426c
2 changed files with 47 additions and 5 deletions

View File

@ -4,11 +4,10 @@ function newSku(e: GoogleAppsScript.Events.SheetsOnEdit) {
console.log("skipping edit on sheet " + sheet.getName())
return
}
var row = e.range.getRow()
var idCell = sheet.getRange(row, 16).getCell(1, 1)
var idCellValue = idCell.getValue()
var skuPrefixCell = sheet.getRange(row, 15).getCell(1, 1)
var skuPrefixCellValue = skuPrefixCell.getValue()
let row = e.range.getRow()
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") {

43
src/sheetUtils.ts Normal file
View File

@ -0,0 +1,43 @@
function getCellRangeByColumnName(
sheet: GoogleAppsScript.Spreadsheet.Sheet,
columnName: string,
row: number
) {
let data = sheet.getDataRange().getValues()
let column = data[0].indexOf(columnName)
if (column != -1) {
return sheet.getRange(row, column + 1, 1, 1)
}
}
function getCellValueByColumnName(
sheet: GoogleAppsScript.Spreadsheet.Sheet,
columnName: string,
row: number
) {
let cell = getCellRangeByColumnName(sheet, columnName, row)
if (cell != null) {
return cell.getValue()
}
}
function getColumnRangeByName(
sheet: GoogleAppsScript.Spreadsheet.Sheet,
columnName: string
) {
let data = sheet.getRange("A1:1").getValues()
let column = data[0].indexOf(columnName)
if (column != -1) {
return sheet.getRange(2, column + 1, sheet.getMaxRows())
}
}
function getColumnValuesByName(
sheet: GoogleAppsScript.Spreadsheet.Sheet,
columnName: string
) {
let column = getColumnRangeByName(sheet, columnName)
if (column != null) {
return column.getValues()
}
}