Имя: Пароль:
1C
1С v8
Форма выбора записей из регистра для заполнения документа
,
0 Sinderlok
 
23.05.17
18:52
Здравствуйте. Прошу помочь с решением. Мне надо в срезе последних вынести записи из регистра сведений на форму выбора. Чтобы я потом мог выбрать одну из них для заполнения. Проблема в том что я не могу реализовать эту форму выбора. Форму списка легко, но как в ней выделить запись и её данными заполнить документ, хоть убейся, не пойму. Ведь форма списка позволяет только добавлять в себя, но никак не выбирать. Подскажите пожалуйста как это можно реализовать, желательно с небольшим примером.
1 Джинн
 
23.05.17
19:00
2 Sinderlok
 
23.05.17
19:03
Благодарю за ссылку, как раз то что нужно.)
3 Sinderlok
 
24.05.17
07:06
В общем возникла такая проблема, не могу открыть форму выбора.

Код формы выбора.
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
    ОповеститьОВыборе(ВыбраннаяСтрока);
    СтандартнаяОбработка = Ложь;
КонецПроцедуры


Код формы документа откуда я пытаюсь открыть форму выбора.

Процедура ДатаПриИзменении(Элемент)

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

Пытался двумя способами получить форму. При первом выводит:
Процедура или функция с указанным именем не определена (ПолучитьФорму)
При втором вообще ничего не происходит.
Что может быть не так?
4 Мимохожий Однако
 
24.05.17
07:14
Фрм=ПолучитьФорму("РегистрСведений.ПериодическийРасход.Форма.ФормаВыбор");  
Фрм=РегистрыСведений.ПериодическийРасход.ПолучитьФормуСписка("ФормаВыбора");
Почему две строки?
5 sFAQer
 
24.05.17
07:15
ОФ или УФ?
6 Мимохожий Однако
 
24.05.17
07:15
ДанныеКлюча = Новый Структура("Период, Валюта", Период, Валюта); Это в примере.
А у тебя?
7 sFAQer
 
24.05.17
07:17
(3) У тебя кошелёк и получатель местами перепутаны ключ и значение в структуре
8 sFAQer
 
24.05.17
07:19
(3) РегистрыСведений.ПериодическийРасход.ПолучитьФормуСписка("ФормаВыбора"); - Это что за бред? либо получай сразу форму выбора, либо просто получай форму и делай уточнение на конкретную форму...
9 Sinderlok
 
24.05.17
07:21
По поводу вызова формы я же написал. Писал 2мя способами, вот их и указал.
Я делаю из формы списка регистра форму выбора.
10 sFAQer
 
24.05.17
07:23
(9) Ты её скопировал? или ты "ФормаСписка" пытаешься вызвать по имени "ФормаВыбора" ?
11 Sinderlok
 
24.05.17
07:25
У моей формы списка имя "ФормаВыбор"
12 sFAQer
 
24.05.17
07:26
(11) РегистрыСведений.ПериодическийРасход.ПолучитьФормуСписка("ФормаВыбора");

Тогда что за форму ты пытаешься получить вот здесь? Если твоя форма "ФормаВыбор"
13 Sinderlok
 
24.05.17
07:27
Заметил уже, все равно даже при правильном названии, "ФормаВыбор", не вызывает, 0 реакции.
14 sFAQer
 
24.05.17
07:27
(13) А в отладчике что?
15 sFAQer
 
24.05.17
07:28
(13) И ты всё ещё не ответил, ОФ или УФ?
16 Sinderlok
 
24.05.17
07:35
Насет ОФ и УФ не знаю как их различают. Я Просто сделал стандартную форму списка и добавил возможность выбора. Как в статье.
В отладчике вообще ничего нету. Ставил точки на получить форму, открыть форму и на само событие.
С 1с работаю всего неделю, так что для меня это все в новинку.
17 sFAQer
 
24.05.17
07:37
(16) Обычные формы и Управляемые формы, управляемые выглядет более современно, обычные примерно как серый кирпич..
18 Мимохожий Однако
 
24.05.17
07:38
(16) Тогда скрин с экрана покажи. Но как запустить отладчик, рекомендую разобраться с самого начала. Сэкономишь уйму своего и чужого времени
19 Sinderlok
 
24.05.17
07:38
Управляемая. Сижу на 8.3
20 sFAQer
 
24.05.17
07:42
(19) Ничего у тебя не получится с ПолучитьФормуСписка, смотри в сторону ОткрытьФорму()
21 Sinderlok
 
24.05.17
07:44
Фрм=ОткрытьФорму("РегистрСведений.ПериодическийРасход.Форма.ФормаВыбор");

{Документ.ПериодическиеСписания.Форма.ФормаДокумента.Форма(16,8)}: Процедура или функция с указанным именем не определена (ОткрытьФорму)
    Фрм = <<?>>ОткрытьФорму("РегистрСведений.ПериодическийРасход.Форма.ФормаВыбор"); (Проверка: Сервер)
22 sFAQer
 
24.05.17
07:45
(21) Потому что формы нужно показывать &НаКлиенте что ты собрался серверной стойке показывать?
23 Sinderlok
 
24.05.17
07:49
Ох ты ж ешкин кот. Тогда надо вывести
Ключ=РегистрыСведений.ПериодическийРасход.СоздатьКлючЗаписи(ДанныеКлюча);  
ругается что на клиенте.
Спасибо всем, буду дальше грызть 1С.)
24 sFAQer
 
24.05.17
07:56
(23) Удачи)
25 1dvd
 
24.05.17
07:59
у строки РС нет ссылки, её нельзя выбрать
26 sFAQer
 
24.05.17
08:02
(25) Как связано отсутсвие ссылки и возможность выбора строки?
27 1dvd
 
24.05.17
08:03
(26) что вернет по-твоему форма выбора?
28 sFAQer
 
24.05.17
08:04
(27) РегистрСведенийЗапись очевидно
29 1dvd
 
24.05.17
08:06
(28) это мутабельное значение
30 sFAQer
 
24.05.17
08:07
(29) Возращяемое значение вещь определяемая, что разработчик скажет вернуть в оповещении то и вернётся. Как это всё связано с тем что я не могу выбрать строчку РСа на форме?)
31 1dvd
 
24.05.17
08:08
(30) ок, создай на форме поле с типом РегистрСведенийЗапись, и выбери туд чего-нибудь. Я подожду
32 sFAQer
 
24.05.17
08:09
(31) А зачем мне это надо делать? Я не предлагаю тебе на форме запись размещять. Я тебя спрашиваю почему я не могу строку РС на форме выбрать? Мне что запрещяет по твоему?
33 sFAQer
 
24.05.17
08:11
(31) Например УПП, или УТ 10.3 адрес доставки в документах РТиУ, нормально выбирают из РСа, возвращяется представление. Проблемы то какие?
34 1dvd
 
24.05.17
08:15
(32) (33) Конечно, можно сделать что угодно. Но, это не будет ФормаВыбора в понятиях 1С
35 sFAQer
 
24.05.17
08:15
(34) Почему? Каковы понятия 1С в твоём понимании?
36 1dvd
 
24.05.17
08:18
Ошибка? Это не ошибка, это системная функция.