In a simple as possible database (made with default template),
I tried to add person, but firefox browser showed:
Error!
Access Denied
More information has been reported in the error logs at
/usr/share/ledgersmb/LedgerSMB.pm line 766.
Why would the error log be stored in a .pm file?
Hmmm. I understand the misunderstanding here. The point is not that the log is located in LedgerSMB.pm, but that the point where the error has been raised is in that file.
That in the line is:
die $state_error->{$dbh->state}
. "\n" .
$locale->text('More information has been reported in the
error logs');
So, it must mean that I should look at the error log file to which
the above statement from the.pm write. However, it's not easy to
see from the code where that log file is located.
Right. That's where you should look. And indeed, the code doesn't know where that file is located. Where it is, depends on how LedgerSMB was installed on your server. Did you install a Docker image? If so, the logs are in "docker logs <container name>". If you installed a (debian) package on a systemd based Linux distribution, the logs are likely to be found behind some invocation of "journalctl". There are many other options, most of which lead to some path in "/var/logs".
So, my question is, where is the log file and does anyone have any
idea why I'm getting the Access Denied error message in the 1st place?
In order to understand that, I need to have a bit more information than you're currently providing. First of all, did you log in through "
setup.pl" or through "
login.pl" when you were adding the new person? When through "
login.pl", did you use the initial account created during database/company creation in
setup.pl? If so, did you create that initial user with "Manage users" or with "Full access" rights?
Regards,
Erik