Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 5
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> При переходе на клиент-сервер - в рабочем коде появились ошибки          
bizisoft Подменю пользователя
сообщение 10.06.20, 9:16
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 242
Из: Донецк
Спасибо сказали: 19 раз
Рейтинг: 22

Здравствуйте.
1C 8.2.19.130
Альфа-Авто 4.1.21.01

Наладил SQL Server, создал пустую базу, загрузил базу из файла *.dt.
При запуске вылетают ошибки в процедурах/функциях, которые в файловом режиме работали без замечаний.

Процедура или функция с указанным именем не определена (ПолучитьМакетОформления)Построитель.МакетОформления = <<?>>ПолучитьМакетОформления(СтандартноеОформление.Классика);

Процедура на которую ругается вынесена в общий модуль и выглядит так:
Процедура бсПоказатьРезультатВТаблице(ТЗ) Экспорт
    Построитель = Новый ПостроительОтчета;
    Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТЗ);
    Построитель.МакетОформления = ПолучитьМакетОформления(СтандартноеОформление.Классика);
    Построитель.Выполнить();
    Для каждого Колонка Из Построитель.ВыбранныеПоля Цикл
        Колонка.Представление = ТЗ.Колонки[Колонка.Имя].Заголовок;        
    КонецЦикла;
    Построитель.Вывести();
КонецПроцедуры


или вот еще одна ошибка
{РегистрСведений.СравнениеПрайсов.Форма.ФормаСписка.Форма(22,12)}: Процедура или функция с указанным именем не определена (КурсЗапросомСервер)
    ТекКурс = <<?>>КурсЗапросомСервер(ВыбрВалюта);


Ругается на эту строку:
ТекКурс = КурсЗапросомСервер(ВыбрВалюта);


Функция выглядит так:
&НаСервере
Функция КурсЗапросомСервер(ВыбрВалюта)
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("Дата",ТекущаяДата());
    Запрос.УстановитьПараметр("Валюта",ВыбрВалюта);
    Запрос.Текст = "Выбрать        
            |КурсыВалют.Период,        
            |КурсыВалют.Курс,        
            |КурсыВалют.Кратность        
            |ИЗ        
            |РегистрСведений.КурсыВалют.СрезПоследних(&Дата, Валюта =&Валюта) КАК КурсыВалют";
    Результат = Запрос.Выполнить();
    Выборка = Результат.Выбрать();
    Если Выборка.Следующий() Тогда      
        Рез = Выборка.Курс; //Строка(Выборка.Курс)+":"+Строка(Выборка.Кратность);
    КонецЕсли;
    Возврат Рез;
КонецФункции


Это особенность клиент-серверного режима и эти функции/процедуры нужно как-то по особенному переписать?
Подскажите пожалуйста, с чем связано такое поведение и как этого можно избежать?


Signature
1С:Предприятие 8.2 (8.2.19.130)
"Альфа-Авто: Автосервис+Автозапчасти, украинская версия 4.1" (4.1.20.01)
обычные формы.


sava1 Подменю пользователя
сообщение 10.06.20, 9:39
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2482
Из: Проскуров
Спасибо сказали: 605 раз
Рейтинг: 587

общий модуль - свойства - клиент,сервер, ......

а Курс.... Экспорт

Сообщение отредактировал sava1 - 10.06.20, 9:42

Спасибо сказали: bizisoft,

bizisoft Подменю пользователя
сообщение 10.06.20, 11:31
Сообщение #3

Завсегдатай
****
Группа: Пользователи
Сообщений: 242
Из: Донецк
Спасибо сказали: 19 раз
Рейтинг: 22

sava1 @ Сегодня, 10:39 * ,
У общего модуля установлены следующие свойства:
Глобальный = Истина
Клиент (упр.ф.) = Ложь
Сервер = Истина
Внешн.соед. = Истина
Клиент (об.ф.) = Истина
Вызов серв = Истина
Привелигер. = Ложь

Сделал Курс Экспорт

Но к сожалению ничего не изменилось.


Signature
1С:Предприятие 8.2 (8.2.19.130)
"Альфа-Авто: Автосервис+Автозапчасти, украинская версия 4.1" (4.1.20.01)
обычные формы.

sava1 Подменю пользователя
сообщение 10.06.20, 12:16
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2482
Из: Проскуров
Спасибо сказали: 605 раз
Рейтинг: 587

по первому участку - на сервере не выполнится - там нет макетаОформления - лепите в клиентский модуль или передавайте макетОформления как параметр

второй кусок - должен выполнятся (НаСервере) . единственно - НаСервереБезКонтекста. может вызов неправильный ???

по Построитель.Вывести() - а куда Вы собираетесь выводить ? Создайте ТабДок и передайте на клиент. на сервере ТабДок не покажет.....

Спасибо сказали: bizisoft,

bizisoft Подменю пользователя
сообщение 10.06.20, 12:41
Сообщение #5

Завсегдатай
****
Группа: Пользователи
Сообщений: 242
Из: Донецк
Спасибо сказали: 19 раз
Рейтинг: 22

Перенес функцию КурсЗапросомСервер(Валюта) из РегистрСведений ФормаСписка в общий модуль и ошибка с получением курса ушла.
Получается в клиент-серверном режиме нельзя прописывать в модуле формы функции с директивой &НаСервере ?


По построителю получилось запустить функцию из общего модуля добавив директиву &НаКлиенте.
После этого ошибка пропала.


Signature
1С:Предприятие 8.2 (8.2.19.130)
"Альфа-Авто: Автосервис+Автозапчасти, украинская версия 4.1" (4.1.20.01)
обычные формы.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 31.07.21, 10:56
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!