Имя: Пароль:
1C
1С v8
отобрать по реквизиту с "Объект не найден" доки
, ,
0 godmod80
 
03.09.15
11:59
Братцы, не знаете как запрос написать чтоб отобрать по реквизиту с "Объект не найден" доки?
1 ЧеловекДуши
 
03.09.15
12:02
Просто

Функция ОбъектБДСуществует(ТестоваяСсылка) Экспорт

    МД = Метаданные.НайтиПоТипу(ТипЗнч(ТестоваяСсылка));
    ИмяОбъекта = МД.Имя;
    ПолноеИмяОбъекта = МД.ПолноеИмя();

    Запрос = новый Запрос();
    Запрос.Текст =
    "ВЫБРАТЬ
    |   ИСТИНА как НЕЧТО
    |ИЗ
    |   " + ПолноеИмяОбъекта + " КАК " + ИмяОбъекта + "
    |ГДЕ
    |   " + ИмяОбъекта + ".Ссылка = &Cсылка";
    Запрос.УстановитьПараметр("Cсылка", ТестоваяСсылка);
    РезультатЗапроса = Запрос.Выполнить();
    
    Возврат Не РезультатЗапроса.Пустой();

КонецФункции
2 Брегорьян
 
03.09.15
12:02
где док.номер есть NULL
3 ЧеловекДуши
 
03.09.15
12:03
+(0)  А дальше, уж сам разберешься, как все в одном запросе, по всем объектам накатать.

(2) Бред
4 Брегорьян
 
03.09.15
12:03
(3) точно?
5 ЧеловекДуши
 
03.09.15
12:03
+(2) Но тоже имеет право на жизнь.. :)
6 Irbis
 
03.09.15
12:04
ГДЕ Регистратор.Ссылка ЕСТЬ NULL И НЕ Регистратор = &ПустаяСсылкаДокумента
7 ЧеловекДуши
 
03.09.15
12:04
(4) Слишком просто. С такой долей вероятностью можно искать на любой реквизит, где связи не установлены :)
8 Брегорьян
 
03.09.15
12:07
(7) какие ещё связи?
(6) ну да, ссылка
9 godmod80
 
03.09.15
12:07
(1)Это что то не то, у меня в ТЧ Валюта "Объект не найден"
10 Брегорьян
 
03.09.15
12:08
(9) это ты так спросил
11 godmod80
 
03.09.15
12:10
надо отобрать документы где валюта есть "Объект не найден"
12 Irbis
 
03.09.15
12:11
(11) А какая в ..опу разница битый справочник или битый документ, если и там и там тип ссылочный
13 Брегорьян
 
03.09.15
12:11
(11) у этой валюты ссылка есть нулл. вперёд
14 Брегорьян
 
03.09.15
12:12
(13) если нет хитрых РЛС, конечно
15 ЧеловекДуши
 
03.09.15
12:25
(9) Если вы не осознаете, что там, то думается вы не понимаете и что ищете :)

(8) А таки связи, что Документ - это таблица. А не только некий набор метаданных :)
И если вы смотрите Регистр и не находите по ссылке Документ, то в запросе там будет всегда "Null". И неважно, номер вы сверяете или Ссылку :)
16 ЧеловекДуши
 
03.09.15
12:28
+(8) Только что понял, вы считаете, что элемент не существует, если вы обратитесь типо

Регистр.Такойто.РеквизитДокумент.Номер = Null ?

Таки этот метод вернет Null, если элемент не выбран. От туда и бред. :)
17 Брегорьян
 
03.09.15
12:28
(15) тут дело такое... ссылки для поиска нет
18 ЧеловекДуши
 
03.09.15
12:29
(17) Да все у него есть, у него нет понимания, что он работает с таблицами, а не с 2-ух мерной картинкой :)
19 Брегорьян
 
03.09.15
12:31
(16) если Регистр.Такойто.РеквизитДокумент ведёт в никуда, то Регистр.Такойто.РеквизитДокумент.<Сыслка|Номер> будет NULL
(18) такое впечатление, что мы осознанно хотим разного. в отличие от ТС, который не знает, чего хочет ;)
20 ЧеловекДуши
 
03.09.15
12:34
(19) Да ему надо просто на фоне Документа, установить связь с таблицей Валюта, не прыгать, как вы указали " Регистр.Такойто.РеквизитДокумент.Валюта.<Сыслка|Номер>"

И тогда простым условием получить только битые ссылки.
Добавив проверку, что бы не вошли в отбор "ПустаяСсылка"
21 ЧеловекДуши
 
03.09.15
12:34
+ или просто
Добавив проверку, что бы не вошли в отбор "ПустаяСсылка"
22 ЧеловекДуши
 
03.09.15
12:37
+(0) Для написание такого запроса у вас должна быть в распоряжении таблица, где будут записаны все необходимые ссылки на недостающий документ.
23 godmod80
 
03.09.15
13:00
(20) Надо отчет с документами с битой валютой, и всё пока) потом обработка
24 Брегорьян
 
03.09.15
13:02
(23) ещё не сделал?
25 Лефмихалыч
 
03.09.15
13:03
(1) ужас-ужас. Закрой пожалуйста конфигуратор. Навсегда
26 s03
 
03.09.15
13:05
(23) ну так как справочник Валюты (как правило) совсем небольшой, то можно и ....Валюта В (&МассивВалют), не забывая добавить в этот массив и пустое значение валюты
27 Лефмихалыч
 
03.09.15
13:05
(0) вот так:

ВЫБРАТЬ
ТЧ.Ссылка
ИЗ Документ.Реализация.Товары ТЧ
ГДЕ ТЧ.Валюта.Ссылка есть null
28 s03
 
03.09.15
13:06
(26) НЕ ...Валюта В (&МассивВалют)

исправляюсь ))
29 godmod80
 
03.09.15
13:26
(27) да примерно так только И НЕ непределено видимо...
этож не одно и тоже с битым реквизитом
30 godmod80
 
03.09.15
13:27
+ хотя остальное можно в экселе уже
31 Лефмихалыч
 
03.09.15
13:29
(29) если тип не составной, то НЕОПРЕДЕЛЕНО быть не может
32 godmod80
 
03.09.15
13:31
(31) ОК СПС
2 + 2 = 3.9999999999999999999999999999999...