|
Заполнение документа из тч справочника | ☑ | ||
---|---|---|---|---|
0
anonymus
11.06.15
✎
15:07
|
&НаСервере
Процедура ПолучитьПродукты(Выборка) Выборка=Справочники.Блюда.Выбрать(); Пока Выборка.Следующий() Цикл НоваяСтрока = Объект.Список.Добавить(); НоваяСтрока.Наименование = Выборка.Наименование; НоваяСтрока.Норма_кг = Выборка.Норма_кг; КонецЦикла; КонецПроцедуры &НаКлиенте Процедура НаименованиеБлюдаПриИзменении(Элемент) СтрокаТабличнойЧасти=Элементы.Список.ТекущиеДанные; ПолучитьПродукты(Элементы.Список.текущиеДанные); КонецПроцедуры Такая ситуация есть справочник Блюда с тчСписок в ней Продукт и Норма_кг есть докКалькуляционнаяКарточка с тчСписок в ней Наименование, Норма_кг, Цена, Сумма и реквизит НаимБлюда писал читал ничего не получается подскажите в чем ошибка? |
|||
1
VikingKosmo
11.06.15
✎
15:09
|
Ошибка в
&НаКлиенте Процедура НаименованиеБлюдаПриИзменении(Элемент) КонецПроцедуры |
|||
2
anonymus
11.06.15
✎
15:09
|
(1) не правильно процедуру вызвал?
|
|||
3
vicof
11.06.15
✎
15:10
|
Элементы.Список.текущиеДанные не является выборкой
|
|||
4
VikingKosmo
11.06.15
✎
15:11
|
(2) ошибка в том, что в обоих процедурах твориться... Я лично нифига не понял, что должно получиться
|
|||
5
Fish
11.06.15
✎
15:11
|
(0) Это ад какой-то :)
|
|||
6
VikingKosmo
11.06.15
✎
15:11
|
(5) кровавый...
|
|||
7
vicof
11.06.15
✎
15:11
|
кашу прожуй, объясни, что надо сделать?
|
|||
8
anonymus
11.06.15
✎
15:16
|
(7) при выборе блюда автоматом проставлялось продукты и норма из спр
|
|||
9
VikingKosmo
11.06.15
✎
15:17
|
(8) разница между элементом формы и реквизитом объекта тебе о чем то говорит?
|
|||
10
anonymus
11.06.15
✎
15:17
|
(9) в общем да а что
|
|||
11
VikingKosmo
11.06.15
✎
15:18
|
(10) если понятна, тогда попробуй осмыслить свой код в (0)
|
|||
12
vicof
11.06.15
✎
15:18
|
(10) РеквизитФормыВЗначение и обратно
|
|||
13
Fish
11.06.15
✎
15:21
|
(11) Я вот всё пытаюсь понять, какой сакральный смысл заложил ТС в код, передавая в процедуру ПолучитьПродукты() Элементы.Список.ТекущиеДанные, когда первой же строкой в этой процедуре он этот параметр меняет на:
Выборка=Справочники.Блюда.Выбрать(); |
|||
14
VikingKosmo
11.06.15
✎
15:22
|
(13) завидую твоей любознательности, потому что у меня код ТСа вызывает только аццкое несварение :)
|
|||
15
samozvanec
11.06.15
✎
15:24
|
"писал читал ничего не получается" эта5)
|
|||
16
samozvanec
11.06.15
✎
15:26
|
(0) а почему выбираешь блюда, при чем все, если хочешь посмотреть продукты определенного?
|
|||
17
Fish
11.06.15
✎
15:29
|
(16) Видимо, потому что (15).
|
|||
18
samozvanec
11.06.15
✎
15:30
|
(0) попробуй так
&НаКлиенте Процедура НаименованиеБлюдаПриИзменении(Элемент) ПриИзмененииНаименованиеБлюда(Элемент.Значение); КонецПроцедуры &НаСервере Процедура ПриИзмененииНаименованиеБлюда(СамоБлюдо) Список.Загрузить(СамоБлюдо.ИмяТЧСправочникаБлюдВКоторойСписокПродуктов.Выгрузить()); КонецПроцедуры |
|||
19
VikingKosmo
11.06.15
✎
15:32
|
(18) ну и зачем людей учить такому?
|
|||
20
anonymus
11.06.15
✎
15:37
|
&НаСервере
Процедура ПолучитьПродукты() Результат=Справочники.Блюда.Выбрать(); Пока Результат.Следующий() Цикл НоваяСтрока = Объект.Список.Добавить(); //НоваяСтрока.Список.Наименование = Результат.Продукт; //НоваяСтрока.Список.Норма_кг = Результат.Норма_кг; ЗаполнитьЗначенияСвойств(Объект.Список, Результат); КонецЦикла; КонецПроцедуры &НаКлиенте Процедура НаименованиеБлюдаПриИзменении(Элемент) СтрокаТабличнойЧасти=Элементы.Список.ТекущиеДанные; ПолучитьПродукты(); КонецПроцедуры при выборе выводит 6 пустых строк |
|||
21
VikingKosmo
11.06.15
✎
15:48
|
(20) а отбор ты ставить не пытался?
|
|||
22
anonymus
11.06.15
✎
15:51
|
попробовал запросом только он все выводит
&НаСервере Процедура ЗаполнитьНаСервере() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | БлюдаСписок.Продукт КАК Наименование, | БлюдаСписок.Норма_кг КАК Норма_кг |ИЗ | Справочник.Блюда.Список КАК БлюдаСписок"; Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл НоваяСтрока = Объект.Список.Добавить(); НоваяСтрока.Наименование = Выборка.Наименование; КонецЦикла; КонецПроцедуры &НаКлиенте Процедура НаименованиеБлюдаПриИзменении(Элемент) СтрокаТабличнойЧасти=Элементы.Список.ТекущиеДанные; ЗаполнитьНаСервере(); КонецПроцедуры |
|||
23
VikingKosmo
11.06.15
✎
15:53
|
(22) установить отбор в запросе, будь мужиком!!!
|
|||
24
samozvanec
11.06.15
✎
15:56
|
(19) какому?
|
|||
25
anonymus
11.06.15
✎
15:56
|
(23) а как отбор то составить если выбор разный? или я что то уже туплю
|
|||
26
samozvanec
11.06.15
✎
15:59
|
(20) поясни, пожалуйста, построчно, что, по-твоему, происходит при выполнении
Результат=Справочники.Блюда.Выбрать(); Пока Результат.Следующий() Цикл НоваяСтрока = Объект.Список.Добавить(); //НоваяСтрока.Список.Наименование = Результат.Продукт; //НоваяСтрока.Список.Норма_кг = Результат.Норма_кг; ЗаполнитьЗначенияСвойств(Объект.Список, Результат); КонецЦикла; |
|||
27
anonymus
11.06.15
✎
16:02
|
переменной результат путь поиска спр
цикл по спр добавляем строку в тч список комент комент заполняем значения свойст приемник список источник конец |
|||
28
Fish
11.06.15
✎
16:03
|
(27) Это что такое? "переменной результат путь поиска спр "
|
|||
29
samozvanec
11.06.15
✎
16:03
|
(27) молодец. у тебя раньше в эту процедуру передавался параметр. зачем?
(28) сегодня день наркомана на мисте) |
|||
30
Redkiy
11.06.15
✎
16:05
|
(26) Научите его лучше отладчиком пользоваться.
Парень видать три дня назад конфигуратор 1С увидел, как залогинился на мисте... |
|||
31
ВРедная
11.06.15
✎
16:07
|
(30) Учитывая разнообразность его задач, его походу кто-то пытается учить...
Хочется верить, что это не реальные задачи живых пользователей, потому что их было бы очень жалко |
|||
32
samozvanec
11.06.15
✎
16:08
|
(30) рановато пока отладчик. ему бы понять, что он делает, и сопоставить с желаемым результатом
|
|||
33
anonymus
11.06.15
✎
16:13
|
(29) ну чтобы процедура выводила этот параметр
|
|||
34
samozvanec
11.06.15
✎
16:14
|
(27) ЗаполнитьЗначенияСвойств(Объект.Список, Результат);
и вот над этой строкой подумай. что у тебя в Результат, и чего ты хочешь увидеть в Объект.список. и вообще что там должно быть написано вместо объект.список |
|||
35
ВРедная
11.06.15
✎
16:14
|
(33) и где ты его там используешь в этой процедуре?
|
|||
36
samozvanec
11.06.15
✎
16:14
|
(33) что в параметре должно было быть согласно твоим планам?
|
|||
37
samozvanec
11.06.15
✎
16:25
|
я уже 20 минут как должен был выйти с работы, поэтому давай так.
ты хочешь вывести в Объект.Список список продуктов выбранного блюда. блюдо выбрали, при изменении заполняешь список. параметр здесь на самом деле не нужен, из серверной процедуры ты можешь обращаться к полю НаименованиеБлюда так же, как списку. у элемента справочника есть табличная часть, из которой ты хочешь заполнить список на форме. фактически тебе нужно загрузить данные ТЧ выбранного на форме элемента справочника Блюда в Объект.Список. посмотри внимательнее, все намного проще. ты путаешь элемен справочника и его ТЧ |
|||
38
anonymus
11.06.15
✎
16:27
|
(37) всмысле путаю в запросе указываю тч список из нее выбираю что нужно и циклом заполняю
|
|||
39
anonymus
11.06.15
✎
16:28
|
выше пписали отбор нужен но пока что ни как не дойду
|
|||
40
Mankubus
11.06.15
✎
16:36
|
(22) "ВЫБРАТЬ
| БлюдаСписок.Продукт КАК Наименование, | БлюдаСписок.Норма_кг КАК Норма_кг |ИЗ | Справочник.Блюда.Список КАК БлюдаСписок |ГДЕ БлюдаСписок.Ссылка = &МоёБлюдо"; Запрос.УстановитьПараметр("МоёБлюдо",ТекущееБлюдо) |
|||
41
anonymus
11.06.15
✎
16:46
|
(40) а потом условием делать
если НаимБлюда= Моеблюдо то цикл да? |
|||
42
Redkiy
11.06.15
✎
16:49
|
Думай: если сделан отбор из выборки данных, нужно ли использовать условие на эту выборку?
|
|||
43
anonymus
11.06.15
✎
16:52
|
(42) а почему всегда когда параметр устанавливаю ошибка что тип не задан7
|
|||
44
Redkiy
11.06.15
✎
16:54
|
как ты устанавливаешь параметр?
|
|||
45
vicof
11.06.15
✎
16:57
|
(43) ,,,,,, - держи, пригодятся
|
|||
46
anonymus
11.06.15
✎
16:58
|
|ГДЕ
| БлюдаСписок.Ссылка = &МоеБлюдо"; Запрос.УстановитьПараметр("МоеБлюдо", МоеБлюдо); |
|||
47
GROOVY
11.06.15
✎
17:02
|
В предыдущих сериях: http://www.forum.mista.ru/index.php?user_id=103248
|
|||
48
Redkiy
11.06.15
✎
17:03
|
параметр запроса "МоеБлюдо" должно иметь тип данных "СправочникСсылка.Блюда"
что у тебя в переменной МоеБлюдо? |
|||
49
Redkiy
11.06.15
✎
17:04
|
(47) Да Паша, я видел...
бездельничаю у компа... |
|||
50
GROOVY
11.06.15
✎
17:05
|
(49) Думаю на (48) он тебе не ответит.
|
|||
51
anonymus
11.06.15
✎
17:09
|
(48) тк я не оч понимаю я не могу ответить(
|
|||
52
anonymus
11.06.15
✎
17:09
|
(50) а ты вместо того чтобы тыкать лучше бы помог
|
|||
53
vicof
11.06.15
✎
17:12
|
(52) Скачать курсы для начинающих по 1ске от того же GROOVY религия не позволяет?
|
|||
54
ВРедная
11.06.15
✎
17:12
|
(52) тебе уже помогли. теперь сам себе помоги - начни учиться, а не задачи решать, которые тебе совсем не по зубам
|
|||
55
GROOVY
11.06.15
✎
17:18
|
(52) Равина, а ты бы пошла бы да поучилась. Нельзя водить машину не выучив ПДД, опасно это.
|
|||
56
anonymus
11.06.15
✎
17:53
|
я Читал Е. Ю. Хрусталева
Язык запросов «1С:Предприятия 8» |
|||
57
anonymus
11.06.15
✎
17:54
|
прошу помощи помоч мне
|
|||
58
anonymus
11.06.15
✎
17:54
|
а вы все только вот не понимает
|
|||
59
anonymus
12.06.15
✎
09:58
|
вот посмотрите кто понимает и скажите что нужно передать в процедуру
&НаСервере Процедура ЗаполнитьНаСервере(МоеБлюдо) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | БлюдаСписок.Продукт КАК Наименование, | БлюдаСписок.Норма_кг КАК Норма_кг |ИЗ | Справочник.Блюда.Список КАК БлюдаСписок |ГДЕ | БлюдаСписок.Ссылка = &МоеБлюдо"; Запрос.УстановитьПараметр("МоеБлюдо", МоеБлюдо); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл НоваяСтрока = Объект.Список.Добавить(); НоваяСтрока.Наименование = Выборка.Наименование; НоваяСтрока.Норма_кг = Выборка.Норма_кг; КонецЦикла; // Список=Справочники.Блюда.ПолучитьОбъект(); // Список.Загрузить(Выборка.Список.Выгрузить()); КонецПроцедуры &НаКлиенте Процедура НаименованиеБлюдаПриИзменении(Элемент) СтрокаТабличнойЧасти=Элементы.Список.ТекущиеДанные; ЗаполнитьНаСервере("Наименование"); КонецПроцедуры сейчас при выборе ничего только наимблюда заполняется тк его выбираеш |
|||
60
anonymus
12.06.15
✎
09:58
|
пробовал по разному обращатся к наименование толку ноль
|
|||
61
hhhh
12.06.15
✎
10:05
|
ЗаполнитьНаСервере(СтрокаТабличнойЧасти.ИмяРеквизитаГдеХранитсяСсылкаИзСправочникаБлюд);
|
|||
62
anonymus
12.06.15
✎
22:35
|
(61) проблема решилась сама собой Объект.НаименованиеБлюда
|
|||
63
anonymus
12.06.15
✎
22:36
|
еще вопросик как организовать заполнение цены из регистра при выборе?,
|
|||
64
anonymus
12.06.15
✎
22:38
|
проблема регилась сама собой всем спасибо)
кому интересно вот код &НаСервере Процедура ЗаполнитьНаСервере(МоеБлюдо) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | БлюдаСписок.Продукт КАК Наименование, | БлюдаСписок.Норма_кг КАК Норма_кг |ИЗ | Справочник.Блюда.Список КАК БлюдаСписок |ГДЕ | БлюдаСписок.Ссылка = &МоеБлюдо"; Запрос.УстановитьПараметр("МоеБлюдо", МоеБлюдо); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл НоваяСтрока = Объект.Список.Добавить(); НоваяСтрока.Наименование = Выборка.Наименование; НоваяСтрока.Норма_кг = Выборка.Норма_кг; НоваяСтрока.Цена = РаботаСоСправочниками.РозничнаяЦена (Объект.Дата,Выборка.Наименование); КонецЦикла; КонецПроцедуры &НаКлиенте Процедура НаименованиеБлюдаПриИзменении(Элемент) СтрокаТабличнойЧасти=Элементы.Список.ТекущиеДанные; ЗаполнитьНаСервере(Объект.НаименованиеБлюда); КонецПроцедуры |
|||
65
anonymus
13.06.15
✎
19:09
|
к примеру как сделать так чтобы вдокумент попали все записи номенклатуры и норма_кг
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |