baucli 1.0.76__tar.gz → 1.0.77__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. {baucli-1.0.76 → baucli-1.0.77}/PKG-INFO +1 -1
  2. {baucli-1.0.76 → baucli-1.0.77}/baucli/__init__.py +1 -1
  3. {baucli-1.0.76 → baucli-1.0.77}/baucli/skills.py +29 -5
  4. {baucli-1.0.76 → baucli-1.0.77}/baucli.egg-info/PKG-INFO +1 -1
  5. {baucli-1.0.76 → baucli-1.0.77}/setup.py +1 -1
  6. {baucli-1.0.76 → baucli-1.0.77}/MANIFEST.in +0 -0
  7. {baucli-1.0.76 → baucli-1.0.77}/README.md +0 -0
  8. {baucli-1.0.76 → baucli-1.0.77}/baucli/apex_rebuild.py +0 -0
  9. {baucli-1.0.76 → baucli-1.0.77}/baucli/apexlang.py +0 -0
  10. {baucli-1.0.76 → baucli-1.0.77}/baucli/api.py +0 -0
  11. {baucli-1.0.76 → baucli-1.0.77}/baucli/canon.py +0 -0
  12. {baucli-1.0.76 → baucli-1.0.77}/baucli/cli.py +0 -0
  13. {baucli-1.0.76 → baucli-1.0.77}/baucli/config.py +0 -0
  14. {baucli-1.0.76 → baucli-1.0.77}/baucli/db/__init__.py +0 -0
  15. {baucli-1.0.76 → baucli-1.0.77}/baucli/db/mssql.py +0 -0
  16. {baucli-1.0.76 → baucli-1.0.77}/baucli/db/mysql.py +0 -0
  17. {baucli-1.0.76 → baucli-1.0.77}/baucli/db/oracle.py +0 -0
  18. {baucli-1.0.76 → baucli-1.0.77}/baucli/db/postgresql.py +0 -0
  19. {baucli-1.0.76 → baucli-1.0.77}/baucli/democrm.py +0 -0
  20. {baucli-1.0.76 → baucli-1.0.77}/baucli/democrm_sql/mssql/crm_data_mssql.sql +0 -0
  21. {baucli-1.0.76 → baucli-1.0.77}/baucli/democrm_sql/mssql/crm_demo_mssql.sql +0 -0
  22. {baucli-1.0.76 → baucli-1.0.77}/baucli/democrm_sql/mysql/crm_data_mysql.sql +0 -0
  23. {baucli-1.0.76 → baucli-1.0.77}/baucli/democrm_sql/mysql/crm_demo_mysql.sql +0 -0
  24. {baucli-1.0.76 → baucli-1.0.77}/baucli/democrm_sql/oracle/crm_demo_oracle.sql +0 -0
  25. {baucli-1.0.76 → baucli-1.0.77}/baucli/democrm_sql/postgresql/crm_data_postgresql.sql +0 -0
  26. {baucli-1.0.76 → baucli-1.0.77}/baucli/democrm_sql/postgresql/crm_demo_postgresql.sql +0 -0
  27. {baucli-1.0.76 → baucli-1.0.77}/baucli/diffenvs.py +0 -0
  28. {baucli-1.0.76 → baucli-1.0.77}/baucli/docmig.py +0 -0
  29. {baucli-1.0.76 → baucli-1.0.77}/baucli/git.py +0 -0
  30. {baucli-1.0.76 → baucli-1.0.77}/baucli/legacy/__init__.py +0 -0
  31. {baucli-1.0.76 → baucli-1.0.77}/baucli/legacy/delphi.py +0 -0
  32. {baucli-1.0.76 → baucli-1.0.77}/baucli/legacy/magic.py +0 -0
  33. {baucli-1.0.76 → baucli-1.0.77}/baucli/mcp_server.py +0 -0
  34. {baucli-1.0.76 → baucli-1.0.77}/baucli/project.py +0 -0
  35. {baucli-1.0.76 → baucli-1.0.77}/baucli/rag_embed.py +0 -0
  36. {baucli-1.0.76 → baucli-1.0.77}/baucli/sample_scan.py +0 -0
  37. {baucli-1.0.76 → baucli-1.0.77}/baucli/scope_scan.py +0 -0
  38. {baucli-1.0.76 → baucli-1.0.77}/baucli/screenshot.py +0 -0
  39. {baucli-1.0.76 → baucli-1.0.77}/baucli/seed_check.py +0 -0
  40. {baucli-1.0.76 → baucli-1.0.77}/baucli/stress.py +0 -0
  41. {baucli-1.0.76 → baucli-1.0.77}/baucli/sync.py +0 -0
  42. {baucli-1.0.76 → baucli-1.0.77}/baucli.egg-info/SOURCES.txt +0 -0
  43. {baucli-1.0.76 → baucli-1.0.77}/baucli.egg-info/dependency_links.txt +0 -0
  44. {baucli-1.0.76 → baucli-1.0.77}/baucli.egg-info/entry_points.txt +0 -0
  45. {baucli-1.0.76 → baucli-1.0.77}/baucli.egg-info/requires.txt +0 -0
  46. {baucli-1.0.76 → baucli-1.0.77}/baucli.egg-info/top_level.txt +0 -0
  47. {baucli-1.0.76 → baucli-1.0.77}/setup.cfg +0 -0
  48. {baucli-1.0.76 → baucli-1.0.77}/tests/test_canon_multiengine.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: baucli
3
- Version: 1.0.76
3
+ Version: 1.0.77
4
4
  Summary: Extracts verified business-logic and schema context from Oracle, PostgreSQL, MySQL and SQL Server
5
5
  Home-page: https://www.begcloud.com
6
6
  Author: BEG Support
@@ -3,6 +3,6 @@
3
3
  import warnings
4
4
  warnings.filterwarnings("ignore", message="urllib3 v2 only supports OpenSSL")
5
5
 
6
- __version__ = "1.0.76"
6
+ __version__ = "1.0.77"
7
7
  __product__ = "BAUCLI"
8
8
  __author__ = "BEG Support"
@@ -560,12 +560,12 @@ def _fmt_golden_rows(rows: list, kind: str) -> list:
560
560
  def _fmt_lovs(lovs: list) -> str:
561
561
  if not lovs:
562
562
  return "_Nenhuma LOV compartilhada marcada neste schema._\n"
563
- out = ["| LOV | Tabela | Retorno | Display | Ordenacao | Col. ativo |",
564
- "|---|---|---|---|---|---|"]
563
+ out = ["| LOV | Tabela | Retorno | Mascara | Display | Ordenacao | Col. ativo |",
564
+ "|---|---|---|---|---|---|---|"]
565
565
  for l in lovs:
566
566
  out.append(
567
567
  f"| `{l.get('name')}` | `{l.get('table')}` | "
568
- f"{l.get('return') or ''} | {l.get('display') or ''} | "
568
+ f"{l.get('return') or ''} | {l.get('return_mask') or ''} | {l.get('display') or ''} | "
569
569
  f"{l.get('sort') or ''} | {l.get('active_col') or ''} |")
570
570
  return "\n".join(out) + "\n"
571
571
 
@@ -908,6 +908,29 @@ Mesma regra do form aplicada ao `savedReport` default:
908
908
  - Re-rodar `PRC_BAU_DOCTAB_ORDER_COLUMNS('BAUCTX')` sempre que tabelas/colunas mudarem, ou após registrar novos domain values.
909
909
  - Overrides manuais via p4 (campos "Ordem no Report" / "Ordem no Form") sobrescrevem o cálculo até a próxima execução da procedure.
910
910
 
911
+ ## LOV compartilhada com display composto: obedeça a máscara do código
912
+
913
+ Quando o display da LOV compõe código + texto (ex.: "001 - DASS Nordeste"),
914
+ o código DEVE sair formatado pela **máscara documentada** da coluna de
915
+ retorno — o payload de `bau_lovs` (e `resolved/lovs.md`) traz `return_mask`:
916
+
917
+ ```sql
918
+ -- return_mask = '000' =>
919
+ select to_char(FIL_CODIGO, 'FM000') || ' - ' || FIL_NOME as d,
920
+ FIL_CODIGO as r
921
+ from T_FILIAL
922
+ where nvl(ATIVO,'S') <> 'N'
923
+ order by 1
924
+ ```
925
+
926
+ - Máscara numérica (`000`, `9990`…): `TO_CHAR(col, 'FM<mask>')` — o `FM`
927
+ evita o espaço de sinal à esquerda.
928
+ - **Ordenação de display COMPOSTO = a própria composição** (`order by 1`):
929
+ a lista sai na ordem do que o usuário vê ("001 - …", "002 - …"). A coluna
930
+ de *Ordenação* do `resolved/lovs.md` vale para display SIMPLES (só texto).
931
+ - Sem `return_mask`: não invente — display só com a coluna de display.
932
+ - NUNCA concatenar o código cru (`1-DASS Nordeste`) quando há máscara.
933
+
911
934
  ## Cancel em modal (obrigatório)
912
935
 
913
936
  O botão `cancel` com `action: definedByDynamicAction` precisa de uma `dynamicAction` `cancel-dialog` na mesma página que dispara `cancelDialog`:
@@ -995,12 +1018,13 @@ def build_forms_lovs_md(lovs_payload: dict, schema: str | None,
995
1018
  generated_at: str) -> str:
996
1019
  lovs = (lovs_payload or {}).get("lovs") or []
997
1020
  if lovs:
998
- rows = ["| LOV | Slug (@ referencia) | Tabela | Display | Ordenacao | Col. ativo |",
999
- "|---|---|---|---|---|---|"]
1021
+ rows = ["| LOV | Slug (@ referencia) | Tabela | Display | Mascara do cod. | Ordenacao | Col. ativo |",
1022
+ "|---|---|---|---|---|---|---|"]
1000
1023
  for l in lovs:
1001
1024
  rows.append(
1002
1025
  f"| `{l.get('name')}` | `@{_kebab(l.get('name'))}` | "
1003
1026
  f"`{l.get('table')}` | {l.get('display') or ''} | "
1027
+ f"{l.get('return_mask') or ''} | "
1004
1028
  f"{l.get('sort') or ''} | {l.get('active_col') or ''} |")
1005
1029
  body = "\n".join(rows) + "\n"
1006
1030
  else:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: baucli
3
- Version: 1.0.76
3
+ Version: 1.0.77
4
4
  Summary: Extracts verified business-logic and schema context from Oracle, PostgreSQL, MySQL and SQL Server
5
5
  Home-page: https://www.begcloud.com
6
6
  Author: BEG Support
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name="baucli",
5
- version="1.0.76",
5
+ version="1.0.77",
6
6
  description="Extracts verified business-logic and schema context from Oracle, PostgreSQL, MySQL and SQL Server",
7
7
  long_description=open("README.md").read(),
8
8
  long_description_content_type="text/markdown",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes