Skip to content

Commit 32ba518

Browse files
fix: Polish diacritics + DGET CellError explicit guard
- plPL: DCOUNTA 'BD.ILE.REKORDOW.A' -> 'BD.ILE.REKORDÓW.A' (missing Ó, matches DCOUNT pattern; Cursor Bugbot finding). - plPL: DAVERAGE 'BD.SREDNIA' -> 'BD.ŚREDNIA' (missing Ś, per Microsoft Polish documentation; pre-emptive fix for the same class of issue). - DGET: explicit CellError check on the matched cell makes the error- propagation path consistent with the other D-functions (previously worked by accident via fall-through). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 1dd7b10 commit 32ba518

2 files changed

Lines changed: 7 additions & 3 deletions

File tree

src/i18n/languages/plPL.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,9 +75,9 @@ const dictionary: RawTranslationPackage = {
7575
DAYS360: 'DNI.360',
7676
DAYS: 'DNI',
7777
DB: 'DB',
78-
DAVERAGE: 'BD.SREDNIA',
78+
DAVERAGE: 'BD.ŚREDNIA',
7979
DCOUNT: 'BD.ILE.REKORDÓW',
80-
DCOUNTA: 'BD.ILE.REKORDOW.A',
80+
DCOUNTA: 'BD.ILE.REKORDÓW.A',
8181
DGET: 'BD.POLE',
8282
DMAX: 'BD.MAX',
8383
DMIN: 'BD.MIN',

src/interpreter/plugin/DatabasePlugin.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,11 +237,15 @@ export class DatabasePlugin extends FunctionPlugin implements FunctionPluginType
237237

238238
for (let rowIdx = 1; rowIdx < dbData.length; rowIdx++) {
239239
if (this.rowMatchesCriteria(dbData[rowIdx], criteriaRows)) {
240+
const cellValue = dbData[rowIdx][fieldIndex]
241+
if (cellValue instanceof CellError) {
242+
return cellValue
243+
}
240244
matchCount++
241245
if (matchCount > 1) {
242246
return new CellError(ErrorType.NUM, ErrorMessage.ValueLarge)
243247
}
244-
matchedValue = dbData[rowIdx][fieldIndex]
248+
matchedValue = cellValue
245249
}
246250
}
247251

0 commit comments

Comments
 (0)