|   |   | 
| 
 | Как программно проверить есть ли у регистратора "Подразделение"? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Miss1C 18.10.12✎ 18:32 | 
        При записи в регистр накопления нужно проверить, есть ли у регистратора "Подразделение", какие будут идеи?     | |||
| 1
    
        Wobland 18.10.12✎ 18:33 | 
        сказать "Уважаемые Метаданные!"     | |||
| 2
    
        Miss1C 18.10.12✎ 18:33 | 
        (1)А конкретно?)     | |||
| 3
    
        Wobland 18.10.12✎ 18:35 | 
        (2) реквизиты, найти... не буду сейчас синтаксически верно сочинять     | |||
| 4
    
        zak555 18.10.12✎ 18:36 | 
        если неопределено -- нет     | |||
| 5
    
        Miss1C 18.10.12✎ 18:36 | 
        Для каждого Реквизит Из ДокументСсылка.Метаданные().Реквизиты Цикл
  Сообщить(Реквизит.Представление()); КонецЦикла; Так что ли? | |||
| 6
    
        Господин ПЖ 18.10.12✎ 18:36 | 
        фото с каждым разом все интереснее     | |||
| 7
    
        Miss1C 18.10.12✎ 18:37 | 
        Этот способ и я знаю, быстрее есть что то?     | |||
| 8
    
        H A D G E H O G s 18.10.12✎ 18:37 | 
        (7) Нет     | |||
| 9
    
        H A D G E H O G s 18.10.12✎ 18:37 | 
        ДокументСсылка.Метаданные().Реквизиты.Найти("Подразделение")<>неопределено     | |||
| 10
    
        Wobland 18.10.12✎ 18:37 | 
        (3) вот врун...
  док=Документы.ВходящийЗвонок.НайтиПоНомеру(); док.Метаданные().Реквизиты.Найти("Опля") сравнить с Неопределеной | |||
| 11
    
        H A D G E H O G s 18.10.12✎ 18:38 | 
        Идите в фотомодели, девушка.     | |||
| 12
    
        zak555 18.10.12✎ 18:38 | 
        запрос ?     | |||
| 13
    
        Miss1C 18.10.12✎ 18:38 | 
        Так у меня много реквизитов в документе     | |||
| 14
    
        ЧашкаЧая 18.10.12✎ 18:38 | 
        ТипыРегистраторов = ТипыДокументов = НаборЗаписейРегистра.Метаданные().СтандартныеРеквизиты.Регистратор.Тип.Типы();
  ЕстьПодразделение = Истина; Для каждого ТипРегистратора из ТипыДокументов Цикл МетаданныеДокумента = Метаданные.НайтиПоТипу(ТипРегистратора); ЕстьПодразделение = МетаданныеДокумента.Реквизиты.Найти("Подразделение") <> Неопределено; Если НЕ ЕстьПодразделение Тогда Прервать; КонецЕсли; КонецЦикла; | |||
| 15
    
        Wobland 18.10.12✎ 18:38 | 
        (12) ну-ка, ну-ка     | |||
| 16
    
        H A D G E H O G s 18.10.12✎ 18:39 | 
        (13) И что?     | |||
| 17
    
        Miss1C 18.10.12✎ 18:39 | 
        (16)Скорость упадет     | |||
| 18
    
        Wobland 18.10.12✎ 18:39 | 
        (16) сейчас она перечитает (9) и (10)     | |||
| 19
    
        H A D G E H O G s 18.10.12✎ 18:40 | 
        (17) Задачу всю озвучьте.     | |||
| 20
    
        Miss1C 18.10.12✎ 18:41 | 
        На 9 останавливаюсь, спасибо за помощь     | |||
| 21
    
        Wobland 18.10.12✎ 18:42 | 
        (20) а как же (10)?     | |||
| 22
    
        Miss1C 18.10.12✎ 19:16 | 
        Для Каждого Стр Из Источник Цикл    
  НаборЗаписей = РегистрыНакопления.ПлатежныйБалансПодразделений.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Установить(Стр.Регистратор); Если Стр.ВидДвижения = ВидДвиженияНакопления.Приход Тогда Запись = НаборЗаписей.ДобавитьПриход(); ИначеЕсли Стр.ВидДвижения = ВидДвиженияНакопления.Расход Тогда Запись = НаборЗаписей.ДобавитьРасход(); КонецЕсли; Запись.Период = Стр.Регистратор.Дата; Запись.Регистратор = Стр.Регистратор; Запись.Сумма = Стр.Сумма; Если Стр.Регистратор.Метаданные().Реквизиты.Найти("Подразделение") <> Неопределено Тогда Запись.Подразделение = Стр.Регистратор.Подразделение; КонецЕсли; НаборЗаписей.Записать(); КонецЦикла; Расход не записывается, думаю дело в отборе по регистратору | |||
| 23
    
        Miss1C 18.10.12✎ 19:17 | 
        Можно добавить запись в регистр не делая отбора?     | |||
| 24
    
        Miss1C 18.10.12✎ 19:20 | 
        Рома помогай)     | |||
| 25
    
        Amra 18.10.12✎ 19:22 | 
        (24) Роме и зарплату за тебя получать?)))     | |||
| 26
    
        PR 18.10.12✎ 19:22 | 
        (23) Без отбора по регистратору нельзя :))     | |||
| 27
    
        Miss1C 18.10.12✎ 19:22 | 
        (25)Нет)     | |||
| 28
    
        ЧашкаЧая 18.10.12✎ 19:55 | 
        Подписка при записи набора записей регистра?
  КоличествоДвижений = Источник.Количество(); Для Индекс = 0 по КоличествоДвижений - 1 Цикл ЗаписьРегистра = Источник[Индекс]; НоваяЗапись = НаборЗаписей.Добавить(); НоваяЗапись.ВидДвижения = ЗаписьРегистра.ВидДвижения; НоваяЗапись.Период = ЗаписьРегистра.Период; //Запись.Регистратор = Стр.Регистратор; // регистратор не нужно т. к. он уже есть в отборе НоваяЗапись.Сумма = ЗаписьРегистра.Сумма; Если ЗаписьРегистра.Регистратор.Метаданные().Реквизиты.Найти("Подразделение") <> Неопределено Тогда НоваяЗапись.Подразделение = ЗаписьРегистра.Регистратор.Подразделение; КонецЕсли; КонецЦикла; | |||
| 29
    
        ThreeTONE 18.10.12✎ 19:55 | 
        попытка подразделение = регистратор.подразделение исключение конецпопытки     | |||
| 30
    
        ЧашкаЧая 18.10.12✎ 19:57 | 
        (29) Каждый раз когда при отладке включаю флажек "Останавливаться при ошибке" и вываливается ошибка в этой конструкции - вспоминаю писателей такого кода, потом вспоминаю что временами сам так пишу и успокаиваюсь.     | |||
| 31
    
        ThreeTONE 18.10.12✎ 20:05 | 
        (30) такое много где используется. каждый раз при такой отладке можно указывать строку в настройках ;)     | |||
| 32
    
        hhhh 18.10.12✎ 22:32 | 
        (31) а так не судьба сделать?
  Структ = Новый Структура("Подразделение"); ЗаполнитьЗначенияСвойств(Структ, ЗаписьРегистра.Регистратор); НоваяЗапись.Подразделение = Структ.Подразделение; | |||
| 33
    
        PR 19.10.12✎ 09:55 | 
        Какие ударные темпы по заведению веток на МиСте :))     | |||
| 34
    
        Фрэнки 19.10.12✎ 10:08 | 
        (29) в этом случае я обычно пишу так:
  попытка подразделение = регистратор.подразделение исключение подразделение = справочники.подразделение.пустаяссылка() конецпопытки и сверяюсь с настройками в регистре есть ли там запрет на незаполненные значения по этому измерению или нет. Если еще и запрет повешен, то какое-то непустое значение надо бы подставлять | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |