Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -2029,6 +2029,31 @@ ORDER BY
|
||||
return mssqlDB.QueryRowContext(ctx, sqlText, sKodu, costDate, colorCode, itemDim1Code), nil
|
||||
}
|
||||
|
||||
// Best-effort: resolve TR item description for an item code. Used for warnings export readability.
|
||||
func GetItemDescriptionTRByItemCode(ctx context.Context, mssqlDB *sql.DB, itemCode string) (string, error) {
|
||||
itemCode = strings.TrimSpace(itemCode)
|
||||
if itemCode == "" {
|
||||
return "", nil
|
||||
}
|
||||
sqlText := `
|
||||
SELECT TOP 1 ISNULL(D.ItemDescription, '') AS ItemDescription
|
||||
FROM cdItem CI
|
||||
INNER JOIN cdItemDesc D
|
||||
ON D.ItemTypeCode = CI.ItemTypeCode
|
||||
AND D.ItemCode = CI.ItemCode
|
||||
AND D.LangCode = 'TR'
|
||||
WHERE LTRIM(RTRIM(CI.ItemCode)) = @p1
|
||||
`
|
||||
var desc string
|
||||
if err := mssqlDB.QueryRowContext(ctx, sqlText, itemCode).Scan(&desc); err != nil {
|
||||
if err == sql.ErrNoRows {
|
||||
return "", nil
|
||||
}
|
||||
return "", err
|
||||
}
|
||||
return strings.TrimSpace(desc), nil
|
||||
}
|
||||
|
||||
// Bulk version of GetProductionHasCostLatestPurchasePriceForItem.
|
||||
// Uses OPENJSON to avoid 1-query-per-item fan-out.
|
||||
// For each requested rowKey, picks the latest purchase invoice before costDate,
|
||||
|
||||
Reference in New Issue
Block a user