Вход | Регистрация

1С:Предприятие ::

Метки:

Выполнение функции &НаСервере

Я
   Gera1t
 
07.12.17 - 16:50
Здравствуйте!
База УТ 10.3 Всю жизнь была файловая.
Есть еще 1 база тоже файловая.
Вот такой функцией подключались из УТ к другой базе:
Функция ПолучитьПодключениеКФайловойБД() Экспорт
    КаталогБазыДанных     = ПолучитьПредопределенноеЗначение("КаталогБазыДанных");
    Пользователь        = ПолучитьПредопределенноеЗначение("ПользовательИБ");
    Пароль                = ПолучитьПредопределенноеЗначение("ПарольПользователяИБ");
    СтрокаПодключения = "file='" + КаталогБазыДанных + "'; usr='" + Пользователь + "'; pwd='" + Пароль + "';";
    V83COMConnector= Новый COMОбъект("V83.COMConnector");
    Попытка
        Возврат  V83COMConnector.Connect(СтрокаПодключения);
    Исключение
        Предупреждение ("Ошибка подключения!"+ОписаниеОшибки());
        Возврат Неопределено;
    КонецПопытки;
КонецФункции

Все работало отлично.
Перенесли УТ на SQL. Соответственно к файловой базе которая находиться на том же компе что и УТ он не может подключиться с другого комп.
Дописал "&НаСервере" перед функцией
теперь ругается: Метод объекта не обнаружен (ПолучитьПодключениеКФайловойБД)
    Соединение = БонКарты.ПолучитьПодключениеКФайловойБД();
Подскажите пожалуйста как решить?
 
  Рекламное место пустует
   igork1966
 
1 - 07.12.17 - 16:52
(1) Как минимум нужно знать откуда вызывается и параметры модуля где лежит
   Gera1t
 
2 - 07.12.17 - 16:54
общий модуль называется: БонКарты
На модуле все галочки кроме Управляемое приложение отмечены
Вызывается из этого же модуля
   3achem
 
3 - 07.12.17 - 17:02
(2) В модуле можно не объявлять где будет исполнение, это нужно для форм.
Если функция в том же модуле, то зачем к ней через точку обращаться?
   AlvlSpb
 
4 - 07.12.17 - 17:21
(2) У тебя УТ 10.3 - это ОФ! Какое &НаСервере?
Ошибка,скорей всего здесь:
СтрокаПодключения = "file='" + КаталогБазыДанных + "'; usr='" + Пользователь + "'; pwd='" + Пароль + "';";

База - это уже не файл на том же компьютере, смотри сетевой путь к базе
   mehfk
 
5 - 07.12.17 - 17:23
(0) У вас каша в голове. Попробуйте прочитать документацию для чего нужна конструкция &НаСервере
   3achem
 
6 - 07.12.17 - 17:29
(4) И? В тонком клиенте можно работать с директивами в любой конфигурации
   Gera1t
 
7 - 07.12.17 - 18:40
(4), (5) Обе базы находятся на 1 компьютере. Базы до недавнего времени были файловыми. Потом База УТ 10.3 перевели на SQL, а 2 база осталась файловой. т.е. в База УТ подключалась к другой базе в файловом режиме, например "D:\Base". Все клиенты работали в терминале. Теперь база на SQL и клиенты подключаются к базе со своих стационарных компов и на их компах нет базы в "D:\Base". Эта папка есть на сервере. Поэтому я хочу что бы к каталогу с базой программа обращалась именно на сервере! Я так делал не раз, но с базами на УФ, все работало.
   h-sp
 
8 - 07.12.17 - 18:54
(7) ну тогда &НаКлиенте
   Gera1t
 
9 - 07.12.17 - 19:14
(8) В таком случае каталог с базой разве не на компе клиента УТ будет искать? Мне то нужно что бы каталог с программой УТ искала на компе где база лежит
   Gera1t
 
10 - 07.12.17 - 19:15
(3) Тут ты прав, но этот код не я придумывал.
 
  Рекламное место пустует
   h-sp
 
11 - 07.12.17 - 19:32
(9) ну сделайте сетевую папку.
   Tateossian
 
12 - 07.12.17 - 19:55
(10) Это самая крутая отмаза, прямо в топе, когда код творит беду: это не я писал/ это предыдущий разработчик/
   Tateossian
 
13 - 07.12.17 - 19:57
(3)  Если модуль возвращает кэшированное значение и нужно получить именно его, а контекст - этот же модуль, то нужно писать именно так. Иначе будет выполнена функция.
   breezee
 
14 - 07.12.17 - 20:28
(12) Ну если действительно так, почему бы не написать об этом?)
   LuciferArh
 
16 - 08.12.17 - 08:39
(0) У сервера 1С нет прав на папку с файловой базой?
   PCcomCat
 
17 - 08.12.17 - 09:11
(16) +100!


Список тем форума
Рекламное место пустует  
Программист всегда исправляет последнюю ошибку.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует