|   |   | 
| 
 | Форма документа | ☑ | ||
|---|---|---|---|---|
| 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 | 
        На клиенте бывает массив, у таблицы значений есть список методов описанный в СП, чо те не ясно?     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |