|   |   | 
| 
 | Общие модули - тонкий клиент | ☑ | ||
|---|---|---|---|---|
| 0
    
        Санта Клаус 03.12.17✎ 21:04 | 
        Ребята, добрый день! Подскажите: вызываю из общего модуля, у которого стоят Клиент, Сервер и Внешнее соединение, процедуру другого общего модуля, у которого только Сервер - пишет
 Переменная не определена (БонусныеБаллыСервер)(Проверка: Тонкий клиент). Примерно понятно почему.Но что делать? Как из общего модуля с галкой Клиент и Сервер обратиться к метаданным (запрос к РН)? Спасибо | |||
| 1
    
        Lexey_ 03.12.17✎ 21:06 | 
        (0) инструкции препроцессора     | |||
| 2
    
        H A D G E H O G s 03.12.17✎ 21:09 | 
        (0) Поставить галочку "Вызов сервера"     | |||
| 3
    
        Санта Клаус 03.12.17✎ 21:09 | 
        ок, спасибо за наводку     | |||
| 4
    
        Санта Клаус 03.12.17✎ 21:11 | 
        (2) не помогает     | |||
| 5
    
        H A D G E H O G s 03.12.17✎ 21:15 | 
        (4) Галочка в серверном модуле?     | |||
| 6
    
        Санта Клаус 03.12.17✎ 21:17 | 
        нужно в том, который вызываем?     | |||
| 7
    
        Санта Клаус 03.12.17✎ 21:20 | 
        другая ошибка 
 {ОбщийМодуль.РозничныеПродажиКлиентСервер.Модуль(239)}: Ошибка при вызове метода контекста (БонуснаяПрограммаКартыЛояльности) ПараметрыКартыЛояльности = БонусныеБаллыСервер.БонуснаяПрограммаКартыЛояльности(ЭлементСтруктуры.Значение); по причине: Ошибка при вызове серверного метода. по причине: Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа. по причине: Ошибка преобразования данных XDTO: Запись значения свойства 'ret': форма: Элемент имя: {http://v8.1c.ru/8.2/managed-application/modules}ret по причине: Ошибка отображения типов: Отсутствует отображение для типа 'ВыборкаИзРезультатаЗапроса' | |||
| 8
    
        H A D G E H O G s 03.12.17✎ 21:24 | 
        ТаблицаРезультата=Запрос.Выполнить().Выгрузить();
 ТаблицаМассивомСтруктур=ОбщегоНазначения.ТаблицаЗначенийВМассив(ТаблицаРезультата); Возврат ТаблицаМассивомСтруктур; | |||
| 9
    
        Санта Клаус 03.12.17✎ 21:31 | 
        т.е. в данном случае нужно вместо ТЗ возвращать массив? Т.е еще один модуль изменять     | |||
| 10
    
        Санта Клаус 03.12.17✎ 21:47 | 
        (8) Спасибо, помогло, вопрос: получается, без этого допила по типовому никак проще не решается эта проблема? Обязательно код править?     | |||
| 11
    
        H A D G E H O G s 03.12.17✎ 21:49 | 
        (9) (10) Вы проектируете кривую архитектуру. Делите клиент и сервер правильно.     | |||
| 12
    
        Санта Клаус 03.12.17✎ 21:49 | 
        Дело не в том, что код править, а в том, что данная ситуация должна быть предусмотрена  решаться на уровне расстановки галок, или я не прав. Что это: недоработка платформы или моя уникальная ситуация, в чем сильные сомнения.     | |||
| 13
    
        Санта Клаус 03.12.17✎ 21:49 | 
        (11) ок     | |||
| 14
    
        xReason 03.12.17✎ 22:00 | 
        (12) Нет, это ваше неправильное проектирование клиент-серверной архитектуры + незнание темы     | |||
| 15
    
        Санта Клаус 03.12.17✎ 22:03 | 
        Да, все решилось без преобразования ТЗ в массив созданием и вызовом своего общего модуля с галками Сервер и Вызов сервера. Изначально не поставил галку Вызов сервера, вот и не получалось.     | |||
| 16
    
        xReason 04.12.17✎ 07:54 | 
        (15) ставить галку ВызовСервера просто так, что бы заработало, это плохая практика. Все эти вызовы небезопасные и влияют на производительность     | |||
| 17
    
        ildary 04.12.17✎ 08:43 | 
        (16) А как делать правильно? Я заметил, что сама 1С делает дополнительный модуль с галкой ВызовСервера и в конце имени ВызовСервера - поступать также?     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |