Задача заключается в том, чтобы при нажатии на строку динСписка на форме выводило данные по этой строке в таблице значение на этой же форме. Для этого использовал событие ПриАктивизацииСТроки. Посмотрел в отладчике, серверная процедура вообще не отрабатывает.
Вот мой код:
&НаСервере
Процедура РасшФормы_СписокРасширенныйПоискНоменклатураПриАктивизацииСт рокиПослеНаСервере(ТекущаяСтрока)
ЗапросДляТЗ = Новый Запрос;
ЗапросДляТЗ.Текст =
"ВЫБРАТЬ
| ТоварыКОтгрузкеОстатки.Номенклатура КАК Номенклатура,
| ТоварыКОтгрузкеОстатки.Характеристика КАК Характеристика,
| ТоварыКОтгрузкеОстатки.Склад КАК Склад,
| ТоварыКОтгрузкеОстатки.КОтгрузкеОстаток КАК КОтгрузкеОстаток
|ПОМЕСТИТЬ ТоварыКОтгрузке
|ИЗ
| РегистрНакопления.ТоварыКОтгрузке.Остатки КАК ТоварыКОтгрузкеОстатки
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| СвободныеОстаткиОстатки.Номенклатура КАК Номенклатура,
| СвободныеОстаткиОстатки.ВНаличииОстаток КАК ВНаличииОстаток,
| СвободныеОстаткиОстатки.ВРезервеСоСкладаОстаток КАК ВРезервеСоСкладаОстаток
|ПОМЕСТИТЬ СвободныеОстатки
|ИЗ
| РегистрНакопления.СвободныеОстатки.Остатки КАК СвободныеОстаткиОстатки
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| ТоварыКОтгрузке.Номенклатура КАК Номенклатура,
| ТоварыКОтгрузке.Склад КАК Склад,
| ТоварыКОтгрузке.Характеристика КАК Характеристика,
| СвободныеОстатки.ВНаличииОстаток КАК ВНаличии,
| СвободныеОстатки.ВРезервеСоСкладаОстаток КАК ВРезерве,
| ТоварыКОтгрузке.КОтгрузкеОстаток КАК Отгружается,
| СвободныеОстатки.ВНаличииОстаток - СвободныеОстатки.ВРезервеСоСкладаОстаток - ТоварыКОтгрузке.КОтгрузкеОстаток КАК Доступно
|ИЗ
| ТоварыКОтгрузке КАК ТоварыКОтгрузке
| ЛЕВОЕ СОЕДИНЕНИЕ СвободныеОстатки КАК СвободныеОстатки
| ПО ТоварыКОтгрузке.Номенклатура = СвободныеОстатки.Номенклатура
|ГДЕ
| ТоварыКОтгрузке.Номенклатура.Ссылка = &ТекущаяСтрока";
ЗапросДляТЗ.УстановитьПараметр("ТекущаяСтрока", ТекущаяСтрока);
РезультатДляТЗ = ЗапросДляТЗ.Выполнить().Выгрузить();
ТаблицаСтроки.Загрузить(РезультатДляТЗ);
КонецПроцедуры
&НаКлиенте
Процедура РасшФормы_СписокРасширенныйПоискНоменклатураПриАктивизацииСт рокиПосле(Элемент)
ТекущаяСтрока = Элементы.СписокРасширенныйПоискНоменклатура.ТекущаяСтрока;
Если ТекущаяСтрока = Неопределено Тогда
Возврат;
КонецЕсли;
РасшФормы_СписокРасширенныйПоискНоменклатураПриАктивизацииСт рокиПослеНаСервере(ТекущаяСтрока);
КонецПроцедуры
Вот мой код:
&НаСервере
Процедура РасшФормы_СписокРасширенныйПоискНоменклатураПриАктивизацииСт
ЗапросДляТЗ = Новый Запрос;
ЗапросДляТЗ.Текст =
"ВЫБРАТЬ
| ТоварыКОтгрузкеОстатки.Номенклатура КАК Номенклатура,
| ТоварыКОтгрузкеОстатки.Характеристика КАК Характеристика,
| ТоварыКОтгрузкеОстатки.Склад КАК Склад,
| ТоварыКОтгрузкеОстатки.КОтгрузкеОстаток КАК КОтгрузкеОстаток
|ПОМЕСТИТЬ ТоварыКОтгрузке
|ИЗ
| РегистрНакопления.ТоварыКОтгрузке.Остатки КАК ТоварыКОтгрузкеОстатки
|;
|
|////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| СвободныеОстаткиОстатки.Номенклатура КАК Номенклатура,
| СвободныеОстаткиОстатки.ВНаличииОстаток КАК ВНаличииОстаток,
| СвободныеОстаткиОстатки.ВРезервеСоСкладаОстаток КАК ВРезервеСоСкладаОстаток
|ПОМЕСТИТЬ СвободныеОстатки
|ИЗ
| РегистрНакопления.СвободныеОстатки.Остатки КАК СвободныеОстаткиОстатки
|;
|
|////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ТоварыКОтгрузке.Номенклатура КАК Номенклатура,
| ТоварыКОтгрузке.Склад КАК Склад,
| ТоварыКОтгрузке.Характеристика КАК Характеристика,
| СвободныеОстатки.ВНаличииОстаток КАК ВНаличии,
| СвободныеОстатки.ВРезервеСоСкладаОстаток КАК ВРезерве,
| ТоварыКОтгрузке.КОтгрузкеОстаток КАК Отгружается,
| СвободныеОстатки.ВНаличииОстаток - СвободныеОстатки.ВРезервеСоСкладаОстаток - ТоварыКОтгрузке.КОтгрузкеОстаток КАК Доступно
|ИЗ
| ТоварыКОтгрузке КАК ТоварыКОтгрузке
| ЛЕВОЕ СОЕДИНЕНИЕ СвободныеОстатки КАК СвободныеОстатки
| ПО ТоварыКОтгрузке.Номенклатура = СвободныеОстатки.Номенклатура
|ГДЕ
| ТоварыКОтгрузке.Номенклатура.Ссылка = &ТекущаяСтрока";
ЗапросДляТЗ.УстановитьПараметр("ТекущаяСтрока", ТекущаяСтрока);
РезультатДляТЗ = ЗапросДляТЗ.Выполнить().Выгрузить();
ТаблицаСтроки.Загрузить(РезультатДляТЗ);
КонецПроцедуры
&НаКлиенте
Процедура РасшФормы_СписокРасширенныйПоискНоменклатураПриАктивизацииСт
ТекущаяСтрока = Элементы.СписокРасширенныйПоискНоменклатура.ТекущаяСтрока;
Если ТекущаяСтрока = Неопределено Тогда
Возврат;
КонецЕсли;
РасшФормы_СписокРасширенныйПоискНоменклатураПриАктивизацииСт
КонецПроцедуры
Прикрепленные файлы:
По теме из базы знаний
- Разные хм... неожиданности при работе с УТ 11 и платформой
- Как контролировать качество внешних обработок, отчетов, правил обмена, расширений 1С и поставить это на поток
- Нестандартное использование СКД
- Распространенные ошибки разработчиков, приводящие к проблемам производительности
- Как отбирать и проверять менеджеров
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(6)вот что пишут в поисковиках
Если не работает отладка в 1С 8.2 и 8.3
Остановить службу 1C:Enterprise 8.2 Server Agent.
Запустить редактор системного реестра. Чтобы открыть редактор реестра, необходимо нажать Windows + R (или Пуск-Выполнить) и ввести в командную строку regedit.
Найти ветку реестра [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\1C:Enterprise 8.2 Server Agent\].
Находим свойство «ImagePath»= , добавляем в строку «-debug».
Записываем и запускаем службу.
Пример:
До включения:
«»C:\Program Files (x86)\1cv82\8.2.18.109\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files (x86)\1cv82\srvinfo»»
После включения отладки:
«»C:\Program Files (x86)\1cv82\8.2.18.109\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files (x86)\1cv82\srvinfo» -debug»
Если не работает отладка в 1С 8.2 и 8.3
Остановить службу 1C:Enterprise 8.2 Server Agent.
Запустить редактор системного реестра. Чтобы открыть редактор реестра, необходимо нажать Windows + R (или Пуск-Выполнить) и ввести в командную строку regedit.
Найти ветку реестра [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\1C:Enterprise 8.2 Server Agent\].
Находим свойство «ImagePath»= , добавляем в строку «-debug».
Записываем и запускаем службу.
Пример:
До включения:
«»C:\Program Files (x86)\1cv82\8.2.18.109\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files (x86)\1cv82\srvinfo»»
После включения отладки:
«»C:\Program Files (x86)\1cv82\8.2.18.109\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files (x86)\1cv82\srvinfo» -debug»
(18)хотя я ща на своей базе попробовал строку в таб часть записать, там и без ЗначениеВРеквизитФормы добавляет.
&НаСервере
Процедура Команда1НаСервере()
ТабЗнач = новый ТаблицаЗначений;
ТабЗнач.Колонки.Добавить("Реквизит1");
новаяСтрока = ТабЗнач.Добавить();
новаяСтрока.Реквизит1 = 123;
Объект.ТабличнаяЧасть1.Загрузить(ТабЗнач);
КонецПроцедуры
&НаКлиенте
Процедура Команда11(Команда)
Команда1НаСервере();
КонецПроцедуры
у вас выходит только Объект.ТаблицаСтроки.Загрузить(РезультатДляТЗ); стоит поменять
ну и да. надо посмотреть запрос данные то выводит
&НаСервере
Процедура Команда1НаСервере()
ТабЗнач = новый ТаблицаЗначений;
ТабЗнач.Колонки.Добавить("Реквизит1");
новаяСтрока = ТабЗнач.Добавить();
новаяСтрока.Реквизит1 = 123;
Объект.ТабличнаяЧасть1.Загрузить(ТабЗнач);
КонецПроцедуры
&НаКлиенте
Процедура Команда11(Команда)
Команда1НаСервере();
КонецПроцедуры
у вас выходит только Объект.ТаблицаСтроки.Загрузить(РезультатДляТЗ); стоит поменять
ну и да. надо посмотреть запрос данные то выводит
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот