|
|
|
ссылки на объект (поиск ссылок на объект) | ☑ | ||
|---|---|---|---|---|
|
0
Samosval
04.09.06
✎
17:24
|
Есть ссылка на элемент справочника. Как найти ссылки на документы которые ссылаются на этот элемент справочника ? А еще лучше найти ВСЁ что ссылается на этот элемент справочника (движения к примеру).
К примеру как в УПП в договоре контрагента можно по "Перейти" посмотреть "все документы по договору" ... только там не будет дока "перерасчет вал. разниц" по моему ... |
|||
|
1
PR
04.09.06
✎
17:27
|
Читай ЖКК, неуч
|
|||
|
2
Samosval
04.09.06
✎
17:28
|
да читаю я ... в голове просто все неукладывается ..
|
|||
|
3
Samosval
04.09.06
✎
17:28
|
хотел в Найденных получить
//УдалитьОбъекты(ДоговорОбъект,Истина,Найденные); но что то не получилось, да и удалять мне не надо ;) пока ... |
|||
|
4
asady
04.09.06
✎
17:32
|
(0)
Глобальный контекст НайтиПоСсылкам (FindByRef) Синтаксис: НайтиПоСсылкам(<Список ссылок>) Параметры: <Список ссылок> (обязательный) Тип: Массив. Массив со списком ссылок на объекты, ссылки на которые нужно найти. Возвращаемое значение: Тип: ТаблицаЗначений. Возвращает ссылки на найденные объекты в виде ТаблицаЗначений, состоящей из колонок с индексами: 0 - искомая ссылка; 1 - ссылка на объект, если найденная ссылка соответствует объектной таблице или значение, идентифицирующее запись необъектной таблицы; 2 - объект метаданных, которому соответствуют данные, в которых найдена ссылка. Описание: Осуществляет поиск ссылок на объекты, переданные в параметре <Список ссылок>. Пример: Ссылки = НайтиПомеченныеНаУдаление(); ТабСсылок = НайтиПоСсылкам(Ссылки); Для Каждого Ссылка из ТабСсылок Цикл Сообщить ("" + СокрЛП(Ссылка[0]) + " " + СокрЛП(Ссылка[1])); КонецЦикла; |
|||
|
5
Shaytan
04.09.06
✎
17:32
|
Бежишь циклом по метаданным и формируешь текст запроса по объектам, в которых есть реквизиты с типом включающим ссылку на нужный справочник.
|
|||
|
6
Samosval
04.09.06
✎
17:36
|
(5) меня учили не пользоваться циклами а использовать запросы ;) я уже кое чего нарыл в типовой ...
// Функция проверяет, существуют ли ссылки на договор в движениях регистров накопления. // Если есть - нельзя менять: // - Валюту взаиморасчетов // - Ведение взаиморасчетов. // // Параметры: // Нет. // // Возвращаемое значение: // Истина - если есть движения, Ложь - если нет. // Функция СуществуютСсылки() Экспорт (4) хм ... дурная моя голова ... а как мне в массив поместить одну ссылку ... а то видно поэтому и не работает ... |
|||
|
7
Samosval
04.09.06
✎
17:37
|
то же , красиво :
Если КритерииОтбора.ДокументыПоДоговоруКонтрагента.Найти(Ссылка).Количество() > 0 Тогда |
|||
|
8
Lendy
04.09.06
✎
17:39
|
(7) не то, так не найдешь везде. Да и руками много работать надо. Смотри (4).
|
|||
|
9
Samosval
04.09.06
✎
17:42
|
как мне ссылку поместить в массив (она у меня одна)
|
|||
|
10
Samosval
04.09.06
✎
17:43
|
ВыборкаДоговоров это и есть ссылка на которую мне надо найти ссылки
|
|||
|
11
Samosval
04.09.06
✎
17:47
|
хммм...
Ссылки = Новый Массив; Ссылки.Очистить(); Ссылки.Добавить(ВыборкаДоговоров.Ссылка); ТабСсылок = НайтиПоСсылкам(Ссылки); Для Каждого Ссылка из ТабСсылок Цикл Сообщить ("" + СокрЛП(Ссылка[0]) + " " + СокрЛП(Ссылка[1])); КонецЦикла; //ДоговорОбъект.Наименование = "Не использовать !!!"; //ДоговорОбъект.Записать(); |
|||
|
12
Samosval
04.09.06
✎
17:57
|
офигеть ... как он медленно работает ... НайтиПоСсылкам(Ссылки);
но работает ... хотя не находит в регистрах как понял ссылки на этот объект ( он точно есть в переоценке валютных или суммовых разниц ... сейчас найду ...) |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |