Имя: Пароль:
1C
 
Как передать процедуру с клиента на сервер?
0 tabarigen
 
19.08.15
12:55
Пытаюсь передать процедуру на сервер, при отладке процедура даже не выполняется.

Клиент-серверный вариант, 1с 8.3.

Ну и сам код.

&НаСервере
Процедура ЗаполнитьИзДокументаПоступленияНаСервере(ДокПоступления)
    // Вставить содержимое обработчика.
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("СсылкаНаДок", ДокПоступления);
    Запрос.УстановитьПараметр("Дата", КонецДня(ТекущаяДата()));
    Запрос.УстановитьПараметр("ВидЦены", Справочники.ВидыЦен.НайтиПоНаименованию("Цена розничная"));    
    Запрос.Текст = "ВЫБРАТЬ
                   |    ПоступлениеТоваровУслугТовары.НомерСтроки,
                   |    ПоступлениеТоваровУслугТовары.Номенклатура,
                   |    ПоступлениеТоваровУслугТовары.Характеристика,
                   |    ПоступлениеТоваровУслугТовары.Упаковка,
                   |    ПоступлениеТоваровУслугТовары.Серия
                   |ПОМЕСТИТЬ Товары
                   |ИЗ
                   |    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
                   |ГДЕ
                   |    ПоступлениеТоваровУслугТовары.Ссылка = &СсылкаНаДок
                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |ВЫБРАТЬ
                   |    ЦеныНоменклатурыСрезПоследних.Номенклатура,
                   |    ЦеныНоменклатурыСрезПоследних.Цена,
                   |    ЦеныНоменклатурыСрезПоследних.УТР_Серия,
                   |    ЦеныНоменклатурыСрезПоследних.Характеристика
                   |ПОМЕСТИТЬ Цены
                   |ИЗ
                   |    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ВидЦены = &ВидЦены) КАК ЦеныНоменклатурыСрезПоследних
                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |ВЫБРАТЬ
                   |    ШтрихкодыНоменклатуры.Номенклатура,
                   |    МАКСИМУМ(ШтрихкодыНоменклатуры.Штрихкод) КАК Штрихкод,
                   |    ШтрихкодыНоменклатуры.Характеристика,
                   |    ШтрихкодыНоменклатуры.УТР_Серия
                   |ПОМЕСТИТЬ Штрихкоды
                   |ИЗ
                   |    РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры
                   |
                   |СГРУППИРОВАТЬ ПО
                   |    ШтрихкодыНоменклатуры.Номенклатура,
                   |    ШтрихкодыНоменклатуры.Характеристика,
                   |    ШтрихкодыНоменклатуры.УТР_Серия
                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |ВЫБРАТЬ
                   |    Товары.НомерСтроки КАК НомерСтроки,
                   |    Товары.Номенклатура,
                   |    Товары.Характеристика,
                   |    Товары.Упаковка,
                   |    Штрихкоды.Штрихкод,
                   |    ЛОЖЬ КАК Весовой,
                   |    Цены.Цена,
                   |    1 КАК ЦенаДополнительно
                   |ИЗ
                   |    Товары КАК Товары
                   |        ЛЕВОЕ СОЕДИНЕНИЕ Цены КАК Цены
                   |        ПО Товары.Номенклатура.Ссылка = Цены.Номенклатура
                   |            И Товары.Характеристика = Цены.Характеристика
                   |            И Товары.Серия = Цены.УТР_Серия
                   |        ЛЕВОЕ СОЕДИНЕНИЕ Штрихкоды КАК Штрихкоды
                   |        ПО Товары.Номенклатура = Штрихкоды.Номенклатура
                   |            И Товары.Характеристика = Штрихкоды.Характеристика
                   |
                   |УПОРЯДОЧИТЬ ПО
                   |    НомерСтроки";
    Результат = Запрос.Выполнить().Выгрузить();              
КонецПроцедуры

&НаКлиенте
Процедура ЗаполнитьИзДокументаПоступления(Команда)

    Перем ДокПоступления;
    ВвестиЗначение(ДокПоступления,,Тип("ДокументСсылка.ПоступлениеТоваровУслуг"));
    ЗаполнитьИзДокументаПоступленияНаСервере(ДокПоступления);
КонецПроцедуры
1 Fram
 
19.08.15
12:56
(0)
на сервере не включен режим отладки на сервере
2 butterbean
 
19.08.15
12:56
(0) что не выполняется? может у тебя север не в режиме отладке
3 Апош
 
19.08.15
12:56
>даже не выполняется
точно?
4 ДенисЧ
 
19.08.15
12:57
у тебя процедура ЗаполнитьИзДокументаПоступленияНаСервере нифига не делает с данными
5 tabarigen
 
19.08.15
14:17
сервер в режиме отладки.
(4) Добавил в процедуру
Сообщить("вававав");

Поставил точку останова на ней, сообщение выводится но точка останова не срабатывает.
6 ДенисЧ
 
19.08.15
14:17
(5) Значит, сервер НЕ в режиме отладки
7 tabarigen
 
19.08.15
14:23
(6) да ладно
https://yadi.sk/i/QZPaaAaniXv4L
8 tabarigen
 
19.08.15
14:25
"C:\Program Files (x86)\1cv8\8.3.6.2014\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files (x86)\1cv8\srvinfo" -debug
9 Cherokee
 
19.08.15
14:29
"C:\Program Files (x86)\1cv8\8.3.6.2014\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d "C:\Program Files (x86)\1cv8\srvinfo"

Надо так!
10 Cherokee
 
19.08.15
14:30
И перезапустить серв на забудь))
11 tabarigen
 
19.08.15
14:37
(9) Так не надо, не давайте вредных советов.

В моем случае нужно было перезапустить конфигуратор,  и настроить подключение в  ОТЛАДКА->ПОДКЛЮЧЕНИЕ->НАСТРОЙКА
нужно было выбрать сеанс для отладки
12 Cherokee
 
19.08.15
14:41
(11) У меня именно так. Если сам умный, чего спрашиваешь.
13 Cherokee
 
19.08.15
14:43
(11) Похоже на то, что ты обновился демонически (динамически). При этом, 8.3 не цепляет серверный сеанс. Если запускаешься из конфигуратора.
14 tabarigen
 
19.08.15
15:02
(12) Не самый умный, но кроме тебя так прописывать никто не рекомендовал.
Я сторонник хоть какой либо но унификации.
15 ДенисЧ
 
19.08.15
15:04
ващета (с) -debug в середину переносить - очень давняя и проверенная рекомендация
16 Cherokee
 
19.08.15
15:05
Первая же ссылка.

http://www.gilev.ru/debug/
17 Cherokee
 
19.08.15
15:05
Но наверно без разницы, раз у тебя так работает
18 Mitriy
 
19.08.15
15:20
(17) без разницы. У меня всегда было в конце, потому что дописывать в конец проще, чем искать каждый раз середину...
19 Cherokee
 
19.08.15
15:23
(18) Каждый раз???? Я один раз ввел и забыл.
20 Mitriy
 
19.08.15
15:26
(19) счастливый... а у меня 8.2 и 8.3 на разных серверах, да еще и обновляются время от времени...
21 Cherokee
 
19.08.15
15:36
(20) да уж. У всех свои замороки. Мы боимся платформу часто дергать, ибо ERP. Обновишься, потом надоест отлаживаться.
22 Mitriy
 
19.08.15
15:42
(21) что, так грустно все? в 8.3 громадье ошибок, которые исправляются чуть ли не каждую неделю, не помогает?
23 Cherokee
 
19.08.15
15:58
(23) Да вот, бьюсь с бизнес-процессом продажа (заказ клиента - реализация - с/ф). Все заточено на интерактивную работу. Во внутренностях вылезают всякие нежданчики при написании групповых обработок загрузки заказов от сетей через контур и т.д. хотя с виду, типа круто и должно работать. Но через раз там все заточено на коллекции упр.форм, а не таб. части объектов и прочие реквизиты.

Впрочем, это мало отношения к (0). Так что завязываю))
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший