Błędy uprawnień systemowych w Comarch ERP Optima mogą objawiać się niemożnością zapisu pliku, brakiem dostępu do katalogu programu, błędami podczas drukowania lub odmową dostępu do bazy SQL. Są to problemy na styku systemu operacyjnego Windows i Optimy, wymagające diagnozy zarówno po stronie SQL, jak i systemu plików. Opisujemy najczęstsze przyczyny i metody naprawy.
Błąd „Odmowa dostępu" podczas uruchamiania Optimy
Komunikat „Odmowa dostępu" przy starcie Comarch ERP Optima wskazuje, że konto Windows użytkownika nie ma wystarczających uprawnień do odczytu lub zapisu w katalogach programu. Krytyczne katalogi wymagające uprawnień zapisu: C:\ProgramData\Comarch ERP Optima\ (pliki konfiguracyjne), folder tymczasowy użytkownika (%TEMP%), katalog raportów Crystal Reports. Sprawdź uprawnienia przez kliknięcie prawym przyciskiem na folder → Właściwości → Zabezpieczenia. Dodaj użytkownika (lub grupę Użytkownicy) z prawem Modyfikuj do wymaganych katalogów.
Uprawnienia konta serwisowego SQL Server
SQL Server działa w kontekście konta serwisowego Windows (domyślnie NT Service\MSSQL$COMARCH_SQL lub dedykowane konto domenowe). Konto to musi mieć uprawnienia zapisu do folderu z plikami bazy danych (.mdf, .ldf) i folderu kopii zapasowych. Sprawdź uprawnienia folderów baz danych: kliknij prawym przyciskiem na folder → Właściwości → Zabezpieczenia. Jeżeli konto serwisowe SQL nie ma uprawnień, SQL Server nie uruchomi się lub nie będzie mógł pisać do bazy – błąd widoczny w Event Viewer.
Uprawnienia SQL – role bazodanowe dla Optimy
Konto SQL używane przez Optimę do połączenia z bazą (np. CDNOperator) musi mieć odpowiednie role bazodanowe. Standardowe wymagania: rola db_owner dla baz CDN_Konfiguracja i CDN_NazwaFirmy, lub przynajmniej db_datareader i db_datawriter plus uprawnienia EXECUTE dla procedur składowanych. Sprawdź i uzupełnij role w SSMS: baza → Zabezpieczenia → Użytkownicy → wybierz użytkownika → właściwości → Role bazy danych.
Błąd drukowania – brak uprawnień do drukarki
Jeżeli Optima zgłasza błąd podczas drukowania, sprawdź: czy użytkownik ma uprawnienia do drukarki (Panel sterowania → Urządzenia i drukarki → kliknij prawym na drukarkę → Właściwości drukarki → zakładka Zabezpieczenia), czy usługa Print Spooler jest uruchomiona (Usługi Windows → Print Spooler), czy Crystal Reports Runtime ma dostęp do sterownika drukarki (problem z uprawnieniami UAC). Uruchomienie Optimy jako administrator (prawym przyciskiem → Uruchom jako administrator) tymczasowo wyeliminuje problemy z uprawnieniami i pomoże zidentyfikować, czy to przyczyna problemu.
UAC i problemy z zapisem w „Program Files"
W systemach Windows z włączoną Kontrolą konta użytkownika (UAC) aplikacje nie mogą pisać do C:\Program Files (x86)\ bez uprawnień administratora. Comarch ERP Optima jest zaprojektowana z uwzględnieniem UAC i przechowuje dane użytkownika w C:\ProgramData\ i folderach profilu użytkownika. Jednak niektóre starsze wersje lub niestandardowe instalacje mogą próbować pisać do katalogu Program Files – co kończy się błędem uprawnień. Sprawdź, czy Optima nie używa wirtualizacji plików (Compatibile Layer w właściwościach exe).
Naprawa uprawnień przez skrypt PowerShell
Dla masowej naprawy uprawnień na folderach Optimy możesz użyć skryptu PowerShell:
$paths = @("C:\ProgramData\Comarch ERP Optima", "C:\Program Files (x86)\Comarch ERP Optima")
foreach ($p in $paths) {
$acl = Get-Acl $p
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule("BUILTIN\Users","Modify","ContainerInherit,ObjectInherit","None","Allow")
$acl.AddAccessRule($rule)
Set-Acl $p $acl
}
Uruchom skrypt jako Administrator. Po wykonaniu zrestartuj Optimę i sprawdź, czy błędy uprawnień ustąpiły.