|
Форма документа | ☑ | ||
---|---|---|---|---|
0
LoneWolf134
16.11.13
✎
15:01
|
Здраствуйте, мне на учёбе задали создать программу в 1с:8.2 "Электронная библиотека" . Я только начинающий программист в данной среде, поэтому прошу вас помощи в моей проблеме. У меня есть Документ "ВыдачаКниги", в котором я выбираю Читателя,книгу,которую он взял,количество,ДатаВзял и ДатаВозврата, провожу движение по данному документу в РегистрНакопления (остатки) "ДолжникиКниг" по реквизитам: Читатель,Книга,Автор. Также у меня есть документ "ВозвратКниги", в котором мне нужно сделать так, чтобы когда я выбирал Читателя (реквизит), у меня во всплывающем списке "Наименование" должны выходить именно те книги, которые числятся за данным Читателем. Мне дали подсказку, чтобы я сделал всё через ТаблицуЗначений, но я незнаю как мне сделать этот самый всплывающий список. В общем вот мой код:
&НаСервере Процедура ВыводДанных() Запрос = Новый Запрос; Запрос.Текст="ВЫБРАТЬ | ДолжникиКнигОстаткиИОбороты.Читатель, | ДолжникиКнигОстаткиИОбороты.Книга, | ДолжникиКнигОстаткиИОбороты.ЗадолженностьКонечныйОстаток КАК Задолженность, | ДолжникиКнигОстаткиИОбороты.Книга.Автор КАК Автор |ИЗ | РегистрНакопления.ДолжникиКниг.ОстаткиИОбороты КАК ДолжникиКнигОстаткиИОбороты"; Результат=Запрос.Выполнить(); Выборка=Результат.Выбрать(); ТабЗнач=Новый("ТаблицаЗначений"); ТабЗнач.Колонки.Добавить("Читатель"); ТабЗнач.Колонки.Добавить("Книга"); ТабЗнач.Колонки.Добавить("Автор"); Пока Выборка.Следующий() Цикл Читатель=Объект.Читатель; Читатель1=Выборка.Читатель; Книга=Выборка.Книга; Автор=Выборка.Автор; Отбор = Новый Структура(); Отбор.Вставить("Читатель",Читатель); Строки=ТабЗнач.НайтиСтроки(Отбор); Если Строки.Количество()>0 тогда Стр=ТабЗнач.Добавить(); Стр.Читатель=Читатель1; Стр.Книга=Книга; Стр.Автор=Автор; КонецЕсли; КонецЦикла; КонецПроцедуры &НаКлиенте Процедура ЧитательПриИзменении(Элемент) ВыводДанных(); КонецПроцедуры &НаКлиенте Процедура Возврат1НаименованиеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) // Вставить содержимое обработчика. КонецПроцедуры Вот я так понимаю, что мне надо именно в Процедуру "Возврат1НаименованиеНачалоВыбора" записать какой-то код по выгрузке данной таблицы значений. Помогите пожалуйста. |
|||
1
Поросенок Петр
16.11.13
✎
15:35
|
Блин, чувак, я тебе завидую.
|
|||
2
Поросенок Петр
16.11.13
✎
15:42
|
Даже хер знает чем тебе помочь. Единственно что толковым советом.
Тебе нужно редактировать информацию документа (а именно возращаемые книги) каким-то другим способом. Т.е. у тебя на форме будет нечто имитирующее часть документа. Когда такая херня происходит, это дело что у тебя на форме, надо читать в ПриЧтенииНаСервере или ПРиСОзданиии если объект новый. Перед записью, записывать. ХЗ толи я крепко пьян, толи на самом деле 3/4 форума не знает и таких истин. |
|||
3
Поросенок Петр
16.11.13
✎
15:46
|
И да, чувак, ник LoneWolf это гейство какое-то.
|
|||
4
LoneWolf134
16.11.13
✎
15:56
|
Помог :)
|
|||
5
av_x86
16.11.13
✎
16:14
|
Если я правильно понял то для всплывающего списка тебе нужна функция - ВыбратьИзСписка.
После того как ты выбрал читателя, переходишь в табличную часть документа и там выбираешь книги. Т.е функцию ВыбратьИзСписка привязываешь к столбцу наименование в ТЧ. |
|||
6
LoneWolf134
16.11.13
✎
16:57
|
(5) Я не могу привязать функцию к данному столбцу, т.к. таблица значений у меня находится на сервере. Можете подсказать как выгрузить её данные НаКлиент ?
|
|||
7
Поросенок Петр
16.11.13
✎
17:38
|
На клиенте бывает массив, у таблицы значений есть список методов описанный в СП, чо те не ясно?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |