sync SVN r18245

This commit is contained in:
2026-10-01 18:43:55 +03:00
parent eda92c1eb1
commit 7bb485f4ae
3 changed files with 15 additions and 0 deletions

View File

@@ -191,6 +191,9 @@ Cand un bug apare "de azi", compara cu clasa veche fara sa atingi SVN:
- **Eroarea SQL prin `goExecutor` e o forma modala INTERNA VFP**: `watchdog_vfp.ps1` nu o vede (nu e fereastra top-level),
procesul sta pana la timeout. Verifica fiecare `SELECT` din test cu `sqlplus` inainte de rulare (ex. `anaf_efactura`
nu are `numar_act`/`data_act` - sunt in view-urile `anaf_vefactura_*`).
- **Si interogarile de DIAGNOSTIC ad-hoc (nu doar testul) trec pe `SQLEXEC` direct + log, niciodata prin `goExecutor`**:
un `_DIAG_SERII` cu o coloana ghicita (`serii_numere.id_tip_doc`, ORA-00904) a lasat dialog modal pe ecranul
utilizatorului (29.09.2026). Coloanele se iau din `ALL_TAB_COLUMNS`. Diagnosticul din afara scopului testului nu se face.
- **Forma din `.vcx` cu `CREATEOBJECT` direct poate pica in `Init` cu erori de binding** ("Error with _checkbox1 - Value :
Data type mismatch", CREATEOBJECT intoarce `.F.`), desi in aplicatie merge. Fa un stub `.scx` bazat pe clasa si deschide-l
cu `DO FORM ... NAME lo NOSHOW` - asa se instantiaza ca in aplicatie, iar erorile ar arata calea completa a controlului.

View File

@@ -2983,6 +2983,16 @@ Endproc
Procedure lansare_help_meniu
Local lcPdf, llHtml
* manualul pdf al aplicatiei: <app>\Help\manual_<APP>.pdf; daca exista si manualul html, se alege
lcPdf = Iif(Type('gcAppPath') = 'C' And Type('gcAppName') = 'C', gcAppPath + 'Help\manual_' + gcAppName + '.pdf', '')
If !Empty(m.lcPdf) And File(m.lcPdf)
llHtml = Type('ohelp.tool_help1') = 'O' And !Empty(ohelp.tool_help1.Help.comanda_program) And ohelp.tool_help1.Help.comanda_program <> 'INACTIV'
If !m.llHtml Or amessagebox('Deschideti manualul PDF?' + Chr(13) + '(Nu = manualul HTML)', 4 + 32, 'Manual de utilizare') = 6
OPEN_DEFAULT_APP(m.lcPdf)
Return
Endif
Endif
If Type('ohelp.tool_help1') <> 'O'
Return
Endif

View File

@@ -42,6 +42,8 @@ Ambele se lanseaza de aici; ambele au aceleasi capcane de baza. Fara log/png, te
Condensat; fiecare are istoric scump in `COMUN\docs\depanare_testare_vfp.md` (sec. 6-7) si
`COMUN\docs\testare-ui-vfp.md`. Consulta-le inainte sa schimbi scriptul sau sa invinuiesti codul.
- Orice SQL din test SAU din diagnostic ad-hoc: `SQLEXEC` direct + log, nu `goExecutor` (eroarea = dialog
modal pe ecranul utilizatorului); coloanele din `ALL_TAB_COLUMNS`, nu ghicite; rulare doar prin `watchdog_vfp.ps1 -AutoDismiss`.
- `-A` si `-T` sunt obligatorii amandoua: fara `-T` procesul sta pe splash, simptom identic cu o
eroare de compilare. `-A` ignora config.fpw si porneste SAFETY ON.
- SAFETY ON sub `-A`: primul `STRTOFILE`/`COMPILE` peste fisier existent scoate dialogul modal