Имя: Пароль:
1C
1С v8
Помогите с программным заполнение общей формы.
0 SkillUp
 
07.12.18
15:57
В интернете пример:

&НаКлиенте
Процедура Команда(Команда)

Форма = ПолучитьФорму("Документ.НашДокумент.ФормаОбъекта");
ДанныеФормы = Форма.Объект; // Получаем объект формы в переменную
ЗаполнитьДокументНаСервере(ДанныеФормы); // Заполняем документ на сервере
КопироватьДанныеФормы(ДанныеФормы, Форма.Объект); // копируем наш объект в объект формы и далее открываем ее
Форма.Открыть();

КонецПроцедуры


У меня общая форма, и "Форма.Объект;" у меня нету... Если можно, пример программного заполнения общей формы...
1 SkillUp
 
07.12.18
16:00
Или создавать объект,с формой? И к нему обращаться?
2 runoff_runoff
 
07.12.18
16:01
парадигма заключается том, что форма не заполняется извне, а открывается с параметрами..
3 SkillUp
 
07.12.18
16:03
(2) Короче, легче создать объект с формой...
4 runoff_runoff
 
07.12.18
16:05
на самом деле сначала надо ответить на вопрос "что в итоге".. хотим создать новый документ и сразу заполнить некоторые реквизиты?..
5 SkillUp
 
07.12.18
16:07
(4) В виде информации вывести данные на экран пользователю, и все...
6 SkillUp
 
07.12.18
16:09
(4) Короч., создаю форму объекта с нужными данными и вывожу пользователю на экран...
7 Мыш
 
07.12.18
16:11
(6) Какого именно объекта?
8 SkillUp
 
07.12.18
16:13
(7) Блин, короче пишу что надо выполнить:
9 SkillUp
 
07.12.18
16:15
(7) По двойному клику из списка номенклатуры (по элементу), надо выводить на экран: 1) эту номенклатуру 2) Все характеристики 3). Цену По номенкл и характеристике:

Визуально вижу это так:

Тапочки зел  - 100руб.
Тапочки син. -150 руб.
10 SkillUp
 
07.12.18
16:17
упр. приложение!
11 runoff_runoff
 
07.12.18
16:17
(9) т.е. вижу форму:
- сверху поле Номенклатура
- снизу таблица из двух колонок: Характеристика и Цена
12 SkillUp
 
07.12.18
16:18
Вот думал ,создать общую форму. Получать и программно заполнять. Но, не тут-то было...
13 SkillUp
 
07.12.18
16:18
(11) Или так!
14 SkillUp
 
07.12.18
16:19
Есть варианты, как легче всего такое провернуть?
15 RomanYS
 
07.12.18
16:20
&НаКлиенте
Процедура Команда1(Команда)
    Форма = ОткрытьФорму("ОбщаяФорма.Форма");
    Форма.Реквизит1 = "тест";
КонецПроцедуры
16 runoff_runoff
 
07.12.18
16:21
(13) открываем форму с параметром Номенклатура
ПриСозданииНаСервере верхнее поле ввода Номенклатура вызываем метод ЗаполнитьХарактеристикиИЦены(), который заполнит нижнюю таблицу
еще делаем событие НоменклатураПриИзменении, где вызываем тот же серверный метод заполнения
17 Мыш
 
07.12.18
16:21
Цитирую синтакс-помощник:

П = Новый Структура("Ключ", Поставщик);
Форма = ПолучитьФорму("Справочник.Контрагенты.ФормаОбъекта", П);
Форма.Открыть();
18 ssh2006
 
07.12.18
16:23
(14) делай как в (16)
19 SkillUp
 
07.12.18
16:24
(15) (16) (17)  Спасибо!
20 SkillUp
 
07.12.18
16:25
(16) Да, вариант хороший...
21 runoff_runoff
 
07.12.18
16:26
можно упростить: поле ввода Номенклатура не нужно.. присоздании на сервере сразу заполняем таблицу и все.. всё статично..
22 ssh2006
 
07.12.18
16:38
Можно еще в дин список выводить - в запросе его все получать. А параметр номенклатуры установить в при создании на сервере из переданного в открытьформу
23 runoff_runoff
 
07.12.18
16:41
(22) да, динамический список регистра сведений ЦеныНоменклатуры
24 runoff_runoff
 
07.12.18
16:42
(23) сделать его основным реквизитом формы, а форму открывать с параметром Отбор (по номенклатуре).. тогда даже при создании делать не нужно.. вообще никакого кода не нужно
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn