sync SVN r18205

This commit is contained in:
2026-09-25 12:21:29 +03:00
parent e13b0e928e
commit 63134daf6a
4 changed files with 25 additions and 4 deletions

View File

@@ -15035,6 +15035,15 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
IF Used('tact') AND Type('tact.clipsa') <> 'C'
SELECT *, Space(10) As clipsa FROM tact INTO CURSOR tact READWRITE
ENDIF
*!* data documentului si data inregistrarii se editeaza ca Date, fara ora
IF Used('tact') AND (Type('tact.dataact') = 'T' OR Type('tact.dataireg') = 'T')
LOCAL laCamp[1], lcCampuri, lnI
lcCampuri = ''
FOR lnI = 1 TO AFields(laCamp, 'tact')
lcCampuri = lcCampuri + Iif(lnI > 1, ', ', '') + Iif(Inlist(Lower(laCamp[lnI, 1]), 'dataact', 'dataireg') AND laCamp[lnI, 2] = 'T', 'TTOD(' + laCamp[lnI, 1] + ') As ' + laCamp[lnI, 1], laCamp[lnI, 1])
ENDFOR
SELECT &lcCampuri FROM tact INTO CURSOR tact READWRITE
ENDIF
If !Used('saft_taxtable')
update_saft_taxtable()

View File

@@ -4,6 +4,9 @@ Comun tuturor proiectelor ROA*.
## Ce nu functioneaza
Exemple deja rezolvate cu SELECT in loc de ALTER: `overificari.vc2:3088`,
`frm_import_extrase_banca.sc2:2324`.
```foxpro
lnSucces = goExecutor.oExecute(lcSql, lcCursor)
...
@@ -38,6 +41,10 @@ USE IN (lcCursorRaw)
* de-aici incolo doar REPLACE (date), NICIODATA ALTER TABLE (structura) pe (lcCursor)
```
Dupa acest pas cursorul (`lcCursor`) e un cursor local obisnuit - `ALTER TABLE` functioneaza
normal pe el DUPA ACEEA (ex. intr-o alta functie care primeste cursorul deja gata construit),
doar comanda imediat urmatoare unui `oExecute()` e restrictionata.
ATENTIE: nici cursorul rematerializat NU accepta `ALTER TABLE` daca are un nume de camp peste
10 caractere (eroare 1115 `Invalid operation for the cursor.`). Garda `SourceType = 3` nu
ajunge. Cursoarele din `select * from v_...` (ex. `tact` = `vact_tot`: id_jtva_coloana,
id_sucursala, tva_incasare) au astfel de campuri -> `ALTER TABLE` nu se foloseste deloc pe ele.
Schimbarea tipului unei coloane (T -> D) se face cu `SELECT` explicit, `TTOD(camp) AS camp`,
in alias temporar si inapoi `INTO CURSOR ... READWRITE`; sau grila se leaga la `TTOD(camp)`.
`ALTER TABLE` merge doar pe cursor cu nume <= 10 caractere, creat de tine.

View File

@@ -107,6 +107,9 @@
**0,5s** intre teste, nu implicitul de 12 minute / 3s, rezervat rularii finale unde chiar
conteaza sa distingi "atarnat" de "lent". Tinta: o rulare intermediara sta in secunde-minute,
nu ore — daca depaseste, lista e prea larga sau timeout-ul prea mare.
Test pe cursor derivat din view/`select *` Oracle: foloseste structura REALA (cu nume lungi),
nu un cursor restrans la cateva campuri; un cursor cu nume <= 10 caractere trece la ALTER TABLE
si ascunde eroarea 1115.
5. Editare `.vcx`/`.scx` pe text, cautare in binare: skill roa-vfp-text-edit (cache, cp1250
byte-safe, fidelity-check si membrii noi sunt in procedura lui). Versiunile `.??2` sunt
instantanee, pot fi mai vechi decat binarul - verifica mtime inainte de concluzii; continutul

View File

@@ -116,4 +116,6 @@ Vreau sa apara in xlsx de verificare si o coloana cu verificarea daca acesta est
46. COMUN - roa_sync.ps1 (COMUN\scripts): la pasul 4, cand repo-ul COMUN e pe un branch claude/* cu tree curat, face checkout main INAINTE de a prelua revizia SVN in git. Checkout-ul suprascrie in working copy SVN sursele urmarite si de git (.prg, .txt, .vc2) cu versiunea veche din main, iar apoi raporteaza "nimic de comis". Vazut 14.09.2026 dupa svn commit r18103 (oproceduri_comune.prg, todos.txt, omodificari.vc2 revenite la vechi; reparat cu svn revert + git checkout de pe branch + roa_sync din nou).
Vreau ca roa_sync sa nu mai strice working copy-ul: inainte de checkout main sa verifice ca fisierele urmarite de SVN nu difera fata de SVN (svn status / svn diff) si, daca difera, sa se opreasca cu avertisment; sau sa comita sync-ul fara checkout (ex. git stash / worktree pe main).
47. ROACONT - modificarea de note contabile frm_modif2024 / frm_introd2024 vreau ca dataact si dataireg sa fie afisate si sa se poate introduce cu formatul date, nu datetime, pentru ca este vorba despre data document si data inregistrarii - nu are legatura cu ora
47. ROACONT - modificarea de note contabile frm_modif2024 / frm_introd2024 vreau ca dataact si dataireg sa fie afisate si sa se poate introduce cu formatul date, nu datetime, pentru ca este vorba despre data document si data inregistrarii - nu are legatura cu ora
48. In formularul frm_introd_compact2007 din ointroduceri_cont.vcx sa se coloreze celulele cont, acont si celelalte coloane care necesita completare, la fel ca in frm_modif2024