ошибка при запуске АА в режиме предприятия на Ubuntu+PostgreSQL
Читают тему
Вход в личный кабинет
Для получения доступа к форуму необходимо
авторизоваться
или
зарегистрироваться
на сайте.
{{ formTitle ? formTitle : 'Заказ обратного звонка' }}
{{ formDescription }}
Сообщить об ошибке
Установили сервер Ubuntu 10.04, PostgreSQL 8.4, Hasp driver - инсталляции брал с users.v8.1c.ru и ftp Etersoft'a.
Все компоненты установились и запустились корректно.
Из под Windows создали кластер серверов.
Дальше пробовал на сервер с windows клиента создавать демо БД АА с диска или загружать свою текущую конфу из локального dt-файла в конфигурацию на сервере - загружается нормально и в конфигураторе могу редактировать.
Однако при попытке запустить в режиме предприятия выдаёт следующую ошибку:
Комп.Записать();
по причине:
Ошибка при выполнении обработчика - '{ОбщийМодуль.спСправочники(845)}: Преобразование значения к типу Булево не может быть выполнено'
по причине:
{ОбщийМодуль.спСправочники(845)}: Преобразование значения к типу Булево не может быть выполнено
Комп.Записать();
Подскажите, пожалуйста, в чем может быть проблемы?
Однако ошибки остались:
Пробовал отключить Комп.Записать(); тогда вылазит такая ошибка:
ТипЗнач = ОписаниеТипов.Типы().Получить(0); // получим первый (и единственный) попавшийся из типов досупных для элемента
Неужели не пробовали конфигурацию АА запустить под Linux? или она в принципе под linux не запускается?
Ну не убирать же проверку прав из программы? Как быть то?
попрежнему не работает? Разбирались почему справочник не записывается, может не работает функция ИмяКомпьютера() и наименование у справоника не заполнено.
после включения дебага на сервер и пробегания по коду - ошибка вылазит почти во всех местах где в блоке "Eсли... Тогда" используется функция обПраво("Какое-то право",ЭтотОбъект.Права) - вылазит ошибка "Преобразование значения к типу Булево не может быть выполнено", т.к. данная функция возвращает значение "Неопределено".
могу приложить скриншоты, если требуется.
Верните все наместо как было нужно найти основную причину, почему у вас не формируется справочник компьютер.
строка Комп.Записать(); сейчас закомментирована?
Верните все наместо как было нужно найти основную причину, почему у вас не формируется справочник компьютер.
Основная причина - ф-я обПраво возвращает значение Неопределено и во всех конструкциях "Если ОбПраво" Тогда..." - вылазит ошибка невозможности проконвертировать Неопределено в Boolean.
А если пытаться на сервер помещать какую-то демку с данными(dt-файл) или рабочую конфигурацию с данными - ошибки.
Более детально:
спускаемся вниз по иерархии вызова функций:
-> Процедура УстановкаПараметровСеанса()
-> Комп.Записать();
-> Если НЕ спПередЗаписью
-> Если обПраво("ПроверкаДоступаКСправочникамИДокументам",ЭтотОбъект.Права) - тут ЭтотОбъект.Права=Неопределено
-> обПолучитьПраваИНастройкиПользователя(Пользователь, ПравоСсылка) - тут ЗначенияПрав=Неопределено - // Кэш прав не передан (вероятно мы на сервере), значит придется запрашивать данные из БД...
-> ПравоСсылка=обПолучитьСсылкуПВХПравИНастроек(Право) - тут Право=ПроверкаДоступаКСправочникамИДокументам
-> Попытка Возврат ПланыВидовХарактеристик.ПраваИНастройки[СокрЛП(Право)]; - !!! вот тут получаем <Объект не найден> (291:a5997cb9748f98aa4c771a645dbd0071)
дальше поднимаемся обратно вверх по иерархии
<- ПравоСсылка = <Объект не найден> (291:a5997cb9748f98aa4c771a645dbd0071)[/B]
<- Результат = обПолучитьПраваИНастройкиПользователя(Пользователь, ПравоСсылка) , т.е. Неопределено.
<- обПраво("ПроверкаДоступаКСправочникамИДокументам",ЭтотОбъект.Права) , т.е. Неопределено.
<- Если обПраво("ПроверкаДоступаКСправочникамИДокументам",ЭтотОбъект.Права) - вылетает с ошибкой!!!
Похожее <Объект не найден> получаем в других функциях, если закомментировать Комп.Записать() и двигаться дальше по коду. Например, не может найти ссылку на Организацию, хотя нашло пользователя и подразделение...
В чем может быть проблема? в БД PostgreSQL? или в процедуре загрузки конфигурации из файла на сервер?
Чему равно значение параметра Пользователь и ПравоСсылка?
Пользователь = "Пользователь Администратор информационной базы СправочникСсылка.Пользователи"
ПравоСсылка = "<Объект не найден> (291:a5997cb9748f98aa4c771a645dbd0071)"
P.S. Ксати, тут видно, что у пользователя "Организация = <Объект не найден> (50:a625419b486d17464689038359f239a6)"... такое впечатление, что ссылки на объекты есть в БД, а самих объектов нету...
мы получили ссылку на право?
значение этих строк:
"ПланыВидовХарактеристик.ПраваИНастройки[СокрЛП(Право)]"
и
"ПланыВидовХарактеристик.ПраваИНастройки.НайтиПоНаименованию(СокрЛП(Право),Истина)"
Пользователь = {(1,1)}: Переменная не определена (Пользователь)
Право = "ПроверкаДоступаКСправочникамИДокументам"
->Попытка Возврат ПланыВидовХарактеристик.ПраваИНастройки[СокрЛП(Право)];
возвращает - "<Объект не найден> (291:a5997cb9748f98aa4c771a645dbd0071)"
До функции ПланыВидовХарактеристик.ПраваИНастройки.НайтиПоНаименованию(СокрЛП(Право),Истина); - просто не доходит, а сразу происходит возврат из функции с этим значением.
внутрь залезть не могу, т.к. это не функция, я так понимаю, а свойство...
право "ПроверкаДоступаКСправочникамИДокументам" 10002 в предопределённых данных ПраваИНастройки имеется.
Ubuntu 10.04 ядро 2.6.32-24
PostgreSQL 8.4.4 - от EterSoft
А какой у Вас релиз самой платформы 1С?
Напишите, пожалуйста, на какой конфигурации(название и версия) Linux+PostgreSQL тестировалась работоспособность АА в клиент-серверном режиме? - установим у себя такую же, если это будет гарантировать работу АА.
P.S. PostgreSQL от Etersoft - нет не уверен, поэтому спросил уже рабочую конфигурацию для АА
Я попробую все поставить с
2. Конфигурация АА без разницы.
3. PostgreSQL 8.4.3-3.1C обязательно с сайта 1С.
4. Linux Ubuntu 10.04.
Работоспособность АА на Linux+PostgreSQL не тестировалась. Работоспособность АА тестировалась на MS SQL.
ПП не ориентируется, на какую-нибудь конкретную СУБД, связь с СУБД осуществляет сама платформа, а не программынй продукт т.к. не ПП интерпретирует язык 1С в язык запросов СУБД.
Linux - Ubuntu 10.04 LTS server amd64 - поддержка 5 лет для сервера
PostgreSQL - 8.4.2 сборка Etersoft 64bit под Ubuntu 10.04 (8.4.4. - не работает
Платформа 1С - 8.1.15.14 - одинаковая и на клиенте и на сервере.
Hasp drivers - или Etersoft или напрямую с сайта Alladin - тут кто как заведет, у меня пошло на драйверах от Alladin - Но это отдельная история .
Протестировал - сервер стартует, создаёт и заливает БД, клиент-серверый вариант работает, АА стартует на ура! Правда, субъективно по сравнению с локальной машиной, трохи медленее открываются формы - но возможно потому, что на серваке нет raid. Трафик потребляется маленький, насколько я понял тут важна сама скорость сети - лучше гигабит... если будет работать группа народа...
P.S. Если Компания 1С соберёт PostgeSQL в deb-пакетах или опишет как rpm с сохранением корректности всех скриптов переконвертировать в deb - с удовольствием перейду на их сборку.
------------------------------------------------
Отдельное хочу сказать спасибо Виктору Радько за терпение, понимание, помощь!
бинарники и src postgresql-a положил на