Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Некорректная работа с динамическими атрибутами (число прочтений - 2692 )
lustin
1c++ power user
Отсутствует


1C *.*, ROR, Java - на
этом остановимся

Сообщений: 907
Местоположение: Москва
Зарегистрирован: 20. Октября 2006
Пол: Мужской
Некорректная работа с динамическими атрибутами
05. Марта 2008 :: 09:03
Печать  
По мотивам http://www.1cpp.ru/forum/YaBB.pl?num=1179987806/15 а также а также собственных изысканий

1. В случае если в модуле классе имеется определенное свойство - статическое

и определены в модуле класса функций работы с динамическими свойствами
_ПриЧтенииСвойства и _ПриЗаписиСвойства

попытка обращения к статическому полю классу вызывает процедуру _ПриЧтенииСвойства
которая вроде как предназначена для работы с динамическими

2.
Если в модуле класса определить и реализовать также функции _ПолучитьКолвоДСвойств и _ПолучитьИмяДСвойства, то Информатор дял экземплара этого класса вернет таблицу ДИНАМИЧЕСКИх свойств а про статические забывает

также что самоме интересное - вход в процедуры _ПолучитьКолвоДСвойств и _ПолучитьИмяДСвойства будет осуществлен 2 раза в каждую процедуру

3. Даже если для статического атрибута определить процедуры OnRead_ и OnWrite - вызов этих процедур не произойдет при наличии процедур работа с динамическими

Тестовую конфигурацию прилагаю прилагаю
  

TestOfDynamicField.zip ( 10 KB | Загрузки )

бизнес-процесс как техническое задание прекрасно, только у бизнеса нет процессов; у бизнеса есть желание выжить
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
lustin
1c++ power user
Отсутствует


1C *.*, ROR, Java - на
этом остановимся

Сообщений: 907
Местоположение: Москва
Зарегистрирован: 20. Октября 2006
Пол: Мужской
Re: Некорректная работа с динамическими атрибутами
Ответ #1 - 05. Марта 2008 :: 09:06
Печать  
дополнитеьнос зарегистрировал в качестве ошибки
http://www.1cpp.ru/bugs/show_bug.cgi?id=3606
  

бизнес-процесс как техническое задание прекрасно, только у бизнеса нет процессов; у бизнеса есть желание выжить
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Некорректная работа с динамическими атрибутами
Ответ #2 - 05. Марта 2008 :: 09:43
Печать  
Ошибка уже зарегистрирована:
http://www.1cpp.ru/bugs/show_bug.cgi?id=3592

и тема на которую ты ссылаешся возникла из этой
http://www.1cpp.ru/forum/YaBB.pl?num=1204204226
  
Наверх
ICQ  
IP записан
 
lustin
1c++ power user
Отсутствует


1C *.*, ROR, Java - на
этом остановимся

Сообщений: 907
Местоположение: Москва
Зарегистрирован: 20. Октября 2006
Пол: Мужской
Re: Некорректная работа с динамическими атрибутами
Ответ #3 - 05. Марта 2008 :: 09:50
Печать  
Nick писал(а) 05. Марта 2008 :: 09:43:
Ошибка уже зарегистрирована:
http://www.1cpp.ru/bugs/show_bug.cgi?id=3592

и тема на которую ты ссылаешся возникла из этой
http://www.1cpp.ru/forum/YaBB.pl?num=1204204226


по моему ошибки всё-таки различные  Смущённый
в прицнипе я думаю разработчики сами поставят резолюцию если дубликат
  

бизнес-процесс как техническое задание прекрасно, только у бизнеса нет процессов; у бизнеса есть желание выжить
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Некорректная работа с динамическими атрибутами
Ответ #4 - 06. Марта 2008 :: 07:15
Печать  
1. Пишешь тест, пиши его правильно !!
В классе ты описал СтатическоеСвойство Экспорт, а юзаешь СтатическоеПоле Печаль
Фаулер дает совет - перед прогонкой теста проверь его сначала на неверных данных, чтобы убедиться, что тест вообще работает или вызывается Улыбка
2. Практически все твои ошибки описаны в документации Печаль - если реализованы динамические свойства, то всю работу со свойствами нужно делать вручную. Это плохое поведение, но оно описано в документации Улыбка
3. Для решения см. http://www.1cpp.ru/forum/YaBB.pl?num=1204205191/14#14
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
lustin
1c++ power user
Отсутствует


1C *.*, ROR, Java - на
этом остановимся

Сообщений: 907
Местоположение: Москва
Зарегистрирован: 20. Октября 2006
Пол: Мужской
Re: Некорректная работа с динамическими атрибутами
Ответ #5 - 06. Марта 2008 :: 17:12
Печать  
artbear писал(а) 06. Марта 2008 :: 07:15:
1. Пишешь тест, пиши его правильно !!


Извини Артур - тест писал на эмоциях после того как промахался энное количество времени, сейчас переписал функционал в соответствии с документацией
  

бизнес-процесс как техническое задание прекрасно, только у бизнеса нет процессов; у бизнеса есть желание выжить
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать