Pagina 1 din 2
Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Mar Feb 03, 2026 8:16 pm
de ciucam544
Pentru ca tot mai des este necesar actualizarea cu kit complet am facut un mic script care detecteaza versiunea de saga si descarca kitul cel mai nou corespunzator de pe portalul saga. El poate fi programat automat (eventual fara instalare, se scoate ultima linie din script) pentru a ramane "la zii" cu kiturile, la perioade specifice de timp. Salvati si rulati scriptul in folderul de instalare saga.
ActualizareSagaKitComplet.cmd
Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Mar Feb 03, 2026 8:31 pm
de ciucam544
Asa cum am postat si aici
https://forum.sagasoft.ro/viewtopic.php?p=342548#p342548 mai pun odata scriptul pentru backup compact la folderul saga, backup fara subfolderul cu actualizari si fara subfolderul cu backup-urile de actualizare salv_bd. Acolo am uitat sa mentionez ca se face backup si la setarile din registrii (fisierele .rbk), pentru ca pe fiecare sesiune de windows pot exista configurari diferite, ele putand fi refolosite la nevoie, schimband extensia in .reg si reimportate la loc in windows.
ScriptBackup_FolderSAGA_Compact.cmd
Cod: Selectaţi tot
@echo off
setlocal enabledelayedexpansion
set "CPATH=%~dp0"
set "CPATH=%CPATH:~0,-1%"
net session >nul 2>&1 || (setx SagaCale "%CPATH%" >nul & powershell -NoProfile -Command "Start-Process -FilePath '%~f0' -Verb RunAs" & exit /b)
title - Backup Folder Saga Compact - 2026(c)byGabrieL
for /f "delims=" %%C in ('powershell -NoProfile -Command "(Get-Item Env:SagaCale).Value"') do set "CaleSaga=%%C"
if not defined CaleSaga set "CaleSaga=%CPATH%"
if exist "%CaleSaga%\sb.exe" set "SagaTip=SagaB"
if exist "%CaleSaga%\sc.exe" set "SagaTip=SagaC"
if exist "%CaleSaga%\sps.exe" set "SagaTip=SagaPS"
if "%SagaTip%"=="" (color 0c & echo Nu exista un program saga in folderul curent ! & pause & exit /b)
set "DRIVE=%CaleSaga:~0,2%"
set "DEST=%DRIVE%\Backups_Saga"
for %%G in ("%CaleSaga%") do set "FName=%%~nxG"
if not exist "%DEST%" mkdir "%DEST%"
set "Z7=C:\Program Files\7-Zip\7z.exe"
set "Z7A=%CaleSaga%\7za.exe"
set "ArchEXE=" & set "Arhivator="
if exist "%Z7%" set "ArchEXE=%Z7%" & set "Arhivator=7zip"
if not defined ArchEXE if exist "%Z7A%" set "ArchEXE=%Z7A%" & set "Arhivator=7za_Saga"
if not defined ArchEXE echo Lipseste arhivatorul pentru backup! & pause & exit /b
echo Folosesc arhivator: %Arhivator%
tskill sc /a >nul 2>&1 & tskill sps /a >nul 2>&1 & net stop FirebirdServerFirebird30_Saga >nul 2>&1
for %%S in ("%CaleSaga%") do (
for /f %%i in ('powershell -command "Get-Date -Format \"yyyy-MM-dd_HHmmss\""') do set "DATE=%%i"
del "%%~S\*.rbk" >nul 2>&1
reg export HKCU\SOFTWARE\SAGA "%%~S\sagaset_!DATE!.rbk" /y >nul 2>&1
echo Se face Backup in %DEST%\Bkp!SagaTip!_!FName!_!DATE!.zip
"%ArchEXE%" a -tzip -mx3 "%DEST%\Bkp!SagaTip!_!FName!_!DATE!.zip" "%%~S\*" -x^^!"%%~S\Actualizari" -x^^!"%%~S\salv_bd"
)
net start FirebirdServerFirebird30_Saga >nul 2>&1
echo Backup SAGA finalizat cu succes!
endlocal & pause
Daca scriptul de mai sus nu merge incercati si aceasta varianta.
ScriptBackup_FolderSAGA_Win7.cmd
Cod: Selectaţi tot
@echo off
setlocal enabledelayedexpansion
set "CPATH=%~dp0"
set "CPATH=%CPATH:~0,-1%"
net session >nul 2>&1 || (powershell -NoProfile -Command "Start-Process -FilePath '%~f0' -Verb RunAs -ArgumentList '\"%CPATH%\"'"; exit /b)
if "%~1"=="" (set "CaleSaga=%CPATH%") else (set "CaleSaga=%~1")
title - Backup Folder Saga Compact Win7 - 2026(c)byGabrieL
set "SagaTip="
if exist "%CaleSaga%\sb.exe" set "SagaTip=SagaB"
if exist "%CaleSaga%\sc.exe" set "SagaTip=SagaC"
if exist "%CaleSaga%\sps.exe" set "SagaTip=SagaPS"
if "%SagaTip%"=="" (color 0c & echo Nu exista un program Saga in folderul curent: "%CaleSaga%" & pause & exit /b)
set "DRIVE=%CaleSaga:~0,2%"
set "DEST=%DRIVE%\Backups_Saga"
for %%G in ("%CaleSaga%") do set "FName=%%~nxG"
if not exist "%DEST%" mkdir "%DEST%"
set "Z7=C:\Program Files\7-Zip\7z.exe"
set "Z7A=%CaleSaga%\7za.exe"
set "ArchEXE=" & set "Arhivator="
if exist "%Z7%" (set "ArchEXE=%Z7%" & set "Arhivator=7zip")
if not defined ArchEXE if exist "%Z7A%" (set "ArchEXE=%Z7A%" & set "Arhivator=7za_Saga")
if not defined ArchEXE (echo Lipseste arhivatorul pentru backup! & pause & exit /b)
echo Folosesc arhivator: %Arhivator%
taskkill /IM sc.exe /F >nul 2>&1
taskkill /IM sps.exe /F >nul 2>&1
net stop FirebirdServerFirebird30_Saga >nul 2>&1
for /f %%i in ('powershell -command "Get-Date -Format \"yyyy-MM-dd_HHmmss\""') do set "DATE=%%i"
del "%CaleSaga%\*.rbk" >nul 2>&1
reg export HKCU\SOFTWARE\SAGA "%CaleSaga%\sagaset_!DATE!.rbk" /y >nul 2>&1
echo Se face Backup in %DEST%\Bkp!SagaTip!_!FName!_!DATE!.zip
"%ArchEXE%" a -tzip -mx3 "%DEST%\Bkp!SagaTip!_!FName!_!DATE!.zip" "%CaleSaga%\*" -x^^!"%CaleSaga%\Actualizari" -x^^!"%CaleSaga%\salv_bd"
net start FirebirdServerFirebird30_Saga >nul 2>&1
echo.
echo Backup SAGA finalizat cu succes!
endlocal & pause
Re: Scripturi ajutatoare - pentru admini si utilizatori mai avansati
Scris: Mar Feb 03, 2026 8:42 pm
de ciucam544
Detectare_IP_Extern.cmd
Cod: Selectaţi tot
@echo off & color 0B&echo -------------------
echo IP Extern&echo -------------------
powershell -NoProfile -Command "$ip = (Invoke-WebRequest -Uri 'https://api.ipify.org').Content; $width = 19; $pad = [math]::Floor(($width - $ip.Length) / 2); Write-Output ((' ' * $pad) + $ip)"
echo -------------------&timeout -1>nul
Re: Scripturi ajutatoare - pentru admini si utilizatori mai avansati
Scris: Mar Feb 03, 2026 8:49 pm
de ciucam544
Deblocare_Port_3060_Saga.cmd
Cod: Selectaţi tot
@echo off&net session>nul 2>&1||(powershell -Command "Start-Process '%~f0' -Verb RunAs"&exit/b)&netsh advfirewall firewall add rule name="3060 TCP Firebird SAGA" dir=in action=allow protocol=TCP localport=3060&pause
Verificare_Port_3060.cmd
Cod: Selectaţi tot
@echo off
setlocal EnableDelayedExpansion
title - Verificare port 3060 - 2025(C)byGabrieL
:START
color 06 & cls
echo ----------------------------
echo Verificare port 3060
echo ----------------------------
set /p tinta=Nume server sau IP :
:: === PowerShell in command ===
powershell -NoProfile -ExecutionPolicy Bypass -Command ^
"[Console]::OutputEncoding = [System.Text.Encoding]::UTF8; ^
$tinta = '%tinta%'; $port = 3060; ^
try { ^
$ipObj = @(); foreach ($ip in [System.Net.Dns]::GetHostAddresses($tinta)) { if ($ip.AddressFamily -eq 'InterNetwork') { $ipObj += $ip } }; ^
if ($ipObj.Count -eq 0) { throw 'Nicio adresa IPv4 gasita.' }; ^
$tintaIP = $ipObj[0].ToString(); ^
Write-Host 'Adresa tinta: ' $tintaIP; ^
Write-Host 'Se face ping pe tinta...'; ^
$ping = $(cmd /c ping -n 1 -w 500 $tintaIP); ^
if ($ping -match 'TTL=') { ^
Write-Host '[OK] Tinta raspunde la ping.' -ForegroundColor Green; ^
Write-Host 'Se verifica portul 3060...'; ^
$durata = Measure-Command { ^
$client = New-Object System.Net.Sockets.TcpClient; ^
$async = $client.BeginConnect($tintaIP, $port, $null, $null); ^
$wait = $async.AsyncWaitHandle.WaitOne(5000, $false); ^
if ($wait -and $client.Connected) { ^
$client.EndConnect($async); ^
Write-Host 'Portul 3060 DESCHIS pe ' + $tintaIP -ForegroundColor Green ^
} else { ^
Write-Host 'Portul 3060 INCHIS sau TIMEOUT pe ' + $tintaIP -ForegroundColor DarkGray ^
}; ^
$client.Close(); ^
}; ^
Write-Host ('Durata verificarii: {0:N2} secunde' -f $durata.TotalSeconds) -ForegroundColor Cyan ^
} else { throw 'Ping esuat.' } ^
} catch { ^
Write-Host '[X] Eroare: ' $_ -ForegroundColor Red; ^
}; ^
"
echo.
pause
goto START
Re: Scripturi ajutatoare - pentru admini si utilizatori mai avansati
Scris: Mar Feb 03, 2026 11:23 pm
de herganiec
Mulțumesc. utile.
Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Mie Feb 04, 2026 1:33 pm
de ciucam544
balazse246 scrie: ↑Mie Feb 04, 2026 7:46 amPoti crea cate sesiuni doresti, si nu intra in conflict, si ajunge o licenta, deoarece licenta este la nivel de calculator si nu de sesiuni.
Eu de exemplu, daca primesc o baza de date de la cineva, atunci creez o sesiune separata si testez acolo ce trebuie, astfel sesiunea de baza ("SAGA C.3.0") ramane intact. Pentru a crea o sesiune noua la instalare modifici calea de instalare, asa cum ai mentionat. De exemplu, la o firma de contabilitate exista "SAGA C.3.0" pentru versiunea desktop, "SAGA C.3.0_W" pentru web si "SAGA C.3.0_CL" pentru sesiune de client (aici se pot crea sesiune pentru fiecare client, ca poate, unul dintre clienti uita sa mai actualizeze programul si atunci sa nu ai probleme). Ceea ce este putin incovenient este ca trebuie sa actualizezi fiecare sesiune separata (dar poate colegul
ciucam544 pune la dispozitie un script care rezolva separat pentru fiecare sesiune).
Cred ca scriptul asta ar fi suficient. Dar eu fac scripturi pentru utilizatori mai avansati, care au mai deprins simtul cailor de executie si denumirilor.
Dar totusi recomand acest script doar daca aveti instalari multiple, cu denumiri diferite de cele initiale la fiecare instalare de saga. Salvati si rulati din folderul saga.
(Da, face si link pe desktop si restaureaza calea initiala de instalare saga, daca ea exista.)
ActualizareSagaKitCompletSmart_V3.3.cmd
PS: Mai mult de atat nu prea mai pot automatiza si universaliza scriptul. Deci acum creeaza un link cu denumirea folderului si pe ce partitie se afla. Sterge link-ul default care-l genereaza setup-ul.
_________________________________________________________________________________________________________________________________________
Upd: Pentru cei care deja au pe desktop link-uri la toate programele saga din mai multe locatii am refinisat din nou scriptul sa nu mai recreeze alte shortcut-uri.
ActualizareSagaKitCompletSmart_V3.5.cmd
Re: Scripturi ajutatoare - pentru admini si utilizatori mai avansati
Scris: Vin Feb 06, 2026 6:48 pm
de tomac
Ciucam544, te rog eu, nu mai încuraja să folosească scripturile pentru că ajung să le folosească unii care nu știu ce și cum este cu ele și se poate ajunge să primească de la cineva un link aiurea sau malițios poate chiar în base64 și să-și bușească ceva.
Dă-le-n privat după ce le explici riscurile, dar nu public.
Re: Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Vin Feb 06, 2026 7:50 pm
de ciucam544
Acuma ce sa zic, scripturile de fata nu sunt riscante, pt. ca oricum ce aduc ele de pe portalul saga se scaneaza inainte de rulare, chiar daca sunt rulate elevat, dar e adevarat ca altcineva le poate transforma in ceva mai periculos. Dar asa e tot internetul. Ce am incercat eu sa fac, niste automatizari, mai ales pt. Win11, care este efectiv antiproductivitate. Si am mentionat ca sunt pt. administratori sau personal care se ocupa de instalarile in calculatoare, si nu pentru "doar contabili". Eventual o sa fac aluzie ca se pot genera solutii de acest fel si ca o sa le ofer in privat. Mai vroiam sa public si un script pt. sortare e-factura care le imparte pe ani pentru a arhiva mai repede folderele saga dar asta acum doar la cerere.
Re: Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Vin Feb 06, 2026 7:52 pm
de tomac
Mulțumesc. Știu că sunt cu bune intenții, dar ai fi mirat de ce se poate înțelege uneori.
Re: Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Vin Feb 06, 2026 10:38 pm
de nicolam76
Foarte bun programul cu arhivarea tot Saga C, sau PS.. mai putin Actualizari si Salv_bd. merge f bine.. e de mare ajutor.
Re: Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Lun Apr 13, 2026 6:26 pm
de ciucam544
Script pt. verificarea serverelor saga.
SagaSoft.ro_DNS_Check.cmd
Cod: Selectaţi tot
start "webs.sagasoft.ro online check" powershell -ExecutionPolicy Bypass -Command "$base='sagasoft.ro';$max=9;for($t=1;$t -le 10;$t++){Clear-Host;Write-Host \"sagasoft.ro domain check: no.$t \" -ForegroundColor Cyan;$domain='web.'+$base;try{$ip=[System.Net.Dns]::GetHostAddresses($domain);Write-Host \"$domain - ONLINE ($($ip[0].IPAddressToString))\" -ForegroundColor Green}catch{Write-Host \"$domain - OFFLINE - NO DNS\" -ForegroundColor Red};for($i=0;$i -le $max;$i++){ $sub='web'+$i; $domain=$sub+'.'+$base; try{$ip=[System.Net.Dns]::GetHostAddresses($domain);Write-Host \"$domain - ONLINE ($($ip[0].IPAddressToString))\" -ForegroundColor Green}catch{Write-Host \"$domain - OFFLINE - NO DNS\" -ForegroundColor Red}};Start-Sleep -Milliseconds 90};Read-Host"
Re: Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Mie Iun 03, 2026 1:18 pm
de ciucam544
InfoValutar.ro_azi_BNR.cmd
Cod: Selectaţi tot
@echo off
title Curs BNR - InfoValutar.ro
mode con cols=106 lines=28
Color 0E&cls
echo Se incarca datele din infovalutar.ro !
for %%C in (
EUR USD GBP CHF SEK HUF CAD JPY DKK NOK AUD PLN CZK RUB XAU AED BRL CNY EGP HKD IDR ILS INR ISK KRW MDL MXN MYR NZD PHP RSD SGD THB TRY UAH XDR ZAR
) do (
for /f "delims=" %%a in (
'powershell -NoLogo -NoProfile -Command "(Invoke-WebRequest -UseBasicParsing \"http://infovalutar.ro/bnr/azi/%%C\").Content.Trim()"'
) do set %%C=%%a
)
cls
echo InfoValutar.ro : Curs BNR la %date%
echo ========================================================================================================
echo.
echo Nume valuta Cod Curs (RON) Nume valuta Cod Curs (RON)
echo ----------------------------------------------- -----------------------------------------------
echo Euro EUR %EUR% Leu Moldovenesc MDL %MDL%
echo Dolar SUA USD %USD% Lira Turceasca TRY %TRY%
echo Lira Sterlina GBP %GBP% Dolar Hong Kong HKD %HKD%
echo Franc Elvetian CHF %CHF% Rupia Indoneziana IDR %IDR%
echo Coroana Suedeza SEK %SEK% Shekel Israelian ILS %ILS%
echo Forint Maghiar HUF %HUF% Rupia Indiana INR %INR%
echo Dolar Canadian CAD %CAD% Coroana Islandeza ISK %ISK%
echo Yen Japonez JPY %JPY% Won Sud-Coreean KRW %KRW%
echo Coroana Daneza DKK %DKK% Peso Mexican MXN %MXN%
echo Coroana Norvegiana NOK %NOK% Ringgit Malaezian MYR %MYR%
echo Dolar Australian AUD %AUD% Dolar Neo-Zeelandez NZD %NZD%
echo Zlot Polonez PLN %PLN% Peso Filipinez PHP %PHP%
echo Coroana Ceha CZK %CZK% Dinar Sarbesc RSD %RSD%
echo Rubla Ruseasca RUB %RUB% Dolar Singaporez SGD %SGD%
echo Dirham EAU AED %AED% Baht Thailandez THB %THB%
echo Real Brazilian BRL %BRL% Hryvna Ucraineana UAH %UAH%
echo Yuan Chinezesc CNY %CNY% Rand Sud-African ZAR %ZAR%
echo Lira Egipteana EGP %EGP% Drepturi Speciale DST XDR %XDR%
echo Gram Aur XAU %XAU%
echo ----------------------------------------------- -----------------------------------------------
echo.
pause
PS: adaugare parametru pt. compatibilitate cu win11
Re: Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Dum Aug 02, 2026 9:29 pm
de ciucam544
Reoptimizare script actualizare kit complet. Am eliminat descarcarile intutile daca deja exista kituri descarcate in ultima ora. Am refacut un pic redenumirea si stergerea linkului dupa finalizarea instalrii.
Salvati scriptul in folderul de instalare saga si apoi se poate rula. Folositor pentru cei cu instalari multiple de saga.
ActualizareSagaKitCompletSmart_V3.7.cmd
Re: Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Lun Aug 03, 2026 4:28 pm
de ciucam544
Pentru ca la fiecare actualizare de
Adobe Acrobat se activeaza
Protected Mode si trebuie mereu dezactivat, pentru a putea vizualiza din saga PDF la imprimare, am facut un mic script pentru a dezactiva aceasta optiune si pentru actualizarile viitoare.
Se ruleaza doar o singura data in windows si gata. In Adobe Acrobat sau in Acrobat Reader nu va mai fi activ sau bifat
Enable Protected Mode at startup.
AdobeDisableProtectedMode.cmd
Cod: Selectaţi tot
net session >nul 2>&1 || (powershell -NoProfile -Command "Start-Process -FilePath '%~f0' -Verb RunAs" & exit /b)
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Adobe\Acrobat Reader\DC\FeatureLockDown" /v "bProtectedMode" /t REG_DWORD /d 0 /f & reg add "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Policies\Adobe\Acrobat Reader\DC\FeatureLockDown" /v "bProtectedMode" /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Adobe\Adobe Acrobat\DC\FeatureLockDown" /v "bProtectedMode" /t REG_DWORD /d 0 /f & reg add "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Policies\Adobe\Adobe Acrobat\DC\FeatureLockDown" /v "bProtectedMode" /t REG_DWORD /d 0 /f & pause
Re: Scripturi Ajutatoare - pentru Administratori si Utilizatori Avansati
Scris: Mie Aug 05, 2026 9:06 pm
de iliovicid825
Mulțumesc @CiucaM. ptr. ultimul script, cel cu Adobe...
Este extrem de deranjant acest Adobe, cu update-urile, reclamele și bloat-ul pe care tot vrea să ni-l bage pe gât la fiecare actualizare.
Nu există un alt program ptr. completare/semnare pdf-uri, în afară de catastrofa asta de Adobe?
Merci!
Dan