|
Вывод документов Основания в Форму списка | ☑ | ||
---|---|---|---|---|
0
borzay999
18.07.12
✎
08:18
|
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
дкСписокВыбор(ЭтаФорма, Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка); Если Колонка.Имя = "ПрихРасхДок" Тогда СтандартнаяОбработка = Ложь; СписокМеню = дкПолучитьСписокСвязныхДокументов(ВыбраннаяСтрока); Для Каждого СтрМеню Из СписокМеню Цикл Если СтрМеню.Значение.Проведен Тогда СтрМеню.Картинка = БиблиотекаКартинок.ДокументПроведен; Иначе СтрМеню.Картинка = БиблиотекаКартинок.ДокументНеПроведен; КонецЕсли; КонецЦикла; Если СписокМеню.Количество() > 0 Тогда Если СписокМеню.Количество() = 1 Тогда ВыбранныйДокумент = СписокМеню[0]; Иначе ВыбранныйДокумент = ВыбратьИзМеню(СписокМеню); КонецЕсли; Если НЕ ВыбранныйДокумент = Неопределено Тогда ВыбранныйДокумент.Значение.ПолучитьФорму().Открыть(); КонецЕсли; КонецЕсли; КонецЕсли; КонецПроцедуры Процедура СписокПриПолученииДанных(Элемент, ОформленияСтрок) Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл дкСписокПриВыводеСтроки(ЭтаФорма, Элемент, ОформлениеСтроки, ОформлениеСтроки.ДанныеСтроки); СписокСвязныхДокументов = дкПолучитьСписокСвязныхДокументов(ОформлениеСтроки.ДанныеСтроки); //Если ТипЗнч("ЗаказПокупателя") = Тип("ДокументСсылка.ЗаказПокупателя") тогда Если СписокСвязныхДокументов.Количество() > 0 Тогда //ОформлениеСтроки.ЦветФона = WebЦвета.Аквамарин ; СтрокаПредставленияДокументов = ""; Для Каждого СтрДокумент Из СписокСвязныхДокументов Цикл // Если ТипЗнч("ЗаказПокупателя") тогда СтрокаПредставленияДокументов = СтрокаПредставленияДокументов + Строка(СтрДокумент.Значение)+"; "; //конецЕсли; КонецЦикла; СтрокаПредставленияДокументов = Лев(СтрокаПредставленияДокументов, СтрДлина(СтрокаПредставленияДокументов)-2); ОформлениеСтроки.Ячейки.ПрихРасхДок.УстановитьТекст(СтрокаПредставленияДокументов); ЕстьПроведенные = Ложь; Для Каждого СтрДокумент Из СписокСвязныхДокументов Цикл Если СтрДокумент.Значение.Проведен Тогда ЕстьПроведенные = Истина; Прервать; КонецЕсли; КонецЦикла; // ОформлениеСтроки.Ячейки.ПрихРасхДок.ИндексКартинки = ?(ЕстьПроведенные,13,12); ОформлениеСтроки.Ячейки.ПрихРасхДок.ОтображатьКартинку = Истина; КонецЕсли; // КонецЕсли; КонецЦикла; КонецПроцедуры //СписокПриПолученииДанных() есть две процедуры, с помошью которых мы выводим в колонку даные о связных документах, мне нужно сделать так, что бы не все документы отобрадались в данном списке, например, не отображался документ заявкаНаРемонт, куда лучшее это вставить |
|||
1
Zmich
18.07.12
✎
08:29
|
(0).
дкПолучитьСписокСвязныхДокументов() - тут надо подкорректировать, вставить сравнение на вид документа. Ну или, если не хочется править эту процедуру, удалить ненужные документы уже после получения списка. |
|||
2
borzay999
18.07.12
✎
08:46
|
они все нужны
документы, каким лучше образом править, я хотела сделать отбор по Если, что то не работает |
|||
3
borzay999
18.07.12
✎
08:49
|
(1) у меня эта процедура используется в очень большом количестве, и для разных документах, мне ее править нельзя, отбор по видам документа может присутствовать только в этих процедурах
|
|||
4
borzay999
18.07.12
✎
08:53
|
Если ТипЗнч(ЗаказПокупателя) = Тип("ДокументСсылка.ЗаказПокупателя") тогда
что-нибудь подобное вставить? |
|||
5
Zmich
18.07.12
✎
08:56
|
(4). Или так:
Если Док.Метаданные().Имя = "ЗаказПокупателя" Тогда ... |
|||
6
borzay999
18.07.12
✎
08:58
|
и куда это лучше всавить ,мне этот документ в списке документов нужен на первом месте?
|
|||
7
Zmich
18.07.12
✎
09:05
|
СписокМеню = дкПолучитьСписокСвязныхДокументов(ВыбраннаяСтрока);
Индекс = СписокМеню.Количество() - 1; Пока Индекс >= 0 Цикл Если СписокМеню[Индекс].Значение.Метаданные().Имя = "ЗаказПокупателя" Тогда СписокМеню.Удалить(Индекс); КонецЕсли; Индекс = Индекс - 1; КонецЦикла; |
|||
8
borzay999
20.07.12
✎
05:41
|
(7) при вставке данного текста в процедуру, он просто удаляет данный документ из списка, а вот надпись в колонке оставляет, т.к вторая поцедура заново проверяет список документов, как убрать надпись из колонки???
|
|||
9
borzay999
20.07.12
✎
05:53
|
разрешила проблему, ураааа!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |