Переключение на Главную Страницу Страницы: 1 ... 12 13 [14] 15 16 ... 46 ОтправитьПечать
Очень популярная тема (более 25 ответов) Тестирование 1cpp-icl (icpp) (число прочтений - 198129 )
mvgfirst
Full Member
***
Отсутствует


В борьбе бобра с ослом
всегда побеждает бобро!

Сообщений: 152
Местоположение: Украина г. Кривой Рог
Зарегистрирован: 17. Августа 2007
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #195 - 01. Мая 2008 :: 06:04
Печать  
Интересный глюк поймал связанный с редактированием ТП. Может объясните почему так происходит.
1. Создал класс, наследник от ТП. Задача класса нарисовать на форме документа или справочника ТП и дать его отредактировать.
2. Создал два справочника "Номенклатура" и "ВидНоменклатуры". Одним из реквизитов справочника номенклатуры создал реквизит с типом "ВидНоменклатуры". На форму элемента справочника Номенклатура положил кнопку на месте которой и создаю экземпляр своего класса. На эту же форму положил элемент типа Текст, в формуле написал "Реактор()" и в модуле формы описал такую функцию. В теле функции анализирую заполнен ли реквизит "ВидНоменклатуры" и если заполнен проверяю состояние его (вида номенклатуры) реквизитов. В зависимости от этого состояния я собсвенно или "включаю" или "выключаю" доступность некоторых кнопок на форме.
3. Далее начинаем работу с формой. Ну к примеру создадим новый элемент справочника. Если не заходим в режим редактирования ТП или даже попробуем отредактировать ТП но откажемся от изменений нажав "Esc" все происходит нормально... функция Реактор() отрабатывает без каких либо ошибок . Но если мы попробуем что нибудь отредактировать в ТП и именно применить изменения - появлюятся ошибки... а именно "Поле агрегатного объекта не обнаружено: Имя_реквизита".

После некоторых экспериментов выяснил что происходит это именно на форме элемента справочника, на форме документа тот же самый порядок действий отрабатывает без ошибок.
Дальше пытаясь локализовать ошибку обнаружил следующее...
В теле функции Реактор() вывожу  Сообщить(ВидНоменклатуры.Вид()).... так вот если не входить в режим редактирования ТП - выводится "ВидНоменклатуры" чем собственно этот реквизит и является. Но когда я захожу в режим редактирования ТП и применяю выполненные изменения... этот же кусок кода в функции Реактор() выводит уже "Номенклатура"  т.е. вид справочника на форме которого все это происходит а не вид справочника которым является проверяемый реквизит.
Мало того я проверил таким же образом вид() следующего реквизита на форме... так вот в ходе сией чудесной манипуляции он получил вид "ВидНоменклатуры" хотя в конфигураторе этот реквизит определен как "Справочник.Производители"...
Т.е. непонятно каким образом... при выходе из режима редактирования ТП с применением изменений свдигаются виды у реквизитов на форме... из-за чего и происходит ошибка...

  
Наверх
ICQ  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Тестирование 1cpp-icl (icpp)
Ответ #196 - 01. Мая 2008 :: 07:02
Печать  
vandalsvq писал(а) 30. Апреля 2008 :: 09:56:
Михаил, у меня назрел вопрос, а можно тебя попросить рассмотреть возможность (все таки, я понимаю что раньше мы это обсуждали и про список говорили, но все таки) редактирования ячейки только реквизитом "Поле С Выпадающим Списком". Я понимаю что никто не мешает реализовать через меню, сервис или просто через реквизит с обработкой событий "ПриНачалеВыбора", но все таки. Так сказать для окончательного подобия прямого редактирования... плиз рассмотри... и если что либо "да" либо "нет"

Заранее спасибо.  Круглые глаза

Саша, я помню твой вопрос, но просто так с ходу решить не получилось.
Меня иногда удивляет, как остальное-то работает...
Шучу. Улыбка

Конечно, когда буду окончательно разбираться с EV, обязательно еще раз подумаю над этим вопросом.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Тестирование 1cpp-icl (icpp)
Ответ #197 - 01. Мая 2008 :: 07:07
Печать  
mvgfirst

На текущий момент в EV запросто может быть все, что угодно.
Причем чем сложнее схема использования - тем выше вероятность каких-либо артефактов.

На словах тяжело определить, в чем причина.
Если сделаешь какой-нибудь тест, я постараюсь посмотреть, в чем дело.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #198 - 01. Мая 2008 :: 21:53
Печать  
Понадобилось реализовать Ctrl-A ("Выделить все строки") для ТП с РежимВыделения = 1. Думал что проще простого... Оказалось что не так все просто. Миш, т.е. мне придется по одной добавлять в ВыделенныеСтроки каждую строку? Может есть какой-то более простой вариант?

P.S. SendKeys не предлагать  Подмигивание
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Тестирование 1cpp-icl (icpp)
Ответ #199 - 02. Мая 2008 :: 15:40
Печать  
Arta писал(а) 01. Мая 2008 :: 21:53:
Понадобилось реализовать Ctrl-A ("Выделить все строки") для ТП с РежимВыделения = 1. Думал что проще простого... Оказалось что не так все просто. Миш, т.е. мне придется по одной добавлять в ВыделенныеСтроки каждую строку? Может есть какой-то более простой вариант?

HOME
SHIFT+END

Только учти, что хранение списка строк не оптимизировано для немеряных объемов.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #200 - 02. Мая 2008 :: 16:26
Печать  
kms писал(а) 02. Мая 2008 :: 15:40:
HOME
SHIFT+END

Это конечно как вариант.
Я пытаюсь реализовать для пользователей интуитивно понятный интерфейс. Те хоткеи которые работают в других программах юзеры пробуют применить и тут. Например увеличение/уменьшение размера шрифта через Ctrl-Скрол мышью, или поиск по F3 и т.д.
Ctrl-A юзеры попытались применить сразу, как появилась возможность множественного выбора строк.

kms писал(а) 02. Мая 2008 :: 15:40:
Только учти, что хранение списка строк не оптимизировано для немеряных объемов.

Тогда отпадает Улыбка
  
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #201 - 04. Мая 2008 :: 12:08
Печать  
поймал ошибку, при установке ОбъектЯчейка.ИндексКартинки = Индекс; пишет про превышение длины строки, про "Неверный тип аргумента!" а дальше еще веселее.. после сообщения об ошибке в КОП, в форме и т.п. 1С сообщает "CBLRuntimeException!" Улыбка в общем я пошел искать в чем причина ошибка только в одном мместе.

Пока можете не реагировать если только нет предположения что я там нам##ил  Смех
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #202 - 04. Мая 2008 :: 15:01
Печать  
vandalsvq писал(а) 04. Мая 2008 :: 12:08:
поймал ошибку, при установке ОбъектЯчейка.ИндексКартинки = Индекс; пишет про превышение длины строки, про "Неверный тип аргумента!" а дальше еще веселее.. после сообщения об ошибке в КОП, в форме и т.п. 1С сообщает "CBLRuntimeException!" Улыбка в общем я пошел искать в чем причина ошибка только в одном мместе.

Пока можете не реагировать если только нет предположения что я там нам##ил  Смех


В общем если попробовать установить индексу картинки что нить кроме числа или строки то выдается эта ошибка. Подтвердить на 100% не могу, т.к. после вшивания проверки на тип и приведения типа в соответствие строки или числу ошибка прошла.

Но я нашел еще одну но связанную с АктивИкс.
Если КОП является наследником АктивИкс и события обрабатываются в нем, то если в МОДАЛЬНОЙ (!!!) форме разместить ИдетификаторКонтейнера_СобытиеАктивИкс(...) тогда вылет обеспечен, та же самая конструкция в немодальной форме никаких проблем не вызывает, а просто не обрабатывается.

В общем от меня два бага... опшел в багзилу? Или так примете?  Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #203 - 04. Мая 2008 :: 16:15
Печать  
По активиксу, сборка от какого числа?
У меня от прошлой недели - все работает.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Тестирование 1cpp-icl (icpp)
Ответ #204 - 04. Мая 2008 :: 18:16
Печать  
vandalsvq писал(а) 04. Мая 2008 :: 15:01:
В общем если попробовать установить индексу картинки что нить кроме числа или строки то выдается эта ошибка. Подтвердить на 100% не могу, т.к. после вшивания проверки на тип и приведения типа в соответствие строки или числу ошибка прошла.

Ну, все правильно.
А ты туда чего хотел установить, статую Папы Римского что ли? Подмигивание

А в коллекцию картинок (ОформлениеЯчейки::Картинки) - так вообще только числа можно.

"CBLRuntimeException!" - это чтобы ты не расслаблялся после того, как выполнение события закончилось исключением, а исправил ситуацию.
Раньше у тебя на этом месте 1С просто бы упала, а теперь вот так все по-доброму.
Но постулат такой: событие КОП исключением заканчиваться НЕ должно.

В багзиллу не надо - здесь все ОК.

Цитата:
Но я нашел еще одну но связанную с АктивИкс.
Если КОП является наследником АктивИкс и события обрабатываются в нем, то если в МОДАЛЬНОЙ (!!!) форме разместить ИдетификаторКонтейнера_СобытиеАктивИкс(...) тогда вылет обеспечен, та же самая конструкция в немодальной форме никаких проблем не вызывает, а просто не обрабатывается.

Это, брат, без теста нам, пенсионерам, очень непонятно.
Сделай чего-нибудь для иллюстрации, если не лениво, а там решим, как быть.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #205 - 05. Мая 2008 :: 03:05
Печать  
kms писал(а) 04. Мая 2008 :: 18:16:
В багзиллу не надо - здесь все ОК.


Ну я конечно туда статую Папы Римского не пытался вставить  Смех но что-то подобное (может прост один из забытых всеми монументов в честь дедушки Ленина?  Круглые глаза) точно было... в общем то главное что привел в соответствие и жить можно без проблем  Очень довольный

kms писал(а) 04. Мая 2008 :: 18:16:
Это, брат, без теста нам, пенсионерам, очень непонятно. Сделай чего-нибудь для иллюстрации, если не лениво, а там решим, как быть.


Сегодня накидаю... и выложу с пустой конфой  Подмигивание
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #206 - 05. Мая 2008 :: 05:36
Печать  
kms писал(а) 04. Мая 2008 :: 18:16:
"CBLRuntimeException!" - это чтобы ты не расслаблялся после того, как выполнение события закончилось исключением, а исправил ситуацию.
Раньше у тебя на этом месте 1С просто бы упала, а теперь вот так все по-доброму.
Но постулат такой: событие КОП исключением заканчиваться НЕ должно.

Михаил, может быть, здесь выдавать более понятное сообщение типа "Разработчик, не спи Улыбка ! событие КОП для ТП исключением заканчиваться НЕ должно!", а ? Улыбка
  

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


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #207 - 05. Мая 2008 :: 07:51
Печать  
artbear писал(а) 05. Мая 2008 :: 05:36:
выдавать более понятное сообщение типа "Разработчик, не спи Улыбка ! событие КОП для ТП исключением заканчиваться НЕ должно!", а ? Улыбка


Смех я за... ну по крайней мере поржем  Очень довольный
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #208 - 05. Мая 2008 :: 08:13
Печать  
В классе Входящий параметр ИТ по ссылке, исползую код:

Код
Выбрать все
	// После Удалить Колонку Ошибка, 1С вылетает!!!
	Если ИТ.НомерКолонки("Документ_вид")>0 Тогда
		ИТ.УдалитьКолонку("Документ_вид");
	КонецЕсли;
 


1С Вылетает с ошибкой память не может быть чтение  Печаль      
может както связано с этим:
http://www.1cpp.ru/forum/YaBB.pl?num=1209961653
Хотя пораметров с Знач нет  Смущённый
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Тестирование 1cpp-icl (icpp)
Ответ #209 - 05. Мая 2008 :: 08:13
Печать  
vandalsvq писал(а) 05. Мая 2008 :: 07:51:
artbear писал(а) 05. Мая 2008 :: 05:36:
выдавать более понятное сообщение типа "Разработчик, не спи Улыбка ! событие КОП для ТП исключением заканчиваться НЕ должно!", а ? Улыбка


Смех я за... ну по крайней мере поржем  Очень довольный

Не, ну это слишком просто... А как же популяризация форума? Очень довольный
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 12 13 [14] 15 16 ... 46
ОтправитьПечать