Domino Web 應用預設將附件連結固定顯示在頁面底部,嚴重干擾版面配置。本文提供 **公式語言** 完整方案:隱藏系統附件區、自訂連結位置、處理特殊字元 (如 `#`、`&`) 編碼、支援刪除核取框,讓附件管理完美融入自訂表單。
$V2AttachmentOptions,值設為 0 → 隱藏預設附件區thisDb := @ReplaceSubstring(@ReplaceSubstring(@Subset(@DbName; -1); " "; "+"); "\\"; "/");
@If(@Attachments != "";
"[" + @AttachmentNames + "]";
""
)
thisDb := @ReplaceSubstring(@ReplaceSubstring(@Subset(@DbName; -1); " "; "+"); "\\"; "/");
@If(@Attachments != "";
"[" + @AttachmentNames + "]";
""
)
關鍵:`` 告訴 Domino 送出表單時刪除勾選的附件。
附件檔名若含 `#`、`&`、`%`、`空白` 等字元,直接拼接 URL 會截斷或錯誤。必須使用 `@URLEncode` 編碼檔名部分:
thisDb := @ReplaceSubstring(@ReplaceSubstring(@Subset(@DbName; -1); " "; "+"); "\\"; "/");
encodedNames := @URLEncode("domino"; @AttachmentNames);
@If(@Attachments != "";
"[" + @AttachmentNames + "]";
""
)
@URLEncode("domino"; ...) 依 Domino 規則編碼 (空白→+,特殊字元→%XX)@AttachmentNames 保持可讀性| 需求 | 做法 |
|---|---|
| 多附件分行顯示 | 用 `@Transform(@AttachmentNames; x; "[" + x + "]")` 迴圈生成,再 `@Implode(..., " ")` |
| 附件圖示依副檔名 | JS 端解析副檔名對應圖示 CSS Class |
| 限制可上傳類型 | 表單屬性 → Web → "Allowed file types" 設定 MIME 清單 |
| 附件上傳大小限制 | Server 文件 `notes.ini` 設 `HTTPMaxPostSize` 或 Domino 設定文件調整 |
掌握這三段公式,即可在任何 Domino Web 表單中優雅、安全、完整地呈現與管理附件。