From 0d73146ebc2ad16b5841dda381c09e24769b5f21 Mon Sep 17 00:00:00 2001 From: Andriy Oblivantsev Date: Thu, 17 Sep 2026 07:51:02 +0000 Subject: [PATCH] =?UTF-8?q?docs:=20=D1=83=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D0=BF=D0=BE=D1=82=D1=80=D0=B5=D0=B1=D0=B8=D1=82=D0=B5=D0=BB?= =?UTF-8?q?=D1=8C=D1=81=D0=BA=D0=B8=D0=B5=20=D0=B4=D0=B5=D1=82=D0=B0=D0=BB?= =?UTF-8?q?=D0=B8=20match=20=D0=B8=D0=B7=20index-and-search=20(#34)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/index-and-search.md | 32 +++++++++++++------------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/docs/index-and-search.md b/docs/index-and-search.md index 5b9cfe0..ce0ac01 100644 --- a/docs/index-and-search.md +++ b/docs/index-and-search.md @@ -17,7 +17,7 @@ related: | REST `@search` | только имена в БД | нет | — (живой запрос) | `oo search` (по умолчанию `--backend oo`) | | ES `files_file` | имя + текст Office | Elasticsearch портала | сервер, асинхронно | `oo search --content` | | ES `oo_docs_text` | PDF/сканы (свой) | Elasticsearch портала | `oo index` | `oo search --backend own` | -| TSV `ooscan` | файлы папок (для match) | файл `*.tsv` | `ooscan ` | `match -index` | +| TSV `ooscan` | файлы папок | файл `*.tsv` | `ooscan ` | потребитель (не библиотека) | ## Карта кода @@ -81,30 +81,24 @@ oo index folder 649 --recursive --dry-run не индексируй корень целиком. - Индексация PDF в `files_file` не делается — только `oo_docs_text`. -## Индекс для match (`ooscan` → TSV) +## Bulk-инструменты `ooscan` / `pdfamount` -`cmd/match` (office-assistant) не использует ES: он читает плоский TSV -`file_id\tfolder_id\tpath\ttitle` и опционально суммы -`file_id\ttitle\tamount`. +Плоский TSV без Elasticsearch, для внешних потребителей. ```bash -# TSV-индекс: рекурсивный обход папок (троттлинг 350 мс на папку, retry на 429) -ooscan 647 666 > /tmp/oo-index.tsv -# суммы по папке (напр. O2, id 671) -pdfamount 671 > /tmp/o2-amounts.tsv -# сверка (office-assistant) -match -xlsx liste.xlsx -index /tmp/oo-index.tsv -amounts /tmp/o2-amounts.tsv \ - -url-base https://office.pro-dukt.de +# рекурсивный индекс папок: file_id, folder_id, path, title +ooscan ... > index.tsv +# суммы по PDF папки: file_id, title, amount +pdfamount [TITLE_FILTER] > amounts.tsv ``` -- `ooscan` печатает `file_id, folder_id, path, title`; `path` — путь внутри - просканированной папки (для подсказок и `gesendet`). -- Обновление — просто повторить `ooscan` по нужным корням; выход перезаписывается. -- Папки-источники задаёт потребитель (match): входные счета — корни - `Eingangsrechnungen` (#647) и `external` (#666); суммы — папка провайдера. -- Полный обход большого дерева — минуты; сканируй только нужные корни. -- У `pdfamount` строка с `%`/`MwSt`/`USt`/`Prozent`/`Steuer` суммой не считается; +- `ooscan`: троттлинг 350 мс на папку, `DoRetry` на 429, глубина до 8, `path` — + путь внутри просканированного корня. +- `pdfamount`: строка с `%`/`MwSt`/`USt`/`Prozent`/`Steuer` суммой не считается; приоритет меток (`zu zahlender betrag` > `rechnungsbetrag` > … > `summe`). +- Какие корни сканировать и как обновлять индекс — решает потребитель; это не + часть библиотеки. Сверка Excel — `office-assistant` (`cmd/match`, + `docs/reference/match-index.md`). ## Грабли