v7: Глюк с периодическим реквизитом #649881


#0 by DrRaptor
Выдает ошибку: Если ПустоеЗначение(Документы.Получить(РабочаяДата))=0 Тогда {Справочник.Комиссии.Форма.Модуль}: Значение не представляет агрегатный объект (Получить) Нигде в тексте модуля формы нет "ИспользоватьДату". Реквизит "Документы" - это строка длиной 500, периодический (без галочки "изменяется документами") В чем дело? Подскажите, пожалуйста.
#0 by DrRaptor
Выдает ошибку: Если ПустоеЗначение(Документы.Получить(РабочаяДата))=0 Тогда {Справочник.Комиссии.Форма.Модуль}: Значение не представляет агрегатный объект (Получить) Нигде в тексте модуля формы нет "ИспользоватьДату". Реквизит "Документы" - это строка длиной 500, периодический (без галочки "изменяется документами") В чем дело? Подскажите, пожалуйста.
#1 by Надсмотрщик
Что открываешь?
#2 by dk
>Реквизит "Документы" - это строка длиной 500, периодический (без галочки "изменяется документами") красиво живете
#3 by Ёпрст
1sconst ужо поди слегка опух ? :)
#4 by Ёпрст
в коде есть Перем Документы; и привет
#5 by vinogradъ
между Процедура ПриОткрытии и Если ПустоеЗначение(Документы.Получить(РабочаяДата))=0 Тогда точно нет вызовов глобальных процедур, где могло быть ИспользоватьДату?
#6 by dk
поищи переменные с таким именем -- зайди отладчиком - какой типе / вид имеет Документы в приоткрытии
#7 by пипец
Реквизит "Документы" - это строка длиной 500, периодический (без галочки "изменяется документами") (c) упал и отполз ЗЫ за такое надо руки - кирдык
#8 by пипец
мож все таки 50 ?
#9 by DrRaptor
Не надо орать тут! как мне еще хранить список значений в справочнике, если реквизиту справочника нельзя присвоить тип СписокЗначений?
#10 by пипец
в документе в табличной части
#11 by Ёпрст
в подчиненном справочнике
#12 by пипец
реквизит периодический - тип документ - чо не понятного
#13 by DrRaptor
Это справочник!
#14 by Ёпрст
и че ?
#15 by Ёпрст
Подумай, что бы будешь делать, когда твой список не влезет в 500 символов и что ты на выходе поимеешь с кастрированного ЗначенияИзСтроки..
#16 by DrRaptor
Мне нужно хранить список типов документов, к которым относится этот элемент справочника.
#17 by Ёпрст
+ подумай за ссылочную целостность, ежели в этом списке - агрегатные типы данных.
#18 by пипец
не поверишь - можно при открытии справочника открывать документ
#19 by Надсмотрщик
Откуда такие "спецы" берутся? После таких ЛОПАТОЙ за год не разгребешь!   :-)
#20 by Privalov
ППЦ!!
#21 by zladenuw
зачем ? если можно запросом получить и вывести в Табличный документ
#22 by DrRaptor
Объясняю на пальцах: есть справочник видов комиссиий в этом справочнике прописывается метод начисления этой кломиссии, устанавливается перечень тарифов, к которым она относится, и перечень документов, в которых эта комиссия может списываться И все эти перечни должны хранить историю изменений.
#23 by DrRaptor
Предложите ваши варианты решения, если все такие умные
#24 by zladenuw
я за подчиненный справочник, а хотя можно и документ
#25 by Ёпрст
регистр
#26 by Ёпрст
хотя, можно и на справочнике
#27 by Ёпрст
без разницы.
#28 by пипец
тбе ж все рассказали - или подчиненный справочник у которого реквизит элемента - элемент из списка вариантов или документ как реквизит справочника с табличной частью
#29 by DrRaptor
Ну подчиненный документ более логично...
#30 by Надсмотрщик
Подчиненный справочник.
#31 by DrRaptor
Поменял на тип "Документ" - то же самое выдает. Не может получить/установить значение на дату. Че за хрень?
#32 by пипец
глЗаписьПериодическихРеквизитов(Контекст, Список);
#33 by Builder
Это все работает или ты только пишешь этот функционал?
#34 by DrRaptor
Пишу с нуля
#35 by Ёпрст
см.
#36 by DrRaptor
Переименовал в "Документы" в "Доксы" - то же самое
#37 by Boroda
А может сделать наоборот - создать в документах реквизит типа "Комиссия" с типом твоего справочника. И документ "знает" как начислять комиссию по этой ссылке.
#38 by DrRaptor
В документе и так есть такой реквизит - комиссия в документе предлагается к заполнению, но это не значит, что мы её обязательно заполним. И нужно комиссию докам назначать, а не наоборот.
#39 by DrRaptor
Не нужно менять мою логику - просто скажите почему периодический реквизит не берется. Такое в другом справочнике уже было - пришлось использовать .Значение и .ДатаЗнач - но это очень муторно.
#40 by DrRaptor
А может вообще запрещено обращаться из справочника к его реквизитам .Получить и .Установить ? Может их можно только при стороннем обращении к реквизиту использовать?
#41 by Ёпрст
Заремь весь код - усё будет работать. 1.Либо сделал Перем Документы в коде, 2. либо есть одноименная переменная в глобальнике 3. либо есть ИспользоватьДату Но нлицо - 1
#42 by Boroda
Тога сделай так:  :) Попытка
#43 by DrRaptor
см
#44 by Ёпрст
значит, п.3
#45 by DrRaptor
без Получить значение выдается, историю изменений показывает (соответственно реквизит действительно периодический)
#46 by Ёпрст
Хотя, тест на вшивость:
#47 by Ёпрст
Сообщить(метаданные.Справочник(Вид).Реквизит("Документы").периодический);
#48 by Ёпрст
Сообщить(метаданные.Справочник(Вид).Реквизит("Документы").Тип));
#49 by DrRaptor
ИспользоватьДату - имеет разве глобальное влияние? Если где-то в одном из метаденных прописано - то все, каюк?
#50 by Ёпрст
ты на (46-48) ответь
#51 by DrRaptor
#52 by Ёпрст
сообщить(ТипЗначенияСтр(Документы));
#53 by Ёпрст
всё это воткнуть перед Документы.Получить(РабочаяДата);
#54 by 1Сергей
>>Реквизит "Документы" - это строка длиной 500, периодический (без галочки "изменяется документами") Какая-то из черепашек врёт
#55 by DrRaptor
см
#56 by Ёпрст
На будет ответ ?
#57 by DrRaptor
ТипЗначенияСтр(Доксы) = "Документ"
#58 by Ёпрст
не верю.
#59 by Ёпрст
значит, есть использоватьДату в коде (ты её поди в глобальной проце вызываешь)
#60 by Ёпрст
или устанавливаешь через контекст открытой формы
#61 by DrRaptor
нет поиск ссылок не находит использоватьДату может есть какие-то галочки еще, которые влияют? может глобальные настройки какие-то в конфигураторе?
#62 by DrRaptor
Ну что? Нет мыслей?
#63 by Ёпрст
дай мд посмотреть
#64 by Ёпрст
Или кидай весь код модуля формы
#65 by DrRaptor
МД не дам а форма вот:
#66 by DrRaptor
только что это дает? - ошибка то уже на первой строчке алгоритма выскакивает
#67 by Ёпрст
вставляем, результаты в студию:
#68 by DrRaptor
Ответы системы в том же порядке: Документ 1 1
#69 by Ёпрст
и ? Ошибка то какая потом ?
#70 by DrRaptor
Если ПустоеЗначение(Доксы.Получить(ТекущаяДата))=0 Тогда {Справочник.Комиссии.Форма.Модуль}: Поле агрегатного объекта не обнаружено (Получить)
#71 by Ёпрст
где то ты врешь или не договариваешь дай мд
#72 by Ёпрст
+ вот это что ? Доксы.Установить(РабочаяДата,ЗначениеВСтроку(ТабЗнач)); зачет ага, в документы что-то устанавливать
#73 by Ёпрст
на форме поди, тоже есть Доксы ? :))
#74 by DrRaptor
- не понял в чем вопрос? - на форме нет Доксов, там СписокЗначений "ВфборДоков"
#75 by Ёпрст
Доксы - документ, откуда там Установить(РабочаяДата,ЗначениеВСтроку(ТабЗнач));  ?
#76 by Ёпрст
впрочем, как и бред с ТабЗнач = ЗначениеИзСтроки(Доксы.Получить(ТекущаяДата));
#77 by DrRaptor
Потому что сначала бал тип "Строка", да не важно это - я создал новый пустой справочник с одним реквизитом - то же самое
#78 by Ёпрст
Ты это.. где всё это пишешь то хоть ? в Форме элемента или в форме списка справочника ?
#79 by Ёпрст
Ну и наконец, последний тест Сообщить(Выбран);
#80 by Ёпрст
он так сказать, контрольный, в голову
#81 by фобка
"Ответы системы в том же порядке: Документ"
#82 by фобка
стопэ.. это строка или документ? он периодический точно?
#83 by DrRaptor
Не там мы копаем - есть какой то еще пунктик, который влияет на периодические реквизиты
#84 by DrRaptor
Я создал новый пустой справочник. Сделал один периодический реквизит "Доксы" типа "Строка" длиной 10. В форму диалога вставил алгоритм: При открытии ошибка: Доксы.Установить(ТекущаяДата,"Привет"); {Справочник.Проверка.Форма.Модуль}: Значение не представляет агрегатный объект (Установить)
#85 by sapphire
Доксы... Беггинсы...Моя прелесть (с)
#86 by DrRaptor
Ну нет там ничего больше! Форма новая чистая. Просто .Установить не работает.
#87 by Ёпрст
см. это ответ на и всю ветку целиком.
#88 by Ёпрст
если еще не понял - нет периодики у НЕ записанного элемента.
#89 by DrRaptor
тоже не работает
#90 by пипец
"Доксы" типа "Строка" длиной 10.  (с) за такое расстреливать нада - без права переписки
#91 by DrRaptor
- опять не понял. Что еще не так!!?? Напишите ваш правильный алгоритм. А то так и не помогли пока
#92 by viktor_vv
Самое прикольное, что в форме диалога справочника и для записанного не работает :). Спецом у себя проверил.
#93 by miki
+1
#94 by DrRaptor
- что мне делать то?
#95 by DrRaptor
может из формы справочника нельзя обращаться таким образом к реквизиту?
#96 by фобка
#97 by Ёпрст
#98 by viktor_vv
Вот так работает КонецПроцедуры
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С